mirror of
https://github.com/Doodle3D/doodle3d-connect.git
synced 2024-12-25 01:53:48 +01:00
Show password
This commit is contained in:
parent
abbbcc17e9
commit
2b24d86223
@ -131,11 +131,13 @@ form div {
|
|||||||
form input[type="text"], form input[type="number"], form input[type="password"] {
|
form input[type="text"], form input[type="number"], form input[type="password"] {
|
||||||
border: 1px solid rgb(144, 192, 255);
|
border: 1px solid rgb(144, 192, 255);
|
||||||
margin-right: 5px;
|
margin-right: 5px;
|
||||||
|
margin-bottom: 5px;
|
||||||
-webkit-border-radius: 4px;
|
-webkit-border-radius: 4px;
|
||||||
-moz-border-radius: 4px;
|
-moz-border-radius: 4px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
|
|
||||||
width: 130px;
|
width: 130px;
|
||||||
|
|
||||||
}
|
}
|
||||||
form .button {
|
form .button {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
<script src="js/libs/jquery-1.8.3.min.js" type="text/javascript"></script>
|
<script src="js/libs/jquery-1.8.3.min.js" type="text/javascript"></script>
|
||||||
<script src="js/libs/spin.min.js" type="text/javascript"></script>
|
<script src="js/libs/spin.min.js" type="text/javascript"></script>
|
||||||
|
<script src="js/libs/jquery.showpassword.js" type="text/javascript"></script>
|
||||||
<script src="js/api/NetworkAPI.js" type="text/javascript"></script>
|
<script src="js/api/NetworkAPI.js" type="text/javascript"></script>
|
||||||
<script src="js/api/ConnectAPI.js" type="text/javascript"></script>
|
<script src="js/api/ConnectAPI.js" type="text/javascript"></script>
|
||||||
<script src="js/NetworkPanel.js" type="text/javascript"></script>
|
<script src="js/NetworkPanel.js" type="text/javascript"></script>
|
||||||
@ -62,9 +63,9 @@
|
|||||||
<label for="phrase" id="phraseLabel">Password:</label>
|
<label for="phrase" id="phraseLabel">Password:</label>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<input type="password" name="" id="phrase"><br/>
|
<input type="password" name="" id="phrase" data-typetoggle='#showPassword' ><br/>
|
||||||
<input id="showPassword" type="checkbox" name="showPassword" value="showPassword">
|
<input id="showPassword" type="checkbox" name="showPassword" value="showPassword">
|
||||||
<label for="showPassword" id="showPasswordLabel" class="inline">show password</label>
|
<label for="showPassword" class="inline">show password</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br/>
|
<br/>
|
||||||
|
@ -45,7 +45,6 @@ function NetworkPanel() {
|
|||||||
var _btnListNetworks;
|
var _btnListNetworks;
|
||||||
var _passwordSettings;
|
var _passwordSettings;
|
||||||
var _passwordField;
|
var _passwordField;
|
||||||
var _showPassword;
|
|
||||||
var _btnConnect;
|
var _btnConnect;
|
||||||
var _statusTextField;
|
var _statusTextField;
|
||||||
|
|
||||||
@ -64,7 +63,6 @@ function NetworkPanel() {
|
|||||||
_btnListNetworks = _element.find("#listNetworks");
|
_btnListNetworks = _element.find("#listNetworks");
|
||||||
_passwordSettings = _element.find("#passwordSettings");
|
_passwordSettings = _element.find("#passwordSettings");
|
||||||
_passwordField = _element.find("#phrase");
|
_passwordField = _element.find("#phrase");
|
||||||
_showPassword = _element.find("#showPassword");
|
|
||||||
_btnConnect = _element.find("#btnConnect");
|
_btnConnect = _element.find("#btnConnect");
|
||||||
_statusTextField = _element.find("#statusText");
|
_statusTextField = _element.find("#statusText");
|
||||||
|
|
||||||
@ -72,7 +70,7 @@ function NetworkPanel() {
|
|||||||
_btnListNetworks.on('touchstart mousedown',showNetworkSelector);
|
_btnListNetworks.on('touchstart mousedown',showNetworkSelector);
|
||||||
_btnConnect.on('touchstart mousedown',_self.connectToNetwork);
|
_btnConnect.on('touchstart mousedown',_self.connectToNetwork);
|
||||||
_networkSelector.change(networkSelectorChanged);
|
_networkSelector.change(networkSelectorChanged);
|
||||||
_showPassword.change(showPassWordToggle);
|
_passwordField.showPassword();
|
||||||
|
|
||||||
_statusChangeHandler = statusChangeHandler;
|
_statusChangeHandler = statusChangeHandler;
|
||||||
|
|
||||||
@ -95,11 +93,6 @@ function NetworkPanel() {
|
|||||||
var selectedOption = $(this).find("option:selected");
|
var selectedOption = $(this).find("option:selected");
|
||||||
_self.selectNetwork(selectedOption.val());
|
_self.selectNetwork(selectedOption.val());
|
||||||
};
|
};
|
||||||
function showPassWordToggle() {
|
|
||||||
var type = (_showPassword.prop('checked'))? "text" : "password";
|
|
||||||
//console.log(" type: ",type);
|
|
||||||
_passwordField.attr("type",type);
|
|
||||||
};
|
|
||||||
|
|
||||||
this.retrieveStatus = function(completeHandler) {
|
this.retrieveStatus = function(completeHandler) {
|
||||||
//console.log(_self.id,"NetworkPanel:retrieveStatus");
|
//console.log(_self.id,"NetworkPanel:retrieveStatus");
|
||||||
|
113
js/libs/jquery.showpassword.js
Normal file
113
js/libs/jquery.showpassword.js
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
/*
|
||||||
|
* @name Show Password
|
||||||
|
* @descripton
|
||||||
|
* @version 1.3
|
||||||
|
* @requires Jquery 1.5
|
||||||
|
*
|
||||||
|
* @author Jan Jarfalk
|
||||||
|
* @author-email jan.jarfalk@unwrongest.com
|
||||||
|
* @author-website http://www.unwrongest.com
|
||||||
|
*
|
||||||
|
* @special-thanks Michel Gratton
|
||||||
|
*
|
||||||
|
* @licens MIT License - http://www.opensource.org/licenses/mit-license.php
|
||||||
|
*/
|
||||||
|
(function($){
|
||||||
|
$.fn.extend({
|
||||||
|
showPassword: function(c) {
|
||||||
|
|
||||||
|
// Setup callback object
|
||||||
|
var callback = {'fn':null,'args':{}}
|
||||||
|
callback.fn = c;
|
||||||
|
|
||||||
|
// Clones passwords and turn the clones into text inputs
|
||||||
|
var cloneElement = function( element ) {
|
||||||
|
|
||||||
|
var $element = $(element);
|
||||||
|
|
||||||
|
$clone = $("<input />");
|
||||||
|
|
||||||
|
// Name added for JQuery Validation compatibility
|
||||||
|
// Element name is required to avoid script warning.
|
||||||
|
$clone.attr({
|
||||||
|
'type' : 'text',
|
||||||
|
'class' : $element.attr('class'),
|
||||||
|
'style' : $element.attr('style'),
|
||||||
|
'size' : $element.attr('size'),
|
||||||
|
'name' : $element.attr('name')+'-clone',
|
||||||
|
'tabindex' : $element.attr('tabindex')
|
||||||
|
});
|
||||||
|
|
||||||
|
return $clone;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
// Transfers values between two elements
|
||||||
|
var update = function(a,b){
|
||||||
|
b.val(a.val());
|
||||||
|
};
|
||||||
|
|
||||||
|
// Shows a or b depending on checkbox
|
||||||
|
var setState = function( checkbox, a, b ){
|
||||||
|
|
||||||
|
if(checkbox.is(':checked')){
|
||||||
|
update(a,b);
|
||||||
|
b.show();
|
||||||
|
a.hide();
|
||||||
|
} else {
|
||||||
|
update(b,a);
|
||||||
|
b.hide();
|
||||||
|
a.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
return this.each(function() {
|
||||||
|
|
||||||
|
var $input = $(this),
|
||||||
|
$checkbox = $($input.data('typetoggle'));
|
||||||
|
|
||||||
|
// Create clone
|
||||||
|
var $clone = cloneElement($input);
|
||||||
|
$clone.insertAfter($input);
|
||||||
|
|
||||||
|
// Set callback arguments
|
||||||
|
if(callback.fn){
|
||||||
|
callback.args.input = $input;
|
||||||
|
callback.args.checkbox = $checkbox;
|
||||||
|
callback.args.clone = $clone;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
$checkbox.bind('click', function() {
|
||||||
|
setState( $checkbox, $input, $clone );
|
||||||
|
});
|
||||||
|
|
||||||
|
$input.bind('keyup', function() {
|
||||||
|
update( $input, $clone )
|
||||||
|
});
|
||||||
|
|
||||||
|
$clone.bind('keyup', function(){
|
||||||
|
update( $clone, $input );
|
||||||
|
|
||||||
|
// Added for JQuery Validation compatibility
|
||||||
|
// This will trigger validation if it's ON for keyup event
|
||||||
|
$input.trigger('keyup');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
// Added for JQuery Validation compatibility
|
||||||
|
// This will trigger validation if it's ON for blur event
|
||||||
|
$clone.bind('blur', function() { $input.trigger('focusout'); });
|
||||||
|
|
||||||
|
setState( $checkbox, $input, $clone );
|
||||||
|
|
||||||
|
if( callback.fn ){
|
||||||
|
callback.fn( callback.args );
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})(jQuery);
|
Loading…
Reference in New Issue
Block a user