|
@ -191,6 +191,7 @@ define([
|
||||||
},
|
},
|
||||||
|
|
||||||
checkPasswordType: function(){
|
checkPasswordType: function(){
|
||||||
|
if(this.type == 'text') return;
|
||||||
if (this._input.val() !== '') {
|
if (this._input.val() !== '') {
|
||||||
(this._input.attr('type') !== 'password') && this._input.attr('type', 'password');
|
(this._input.attr('type') !== 'password') && this._input.attr('type', 'password');
|
||||||
} else {
|
} else {
|
||||||
|
@ -436,7 +437,7 @@ define([
|
||||||
template: _.template([
|
template: _.template([
|
||||||
'<div class="input-field input-field-btn" style="<%= style %>">',
|
'<div class="input-field input-field-btn" style="<%= style %>">',
|
||||||
'<input ',
|
'<input ',
|
||||||
'type="<%= type %>" ',
|
'type="text" ',
|
||||||
'name="<%= name %>" ',
|
'name="<%= name %>" ',
|
||||||
'spellcheck="<%= spellcheck %>" ',
|
'spellcheck="<%= spellcheck %>" ',
|
||||||
'class="form-control <%= cls %>" ',
|
'class="form-control <%= cls %>" ',
|
||||||
|
@ -482,6 +483,7 @@ define([
|
||||||
|
|
||||||
this._button = new Common.UI.Button({
|
this._button = new Common.UI.Button({
|
||||||
el: this.cmpEl.find('button'),
|
el: this.cmpEl.find('button'),
|
||||||
|
iconCls: this.options.iconCls,
|
||||||
hint: this.options.btnHint || ''
|
hint: this.options.btnHint || ''
|
||||||
});
|
});
|
||||||
this._button.on('click', _.bind(this.onButtonClick, this));
|
this._button.on('click', _.bind(this.onButtonClick, this));
|
||||||
|
@ -512,6 +514,8 @@ define([
|
||||||
}
|
}
|
||||||
|
|
||||||
me.rendered = true;
|
me.rendered = true;
|
||||||
|
if (me.value)
|
||||||
|
me.setValue(me.value);
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
},
|
},
|
||||||
|
@ -541,4 +545,106 @@ define([
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})());
|
})());
|
||||||
|
|
||||||
|
Common.UI.InputFieldBtnPassword = Common.UI.InputFieldBtn.extend(_.extend((function() {
|
||||||
|
return {
|
||||||
|
options: {
|
||||||
|
id: null,
|
||||||
|
cls: '',
|
||||||
|
style: '',
|
||||||
|
value: '',
|
||||||
|
name: '',
|
||||||
|
validation: null,
|
||||||
|
allowBlank: true,
|
||||||
|
placeHolder: '',
|
||||||
|
blankError: null,
|
||||||
|
spellcheck: false,
|
||||||
|
maskExp: '',
|
||||||
|
validateOnChange: false,
|
||||||
|
validateOnBlur: true,
|
||||||
|
disabled: false,
|
||||||
|
editable: true,
|
||||||
|
iconCls: 'btn-sheet-view',
|
||||||
|
btnHint: '',
|
||||||
|
repeatInput: null,
|
||||||
|
showPwdOnClick: true
|
||||||
|
},
|
||||||
|
|
||||||
|
initialize : function(options) {
|
||||||
|
options = options || {};
|
||||||
|
options.btnHint = options.btnHint || this.textHintShowPwd;
|
||||||
|
|
||||||
|
Common.UI.InputFieldBtn.prototype.initialize.call(this, options);
|
||||||
|
|
||||||
|
this.hidePwd = true;
|
||||||
|
this.repeatInput= this.options.repeatInput;
|
||||||
|
},
|
||||||
|
|
||||||
|
render: function (parentEl) {
|
||||||
|
Common.UI.InputFieldBtn.prototype.render.call(this, parentEl);
|
||||||
|
|
||||||
|
this._btnElm = this._button.$el;
|
||||||
|
this._input.on('input', _.bind(this.checkPasswordType, this));
|
||||||
|
if(this.options.showPwdOnClick)
|
||||||
|
this._button.on('click', _.bind(this.passwordClick, this));
|
||||||
|
else
|
||||||
|
this._btnElm.on('mousedown', _.bind(this.passwordShow, this));
|
||||||
|
|
||||||
|
return this;
|
||||||
|
},
|
||||||
|
|
||||||
|
passwordClick: function (e)
|
||||||
|
{
|
||||||
|
if(this.hidePwd) {
|
||||||
|
this.passwordShow(e);
|
||||||
|
this.hidePwd = false;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.passwordHide(e);
|
||||||
|
this.hidePwd = true;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
passwordShow: function (e) {
|
||||||
|
if (this.disabled) return;
|
||||||
|
this._button.setIconCls('hide-password');
|
||||||
|
this.type = 'text';
|
||||||
|
|
||||||
|
this._input.attr('type', this.type);
|
||||||
|
if(this.repeatInput) {
|
||||||
|
this.repeatInput.type = this.type;
|
||||||
|
this.repeatInput._input.attr('type', this.type);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.options.showPwdOnClick) {
|
||||||
|
this._button.updateHint(this.textHintHidePwd);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this._btnElm.on('mouseup', _.bind(this.passwordHide, this));
|
||||||
|
this._btnElm.on('mouseout', _.bind(this.passwordHide, this));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
passwordHide: function (e) {
|
||||||
|
this._button.setIconCls('btn-sheet-view');
|
||||||
|
this.type = 'password';
|
||||||
|
|
||||||
|
(this._input.val() !== '') && this._input.attr('type', this.type);
|
||||||
|
if(this.repeatInput) {
|
||||||
|
this.repeatInput.type = this.type;
|
||||||
|
(this.repeatInput._input.val() !== '') && this.repeatInput._input.attr('type', this.type);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.options.showPwdOnClick) {
|
||||||
|
this._button.updateHint(this.textHintShowPwd);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this._btnElm.off('mouseup', this.passwordHide);
|
||||||
|
this._btnElm.off('mouseout', this.passwordHide);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
textHintShowPwd: 'Show password',
|
||||||
|
textHintHidePwd: 'Hide password'
|
||||||
|
}
|
||||||
|
})(), Common.UI.InputFieldBtnPassword || {}));
|
||||||
});
|
});
|
|
@ -200,10 +200,11 @@ define([
|
||||||
this.previewInner = this.previewScrolled.find('div:first-child');
|
this.previewInner = this.previewScrolled.find('div:first-child');
|
||||||
|
|
||||||
if (this.type == Common.Utils.importTextType.DRM) {
|
if (this.type == Common.Utils.importTextType.DRM) {
|
||||||
this.inputPwd = new Common.UI.InputField({
|
this.inputPwd = new Common.UI.InputFieldBtnPassword({
|
||||||
el: $('#id-password-txt'),
|
el: $('#id-password-txt'),
|
||||||
type: 'password',
|
type: 'password',
|
||||||
validateOnBlur: false,
|
validateOnBlur: false,
|
||||||
|
showPwdOnClick: true,
|
||||||
validation : function(value) {
|
validation : function(value) {
|
||||||
return me.txtIncorrectPwd;
|
return me.txtIncorrectPwd;
|
||||||
}
|
}
|
||||||
|
|
|
@ -93,14 +93,7 @@ define([
|
||||||
if (this.$window) {
|
if (this.$window) {
|
||||||
var me = this;
|
var me = this;
|
||||||
this.$window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this));
|
this.$window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this));
|
||||||
this.inputPwd = new Common.UI.InputField({
|
|
||||||
el: $('#id-password-txt'),
|
|
||||||
type: 'password',
|
|
||||||
allowBlank : false,
|
|
||||||
style : 'width: 100%;',
|
|
||||||
maxLength: 255,
|
|
||||||
validateOnBlur: false
|
|
||||||
});
|
|
||||||
this.repeatPwd = new Common.UI.InputField({
|
this.repeatPwd = new Common.UI.InputField({
|
||||||
el: $('#id-repeat-txt'),
|
el: $('#id-repeat-txt'),
|
||||||
type: 'password',
|
type: 'password',
|
||||||
|
@ -112,6 +105,15 @@ define([
|
||||||
return me.txtIncorrectPwd;
|
return me.txtIncorrectPwd;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
this.inputPwd = new Common.UI.InputFieldBtnPassword({
|
||||||
|
el: $('#id-password-txt'),
|
||||||
|
type: 'password',
|
||||||
|
allowBlank : false,
|
||||||
|
style : 'width: 100%;',
|
||||||
|
maxLength: 255,
|
||||||
|
validateOnBlur: false,
|
||||||
|
repeatInput: this.repeatPwd
|
||||||
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
BIN
apps/common/main/resources/img/toolbar/1.25x/btn-sheet-view.png
Normal file
After Width: | Height: | Size: 428 B |
BIN
apps/common/main/resources/img/toolbar/1.25x/hide-password.png
Normal file
After Width: | Height: | Size: 349 B |
BIN
apps/common/main/resources/img/toolbar/1.5x/btn-sheet-view.png
Normal file
After Width: | Height: | Size: 498 B |
BIN
apps/common/main/resources/img/toolbar/1.5x/hide-password.png
Normal file
After Width: | Height: | Size: 400 B |
BIN
apps/common/main/resources/img/toolbar/1.75x/btn-sheet-view.png
Normal file
After Width: | Height: | Size: 576 B |
BIN
apps/common/main/resources/img/toolbar/1.75x/hide-password.png
Normal file
After Width: | Height: | Size: 478 B |
BIN
apps/common/main/resources/img/toolbar/1x/btn-sheet-view.png
Normal file
After Width: | Height: | Size: 372 B |
BIN
apps/common/main/resources/img/toolbar/1x/hide-password.png
Normal file
After Width: | Height: | Size: 302 B |
BIN
apps/common/main/resources/img/toolbar/2x/btn-sheet-view.png
Normal file
After Width: | Height: | Size: 729 B |
BIN
apps/common/main/resources/img/toolbar/2x/hide-password.png
Normal file
After Width: | Height: | Size: 550 B |
|
@ -168,6 +168,8 @@
|
||||||
"Common.UI.ExtendedColorDialog.textNew": "New",
|
"Common.UI.ExtendedColorDialog.textNew": "New",
|
||||||
"Common.UI.ExtendedColorDialog.textRGBErr": "The entered value is incorrect.<br>Please enter a numeric value between 0 and 255.",
|
"Common.UI.ExtendedColorDialog.textRGBErr": "The entered value is incorrect.<br>Please enter a numeric value between 0 and 255.",
|
||||||
"Common.UI.HSBColorPicker.textNoColor": "No Color",
|
"Common.UI.HSBColorPicker.textNoColor": "No Color",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintHidePwd": "Hide password",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintShowPwd": "Show password",
|
||||||
"Common.UI.SearchDialog.textHighlight": "Highlight results",
|
"Common.UI.SearchDialog.textHighlight": "Highlight results",
|
||||||
"Common.UI.SearchDialog.textMatchCase": "Case sensitive",
|
"Common.UI.SearchDialog.textMatchCase": "Case sensitive",
|
||||||
"Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text",
|
"Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text",
|
||||||
|
|
|
@ -61,6 +61,8 @@
|
||||||
"Common.UI.ExtendedColorDialog.textNew": "New",
|
"Common.UI.ExtendedColorDialog.textNew": "New",
|
||||||
"Common.UI.ExtendedColorDialog.textRGBErr": "The entered value is incorrect.<br>Please enter a numeric value between 0 and 255.",
|
"Common.UI.ExtendedColorDialog.textRGBErr": "The entered value is incorrect.<br>Please enter a numeric value between 0 and 255.",
|
||||||
"Common.UI.HSBColorPicker.textNoColor": "No Color",
|
"Common.UI.HSBColorPicker.textNoColor": "No Color",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintHidePwd": "Hide password",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintShowPwd": "Show password",
|
||||||
"Common.UI.SearchDialog.textHighlight": "Highlight results",
|
"Common.UI.SearchDialog.textHighlight": "Highlight results",
|
||||||
"Common.UI.SearchDialog.textMatchCase": "Case sensitive",
|
"Common.UI.SearchDialog.textMatchCase": "Case sensitive",
|
||||||
"Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text",
|
"Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text",
|
||||||
|
|
|
@ -111,14 +111,7 @@ define([
|
||||||
|
|
||||||
var me = this;
|
var me = this;
|
||||||
this.$window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this));
|
this.$window.find('.dlg-btn').on('click', _.bind(this.onBtnClick, this));
|
||||||
this.inputPwd = new Common.UI.InputField({
|
|
||||||
el: $('#id-password-txt'),
|
|
||||||
type: 'password',
|
|
||||||
allowBlank : true,
|
|
||||||
style : 'width: 100%;',
|
|
||||||
maxLength: 255,
|
|
||||||
validateOnBlur: false
|
|
||||||
});
|
|
||||||
this.repeatPwd = new Common.UI.InputField({
|
this.repeatPwd = new Common.UI.InputField({
|
||||||
el: $('#id-repeat-txt'),
|
el: $('#id-repeat-txt'),
|
||||||
type: 'password',
|
type: 'password',
|
||||||
|
@ -131,6 +124,17 @@ define([
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
this.inputPwd = new Common.UI.InputFieldBtnPassword({
|
||||||
|
el: $('#id-password-txt'),
|
||||||
|
type: 'password',
|
||||||
|
allowBlank : true,
|
||||||
|
style : 'width: 100%;',
|
||||||
|
maxLength: 255,
|
||||||
|
validateOnBlur: false,
|
||||||
|
repeatInput: this.repeatPwd,
|
||||||
|
showPwdOnClick: true
|
||||||
|
});
|
||||||
|
|
||||||
if (this.type == 'sheet') {
|
if (this.type == 'sheet') {
|
||||||
this.optionsList = new Common.UI.ListView({
|
this.optionsList = new Common.UI.ListView({
|
||||||
el: $('#protect-dlg-options', this.$window),
|
el: $('#protect-dlg-options', this.$window),
|
||||||
|
|
|
@ -114,6 +114,8 @@
|
||||||
"Common.UI.ExtendedColorDialog.textNew": "New",
|
"Common.UI.ExtendedColorDialog.textNew": "New",
|
||||||
"Common.UI.ExtendedColorDialog.textRGBErr": "The entered value is incorrect.<br>Please enter a numeric value between 0 and 255.",
|
"Common.UI.ExtendedColorDialog.textRGBErr": "The entered value is incorrect.<br>Please enter a numeric value between 0 and 255.",
|
||||||
"Common.UI.HSBColorPicker.textNoColor": "No Color",
|
"Common.UI.HSBColorPicker.textNoColor": "No Color",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintHidePwd": "Hide password",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintShowPwd": "Show password",
|
||||||
"Common.UI.SearchDialog.textHighlight": "Highlight results",
|
"Common.UI.SearchDialog.textHighlight": "Highlight results",
|
||||||
"Common.UI.SearchDialog.textMatchCase": "Case sensitive",
|
"Common.UI.SearchDialog.textMatchCase": "Case sensitive",
|
||||||
"Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text",
|
"Common.UI.SearchDialog.textReplaceDef": "Enter the replacement text",
|
||||||
|
|
|
@ -114,6 +114,8 @@
|
||||||
"Common.UI.ExtendedColorDialog.textNew": "Новый",
|
"Common.UI.ExtendedColorDialog.textNew": "Новый",
|
||||||
"Common.UI.ExtendedColorDialog.textRGBErr": "Введено некорректное значение.<br>Пожалуйста, введите числовое значение от 0 до 255.",
|
"Common.UI.ExtendedColorDialog.textRGBErr": "Введено некорректное значение.<br>Пожалуйста, введите числовое значение от 0 до 255.",
|
||||||
"Common.UI.HSBColorPicker.textNoColor": "Без цвета",
|
"Common.UI.HSBColorPicker.textNoColor": "Без цвета",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintShowPwd": "Показать пароль",
|
||||||
|
"Common.UI.InputFieldBtnPassword.textHintHidePwd": "Скрыть пароль",
|
||||||
"Common.UI.SearchDialog.textHighlight": "Выделить результаты",
|
"Common.UI.SearchDialog.textHighlight": "Выделить результаты",
|
||||||
"Common.UI.SearchDialog.textMatchCase": "С учетом регистра",
|
"Common.UI.SearchDialog.textMatchCase": "С учетом регистра",
|
||||||
"Common.UI.SearchDialog.textReplaceDef": "Введите текст для замены",
|
"Common.UI.SearchDialog.textReplaceDef": "Введите текст для замены",
|
||||||
|
|