diff --git a/framework/src/Maveriks/WebApplication.php b/framework/src/Maveriks/WebApplication.php index 5d6ccbc65..58993cfaa 100644 --- a/framework/src/Maveriks/WebApplication.php +++ b/framework/src/Maveriks/WebApplication.php @@ -447,6 +447,8 @@ class WebApplication define("PATH_SERVICES_REST", PATH_CORE . "services" . PATH_SEP . "rest" . PATH_SEP); \Bootstrap::registerSystemClasses(); + \Bootstrap::initVendors(); + \Bootstrap::LoadSystem( 'monologProvider' ); $arraySystemConfiguration = \System::getSystemConfiguration(); diff --git a/gulliver/system/class.bootstrap.php b/gulliver/system/class.bootstrap.php index 2cb4ed477..60c1f651d 100644 --- a/gulliver/system/class.bootstrap.php +++ b/gulliver/system/class.bootstrap.php @@ -845,7 +845,10 @@ class Bootstrap $skinEngine = new SkinEngine('publish', 'blank', ''); $skinEngine->dispatch(); } else { - die($e->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } } } diff --git a/gulliver/system/class.dbMaintenance.php b/gulliver/system/class.dbMaintenance.php index 71a005eeb..acae6a85f 100755 --- a/gulliver/system/class.dbMaintenance.php +++ b/gulliver/system/class.dbMaintenance.php @@ -266,7 +266,10 @@ class DataBaseMaintenance // Commented that is not assigned to a variable. // mysql_escape_string("';"); if (! @mysql_query( $sql )) { - echo mysql_error() . "\n"; + $ws = (defined("SYS_SYS"))? SYS_SYS : "Wokspace Undefined"; + Bootstrap::registerMonolog('MysqlCron', 400, mysql_error(), array('sql'=>$sql), $ws, 'mysql.log'); + $varRes = mysql_error() . "\n"; + G::outRes( $varRes ); return false; } return true; @@ -284,7 +287,10 @@ class DataBaseMaintenance $tableName = str_replace( '.dump', '', basename( $backupFile ) ); $sql = "LOAD DATA INFILE '$backupFile' INTO TABLE $tableName FIELDS TERMINATED BY '\t|\t' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\t\t\r\r\n'"; if (! @mysql_query( $sql )) { - print mysql_error() . "\n"; + $ws = (defined("SYS_SYS"))? SYS_SYS : "Wokspace Undefined"; + Bootstrap::registerMonolog('MysqlCron', 400, mysql_error(), array('sql'=>$sql), $ws, 'mysql.log'); + $varRes = mysql_error() . "\n"; + G::outRes( $varRes ); return false; } return true; diff --git a/gulliver/system/class.g.php b/gulliver/system/class.g.php index 69301c68f..92f93d7c2 100644 --- a/gulliver/system/class.g.php +++ b/gulliver/system/class.g.php @@ -5672,6 +5672,17 @@ class G $clean = ($lowercase) ? (function_exists('mb_strtolower')) ? mb_strtolower($clean, 'UTF-8') : strtolower($clean) : $clean; return $clean; } + /** + * Out the result + * + * @param string $sVar + * + * @return showRes($string) + */ + public function outRes ($sInfVar) + { + echo $sInfVar; + } /** * encryptOld * diff --git a/gulliver/system/class.pmException.php b/gulliver/system/class.pmException.php index d5bb786de..d615f6b25 100755 --- a/gulliver/system/class.pmException.php +++ b/gulliver/system/class.pmException.php @@ -12,7 +12,6 @@ class PMException extends Exception public function __construct ($message, $code = 0, $previous = null) { - //parent::__construct($message, 1, $previous); parent::__construct( $message, 1 ); } @@ -20,5 +19,10 @@ class PMException extends Exception { return __CLASS__ . ": [{$this->code}]: {$this->message}\n"; } + + public function registerErrorLog($error, $token){ + $ws = (defined("SYS_SYS"))? SYS_SYS : "Wokspace Undefined"; + Bootstrap::registerMonolog('ExceptionCron', 400, $error->getMessage(), array('token'=>$token), $ws, 'exception.log'); + } } diff --git a/gulliver/thirdparty/phing/Phing.php b/gulliver/thirdparty/phing/Phing.php index 00e9dfb12..cde340012 100644 --- a/gulliver/thirdparty/phing/Phing.php +++ b/gulliver/thirdparty/phing/Phing.php @@ -873,7 +873,7 @@ class Phing { // that isn't very compatible w/ other frontends (but // there aren't any right now, so I'm not stressing) print("Error importing $path\n"); - print($e->getTraceAsString()."\n"); + error_log( $e->getTraceAsString()."\n" ); } throw $e; } diff --git a/gulliver/thirdparty/phing/parser/TaskHandler.php b/gulliver/thirdparty/phing/parser/TaskHandler.php index cf4f39417..8c6f104c1 100755 --- a/gulliver/thirdparty/phing/parser/TaskHandler.php +++ b/gulliver/thirdparty/phing/parser/TaskHandler.php @@ -135,7 +135,7 @@ class TaskHandler extends AbstractHandler { } catch (BuildException $be) { // swallow here, will be thrown again in // UnknownElement->maybeConfigure if the problem persists. - print("Swallowing exception: ".$be->getMessage() . "\n"); + error_log( "Swallowing exception: ".$be->getMessage() . "\n" ); } // the task is not known of bat, try to load it on thy fly diff --git a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Column.php b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Column.php index 7dd13db22..86b356f4e 100755 --- a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Column.php +++ b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Column.php @@ -255,8 +255,8 @@ class Column extends XMLElement { try { $this->phpName = NameFactory::generateName(NameFactory::PHP_GENERATOR, $inputs); } catch (EngineException $e) { - print $e->getMessage() . "\n"; - print $e->getTraceAsString(); + error_log( $e->getMessage() . "\n" ); + error_log( $e->getTraceAsString() ); } } return $this->phpName; diff --git a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/NameFactory.php b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/NameFactory.php index adea24379..85bd837df 100755 --- a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/NameFactory.php +++ b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/NameFactory.php @@ -88,8 +88,8 @@ class NameFactory { } $algorithm = new $name(); } catch (BuildException $e) { - print $e->getMessage() . "\n"; - print $e->getTraceAsString(); + error_log( $e->getMessage() . "\n" ); + error_log( $e->getTraceAsString() ); } $this->algorithms[$name] = $algorithm; } diff --git a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Table.php b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Table.php index 2e80031bd..33d024a69 100755 --- a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Table.php +++ b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/model/Table.php @@ -198,8 +198,8 @@ class Table extends XMLElement implements IDMethod { $this->addIndex(new Index($this, array_slice($pk, $i, $size))); } } catch (EngineException $e) { - print $e->getMessage() . "\n"; - print $e->getTraceAsString(); + error_log( $e->getMessage() . "\n" ); + error_log( $e->getTraceAsString() ); } } @@ -243,8 +243,8 @@ class Table extends XMLElement implements IDMethod { // as test cases), so we'll assume that we needn't add an // entry to the system name list for these. } catch (EngineException $nameAlreadyInUse) { - print $nameAlreadyInUse->getMessage() . "\n"; - print $nameAlreadyInUse->getTraceAsString(); + error_log( $nameAlreadyInUse->getMessage() . "\n" ); + error_log( $nameAlreadyInUse->getTraceAsString() ); } } @@ -596,8 +596,8 @@ class Table extends XMLElement implements IDMethod { try { $this->phpName = NameFactory::generateName(NameFactory::PHP_GENERATOR, $inputs); } catch (EngineException $e) { - print $e->getMessage() . "\n"; - print $e->getTraceAsString(); + error_log( $e->getMessage() . "\n" ); + error_log( $e->getTraceAsString() ); } } return $this->phpName; diff --git a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/transform/XmlToData.php b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/transform/XmlToData.php index 9b5fbffd9..cc845d850 100755 --- a/gulliver/thirdparty/propel-generator/classes/propel/engine/database/transform/XmlToData.php +++ b/gulliver/thirdparty/propel-generator/classes/propel/engine/database/transform/XmlToData.php @@ -84,13 +84,13 @@ class XmlToData extends AbstractHandler { try { $this->parser->parse(); } catch (Exception $e) { - print $e->getMessage() . "\n"; + error_log( $e->getMessage() . "\n" ); $br->close(); } $br->close(); } catch (Exception $e) { - print $e->getMessage() . "\n"; - print $e->getTraceAsString(); + error_log( $e->getMessage() . "\n" ); + error_log( $e->getTraceAsString() ); } return $this->data; diff --git a/rbac/engine/config/schema.xml b/rbac/engine/config/schema.xml index 74a992a53..3198e8ebd 100755 --- a/rbac/engine/config/schema.xml +++ b/rbac/engine/config/schema.xml @@ -28,6 +28,9 @@ + + + @@ -81,6 +84,10 @@ + + + +
@@ -108,6 +115,9 @@ + + +
diff --git a/rbac/engine/data/mysql/schema.sql b/rbac/engine/data/mysql/schema.sql index a4078ddac..5dababf24 100755 --- a/rbac/engine/data/mysql/schema.sql +++ b/rbac/engine/data/mysql/schema.sql @@ -4,7 +4,7 @@ SET FOREIGN_KEY_CHECKS = 0; #----------------------------------------------------------------------------- -#-- PERMISSIONS +#-- RBAC_PERMISSIONS #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `RBAC_PERMISSIONS`; @@ -18,10 +18,11 @@ CREATE TABLE `RBAC_PERMISSIONS` `PER_UPDATE_DATE` DATETIME, `PER_STATUS` INTEGER default 1 NOT NULL, `PER_SYSTEM` VARCHAR(32) default '00000000000000000000000000000002' NOT NULL, - PRIMARY KEY (`PER_UID`) + PRIMARY KEY (`PER_UID`), + KEY `indexPermissionsCode`(`PER_CODE`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Permissions'; #----------------------------------------------------------------------------- -#-- ROLES +#-- RBAC_ROLES #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `RBAC_ROLES`; @@ -39,7 +40,7 @@ CREATE TABLE `RBAC_ROLES` PRIMARY KEY (`ROL_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Roles'; #----------------------------------------------------------------------------- -#-- ROLES_PERMISSIONS +#-- RBAC_ROLES_PERMISSIONS #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `RBAC_ROLES_PERMISSIONS`; @@ -49,10 +50,11 @@ CREATE TABLE `RBAC_ROLES_PERMISSIONS` ( `ROL_UID` VARCHAR(32) default '' NOT NULL, `PER_UID` VARCHAR(32) default '' NOT NULL, - PRIMARY KEY (`ROL_UID`,`PER_UID`) + PRIMARY KEY (`ROL_UID`,`PER_UID`), + KEY `indexRolesPermissions`(`ROL_UID`, `PER_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Permissions of the roles'; #----------------------------------------------------------------------------- -#-- SYSTEMS +#-- RBAC_SYSTEMS #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `RBAC_SYSTEMS`; @@ -65,10 +67,11 @@ CREATE TABLE `RBAC_SYSTEMS` `SYS_CREATE_DATE` DATETIME, `SYS_UPDATE_DATE` DATETIME, `SYS_STATUS` INTEGER default 0 NOT NULL, - PRIMARY KEY (`SYS_UID`) + PRIMARY KEY (`SYS_UID`), + KEY `indexSystemCode`(`SYS_CODE`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Systems'; #----------------------------------------------------------------------------- -#-- USERS +#-- RBAC_USERS #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `RBAC_USERS`; @@ -93,7 +96,7 @@ CREATE TABLE `RBAC_USERS` PRIMARY KEY (`USR_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Users'; #----------------------------------------------------------------------------- -#-- USERS_ROLES +#-- RBAC_USERS_ROLES #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `RBAC_USERS_ROLES`; diff --git a/workflow/engine/bin/reindex_solr.php b/workflow/engine/bin/reindex_solr.php index 21043b757..fc31dedf2 100644 --- a/workflow/engine/bin/reindex_solr.php +++ b/workflow/engine/bin/reindex_solr.php @@ -293,7 +293,9 @@ if (! defined ('SYS_SYS')) { processWorkspace (); } catch (Exception $e) { - echo $e->getMessage (); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); eprintln ("Problem in workspace: " . $sObject . ' it was omitted.', 'red'); } eprintln (); diff --git a/workflow/engine/bin/tasks/cliAddons.php b/workflow/engine/bin/tasks/cliAddons.php index 37a44d61c..78b8aa81b 100644 --- a/workflow/engine/bin/tasks/cliAddons.php +++ b/workflow/engine/bin/tasks/cliAddons.php @@ -133,7 +133,9 @@ function change_hash($command, $opts) $workspace->close(); CLI::logging(pakeColor::colorize("Changed...", "ERROR") . "\n"); } catch (Exception $e) { - echo "> Error: ".CLI::error(G::getErrorMessage($e)) . "\n"; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( "> Error: " . CLI::error(G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token))) . "\n" ); } } } diff --git a/workflow/engine/bin/tasks/cliWorkspaces.php b/workflow/engine/bin/tasks/cliWorkspaces.php index a807927af..d83afb607 100755 --- a/workflow/engine/bin/tasks/cliWorkspaces.php +++ b/workflow/engine/bin/tasks/cliWorkspaces.php @@ -221,14 +221,6 @@ EOT CLI::taskArg('workspace', true, true); CLI::taskRun("run_database_verify_migration_consistency"); -CLI::taskName('migrate-counters'); -CLI::taskDescription(<<USR_UID is empty, the routed task may be a self-service type, actions by email does not work with self-service task types.', 0); } } catch(Exception $e) { - echo $e->getMessage().' Please contact to your system administrator.'; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); die; } G::LoadClass('pmFunctions'); diff --git a/workflow/engine/classes/class.case.php b/workflow/engine/classes/class.case.php index 116a76317..3acc34f46 100755 --- a/workflow/engine/classes/class.case.php +++ b/workflow/engine/classes/class.case.php @@ -1138,18 +1138,6 @@ class Cases $this->appSolr->deleteApplicationSearchIndex($sAppUid); } /*----------------------------------********---------------------------------*/ - $criteria = new Criteria(); - $criteria->addSelectColumn( ListInboxPeer::USR_UID ); - $criteria->add( ListInboxPeer::APP_UID, $sAppUid, Criteria::EQUAL ); - $dataset = ApplicationPeer::doSelectRS($criteria); - $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - while($dataset->next()) { - $aRow = $dataset->getRow(); - $users = new Users(); - $users->refreshTotal($aRow['USR_UID'], 'remove', 'draft'); - $users->refreshTotal($aRow['USR_UID'], 'remove', 'participated'); - } - $oCriteria = new Criteria('workflow'); $oCriteria->add(ListInboxPeer::APP_UID, $sAppUid); ListInboxPeer::doDelete($oCriteria); @@ -1168,6 +1156,9 @@ class Cases $oCriteria = new Criteria('workflow'); $oCriteria->add(ListCompletedPeer::APP_UID, $sAppUid); ListCompletedPeer::doDelete($oCriteria); + $oCriteria = new Criteria('workflow'); + $oCriteria->add(ListUnassignedPeer::APP_UID, $sAppUid); + ListUnassignedPeer::doDelete($oCriteria); /*----------------------------------********---------------------------------*/ return $result; } catch (exception $e) { @@ -1956,7 +1947,6 @@ class Cases public function CloseCurrentDelegation($sAppUid, $iDelIndex) { try { - $oApplication = ApplicationPeer::retrieveByPk($sAppUid); $c = new Criteria(); $c->add(AppDelegationPeer::APP_UID, $sAppUid); $c->add(AppDelegationPeer::DEL_INDEX, $iDelIndex); @@ -1975,22 +1965,6 @@ class Cases } throw (new PropelException('The row cannot be created!', new PropelException($msg))); } - $taskNext = TaskPeer::retrieveByPK($appDel->getTasUid()); - if($taskNext->getTasType() !== 'SUBPROCESS'){ - if($oApplication->getAppStatus() === 'DRAFT'){ - $sUserUid = $appDel->getUsrUid(); - /*----------------------------------********---------------------------------*/ - $users = new Users(); - $users->refreshTotal($sUserUid, "remove", "draft"); - /*----------------------------------********---------------------------------*/ - }else{ - $sUserUid = $appDel->getUsrUid(); - /*----------------------------------********---------------------------------*/ - $users = new Users(); - $users->refreshTotal($sUserUid, "remove", "inbox"); - /*----------------------------------********---------------------------------*/ - } - } } /*----------------------------------********---------------------------------*/ $inbox = new ListInbox(); @@ -4258,9 +4232,6 @@ class Cases throw new Exception(G::LoadTranslation('ID_THREAD_STATUS_DOES_NOT_EXIST_FOR_THE_APPLICATION.', [$appUID])); } - $users = new Users(); - $rowUsers = $users->load($userUID); - //Application $rowApplication['APP_STATUS'] = 'TO_DO'; $rowApplication['APP_UPDATE_DATE'] = date('Y-m-d H:i:s'); @@ -4308,7 +4279,6 @@ class Cases $resultSetListCanceled->next(); $rowListCanceled = $resultSetListCanceled->getRow(); ListCanceledPeer::doDelete($criteriaListCanceled); - $usrTotalCancelled = $rowUsers['USR_TOTAL_CANCELLED'] - 1; //ListInbox $rowListCanceled['DEL_PREVIOUS_USR_USERNAME'] = $rowListCanceled['DEL_CURRENT_USR_USERNAME']; @@ -4324,14 +4294,6 @@ class Cases unset($rowListCanceled['APP_CANCELED_DATE']); $listInbox = new ListInbox(); $listInbox->create($rowListCanceled); - $usrTotalInbox = $rowUsers['USR_TOTAL_INBOX'] + 1; - - //Users - $users->update([ - 'USR_UID' => $userUID, - 'USR_TOTAL_INBOX' => $usrTotalInbox, - 'USR_TOTAL_CANCELLED' => $usrTotalCancelled - ]); //ListParticipatedLast $criteriaListParticipatedLast = new Criteria("workflow"); @@ -5305,15 +5267,19 @@ class Cases foreach ($arrayTask as $aTask) { + //if the next is EOP dont send notification and continue with the next + if($aTask['TAS_UID'] === '-1'){ + continue; + } if (isset($aTask['DEL_INDEX'])) { $arrayData2 = $arrayData; $appDelegation = AppDelegationPeer::retrieveByPK($applicationUid, $aTask['DEL_INDEX']); if (!is_null($appDelegation)) { - $oTask = new Task(); - $aTask = $oTask->load($appDelegation->getTasUid()); - $arrayData2['TAS_TITLE'] = $aTask['TAS_TITLE']; + $oTaskUpd = new Task(); + $aTaskUpdate = $oTaskUpd->load($appDelegation->getTasUid()); + $arrayData2['TAS_TITLE'] = $aTaskUpdate['TAS_TITLE']; $arrayData2['DEL_TASK_DUE_DATE'] = $appDelegation->getDelTaskDueDate(); } } else { diff --git a/workflow/engine/classes/class.derivation.php b/workflow/engine/classes/class.derivation.php index 757447a08..b2dd81cee 100755 --- a/workflow/engine/classes/class.derivation.php +++ b/workflow/engine/classes/class.derivation.php @@ -752,58 +752,26 @@ class Derivation { /*----------------------------------********---------------------------------*/ try { - $user = new Users(); + if ($arrayNextDelegationData["TAS_UID"] != "-1") { + $regexpTaskTypeToExclude = "WEBENTRYEVENT|END-MESSAGE-EVENT|START-MESSAGE-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT|SCRIPT-TASK|INTERMEDIATE-CATCH-TIMER-EVENT"; - if ($arrayNextDelegationData["TAS_UID"] == "-2") { - $application = ApplicationPeer::retrieveByPK($arrayApplicationData["APP_UID"]); + if (!preg_match("/^(?:" . $regexpTaskTypeToExclude . ")$/", $taskNextDelegation->getTasType())) { + if (!empty($delIndexNew) && empty($aSp)) { + $appDelegation = AppDelegationPeer::retrieveByPK($arrayApplicationData["APP_UID"], $delIndexNew); + $arrayApplicationData2 = $appDelegation->toArray(BasePeer::TYPE_FIELDNAME); - if ($application->getAppStatus() == "DRAFT") { - //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); - } else { - //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); - } - } else { - if ($arrayNextDelegationData["TAS_UID"] != "-1") { - $regexpTaskTypeToExclude = "WEBENTRYEVENT|END-MESSAGE-EVENT|START-MESSAGE-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT|SCRIPT-TASK|INTERMEDIATE-CATCH-TIMER-EVENT"; + $arrayApplicationData2["APP_STATUS"] = $arrayCurrentDelegationData["APP_STATUS"]; - if (!preg_match("/^(?:" . $regexpTaskTypeToExclude . ")$/", $taskNextDelegation->getTasType())) { - if (!empty($delIndexNew) && empty($aSp)) { - $appDelegation = AppDelegationPeer::retrieveByPK($arrayApplicationData["APP_UID"], $delIndexNew); - $arrayApplicationData2 = $appDelegation->toArray(BasePeer::TYPE_FIELDNAME); + $taskCurrent = TaskPeer::retrieveByPK($arrayCurrentDelegationData["TAS_UID"]); - $arrayApplicationData2["APP_STATUS"] = $arrayCurrentDelegationData["APP_STATUS"]; - - $taskCurrent = TaskPeer::retrieveByPK($arrayCurrentDelegationData["TAS_UID"]); - - if ($taskCurrent->getTasType() == "INTERMEDIATE-CATCH-MESSAGE-EVENT") { - $removeList = false; - } - - $arrayApplicationData2["REMOVED_LIST"] = $removeList; - - $inbox = new ListInbox(); - $inbox->newRow($arrayApplicationData2, $arrayApplicationData["CURRENT_USER_UID"], false, array(), (($arrayNextDelegationData["TAS_ASSIGN_TYPE"] == "SELF_SERVICE")? true : false)); - } else { - if (empty($aSp)) { - $application = ApplicationPeer::retrieveByPK($arrayApplicationData["APP_UID"]); - - if ($application->getAppStatus() == "DRAFT") { - //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); - } else { - //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); - } - } + if ($taskCurrent->getTasType() == "INTERMEDIATE-CATCH-MESSAGE-EVENT") { + $removeList = false; } - } else { - if ($removeList) { - $application = ApplicationPeer::retrieveByPK($arrayApplicationData["APP_UID"]); - if ($application->getAppStatus() == "DRAFT") { - //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "draft"); - } else { - //$user->refreshTotal($arrayApplicationData["CURRENT_USER_UID"], "remove", "inbox"); - } - } + $arrayApplicationData2["REMOVED_LIST"] = $removeList; + + $inbox = new ListInbox(); + $inbox->newRow($arrayApplicationData2, $arrayApplicationData["CURRENT_USER_UID"], false, array(), (($arrayNextDelegationData["TAS_ASSIGN_TYPE"] == "SELF_SERVICE")? true : false)); } } } diff --git a/workflow/engine/classes/class.processes.php b/workflow/engine/classes/class.processes.php index cf015a66b..152f6e286 100755 --- a/workflow/engine/classes/class.processes.php +++ b/workflow/engine/classes/class.processes.php @@ -4126,7 +4126,11 @@ class Processes foreach ($arrayData as $value) { $record = $value; - $result = $scriptTask->create($processUid, $record); + try { + $result = $scriptTask->create($processUid, $record); + } catch (Exception $e) { + Bootstrap::registerMonolog('DataError', 400, $e->getMessage(), $record, SYS_SYS, 'processImporter.log'); + } } } catch (Exception $e) { throw $e; @@ -6114,4 +6118,3 @@ class ObjectCellection } } } - diff --git a/workflow/engine/classes/class.wsTools.php b/workflow/engine/classes/class.wsTools.php index f3e321a4c..df091196b 100755 --- a/workflow/engine/classes/class.wsTools.php +++ b/workflow/engine/classes/class.wsTools.php @@ -1997,20 +1997,6 @@ class workspaceTools $list->doDeleteAll(); } - //Update //User - $criteriaSet = new Criteria("workflow"); - $criteriaSet->add(UsersPeer::USR_TOTAL_INBOX, 0); - $criteriaSet->add(UsersPeer::USR_TOTAL_DRAFT, 0); - $criteriaSet->add(UsersPeer::USR_TOTAL_CANCELLED, 0); - $criteriaSet->add(UsersPeer::USR_TOTAL_PARTICIPATED, 0); - $criteriaSet->add(UsersPeer::USR_TOTAL_PAUSED, 0); - $criteriaSet->add(UsersPeer::USR_TOTAL_COMPLETED, 0); - $criteriaSet->add(UsersPeer::USR_TOTAL_UNASSIGNED, 0); - - $criteriaWhere = new Criteria("workflow"); - $criteriaWhere->add(UsersPeer::USR_UID, null, Criteria::ISNOTNULL); - - BasePeer::doUpdate($criteriaWhere, $criteriaSet, Propel::getConnection("workflow")); $this->regenerateListCompleted($lang); $this->regenerateListCanceled($lang); $this->regenerateListMyInbox(); // this list require no translation @@ -2019,7 +2005,6 @@ class workspaceTools $this->regenerateListParticipatedLast(); // this list require no translation $this->regenerateListPaused(); // this list require no translation $this->regenerateListUnassigned(); // this list require no translation - $this->migrateCounters(); } if (!$flagReinsert) { $this->listFirstExecution("insert"); @@ -2513,98 +2498,6 @@ class workspaceTools } /*----------------------------------********---------------------------------*/ - public function migrateCounters() - { - $this->initPropel(true); - // Updating the COMPLETE, DRAFT, INBOX, CANCELLED, PARTICIPATED counters - $query = ' - UPDATE '.$this->dbName.'.USERS UA - INNER JOIN - (SELECT - U.USR_UID, - IFNULL(APP_INBOX, 0) USR_TOTAL_INBOX, - IFNULL(APP_DRAFT, 0) USR_TOTAL_DRAFT, - IFNULL(NEW_USR_TOTAL_CANCELED, 0) USR_TOTAL_CANCELLED, - IFNULL(NEW_USR_TOTAL_PARTICIPATED_LAST, 0) USR_TOTAL_PARTICIPATED, - 0 USR_TOTAL_PAUSED, - IFNULL(NEW_USR_TOTAL_COMPLETED, 0) USR_TOTAL_COMPLETED, - 0 USR_TOTAL_UNASSIGNED - - FROM - '.$this->dbName.'.USERS U - LEFT JOIN - (SELECT - USR_UID, COUNT(APP_UID) NEW_USR_TOTAL_PARTICIPATED_LAST - FROM - '.$this->dbName.'.LIST_PARTICIPATED_LAST - GROUP BY USR_UID) LPL ON U.USR_UID = LPL.USR_UID - LEFT JOIN - (SELECT - USR_UID, COUNT(APP_UID) NEW_USR_TOTAL_COMPLETED - FROM - '.$this->dbName.'.LIST_COMPLETED - GROUP BY USR_UID) LCO ON U.USR_UID = LCO.USR_UID - LEFT JOIN - (SELECT - USR_UID, COUNT(DISTINCT APP_UID) APP_INBOX - FROM - '.$this->dbName.'.APP_CACHE_VIEW - WHERE - APP_STATUS = \'TO_DO\' - AND APP_THREAD_STATUS = \'OPEN\' - AND DEL_THREAD_STATUS = \'OPEN\' - AND DEL_FINISH_DATE IS NULL - GROUP BY USR_UID) APP_IN ON U.USR_UID = APP_IN.USR_UID - LEFT JOIN - (SELECT - USR_UID, COUNT(DISTINCT APP_UID) APP_DRAFT - FROM - '.$this->dbName.'.APP_CACHE_VIEW - WHERE - APP_STATUS = \'DRAFT\' - AND APP_THREAD_STATUS = \'OPEN\' - AND DEL_THREAD_STATUS = \'OPEN\' - GROUP BY USR_UID) APP_D ON U.USR_UID = APP_D.USR_UID - LEFT JOIN - (SELECT - USR_UID, COUNT(APP_UID) NEW_USR_TOTAL_CANCELED - FROM - '.$this->dbName.'.LIST_CANCELED - GROUP BY USR_UID) LCA ON U.USR_UID = LCA.USR_UID - ) UC - ON UA.USR_UID = UC.USR_UID - SET - UA.USR_TOTAL_INBOX = UC.USR_TOTAL_INBOX, - UA.USR_TOTAL_DRAFT = UC.USR_TOTAL_DRAFT, - UA.USR_TOTAL_CANCELLED = UC.USR_TOTAL_CANCELLED, - UA.USR_TOTAL_PARTICIPATED = UC.USR_TOTAL_PARTICIPATED, - UA.USR_TOTAL_COMPLETED = UC.USR_TOTAL_COMPLETED'; - $con = Propel::getConnection("workflow"); - $stmt = $con->createStatement(); - $stmt->executeQuery($query); - // Updating PAUSED and UNASSIGNED Cases - $aTypes = array( - 'paused', - 'selfservice' - ); - $users = new Users(); - $criteria = new Criteria(); - $criteria->addSelectColumn(UsersPeer::USR_UID); - $dataset = UsersPeer::doSelectRS($criteria); - $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - while($dataset->next()) { - $aRow = $dataset->getRow(); - $oAppCache = new AppCacheView(); - $aCount = $oAppCache->getAllCounters($aTypes, $aRow['USR_UID'], false); - $newData = array( - 'USR_UID' => $aRow['USR_UID'], - 'USR_TOTAL_PAUSED' => $aCount['paused'], - 'USR_TOTAL_UNASSIGNED' => $aCount['selfservice'] - ); - $users->update($newData); - } - } - /** * This function checks if List tables are going to migrated * diff --git a/workflow/engine/classes/model/AppEvent.php b/workflow/engine/classes/model/AppEvent.php index 2f5b421c6..f35100b7e 100755 --- a/workflow/engine/classes/model/AppEvent.php +++ b/workflow/engine/classes/model/AppEvent.php @@ -322,7 +322,10 @@ class AppEvent extends BaseAppEvent return $c; } catch (Exception $oError) { $log[] = ' Error execute event : ' . $oError->getMessage(); - die( $oError->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oError, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; return $oError->getMessage(); } } diff --git a/workflow/engine/classes/model/ListCanceled.php b/workflow/engine/classes/model/ListCanceled.php index a581c1c1c..9fd2ef77c 100644 --- a/workflow/engine/classes/model/ListCanceled.php +++ b/workflow/engine/classes/model/ListCanceled.php @@ -97,9 +97,6 @@ class ListCanceled extends BaseListCanceled { $oListInbox = new ListInbox(); $oListInbox->removeAll($data['APP_UID']); - $users = new Users(); - $users->refreshTotal($data['USR_UID'], 'add', 'canceled'); - //Update - WHERE $criteriaWhere = new Criteria("workflow"); $criteriaWhere->add(ListParticipatedLastPeer::APP_UID, $data["APP_UID"], Criteria::EQUAL); @@ -306,5 +303,18 @@ class ListCanceled extends BaseListCanceled { return $data; } + + /** + * Returns the number of cases of a user + * @param $usrUid + * @return int + */ + public function getCountList($usrUid) + { + $criteria = new Criteria(); + $criteria->add(ListCanceledPeer::USR_UID, $usrUid, Criteria::EQUAL); + $total = ListCanceledPeer::doCount($criteria); + return (int)$total; + } } // ListCanceled diff --git a/workflow/engine/classes/model/ListCompleted.php b/workflow/engine/classes/model/ListCompleted.php index 4cf8c2afc..162fd2975 100644 --- a/workflow/engine/classes/model/ListCompleted.php +++ b/workflow/engine/classes/model/ListCompleted.php @@ -97,34 +97,6 @@ class ListCompleted extends BaseListCompleted $criteriaSet->add(ListParticipatedLastPeer::APP_STATUS, 'COMPLETED'); BasePeer::doUpdate($criteriaWhere, $criteriaSet, Propel::getConnection("workflow")); - $users = new Users(); - if($data['USR_UID'] != ''){ - $users->refreshTotal($data['USR_UID'], 'add', 'completed'); - } - if ($data['DEL_PREVIOUS'] != 0) { - $criteria = new Criteria(); - $criteria->addSelectColumn(TaskPeer::TAS_TYPE); - $criteria->add( TaskPeer::TAS_UID, $data['TAS_UID'], Criteria::EQUAL ); - $dataset = TaskPeer::doSelectRS($criteria); - $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $dataset->next(); - $aRow = $dataset->getRow(); - if ($aRow['TAS_TYPE'] != 'SUBPROCESS') { - //$users->refreshTotal($data['USR_UID'], 'remove', 'inbox'); - } - } else { - $criteria = new Criteria(); - $criteria->addSelectColumn(SubApplicationPeer::APP_UID); - $criteria->add( SubApplicationPeer::APP_UID, $data['APP_UID'], Criteria::EQUAL ); - $dataset = SubApplicationPeer::doSelectRS($criteria); - $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - if ($dataset->next()) { - //$users->refreshTotal($data['USR_UID'], 'remove', 'inbox'); - } else { - //$users->refreshTotal($data['USR_UID'], 'remove', 'draft'); - } - } - $con = Propel::getConnection( ListCompletedPeer::DATABASE_NAME ); try { $this->fromArray( $data, BasePeer::TYPE_FIELDNAME ); @@ -320,5 +292,18 @@ class ListCompleted extends BaseListCompleted return $data; } + + /** + * Returns the number of cases of a user + * @param $usrUid + * @return int + */ + public function getCountList($usrUid) + { + $criteria = new Criteria(); + $criteria->add(ListCompletedPeer::USR_UID, $usrUid, Criteria::EQUAL); + $total = ListCompletedPeer::doCount($criteria); + return (int)$total; + } } // ListCompleted diff --git a/workflow/engine/classes/model/ListInbox.php b/workflow/engine/classes/model/ListInbox.php index f91f23c94..34bfddd44 100644 --- a/workflow/engine/classes/model/ListInbox.php +++ b/workflow/engine/classes/model/ListInbox.php @@ -63,8 +63,6 @@ class ListInbox extends BaseListInbox $oCriteria->add(ListParticipatedLastPeer::APP_UID, $data['APP_UID']); $oCriteria->add(ListParticipatedLastPeer::USR_UID, $data['USR_UID']); ListParticipatedLastPeer::doDelete($oCriteria); - $users = new Users(); - $users->refreshTotal($data['USR_UID'], 'removed', 'participated'); } $listParticipatedLast = new ListParticipatedLast(); @@ -110,17 +108,12 @@ class ListInbox extends BaseListInbox $data['APP_TITLE'] = G::replaceDataField($data['APP_TITLE'], $aData['APP_DATA']); } if ($isSelfService) { - $users = new Users(); - $users->refreshTotal($data['USR_UID'], 'add', 'inbox'); - $listParticipatedLast = new ListParticipatedLast(); $listParticipatedLast->remove($data['APP_UID'], $data['USR_UID'], $data['DEL_INDEX']); - //Update //Update - SET $criteriaSet = new Criteria("workflow"); $criteriaSet->add(ListParticipatedLastPeer::USR_UID, $data["USR_UID"]); - //Update - WHERE $criteriaWhere = new Criteria("workflow"); $criteriaWhere->add(ListParticipatedLastPeer::APP_UID, $data["APP_UID"], Criteria::EQUAL); @@ -132,8 +125,6 @@ class ListInbox extends BaseListInbox //Update $listParticipatedLast = new ListParticipatedLast(); $listParticipatedLast->refresh($data); - $users = new Users(); - $users->refreshTotal($data['USR_UID'], 'add', 'participated'); } else { if (isset($data["APP_UID"]) && isset($data["USER_UID"]) && isset($data["DEL_INDEX"]) && isset($data["APP_TITLE"])) { //Update @@ -311,7 +302,6 @@ class ListInbox extends BaseListInbox $data['DEL_PREVIOUS_USR_LASTNAME'] = $aRow['USR_LASTNAME']; } - $users = new Users(); $criteria = new Criteria(); $criteria->addSelectColumn(SubApplicationPeer::DEL_INDEX_PARENT); $criteria->add( SubApplicationPeer::APP_PARENT, $data['APP_UID'], Criteria::EQUAL ); @@ -320,47 +310,11 @@ class ListInbox extends BaseListInbox if ($dataset->next()) { $aSub = $dataset->getRow(); if ($aSub['DEL_INDEX_PARENT'] == $data['DEL_PREVIOUS'] && !$isSelfService) { - $users->refreshTotal($data['USR_UID'], 'add', 'inbox'); self::create($data, $isSelfService); return 1; } } - if (!$isInitSubprocess) { - if ($data['APP_STATUS'] == 'DRAFT') { - $users->refreshTotal($data['USR_UID'], 'add', 'draft'); - } else { - $oRow = ApplicationPeer::retrieveByPK($data['APP_UID']); - $aFields = $oRow->toArray( BasePeer::TYPE_FIELDNAME ); - if ($removeList) { - if ($data['DEL_INDEX'] == 2 || $aFields['APP_STATUS'] == 'DRAFT') { - $criteria = new Criteria(); - $criteria->addSelectColumn(SubApplicationPeer::APP_UID); - $criteria->add( SubApplicationPeer::APP_UID, $data['APP_UID'], Criteria::EQUAL ); - $dataset = SubApplicationPeer::doSelectRS($criteria); - if ($dataset->next()) { - //$users->refreshTotal($delPreviusUsrUid, 'remove', 'inbox'); - } else { - //$users->refreshTotal($delPreviusUsrUid, 'remove', 'draft'); - } - } else { - //$users->refreshTotal($delPreviusUsrUid, 'remove', 'inbox'); - } - } - if (!$isSelfService) { - $users->refreshTotal($data['USR_UID'], 'add', 'inbox'); - } - } - } else { - if($data['USR_UID'] !=''){ - $users->refreshTotal($data['USR_UID'], 'add', 'inbox'); - } - if ($dataPreviusApplication['APP_STATUS'] == 'DRAFT') { - //$users->refreshTotal($dataPreviusApplication['CURRENT_USER_UID'], 'remove', 'draft'); - } else { - //$users->refreshTotal($dataPreviusApplication['CURRENT_USER_UID'], 'remove', 'inbox'); - } - } if ($data['USR_UID'] != '') { $criteria = new Criteria(); $criteria->addSelectColumn(UsersPeer::USR_USERNAME); @@ -598,5 +552,24 @@ class ListInbox extends BaseListInbox return isset($aRow[$fieldName]) ? $aRow[$fieldName] : NULL; } + /** + * Returns the number of cases of a user + * @param $usrUid + * @param string $appStatus + * @return int + */ + public function getCountList($usrUid, $appStatus = 'DRAFT') + { + $criteria = new Criteria(); + $criteria->add(ListInboxPeer::USR_UID, $usrUid, Criteria::EQUAL); + if ($appStatus == 'TO_DO') { + $criteria->add(ListInboxPeer::APP_STATUS, 'TO_DO', Criteria::EQUAL); + } else { + $criteria->add(ListInboxPeer::APP_STATUS, 'DRAFT', Criteria::EQUAL); + } + $total = ListInboxPeer::doCount($criteria); + return (int)$total; + } + } diff --git a/workflow/engine/classes/model/ListParticipatedLast.php b/workflow/engine/classes/model/ListParticipatedLast.php index 067b9c421..4fa3cdc22 100644 --- a/workflow/engine/classes/model/ListParticipatedLast.php +++ b/workflow/engine/classes/model/ListParticipatedLast.php @@ -50,9 +50,6 @@ class ListParticipatedLast extends BaseListParticipatedLast $data['DEL_CURRENT_USR_FIRSTNAME'] = $aRow['USR_FIRSTNAME']; $data['DEL_CURRENT_USR_LASTNAME'] = $aRow['USR_LASTNAME']; $data['DEL_CURRENT_TAS_TITLE'] = $data['APP_TAS_TITLE']; - - $users = new Users(); - $users->refreshTotal($data['USR_UID'], 'add', 'participated'); } } else { $getData['USR_UID'] = $data['USR_UID_CURRENT']; @@ -170,17 +167,13 @@ class ListParticipatedLast extends BaseListParticipatedLast public function remove ($app_uid, $usr_uid, $del_index) { try { - $flagDelete = false; - if (!is_null(ListParticipatedLastPeer::retrieveByPK($app_uid, $usr_uid, $del_index))) { $criteria = new Criteria("workflow"); $criteria->add(ListParticipatedLastPeer::APP_UID, $app_uid); $criteria->add(ListParticipatedLastPeer::USR_UID, $usr_uid); $criteria->add(ListParticipatedLastPeer::DEL_INDEX, $del_index); - $result = ListParticipatedLastPeer::doDelete($criteria); - $flagDelete = true; } else { $criteria = new Criteria("workflow"); $criteria->add(ListParticipatedLastPeer::APP_UID, $app_uid); @@ -190,14 +183,8 @@ class ListParticipatedLast extends BaseListParticipatedLast if ($rsCriteria->next()) { $criteria2 = clone $criteria; $result = ListParticipatedLastPeer::doDelete($criteria2); - $flagDelete = true; } } - - if ($flagDelete) { - $user = new Users(); - $user->refreshTotal($usr_uid, "removed", "participated"); - } } catch (Exception $e) { throw $e; } @@ -405,5 +392,18 @@ class ListParticipatedLast extends BaseListParticipatedLast } BasePeer::doUpdate($criteriaWhere, $criteriaSet, $con); } + + /** + * Returns the number of cases of a user + * @param $usrUid + * @return int + */ + public function getCountList($usrUid) + { + $criteria = new Criteria(); + $criteria->add(ListParticipatedLastPeer::USR_UID, $usrUid, Criteria::EQUAL); + $total = ListParticipatedLastPeer::doCount($criteria); + return (int)$total; + } } diff --git a/workflow/engine/classes/model/ListPaused.php b/workflow/engine/classes/model/ListPaused.php index d259d48e1..8ae47a8a9 100644 --- a/workflow/engine/classes/model/ListPaused.php +++ b/workflow/engine/classes/model/ListPaused.php @@ -112,9 +112,6 @@ class ListPaused extends BaseListPaused { $oListInbox = new ListInbox(); $oListInbox->remove($data['APP_UID'], $data['DEL_INDEX']); - $users = new Users(); - $users->refreshTotal($data['USR_UID'], 'add', 'paused'); - $con = Propel::getConnection( ListPausedPeer::DATABASE_NAME ); try { $this->fromArray( $data, BasePeer::TYPE_FIELDNAME ); @@ -171,9 +168,6 @@ class ListPaused extends BaseListPaused { */ public function remove ($app_uid, $del_index, $data_inbox) { - $users = new Users(); - $users->refreshTotal($data_inbox['USR_UID'], 'removed', 'paused'); - $oRow = ApplicationPeer::retrieveByPK($app_uid); $aFields = $oRow->toArray( BasePeer::TYPE_FIELDNAME ); $data_inbox['APP_STATUS'] = $aFields['APP_STATUS']; @@ -328,5 +322,18 @@ class ListPaused extends BaseListPaused { return $data; } + + /** + * Returns the number of cases of a user + * @param $usrUid + * @return int + */ + public function getCountList($usrUid) + { + $criteria = new Criteria(); + $criteria->add(ListPausedPeer::USR_UID, $usrUid, Criteria::EQUAL); + $total = ListPausedPeer::doCount($criteria); + return (int)$total; + } } // ListPaused diff --git a/workflow/engine/classes/model/ListUnassigned.php b/workflow/engine/classes/model/ListUnassigned.php index 2a5f1a06e..912baa31c 100644 --- a/workflow/engine/classes/model/ListUnassigned.php +++ b/workflow/engine/classes/model/ListUnassigned.php @@ -460,5 +460,45 @@ class ListUnassigned extends BaseListUnassigned return $tasks; } + + /** + * Returns the number of cases of a user + * @param $userUid + * @return int + */ + public function getCountList($userUid) + { + $criteria = new Criteria('workflow'); + $tasks = $this->getSelfServiceTasks($userUid); + $arrayAppAssignSelfServiceValueData = $this->getSelfServiceCasesByEvaluate($userUid); + + if (!empty($arrayAppAssignSelfServiceValueData)) { + //Self Service Value Based Assignment + $criterionAux = null; + + foreach ($arrayAppAssignSelfServiceValueData as $value) { + if (is_null($criterionAux)) { + $criterionAux = $criteria->getNewCriterion(ListUnassignedPeer::APP_UID, $value["APP_UID"], Criteria::EQUAL)->addAnd( + $criteria->getNewCriterion(ListUnassignedPeer::DEL_INDEX, $value["DEL_INDEX"], Criteria::EQUAL))->addAnd( + $criteria->getNewCriterion(ListUnassignedPeer::TAS_UID, $value["TAS_UID"], Criteria::EQUAL)); + } else { + $criterionAux = $criteria->getNewCriterion(ListUnassignedPeer::APP_UID, $value["APP_UID"], Criteria::EQUAL)->addAnd( + $criteria->getNewCriterion(ListUnassignedPeer::DEL_INDEX, $value["DEL_INDEX"], Criteria::EQUAL))->addAnd( + $criteria->getNewCriterion(ListUnassignedPeer::TAS_UID, $value["TAS_UID"], Criteria::EQUAL))->addOr( + $criterionAux + ); + } + } + + $criteria->add( + $criterionAux->addOr($criteria->getNewCriterion(ListUnassignedPeer::TAS_UID, $tasks, Criteria::IN)) + ); + } else { + //Self Service + $criteria->add(ListUnassignedPeer::TAS_UID, $tasks, Criteria::IN); + } + $total = ListUnassignedPeer::doCount($criteria); + return (int)$total; + } } diff --git a/workflow/engine/classes/model/Translation.php b/workflow/engine/classes/model/Translation.php index 970db5ba4..3a3dc25e0 100755 --- a/workflow/engine/classes/model/Translation.php +++ b/workflow/engine/classes/model/Translation.php @@ -192,7 +192,9 @@ class Translation extends BaseTranslation $res['rowsJS'] = count( $translationJS ); return $res; } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } } @@ -239,7 +241,9 @@ class Translation extends BaseTranslation $res['rowsMafeJS'] = count( $translation ); return $res; } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } } @@ -362,7 +366,9 @@ class Translation extends BaseTranslation $res['rowsJS'] = count( $translationJS ); return $res; } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } } diff --git a/workflow/engine/classes/model/Users.php b/workflow/engine/classes/model/Users.php index 4dcfa7592..1be2327cc 100755 --- a/workflow/engine/classes/model/Users.php +++ b/workflow/engine/classes/model/Users.php @@ -445,62 +445,17 @@ class Users extends BaseUsers return $aFields; } - public function refreshTotal ($userId, $type = 'add', $list = "inbox", $total = 1) + /** + * @Deprecated + * @param $userId + * @param string $type + * @param string $list + * @param int $total + * @throws Exception + */ + public function refreshTotal($userId, $type = 'add', $list = "inbox", $total = 1) { - if ($userId == "") { - return; - } - - $nameList = self::getNameTotal($list); - $criteria = new Criteria(); - $criteria->addSelectColumn( $nameList ); - $criteria->add( UsersPeer::USR_UID, $userId, Criteria::EQUAL ); - $dataset = ApplicationPeer::doSelectRS($criteria); - $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $dataset->next(); - $aRow = $dataset->getRow(); - - $num = $aRow[$nameList]; - if ($type == 'add') { - $num++; - } else { - $num--; - } - - $data = array( - 'USR_UID' => $userId, - $nameList => $num - ); - self::update($data); - } - - public function getNameTotal($list = "inbox") - { - switch ($list) { - case 'draft': - $return = 'USR_TOTAL_DRAFT'; - break; - case 'canceled': - $return = 'USR_TOTAL_CANCELLED'; - break; - case 'participated': - $return = 'USR_TOTAL_PARTICIPATED'; - break; - case 'paused': - $return = 'USR_TOTAL_PAUSED'; - break; - case 'completed': - $return = 'USR_TOTAL_COMPLETED'; - break; - case 'unassigned': - $return = 'USR_TOTAL_UNASSIGNED'; - break; - case 'inbox': - default: - $return = 'USR_TOTAL_INBOX'; - break; - } - return $return; + throw new Exception("This method (refreshTotal) is no longer in use. Please remove reference."); } public function userLanguaje ($usrUid = "") diff --git a/workflow/engine/classes/model/map/UsersMapBuilder.php b/workflow/engine/classes/model/map/UsersMapBuilder.php index 691d382bd..5a29f64c2 100755 --- a/workflow/engine/classes/model/map/UsersMapBuilder.php +++ b/workflow/engine/classes/model/map/UsersMapBuilder.php @@ -117,20 +117,6 @@ class UsersMapBuilder $tMap->addColumn('USR_UX', 'UsrUx', 'string', CreoleTypes::VARCHAR, false, 128); - $tMap->addColumn('USR_TOTAL_INBOX', 'UsrTotalInbox', 'int', CreoleTypes::INTEGER, false, null); - - $tMap->addColumn('USR_TOTAL_DRAFT', 'UsrTotalDraft', 'int', CreoleTypes::INTEGER, false, null); - - $tMap->addColumn('USR_TOTAL_CANCELLED', 'UsrTotalCancelled', 'int', CreoleTypes::INTEGER, false, null); - - $tMap->addColumn('USR_TOTAL_PARTICIPATED', 'UsrTotalParticipated', 'int', CreoleTypes::INTEGER, false, null); - - $tMap->addColumn('USR_TOTAL_PAUSED', 'UsrTotalPaused', 'int', CreoleTypes::INTEGER, false, null); - - $tMap->addColumn('USR_TOTAL_COMPLETED', 'UsrTotalCompleted', 'int', CreoleTypes::INTEGER, false, null); - - $tMap->addColumn('USR_TOTAL_UNASSIGNED', 'UsrTotalUnassigned', 'int', CreoleTypes::INTEGER, false, null); - $tMap->addColumn('USR_COST_BY_HOUR', 'UsrCostByHour', 'double', CreoleTypes::DECIMAL, false, 7,2); $tMap->addColumn('USR_UNIT_COST', 'UsrUnitCost', 'string', CreoleTypes::VARCHAR, false, 50); diff --git a/workflow/engine/classes/model/om/BaseProcess.php b/workflow/engine/classes/model/om/BaseProcess.php index 42e8131b9..00dfdd619 100755 --- a/workflow/engine/classes/model/om/BaseProcess.php +++ b/workflow/engine/classes/model/om/BaseProcess.php @@ -259,7 +259,7 @@ abstract class BaseProcess extends BaseObject implements Persistent * The value for the pro_action_done field. * @var string */ - protected $pro_action_done = ''; + protected $pro_action_done; /** * Flag to prevent endless save loop, if this object is referenced @@ -1599,7 +1599,7 @@ abstract class BaseProcess extends BaseObject implements Persistent $v = (string) $v; } - if ($this->pro_action_done !== $v || $v === '') { + if ($this->pro_action_done !== $v) { $this->pro_action_done = $v; $this->modifiedColumns[] = ProcessPeer::PRO_ACTION_DONE; } diff --git a/workflow/engine/classes/model/om/BaseUsers.php b/workflow/engine/classes/model/om/BaseUsers.php index 3ea00affe..cccf314de 100755 --- a/workflow/engine/classes/model/om/BaseUsers.php +++ b/workflow/engine/classes/model/om/BaseUsers.php @@ -183,48 +183,6 @@ abstract class BaseUsers extends BaseObject implements Persistent */ protected $usr_ux = 'NORMAL'; - /** - * The value for the usr_total_inbox field. - * @var int - */ - protected $usr_total_inbox = 0; - - /** - * The value for the usr_total_draft field. - * @var int - */ - protected $usr_total_draft = 0; - - /** - * The value for the usr_total_cancelled field. - * @var int - */ - protected $usr_total_cancelled = 0; - - /** - * The value for the usr_total_participated field. - * @var int - */ - protected $usr_total_participated = 0; - - /** - * The value for the usr_total_paused field. - * @var int - */ - protected $usr_total_paused = 0; - - /** - * The value for the usr_total_completed field. - * @var int - */ - protected $usr_total_completed = 0; - - /** - * The value for the usr_total_unassigned field. - * @var int - */ - protected $usr_total_unassigned = 0; - /** * The value for the usr_cost_by_hour field. * @var double @@ -645,83 +603,6 @@ abstract class BaseUsers extends BaseObject implements Persistent return $this->usr_ux; } - /** - * Get the [usr_total_inbox] column value. - * - * @return int - */ - public function getUsrTotalInbox() - { - - return $this->usr_total_inbox; - } - - /** - * Get the [usr_total_draft] column value. - * - * @return int - */ - public function getUsrTotalDraft() - { - - return $this->usr_total_draft; - } - - /** - * Get the [usr_total_cancelled] column value. - * - * @return int - */ - public function getUsrTotalCancelled() - { - - return $this->usr_total_cancelled; - } - - /** - * Get the [usr_total_participated] column value. - * - * @return int - */ - public function getUsrTotalParticipated() - { - - return $this->usr_total_participated; - } - - /** - * Get the [usr_total_paused] column value. - * - * @return int - */ - public function getUsrTotalPaused() - { - - return $this->usr_total_paused; - } - - /** - * Get the [usr_total_completed] column value. - * - * @return int - */ - public function getUsrTotalCompleted() - { - - return $this->usr_total_completed; - } - - /** - * Get the [usr_total_unassigned] column value. - * - * @return int - */ - public function getUsrTotalUnassigned() - { - - return $this->usr_total_unassigned; - } - /** * Get the [usr_cost_by_hour] column value. * @@ -1388,160 +1269,6 @@ abstract class BaseUsers extends BaseObject implements Persistent } // setUsrUx() - /** - * Set the value of [usr_total_inbox] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalInbox($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_inbox !== $v || $v === 0) { - $this->usr_total_inbox = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_INBOX; - } - - } // setUsrTotalInbox() - - /** - * Set the value of [usr_total_draft] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalDraft($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_draft !== $v || $v === 0) { - $this->usr_total_draft = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_DRAFT; - } - - } // setUsrTotalDraft() - - /** - * Set the value of [usr_total_cancelled] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalCancelled($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_cancelled !== $v || $v === 0) { - $this->usr_total_cancelled = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_CANCELLED; - } - - } // setUsrTotalCancelled() - - /** - * Set the value of [usr_total_participated] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalParticipated($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_participated !== $v || $v === 0) { - $this->usr_total_participated = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_PARTICIPATED; - } - - } // setUsrTotalParticipated() - - /** - * Set the value of [usr_total_paused] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalPaused($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_paused !== $v || $v === 0) { - $this->usr_total_paused = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_PAUSED; - } - - } // setUsrTotalPaused() - - /** - * Set the value of [usr_total_completed] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalCompleted($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_completed !== $v || $v === 0) { - $this->usr_total_completed = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_COMPLETED; - } - - } // setUsrTotalCompleted() - - /** - * Set the value of [usr_total_unassigned] column. - * - * @param int $v new value - * @return void - */ - public function setUsrTotalUnassigned($v) - { - - // Since the native PHP type for this column is integer, - // we will cast the input value to an int (if it is not). - if ($v !== null && !is_int($v) && is_numeric($v)) { - $v = (int) $v; - } - - if ($this->usr_total_unassigned !== $v || $v === 0) { - $this->usr_total_unassigned = $v; - $this->modifiedColumns[] = UsersPeer::USR_TOTAL_UNASSIGNED; - } - - } // setUsrTotalUnassigned() - /** * Set the value of [usr_cost_by_hour] column. * @@ -1737,38 +1464,24 @@ abstract class BaseUsers extends BaseObject implements Persistent $this->usr_ux = $rs->getString($startcol + 25); - $this->usr_total_inbox = $rs->getInt($startcol + 26); + $this->usr_cost_by_hour = $rs->getFloat($startcol + 26); - $this->usr_total_draft = $rs->getInt($startcol + 27); + $this->usr_unit_cost = $rs->getString($startcol + 27); - $this->usr_total_cancelled = $rs->getInt($startcol + 28); + $this->usr_pmdrive_folder_uid = $rs->getString($startcol + 28); - $this->usr_total_participated = $rs->getInt($startcol + 29); + $this->usr_bookmark_start_cases = $rs->getString($startcol + 29); - $this->usr_total_paused = $rs->getInt($startcol + 30); + $this->usr_time_zone = $rs->getString($startcol + 30); - $this->usr_total_completed = $rs->getInt($startcol + 31); - - $this->usr_total_unassigned = $rs->getInt($startcol + 32); - - $this->usr_cost_by_hour = $rs->getFloat($startcol + 33); - - $this->usr_unit_cost = $rs->getString($startcol + 34); - - $this->usr_pmdrive_folder_uid = $rs->getString($startcol + 35); - - $this->usr_bookmark_start_cases = $rs->getString($startcol + 36); - - $this->usr_time_zone = $rs->getString($startcol + 37); - - $this->usr_default_lang = $rs->getString($startcol + 38); + $this->usr_default_lang = $rs->getString($startcol + 31); $this->resetModified(); $this->setNew(false); // FIXME - using NUM_COLUMNS may be clearer. - return $startcol + 39; // 39 = UsersPeer::NUM_COLUMNS - UsersPeer::NUM_LAZY_LOAD_COLUMNS). + return $startcol + 32; // 32 = UsersPeer::NUM_COLUMNS - UsersPeer::NUM_LAZY_LOAD_COLUMNS). } catch (Exception $e) { throw new PropelException("Error populating Users object", $e); @@ -2051,42 +1764,21 @@ abstract class BaseUsers extends BaseObject implements Persistent return $this->getUsrUx(); break; case 26: - return $this->getUsrTotalInbox(); - break; - case 27: - return $this->getUsrTotalDraft(); - break; - case 28: - return $this->getUsrTotalCancelled(); - break; - case 29: - return $this->getUsrTotalParticipated(); - break; - case 30: - return $this->getUsrTotalPaused(); - break; - case 31: - return $this->getUsrTotalCompleted(); - break; - case 32: - return $this->getUsrTotalUnassigned(); - break; - case 33: return $this->getUsrCostByHour(); break; - case 34: + case 27: return $this->getUsrUnitCost(); break; - case 35: + case 28: return $this->getUsrPmdriveFolderUid(); break; - case 36: + case 29: return $this->getUsrBookmarkStartCases(); break; - case 37: + case 30: return $this->getUsrTimeZone(); break; - case 38: + case 31: return $this->getUsrDefaultLang(); break; default: @@ -2135,19 +1827,12 @@ abstract class BaseUsers extends BaseObject implements Persistent $keys[23] => $this->getUsrReportsTo(), $keys[24] => $this->getUsrReplacedBy(), $keys[25] => $this->getUsrUx(), - $keys[26] => $this->getUsrTotalInbox(), - $keys[27] => $this->getUsrTotalDraft(), - $keys[28] => $this->getUsrTotalCancelled(), - $keys[29] => $this->getUsrTotalParticipated(), - $keys[30] => $this->getUsrTotalPaused(), - $keys[31] => $this->getUsrTotalCompleted(), - $keys[32] => $this->getUsrTotalUnassigned(), - $keys[33] => $this->getUsrCostByHour(), - $keys[34] => $this->getUsrUnitCost(), - $keys[35] => $this->getUsrPmdriveFolderUid(), - $keys[36] => $this->getUsrBookmarkStartCases(), - $keys[37] => $this->getUsrTimeZone(), - $keys[38] => $this->getUsrDefaultLang(), + $keys[26] => $this->getUsrCostByHour(), + $keys[27] => $this->getUsrUnitCost(), + $keys[28] => $this->getUsrPmdriveFolderUid(), + $keys[29] => $this->getUsrBookmarkStartCases(), + $keys[30] => $this->getUsrTimeZone(), + $keys[31] => $this->getUsrDefaultLang(), ); return $result; } @@ -2258,42 +1943,21 @@ abstract class BaseUsers extends BaseObject implements Persistent $this->setUsrUx($value); break; case 26: - $this->setUsrTotalInbox($value); - break; - case 27: - $this->setUsrTotalDraft($value); - break; - case 28: - $this->setUsrTotalCancelled($value); - break; - case 29: - $this->setUsrTotalParticipated($value); - break; - case 30: - $this->setUsrTotalPaused($value); - break; - case 31: - $this->setUsrTotalCompleted($value); - break; - case 32: - $this->setUsrTotalUnassigned($value); - break; - case 33: $this->setUsrCostByHour($value); break; - case 34: + case 27: $this->setUsrUnitCost($value); break; - case 35: + case 28: $this->setUsrPmdriveFolderUid($value); break; - case 36: + case 29: $this->setUsrBookmarkStartCases($value); break; - case 37: + case 30: $this->setUsrTimeZone($value); break; - case 38: + case 31: $this->setUsrDefaultLang($value); break; } // switch() @@ -2424,55 +2088,27 @@ abstract class BaseUsers extends BaseObject implements Persistent } if (array_key_exists($keys[26], $arr)) { - $this->setUsrTotalInbox($arr[$keys[26]]); + $this->setUsrCostByHour($arr[$keys[26]]); } if (array_key_exists($keys[27], $arr)) { - $this->setUsrTotalDraft($arr[$keys[27]]); + $this->setUsrUnitCost($arr[$keys[27]]); } if (array_key_exists($keys[28], $arr)) { - $this->setUsrTotalCancelled($arr[$keys[28]]); + $this->setUsrPmdriveFolderUid($arr[$keys[28]]); } if (array_key_exists($keys[29], $arr)) { - $this->setUsrTotalParticipated($arr[$keys[29]]); + $this->setUsrBookmarkStartCases($arr[$keys[29]]); } if (array_key_exists($keys[30], $arr)) { - $this->setUsrTotalPaused($arr[$keys[30]]); + $this->setUsrTimeZone($arr[$keys[30]]); } if (array_key_exists($keys[31], $arr)) { - $this->setUsrTotalCompleted($arr[$keys[31]]); - } - - if (array_key_exists($keys[32], $arr)) { - $this->setUsrTotalUnassigned($arr[$keys[32]]); - } - - if (array_key_exists($keys[33], $arr)) { - $this->setUsrCostByHour($arr[$keys[33]]); - } - - if (array_key_exists($keys[34], $arr)) { - $this->setUsrUnitCost($arr[$keys[34]]); - } - - if (array_key_exists($keys[35], $arr)) { - $this->setUsrPmdriveFolderUid($arr[$keys[35]]); - } - - if (array_key_exists($keys[36], $arr)) { - $this->setUsrBookmarkStartCases($arr[$keys[36]]); - } - - if (array_key_exists($keys[37], $arr)) { - $this->setUsrTimeZone($arr[$keys[37]]); - } - - if (array_key_exists($keys[38], $arr)) { - $this->setUsrDefaultLang($arr[$keys[38]]); + $this->setUsrDefaultLang($arr[$keys[31]]); } } @@ -2590,34 +2226,6 @@ abstract class BaseUsers extends BaseObject implements Persistent $criteria->add(UsersPeer::USR_UX, $this->usr_ux); } - if ($this->isColumnModified(UsersPeer::USR_TOTAL_INBOX)) { - $criteria->add(UsersPeer::USR_TOTAL_INBOX, $this->usr_total_inbox); - } - - if ($this->isColumnModified(UsersPeer::USR_TOTAL_DRAFT)) { - $criteria->add(UsersPeer::USR_TOTAL_DRAFT, $this->usr_total_draft); - } - - if ($this->isColumnModified(UsersPeer::USR_TOTAL_CANCELLED)) { - $criteria->add(UsersPeer::USR_TOTAL_CANCELLED, $this->usr_total_cancelled); - } - - if ($this->isColumnModified(UsersPeer::USR_TOTAL_PARTICIPATED)) { - $criteria->add(UsersPeer::USR_TOTAL_PARTICIPATED, $this->usr_total_participated); - } - - if ($this->isColumnModified(UsersPeer::USR_TOTAL_PAUSED)) { - $criteria->add(UsersPeer::USR_TOTAL_PAUSED, $this->usr_total_paused); - } - - if ($this->isColumnModified(UsersPeer::USR_TOTAL_COMPLETED)) { - $criteria->add(UsersPeer::USR_TOTAL_COMPLETED, $this->usr_total_completed); - } - - if ($this->isColumnModified(UsersPeer::USR_TOTAL_UNASSIGNED)) { - $criteria->add(UsersPeer::USR_TOTAL_UNASSIGNED, $this->usr_total_unassigned); - } - if ($this->isColumnModified(UsersPeer::USR_COST_BY_HOUR)) { $criteria->add(UsersPeer::USR_COST_BY_HOUR, $this->usr_cost_by_hour); } @@ -2746,20 +2354,6 @@ abstract class BaseUsers extends BaseObject implements Persistent $copyObj->setUsrUx($this->usr_ux); - $copyObj->setUsrTotalInbox($this->usr_total_inbox); - - $copyObj->setUsrTotalDraft($this->usr_total_draft); - - $copyObj->setUsrTotalCancelled($this->usr_total_cancelled); - - $copyObj->setUsrTotalParticipated($this->usr_total_participated); - - $copyObj->setUsrTotalPaused($this->usr_total_paused); - - $copyObj->setUsrTotalCompleted($this->usr_total_completed); - - $copyObj->setUsrTotalUnassigned($this->usr_total_unassigned); - $copyObj->setUsrCostByHour($this->usr_cost_by_hour); $copyObj->setUsrUnitCost($this->usr_unit_cost); diff --git a/workflow/engine/classes/model/om/BaseUsersPeer.php b/workflow/engine/classes/model/om/BaseUsersPeer.php index e40f43517..5ba08b14c 100755 --- a/workflow/engine/classes/model/om/BaseUsersPeer.php +++ b/workflow/engine/classes/model/om/BaseUsersPeer.php @@ -25,7 +25,7 @@ abstract class BaseUsersPeer const CLASS_DEFAULT = 'classes.model.Users'; /** The total number of columns. */ - const NUM_COLUMNS = 39; + const NUM_COLUMNS = 32; /** The number of lazy-loaded columns. */ const NUM_LAZY_LOAD_COLUMNS = 0; @@ -109,27 +109,6 @@ abstract class BaseUsersPeer /** the column name for the USR_UX field */ const USR_UX = 'USERS.USR_UX'; - /** the column name for the USR_TOTAL_INBOX field */ - const USR_TOTAL_INBOX = 'USERS.USR_TOTAL_INBOX'; - - /** the column name for the USR_TOTAL_DRAFT field */ - const USR_TOTAL_DRAFT = 'USERS.USR_TOTAL_DRAFT'; - - /** the column name for the USR_TOTAL_CANCELLED field */ - const USR_TOTAL_CANCELLED = 'USERS.USR_TOTAL_CANCELLED'; - - /** the column name for the USR_TOTAL_PARTICIPATED field */ - const USR_TOTAL_PARTICIPATED = 'USERS.USR_TOTAL_PARTICIPATED'; - - /** the column name for the USR_TOTAL_PAUSED field */ - const USR_TOTAL_PAUSED = 'USERS.USR_TOTAL_PAUSED'; - - /** the column name for the USR_TOTAL_COMPLETED field */ - const USR_TOTAL_COMPLETED = 'USERS.USR_TOTAL_COMPLETED'; - - /** the column name for the USR_TOTAL_UNASSIGNED field */ - const USR_TOTAL_UNASSIGNED = 'USERS.USR_TOTAL_UNASSIGNED'; - /** the column name for the USR_COST_BY_HOUR field */ const USR_COST_BY_HOUR = 'USERS.USR_COST_BY_HOUR'; @@ -159,10 +138,10 @@ abstract class BaseUsersPeer * e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id' */ private static $fieldNames = array ( - BasePeer::TYPE_PHPNAME => array ('UsrUid', 'UsrUsername', 'UsrPassword', 'UsrFirstname', 'UsrLastname', 'UsrEmail', 'UsrDueDate', 'UsrCreateDate', 'UsrUpdateDate', 'UsrStatus', 'UsrCountry', 'UsrCity', 'UsrLocation', 'UsrAddress', 'UsrPhone', 'UsrFax', 'UsrCellular', 'UsrZipCode', 'DepUid', 'UsrPosition', 'UsrResume', 'UsrBirthday', 'UsrRole', 'UsrReportsTo', 'UsrReplacedBy', 'UsrUx', 'UsrTotalInbox', 'UsrTotalDraft', 'UsrTotalCancelled', 'UsrTotalParticipated', 'UsrTotalPaused', 'UsrTotalCompleted', 'UsrTotalUnassigned', 'UsrCostByHour', 'UsrUnitCost', 'UsrPmdriveFolderUid', 'UsrBookmarkStartCases', 'UsrTimeZone', 'UsrDefaultLang', ), - BasePeer::TYPE_COLNAME => array (UsersPeer::USR_UID, UsersPeer::USR_USERNAME, UsersPeer::USR_PASSWORD, UsersPeer::USR_FIRSTNAME, UsersPeer::USR_LASTNAME, UsersPeer::USR_EMAIL, UsersPeer::USR_DUE_DATE, UsersPeer::USR_CREATE_DATE, UsersPeer::USR_UPDATE_DATE, UsersPeer::USR_STATUS, UsersPeer::USR_COUNTRY, UsersPeer::USR_CITY, UsersPeer::USR_LOCATION, UsersPeer::USR_ADDRESS, UsersPeer::USR_PHONE, UsersPeer::USR_FAX, UsersPeer::USR_CELLULAR, UsersPeer::USR_ZIP_CODE, UsersPeer::DEP_UID, UsersPeer::USR_POSITION, UsersPeer::USR_RESUME, UsersPeer::USR_BIRTHDAY, UsersPeer::USR_ROLE, UsersPeer::USR_REPORTS_TO, UsersPeer::USR_REPLACED_BY, UsersPeer::USR_UX, UsersPeer::USR_TOTAL_INBOX, UsersPeer::USR_TOTAL_DRAFT, UsersPeer::USR_TOTAL_CANCELLED, UsersPeer::USR_TOTAL_PARTICIPATED, UsersPeer::USR_TOTAL_PAUSED, UsersPeer::USR_TOTAL_COMPLETED, UsersPeer::USR_TOTAL_UNASSIGNED, UsersPeer::USR_COST_BY_HOUR, UsersPeer::USR_UNIT_COST, UsersPeer::USR_PMDRIVE_FOLDER_UID, UsersPeer::USR_BOOKMARK_START_CASES, UsersPeer::USR_TIME_ZONE, UsersPeer::USR_DEFAULT_LANG, ), - BasePeer::TYPE_FIELDNAME => array ('USR_UID', 'USR_USERNAME', 'USR_PASSWORD', 'USR_FIRSTNAME', 'USR_LASTNAME', 'USR_EMAIL', 'USR_DUE_DATE', 'USR_CREATE_DATE', 'USR_UPDATE_DATE', 'USR_STATUS', 'USR_COUNTRY', 'USR_CITY', 'USR_LOCATION', 'USR_ADDRESS', 'USR_PHONE', 'USR_FAX', 'USR_CELLULAR', 'USR_ZIP_CODE', 'DEP_UID', 'USR_POSITION', 'USR_RESUME', 'USR_BIRTHDAY', 'USR_ROLE', 'USR_REPORTS_TO', 'USR_REPLACED_BY', 'USR_UX', 'USR_TOTAL_INBOX', 'USR_TOTAL_DRAFT', 'USR_TOTAL_CANCELLED', 'USR_TOTAL_PARTICIPATED', 'USR_TOTAL_PAUSED', 'USR_TOTAL_COMPLETED', 'USR_TOTAL_UNASSIGNED', 'USR_COST_BY_HOUR', 'USR_UNIT_COST', 'USR_PMDRIVE_FOLDER_UID', 'USR_BOOKMARK_START_CASES', 'USR_TIME_ZONE', 'USR_DEFAULT_LANG', ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, ) + BasePeer::TYPE_PHPNAME => array ('UsrUid', 'UsrUsername', 'UsrPassword', 'UsrFirstname', 'UsrLastname', 'UsrEmail', 'UsrDueDate', 'UsrCreateDate', 'UsrUpdateDate', 'UsrStatus', 'UsrCountry', 'UsrCity', 'UsrLocation', 'UsrAddress', 'UsrPhone', 'UsrFax', 'UsrCellular', 'UsrZipCode', 'DepUid', 'UsrPosition', 'UsrResume', 'UsrBirthday', 'UsrRole', 'UsrReportsTo', 'UsrReplacedBy', 'UsrUx', 'UsrCostByHour', 'UsrUnitCost', 'UsrPmdriveFolderUid', 'UsrBookmarkStartCases', 'UsrTimeZone', 'UsrDefaultLang', ), + BasePeer::TYPE_COLNAME => array (UsersPeer::USR_UID, UsersPeer::USR_USERNAME, UsersPeer::USR_PASSWORD, UsersPeer::USR_FIRSTNAME, UsersPeer::USR_LASTNAME, UsersPeer::USR_EMAIL, UsersPeer::USR_DUE_DATE, UsersPeer::USR_CREATE_DATE, UsersPeer::USR_UPDATE_DATE, UsersPeer::USR_STATUS, UsersPeer::USR_COUNTRY, UsersPeer::USR_CITY, UsersPeer::USR_LOCATION, UsersPeer::USR_ADDRESS, UsersPeer::USR_PHONE, UsersPeer::USR_FAX, UsersPeer::USR_CELLULAR, UsersPeer::USR_ZIP_CODE, UsersPeer::DEP_UID, UsersPeer::USR_POSITION, UsersPeer::USR_RESUME, UsersPeer::USR_BIRTHDAY, UsersPeer::USR_ROLE, UsersPeer::USR_REPORTS_TO, UsersPeer::USR_REPLACED_BY, UsersPeer::USR_UX, UsersPeer::USR_COST_BY_HOUR, UsersPeer::USR_UNIT_COST, UsersPeer::USR_PMDRIVE_FOLDER_UID, UsersPeer::USR_BOOKMARK_START_CASES, UsersPeer::USR_TIME_ZONE, UsersPeer::USR_DEFAULT_LANG, ), + BasePeer::TYPE_FIELDNAME => array ('USR_UID', 'USR_USERNAME', 'USR_PASSWORD', 'USR_FIRSTNAME', 'USR_LASTNAME', 'USR_EMAIL', 'USR_DUE_DATE', 'USR_CREATE_DATE', 'USR_UPDATE_DATE', 'USR_STATUS', 'USR_COUNTRY', 'USR_CITY', 'USR_LOCATION', 'USR_ADDRESS', 'USR_PHONE', 'USR_FAX', 'USR_CELLULAR', 'USR_ZIP_CODE', 'DEP_UID', 'USR_POSITION', 'USR_RESUME', 'USR_BIRTHDAY', 'USR_ROLE', 'USR_REPORTS_TO', 'USR_REPLACED_BY', 'USR_UX', 'USR_COST_BY_HOUR', 'USR_UNIT_COST', 'USR_PMDRIVE_FOLDER_UID', 'USR_BOOKMARK_START_CASES', 'USR_TIME_ZONE', 'USR_DEFAULT_LANG', ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, ) ); /** @@ -172,10 +151,10 @@ abstract class BaseUsersPeer * e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0 */ private static $fieldKeys = array ( - BasePeer::TYPE_PHPNAME => array ('UsrUid' => 0, 'UsrUsername' => 1, 'UsrPassword' => 2, 'UsrFirstname' => 3, 'UsrLastname' => 4, 'UsrEmail' => 5, 'UsrDueDate' => 6, 'UsrCreateDate' => 7, 'UsrUpdateDate' => 8, 'UsrStatus' => 9, 'UsrCountry' => 10, 'UsrCity' => 11, 'UsrLocation' => 12, 'UsrAddress' => 13, 'UsrPhone' => 14, 'UsrFax' => 15, 'UsrCellular' => 16, 'UsrZipCode' => 17, 'DepUid' => 18, 'UsrPosition' => 19, 'UsrResume' => 20, 'UsrBirthday' => 21, 'UsrRole' => 22, 'UsrReportsTo' => 23, 'UsrReplacedBy' => 24, 'UsrUx' => 25, 'UsrTotalInbox' => 26, 'UsrTotalDraft' => 27, 'UsrTotalCancelled' => 28, 'UsrTotalParticipated' => 29, 'UsrTotalPaused' => 30, 'UsrTotalCompleted' => 31, 'UsrTotalUnassigned' => 32, 'UsrCostByHour' => 33, 'UsrUnitCost' => 34, 'UsrPmdriveFolderUid' => 35, 'UsrBookmarkStartCases' => 36, 'UsrTimeZone' => 37, 'UsrDefaultLang' => 38, ), - BasePeer::TYPE_COLNAME => array (UsersPeer::USR_UID => 0, UsersPeer::USR_USERNAME => 1, UsersPeer::USR_PASSWORD => 2, UsersPeer::USR_FIRSTNAME => 3, UsersPeer::USR_LASTNAME => 4, UsersPeer::USR_EMAIL => 5, UsersPeer::USR_DUE_DATE => 6, UsersPeer::USR_CREATE_DATE => 7, UsersPeer::USR_UPDATE_DATE => 8, UsersPeer::USR_STATUS => 9, UsersPeer::USR_COUNTRY => 10, UsersPeer::USR_CITY => 11, UsersPeer::USR_LOCATION => 12, UsersPeer::USR_ADDRESS => 13, UsersPeer::USR_PHONE => 14, UsersPeer::USR_FAX => 15, UsersPeer::USR_CELLULAR => 16, UsersPeer::USR_ZIP_CODE => 17, UsersPeer::DEP_UID => 18, UsersPeer::USR_POSITION => 19, UsersPeer::USR_RESUME => 20, UsersPeer::USR_BIRTHDAY => 21, UsersPeer::USR_ROLE => 22, UsersPeer::USR_REPORTS_TO => 23, UsersPeer::USR_REPLACED_BY => 24, UsersPeer::USR_UX => 25, UsersPeer::USR_TOTAL_INBOX => 26, UsersPeer::USR_TOTAL_DRAFT => 27, UsersPeer::USR_TOTAL_CANCELLED => 28, UsersPeer::USR_TOTAL_PARTICIPATED => 29, UsersPeer::USR_TOTAL_PAUSED => 30, UsersPeer::USR_TOTAL_COMPLETED => 31, UsersPeer::USR_TOTAL_UNASSIGNED => 32, UsersPeer::USR_COST_BY_HOUR => 33, UsersPeer::USR_UNIT_COST => 34, UsersPeer::USR_PMDRIVE_FOLDER_UID => 35, UsersPeer::USR_BOOKMARK_START_CASES => 36, UsersPeer::USR_TIME_ZONE => 37, UsersPeer::USR_DEFAULT_LANG => 38, ), - BasePeer::TYPE_FIELDNAME => array ('USR_UID' => 0, 'USR_USERNAME' => 1, 'USR_PASSWORD' => 2, 'USR_FIRSTNAME' => 3, 'USR_LASTNAME' => 4, 'USR_EMAIL' => 5, 'USR_DUE_DATE' => 6, 'USR_CREATE_DATE' => 7, 'USR_UPDATE_DATE' => 8, 'USR_STATUS' => 9, 'USR_COUNTRY' => 10, 'USR_CITY' => 11, 'USR_LOCATION' => 12, 'USR_ADDRESS' => 13, 'USR_PHONE' => 14, 'USR_FAX' => 15, 'USR_CELLULAR' => 16, 'USR_ZIP_CODE' => 17, 'DEP_UID' => 18, 'USR_POSITION' => 19, 'USR_RESUME' => 20, 'USR_BIRTHDAY' => 21, 'USR_ROLE' => 22, 'USR_REPORTS_TO' => 23, 'USR_REPLACED_BY' => 24, 'USR_UX' => 25, 'USR_TOTAL_INBOX' => 26, 'USR_TOTAL_DRAFT' => 27, 'USR_TOTAL_CANCELLED' => 28, 'USR_TOTAL_PARTICIPATED' => 29, 'USR_TOTAL_PAUSED' => 30, 'USR_TOTAL_COMPLETED' => 31, 'USR_TOTAL_UNASSIGNED' => 32, 'USR_COST_BY_HOUR' => 33, 'USR_UNIT_COST' => 34, 'USR_PMDRIVE_FOLDER_UID' => 35, 'USR_BOOKMARK_START_CASES' => 36, 'USR_TIME_ZONE' => 37, 'USR_DEFAULT_LANG' => 38, ), - BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, ) + BasePeer::TYPE_PHPNAME => array ('UsrUid' => 0, 'UsrUsername' => 1, 'UsrPassword' => 2, 'UsrFirstname' => 3, 'UsrLastname' => 4, 'UsrEmail' => 5, 'UsrDueDate' => 6, 'UsrCreateDate' => 7, 'UsrUpdateDate' => 8, 'UsrStatus' => 9, 'UsrCountry' => 10, 'UsrCity' => 11, 'UsrLocation' => 12, 'UsrAddress' => 13, 'UsrPhone' => 14, 'UsrFax' => 15, 'UsrCellular' => 16, 'UsrZipCode' => 17, 'DepUid' => 18, 'UsrPosition' => 19, 'UsrResume' => 20, 'UsrBirthday' => 21, 'UsrRole' => 22, 'UsrReportsTo' => 23, 'UsrReplacedBy' => 24, 'UsrUx' => 25, 'UsrCostByHour' => 26, 'UsrUnitCost' => 27, 'UsrPmdriveFolderUid' => 28, 'UsrBookmarkStartCases' => 29, 'UsrTimeZone' => 30, 'UsrDefaultLang' => 31, ), + BasePeer::TYPE_COLNAME => array (UsersPeer::USR_UID => 0, UsersPeer::USR_USERNAME => 1, UsersPeer::USR_PASSWORD => 2, UsersPeer::USR_FIRSTNAME => 3, UsersPeer::USR_LASTNAME => 4, UsersPeer::USR_EMAIL => 5, UsersPeer::USR_DUE_DATE => 6, UsersPeer::USR_CREATE_DATE => 7, UsersPeer::USR_UPDATE_DATE => 8, UsersPeer::USR_STATUS => 9, UsersPeer::USR_COUNTRY => 10, UsersPeer::USR_CITY => 11, UsersPeer::USR_LOCATION => 12, UsersPeer::USR_ADDRESS => 13, UsersPeer::USR_PHONE => 14, UsersPeer::USR_FAX => 15, UsersPeer::USR_CELLULAR => 16, UsersPeer::USR_ZIP_CODE => 17, UsersPeer::DEP_UID => 18, UsersPeer::USR_POSITION => 19, UsersPeer::USR_RESUME => 20, UsersPeer::USR_BIRTHDAY => 21, UsersPeer::USR_ROLE => 22, UsersPeer::USR_REPORTS_TO => 23, UsersPeer::USR_REPLACED_BY => 24, UsersPeer::USR_UX => 25, UsersPeer::USR_COST_BY_HOUR => 26, UsersPeer::USR_UNIT_COST => 27, UsersPeer::USR_PMDRIVE_FOLDER_UID => 28, UsersPeer::USR_BOOKMARK_START_CASES => 29, UsersPeer::USR_TIME_ZONE => 30, UsersPeer::USR_DEFAULT_LANG => 31, ), + BasePeer::TYPE_FIELDNAME => array ('USR_UID' => 0, 'USR_USERNAME' => 1, 'USR_PASSWORD' => 2, 'USR_FIRSTNAME' => 3, 'USR_LASTNAME' => 4, 'USR_EMAIL' => 5, 'USR_DUE_DATE' => 6, 'USR_CREATE_DATE' => 7, 'USR_UPDATE_DATE' => 8, 'USR_STATUS' => 9, 'USR_COUNTRY' => 10, 'USR_CITY' => 11, 'USR_LOCATION' => 12, 'USR_ADDRESS' => 13, 'USR_PHONE' => 14, 'USR_FAX' => 15, 'USR_CELLULAR' => 16, 'USR_ZIP_CODE' => 17, 'DEP_UID' => 18, 'USR_POSITION' => 19, 'USR_RESUME' => 20, 'USR_BIRTHDAY' => 21, 'USR_ROLE' => 22, 'USR_REPORTS_TO' => 23, 'USR_REPLACED_BY' => 24, 'USR_UX' => 25, 'USR_COST_BY_HOUR' => 26, 'USR_UNIT_COST' => 27, 'USR_PMDRIVE_FOLDER_UID' => 28, 'USR_BOOKMARK_START_CASES' => 29, 'USR_TIME_ZONE' => 30, 'USR_DEFAULT_LANG' => 31, ), + BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, ) ); /** @@ -328,20 +307,6 @@ abstract class BaseUsersPeer $criteria->addSelectColumn(UsersPeer::USR_UX); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_INBOX); - - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_DRAFT); - - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_CANCELLED); - - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_PARTICIPATED); - - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_PAUSED); - - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_COMPLETED); - - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_UNASSIGNED); - $criteria->addSelectColumn(UsersPeer::USR_COST_BY_HOUR); $criteria->addSelectColumn(UsersPeer::USR_UNIT_COST); diff --git a/workflow/engine/config/schema.xml b/workflow/engine/config/schema.xml index 96e902bcc..d3bf953bb 100755 --- a/workflow/engine/config/schema.xml +++ b/workflow/engine/config/schema.xml @@ -913,7 +913,7 @@ - + @@ -1004,6 +1004,10 @@ + + + +
@@ -1536,13 +1540,6 @@ - - - - - - - @@ -2163,6 +2160,9 @@ + + +
@@ -2275,6 +2275,9 @@ + + +
@@ -2419,6 +2422,11 @@ + + + + +
@@ -4002,6 +4010,9 @@ + + +
@@ -4251,6 +4262,15 @@ + + + + + + + + +
@@ -4789,6 +4809,13 @@ + + + + + + +
diff --git a/workflow/engine/content/translations/english/processmaker.en.po b/workflow/engine/content/translations/english/processmaker.en.po index 5d8313952..fcc4cad72 100644 --- a/workflow/engine/content/translations/english/processmaker.en.po +++ b/workflow/engine/content/translations/english/processmaker.en.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: ProcessMaker (Branch 3.1)\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2016-07-11 20:25:46\n" +"PO-Revision-Date: 2016-07-29 18:36:34\n" "Last-Translator: \n" "Language-Team: Colosa Developers Team \n" "MIME-Version: 1.0\n" @@ -472,8 +472,8 @@ msgstr "Assign Screen" # TRANSLATION # LABEL/ID_ASSIGN_TASK #: LABEL/ID_ASSIGN_TASK -msgid "Assign Task" -msgstr "Assign Task" +msgid "Assign Task/Event" +msgstr "Assign Task/Event" # TRANSLATION # LABEL/ID_UPLOAD @@ -2602,8 +2602,8 @@ msgstr "Session" # TRANSLATION # LABEL/ID_NEXT_TASK #: LABEL/ID_NEXT_TASK -msgid "Next Task" -msgstr "Next Task" +msgid "Next Task/Event" +msgstr "Next Task/Event" # TRANSLATION # LABEL/ID_PERMISSIONS_FOR_THE_ROL @@ -17596,8 +17596,8 @@ msgstr "The process \"{0}\" has the following unwanted code (this code should be # TRANSLATION # LABEL/ID_LECA #: LABEL/ID_LECA -msgid "Your license has expired, please contact your administrator." -msgstr "Your license has expired, please contact your administrator." +msgid "Your license has expired. Please contact your administrator." +msgstr "Your license has expired. Please contact your administrator." # TRANSLATION # LABEL/ID_NLIC @@ -20752,7 +20752,7 @@ msgstr "There are no items." # TRANSLATION # LABEL/ID_MAFE_545106eebc5cfec4095c8903a3e5bea9 #: LABEL/ID_MAFE_545106eebc5cfec4095c8903a3e5bea9 -msgid "[LABEL/ID_MAFE_545106eebc5cfec4095c8903a3e5bea9] Next Task" +msgid "Next Task" msgstr "Next Task" # TRANSLATION @@ -27503,6 +27503,102 @@ msgstr "This is a Message of Error" msgid "Can't connect start event to subprocess" msgstr "Can't connect start event to subprocess" +# TRANSLATION +# LABEL/ID_EEPLUGIN_IMPORT_PLUGIN_NOT_IS_ENTERPRISE +#: LABEL/ID_EEPLUGIN_IMPORT_PLUGIN_NOT_IS_ENTERPRISE +msgid "The plugin \"{0}\" not is a Enterprise Edition Plugin" +msgstr "The plugin \"{0}\" not is a Enterprise Edition Plugin" + +# TRANSLATION +# LABEL/ID_PMPLUGIN_IMPORT_PLUGIN_IS_ENTERPRISE +#: LABEL/ID_PMPLUGIN_IMPORT_PLUGIN_IS_ENTERPRISE +msgid "The plugin \"{0}\" is a Enterprise Edition Plugin, please install the Enterprise Plugins Manager to use this plugin" +msgstr "The plugin \"{0}\" is a Enterprise Edition Plugin, please install the Enterprise Plugins Manager to use this plugin" + +# TRANSLATION +# LABEL/ID_USER_GROUP_NOT_CORRESPOND +#: LABEL/ID_USER_GROUP_NOT_CORRESPOND +msgid "This id: {0} not correspond to a {1}" +msgstr "This id: {0} not correspond to a {1}" + +# TRANSLATION +# LABEL/ID_PROCESS_CANNOT_BE_UPDATED_THERE_ARE_TASKS_WITH_ACTIVE_CASES +#: LABEL/ID_PROCESS_CANNOT_BE_UPDATED_THERE_ARE_TASKS_WITH_ACTIVE_CASES +msgid "The process cannot be updated because there are tasks with active cases which are not presented in the new definition of the process, please verify that there are not active cases in those tasks before trying to import the process again." +msgstr "The process cannot be updated because there are tasks with active cases which are not presented in the new definition of the process, please verify that there are not active cases in those tasks before trying to import the process again." + +# TRANSLATION +# LABEL/ID_MILLISECONDS +#: LABEL/ID_MILLISECONDS +msgid "Milliseconds" +msgstr "Milliseconds" + +# TRANSLATION +# LABEL/ID_FIELD_NOT_FOUND +#: LABEL/ID_FIELD_NOT_FOUND +msgid "Field not found" +msgstr "Field not found" + +# TRANSLATION +# LABEL/ID_OUTPUT_DOCUMENT_INVALID_EXTENSION +#: LABEL/ID_OUTPUT_DOCUMENT_INVALID_EXTENSION +msgid "Invalid extension" +msgstr "Invalid extension" + +# TRANSLATION +# LABEL/ID_OUTPUT_DOCUMENT_CONFIG_NOT_SUPPORT_EXTENSION +#: LABEL/ID_OUTPUT_DOCUMENT_CONFIG_NOT_SUPPORT_EXTENSION +msgid "The document in its configuration does not support this extension" +msgstr "The document in its configuration does not support this extension" + +# TRANSLATION +# LABEL/ID_NOT_EXISTS_FILE +#: LABEL/ID_NOT_EXISTS_FILE +msgid "File does not exists" +msgstr "File does not exists" + +# TRANSLATION +# LABEL/ID_EXCEPTION_LOG_INTERFAZ +#: LABEL/ID_EXCEPTION_LOG_INTERFAZ +msgid "An internal error occurred #{0}. Please contact your system administrator for more information." +msgstr "An internal error occurred #{0}. Please contact your system administrator for more information." + +# TRANSLATION +# LABEL/ID_CASE_OUTPUT_DOCUMENT_DOES_NOT_EXIST +#: LABEL/ID_CASE_OUTPUT_DOCUMENT_DOES_NOT_EXIST +msgid "This output document with {0}: {1} does not exist." +msgstr "This output document with {0}: {1} does not exist." + +# TRANSLATION +# LABEL/ID_MAFE_a9f2bfaa472c55e0975d15c0ba59d24d +#: LABEL/ID_MAFE_a9f2bfaa472c55e0975d15c0ba59d24d +msgid "Before Output Document" +msgstr "Before Output Document" + +# TRANSLATION +# LABEL/ID_MAFE_41e80c3ce414de15ab19d996f7072429 +#: LABEL/ID_MAFE_41e80c3ce414de15ab19d996f7072429 +msgid "fileupload" +msgstr "fileupload" + +# TRANSLATION +# LABEL/ID_MAFE_c72d7ee8a23bae4c80e8cc4521f89f7a +#: LABEL/ID_MAFE_c72d7ee8a23bae4c80e8cc4521f89f7a +msgid "Steps for task" +msgstr "Steps for task" + +# TRANSLATION +# LABEL/ID_MAFE_d0aac4ce1ac97df2b4c6e456bbe3a061 +#: LABEL/ID_MAFE_d0aac4ce1ac97df2b4c6e456bbe3a061 +msgid "Expand all" +msgstr "Expand all" + +# TRANSLATION +# LABEL/ID_MAFE_ab3cc3868af33a9eb61a93bd0adec2a0 +#: LABEL/ID_MAFE_ab3cc3868af33a9eb61a93bd0adec2a0 +msgid "Collapse all" +msgstr "Collapse all" + # additionalTables/additionalTablesData.xml?ADD_TAB_NAME # additionalTables/additionalTablesData.xml #: text - ADD_TAB_NAME diff --git a/workflow/engine/controllers/adminProxy.php b/workflow/engine/controllers/adminProxy.php index ee0433e04..f64274ce6 100644 --- a/workflow/engine/controllers/adminProxy.php +++ b/workflow/engine/controllers/adminProxy.php @@ -1235,7 +1235,10 @@ class adminProxy extends HttpProxyController break; } } catch (Exception $oException) { - die($oException->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } exit(); } diff --git a/workflow/engine/data/mysql/schema.sql b/workflow/engine/data/mysql/schema.sql index 4addde059..c346956bb 100755 --- a/workflow/engine/data/mysql/schema.sql +++ b/workflow/engine/data/mysql/schema.sql @@ -460,7 +460,7 @@ CREATE TABLE `PROCESS` `PRO_COST` DECIMAL(7,2) default 0, `PRO_UNIT_COST` VARCHAR(50) default '', `PRO_ITEE` INTEGER default 0 NOT NULL, - `PRO_ACTION_DONE` MEDIUMTEXT default '', + `PRO_ACTION_DONE` MEDIUMTEXT, PRIMARY KEY (`PRO_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Store process Information'; #----------------------------------------------------------------------------- @@ -493,7 +493,8 @@ CREATE TABLE `REPORT_TABLE` `REP_TAB_CONNECTION` VARCHAR(32) default '' NOT NULL, `REP_TAB_CREATE_DATE` DATETIME NOT NULL, `REP_TAB_STATUS` CHAR(8) default 'ACTIVE' NOT NULL, - PRIMARY KEY (`REP_TAB_UID`) + PRIMARY KEY (`REP_TAB_UID`), + KEY `indexProcessStatus`(`PRO_UID`, `REP_TAB_STATUS`) )ENGINE=InnoDB DEFAULT CHARSET='utf8'; #----------------------------------------------------------------------------- #-- REPORT_VAR @@ -743,13 +744,6 @@ CREATE TABLE `USERS` `USR_REPORTS_TO` VARCHAR(32) default '', `USR_REPLACED_BY` VARCHAR(32) default '', `USR_UX` VARCHAR(128) default 'NORMAL', - `USR_TOTAL_INBOX` INTEGER default 0, - `USR_TOTAL_DRAFT` INTEGER default 0, - `USR_TOTAL_CANCELLED` INTEGER default 0, - `USR_TOTAL_PARTICIPATED` INTEGER default 0, - `USR_TOTAL_PAUSED` INTEGER default 0, - `USR_TOTAL_COMPLETED` INTEGER default 0, - `USR_TOTAL_UNASSIGNED` INTEGER default 0, `USR_COST_BY_HOUR` DECIMAL(7,2) default 0, `USR_UNIT_COST` VARCHAR(50) default '', `USR_PMDRIVE_FOLDER_UID` VARCHAR(32) default '', @@ -1005,7 +999,8 @@ CREATE TABLE `SUB_APPLICATION` `SA_VALUES_IN` MEDIUMTEXT, `SA_INIT_DATE` DATETIME, `SA_FINISH_DATE` DATETIME, - PRIMARY KEY (`APP_UID`,`APP_PARENT`,`DEL_INDEX_PARENT`,`DEL_THREAD_PARENT`) + PRIMARY KEY (`APP_UID`,`APP_PARENT`,`DEL_INDEX_PARENT`,`DEL_THREAD_PARENT`), + KEY `indexParent`(`APP_PARENT`) )ENGINE=InnoDB DEFAULT CHARSET='utf8'; #----------------------------------------------------------------------------- #-- LOGIN_LOG @@ -1067,7 +1062,8 @@ CREATE TABLE `ADDITIONAL_TABLES` `ADD_TAB_TYPE` VARCHAR(32) default '', `ADD_TAB_GRID` VARCHAR(256) default '', `ADD_TAB_TAG` VARCHAR(256) default '', - PRIMARY KEY (`ADD_TAB_UID`) + PRIMARY KEY (`ADD_TAB_UID`), + KEY `indexAdditionalProcess`(`PRO_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8'; #----------------------------------------------------------------------------- #-- FIELDS @@ -1145,7 +1141,8 @@ CREATE TABLE `EVENT` `EVN_TYPE` VARCHAR(32) default '', `TAS_EVN_UID` VARCHAR(32) default '', PRIMARY KEY (`EVN_UID`), - KEY `indexEventTable`(`EVN_UID`) + KEY `indexEventTable`(`EVN_UID`), + KEY `indexStatusActionProcess`(`EVN_STATUS`, `EVN_ACTION`, `PRO_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8'; #----------------------------------------------------------------------------- #-- GATEWAY @@ -2230,7 +2227,8 @@ CREATE TABLE `ADDONS_MANAGER` `ADDON_DOWNLOAD_URL` VARCHAR(2048), `ADDON_DOWNLOAD_PROGRESS` FLOAT, `ADDON_DOWNLOAD_MD5` VARCHAR(32), - PRIMARY KEY (`ADDON_ID`,`STORE_ID`) + PRIMARY KEY (`ADDON_ID`,`STORE_ID`), + KEY `indexAddonsType`(`ADDON_TYPE`) )ENGINE=InnoDB ; #----------------------------------------------------------------------------- #-- LICENSE_MANAGER @@ -2393,7 +2391,8 @@ CREATE TABLE `LIST_COMPLETED` `DEL_CURRENT_USR_USERNAME` VARCHAR(100) default '', `DEL_CURRENT_USR_FIRSTNAME` VARCHAR(50) default '', `DEL_CURRENT_USR_LASTNAME` VARCHAR(50) default '', - PRIMARY KEY (`APP_UID`) + PRIMARY KEY (`APP_UID`), + KEY `usrListCompleted`(`USR_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='Completed list'; #----------------------------------------------------------------------------- #-- LIST_PAUSED @@ -2705,7 +2704,9 @@ CREATE TABLE `ABE_CONFIGURATION` `ABE_SUBJECT_FIELD` VARCHAR(100) default '', `ABE_MAILSERVER_OR_MAILCURRENT` INTEGER default 0, `ABE_CUSTOM_GRID` MEDIUMTEXT, - PRIMARY KEY (`ABE_UID`) + PRIMARY KEY (`ABE_UID`), + KEY `indexAbeProcess`(`PRO_UID`), + KEY `indexAbeProcessTask`(`PRO_UID`, `TAS_UID`) )ENGINE=InnoDB DEFAULT CHARSET='utf8' COMMENT='The plugin table for actionsByEmail'; #----------------------------------------------------------------------------- #-- ABE_REQUESTS diff --git a/workflow/engine/methods/authSources/authSources_Ajax.php b/workflow/engine/methods/authSources/authSources_Ajax.php index 4ad8f7763..9b59ad831 100755 --- a/workflow/engine/methods/authSources/authSources_Ajax.php +++ b/workflow/engine/methods/authSources/authSources_Ajax.php @@ -136,7 +136,10 @@ try { $response = isset( $aAuth[$authUID] ) ? 'false' : 'true'; echo '{success: ' . $response . '}'; } catch (Exception $ex) { - echo '{success: false, error: ' . $ex->getMessage() . '}'; + $token = strtotime("now"); + PMException::registerErrorLog($ex, $token); + $varRes = '{success: false, error: ' . G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) . '}'; + G::outRes( $varRes ); } break; case 'deleteAuthSource': @@ -145,7 +148,10 @@ try { $RBAC->removeAuthSource( $_POST['auth_uid'] ); echo '{success: true}'; } catch (Exception $ex) { - echo '{success: false, error: ' . $ex->getMessage() . '}'; + $token = strtotime("now"); + PMException::registerErrorLog($ex, $token); + $varRes = '{success: false, error: ' . G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) . '}'; + G::outRes( $varRes ); } break; case 'authSourcesNew': diff --git a/workflow/engine/methods/cases/CaseSchedulerCreateUpdate.php b/workflow/engine/methods/cases/CaseSchedulerCreateUpdate.php index 2a9c9da33..e84169d73 100644 --- a/workflow/engine/methods/cases/CaseSchedulerCreateUpdate.php +++ b/workflow/engine/methods/cases/CaseSchedulerCreateUpdate.php @@ -13,7 +13,9 @@ try { G::header("Location: cases_Scheduler_List?PRO_UID=" . $prossesUid); } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); exit(0); } diff --git a/workflow/engine/methods/cases/cases_Delete.php b/workflow/engine/methods/cases/cases_Delete.php index 9b8bef0ed..24cdb8939 100755 --- a/workflow/engine/methods/cases/cases_Delete.php +++ b/workflow/engine/methods/cases/cases_Delete.php @@ -53,6 +53,8 @@ try { } } } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } diff --git a/workflow/engine/methods/cases/cases_PrintView.php b/workflow/engine/methods/cases/cases_PrintView.php index a49f7a4c8..64bf8356e 100755 --- a/workflow/engine/methods/cases/cases_PrintView.php +++ b/workflow/engine/methods/cases/cases_PrintView.php @@ -91,7 +91,10 @@ try { $G_PUBLISH->AddContent( 'dynaform', 'xmlform', $aDyn['PRO_UID'] . '/' . $aDyn['DYN_UID'], '', $Fields['APP_DATA'], '', '', 'view' ); G::RenderPage( 'publish', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } ?> diff --git a/workflow/engine/methods/cases/cases_Reassign.php b/workflow/engine/methods/cases/cases_Reassign.php index ca4ab3bd8..09ebd0fd7 100755 --- a/workflow/engine/methods/cases/cases_Reassign.php +++ b/workflow/engine/methods/cases/cases_Reassign.php @@ -117,6 +117,9 @@ try { G::RenderPage( 'publish', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/cases/cases_ReassignByUser.php b/workflow/engine/methods/cases/cases_ReassignByUser.php index 9f250cf37..f2990a598 100755 --- a/workflow/engine/methods/cases/cases_ReassignByUser.php +++ b/workflow/engine/methods/cases/cases_ReassignByUser.php @@ -143,7 +143,10 @@ try { G::RenderPage( 'publish', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } ?> diff --git a/workflow/engine/methods/cases/cases_Reassign_save.php b/workflow/engine/methods/cases/cases_Reassign_save.php index af4dbc61f..e10b7cd7d 100755 --- a/workflow/engine/methods/cases/cases_Reassign_save.php +++ b/workflow/engine/methods/cases/cases_Reassign_save.php @@ -70,6 +70,9 @@ try { } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/cases/cases_Scheduler_Edit.php b/workflow/engine/methods/cases/cases_Scheduler_Edit.php index 5acc5a3e5..75252103d 100755 --- a/workflow/engine/methods/cases/cases_Scheduler_Edit.php +++ b/workflow/engine/methods/cases/cases_Scheduler_Edit.php @@ -136,6 +136,9 @@ try { G::RenderPage( 'publishBlank', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/cases/cases_Scheduler_Log_Detail.php b/workflow/engine/methods/cases/cases_Scheduler_Log_Detail.php index 998fcf2b4..1a0015a3c 100755 --- a/workflow/engine/methods/cases/cases_Scheduler_Log_Detail.php +++ b/workflow/engine/methods/cases/cases_Scheduler_Log_Detail.php @@ -82,6 +82,9 @@ try { G::RenderPage( 'publishBlank', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/cases/cases_Scheduler_New.php b/workflow/engine/methods/cases/cases_Scheduler_New.php index 4b5720d2e..2a734a164 100755 --- a/workflow/engine/methods/cases/cases_Scheduler_New.php +++ b/workflow/engine/methods/cases/cases_Scheduler_New.php @@ -95,6 +95,9 @@ try { G::RenderPage( 'publishBlank', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/cases/cases_UsersReassign.php b/workflow/engine/methods/cases/cases_UsersReassign.php index d9e19dd20..4b8eeee34 100755 --- a/workflow/engine/methods/cases/cases_UsersReassign.php +++ b/workflow/engine/methods/cases/cases_UsersReassign.php @@ -69,6 +69,9 @@ try { $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_ReassignShowInfo', '', $aMessage ); G::RenderPage( 'publish' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/cases/proxyPMTablesFieldList.php b/workflow/engine/methods/cases/proxyPMTablesFieldList.php index 0cc1756ea..17069ca65 100644 --- a/workflow/engine/methods/cases/proxyPMTablesFieldList.php +++ b/workflow/engine/methods/cases/proxyPMTablesFieldList.php @@ -722,7 +722,9 @@ try { break; } } catch (Exception $e) { - echo G::json_encode($e->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::json_encode( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ) ); } /** diff --git a/workflow/engine/methods/cases/proxyPMTablesList.php b/workflow/engine/methods/cases/proxyPMTablesList.php index 33b9d2142..32715c086 100644 --- a/workflow/engine/methods/cases/proxyPMTablesList.php +++ b/workflow/engine/methods/cases/proxyPMTablesList.php @@ -70,6 +70,8 @@ try { $result['data'] = $rows; print G::json_encode( $result ); } catch (Exception $e) { - print G::json_encode ($e->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::json_encode( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ) ); } diff --git a/workflow/engine/methods/cases/saveForm.php b/workflow/engine/methods/cases/saveForm.php index 086d1f61d..3187ad79c 100644 --- a/workflow/engine/methods/cases/saveForm.php +++ b/workflow/engine/methods/cases/saveForm.php @@ -136,5 +136,8 @@ try { die('OK'); } catch (Exception $e) { - die($e->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/dynaforms/conditionalShowHide_Ajax.php b/workflow/engine/methods/dynaforms/conditionalShowHide_Ajax.php index f469227db..378ba1b46 100755 --- a/workflow/engine/methods/dynaforms/conditionalShowHide_Ajax.php +++ b/workflow/engine/methods/dynaforms/conditionalShowHide_Ajax.php @@ -121,9 +121,9 @@ try { $enable = 'enable'; }else{ $enable = 'disable'; - } + } G::auditLog("ConditionsEditorDynaform", "Dynaform Title: " .$aDYN['DYNAFORM_NAME']. ", Condition Editor: [Function: ".$_POST['function']. ", Fields: ".$_POST['fields_selected']. ", Conditions: ".$_POST['condition']. ", Events: ".$_POST['events']. ", Event Owner: ".$_POST['event_owner_selected']. ", Status: ".$enable."]"); - + break; case 'delete': require_once 'classes/model/FieldCondition.php'; @@ -134,7 +134,9 @@ try { break; } } catch (Exception $e) { - print ($e->getMessage()) ; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } /* diff --git a/workflow/engine/methods/enterprise/addonsStoreAction.php b/workflow/engine/methods/enterprise/addonsStoreAction.php index 886c58b41..be71ac6a3 100644 --- a/workflow/engine/methods/enterprise/addonsStoreAction.php +++ b/workflow/engine/methods/enterprise/addonsStoreAction.php @@ -343,9 +343,16 @@ try { } else { $result["addons"] = array(); } - echo G::json_encode($result); + G::outRes( G::json_encode($result) ); } catch (Exception $e) { - echo G::json_encode(array("success" => false, "errors" => $e->getMessage())); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( + G::json_encode(array( + "success" => false, + "errors" => G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) + )) + ); } diff --git a/workflow/engine/methods/enterprise/pluginsImportFile.php b/workflow/engine/methods/enterprise/pluginsImportFile.php index 4f4adae05..7077502f7 100644 --- a/workflow/engine/methods/enterprise/pluginsImportFile.php +++ b/workflow/engine/methods/enterprise/pluginsImportFile.php @@ -186,5 +186,5 @@ if ($status == 0) { $response["success"] = false; } -echo G::json_encode($response); +G::outRes( G::json_encode($response) ); diff --git a/workflow/engine/methods/inputdocs/inputdocs_Delete.php b/workflow/engine/methods/inputdocs/inputdocs_Delete.php index 2955c2bc4..53e206aa8 100755 --- a/workflow/engine/methods/inputdocs/inputdocs_Delete.php +++ b/workflow/engine/methods/inputdocs/inputdocs_Delete.php @@ -104,6 +104,9 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/inputdocs/inputdocs_Edit.php b/workflow/engine/methods/inputdocs/inputdocs_Edit.php index f2d1c2728..dedc32171 100755 --- a/workflow/engine/methods/inputdocs/inputdocs_Edit.php +++ b/workflow/engine/methods/inputdocs/inputdocs_Edit.php @@ -63,6 +63,9 @@ try { $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'inputdocs/inputdocs_Edit', '', $aFields, '../inputdocs/inputdocs_Save' ); G::RenderPage( 'publish', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/inputdocs/inputdocs_Save.php b/workflow/engine/methods/inputdocs/inputdocs_Save.php index d2b3d1c79..73ad956f9 100755 --- a/workflow/engine/methods/inputdocs/inputdocs_Save.php +++ b/workflow/engine/methods/inputdocs/inputdocs_Save.php @@ -101,6 +101,9 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/install/heartbeatStatus.php b/workflow/engine/methods/install/heartbeatStatus.php index 09aa2425a..3031425ee 100755 --- a/workflow/engine/methods/install/heartbeatStatus.php +++ b/workflow/engine/methods/install/heartbeatStatus.php @@ -18,6 +18,8 @@ try { echo "Nothing to do"; } } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } diff --git a/workflow/engine/methods/login/login_Ajax.php b/workflow/engine/methods/login/login_Ajax.php index 905b4b9aa..1b303a468 100755 --- a/workflow/engine/methods/login/login_Ajax.php +++ b/workflow/engine/methods/login/login_Ajax.php @@ -42,6 +42,9 @@ try { break; } } catch ( Exception $oException ) { - die ( $oException->getMessage () ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/mails/emailList.php b/workflow/engine/methods/mails/emailList.php index b69ef8a8d..7a3abc782 100644 --- a/workflow/engine/methods/mails/emailList.php +++ b/workflow/engine/methods/mails/emailList.php @@ -48,6 +48,10 @@ $status = array( array("pending", G::LoadTranslation('ID_PENDING')) ); +$pluginRegistry = PMPluginRegistry::getSingleton(); +$statusER = $pluginRegistry->getStatusPlugin('externalRegistration'); +$flagER = (preg_match('/^enabled$/', $statusER))? 1 : 0; + $processes = getProcessArray($userUid); $G_PUBLISH = new Publisher(); @@ -58,6 +62,7 @@ $oHeadPublisher->addContent('mails/emailList'); //adding a html file .html. //sending the columns to display in grid $oHeadPublisher->assign('statusValues', $status); $oHeadPublisher->assign('processValues', $processes); +$oHeadPublisher->assign('flagER', $flagER); function getProcessArray($userUid) { global $oAppCache; diff --git a/workflow/engine/methods/mails/emailsAjax.php b/workflow/engine/methods/mails/emailsAjax.php index 4c26f1159..fc8a1fde1 100644 --- a/workflow/engine/methods/mails/emailsAjax.php +++ b/workflow/engine/methods/mails/emailsAjax.php @@ -17,12 +17,16 @@ switch($req){ $dir = isset($_REQUEST['dir']) ? $_REQUEST['dir'] : 'ASC'; $dateFrom = isset( $_POST["dateFrom"] ) ? substr( $_POST["dateFrom"], 0, 10 ) : ""; $dateTo = isset( $_POST["dateTo"] ) ? substr( $_POST["dateTo"], 0, 10 ) : ""; + $filterBy = (isset($_REQUEST['filterBy']))? $_REQUEST['filterBy'] : 'ALL'; $response = new stdclass(); $response->status = 'OK'; + $delimiter = DBAdapter::getStringDelimiter(); + $criteria = new Criteria(); - $criteria->addJoin(AppMessagePeer::APP_UID, ApplicationPeer::APP_UID); + $criteria->addJoin(AppMessagePeer::APP_UID, ApplicationPeer::APP_UID, Criteria::LEFT_JOIN); + if ($emailStatus != '') { $criteria->add( AppMessagePeer::APP_MSG_STATUS, $emailStatus); } @@ -30,6 +34,34 @@ switch($req){ $criteria->add( ApplicationPeer::PRO_UID, $proUid); } + $arrayType = []; + + $pluginRegistry = PMPluginRegistry::getSingleton(); + $statusEr = $pluginRegistry->getStatusPlugin('externalRegistration'); + + $flagEr = (preg_match('/^enabled$/', $statusEr))? 1 : 0; + + if ($flagEr == 0) { + $arrayType[] = 'EXTERNAL_REGISTRATION'; + } + + switch ($filterBy) { + case 'CASES': + $criteria->add(AppMessagePeer::APP_MSG_TYPE, ['TEST', 'EXTERNAL_REGISTRATION'], Criteria::NOT_IN); + break; + case 'TEST': + $criteria->add(AppMessagePeer::APP_MSG_TYPE, 'TEST', Criteria::EQUAL); + break; + case 'EXTERNAL-REGISTRATION': + $criteria->add(AppMessagePeer::APP_MSG_TYPE, 'EXTERNAL_REGISTRATION', Criteria::EQUAL); + break; + default: + if (!empty($arrayType)) { + $criteria->add(AppMessagePeer::APP_MSG_TYPE, $arrayType, Criteria::NOT_IN); + } + break; + } + if ($dateFrom != "") { if ($dateTo != "") { if ($dateFrom == $dateTo) { @@ -92,6 +124,23 @@ switch($req){ $criteria->add( ApplicationPeer::PRO_UID, $proUid); } + switch ($filterBy) { + case 'CASES': + $criteria->add(AppMessagePeer::APP_MSG_TYPE, ['TEST', 'EXTERNAL_REGISTRATION'], Criteria::NOT_IN); + break; + case 'TEST': + $criteria->add(AppMessagePeer::APP_MSG_TYPE, 'TEST', Criteria::EQUAL); + break; + case 'EXTERNAL-REGISTRATION': + $criteria->add(AppMessagePeer::APP_MSG_TYPE, 'EXTERNAL_REGISTRATION', Criteria::EQUAL); + break; + default: + if (!empty($arrayType)) { + $criteria->add(AppMessagePeer::APP_MSG_TYPE, $arrayType, Criteria::NOT_IN); + } + break; + } + if ($dateFrom != "") { if ($dateTo != "") { if ($dateFrom == $dateTo) { @@ -126,8 +175,11 @@ switch($req){ $criteria->setLimit($limit); $criteria->setOffset($start); } + $criteria->addJoin(AppMessagePeer::APP_UID, ApplicationPeer::APP_UID); $criteria->addJoin(ApplicationPeer::PRO_UID, ProcessPeer::PRO_UID); + + $result = AppMessagePeer::doSelectRS($criteria); $result->setFetchmode(ResultSet::FETCHMODE_ASSOC); $data = Array(); @@ -139,26 +191,51 @@ switch($req){ $row = $result->getRow(); $row['APP_MSG_FROM'] =htmlentities($row['APP_MSG_FROM'], ENT_QUOTES, "UTF-8"); $row['APP_MSG_STATUS'] = ucfirst ( $row['APP_MSG_STATUS']); - if ($row['DEL_INDEX'] != 0) { - $index = $row['DEL_INDEX']; + + switch ($filterBy) { + case 'CASES': + if ($row['DEL_INDEX'] != 0) { + $index = $row['DEL_INDEX']; + } + + $criteria = new Criteria(); + + $criteria->addSelectColumn(AppCacheViewPeer::APP_TITLE); + $criteria->addSelectColumn(AppCacheViewPeer::APP_TAS_TITLE); + $criteria->add(AppCacheViewPeer::APP_UID, $row['APP_UID'], Criteria::EQUAL); + $criteria->add(AppCacheViewPeer::DEL_INDEX, $index, Criteria::EQUAL); + + $resultCacheView = AppCacheViewPeer::doSelectRS($criteria); + $resultCacheView->setFetchmode(ResultSet::FETCHMODE_ASSOC); + + $row['APP_TITLE'] = '-'; + + while ($resultCacheView->next()) { + $rowCacheView = $resultCacheView->getRow(); + $row['APP_TITLE'] = $rowCacheView['APP_TITLE']; + $row['TAS_TITLE'] = $rowCacheView['APP_TAS_TITLE']; + } + + if ($row['DEL_INDEX'] == 0) { + $row['TAS_TITLE'] = $tasTitleDefault; + } + break; + case 'TEST': + $row['PRO_UID'] = ''; + $row['APP_NUMBER'] = ''; + $row['PRO_TITLE'] = ''; + $row['APP_TITLE'] = ''; + $row['TAS_TITLE'] = ''; + break; + case 'EXTERNAL-REGISTRATION': + $row['PRO_UID'] = ''; + $row['APP_NUMBER'] = ''; + $row['PRO_TITLE'] = ''; + $row['APP_TITLE'] = ''; + $row['TAS_TITLE'] = ''; + break; } - $criteria = new Criteria(); - $criteria->addSelectColumn(AppCacheViewPeer::APP_TITLE); - $criteria->addSelectColumn(AppCacheViewPeer::APP_TAS_TITLE); - $criteria->add(AppCacheViewPeer::APP_UID, $row['APP_UID']); - $criteria->add(AppCacheViewPeer::DEL_INDEX, $index); - $resultCacheView = AppCacheViewPeer::doSelectRS($criteria); - $resultCacheView->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $row['APP_TITLE'] = '-'; - while ($resultCacheView->next()) { - $rowCacheView = $resultCacheView->getRow(); - $row['APP_TITLE'] = $rowCacheView['APP_TITLE']; - $row['TAS_TITLE'] = $rowCacheView['APP_TAS_TITLE']; - } - if ($row['DEL_INDEX'] == 0) { - $row['TAS_TITLE'] = $tasTitleDefault; - } $data[] = $row; } $response = array(); diff --git a/workflow/engine/methods/outputdocs/outputdocs_Edit.php b/workflow/engine/methods/outputdocs/outputdocs_Edit.php index 9fbf55fb1..a29a039e3 100755 --- a/workflow/engine/methods/outputdocs/outputdocs_Edit.php +++ b/workflow/engine/methods/outputdocs/outputdocs_Edit.php @@ -61,29 +61,29 @@ try { switch ($type) { case 'HTML': - global $G_PUBLISH; - $G_PUBLISH = new Publisher(); - $fcontent = ''; - $proUid = ''; - $filename = ''; - $title = ''; - require_once 'classes/model/OutputDocument.php'; - $oOutputDocument = new OutputDocument(); - if (isset( $_REQUEST['OUT_DOC_UID'] )) { - $aFields = $oOutputDocument->load( $_REQUEST['OUT_DOC_UID'] ); - $fcontent = $aFields['OUT_DOC_TEMPLATE']; - $proUid = $aFields['PRO_UID']; - $filename = $aFields['OUT_DOC_FILENAME']; - $title = $aFields['OUT_DOC_TITLE']; - } - $aData = Array ( - 'PRO_UID' => $proUid, - 'OUT_DOC_TEMPLATE' => $fcontent, - 'FILENAME' => $filename, - 'OUT_DOC_UID'=> $_REQUEST['OUT_DOC_UID'], - 'OUT_DOC_TITLE'=> $title, - ); - $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'outputdocs/outputdocs_Edit', '', $aData ); + global $G_PUBLISH; + $G_PUBLISH = new Publisher(); + $fcontent = ''; + $proUid = ''; + $filename = ''; + $title = ''; + require_once 'classes/model/OutputDocument.php'; + $oOutputDocument = new OutputDocument(); + if (isset( $_REQUEST['OUT_DOC_UID'] )) { + $aFields = $oOutputDocument->load( $_REQUEST['OUT_DOC_UID'] ); + $fcontent = $aFields['OUT_DOC_TEMPLATE']; + $proUid = $aFields['PRO_UID']; + $filename = $aFields['OUT_DOC_FILENAME']; + $title = $aFields['OUT_DOC_TITLE']; + } + $aData = Array ( + 'PRO_UID' => $proUid, + 'OUT_DOC_TEMPLATE' => $fcontent, + 'FILENAME' => $filename, + 'OUT_DOC_UID'=> $_REQUEST['OUT_DOC_UID'], + 'OUT_DOC_TITLE'=> $title, + ); + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'outputdocs/outputdocs_Edit', '', $aData ); G::RenderPage( 'publish', 'blank' ); die(); break; @@ -98,8 +98,8 @@ try { $extension = 'pdf'; } - // The ereg_replace function has been DEPRECATED as of PHP 5.3.0. - // $downFileName = ereg_replace('[^A-Za-z0-9_]', '_', $aFields['OUT_DOC_TITLE'] ) . '.' . $extension; + // The ereg_replace function has been DEPRECATED as of PHP 5.3.0. + // $downFileName = ereg_replace('[^A-Za-z0-9_]', '_', $aFields['OUT_DOC_TITLE'] ) . '.' . $extension; $downFileName = preg_replace( '/[^A-Za-z0-9_]/i', '_', $aFields['OUT_DOC_TITLE'] ) . '.' . $extension; $filename = PATH_DYNAFORM . $aFields['PRO_UID'] . PATH_SEP . $aFields['OUT_DOC_UID'] . '.' . $extension; if (file_exists( $filename )) { @@ -115,6 +115,9 @@ try { } G::RenderPage( 'publish', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); -} + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; +} diff --git a/workflow/engine/methods/outputdocs/outputdocs_New.php b/workflow/engine/methods/outputdocs/outputdocs_New.php index bd41b19ba..83b6786d8 100755 --- a/workflow/engine/methods/outputdocs/outputdocs_New.php +++ b/workflow/engine/methods/outputdocs/outputdocs_New.php @@ -72,6 +72,9 @@ try { } G::RenderPage( 'publish', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/outputdocs/outputdocs_Properties.php b/workflow/engine/methods/outputdocs/outputdocs_Properties.php index fdedfffab..e82722c3d 100755 --- a/workflow/engine/methods/outputdocs/outputdocs_Properties.php +++ b/workflow/engine/methods/outputdocs/outputdocs_Properties.php @@ -63,15 +63,15 @@ try { break; case 'JRXML': $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'outputdocs/outputdocs_Properties', '', $aFields, '../outputdocs/outputdocs_Save' ); - /* - // $G_PUBLISH->AddContent('xmlform', 'xmlform', 'outputdocs/outputdocsDynaformList', '', $aFields , '../outputdocs/outputdocs_Save'); - require_once 'classes/model/Process.php'; - G::LoadClass( 'processMap'); - $sProcessUID = $aFields['PRO_UID']; - $oProcess = new Process(); - $oProcessMap = new ProcessMap(); - $aFields = $oProcess->load($sProcessUID); - $G_PUBLISH->AddContent('propeltable', 'paged-table', 'dynaforms/dynaforms_ShortList', $oProcessMap->getDynaformsCriteria($sProcessUID), $aFields); + /* + // $G_PUBLISH->AddContent('xmlform', 'xmlform', 'outputdocs/outputdocsDynaformList', '', $aFields , '../outputdocs/outputdocs_Save'); + require_once 'classes/model/Process.php'; + G::LoadClass( 'processMap'); + $sProcessUID = $aFields['PRO_UID']; + $oProcess = new Process(); + $oProcessMap = new ProcessMap(); + $aFields = $oProcess->load($sProcessUID); + $G_PUBLISH->AddContent('propeltable', 'paged-table', 'dynaforms/dynaforms_ShortList', $oProcessMap->getDynaformsCriteria($sProcessUID), $aFields); */ break; case 'ACROFORM': @@ -80,6 +80,9 @@ try { } G::RenderPage( 'publish', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); -} - + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; +} + diff --git a/workflow/engine/methods/outputdocs/outputdocs_Save.php b/workflow/engine/methods/outputdocs/outputdocs_Save.php index 028d70072..9c8ecbf36 100755 --- a/workflow/engine/methods/outputdocs/outputdocs_Save.php +++ b/workflow/engine/methods/outputdocs/outputdocs_Save.php @@ -86,6 +86,9 @@ try { } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/outputdocs/uploadFile.php b/workflow/engine/methods/outputdocs/uploadFile.php index 3f81a84c6..03758b5b1 100755 --- a/workflow/engine/methods/outputdocs/uploadFile.php +++ b/workflow/engine/methods/outputdocs/uploadFile.php @@ -28,6 +28,10 @@ try { print "File uploaded."; } catch (Exception $e) { - print "Error: " . $e->getMessage() . ""; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + $varRes = "Error: " . G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) . ""; + G::outRes( $varRes ); + die; } diff --git a/workflow/engine/methods/processCategory/processCategory_Ajax.php b/workflow/engine/methods/processCategory/processCategory_Ajax.php index a96baf10c..337b1e80a 100755 --- a/workflow/engine/methods/processCategory/processCategory_Ajax.php +++ b/workflow/engine/methods/processCategory/processCategory_Ajax.php @@ -118,7 +118,8 @@ if (isset( $_REQUEST['action'] )) { G::auditLog("CreateCategory", "Category Name: ".$catName); echo '{success: true}'; } catch (Exception $ex) { - echo '{success: false, error: ' . $ex->getMessage() . '}'; + $varEcho = '{success: false, error: ' . $ex->getMessage() . '}'; + G::outRes( $varEcho ); } break; case 'checkEditCategoryName': @@ -149,7 +150,8 @@ if (isset( $_REQUEST['action'] )) { g::auditLog("UpdateCategory", "Category Name: ".$catName." Category ID: (".$catUID.") "); echo '{success: true}'; } catch (Exception $ex) { - echo '{success: false, error: ' . $ex->getMessage() . '}'; + $varEcho = '{success: false, error: ' . $ex->getMessage() . '}'; + G::outRes( $varEcho ); } break; case 'canDeleteCategory': @@ -169,7 +171,8 @@ if (isset( $_REQUEST['action'] )) { $catName = $cat->loadByCategoryId( $catUID ); $cat->delete(); G::auditLog("DeleteCategory", "Category Name: ".$catName." Category ID: (".$catUID.") "); - echo '{success: true}'; + $varEcho = '{success: true}'; + G::outRes( $varEcho ); } catch (Exception $ex) { echo '{success: false, error: ' . $ex->getMessage() . '}'; } diff --git a/workflow/engine/methods/setup/appCacheViewAjax.php b/workflow/engine/methods/setup/appCacheViewAjax.php index 078f06f8a..454f084f7 100755 --- a/workflow/engine/methods/setup/appCacheViewAjax.php +++ b/workflow/engine/methods/setup/appCacheViewAjax.php @@ -288,7 +288,10 @@ switch ($request) { $confParams = array('lang' => $lang, 'status' => 'failed'); $appCacheViewEngine = $oServerConf->setProperty('APP_CACHE_VIEW_ENGINE', $confParams); - echo '{success: false, msg:"' . $e->getMessage() . '"}'; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + $varRes = '{success: false, msg:"' . G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) . '"}'; + G::outRes( $varRes ); } break; case 'recreate-root': diff --git a/workflow/engine/methods/setup/emails_Ajax.php b/workflow/engine/methods/setup/emails_Ajax.php index c380a18d9..bd73cfc23 100755 --- a/workflow/engine/methods/setup/emails_Ajax.php +++ b/workflow/engine/methods/setup/emails_Ajax.php @@ -182,7 +182,9 @@ switch ($request) { // print (FAILED . ',' . $smtp->error['error']) ; } } catch (Exception $e) { - print (FAILED . ',' . $e->getMessage()) ; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } } else { print (SUCCESSFUL . ', No authentication required!') ; @@ -214,7 +216,9 @@ switch ($request) { print (FAILED . ',' . $resp->msg) ; } } catch (Exception $e) { - print (FAILED . ',' . $e->getMessage()) ; + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } } else { diff --git a/workflow/engine/methods/setup/language_Ajax.php b/workflow/engine/methods/setup/language_Ajax.php index b322c4352..040098840 100755 --- a/workflow/engine/methods/setup/language_Ajax.php +++ b/workflow/engine/methods/setup/language_Ajax.php @@ -163,7 +163,9 @@ try { $trn->removeTranslationEnvironment( $locale ); echo G::LoadTranslation( 'ID_LANGUAGE_DELETED_SUCCESSFULLY' ); } catch (Exception $e) { - echo $e->getMessage(); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } } else { echo str_replace( '{0}', $aRow[0], G::LoadTranslation( 'ID_LANGUAGE_CANT_DELETE' ) ); @@ -177,6 +179,8 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); } diff --git a/workflow/engine/methods/setup/logo_Delete.php b/workflow/engine/methods/setup/logo_Delete.php index 36ef7d21c..68e574587 100755 --- a/workflow/engine/methods/setup/logo_Delete.php +++ b/workflow/engine/methods/setup/logo_Delete.php @@ -45,6 +45,9 @@ try { } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/setup/replacementLogo.php b/workflow/engine/methods/setup/replacementLogo.php index 2d9028e2f..65d0d8a72 100755 --- a/workflow/engine/methods/setup/replacementLogo.php +++ b/workflow/engine/methods/setup/replacementLogo.php @@ -100,6 +100,9 @@ try { //ini_set('display_errors','1'); } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationInsert.sql b/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationInsert.sql index 809608aa0..b8aa5f70c 100755 --- a/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationInsert.sql +++ b/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationInsert.sql @@ -20,12 +20,12 @@ BEGIN SELECT APPLICATION.APP_CREATE_DATE into @APP_CREATE_DATE FROM APPLICATION WHERE APP_UID = NEW.APP_UID LIMIT 1; SELECT APPLICATION.APP_UPDATE_DATE into @APP_UPDATE_DATE FROM APPLICATION WHERE APP_UID = NEW.APP_UID LIMIT 1; - SELECT CONTENT.CON_VALUE into @APP_TITLE FROM CONTENT WHERE NEW.APP_UID=CON_ID AND CON_CATEGORY='APP_TITLE' and CON_LANG = '{lang}' LIMIT 1; + SELECT APPLICATION.APP_TITLE into @APP_TITLE FROM APPLICATION WHERE NEW.APP_UID=APPLICATION.APP_UID LIMIT 1; IF ( @APP_TITLE IS NULL ) THEN SET @APP_TITLE = ''; END IF; - SELECT CONTENT.CON_VALUE into @APP_PRO_TITLE FROM CONTENT WHERE NEW.PRO_UID=CON_ID AND CON_CATEGORY='PRO_TITLE' and CON_LANG = '{lang}' LIMIT 1; - SELECT CONTENT.CON_VALUE into @APP_TAS_TITLE FROM CONTENT WHERE NEW.TAS_UID=CON_ID AND CON_CATEGORY='TAS_TITLE' and CON_LANG = '{lang}' LIMIT 1; + SELECT PROCESS.PRO_TITLE into @APP_PRO_TITLE FROM PROCESS WHERE NEW.PRO_UID=PROCESS.PRO_UID LIMIT 1; + SELECT TASK.TAS_TITLE into @APP_TAS_TITLE FROM TASK WHERE NEW.TAS_UID=TASK.TAS_UID LIMIT 1; SELECT CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME) INTO @APP_CURRENT_USER FROM USERS WHERE USR_UID = NEW.USR_UID LIMIT 1; IF ( @APP_CURRENT_USER IS NULL ) THEN SET @APP_CURRENT_USER = ''; diff --git a/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationUpdate.sql b/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationUpdate.sql index dce6833fe..39cee7d53 100755 --- a/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationUpdate.sql +++ b/workflow/engine/methods/setup/setupSchemas/triggerAppDelegationUpdate.sql @@ -20,12 +20,12 @@ BEGIN SELECT APPLICATION.APP_CREATE_DATE into @APP_CREATE_DATE FROM APPLICATION WHERE APP_UID = NEW.APP_UID LIMIT 1; SELECT APPLICATION.APP_UPDATE_DATE into @APP_UPDATE_DATE FROM APPLICATION WHERE APP_UID = NEW.APP_UID LIMIT 1; - SELECT CONTENT.CON_VALUE into @APP_TITLE FROM CONTENT WHERE NEW.APP_UID=CON_ID AND CON_CATEGORY='APP_TITLE' and CON_LANG = '{lang}' LIMIT 1; + SELECT APPLICATION.APP_TITLE into @APP_TITLE FROM APPLICATION WHERE NEW.APP_UID=APPLICATION.APP_UID LIMIT 1; IF ( @APP_TITLE IS NULL ) THEN SET @APP_TITLE = ''; END IF; - SELECT CONTENT.CON_VALUE into @APP_PRO_TITLE FROM CONTENT WHERE NEW.PRO_UID=CON_ID AND CON_CATEGORY='PRO_TITLE' and CON_LANG = '{lang}' LIMIT 1; - SELECT CONTENT.CON_VALUE into @APP_TAS_TITLE FROM CONTENT WHERE NEW.TAS_UID=CON_ID AND CON_CATEGORY='TAS_TITLE' and CON_LANG = '{lang}' LIMIT 1; + SELECT PROCESS.PRO_TITLE into @APP_PRO_TITLE FROM PROCESS WHERE NEW.PRO_UID=PROCESS.PRO_UID LIMIT 1; + SELECT TASK.TAS_TITLE into @APP_TAS_TITLE FROM TASK WHERE NEW.TAS_UID=TASK.TAS_UID LIMIT 1; SELECT CONCAT(USERS.USR_LASTNAME, ' ', USERS.USR_FIRSTNAME) INTO @APP_CURRENT_USER FROM USERS WHERE USR_UID = NEW.USR_UID LIMIT 1; IF ( @APP_CURRENT_USER IS NULL ) THEN SET @APP_CURRENT_USER = ''; diff --git a/workflow/engine/methods/setup/skin_Ajax.php b/workflow/engine/methods/setup/skin_Ajax.php index e81f79ccd..2f3fe89a8 100755 --- a/workflow/engine/methods/setup/skin_Ajax.php +++ b/workflow/engine/methods/setup/skin_Ajax.php @@ -192,12 +192,12 @@ function newSkin ($baseSkin = 'classic') $response['success'] = true; $response['message'] = G::LoadTranslation( 'ID_SKIN_SUCCESS_CREATE' ); G::auditLog("CreateSkin", "Skin Name: ".$skinName); - print_r( G::json_encode( $response ) ); + G::outRes( G::json_encode( $response ) ); } catch (Exception $e) { $response['success'] = false; $response['message'] = $e->getMessage(); $response['error'] = $e->getMessage(); - print_r( G::json_encode( $response ) ); + G::outRes( G::json_encode( $response ) ); } } @@ -308,12 +308,12 @@ function importSkin () $response['success'] = true; $response['message'] = G::LoadTranslation( 'ID_SKIN_SUCCESSFUL_IMPORTED' ); G::auditLog("ImportSkin", "Skin Name: ".$skinName); - print_r( G::json_encode( $response ) ); + G::outRes( G::json_encode( $response ) ); } catch (Exception $e) { $response['success'] = false; $response['message'] = $e->getMessage(); $response['error'] = $e->getMessage(); - print_r( G::json_encode( $response ) ); + G::outRes( G::json_encode( $response ) ); } } diff --git a/workflow/engine/methods/steps/conditions_Edit.php b/workflow/engine/methods/steps/conditions_Edit.php index fdc60c1e7..c1a60baa9 100755 --- a/workflow/engine/methods/steps/conditions_Edit.php +++ b/workflow/engine/methods/steps/conditions_Edit.php @@ -43,6 +43,9 @@ try { $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'steps/conditions_Edit', '', $aFields, '../steps/conditions_Save' ); G::RenderPage( 'publish-raw', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/conditions_Save.php b/workflow/engine/methods/steps/conditions_Save.php index 9d318ab87..b7f96786d 100755 --- a/workflow/engine/methods/steps/conditions_Save.php +++ b/workflow/engine/methods/steps/conditions_Save.php @@ -48,6 +48,9 @@ try { $oProcessMap = new ProcessMap(); $oProcessMap->getStepsCriteria( $value['TAS_UID'] ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_Ajax.php b/workflow/engine/methods/steps/steps_Ajax.php index 944e63f73..b539feab4 100755 --- a/workflow/engine/methods/steps/steps_Ajax.php +++ b/workflow/engine/methods/steps/steps_Ajax.php @@ -207,6 +207,9 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_Delete.php b/workflow/engine/methods/steps/steps_Delete.php index addf712a5..8a1e78d2c 100755 --- a/workflow/engine/methods/steps/steps_Delete.php +++ b/workflow/engine/methods/steps/steps_Delete.php @@ -44,6 +44,9 @@ try { $oProcessMap = new ProcessMap(); $oProcessMap->getStepsCriteria( $_POST['TASK'] ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_Down.php b/workflow/engine/methods/steps/steps_Down.php index 2f97cd4be..25350f6ba 100755 --- a/workflow/engine/methods/steps/steps_Down.php +++ b/workflow/engine/methods/steps/steps_Down.php @@ -43,5 +43,8 @@ try { $oProcessMap = new ProcessMap(); $oProcessMap->getStepsCriteria( $_POST['TASK'] ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_New.php b/workflow/engine/methods/steps/steps_New.php index 5ff23800d..1783e94e7 100755 --- a/workflow/engine/methods/steps/steps_New.php +++ b/workflow/engine/methods/steps/steps_New.php @@ -42,6 +42,9 @@ try { $G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'steps/steps_availableBB', $oProcessMap->getAvailableBBCriteria( $_GET['PROCESS'], $_GET['TASK'] ), $_GET ); G::RenderPage( 'publish-raw', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_Save.php b/workflow/engine/methods/steps/steps_Save.php index f4c8a287f..c6585287c 100755 --- a/workflow/engine/methods/steps/steps_Save.php +++ b/workflow/engine/methods/steps/steps_Save.php @@ -46,6 +46,9 @@ try { $oProcessMap = new ProcessMap(); $oProcessMap->getStepsCriteria( $_POST['sTask'] ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_SupervisorAjax.php b/workflow/engine/methods/steps/steps_SupervisorAjax.php index b5d2a912f..cc28b36bb 100755 --- a/workflow/engine/methods/steps/steps_SupervisorAjax.php +++ b/workflow/engine/methods/steps/steps_SupervisorAjax.php @@ -70,6 +70,9 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/steps/steps_Up.php b/workflow/engine/methods/steps/steps_Up.php index 24fa33814..7dae3447d 100755 --- a/workflow/engine/methods/steps/steps_Up.php +++ b/workflow/engine/methods/steps/steps_Up.php @@ -43,5 +43,8 @@ try { $oProcessMap = new ProcessMap(); $oProcessMap->getStepsCriteria( $_POST['TASK'] ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/tasks/tasks_Ajax.php b/workflow/engine/methods/tasks/tasks_Ajax.php index 0c23a00fa..ffd364ef2 100755 --- a/workflow/engine/methods/tasks/tasks_Ajax.php +++ b/workflow/engine/methods/tasks/tasks_Ajax.php @@ -136,6 +136,9 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/tracker/tracker_Ajax.php b/workflow/engine/methods/tracker/tracker_Ajax.php index ea233a815..cd64aee70 100755 --- a/workflow/engine/methods/tracker/tracker_Ajax.php +++ b/workflow/engine/methods/tracker/tracker_Ajax.php @@ -459,6 +459,9 @@ try { break; } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/tracker/tracker_ConditionsEdit.php b/workflow/engine/methods/tracker/tracker_ConditionsEdit.php index 50c396864..cc71bb34c 100755 --- a/workflow/engine/methods/tracker/tracker_ConditionsEdit.php +++ b/workflow/engine/methods/tracker/tracker_ConditionsEdit.php @@ -46,6 +46,9 @@ try { $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'tracker/tracker_ConditionsEdit', '', $aFields, '../tracker/tracker_ConditionsSave' ); G::RenderPage( 'publish-raw', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/tracker/tracker_ConditionsSave.php b/workflow/engine/methods/tracker/tracker_ConditionsSave.php index b41818d64..dda62d7cd 100755 --- a/workflow/engine/methods/tracker/tracker_ConditionsSave.php +++ b/workflow/engine/methods/tracker/tracker_ConditionsSave.php @@ -53,6 +53,9 @@ try { $resultProcess = $infoProcess->load($value['PRO_UID']); G::auditLog('CaseTrackers','Save Condition Case Tracker Object ('.$value['CTO_UID'].', condition: '.$value['CTO_CONDITION'].') in Process "'.$resultProcess['PRO_TITLE'].'"'); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/tracker/tracker_PrintView.php b/workflow/engine/methods/tracker/tracker_PrintView.php index ef9123c82..cc42226a6 100755 --- a/workflow/engine/methods/tracker/tracker_PrintView.php +++ b/workflow/engine/methods/tracker/tracker_PrintView.php @@ -56,7 +56,7 @@ try { $array['TITLE'] = G::LoadTranslation( 'ID_TITLE' ); else $array['TITLE'] = ''; - // $array['PROCESS'] = G::LoadTranslation('ID_PROCESS'); + // $array['PROCESS'] = G::LoadTranslation('ID_PROCESS'); $array['DATELABEL'] = G::LoadTranslation( 'DATE_LABEL' ); $G_PUBLISH = new Publisher(); @@ -65,37 +65,40 @@ try { G::RenderPage( 'publish', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } -?> - - diff --git a/workflow/engine/methods/users/myInfo_Edit.php b/workflow/engine/methods/users/myInfo_Edit.php index e52b6b553..e0847349f 100755 --- a/workflow/engine/methods/users/myInfo_Edit.php +++ b/workflow/engine/methods/users/myInfo_Edit.php @@ -163,6 +163,9 @@ try { G::RenderPage( 'publish' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/myInfo_Save.php b/workflow/engine/methods/users/myInfo_Save.php index b5d51aec5..6612a8597 100755 --- a/workflow/engine/methods/users/myInfo_Save.php +++ b/workflow/engine/methods/users/myInfo_Save.php @@ -164,6 +164,9 @@ try { G::SendTemporalMessage( 'ID_CHANGES_SAVED', 'info', 'labels' ); G::header( 'location: myInfo' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_Ajax.php b/workflow/engine/methods/users/users_Ajax.php index a2d63f96d..3972ab74d 100644 --- a/workflow/engine/methods/users/users_Ajax.php +++ b/workflow/engine/methods/users/users_Ajax.php @@ -440,7 +440,6 @@ try { $oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME); $oCriteria->addSelectColumn(UsersPeer::USR_EMAIL); $oCriteria->addSelectColumn(UsersPeer::USR_ROLE); - $oCriteria->addSelectColumn(UsersPeer::USR_TOTAL_PARTICIPATED); $oCriteria->addSelectColumn(UsersPeer::USR_DUE_DATE); $oCriteria->addSelectColumn(UsersPeer::USR_STATUS); $oCriteria->addSelectColumn(UsersPeer::USR_UX); @@ -482,6 +481,8 @@ try { $uxList = adminProxy::getUxTypesList(); $oRoles = new Roles(); + $oParticipated = new ListParticipatedLast(); + $oAppCache = new AppCacheView(); $rows = Array(); $uRole = Array(); while ($oDataset->next()) { @@ -490,15 +491,23 @@ try { try { $uRole = $oRoles->loadByCode($row['USR_ROLE']); } catch (exception $oError) { - $uRole['ROL_NAME'] = G::loadTranslation( 'ID_DELETED' ); + $uRole['ROL_NAME'] = G::loadTranslation('ID_DELETED'); } - + /*----------------------------------********---------------------------------*/ + if (true) { + $total = $oParticipated->getCountList($row['USR_UID']); + } else { + /*----------------------------------********---------------------------------*/ + $total = $oAppCache->getListCounters('sent', $row['USR_UID'], false); + /*----------------------------------********---------------------------------*/ + } + /*----------------------------------********---------------------------------*/ $row['USR_ROLE_ID'] = $row['USR_ROLE']; $row['USR_ROLE'] = isset($uRole['ROL_NAME']) ? ($uRole['ROL_NAME'] != '' ? $uRole['ROL_NAME'] : $uRole['ROL_CODE']) : $uRole['ROL_CODE']; $row['DUE_DATE_OK'] = (date('Y-m-d') > date('Y-m-d', strtotime($row['USR_DUE_DATE']))) ? 0 : 1; $row['LAST_LOGIN'] = isset($aLogin[$row['USR_UID']]) ? \ProcessMaker\Util\DateTime::convertUtcToTimeZone($aLogin[$row['USR_UID']]) : ''; - $row['TOTAL_CASES'] = isset($row['USR_TOTAL_PARTICIPATED']) ? $row['USR_TOTAL_PARTICIPATED'] : 0; + $row['TOTAL_CASES'] = $total; $row['DEP_TITLE'] = isset($aDepart[$row['USR_UID']]) ? $aDepart[$row['USR_UID']] : ''; $row['USR_UX'] = isset($uxList[$row['USR_UX']]) ? $uxList[$row['USR_UX']] : $uxList['NORMAL']; $row['USR_AUTH_SOURCE'] = isset($aAuthSources[$row['USR_UID']]) ? $aAuthSources[$row['USR_UID']] : 'ProcessMaker (MYSQL)'; @@ -584,5 +593,8 @@ try { break; } } catch (Exception $oException) { - die($oException->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_Delete.php b/workflow/engine/methods/users/users_Delete.php index ee64013d3..5e12d990e 100755 --- a/workflow/engine/methods/users/users_Delete.php +++ b/workflow/engine/methods/users/users_Delete.php @@ -65,6 +65,9 @@ try { $oUser->update( $aFields ); G::header( 'location: users_List' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_DeleteReassignEnd.php b/workflow/engine/methods/users/users_DeleteReassignEnd.php index 3766fb29b..168ccbd5e 100755 --- a/workflow/engine/methods/users/users_DeleteReassignEnd.php +++ b/workflow/engine/methods/users/users_DeleteReassignEnd.php @@ -82,6 +82,9 @@ try { $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'users/users_ReassignShowInfo', '', $aMessage ); G::RenderPage( 'publish' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_Edit.php b/workflow/engine/methods/users/users_Edit.php index 808b8dbaf..1a1431453 100755 --- a/workflow/engine/methods/users/users_Edit.php +++ b/workflow/engine/methods/users/users_Edit.php @@ -150,6 +150,9 @@ try { G::RenderPage( 'publish', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_Groups.php b/workflow/engine/methods/users/users_Groups.php index 438127e8e..da5867a76 100755 --- a/workflow/engine/methods/users/users_Groups.php +++ b/workflow/engine/methods/users/users_Groups.php @@ -48,6 +48,9 @@ try { $G_PUBLISH->AddContent( 'view', 'users/users_Tree' ); G::RenderPage( 'publish', 'raw' ); } catch (exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_New.php b/workflow/engine/methods/users/users_New.php index 6cec00db9..f9f16a9bc 100755 --- a/workflow/engine/methods/users/users_New.php +++ b/workflow/engine/methods/users/users_New.php @@ -112,6 +112,9 @@ try { $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'users/users_New.xml', '', $aFields, 'users_Save' ); G::RenderPage( 'publish', 'blank' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_Reassign.php b/workflow/engine/methods/users/users_Reassign.php index 2505bfc78..713d00154 100755 --- a/workflow/engine/methods/users/users_Reassign.php +++ b/workflow/engine/methods/users/users_Reassign.php @@ -42,6 +42,9 @@ try { } } } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_ReassignCases.php b/workflow/engine/methods/users/users_ReassignCases.php index fa14c2a0a..e94a002ff 100755 --- a/workflow/engine/methods/users/users_ReassignCases.php +++ b/workflow/engine/methods/users/users_ReassignCases.php @@ -106,6 +106,9 @@ try { } G::RenderPage( 'publish', 'raw' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/methods/users/users_View.php b/workflow/engine/methods/users/users_View.php index 437824845..f68d216bd 100755 --- a/workflow/engine/methods/users/users_View.php +++ b/workflow/engine/methods/users/users_View.php @@ -70,6 +70,9 @@ try { } G::RenderPage( 'publish' ); } catch (Exception $oException) { - die( $oException->getMessage() ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php b/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php index f8c59a53e..8580ffd0c 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Cases/OutputDocument.php @@ -281,6 +281,127 @@ class OutputDocument } } + /** + * Get Ouput Document generated + * + * @param string $appDocumentUid Unique id of Documents in an Application + * @param string $applicationUid Unique id of Case + * @param array $arrayVariableNameForException Variable name for exception + * @param bool $throwException Flag to throw the exception if the main parameters are invalid or do not exist + * (TRUE: throw the exception; FALSE: returns FALSE) + * + * @return array Returns an array with Ouput Document generated to record, ThrowTheException/FALSE otherwise + */ + public function getOuputDocumentRecordByPk($appDocumentUid, $applicationUid, array $arrayVariableNameForException, $throwException = true) + { + $criteria = new \Criteria('workflow'); + + $criteria->add(\AppDocumentPeer::APP_DOC_UID, $appDocumentUid, \Criteria::EQUAL); + $criteria->add(\AppDocumentPeer::APP_UID, $applicationUid, \Criteria::EQUAL); + $criteria->add(\AppDocumentPeer::APP_DOC_TYPE, 'OUTPUT', \Criteria::EQUAL); + + $rsCriteria = \AppDocumentPeer::doSelectRS($criteria); + $rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC); + + if (!$rsCriteria->next()) { + if ($throwException) { + throw new \Exception(\G::LoadTranslation('ID_CASE_OUTPUT_DOCUMENT_DOES_NOT_EXIST', [$arrayVariableNameForException['$appDocumentUid'], $appDocumentUid])); + } else { + return false; + } + } + + $record = $rsCriteria->getRow(); + + //Return + return $record; + } + + /** + * Stream file (OutputDocument) + * + * @param string $appDocumentUid Unique id of Documents in an Application + * @param string $applicationUid Unique id of Case + * @param string $extension Extension (pdf, doc) + * + * @return string Returns a string (string of bytes) + */ + public function streamFile($appDocumentUid, $applicationUid, $extension) + { + //Verify data and Set variables + $arrayAppDocumentData = $this->getOuputDocumentRecordByPk($appDocumentUid, $applicationUid, ['$appDocumentUid' => '$appDocumentUid']); + + $appDocument = new \AppDocument(); + + $appDocument->Fields = $appDocument->load( + $appDocumentUid, + $appDocument->getLastDocVersion($appDocumentUid, $applicationUid) + ); + + $outputDocument = \OutputDocumentPeer::retrieveByPK($arrayAppDocumentData['DOC_UID']); + $outdocDocGenerate = $outputDocument->getOutDocGenerate(); + + $ext = ''; + + if (!is_null($extension)) { + if (!preg_match('/^(?:PDF|DOC)$/', strtoupper($extension))) { + throw new \Exception(\G::LoadTranslation('ID_OUTPUT_DOCUMENT_INVALID_EXTENSION')); + } + + if ($outdocDocGenerate != 'BOTH' && strtoupper($extension) != $outdocDocGenerate) { + throw new \Exception(\G::LoadTranslation('ID_OUTPUT_DOCUMENT_CONFIG_NOT_SUPPORT_EXTENSION')); + } + + $ext = $extension; + } else { + $ext = ($outdocDocGenerate != 'BOTH')? strtolower($outdocDocGenerate) : 'pdf'; + } + + //Stream file (OutputDocument) + $appDocUid = $appDocument->getAppDocUid(); + $docUid = $appDocument->Fields['DOC_UID']; + + $outputDocument = new \OutputDocument(); + + $outputDocument->Fields = $outputDocument->getByUid($docUid); + + $download = $outputDocument->Fields['OUT_DOC_OPEN_TYPE']; + + $pathInfo = pathinfo($appDocument->getAppDocFilename()); + + $extensionDoc = $ext; + + $versionDoc = '_' . $arrayAppDocumentData['DOC_VERSION']; + + $realPath = PATH_DOCUMENT . \G::getPathFromUID($appDocument->Fields['APP_UID']) . '/outdocs/' . $appDocUid . $versionDoc . '.' . $extensionDoc; + $realPath1 = PATH_DOCUMENT . \G::getPathFromUID($appDocument->Fields['APP_UID']) . '/outdocs/' . $pathInfo['basename'] . $versionDoc . '.' . $extensionDoc; + $realPath2 = PATH_DOCUMENT . \G::getPathFromUID($appDocument->Fields['APP_UID']) . '/outdocs/' . $pathInfo['basename'] . '.' . $extensionDoc; + + $flagFileExists = false; + + if (file_exists($realPath)) { + $flagFileExists = true; + } else { + if (file_exists($realPath1)) { + $flagFileExists = true; + $realPath = $realPath1; + } else { + if (file_exists($realPath2)) { + $flagFileExists = true; + $realPath = $realPath2; + } + } + } + + if ($flagFileExists) { + $nameFile = $pathInfo['basename'] . $versionDoc . '.' . $extensionDoc; + + \G::streamFile($realPath, true, $nameFile); //download + } else { + throw new \Exception(\G::LoadTranslation('ID_NOT_EXISTS_FILE')); + } + } + /** * Delete OutputDocument * @@ -820,5 +941,69 @@ class OutputDocument } } } -} + /** + * Check of user has permission of process + * + * @param string $applicationUid Unique id of Case + * @param string $delIndex Delegation index + * @param string $userUid Unique id of User + * @param string $appDocumentUid Unique id of Documents in an Application + * @param string $action + * + * @return bool Return + */ + public function checkProcessPermission($applicationUid, $delIndex, $userUid, $appDocumentUid, $action = 'VIEW') + { + $delIndex = (!is_null($delIndex))? $delIndex : 0; + + $case = new \ProcessMaker\BusinessModel\Cases(); + $arrayApplicationData = $case->getApplicationRecordByPk($applicationUid, [], false); + + $processUid = $arrayApplicationData['PRO_UID']; + + $case = new \Cases(); + $arrayAllObjectsFrom = $case->getAllObjectsFrom($processUid, $applicationUid, null, $userUid, $action, $delIndex); + + if (array_key_exists('OUTPUT_DOCUMENTS', $arrayAllObjectsFrom) && !empty($arrayAllObjectsFrom['OUTPUT_DOCUMENTS'])) { + foreach($arrayAllObjectsFrom['OUTPUT_DOCUMENTS'] as $value) { + if ($value == $appDocumentUid) { + return true; + } + } + } + + //Return + return false; + } + + /** + * Check of user + * + * @param string $applicationUid Unique id of Case + * @param string $appDocumentUid Unique id of Documents in an Application + * @param string $userUid Unique id of User + * + * @return bool Return + */ + public function checkUser($applicationUid, $appDocumentUid, $userUid) + { + $criteria = new \Criteria('workflow'); + + $criteria->addSelectColumn(\AppDocumentPeer::DOC_UID); + + $criteria->add(\AppDocumentPeer::APP_UID, $applicationUid, \Criteria::EQUAL); + $criteria->add(\AppDocumentPeer::APP_DOC_UID, $appDocumentUid, \Criteria::EQUAL); + $criteria->add(\AppDocumentPeer::APP_DOC_TYPE, 'OUTPUT', \Criteria::EQUAL); + $criteria->add(\AppDocumentPeer::USR_UID, $userUid, \Criteria::EQUAL); + + $rsCriteria = \AppDocumentPeer::doSelectRS($criteria); + + if ($rsCriteria->next()) { + return true; + } + + //Return + return false; + } +} diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Consolidated.php b/workflow/engine/src/ProcessMaker/BusinessModel/Consolidated.php index 1b2ba2187..0941bc724 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Consolidated.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Consolidated.php @@ -1106,4 +1106,20 @@ class Consolidated $oCase->updateCase($appUid, $aData); } + + /** + * @param $usrUid + * @return int + */ + public function getCountList($usrUid) + { + $criteria = new Criteria(); + $criteria->add(\CaseConsolidatedCorePeer::CON_STATUS, 'ACTIVE'); + $criteria->addJoin(\CaseConsolidatedCorePeer::TAS_UID, \AppCacheViewPeer::TAS_UID, Criteria::LEFT_JOIN); + $criteria->add(\AppCacheViewPeer::USR_UID, $usrUid); + $criteria->add(\AppCacheViewPeer::DEL_THREAD_STATUS, 'OPEN'); + $criteria->add(\AppCacheViewPeer::APP_STATUS, 'TO_DO'); + $total = \CaseConsolidatedCorePeer::doCount($criteria); + return (int)$total; + } } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Lists.php b/workflow/engine/src/ProcessMaker/BusinessModel/Lists.php index 1bb26d9dd..88077e2aa 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/Lists.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/Lists.php @@ -10,6 +10,74 @@ use \UsersPeer; */ class Lists { + /** + * @var array + */ + private $mapList; + /** + * @var \ListInbox + */ + private $ListInbox; + /** + * @var \ListInbox + */ + private $ListDraft; + /** + * @var \ListCanceled + */ + private $ListCanceled; + /** + * @var \ListParticipatedLast + */ + private $ListParticipated; + /** + * @var \ListPaused + */ + private $ListPaused; + /** + * @var \ListCompleted + */ + private $ListCompleted; + /** + * @var Consolidated + */ + private $ListConsolidated; + /** + * @var \ListUnassigned + */ + private $ListSelfService; + + /** + * Lists constructor. + */ + public function __construct() + { + $this->mapList = array( + 'ListInbox' => 'CASES_INBOX', + 'ListDraft' => 'CASES_DRAFT', + 'ListCanceled' => 'CASES_CANCELLED', + 'ListParticipated' => 'CASES_SENT', + 'ListPaused' => 'CASES_PAUSED', + 'ListCompleted' => 'CASES_COMPLETED', + /*----------------------------------********---------------------------------*/ + 'ListConsolidated' => 'CONSOLIDATED_CASES', + /*----------------------------------********---------------------------------*/ + 'ListSelfService' => 'CASES_SELFSERVICE' + ); + + $this->ListInbox = new \ListInbox(); + $this->ListDraft = new \ListInbox(); + $this->ListCanceled = new \ListCanceled(); + $this->ListParticipated = new \ListParticipatedLast(); + $this->ListPaused = new \ListPaused(); + $this->ListCompleted = new \ListCompleted(); + /*----------------------------------********---------------------------------*/ + $this->ListConsolidated = new Consolidated(); + /*----------------------------------********---------------------------------*/ + $this->ListSelfService = new \ListUnassigned(); + } + + /** * Get list for Cases * @@ -190,56 +258,34 @@ class Lists { /** * Get counters for lists - * - * @access public - * @param array $userId, User Uid + * @param $userId * @return array - * - * @author Brayan Pereyra (Cochalo) - * @copyright Colosa - Bolivia */ public function getCounters($userId) { - $criteria = new Criteria(); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_INBOX); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_DRAFT); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_CANCELLED); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_PARTICIPATED); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_PAUSED); - $criteria->addSelectColumn(UsersPeer::USR_TOTAL_COMPLETED); - $criteria->add( UsersPeer::USR_UID, $userId, Criteria::EQUAL ); - $dataset = UsersPeer::doSelectRS($criteria); - $dataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC); - $dataset->next(); - $aRow = $dataset->getRow(); - - $oAppCache = new \AppCacheView(); - $totalUnassigned = $oAppCache->getListCounters('selfservice', $userId, false); - - $response = array( - array('count' => $aRow['USR_TOTAL_INBOX'], 'item' => 'CASES_INBOX'), - array('count' => $aRow['USR_TOTAL_DRAFT'], 'item' => 'CASES_DRAFT'), - array('count' => $aRow['USR_TOTAL_CANCELLED'], 'item' => 'CASES_CANCELLED'), - array('count' => $aRow['USR_TOTAL_PARTICIPATED'], 'item' => 'CASES_SENT'), - array('count' => $aRow['USR_TOTAL_PAUSED'], 'item' => 'CASES_PAUSED'), - array('count' => $aRow['USR_TOTAL_COMPLETED'], 'item' => 'CASES_COMPLETED'), - array('count' => $totalUnassigned, 'item' => 'CASES_SELFSERVICE') - ); - - /*----------------------------------********---------------------------------*/ - $licensedFeatures = & \PMLicensedFeatures::getSingleton(); - if ($licensedFeatures->verifyfeature('7TTeDBQeWRoZTZKYjh4eFpYUlRDUUEyVERPU3FxellWank=')) { - $criteria = new Criteria(); - $criteria->add(\CaseConsolidatedCorePeer::CON_STATUS, 'ACTIVE'); - $criteria->addJoin(\CaseConsolidatedCorePeer::TAS_UID, \AppCacheViewPeer::TAS_UID, Criteria::LEFT_JOIN); - $criteria->add(\AppCacheViewPeer::USR_UID, $userId); - $criteria->add(\AppCacheViewPeer::DEL_THREAD_STATUS, 'OPEN'); - $criteria->add(\AppCacheViewPeer::APP_STATUS, 'TO_DO'); - $total = \CaseConsolidatedCorePeer::doCount( $criteria ); - $response[] = array('count' => $total, 'item' => 'CONSOLIDATED_CASES'); + $list = $this->mapList; + $response = array(); + foreach ($list as $listObject => $item) { + switch ($listObject) { + case 'ListInbox': + $total = $this->$listObject->getCountList($userId, 'TO_DO'); + array_push($response, (array('count' => $total, 'item' => $item))); + break; + /*----------------------------------********---------------------------------*/ + case 'ListConsolidated': + $licensedFeatures = &\PMLicensedFeatures::getSingleton(); + if ($licensedFeatures->verifyfeature('7TTeDBQeWRoZTZKYjh4eFpYUlRDUUEyVERPU3FxellWank=')) { + $total = $this->$listObject->getCountList($userId); + array_push($response, (array('count' => $total, 'item' => $item))); + } + break; + /*----------------------------------********---------------------------------*/ + default: + $totalInbox = $this->$listObject->getCountList($userId); + array_push($response, (array('count' => $totalInbox, 'item' => $item))); + break; + } } - /*----------------------------------********---------------------------------*/ - return $response; } } \ No newline at end of file diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/ScriptTask.php b/workflow/engine/src/ProcessMaker/BusinessModel/ScriptTask.php index 37b99b092..a22bf513e 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/ScriptTask.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/ScriptTask.php @@ -201,6 +201,26 @@ class ScriptTask if ($obj->getActTaskType() != "SCRIPTTASK") { throw new \Exception(\G::LoadTranslation("ID_SCRIPT_TASK_TYPE_ACTIVITY_NOT_IS_SCRIPTTASK", array($this->arrayFieldNameForException["actUid"], $arrayData["ACT_UID"]))); } + + //Activity - Already registered + $criteria = new \Criteria('workflow'); + $criteria->addSelectColumn(\ScriptTaskPeer::SCRTAS_UID); + + if ($scriptTaskUid != '') { + $criteria->add(\ScriptTaskPeer::SCRTAS_UID, $scriptTaskUid, \Criteria::NOT_EQUAL); + } + + $criteria->add(\ScriptTaskPeer::PRJ_UID, $projectUid, \Criteria::EQUAL); + $criteria->add(\ScriptTaskPeer::ACT_UID, $arrayFinalData['ACT_UID'], \Criteria::EQUAL); + + $rsCriteria = \ScriptTaskPeer::doSelectRS($criteria); + + if ($rsCriteria->next()) { + throw new \Exception(\G::LoadTranslation( + 'ID_SCRIPT_TASK_ACTIVITY_ALREADY_REGISTERED', + [$this->arrayFieldNameForException['actUid'], $arrayFinalData['ACT_UID']] + )); + } } catch (\Exception $e) { throw $e; } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/User.php b/workflow/engine/src/ProcessMaker/BusinessModel/User.php index bd22db0e1..26dcc333b 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/User.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/User.php @@ -452,13 +452,6 @@ class User $arrayResult[$this->getFieldNameByFormatFieldName('USR_COST_BY_HOUR')] = $record['USR_COST_BY_HOUR']; $arrayResult[$this->getFieldNameByFormatFieldName('USR_UNIT_COST')] = $record['USR_UNIT_COST']; /*----------------------------------********---------------------------------*/ - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_INBOX')] = $record['USR_TOTAL_INBOX']; - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_DRAFT')] = $record['USR_TOTAL_DRAFT']; - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_CANCELLED')] = $record['USR_TOTAL_CANCELLED']; - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_PARTICIPATED')] = $record['USR_TOTAL_PARTICIPATED']; - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_PAUSED')] = $record['USR_TOTAL_PAUSED']; - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_COMPLETED')] = $record['USR_TOTAL_COMPLETED']; - $arrayResult[$this->getFieldNameByFormatFieldName('USR_TOTAL_UNASSIGNED')] = $record['USR_TOTAL_UNASSIGNED']; $arrayResult[$this->getFieldNameByFormatFieldName('USR_PHOTO_PATH')] = $pathPhotoUser; if (isset($_SESSION['__SYSTEM_UTC_TIME_ZONE__']) && $_SESSION['__SYSTEM_UTC_TIME_ZONE__']) { @@ -512,13 +505,6 @@ class User $criteria->addSelectColumn(\UsersPeer::USR_COST_BY_HOUR); $criteria->addSelectColumn(\UsersPeer::USR_UNIT_COST); /*----------------------------------********---------------------------------*/ - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_INBOX); - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_DRAFT); - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_CANCELLED); - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_PARTICIPATED); - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_PAUSED); - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_COMPLETED); - $criteria->addSelectColumn(\UsersPeer::USR_TOTAL_UNASSIGNED); $criteria->addSelectColumn(\UsersPeer::USR_TIME_ZONE); //Return diff --git a/workflow/engine/src/ProcessMaker/Importer/Importer.php b/workflow/engine/src/ProcessMaker/Importer/Importer.php index 3ef35830c..45059f6b7 100755 --- a/workflow/engine/src/ProcessMaker/Importer/Importer.php +++ b/workflow/engine/src/ProcessMaker/Importer/Importer.php @@ -209,7 +209,6 @@ abstract class Importer } } /*----------------------------------********---------------------------------*/ - $name = $this->currentProcessTitle; $generateUid = false; break; case self::IMPORT_OPTION_DISABLE_AND_CREATE_NEW: diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php b/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php index 27cdd901d..4977f964e 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Cases/OutputDocument.php @@ -11,6 +11,53 @@ use \Luracast\Restler\RestException; */ class OutputDocument extends Api { + public function __isAllowed() + { + try { + $methodName = $this->restler->apiMethodInfo->methodName; + $arrayArgs = $this->restler->apiMethodInfo->arguments; + + switch ($methodName) { + case 'doGetOutputDocumentFile': + $applicationUid = $this->parameters[$arrayArgs['app_uid']]; + $appDocumentUid = $this->parameters[$arrayArgs['app_doc_uid']]; + $userUid = $this->getUserId(); + + //Check whether the process supervisor + $case = new \ProcessMaker\BusinessModel\Cases(); + $arrayApplicationData = $case->getApplicationRecordByPk($applicationUid, [], false); + + $supervisor = new \ProcessMaker\BusinessModel\ProcessSupervisor(); + $flagps = $supervisor->isUserProcessSupervisor($arrayApplicationData['PRO_UID'], $userUid); + + if ($flagps) { + return true; + } + + //Verify if you have permissions of the process + $outputDocument = new \ProcessMaker\BusinessModel\Cases\OutputDocument(); + $flagpp = $outputDocument->checkProcessPermission($applicationUid, null, $userUid, $appDocumentUid, 'VIEW'); + + if ($flagpp) { + return true; + } + + //Check whether the user has created the output document + $flaguser = $outputDocument->checkUser($applicationUid, $appDocumentUid, $userUid); + + if ($flaguser) { + return true; + } + break; + } + + //Return + return false; + } catch (\Exception $e) { + throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); + } + } + /** * @url GET /:app_uid/output-documents * @@ -46,6 +93,28 @@ class OutputDocument extends Api } } + /** + * @url GET /:app_uid/output-document/:app_doc_uid/file + * + * @access protected + * @class AccessControl {@className \ProcessMaker\Services\Api\Cases\OutputDocument} + * + * @param string $app_uid {@min 32}{@max 32} + * @param string $app_doc_uid {@min 32}{@max 32} + */ + public function doGetOutputDocumentFile($app_uid, $app_doc_uid, $extension = null) + { + try { + $caseOutdoc = new \ProcessMaker\BusinessModel\Cases\OutputDocument(); + $response = $caseOutdoc->streamFile($app_doc_uid, $app_uid, $extension); + + //Return + return $response; + } catch (\Exception $e) { + throw new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()); + } + } + /** * @url DELETE /:app_uid/output-document/:app_doc_uid * diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Consolidated.php b/workflow/engine/src/ProcessMaker/Services/Api/Consolidated.php index 8c06c1bba..226c83d29 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Consolidated.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Consolidated.php @@ -144,8 +144,9 @@ class Consolidated extends Api * @copyright Colosa - Bolivia * * @url POST /derivate/:app_uid/:app_number/:del_index/:field_grid/:field_grid_val + * @url POST /derivate/:app_uid/:app_number/:del_index/:field_grid/ */ - public function doPostDerivate($app_uid, $app_number, $del_index, $field_grid, $field_grid_val) + public function doPostDerivate($app_uid, $app_number, $del_index, $field_grid, $field_grid_val = '') { try { $usr_uid = $this->getUserId(); diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Light.php b/workflow/engine/src/ProcessMaker/Services/Api/Light.php index 60ce1074d..276bc32b4 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Light.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Light.php @@ -636,9 +636,11 @@ class Light extends Api { $response = array(); foreach ($data as $field => $d) { + $field = preg_quote($field); if (is_array($d)) { $newData = array(); foreach ($d as $field => $value) { + $field = preg_quote($field); if ( preg_match( '/\|(' . $field . ')\|/i', @@ -1011,7 +1013,7 @@ class Light extends Api * * @param string $tas_uid {@min 32}{@max 32} * @param string $app_uid {@min 32}{@max 32} - * @param string $del_index + * @param int $del_index */ public function doGetPrepareInformation($tas_uid, $app_uid, $del_index = null) { @@ -1030,7 +1032,7 @@ class Light extends Api * @url PUT /cases/:app_uid/route-case * * @param string $app_uid {@min 32}{@max 32} - * @param string $del_index {@from body} + * @param int $del_index {@from body} * @param array $tasks {@from body} */ public function doPutRouteCase($app_uid, $del_index = null, $tasks = array()) @@ -1591,7 +1593,7 @@ class Light extends Api * @access public * @url GET /config * - * @param string $fileLimit {@from path} + * @param boolean $fileLimit {@from path} */ public function getConfiguration($fileLimit = false) { @@ -1612,8 +1614,8 @@ class Light extends Api * * @url GET /config-user * - * @param string $fileLimit {@from path} - * @param string $tz {@from path} + * @param boolean $fileLimit {@from path} + * @param boolean $tz {@from path} */ public function getConfigurationUser($fileLimit = false, $tz = false) { diff --git a/workflow/engine/templates/mails/emailList.js b/workflow/engine/templates/mails/emailList.js index 609aa2d4d..c33a37620 100644 --- a/workflow/engine/templates/mails/emailList.js +++ b/workflow/engine/templates/mails/emailList.js @@ -33,7 +33,7 @@ Ext.onReady(function(){ ' {APP_PRO_TITLE}', '' ); - + var columnRenderer = function(data, metadata, record, rowIndex,columnIndex, store) { var new_text = metadata.style.split(';'); var style = ''; @@ -121,20 +121,130 @@ Ext.onReady(function(){ iconCls: 'no-icon' }); - actions = _addPluginActions([ {xtype: 'tbfill'}, _('ID_PROCESS'), comboProcess, '-', _('ID_STATUS'), comboStatus, _('ID_DELEGATE_DATE_FROM'), + var arrayData = [ + ["ALL", _("ID_ALL")], + ["CASES", _("ID_CASES1")], + ["TEST", _("ID_TEST")] + ]; + + if (parseInt(flagER) == 1) { + arrayData.push(["EXTERNAL-REGISTRATION", _("ID_EXTERNAL_REGISTRATION")]); + } + + var cboFilterBy = new Ext.form.ComboBox({ + id: "cboFilterBy", + width: 140, + editable: false, + mode: "local", + emptyText: _("ID_SELECT"), + + store: new Ext.data.ArrayStore({ + fields: ["id", "value"], + data: arrayData + }), + + valueField: "id", + displayField: "value", + triggerAction: "all", + + listeners:{ + "select": function() { + switch (cboFilterBy.value) { + case "ALL": + case "CASES": + emailsGrid.getColumnModel().setHidden(6, false); + emailsGrid.getColumnModel().setHidden(7, false); + emailsGrid.getColumnModel().setHidden(8, false); + emailsGrid.getColumnModel().setHidden(9, false); + emailsGrid.getColumnModel().setHidden(10, false); + + emailsGrid.getColumnModel().getColumnById("APP_TITLE").hideable = true; + emailsGrid.getColumnModel().getColumnById("PRO_TITLE").hideable = true; + emailsGrid.getColumnModel().getColumnById("TAS_TITLE").hideable = true; + emailsGrid.getColumnModel().getColumnById("APP_MSG_TYPE").hideable = true; + + dateFrom.setValue(""); + dateTo.setValue(""); + + comboProcess.reset(); + comboStatus.reset(); + + comboProcess.setDisabled(false); + break; + case "TEST": + emailsGrid.getColumnModel().setHidden(6, true); + emailsGrid.getColumnModel().setHidden(7, true); + emailsGrid.getColumnModel().setHidden(8, true); + emailsGrid.getColumnModel().setHidden(9, true); + emailsGrid.getColumnModel().setHidden(10, true); + + emailsGrid.getColumnModel().getColumnById("APP_TITLE").hideable = false; + emailsGrid.getColumnModel().getColumnById("PRO_TITLE").hideable = false; + emailsGrid.getColumnModel().getColumnById("TAS_TITLE").hideable = false; + emailsGrid.getColumnModel().getColumnById("APP_MSG_TYPE").hideable = false; + + dateFrom.setValue(""); + dateTo.setValue(""); + + comboStatus.reset(); + comboProcess.reset(); + + comboProcess.setDisabled(true); + break; + case "EXTERNAL-REGISTRATION": + emailsGrid.getColumnModel().setHidden(6, true); + emailsGrid.getColumnModel().setHidden(7, true); + emailsGrid.getColumnModel().setHidden(8, true); + emailsGrid.getColumnModel().setHidden(9, true); + emailsGrid.getColumnModel().setHidden(10, true); + + emailsGrid.getColumnModel().getColumnById("APP_TITLE").hideable = false; + emailsGrid.getColumnModel().getColumnById("PRO_TITLE").hideable = false; + emailsGrid.getColumnModel().getColumnById("TAS_TITLE").hideable = false; + emailsGrid.getColumnModel().getColumnById("APP_MSG_TYPE").hideable = false; + + dateFrom.setValue(""); + dateTo.setValue(""); + + comboStatus.reset(); + comboProcess.reset(); + + comboProcess.setDisabled(true); + break; + } + + store.setBaseParam("filterBy", cboFilterBy.value); + store.setBaseParam("process", comboProcess.value); + store.setBaseParam("status", comboStatus.value); + store.setBaseParam("dateFrom", ""); + store.setBaseParam("dateTo", ""); + store.setBaseParam("start", 0); + store.setBaseParam("limit", 25); + store.load(); + } + }, + + iconCls: "no-icon" + }); + + var btnFilter = new Ext.Button ({ + id: "btnFilter", + text: _("ID_FILTER_BY_DELEGATED_DATE"), + + handler: function(){ + store.setBaseParam("dateFrom", dateFrom.getValue()); + store.setBaseParam("dateTo", dateTo.getValue()); + store.load({params:{start: 0, limit: 25 }}); + } + }); + + actions = _addPluginActions([ {xtype: 'tbfill'}, _("ID_FILTER_BY"), cboFilterBy, "-", _('ID_PROCESS'), comboProcess, '-', _('ID_STATUS'), comboStatus, _('ID_DELEGATE_DATE_FROM'), dateFrom, ' ', _('ID_TO'), dateTo, - new Ext.Button ({ - text: _('ID_FILTER_BY_DELEGATED_DATE'), - handler: function(){ - store.setBaseParam('dateFrom', dateFrom.getValue()); - store.setBaseParam('dateTo', dateTo.getValue()); - store.load({params:{ start : 0 , limit : 25 }}); - } - }) + btnFilter ]); var stepsFields = Ext.data.Record.create([ @@ -143,9 +253,9 @@ Ext.onReady(function(){ {name : 'APP_MSG_TO', type: 'string'}, {name : 'APP_MSG_DATE', type: 'string'}, {name : 'APP_MSG_STATUS', type: 'string'} - + ]); - + store = new Ext.data.Store( { proxy : new Ext.data.HttpProxy({ url: 'emailsAjax?request=MessageList' @@ -206,21 +316,21 @@ Ext.onReady(function(){ }, columns: [ expander, - {id:'APP_MSG_UID', dataIndex: 'APP_MSG_UID', hidden:true, hideable:false}, - {header: 'APP_UID', dataIndex: 'APP_UID', hidden:true, hideable:false}, - {header: 'DEL_INDEX', dataIndex: 'DEL_INDEX', hidden:true, hideable:false}, - {header: 'PRO_UID', dataIndex: 'PRO_UID', hidden:true, hideable:false, sortable: false}, - {header: 'TAS_UID', dataIndex: 'TAS_UID', hidden:true, hideable:false, sortable: false}, - {header: _('ID_HEADER_NUMBER'), dataIndex: 'APP_NUMBER', width: 40, hidden: false,renderer: columnRenderer, sortable: true}, - {header: _('ID_CASE'), dataIndex: 'APP_TITLE', width: 100, hidden: false,renderer: columnRenderer, sortable: false}, - {header: _('ID_PROCESS'), dataIndex: 'PRO_TITLE', width: 100, hidden: false,renderer: columnRenderer, sortable: false}, - {header: _('ID_TASK'), dataIndex: 'TAS_TITLE', width: 100, hidden: false,renderer: columnRenderer, sortable: false}, - {header: _('ID_TYPE'), dataIndex: 'APP_MSG_TYPE', width: 50, hidden: false,renderer: columnRenderer, sortable: true}, - {header: _('ID_DATE_LABEL'), dataIndex: 'APP_MSG_DATE', width: 80,hidden:false, renderer: columnRenderer, sortable: true}, - {header: _('ID_SUBJECT'), dataIndex: 'APP_MSG_SUBJECT', width: 80,hidden:false, renderer: columnRenderer, sortable: true}, - {header: _('ID_FROM'), dataIndex: 'APP_MSG_FROM', width: 80,hidden:false,renderer: columnRenderer, sortable: true}, - {header: _('ID_TO'), dataIndex: 'APP_MSG_TO', width: 80,hidden:false,renderer: columnRenderer, sortable: true}, - {header: _('ID_ERROR_EMAIL'), dataIndex: 'APP_MSG_ERROR', width: 80,hidden:false,renderer: columnRenderer, sortable: true}, + {id: "APP_MSG_UID", dataIndex: 'APP_MSG_UID', hidden: true, hideable:false}, + {id: "APP_UID", header: 'APP_UID', dataIndex: 'APP_UID', hidden: true, hideable:false}, + {id: "DEL_INDEX", header: 'DEL_INDEX', dataIndex: 'DEL_INDEX', hidden: true, hideable:false}, + {id: "PRO_UID", header: 'PRO_UID', dataIndex: 'PRO_UID', hidden: true, hideable:false, sortable: false}, + {id: "TAS_UID", header: 'TAS_UID', dataIndex: 'TAS_UID', hidden: true, hideable:false, sortable: false}, + {id: "APP_NUMBER", header: _('ID_HEADER_NUMBER'), dataIndex: 'APP_NUMBER', width: 40, hidden: false,renderer: columnRenderer, sortable: true}, + {id: "APP_TITLE", header: _('ID_CASE'), dataIndex: 'APP_TITLE', width: 100, hidden: false,renderer: columnRenderer, sortable: false}, + {id: "PRO_TITLE", header: _('ID_PROCESS'), dataIndex: 'PRO_TITLE', width: 100, hidden: false,renderer: columnRenderer, sortable: false}, + {id: "TAS_TITLE", header: _('ID_TASK'), dataIndex: 'TAS_TITLE', width: 100, hidden: false,renderer: columnRenderer, sortable: false}, + {id: "APP_MSG_TYPE", header: _('ID_TYPE'), dataIndex: 'APP_MSG_TYPE', width: 50, hidden: false,renderer: columnRenderer, sortable: true}, + {id: "APP_MSG_DATE", header: _('ID_DATE_LABEL'), dataIndex: 'APP_MSG_DATE', width: 80, hidden: false, renderer: columnRenderer, sortable: true}, + {id: "APP_MSG_SUBJECT", header: _('ID_SUBJECT'), dataIndex: 'APP_MSG_SUBJECT', width: 80, hidden: false, renderer: columnRenderer, sortable: true}, + {id: "APP_MSG_FROM", header: _('ID_FROM'), dataIndex: 'APP_MSG_FROM', width: 80, hidden: false,renderer: columnRenderer, sortable: true}, + {id: "APP_MSG_TO", header: _('ID_TO'), dataIndex: 'APP_MSG_TO', width: 80, hidden: false,renderer: columnRenderer, sortable: true}, + {id: "APP_MSG_ERROR", header: _('ID_ERROR_EMAIL'), dataIndex: 'APP_MSG_ERROR', width: 80, hidden: false,renderer: columnRenderer, sortable: true}, { header: _('ID_STATUS'), diff --git a/workflow/engine/templates/steps/triggers_Tree.php b/workflow/engine/templates/steps/triggers_Tree.php index 337efd46d..2f31607b6 100755 --- a/workflow/engine/templates/steps/triggers_Tree.php +++ b/workflow/engine/templates/steps/triggers_Tree.php @@ -131,7 +131,10 @@ try { echo $javascript . $oTree->render(); } catch (Exception $oException) { - die($oException->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } unset($_SESSION['PROCESS']); ?> \ No newline at end of file diff --git a/workflow/engine/templates/triggers/triggersTree.php b/workflow/engine/templates/triggers/triggersTree.php index 3d840e026..6e08f330c 100755 --- a/workflow/engine/templates/triggers/triggersTree.php +++ b/workflow/engine/templates/triggers/triggersTree.php @@ -72,7 +72,10 @@ try { echo $oTree->render(); } catch (Exception $e) { - die($e->getMessage()); + $token = strtotime("now"); + PMException::registerErrorLog($e, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } unset($_SESSION["PROCESS"]); diff --git a/workflow/engine/templates/triggers/triggers_CreateWizard.php b/workflow/engine/templates/triggers/triggers_CreateWizard.php index 92dc6b801..658cd2527 100755 --- a/workflow/engine/templates/triggers/triggers_CreateWizard.php +++ b/workflow/engine/templates/triggers/triggers_CreateWizard.php @@ -173,7 +173,10 @@ try { print $content; } catch ( Exception $oException ) { - die ( $oException->getMessage () ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } unset ($_SESSION ['PROCESS']); diff --git a/workflow/engine/templates/triggers/triggers_EditWizard.php b/workflow/engine/templates/triggers/triggers_EditWizard.php index 4b11a4892..1da411064 100755 --- a/workflow/engine/templates/triggers/triggers_EditWizard.php +++ b/workflow/engine/templates/triggers/triggers_EditWizard.php @@ -183,6 +183,9 @@ try { print $content; } catch ( Exception $oException ) { - die ( $oException->getMessage () ); + $token = strtotime("now"); + PMException::registerErrorLog($oException, $token); + G::outRes( G::LoadTranslation("ID_EXCEPTION_LOG_INTERFAZ", array($token)) ); + die; } unset ( $_SESSION ['PROCESS'] );