forked from nghuuphuoc/bootstrapvalidator
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
#282: Use error message that is returned from remote/callback validator
- Loading branch information
1 parent
38c0c8f
commit 891f85b
Showing
8 changed files
with
205 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,138 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<title>BootstrapValidator demo</title> | ||
|
||
<link rel="stylesheet" href="/vendor/bootstrap/css/bootstrap.css"/> | ||
<link rel="stylesheet" href="/dist/css/bootstrapValidator.css"/> | ||
|
||
<script type="text/javascript" src="/vendor/jquery/jquery-1.10.2.min.js"></script> | ||
<script type="text/javascript" src="/vendor/bootstrap/js/bootstrap.min.js"></script> | ||
<script type="text/javascript" src="/dist/js/bootstrapValidator.js"></script> | ||
</head> | ||
<body> | ||
<div class="container"> | ||
<div class="row"> | ||
<div class="page-header"> | ||
<h1>Use error message that is returned from remote/callback validator</h1> | ||
</div> | ||
|
||
<div class="col-lg-8 col-lg-offset-2"> | ||
<form id="defaultForm" method="post" class="form-horizontal" action="target.php"> | ||
<div class="form-group"> | ||
<label class="col-lg-3 control-label">Username</label> | ||
<div class="col-lg-5"> | ||
<input type="text" class="form-control" name="username" autocomplete="off" /> | ||
</div> | ||
</div> | ||
|
||
<div class="form-group"> | ||
<label class="col-lg-3 control-label">Email address</label> | ||
<div class="col-lg-5"> | ||
<input type="text" class="form-control" name="email" autocomplete="off" /> | ||
</div> | ||
</div> | ||
|
||
<div class="form-group"> | ||
<label class="col-lg-3 control-label">Password</label> | ||
<div class="col-lg-5"> | ||
<input type="password" class="form-control" name="password" /> | ||
</div> | ||
</div> | ||
|
||
<div class="form-group"> | ||
<div class="col-lg-9 col-lg-offset-3"> | ||
<button type="submit" class="btn btn-primary">Submit</button> | ||
</div> | ||
</div> | ||
</form> | ||
</div> | ||
</div> | ||
|
||
<script type="text/javascript"> | ||
$(document).ready(function() { | ||
$('#defaultForm').bootstrapValidator({ | ||
message: 'This value is not valid', | ||
feedbackIcons: { | ||
valid: 'glyphicon glyphicon-ok', | ||
invalid: 'glyphicon glyphicon-remove', | ||
validating: 'glyphicon glyphicon-refresh' | ||
}, | ||
fields: { | ||
username: { | ||
message: 'The username is not valid', | ||
validators: { | ||
notEmpty: { | ||
message: 'The username is required and can\'t be empty' | ||
}, | ||
remote: { | ||
url: 'remote2.php' | ||
}, | ||
different: { | ||
field: 'password', | ||
message: 'The username and password can\'t be the same as each other' | ||
} | ||
} | ||
}, | ||
email: { | ||
validators: { | ||
notEmpty: { | ||
message: 'The email address is required and can\'t be empty' | ||
}, | ||
emailAddress: { | ||
message: 'The input is not a valid email address' | ||
}, | ||
remote: { | ||
url: 'remote2.php' | ||
} | ||
} | ||
}, | ||
password: { | ||
validators: { | ||
notEmpty: { | ||
message: 'The password is required and can\'t be empty' | ||
}, | ||
different: { | ||
field: 'username', | ||
message: 'The password can\'t be the same as username' | ||
}, | ||
callback: { | ||
callback: function(value, validator) { | ||
// Check the password strength | ||
if (value.length < 6) { | ||
return { | ||
valid: false, | ||
message: 'The password must be more than 6 characters' | ||
} | ||
} | ||
|
||
if (value === value.toLowerCase()) { | ||
return { | ||
valid: false, | ||
message: 'The password must contain at least one upper case character' | ||
} | ||
} | ||
if (value === value.toUpperCase()) { | ||
return { | ||
valid: false, | ||
message: 'The password must contain at least one lower case character' | ||
} | ||
} | ||
if (value.search(/[0-9]/) < 0) { | ||
return { | ||
valid: false, | ||
message: 'The password must contain at least one digit' | ||
} | ||
} | ||
|
||
return true; | ||
} | ||
} | ||
} | ||
} | ||
} | ||
}); | ||
}); | ||
</script> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
<?php | ||
// This is a sample PHP script which demonstrates the 'remote' validator | ||
// To make it work, point the web server to root Bootstrap Validate directory | ||
// and open the remote.html file: | ||
// http://domain.com/demo/remote.html | ||
|
||
//sleep(5); | ||
|
||
$valid = true; | ||
$message = ''; | ||
|
||
$users = array( | ||
'admin' => '[email protected]', | ||
'administrator' => '[email protected]', | ||
'root' => '[email protected]', | ||
); | ||
|
||
if (isset($_POST['username']) && array_key_exists($_POST['username'], $users)) { | ||
$valid = false; | ||
$message = 'The username is not available'; | ||
} else if (isset($_POST['email'])) { | ||
$email = $_POST['email']; | ||
foreach ($users as $k => $v) { | ||
if ($email == $v) { | ||
$valid = false; | ||
$message = 'The email is not available'; | ||
break; | ||
} | ||
} | ||
} | ||
|
||
echo json_encode( | ||
$valid ? array('valid' => $valid) : array('valid' => $valid, 'message' => $message) | ||
); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters