handle changePicture callback properly

v1.18.x
barisusakli 10 years ago
parent 3d9e86d9b2
commit 4b1b98e229

@ -125,8 +125,13 @@ define('forum/account/edit', ['forum/account/header', 'uploader'], function(head
$('#savePictureChangesBtn').on('click', function() {
$('#change-picture-modal').modal('hide');
if (selectedImageType) {
changeUserPicture(selectedImageType);
if (!selectedImageType) {
return;
}
changeUserPicture(selectedImageType, function(err) {
if (err) {
return app.alertError(err.message);
}
if (selectedImageType === 'gravatar') {
$('#user-current-picture').attr('src', gravatarPicture);
@ -135,7 +140,7 @@ define('forum/account/edit', ['forum/account/header', 'uploader'], function(head
$('#user-current-picture').attr('src', uploadedPicture);
updateHeader(uploadedPicture);
}
}
});
});
}
@ -284,15 +289,11 @@ define('forum/account/edit', ['forum/account/header', 'uploader'], function(head
});
}
function changeUserPicture(type) {
function changeUserPicture(type, callback) {
socket.emit('user.changePicture', {
type: type,
uid: ajaxify.variables.get('theirid')
}, function(err) {
if(err) {
app.alertError(err.message);
}
});
}, callback);
}
function updateImages() {

@ -152,7 +152,7 @@ SocketUser.changePicture = function(socket, data, callback) {
function changePicture(uid, callback) {
user.getUserField(uid, type, function(err, picture) {
if(err) {
if (err) {
return callback(err);
}
@ -168,22 +168,13 @@ SocketUser.changePicture = function(socket, data, callback) {
return callback(new Error('[[error:invalid-image-type]]'));
}
if(socket.uid === parseInt(data.uid, 10)) {
changePicture(socket.uid, function(err) {
if(err) {
return callback(err);
}
});
return;
if (socket.uid === parseInt(data.uid, 10)) {
return changePicture(socket.uid, callback);
}
user.isAdministrator(socket.uid, function(err, isAdmin) {
if(err) {
return callback(err);
}
if(!isAdmin) {
return callback(new Error('[[error:no-privileges]]'));
if (err || !isAdmin) {
return callback(err || new Error('[[error:no-privileges]]'));
}
changePicture(data.uid, callback);

Loading…
Cancel
Save