From 293a52e31a731ce9c5ca1fa9f775b2238cdd170a Mon Sep 17 00:00:00 2001 From: Robert Anderson <randerson@lbsd.net> Date: Wed, 13 May 2009 09:49:17 +0000 Subject: [PATCH] Edit AdminUser Attribute --- webgui/ajax.php | 21 ++++++++++++ .../ajax/functions/AdminUserAttributes.php | 32 +++++++++++++++++++ webgui/js/app/windows/AdminUserAttributes.js | 16 +++++----- 3 files changed, 61 insertions(+), 8 deletions(-) diff --git a/webgui/ajax.php b/webgui/ajax.php index 29aaaca9..288f8df4 100644 --- a/webgui/ajax.php +++ b/webgui/ajax.php @@ -186,6 +186,27 @@ break; # AdminUserAttributes.js functions + case "updateAdminUserAttribute": + + $res = updateAdminUserAttribute($soapParams); + if (isset($res)) { + ajaxException($res); + } + + break; + + case "getAdminUserAttribute": + $rawData = getAdminUserAttribute($soapParams); + + $res = new json_response; + $res->setID('ID'); + $res->addField('ID','int'); + $res->addField('Name','string'); + $res->parseHash($rawData); + + echo json_encode($res->export()); + break; + case "getAdminUserAttributes": $res = getAdminUserAttributes($soapParams); diff --git a/webgui/include/ajax/functions/AdminUserAttributes.php b/webgui/include/ajax/functions/AdminUserAttributes.php index 69e11d67..a4047001 100644 --- a/webgui/include/ajax/functions/AdminUserAttributes.php +++ b/webgui/include/ajax/functions/AdminUserAttributes.php @@ -15,6 +15,38 @@ function removeAdminUserAttribute($params) { return NULL; } +# Edit attribute +function updateAdminUserAttribute($params) { + global $db; + + $res = DBDo("UPDATE user_attributes SET Name = ? WHERE ID = ?",array($params[0]['Name'],$params[0]['ID'])); + if (!is_numeric($res)) { + return $res; + } + + return NULL; +} + +# Return specific attribute row +function getAdminUserAttribute($params) { + global $db; + + + $res = DBSelect("SELECT ID, Name FROM user_attributes WHERE ID = ?",array($params[0])); + if (!is_object($res)) { + return $res; + } + + $resultArray = array(); + + $row = $res->fetchObject(); + + $resultArray['ID'] = $row->id; + $resultArray['Name'] = $row->name; + + return $resultArray; +} + # Return list of attributes function getAdminUserAttributes($params) { global $db; diff --git a/webgui/js/app/windows/AdminUserAttributes.js b/webgui/js/app/windows/AdminUserAttributes.js index 540483bf..d996a99b 100644 --- a/webgui/js/app/windows/AdminUserAttributes.js +++ b/webgui/js/app/windows/AdminUserAttributes.js @@ -142,7 +142,7 @@ function showAdminUserAttributesWindow(id) { // Display edit/add form -function showAdminGroupAddEditWindow(id) { +function showAdminUserAttributeAddEditWindow(id) { var submitAjaxConfig; @@ -151,7 +151,7 @@ function showAdminGroupAddEditWindow(id) { if (id) { submitAjaxConfig = { ID: id, - SOAPFunction: 'updateAdminGroup', + SOAPFunction: 'updateAdminUserAttribute', SOAPParams: '0:ID,'+ '0:Name' @@ -160,7 +160,7 @@ function showAdminGroupAddEditWindow(id) { // We doing an Add } else { submitAjaxConfig = { - SOAPFunction: 'createAdminGroup', + SOAPFunction: 'createAdminUserAttribute', SOAPParams: '0:Name' }; @@ -170,7 +170,7 @@ function showAdminGroupAddEditWindow(id) { var adminGroupFormWindow = new Ext.ux.GenericFormWindow( // Window config { - title: "Group Information", + title: "Attribute Information", width: 475, height: 260, @@ -185,7 +185,7 @@ function showAdminGroupAddEditWindow(id) { SOAPUsername: globalConfig.soap.username, SOAPPassword: globalConfig.soap.password, SOAPAuthType: globalConfig.soap.authtype, - SOAPModule: 'AdminGroups' + SOAPModule: 'AdminUserAttributes' }, items: [ { @@ -210,8 +210,8 @@ function showAdminGroupAddEditWindow(id) { SOAPUsername: globalConfig.soap.username, SOAPPassword: globalConfig.soap.password, SOAPAuthType: globalConfig.soap.authtype, - SOAPModule: 'AdminGroups', - SOAPFunction: 'getAdminGroup', + SOAPModule: 'AdminUserAttributes', + SOAPFunction: 'getAdminUserAttribute', SOAPParams: 'ID' } }); @@ -221,7 +221,7 @@ function showAdminGroupAddEditWindow(id) { -// Display edit/add form +// Display remove form function showAdminUserAttributeRemoveWindow(parent,id) { // Mask parent window parent.getEl().mask(); -- GitLab