Skip to content

Commit bdf9550

Browse files
author
Pascal Dreissen
committed
Removed all inline javascript focus code, general function to protect all password fields including tooltip
1 parent bc60765 commit bdf9550

File tree

6 files changed

+18
-15
lines changed

6 files changed

+18
-15
lines changed

interface/web/client/templates/client_edit_address.htm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
3131
<label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
3232
<div class="col-sm-9">
3333
<div class="input-group">
34-
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
34+
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
3535
<span class="input-group-btn">
3636
<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
3737
</span>
@@ -47,7 +47,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
4747
</div>
4848
<div class="form-group">
4949
<label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
50-
<div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
50+
<div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
5151
<div class="form-group">
5252
<div class="col-sm-offset-3 col-sm-9">
5353
<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>

interface/web/client/templates/reseller_edit_address.htm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
3131
<label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
3232
<div class="col-sm-9">
3333
<div class="input-group">
34-
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
34+
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
3535
<span class="input-group-btn">
3636
<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
3737
</span>
@@ -47,7 +47,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
4747
</div>
4848
<div class="form-group">
4949
<label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
50-
<div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
50+
<div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
5151
<div class="form-group">
5252
<div class="col-sm-offset-3 col-sm-9">
5353
<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>

interface/web/mail/templates/mail_user_mailbox_edit.htm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
2929
<label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
3030
<div class="col-sm-9">
3131
<div class="input-group">
32-
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
32+
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
3333
<span class="input-group-btn">
3434
<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
3535
</span>
@@ -46,7 +46,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
4646
<div class="form-group">
4747
<label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
4848
<div class="col-sm-9">
49-
<input type="password" name="repeat_password" id="repeat_password" value="" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
49+
<input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
5050
<div class="form-group">
5151
<div class="col-sm-offset-3 col-sm-9">
5252
<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>

interface/web/mailuser/templates/mail_user_password_edit.htm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
1515
<label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
1616
<div class="col-sm-9">
1717
<div class="input-group">
18-
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
18+
<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
1919
<span class="input-group-btn">
2020
<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
2121
</span>
@@ -31,7 +31,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
3131
</div>
3232
<div class="form-group">
3333
<label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
34-
<div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" data-toggle="tooltip" data-placement="left" title="{tmpl_var name='password_click_to_set_txt'}" readonly onfocus="removeReadOnly(this);" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
34+
<div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
3535
<div class="form-group">
3636
<div class="col-sm-offset-3 col-sm-9">
3737
<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>

interface/web/themes/default/assets/javascripts/ispconfig.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,15 @@ var ISPConfig = {
136136
});
137137
$('[data-toggle="tooltip"]').tooltip({
138138
});
139+
// grab all password fields and set the readonly prop to prevent password managers to fill in new password
140+
$('input[type="password"]').each(function() {
141+
$(this).prop('readonly', true)
142+
.tooltip({title: "Click to set", placement: "left"});
143+
});
144+
$('input[type="password"]').on('click focus', function() {
145+
$(this).prop('readonly', false);
146+
$(this).tooltip('destroy');
147+
});
139148

140149
ISPConfig.callHook('onAfterContentLoad', {'url': url, 'data': data });
141150
},
@@ -550,12 +559,6 @@ var ISPConfig = {
550559
}
551560
};
552561

553-
function removeReadOnly(password) {
554-
password.removeAttribute('readonly');
555-
password.removeAttribute('data-original-title');
556-
password.removeAttribute('data-toggle');
557-
password.removeAttribute('data-placement');
558-
}
559562
$(document).on("change", function(event) {
560563
var elName = event.target.localName;
561564
if ($("#pageForm .table #Filter").length > 0 && elName == 'select') {

0 commit comments

Comments
 (0)