From d12c29d277770e08416981d71a53d46f1afd0d6e Mon Sep 17 00:00:00 2001 From: Alvaro Campos Date: Mon, 16 Apr 2012 10:20:20 -0400 Subject: [PATCH] =?UTF-8?q?BUG=208919=20La=20opci=C3=B3n=20"user=20experie?= =?UTF-8?q?nce"=20se=20puede=20aplicar=20al=20usuario=20Admin=20SOLVED?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - en la pestaña de grupos, si admitia asignar "Simplified" en "User Experience" a grupos que tienen algun usuario administrador - se añadio un case que filtre esos usuarios. --- workflow/engine/methods/users/users_Ajax.php | 22 +++++++++++++++ .../engine/templates/admin/uxUsersList.js | 28 +++++++------------ 2 files changed, 32 insertions(+), 18 deletions(-) diff --git a/workflow/engine/methods/users/users_Ajax.php b/workflow/engine/methods/users/users_Ajax.php index 6a78f162c..0e57d9938 100755 --- a/workflow/engine/methods/users/users_Ajax.php +++ b/workflow/engine/methods/users/users_Ajax.php @@ -150,6 +150,28 @@ try { echo $aValues['USR_FIRSTNAME'] . ' ' . $aValues['USR_LASTNAME'] . '
'; } break; + + //This case is used to check if any of the user group has as role 'PROCESSMAKER_ADMIN', + case 'usersAdminGroupExtJS': + G::LoadClass('groups'); + $oGroup = new Groups(); + $aGroup = $oGroup->getUsersOfGroup($_POST['GRP_UID']); + $responseUser = 'false'; + $usersAdmin = ''; + foreach ($aGroup as $iIndex => $aValues) { + if ($aValues['USR_ROLE'] == 'PROCESSMAKER_ADMIN') { + $responseUser = 'true'; + $usersAdmin .= $aValues['USR_FIRSTNAME'] . ' ' . $aValues['USR_LASTNAME'].', '; + } + } + $usersAdmin = substr($usersAdmin, 0, -2); + + $result = new stdClass(); + $result->reponse = $responseUser; + $result->users = $usersAdmin; + + echo G::json_encode($result); + break; case 'canDeleteUser': G::LoadClass('case'); $oProcessMap = new Cases(); diff --git a/workflow/engine/templates/admin/uxUsersList.js b/workflow/engine/templates/admin/uxUsersList.js index 02e9022cd..7373889f3 100755 --- a/workflow/engine/templates/admin/uxUsersList.js +++ b/workflow/engine/templates/admin/uxUsersList.js @@ -277,6 +277,7 @@ Ext.onReady(function(){ editor: new Ext.form.ComboBox({ listClass: 'x-combo-list-small', mode: 'local', + id:'GRP_UXCombo', displayField:'name', lazyRender: true, triggerAction: 'all', @@ -287,30 +288,21 @@ Ext.onReady(function(){ data : uxTypes }), listeners: { - select: function(a, b) { - var nameGroup = groupsGrid.getSelectionModel().selection['record'].data['CON_VALUE']; - var uidGroup = groupsGrid.getSelectionModel().selection['record'].data['GRP_UID']; - + select: function(a, b) { + var uidGroup = groupsGrid.getSelectionModel().selection['record'].data['GRP_UID']; Ext.Ajax.request({ - url: '../users/users_Ajax?function=usersGroupAllFieldsExtJS', + url: '../users/users_Ajax?function=usersAdminGroupExtJS', params: { GRP_UID: uidGroup }, success: function(result, request) { - var res = Ext.decode(result.responseText); - - console.log(res.data); - + var res = Ext.decode(result.responseText); + if ((res.reponse == 'true') && (Ext.getCmp('GRP_UXCombo').getValue()!='SWITCHABLE') && (Ext.getCmp('GRP_UXCombo').getValue()!='NORMAL')) { + PMExt.warning(_('ID_WARNING'), _('ID_ADMINS_CANT_USE_UXS')+'
'+_('ID_USERS_LIST')+': '+res.users); + Ext.getCmp('GRP_UXCombo').setValue('NORMAL'); + } } - }); - /*var row = usersGrid.getSelectionModel().getSelected(); - role = row.get('USR_ROLE'); - - if (role == 'PROCESSMAKER_ADMIN' && (this.value == 'SIMPLIFIED' || this.value == 'SINGLE')) { - PMExt.warning(_('ID_WARNING'), _('ID_ADMINS_CANT_USE_UXS')); - this.setValue('NORMAL'); - }*/ + }); } } - }) } ]