Browse Source

Require confirmation to change the displayname

Signed-off-by: Joas Schilling <coding@schilljs.com>
tags/v11.0RC2
Joas Schilling 7 years ago
parent
commit
309b21f5a0
No account linked to committer's email address
1 changed files with 31 additions and 15 deletions
  1. 31
    15
      settings/js/users/users.js

+ 31
- 15
settings/js/users/users.js View File

OC.Notification.hide(); OC.Notification.hide();
}); });


var _submitDisplayNameChange = function($tr, uid, displayName) {
var $div = $tr.find('div.avatardiv');
if ($div.length) {
$div.imageplaceholder(uid, displayName);
}

if (OC.PasswordConfirmation.requiresPasswordConfirmation()) {
OC.PasswordConfirmation.requirePasswordConfirmation(function() {
_submitDisplayNameChange($tr, uid, displayName);
});
return;
}

$.ajax({
type: 'POST',
url: OC.generateUrl('/settings/users/{id}/displayName', {id: uid}),
data: {
username: uid,
displayName: displayName
}
}).success(function () {
if (result && result.status==='success' && $div.length){
$div.avatar(result.data.username, 32);
}
$tr.data('displayname', displayName);
}).fail(function (result) {
OC.Notification.showTemporary(result.responseJSON.message);
});
};

$userListBody.on('click', '.displayName', function (event) { $userListBody.on('click', '.displayName', function (event) {
event.stopPropagation(); event.stopPropagation();
var $td = $(this).closest('td'); var $td = $(this).closest('td');
.keypress(function (event) { .keypress(function (event) {
if (event.keyCode === 13) { if (event.keyCode === 13) {
if ($(this).val().length > 0) { if ($(this).val().length > 0) {
var $div = $tr.find('div.avatardiv');
if ($div.length) {
$div.imageplaceholder(uid, displayName);
}
$.post(
OC.generateUrl('/settings/users/{id}/displayName', {id: uid}),
{username: uid, displayName: $(this).val()},
function (result) {
if (result && result.status==='success' && $div.length){
$div.avatar(result.data.username, 32);
}
}
);
var displayName = $input.val();
$tr.data('displayname', displayName);
_submitDisplayNameChange($tr, uid, $(this).val());
$input.blur(); $input.blur();
} else { } else {
$input.blur(); $input.blur();

Loading…
Cancel
Save