diff --git a/gulliver/system/class.g.php b/gulliver/system/class.g.php index 246b30c45..acaadbfd0 100644 --- a/gulliver/system/class.g.php +++ b/gulliver/system/class.g.php @@ -1222,9 +1222,10 @@ class G $calendarJs = ''; $calendarJsFile = PATH_GULLIVER_HOME . "js/widgets/js-calendar/lang/" . $locale .".js"; - if (file_exists($calendarJsFile)) { - $calendarJs = file_get_contents($calendarJsFile) . "\n"; + if (! file_exists($calendarJsFile)) { + $calendarJsFile = PATH_GULLIVER_HOME . "js/widgets/js-calendar/lang/en.js"; } + $calendarJs = file_get_contents($calendarJsFile) . "\n"; return $calendarJs . 'var TRANSLATIONS = ' . G::json_encode( $translation ) . ';' ; } @@ -3468,10 +3469,10 @@ class G G::LoadClass("pmFunctions"); G::LoadThirdParty('phpmailer', 'class.phpmailer'); $setup = getEmailConfiguration(); - if ($setup['MESS_RAUTH'] == false || (is_string($setup['MESS_RAUTH']) && $setup['MESS_RAUTH'] == 'false')) { - $setup['MESS_RAUTH'] = 0; - } else { - $setup['MESS_RAUTH'] = 1; + if ($setup['MESS_RAUTH'] == false || (is_string($setup['MESS_RAUTH']) && $setup['MESS_RAUTH'] == 'false')) { + $setup['MESS_RAUTH'] = 0; + } else { + $setup['MESS_RAUTH'] = 1; } if (count($setup) == 0 || !isset($setup['MESS_ENGINE']) || !isset($setup['MESS_SERVER']) diff --git a/workflow/engine/classes/class.pmFunctions.php b/workflow/engine/classes/class.pmFunctions.php index 56301b5c3..c08b14391 100755 --- a/workflow/engine/classes/class.pmFunctions.php +++ b/workflow/engine/classes/class.pmFunctions.php @@ -87,19 +87,13 @@ function getCurrentTime () * @label User Info * @link http://wiki.processmaker.com/index.php/ProcessMaker_Functions#userInfo.28.29 * - * @param string(32) | $user_id | User ID | The user unique ID - * @return array | $userInfo | User Info | An associative array with Information + * @param string(32) | $userUid | User ID | The user unique ID + * @return array | $info | User Info | An associative array with Information * */ -function userInfo ($user_uid) +function userInfo($userUid) { - try { - require_once 'classes/model/Users.php'; - $oUser = new Users(); - return $oUser->getAllInformation( $user_uid ); - } catch (Exception $oException) { - throw $oException; - } + return PMFInformationUser($userUid); } /** @@ -1107,6 +1101,40 @@ function WSUpdateUser ($userUid, $userName, $firstName = null, $lastName = null, return $fields; } +/** + * + * @method Retrieves information about a user with a given ID. + * + * @name WSInformationUser + * @label WS Information User + * @link http://wiki.processmaker.com/index.php/ProcessMaker_Functions#WSInformationUser.28.29 + * + * @param string(32) | $userUid | User UID | The user UID. + * @return array | $response | WS array | A WS Response associative array. + * + */ +function WSInformationUser($userUid) +{ + $client = WSOpen(); + + $sessionId = $_SESSION["WS_SESSION_ID"]; + + $params = array( + "sessionId" => $sessionId, + "userUid" => $userUid + ); + + $result = $client->__soapCall("informationUser", array($params)); + + $response = array(); + $response["status_code"] = $result->status_code; + $response["message"] = $result->message; + $response["time_stamp"] = $result->timestamp; + $response["info"] = (isset($result->info))? $result->info : null; + + return $response; +} + /** * * @method Returns the unique ID for the current active session. @@ -1851,6 +1879,34 @@ function PMFUpdateUser ($userUid, $userName, $firstName = null, $lastName = null } } +/** + * + * @method Retrieves information about a user with a given ID. + * + * @name PMFInformationUser + * @label PMF Information User + * @link http://wiki.processmaker.com/index.php/ProcessMaker_Functions#PMFInformationUser.28.29 + * + * @param string(32) | $userUid | User UID | The user UID. + * @return array | $info | Information of user | An associative array with Information. + * + */ +function PMFInformationUser($userUid) +{ + G::LoadClass("wsBase"); + + $ws = new wsBase(); + $result = $ws->informationUser($userUid); + + $info = array(); + + if ($result->status_code == 0 && isset($result->info)) { + $info = $result->info; + } + + return $info; +} + /** * * @method Creates a random string of letters and/or numbers of a specified length,which diff --git a/workflow/engine/classes/class.pmScript.php b/workflow/engine/classes/class.pmScript.php index c0695a214..49237f580 100755 --- a/workflow/engine/classes/class.pmScript.php +++ b/workflow/engine/classes/class.pmScript.php @@ -541,6 +541,12 @@ function handleErrors ($errno, $errstr, $errfile, $errline) if (isset( $_SESSION['_CODE_'] )) { $sCode = $_SESSION['_CODE_']; unset( $_SESSION['_CODE_'] ); + global $oPMScript; + if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) { + G::LoadClass( 'case' ); + $oCase = new Cases(); + $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields)); + } registerError( 1, $errstr, $errline - 1, $sCode ); } } @@ -554,6 +560,8 @@ function handleErrors ($errno, $errstr, $errfile, $errline) function handleFatalErrors ($buffer) { + G::LoadClass( 'case' ); + $oCase = new Cases(); if (preg_match( '/(error<\/b>:)(.+)(/', '', $regs[2] ); $aAux = explode( ' in ', $err ); @@ -562,23 +570,27 @@ function handleFatalErrors ($buffer) registerError( 2, $aAux[0], 0, $sCode ); if (strpos( $_SERVER['REQUEST_URI'], '/cases/cases_Step' ) !== false) { if (strpos( $_SERVER['REQUEST_URI'], '&ACTION=GENERATE' ) !== false) { - G::LoadClass( 'case' ); - $oCase = new Cases(); $aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] ); if ($_SESSION['TRIGGER_DEBUG']['ISSET']) { $_SESSION['TRIGGER_DEBUG']['TIME'] = 'AFTER'; $_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE']; $aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug'; } + global $oPMScript; + if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) { + $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields)); + } G::header( 'Location: ' . $aNextStep['PAGE'] ); die(); } $_SESSION['_NO_EXECUTE_TRIGGERS_'] = 1; + global $oPMScript; + if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) { + $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields)); + } G::header( 'Location: ' . $_SERVER['REQUEST_URI'] ); die(); } else { - G::LoadClass( 'case' ); - $oCase = new Cases(); $aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] ); if ($_SESSION['TRIGGER_DEBUG']['ISSET']) { $_SESSION['TRIGGER_DEBUG']['TIME'] = 'AFTER'; @@ -588,6 +600,10 @@ function handleFatalErrors ($buffer) if (strpos( $aNextStep['PAGE'], 'TYPE=ASSIGN_TASK&UID=-1' ) !== false) { G::SendMessageText( 'Fatal error in trigger', 'error' ); } + global $oPMScript; + if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) { + $oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields)); + } G::header( 'Location: ' . $aNextStep['PAGE'] ); die(); } diff --git a/workflow/engine/classes/class.wsBase.php b/workflow/engine/classes/class.wsBase.php index 86375f492..83735c483 100755 --- a/workflow/engine/classes/class.wsBase.php +++ b/workflow/engine/classes/class.wsBase.php @@ -1217,7 +1217,41 @@ class wsBase return $result; } catch (Exception $e) { - $result = wsResponse( 100, $e->getMessage() ); + $result = new wsResponse(100, $e->getMessage()); + + return $result; + } + } + + /** + * Information User + * @param string userUid : The user UID. + * @return $result will return an object + */ + public function informationUser($userUid) + { + try { + if (empty($userUid)) { + $result = new wsResponse(100, G::LoadTranslation("ID_REQUIRED_FIELD") . " userUid"); + + return $result; + } + + $user = new Users(); + $userInfo = $user->getAllInformation($userUid); + + //Response + $res = new wsResponse(0, G::LoadTranslation("ID_COMMAND_EXECUTED_SUCCESSFULLY")); + + $result = new stdClass(); + $result->status_code = $res->status_code; + $result->message = $res->message; + $result->timestamp = $res->timestamp; + $result->info = $userInfo; + + return $result; + } catch (Exception $e) { + $result = new wsResponse(100, $e->getMessage()); return $result; } @@ -1648,7 +1682,7 @@ class wsBase $this->originalValues['INDEX'] = $_SESSION['INDEX']; unset( $_SESSION['INDEX'] ); } - + if (isset( $_SESSION['USER_LOGGED'] )) { $this->originalValues['USER_LOGGED'] = $_SESSION['USER_LOGGED']; unset( $_SESSION['USER_LOGGED'] ); @@ -1664,7 +1698,7 @@ class wsBase unset( $_SESSION['STEP_POSITION'] ); } } - + /** * restore the Session variables with values of $originalValues array, if this is set. * @@ -1696,7 +1730,7 @@ class wsBase $_SESSION['USR_USERNAME'] = $this->originalValues['USR_USERNAME']; unset( $this->originalValues['USR_USERNAME']); } - + if (isset( $this->originalValues['USER_LOGGED'] )) { $_SESSION['USER_LOGGED'] = $this->originalValues['USER_LOGGED']; unset( $this->originalValues['USER_LOGGED']); @@ -1720,9 +1754,9 @@ class wsBase public function newCase ($processId, $userId, $taskId, $variables) { try { - + $this->saveTemporarySessionVars(); - + $Fields = array (); if (is_array( $variables ) && count( $variables ) > 0) { @@ -1796,7 +1830,7 @@ class wsBase $up_case = $oCase->updateCase( $caseId, $oldFields ); $this->restoreSessionVars(); - + $result = new wsResponse( 0, G::loadTranslation( 'ID_STARTED_SUCCESSFULLY' ) ); $result->caseId = $caseId; $result->caseNumber = $caseNr; @@ -2839,7 +2873,7 @@ class wsBase return $result; } catch (Exception $e) { - $result = wsResponse( 100, $e->getMessage() ); + $result = new wsResponse(100, $e->getMessage()); return $result; } @@ -2885,7 +2919,7 @@ class wsBase return $result; } catch (Exception $e) { - $result = wsResponse( 100, $e->getMessage() ); + $result = new wsResponse(100, $e->getMessage()); return $result; } @@ -2941,7 +2975,7 @@ class wsBase return $result; } catch (Exception $e) { - $result = wsResponse( 100, $e->getMessage() ); + $result = new wsResponse(100, $e->getMessage()); return $result; } @@ -2987,7 +3021,7 @@ class wsBase return $result; } catch (Exception $e) { - $result = wsResponse( 100, $e->getMessage() ); + $result = new wsResponse(100, $e->getMessage()); return $result; } diff --git a/workflow/engine/classes/model/AppFolder.php b/workflow/engine/classes/model/AppFolder.php index 52f677bb1..0f8403385 100755 --- a/workflow/engine/classes/model/AppFolder.php +++ b/workflow/engine/classes/model/AppFolder.php @@ -275,6 +275,15 @@ class AppFolder extends BaseAppFolder $oCriteria->add( AppDocumentPeer::APP_DOC_STATUS, 'ACTIVE' ); } + $numRecTotal = AppDocumentPeer::doCount($oCriteria); + + $auxCriteria = clone $oCriteria; + $auxCriteria->addJoin(AppDocumentPeer::DOC_UID, OutputDocumentPeer::OUT_DOC_UID); + $auxCriteria->add(AppDocumentPeer::APP_DOC_TYPE, 'OUTPUT'); + $auxCriteria->add(OutputDocumentPeer::OUT_DOC_UID, '-1', Criteria::NOT_EQUAL); + $auxCriteria->add(OutputDocumentPeer::OUT_DOC_GENERATE, 'BOTH'); + $numRecTotal += AppDocumentPeer::doCount($auxCriteria); + $oCase->verifyTable(); $oCriteria->addAscendingOrderByColumn( AppDocumentPeer::APP_DOC_INDEX ); @@ -321,8 +330,10 @@ class AppFolder extends BaseAppFolder } $rs->next(); } - $response['totalDocumentsCount'] = count($response['documents']); - return ($response); + + $response["totalDocumentsCount"] = $numRecTotal; + + return $response; } public function getCompleteDocumentInfo ($appUid, $appDocUid, $docVersion, $docUid, $usrId) diff --git a/workflow/engine/classes/model/Users.php b/workflow/engine/classes/model/Users.php index 469c944ca..7197e83ed 100755 --- a/workflow/engine/classes/model/Users.php +++ b/workflow/engine/classes/model/Users.php @@ -138,9 +138,9 @@ class Users extends BaseUsers $aIsoSubdivision = IsoSubdivision::findById( $aFields['USR_COUNTRY'], $aFields['USR_CITY'] ); $aIsoLocation = IsoLocation::findById( $aFields['USR_COUNTRY'], $aFields['USR_CITY'], $aFields['USR_LOCATION'] ); - $aFields['USR_COUNTRY_NAME'] = $aIsoCountry['IC_NAME']; - $aFields['USR_CITY_NAME'] = $aIsoSubdivision['IS_NAME']; - $aFields['USR_LOCATION_NAME'] = $aIsoLocation['IL_NAME']; + $aFields["USR_COUNTRY_NAME"] = (!empty($aIsoCountry["IC_NAME"]))? $aIsoCountry["IC_NAME"] : ""; + $aFields["USR_CITY_NAME"] = (!empty($aIsoSubdivision["IS_NAME"]))? $aIsoSubdivision["IS_NAME"] : ""; + $aFields["USR_LOCATION_NAME"] = (!empty($aIsoLocation["IL_NAME"]))? $aIsoLocation["IL_NAME"] : ""; $result = $aFields; diff --git a/workflow/engine/methods/appFolder/appFolderAjax.php b/workflow/engine/methods/appFolder/appFolderAjax.php index b3fe35ca3..4cdfce319 100755 --- a/workflow/engine/methods/appFolder/appFolderAjax.php +++ b/workflow/engine/methods/appFolder/appFolderAjax.php @@ -121,30 +121,40 @@ function expandNode() $totalDocuments=0; if (($_POST['sendWhat'] == "dirs") || ($_POST['sendWhat'] == "both")) { - $folderListObj = $oPMFolder->getFolderList ($_POST ['node'] != 'root' ? - $_POST ['node'] == 'NA' ? "" : $_POST ['node'] : $rootFolder, $limit, $start); - //G::pr($folderListObj); + $folderListObj = $oPMFolder->getFolderList( + ($_POST["node"] != "root")? (($_POST["node"] == "NA")? "" : $_POST["node"]) : $rootFolder, + $limit, + $start + ); + $folderList=$folderListObj['folders']; $totalFolders=$folderListObj['totalFoldersCount']; $totalItems+=count($folderList); - //G::pr($folderListObj); } if (($_POST['sendWhat'] == "files") || ($_POST['sendWhat'] == "both")) { global $RBAC; + $user = ($RBAC->userCanAccess('PM_ALLCASES') == 1)? '' : $_SESSION['USER_LOGGED']; - $folderContentObj = $oPMFolder->getFolderContent ($_POST ['node'] != 'root' ? - $_POST ['node'] == 'NA' ? "" : $_POST ['node'] : $rootFolder, array(), null, null, $limit, $start, $user, true); + + $folderContentObj = $oPMFolder->getFolderContent( + ($_POST["node"] != "root")? (($_POST["node"] == "NA")? "" : $_POST["node"]) : $rootFolder, + array(), + null, + null, + $limit, + $start, + $user, + true + ); + $folderContent=$folderContentObj['documents']; $totalDocuments=$folderContentObj['totalDocumentsCount']; $totalItems+=count($folderContent); - //G::pr($folderContent); } - // G::pr($folderList); - //var_dump(isset($folderList)); + $processListTree=array(); $tempTree=array(); if (isset($folderList) && sizeof($folderList)>0) { - //print'krlos'; //$tempTree=array(); foreach ($folderList as $key => $obj) { //$tempTree ['all-obj'] = $obj; @@ -339,15 +349,15 @@ function expandNode() $tempTree=array(); } } - //G::pr($processListTree); + if ((isset($_POST['option'])) && ($_POST['option'] == "gridDocuments")) { - $processListTreeTemp['totalCount']=$totalFolders+count($processListTree); + $processListTreeTemp["totalCount"] = $totalFolders + $totalDocuments; $processListTreeTemp['msg']='correct reload'; $processListTreeTemp['items']=$processListTree; $processListTree = $processListTreeTemp; } - //G::pr ($processListTree);die; - print G::json_encode ($processListTree); + + echo G::json_encode($processListTree); } function openPMFolder() diff --git a/workflow/engine/methods/events/eventsEdit.php b/workflow/engine/methods/events/eventsEdit.php index 46cf4d764..5454afc8b 100755 --- a/workflow/engine/methods/events/eventsEdit.php +++ b/workflow/engine/methods/events/eventsEdit.php @@ -66,7 +66,7 @@ foreach ($aTriggersList as $i => $v) { $aTriggersList[$i]['TRI_TITLE'] = (strlen( $aTriggersList[$i]['TRI_TITLE'] ) > 32) ? substr( $aTriggersList[$i]['TRI_TITLE'], 0, 32 ) . '...' : $aTriggersList[$i]['TRI_TITLE']; } -$aTriggersList = array_merge( Array ($aTriggersFileds, $aTriggersList )); +$aTriggersList = array_merge( $aTriggersFileds, $aTriggersList ); $_DBArray['tasks'] = $aTasks; $_DBArray['TMP_TRIGGERS'] = $aTriggersList; diff --git a/workflow/engine/methods/events/eventsNew.php b/workflow/engine/methods/events/eventsNew.php index f829c4009..ba0d32ae8 100755 --- a/workflow/engine/methods/events/eventsNew.php +++ b/workflow/engine/methods/events/eventsNew.php @@ -55,7 +55,7 @@ foreach ($aTriggersList as $i => $v) { $aTriggersList[$i]['TRI_TITLE'] = (strlen( $aTriggersList[$i]['TRI_TITLE'] ) > 32) ? substr( $aTriggersList[$i]['TRI_TITLE'], 0, 32 ) . '...' : $aTriggersList[$i]['TRI_TITLE']; } -$aTriggersList = array_merge( Array ($aTriggersFileds), $aTriggersList ); +$aTriggersList = array_merge( $aTriggersFileds, $aTriggersList ); $_DBArray['tasks'] = $aTasks; $_DBArray['TMP_TRIGGERS'] = $aTriggersList; diff --git a/workflow/engine/methods/services/pmos2.wsdl b/workflow/engine/methods/services/pmos2.wsdl index 7f5a83a0a..1ebd37649 100755 --- a/workflow/engine/methods/services/pmos2.wsdl +++ b/workflow/engine/methods/services/pmos2.wsdl @@ -225,6 +225,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -896,6 +940,12 @@ + + + + + + @@ -1091,6 +1141,10 @@ + + + + @@ -1301,6 +1355,15 @@ + + + + + + + + + diff --git a/workflow/engine/methods/services/soap2.php b/workflow/engine/methods/services/soap2.php index b94c61d5e..1544ff581 100755 --- a/workflow/engine/methods/services/soap2.php +++ b/workflow/engine/methods/services/soap2.php @@ -873,6 +873,26 @@ function updateUser ($params) return $result; } +function informationUser($params) +{ + $result = isValidSession($params->sessionId); + + if ($result->status_code != 0) { + return $result; + } + + if (ifPermission($params->sessionId, "PM_USERS") == 0) { + $result = new wsResponse(2, "You do not have privileges"); + + return $result; + } + + $ws = new wsBase(); + $result = $ws->informationUser($params->userUid); + + return $result; +} + function CreateGroup ($params) { $vsResult = isValidSession( $params->sessionId ); @@ -1170,46 +1190,48 @@ function unpauseCase ($params) return $result; } -$server = new SoapServer( $wsdl ); -$server->addFunction( "Login" ); -$server->addFunction( "ProcessList" ); -$server->addFunction( "CaseList" ); -$server->addFunction( "UnassignedCaseList" ); -$server->addFunction( "RoleList" ); -$server->addFunction( "GroupList" ); -$server->addFunction( "DepartmentList" ); -$server->addFunction( "UserList" ); -$server->addFunction( "TriggerList" ); -$server->addFunction( "outputDocumentList" ); -$server->addFunction( "inputDocumentList" ); -$server->addFunction( "inputDocumentProcessList" ); -$server->addFunction( "removeDocument" ); -$server->addFunction( "SendMessage" ); -$server->addFunction( "SendVariables" ); -$server->addFunction( "GetVariables" ); -$server->addFunction( "GetVariablesNames" ); -$server->addFunction( "DerivateCase" ); -$server->addFunction( "RouteCase" ); -$server->addFunction( "executeTrigger" ); -$server->addFunction( "NewCaseImpersonate" ); -$server->addFunction( "NewCase" ); -$server->addFunction( "AssignUserToGroup" ); -$server->addFunction( "AssignUserToDepartment" ); -$server->addFunction( "CreateGroup" ); -$server->addFunction( "CreateDepartment" ); -$server->addFunction( "CreateUser" ); -$server->addFunction( "updateUser" ); -$server->addFunction( "getCaseInfo" ); -$server->addFunction( "TaskList" ); -$server->addFunction( "TaskCase" ); -$server->addFunction( "ReassignCase" ); -$server->addFunction( "systemInformation" ); -$server->addFunction( "importProcessFromLibrary" ); -$server->addFunction( "removeUserFromGroup" ); -$server->addFunction( "getCaseNotes" ); -$server->addFunction( "deleteCase" ); -$server->addFunction( "cancelCase" ); -$server->addFunction( "pauseCase" ); -$server->addFunction( "unpauseCase" ); +$server = new SoapServer($wsdl); + +$server->addFunction("Login"); +$server->addFunction("ProcessList"); +$server->addFunction("CaseList"); +$server->addFunction("UnassignedCaseList"); +$server->addFunction("RoleList"); +$server->addFunction("GroupList"); +$server->addFunction("DepartmentList"); +$server->addFunction("UserList"); +$server->addFunction("TriggerList"); +$server->addFunction("outputDocumentList"); +$server->addFunction("inputDocumentList"); +$server->addFunction("inputDocumentProcessList"); +$server->addFunction("removeDocument"); +$server->addFunction("SendMessage"); +$server->addFunction("SendVariables"); +$server->addFunction("GetVariables"); +$server->addFunction("GetVariablesNames"); +$server->addFunction("DerivateCase"); +$server->addFunction("RouteCase"); +$server->addFunction("executeTrigger"); +$server->addFunction("NewCaseImpersonate"); +$server->addFunction("NewCase"); +$server->addFunction("AssignUserToGroup"); +$server->addFunction("AssignUserToDepartment"); +$server->addFunction("CreateGroup"); +$server->addFunction("CreateDepartment"); +$server->addFunction("CreateUser"); +$server->addFunction("updateUser"); +$server->addFunction("informationUser"); +$server->addFunction("getCaseInfo"); +$server->addFunction("TaskList"); +$server->addFunction("TaskCase"); +$server->addFunction("ReassignCase"); +$server->addFunction("systemInformation"); +$server->addFunction("importProcessFromLibrary"); +$server->addFunction("removeUserFromGroup"); +$server->addFunction("getCaseNotes"); +$server->addFunction("deleteCase"); +$server->addFunction("cancelCase"); +$server->addFunction("pauseCase"); +$server->addFunction("unpauseCase"); $server->handle(); diff --git a/workflow/engine/methods/users/usersAjax.php b/workflow/engine/methods/users/usersAjax.php index 70e7f313a..642fce848 100644 --- a/workflow/engine/methods/users/usersAjax.php +++ b/workflow/engine/methods/users/usersAjax.php @@ -489,10 +489,6 @@ switch ($_POST['action']) { $aFields['CASES_MENUSELECTED_NAME'] = $casesMenuSelected; - $aFields['USR_COUNTRY_NAME'] = (! empty( $aFields['USR_COUNTRY_NAME'] )) ? $aFields['USR_COUNTRY_NAME'] : ''; - $aFields['USR_CITY_NAME'] = (! empty( $aFields['USR_CITY_NAME'] )) ? $aFields['USR_CITY_NAME'] : ''; - $aFields['USR_LOCATION_NAME'] = (! empty( $aFields['USR_LOCATION_NAME'] )) ? $aFields['USR_LOCATION_NAME'] : ''; - $result->success = true; $result->user = $aFields; diff --git a/workflow/engine/methods/users/usersGroups.php b/workflow/engine/methods/users/usersGroups.php index c4b13c737..86ad80716 100755 --- a/workflow/engine/methods/users/usersGroups.php +++ b/workflow/engine/methods/users/usersGroups.php @@ -82,13 +82,16 @@ switch ($_REQUEST['type']) { break; } -$users = Array (); -$users['USR_UID'] = $_GET['uUID']; -$users['USR_FIRSTNAME'] = $aRow['USR_FIRSTNAME']; -$users['USR_LASTNAME'] = $aRow['USR_LASTNAME']; -$users['USR_USERNAME'] = $aRow['USR_USERNAME']; -$users['fullNameFormat'] = $Config['fullNameFormat']; -$users['CURRENT_TAB'] = $ctab; +$arrayAuthSources = $RBAC->getAllAuthSourcesByUser(); + +$users = array(); +$users["USR_UID"] = $_GET["uUID"]; +$users["USR_FIRSTNAME"] = $aRow["USR_FIRSTNAME"]; +$users["USR_LASTNAME"] = $aRow["USR_LASTNAME"]; +$users["USR_USERNAME"] = $aRow["USR_USERNAME"]; +$users["USR_AUTH_SOURCE"] = (isset($arrayAuthSources[$_GET["uUID"]]))? $arrayAuthSources[$_GET["uUID"]] : "ProcessMaker (MYSQL)"; +$users["fullNameFormat"] = $Config["fullNameFormat"]; +$users["CURRENT_TAB"] = $ctab; $oHeadPublisher = & headPublisher::getSingleton(); $oHeadPublisher->addExtJsScript( 'users/usersGroups', false ); //adding a javascript file .js diff --git a/workflow/engine/skinEngine/base/baseCss/ext-all-notheme.css b/workflow/engine/skinEngine/base/baseCss/ext-all-notheme.css index 2dc750d1a..e20eb5f67 100755 --- a/workflow/engine/skinEngine/base/baseCss/ext-all-notheme.css +++ b/workflow/engine/skinEngine/base/baseCss/ext-all-notheme.css @@ -837,7 +837,7 @@ ul.x-tab-strip li.x-tab-edge { } .x-tab-scrolling { - position:relative; + position:relative; } .x-tab-panel-bbar .x-toolbar { @@ -2265,7 +2265,7 @@ div.x-toolbar-no-items { } .ext-strict .x-grid3-header-pop-inner { - width:14px; + width:14px; } .x-grid3-header-inner { @@ -4465,7 +4465,7 @@ body.ext-ie6.x-body-masked .x-window select { .x-html-editor-tb .x-edit-bold, .x-menu-item img.x-edit-bold { background-position:0 0; - background-image:url(../images/default/editor/tb-sprite.gif); + background-image:url(../images/default/editor/tb-sprite.gif); } .x-html-editor-tb .x-edit-italic, .x-menu-item img.x-edit-italic { @@ -5023,7 +5023,7 @@ body.ext-ie6.x-body-masked .x-window select { -khtml-user-select:none; -webkit-user-select:ignore; display:block; - overflow:hidden; + overflow:hidden; } /* Horizontal styles */ @@ -5147,4 +5147,8 @@ body.ext-ie6.x-body-masked .x-window select { .ext-gecko2 .ext-mb-fix-cursor { overflow:auto; +} + +.x-box-inner .x-form-check-wrap { + text-align:center; } \ No newline at end of file diff --git a/workflow/engine/skinEngine/uxmodern/baseCss/ext-all-notheme.css b/workflow/engine/skinEngine/uxmodern/baseCss/ext-all-notheme.css index 2dc750d1a..e20eb5f67 100644 --- a/workflow/engine/skinEngine/uxmodern/baseCss/ext-all-notheme.css +++ b/workflow/engine/skinEngine/uxmodern/baseCss/ext-all-notheme.css @@ -837,7 +837,7 @@ ul.x-tab-strip li.x-tab-edge { } .x-tab-scrolling { - position:relative; + position:relative; } .x-tab-panel-bbar .x-toolbar { @@ -2265,7 +2265,7 @@ div.x-toolbar-no-items { } .ext-strict .x-grid3-header-pop-inner { - width:14px; + width:14px; } .x-grid3-header-inner { @@ -4465,7 +4465,7 @@ body.ext-ie6.x-body-masked .x-window select { .x-html-editor-tb .x-edit-bold, .x-menu-item img.x-edit-bold { background-position:0 0; - background-image:url(../images/default/editor/tb-sprite.gif); + background-image:url(../images/default/editor/tb-sprite.gif); } .x-html-editor-tb .x-edit-italic, .x-menu-item img.x-edit-italic { @@ -5023,7 +5023,7 @@ body.ext-ie6.x-body-masked .x-window select { -khtml-user-select:none; -webkit-user-select:ignore; display:block; - overflow:hidden; + overflow:hidden; } /* Horizontal styles */ @@ -5147,4 +5147,8 @@ body.ext-ie6.x-body-masked .x-window select { .ext-gecko2 .ext-mb-fix-cursor { overflow:auto; +} + +.x-box-inner .x-form-check-wrap { + text-align:center; } \ No newline at end of file diff --git a/workflow/engine/templates/cases/casesDocuments.js b/workflow/engine/templates/cases/casesDocuments.js index ad114d6ec..5f63c06d7 100755 --- a/workflow/engine/templates/cases/casesDocuments.js +++ b/workflow/engine/templates/cases/casesDocuments.js @@ -1093,11 +1093,7 @@ var gridbb = new Ext.PagingToolbar({ lastText : TRANSLATIONS.ID_LAST, nextText : TRANSLATIONS.ID_NEXT, prevText : TRANSLATIONS.ID_PREVIOUS, - refreshText : TRANSLATIONS.ID_RELOAD, - items : [ '-', ' ', ' ', ' ', ' ', ' ', new Ext.ux.StatusBar({ - defaultText : TRANSLATIONS.ID_DONE, - id : 'statusPanel' - }) ] + refreshText: TRANSLATIONS.ID_RELOAD }); var grid; diff --git a/workflow/engine/templates/processes/main.js b/workflow/engine/templates/processes/main.js index dc8a97283..1f72c38da 100755 --- a/workflow/engine/templates/processes/main.js +++ b/workflow/engine/templates/processes/main.js @@ -841,6 +841,7 @@ importProcessExistProcess = function() header : false, width : 460, height : 210, + autoHeight : true, modal : true, autoScroll : false, maximizable : false, @@ -853,7 +854,7 @@ importProcessExistProcess = function() fileUpload : false, width : 440, frame : true, - autoHeight : false, + autoHeight : true, bodyStyle : 'padding: 10px 10px 0 10px;', labelWidth : 50, defaults : { diff --git a/workflow/engine/templates/users/usersGroups.js b/workflow/engine/templates/users/usersGroups.js index 1839b2bdb..b7eb2c6a9 100755 --- a/workflow/engine/templates/users/usersGroups.js +++ b/workflow/engine/templates/users/usersGroups.js @@ -263,8 +263,8 @@ Ext.onReady(function(){ }); //GROUPS DRAG AND DROP PANEL - GroupsPanel = new Ext.Panel({ - title : _('ID_GROUPS'), + GroupsPanel = new Ext.Panel({ + title: _("ID_GROUPS"), autoWidth : true, layout : 'hbox', defaults : { flex : 1 }, //auto stretch @@ -408,7 +408,15 @@ Ext.onReady(function(){ {columnWidth:.6, padding: 3, layout: 'form', items: [userFields]}, {columnWidth:.4, padding: 3, layout: 'form', items: [userPhoto, caseFields]} ] - }] + }], + buttons: [ + { + text: _("ID_EDIT"), + handler: function () { + location.href = "usersEdit?USR_UID=" + USERS.USR_UID + "&USR_AUTH_SOURCE=" + USERS.USR_AUTH_SOURCE + "&MODE=edit"; + } + } + ] }); SummaryPanel = new Ext.Panel({