From cc9061d20db9732d9be80f7c04cb9f08a768e85c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Thomas=20M=C3=BCller?= Date: Thu, 20 Dec 2012 09:59:09 +0100 Subject: [PATCH] adding missing translations for various strings + fixing tool tip on delete --- settings/js/users.js | 796 ++++++++++++++++++++++--------------------- 1 file changed, 402 insertions(+), 394 deletions(-) diff --git a/settings/js/users.js b/settings/js/users.js index f148a43a480..b0e30feb80c 100644 --- a/settings/js/users.js +++ b/settings/js/users.js @@ -4,405 +4,413 @@ * See the COPYING-README file. */ -var UserList={ - useUndo:true, - - /** - * @brief Initiate user deletion process in UI - * @param string uid the user ID to be deleted - * - * Does not actually delete the user; it sets them for - * deletion when the current page is unloaded, at which point - * finishDelete() completes the process. This allows for 'undo'. - */ - do_delete:function( uid ) { - if (typeof UserList.deleteUid !== 'undefined') { - //Already a user in the undo queue - UserList.finishDelete(null); - } - UserList.deleteUid = uid; - - // Set undo flag - UserList.deleteCanceled = false; - - // Provide user with option to undo - $('#notification').html(t('users', 'deleted')+' '+uid+''+t('users', 'undo')+''); - $('#notification').data('deleteuser',true); - $('#notification').fadeIn(); - }, - - /** - * @brief Delete a user via ajax - * @param bool ready whether to use ready() upon completion - * - * Executes deletion via ajax of user identified by property deleteUid - * if 'undo' has not been used. Completes the user deletion procedure - * and reflects success in UI. - */ - finishDelete:function( ready ){ - - // Check deletion has not been undone - if( !UserList.deleteCanceled && UserList.deleteUid ){ - - // Delete user via ajax - $.ajax({ - type: 'POST', - url: OC.filePath('settings', 'ajax', 'removeuser.php'), - async: false, - data: { username: UserList.deleteUid }, - success: function(result) { - if (result.status == 'success') { - // Remove undo option, & remove user from table - $('#notification').fadeOut(); - $('tr').filterAttr('data-uid', UserList.deleteUid).remove(); - UserList.deleteCanceled = true; - if (ready) { - ready(); - } - } else { - oc.dialogs.alert(result.data.message, t('settings', 'Unable to remove user')); - } - } - }); - } - }, +var UserList = { + useUndo:true, - add:function(username, groups, subadmin, quota, sort) { - var tr = $('tbody tr').first().clone(); - tr.attr('data-uid', username); - tr.find('td.name').text(username); - var groupsSelect = $('').attr('data-username', username).attr('data-user-groups', groups); - tr.find('td.groups').empty(); - if (tr.find('td.subadmins').length > 0) { - var subadminSelect = $('').attr('data-username', username).attr('data-user-groups', groups); + tr.find('td.groups').empty(); + if (tr.find('td.subadmins').length > 0) { + var subadminSelect = $(''); + img.css('display', 'none'); + img.parent().children('span').replaceWith(input); + input.focus(); + input.keypress(function (event) { + if (event.keyCode == 13) { + if ($(this).val().length > 0) { + $.post( + OC.filePath('settings', 'ajax', 'changepassword.php'), + {username:uid, password:$(this).val()}, + function (result) { + } + ); + input.blur(); + } else { + input.blur(); + } + } + }); + input.blur(function () { + $(this).replaceWith($('●●●●●●●')); + img.css('display', ''); + }); + }); + $('td.password').live('click', function (event) { + $(this).children('img').click(); + }); + + $('select.quota, select.quota-user').live('change', function () { + var select = $(this); + var uid = $(this).parent().parent().parent().attr('data-uid'); + var quota = $(this).val(); + var other = $(this).next(); + if (quota != 'other') { + other.hide(); + select.data('previous', quota); + setQuota(uid, quota); + } else { + other.show(); + select.addClass('active'); + other.focus(); + } + }); + $('select.quota, select.quota-user').each(function (i, select) { + $(select).data('previous', $(select).val()); + }) + + $('input.quota-other').live('change', function () { + var uid = $(this).parent().parent().parent().attr('data-uid'); + var quota = $(this).val(); + var select = $(this).prev(); + var other = $(this); + if (quota) { + setQuota(uid, quota, function (quota) { + select.children().attr('selected', null); + var existingOption = select.children().filter(function (i, option) { + return ($(option).val() == quota); + }); + if (existingOption.length) { + existingOption.attr('selected', 'selected'); + } else { + var option = $('