From cbef4fd4cba0a3d05f2501f0c45673f6b64d3803 Mon Sep 17 00:00:00 2001 From: Brayan Osmar Pereyra Suxo Date: Tue, 13 Nov 2012 10:19:29 -0400 Subject: [PATCH] BUG 9717 I add attribute USR_STATUS SOLVED I add attribute USR_STATUS --- .../methods/authSources/authSources_Edit.php | 2 +- .../authSources/authSources_ImportUsers.php | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/workflow/engine/methods/authSources/authSources_Edit.php b/workflow/engine/methods/authSources/authSources_Edit.php index 91c691ad5..49fff84f4 100755 --- a/workflow/engine/methods/authSources/authSources_Edit.php +++ b/workflow/engine/methods/authSources/authSources_Edit.php @@ -88,7 +88,7 @@ if ($fields['AUTH_SOURCE_PROVIDER'] == 'ldap') { // The attributes the users G::loadClass('pmFunctions'); $data = executeQuery('DESCRIBE USERS'); - $fieldSet = array('USR_UID', 'USR_USERNAME', 'USR_PASSWORD', 'USR_EMAIL', 'USR_CREATE_DATE', 'USR_UPDATE_DATE', 'USR_STATUS', 'USR_COUNTRY', 'USR_CITY', 'USR_LOCATION', 'DEP_UID', 'USR_RESUME', 'USR_ROLE', 'USR_REPORTS_TO', 'USR_REPLACED_BY', 'USR_UX'); + $fieldSet = array('USR_UID', 'USR_USERNAME', 'USR_PASSWORD', 'USR_EMAIL', 'USR_CREATE_DATE', 'USR_UPDATE_DATE', 'USR_COUNTRY', 'USR_CITY', 'USR_LOCATION', 'DEP_UID', 'USR_RESUME', 'USR_ROLE', 'USR_REPORTS_TO', 'USR_REPLACED_BY', 'USR_UX'); $attributes = ''; foreach ($data as $value) { if (!(in_array($value['Field'], $fieldSet))) { diff --git a/workflow/engine/methods/authSources/authSources_ImportUsers.php b/workflow/engine/methods/authSources/authSources_ImportUsers.php index 18c51c953..d7706ece4 100755 --- a/workflow/engine/methods/authSources/authSources_ImportUsers.php +++ b/workflow/engine/methods/authSources/authSources_ImportUsers.php @@ -72,6 +72,22 @@ foreach ($_POST['aUsers'] as $sUser) { foreach ($aAttributes as $value) { if (isset($aUser[$value['attributeUser']])) { $aData[$value['attributeUser']] = str_replace( "*", "'", $aUser[$value['attributeUser']] ); + if ($value['attributeUser'] == 'USR_STATUS') { + $evalValue = $aData[$value['attributeUser']]; + + $statusValue = 'INACTIVE'; + if (is_string($evalValue) && $evalValue == 'ACTIVE') { + $statusValue = 'ACTIVE'; + } + if (is_bool($evalValue) && $evalValue == true) { + $statusValue = 'ACTIVE'; + } + if ( (is_float($evalValue) || is_int($evalValue) || + is_integer($evalValue) || is_numeric($evalValue)) && (int)$evalValue != 0) { + $statusValue = 'ACTIVE'; + } + $aData[$value['attributeUser']] = $statusValue; + } } } }