diff --git a/workflow/engine/methods/cases/cases_Ajax.php b/workflow/engine/methods/cases/cases_Ajax.php
index 229c961c3..1d0c1e052 100755
--- a/workflow/engine/methods/cases/cases_Ajax.php
+++ b/workflow/engine/methods/cases/cases_Ajax.php
@@ -22,827 +22,894 @@
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
*
*/
+
G::LoadClass('case');
$oCase = new Cases();
+
//if($RBAC->userCanAccess('PM_ALLCASES') < 0) {
-// $oCase->thisIsTheCurrentUser($_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['USER_LOGGED'], 'SHOW_MESSAGE');
+// $oCase->thisIsTheCurrentUser( $_SESSION['APPLICATION'],
+// $_SESSION['INDEX'],
+// $_SESSION['USER_LOGGED'],
+// 'SHOW_MESSAGE');
//}
-if(($RBAC_Response = $RBAC->userCanAccess("PM_CASES")) != 1)
- return $RBAC_Response;
-if(isset($_POST['showWindow'])) {
- if($_POST['showWindow'] == 'steps') {
- $fn = 'showSteps();';
- } elseif($_POST['showWindow'] == 'information') {
- $fn = 'showInformation();';
- } elseif($_POST['showWindow'] == 'actions') {
- $fn = 'showActions();';
- } elseif($_POST['showWindow'] == 'false') {
- $fn = '';
- } else {
- if($_POST['showWindow'] != '') {
- $fn = false;
- }
- }
- $_SESSION['showCasesWindow'] = $fn;
-}
-if(! isset($_POST['action'])) {
- $_POST['action'] = '';
+if (($RBAC_Response = $RBAC->userCanAccess("PM_CASES")) != 1) {
+ return $RBAC_Response;
}
-switch(($_POST['action'])?$_POST['action']:$_REQUEST['action']) {
- case 'steps':
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('view', 'cases/cases_StepsTree');
- G::RenderPage('publish', 'raw');
- break;
- case 'information':
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('view', 'cases/cases_InformationTree');
- G::RenderPage('publish', 'raw');
- break;
- case 'actions':
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('view', 'cases/cases_ActionsTree');
- G::RenderPage('publish', 'raw');
- break;
- case 'showProcessMap':
- $oTemplatePower = new TemplatePower(PATH_TPL . 'processes/processes_Map.html');
- $oTemplatePower->prepare();
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('template', '', '', '', $oTemplatePower);
- $oHeadPublisher = & headPublisher::getSingleton();
- $oHeadPublisher->addScriptCode('
- var pb=leimnud.dom.capture("tag.body 0");
- Pm=new processmap();
-
- var params = "{\"uid\":\"' . $_SESSION['PROCESS'] . '\",\"mode\":false,\"ct\":false}";
- // maximun x and y position
- var xPos = 0;
- var yPos = 0;
-
- //obtaining the processmap object for the current process
- var oRPC = new leimnud.module.rpc.xmlhttp({
- url : "../processes/processes_Ajax",
- async : false,
- method: "POST",
- args : "action=load&data="+params
- });
- // make the ajax call
- oRPC.make();
- var response = eval(\'(\' + oRPC.xmlhttp.responseText + \')\');
- //alert(response);
-
- for (var i in response){
- if (i==\'task\'){
- elements = response[i];
- for (var j in elements){
- if (elements[j].uid!=undefined){
- if (elements[j].position.x > xPos){
- xPos = elements[j].position.x;
- }
- if (elements[j].position.y > yPos){
- yPos = elements[j].position.y;
- }
- }
- }
- }
- }
-
- Pm.options = {
- target : "pm_target",
- dataServer: "../processes/processes_Ajax",
- uid : "' . $_SESSION['PROCESS'] . '",
- lang : "' . SYS_LANG . '",
- theme : "processmaker",
- size : {w:xPos+200,h:yPos+150},
- images_dir: "/jscore/processmap/core/images/",
- rw : false,
- hideMenu : false
- }
- Pm.make();');
- G::RenderPage('publish', 'raw');
- break;
- case 'showLeyends':
- $aFields = array();
- $aFields['sLabel1'] = G::LoadTranslation('ID_TASK_IN_PROGRESS');
- $aFields['sLabel2'] = G::LoadTranslation('ID_COMPLETED_TASK');
- $aFields['sLabel3'] = G::LoadTranslation('ID_PENDING_TASK');
- $aFields['sLabel4'] = G::LoadTranslation('ID_PARALLEL_TASK');
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('smarty', 'cases/cases_Leyends', '', '', $aFields);
- G::RenderPage('publish', 'raw');
- break;
- case 'showProcessInformation':
- require_once 'classes/model/Process.php';
- $oProcess = new Process();
- $aFields = $oProcess->load($_SESSION['PROCESS']);
- require_once 'classes/model/Users.php';
- $oUser = new Users();
- try {
- $aUser = $oUser->load($aFields['PRO_CREATE_USER']);
- $aFields['PRO_AUTHOR'] = $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'];
- } catch ( Exception $oError ) {
- $aFields['PRO_AUTHOR'] = '(USER DELETED)';
- }
- $aFields['PRO_CREATE_DATE'] = date('F j, Y', strtotime($aFields['PRO_CREATE_DATE']));
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_ProcessInformation', '', $aFields);
- G::RenderPage('publish', 'raw');
- break;
- case 'showTransferHistory':
- G::LoadClass("case");
- $c = Cases::getTransferHistoryCriteria($_SESSION['APPLICATION']);
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_TransferHistory', $c, array());
- G::RenderPage('publish', 'raw');
- break;
- case 'showDynaformListHistory':
- require_once 'classes/model/AppHistory.php';
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('view', 'cases/cases_DynaformHistory');
- G::RenderPage('publish', 'raw');
- break;
- case 'showTaskInformation':
- require_once 'classes/model/AppDelegation.php';
- require_once 'classes/model/Task.php';
- $oTask = new Task();
- $aFields = $oTask->load($_SESSION['TASK']);
- $oCriteria = new Criteria('workflow');
- $oCriteria->add(AppDelegationPeer::APP_UID, $_SESSION['APPLICATION']);
- $oCriteria->add(AppDelegationPeer::DEL_INDEX, $_SESSION['INDEX']);
- $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
- $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
- $oDataset->next();
- $aDelegation = $oDataset->getRow();
- $iDiff = strtotime($aDelegation['DEL_FINISH_DATE']) - strtotime($aDelegation['DEL_INIT_DATE']);
- $aFields['INIT_DATE'] = ($aDelegation['DEL_INIT_DATE'] != null ? $aDelegation['DEL_INIT_DATE'] : G::LoadTranslation('ID_CASE_NOT_YET_STARTED'));
- $aFields['DUE_DATE'] = ($aDelegation['DEL_TASK_DUE_DATE'] != null ? $aDelegation['DEL_TASK_DUE_DATE'] : G::LoadTranslation('ID_NOT_FINISHED'));
- $aFields['FINISH'] = ($aDelegation['DEL_FINISH_DATE'] != null ? $aDelegation['DEL_FINISH_DATE'] : G::LoadTranslation('ID_NOT_FINISHED'));
- $aFields['DURATION'] = ($aDelegation['DEL_FINISH_DATE'] != null ? (int) ($iDiff / 3600) . ' ' . ((int) ($iDiff / 3600) == 1 ? G::LoadTranslation('ID_HOUR') : G::LoadTranslation('ID_HOURS')) . ' ' . (int) (($iDiff % 3600) / 60) . ' ' . ((int) (($iDiff % 3600) / 60) == 1 ? G::LoadTranslation('ID_MINUTE') : G::LoadTranslation('ID_MINUTES')) . ' ' . (int) (($iDiff % 3600) % 60) . ' ' . ((int) (($iDiff % 3600) % 60) == 1 ? G::LoadTranslation('ID_SECOND') : G::LoadTranslation('ID_SECONDS')) : G::LoadTranslation('ID_NOT_FINISHED'));
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_TaskInformation', '', $aFields);
- G::RenderPage('publish', 'raw');
- break;
- case 'showTaskDetails':
- require_once 'classes/model/AppDelegation.php';
- require_once 'classes/model/Task.php';
- require_once 'classes/model/Users.php';
- $oTask = new Task();
- $aRow = $oTask->load($_POST['sTaskUID']);
- $sTitle = $aRow['TAS_TITLE'];
- $oCriteria = new Criteria('workflow');
- $oCriteria->addSelectColumn(UsersPeer::USR_UID);
- $oCriteria->addSelectColumn(UsersPeer::USR_FIRSTNAME);
- $oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME);
- $oCriteria->addSelectColumn(AppDelegationPeer::DEL_INIT_DATE);
- $oCriteria->addSelectColumn(AppDelegationPeer::DEL_TASK_DUE_DATE);
- $oCriteria->addSelectColumn(AppDelegationPeer::DEL_FINISH_DATE);
- $oCriteria->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN);
- $oCriteria->add(AppDelegationPeer::APP_UID, $_SESSION['APPLICATION']);
- $oCriteria->add(AppDelegationPeer::TAS_UID, $_POST['sTaskUID']);
- $oCriteria->addDescendingOrderByColumn(AppDelegationPeer::DEL_INDEX);
- $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
- $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
- $oDataset->next();
- $aRow = $oDataset->getRow();
- $iDiff = strtotime($aRow['DEL_FINISH_DATE']) - strtotime($aRow['DEL_INIT_DATE']);
- $aFields = array();
- $aFields['TASK'] = $sTitle;
- $aFields['USER'] = ($aRow['USR_UID'] != null ? $aRow['USR_FIRSTNAME'] . ' ' . $aRow['USR_LASTNAME'] : G::LoadTranslation('ID_NONE'));
- $aFields['INIT_DATE'] = ($aRow['DEL_INIT_DATE'] != null ? $aRow['DEL_INIT_DATE'] : G::LoadTranslation('ID_CASE_NOT_YET_STARTED'));
- $aFields['DUE_DATE'] = ($aRow['DEL_TASK_DUE_DATE'] != null ? $aRow['DEL_TASK_DUE_DATE'] : G::LoadTranslation('ID_CASE_NOT_YET_STARTED'));
- $aFields['FINISH'] = ($aRow['DEL_FINISH_DATE'] != null ? $aRow['DEL_FINISH_DATE'] : G::LoadTranslation('ID_NOT_FINISHED'));
- $aFields['DURATION'] = ($aRow['DEL_FINISH_DATE'] != null ? (int) ($iDiff / 3600) . ' ' . ((int) ($iDiff / 3600) == 1 ? G::LoadTranslation('ID_HOUR') : G::LoadTranslation('ID_HOURS')) . ' ' . (int) (($iDiff % 3600) / 60) . ' ' . ((int) (($iDiff % 3600) / 60) == 1 ? G::LoadTranslation('ID_MINUTE') : G::LoadTranslation('ID_MINUTES')) . ' ' . (int) (($iDiff % 3600) % 60) . ' ' . ((int) (($iDiff % 3600) % 60) == 1 ? G::LoadTranslation('ID_SECOND') : G::LoadTranslation('ID_SECONDS')) : G::LoadTranslation('ID_NOT_FINISHED'));
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_TaskDetails', '', $aFields);
- G::RenderPage('publish', 'raw');
- break;
- case 'showUsers':
- switch($_POST['TAS_ASSIGN_TYPE']) {
- case 'BALANCED':
- G::LoadClass('user');
- $oUser = new User(new DBConnection());
- $oUser->load($_POST['USR_UID']);
- echo $oUser->Fields['USR_FIRSTNAME'] . ' ' . $oUser->Fields['USR_LASTNAME'] . '';
- break;
- case 'MANUAL':
- $sAux = '';
- echo $sAux;
- break;
- case 'EVALUATE':
- G::LoadClass('application');
- $oApplication = new Application(new DBConnection());
- $oApplication->load($_SESSION['APPLICATION']);
- $sUser = '';
- if($_POST['TAS_ASSIGN_VARIABLE'] != '') {
- if(isset($oApplication->Fields['APP_DATA'][str_replace('@@', '', $_POST['TAS_ASSIGN_VARIABLE'])])) {
- $sUser = $oApplication->Fields['APP_DATA'][str_replace('@@', '', $_POST['TAS_ASSIGN_VARIABLE'])];
- }
- }
- if($sUser != '') {
- G::LoadClass('user');
- $oUser = new User(new DBConnection());
- $oUser->load($sUser);
- echo $oUser->Fields['USR_FIRSTNAME'] . ' ' . $oUser->Fields['USR_LASTNAME'] . '';
- } else {
- echo 'Error: ' . $_POST['TAS_ASSIGN_VARIABLE'] . ' ' . G::LoadTranslation('ID_EMPTY');
- echo '';
- }
- break;
- case 'SELFSERVICE':
- //Next release
- break;
- }
- break;
-
- case 'cancelCase':
- $oCase = new Cases();
- $multiple = false;
-
- if( isset($_POST['APP_UID']) && isset($_POST['DEL_INDEX']) ) {
- $APP_UID = $_POST['APP_UID'];
- $DEL_INDEX = $_POST['DEL_INDEX'];
-
- $appUids = explode(',', $APP_UID);
- $delIndexes = explode(',', $DEL_INDEX);
- if( count($appUids) > 1 && count($delIndexes) > 1 )
- $multiple = true;
- } else if( isset($_POST['sApplicationUID']) && isset($_POST['iIndex']) ){
- $APP_UID = $_POST['sApplicationUID'];
- $DEL_INDEX = $_POST['iIndex'];
+if (isset($_POST['showWindow'])) {
+ if ($_POST['showWindow'] == 'steps') {
+ $fn = 'showSteps();';
+ } elseif ($_POST['showWindow'] == 'information') {
+ $fn = 'showInformation();';
+ } elseif ($_POST['showWindow'] == 'actions') {
+ $fn = 'showActions();';
+ } elseif($_POST['showWindow'] == 'false') {
+ $fn = '';
} else {
- $APP_UID = $_SESSION['APPLICATION'];
- $DEL_INDEX = $_SESSION['INDEX'];
- }
+ if ($_POST['showWindow'] != '') {
+ $fn = false;
+ }
+ }
+ $_SESSION['showCasesWindow'] = $fn;
+}
- if( $multiple ) {
- foreach($appUids as $i=>$appUid)
- $oCase->cancelCase($appUid, $delIndexes[$i], $_SESSION['USER_LOGGED']);
- } else
- $oCase->cancelCase($APP_UID, $DEL_INDEX, $_SESSION['USER_LOGGED']);
- break;
+if (!isset($_POST['action'])) {
+ $_POST['action'] = '';
+}
- case 'reactivateCase':
- $sApplicationUID = isset($_POST['sApplicationUID']) ? $_POST['sApplicationUID'] : $_SESSION['APPLICATION'];
- $iIndex = (isset($_POST['sApplicationUID'])) ? $_POST['iIndex'] : $_SESSION['INDEX'];
- $oCase = new Cases();
- $oCase->reactivateCase($sApplicationUID, $iIndex, $_SESSION['USER_LOGGED']);
- break;
- case 'showPauseCaseInput':
- //echo '';
- $aFields = Array();
- $G_PUBLISH = new Publisher();
-
- $aFields['TIME_STAMP'] = G::getformatedDate(date('Y-m-d'), 'M d, yyyy', SYS_LANG);
-
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_UnpauseDateInput', '', $aFields);
- G::RenderPage('publish', 'raw');
- break;
-
- case 'pauseCase':
- $unpauseDate = $_POST['unpausedate'];
- $oCase = new Cases();
- if( isset($_POST['APP_UID']) && isset($_POST['DEL_INDEX']) ) {
- $APP_UID = $_POST['APP_UID'];
- $DEL_INDEX = $_POST['DEL_INDEX'];
- } else if( isset($_POST['sApplicationUID']) && isset($_POST['iIndex']) ){
- $APP_UID = $_POST['sApplicationUID'];
- $DEL_INDEX = $_POST['iIndex'];
- } else {
- $APP_UID = $_SESSION['APPLICATION'];
- $DEL_INDEX = $_SESSION['INDEX'];
- }
+switch (($_POST['action'])?$_POST['action']:$_REQUEST['action']) {
+ case 'steps':
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('view', 'cases/cases_StepsTree');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'information':
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('view', 'cases/cases_InformationTree');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'actions':
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('view', 'cases/cases_ActionsTree');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showProcessMap':
+ $oTemplatePower = new TemplatePower(PATH_TPL . 'processes/processes_Map.html');
+ $oTemplatePower->prepare();
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('template', '', '', '', $oTemplatePower);
+ $oHeadPublisher = & headPublisher::getSingleton();
+ $oHeadPublisher->addScriptCode('
+ var pb=leimnud.dom.capture("tag.body 0");
+ Pm=new processmap();
- $oCase->pauseCase($APP_UID, $DEL_INDEX, $_SESSION['USER_LOGGED'], $unpauseDate);
- break;
+ var params = "{\"uid\":\"' . $_SESSION['PROCESS'] . '\",\"mode\":false,\"ct\":false}";
+ // maximun x and y position
+ var xPos = 0;
+ var yPos = 0;
- case 'unpauseCase':
- $sApplicationUID = (isset($_POST['sApplicationUID'])) ? $_POST['sApplicationUID'] : $_SESSION['APPLICATION'];
- $iIndex = (isset($_POST['sApplicationUID'])) ? $_POST['iIndex'] : $_SESSION['INDEX'];
- $oCase = new Cases();
- $oCase->unpauseCase($sApplicationUID, $iIndex, $_SESSION['USER_LOGGED']);
- break;
- case 'deleteCase':
- $oCase = new Cases();
- $sApplicationUID = (isset($_POST['sApplicationUID'])) ? $_POST['sApplicationUID'] : $_SESSION['APPLICATION'];
- $oCase->removeCase($sApplicationUID);
- break;
- case 'view_reassignCase':
- G::LoadClass('groups');
- G::LoadClass('tasks');
+ //obtaining the processmap object for the current process
+ var oRPC = new leimnud.module.rpc.xmlhttp({
+ url : "../processes/processes_Ajax",
+ async : false,
+ method: "POST",
+ args : "action=load&data="+params
+ });
+
+ // make the ajax call
+ oRPC.make();
+ var response = eval(\'(\' + oRPC.xmlhttp.responseText + \')\');
+ //alert(response);
- $oTasks = new Tasks();
- $aAux = $oTasks->getGroupsOfTask($_SESSION['TASK'], 1);
- $row = array();
+ for (var i in response) {
+ if (i==\'task\') {
+ elements = response[i];
+ for (var j in elements) {
+ if (elements[j].uid!=undefined) {
+ if (elements[j].position.x > xPos) {
+ xPos = elements[j].position.x;
+ }
+ if (elements[j].position.y > yPos) {
+ yPos = elements[j].position.y;
+ }
+ }
+ }
+ }
+ }
- $groups = new Groups();
- foreach($aAux as $aGroup) {
- $aUsers = $groups->getUsersOfGroup($aGroup['GRP_UID']);
- foreach($aUsers as $aUser) {
- if($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
- $row[] = $aUser['USR_UID'];
- }
- }
- }
+ Pm.options = {
+ target : "pm_target",
+ dataServer: "../processes/processes_Ajax",
+ uid : "' . $_SESSION['PROCESS'] . '",
+ lang : "' . SYS_LANG . '",
+ theme : "processmaker",
+ size : {w:xPos+200,h:yPos+150},
+ images_dir: "/jscore/processmap/core/images/",
+ rw : false,
+ hideMenu : false
+ }
+ Pm.make();');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showLeyends':
+ $aFields = array();
+ $aFields['sLabel1'] = G::LoadTranslation('ID_TASK_IN_PROGRESS');
+ $aFields['sLabel2'] = G::LoadTranslation('ID_COMPLETED_TASK');
+ $aFields['sLabel3'] = G::LoadTranslation('ID_PENDING_TASK');
+ $aFields['sLabel4'] = G::LoadTranslation('ID_PARALLEL_TASK');
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('smarty', 'cases/cases_Leyends', '', '', $aFields);
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showProcessInformation':
+ require_once 'classes/model/Process.php';
+ $oProcess = new Process();
+ $aFields = $oProcess->load($_SESSION['PROCESS']);
+ require_once 'classes/model/Users.php';
+ $oUser = new Users();
+ try {
+ $aUser = $oUser->load($aFields['PRO_CREATE_USER']);
+ $aFields['PRO_AUTHOR'] = $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'];
+ } catch (Exception $oError) {
+ $aFields['PRO_AUTHOR'] = '(USER DELETED)';
+ }
+ $aFields['PRO_CREATE_DATE'] = date('F j, Y', strtotime($aFields['PRO_CREATE_DATE']));
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_ProcessInformation', '', $aFields);
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showTransferHistory':
+ G::LoadClass("case");
+ $c = Cases::getTransferHistoryCriteria($_SESSION['APPLICATION']);
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_TransferHistory', $c, array());
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showDynaformListHistory':
+ require_once 'classes/model/AppHistory.php';
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('view', 'cases/cases_DynaformHistory');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showTaskInformation':
+ require_once 'classes/model/AppDelegation.php';
+ require_once 'classes/model/Task.php';
+ $oTask = new Task();
+ $aFields = $oTask->load($_SESSION['TASK']);
+ $oCriteria = new Criteria('workflow');
+ $oCriteria->add(AppDelegationPeer::APP_UID, $_SESSION['APPLICATION']);
+ $oCriteria->add(AppDelegationPeer::DEL_INDEX, $_SESSION['INDEX']);
+ $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
+ $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $oDataset->next();
+ $aDelegation = $oDataset->getRow();
+ $iDiff = strtotime($aDelegation['DEL_FINISH_DATE']) - strtotime($aDelegation['DEL_INIT_DATE']);
+ $aFields['INIT_DATE'] = ($aDelegation['DEL_INIT_DATE'] != null ?
+ $aDelegation['DEL_INIT_DATE'] :
+ G::LoadTranslation('ID_CASE_NOT_YET_STARTED'));
+ $aFields['DUE_DATE'] = ($aDelegation['DEL_TASK_DUE_DATE'] != null ?
+ $aDelegation['DEL_TASK_DUE_DATE'] :
+ G::LoadTranslation('ID_NOT_FINISHED'));
+ $aFields['FINISH'] = ($aDelegation['DEL_FINISH_DATE'] != null ?
+ $aDelegation['DEL_FINISH_DATE'] :
+ G::LoadTranslation('ID_NOT_FINISHED'));
+ $aFields['DURATION'] = ($aDelegation['DEL_FINISH_DATE'] != null ?
+ (int) ($iDiff / 3600) . ' ' . ((int) ($iDiff / 3600) == 1 ?
+ G::LoadTranslation('ID_HOUR') :
+ G::LoadTranslation('ID_HOURS')) . ' ' . (int) (($iDiff % 3600) / 60) . ' ' .
+ ((int) (($iDiff % 3600) / 60) == 1 ?
+ G::LoadTranslation('ID_MINUTE') : G::LoadTranslation('ID_MINUTES')) .
+ ' ' . (int) (($iDiff % 3600) % 60) . ' ' .
+ ((int) (($iDiff % 3600) % 60) == 1 ?
+ G::LoadTranslation('ID_SECOND') : G::LoadTranslation('ID_SECONDS')) :
+ G::LoadTranslation('ID_NOT_FINISHED'));
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_TaskInformation', '', $aFields);
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showTaskDetails':
+ require_once 'classes/model/AppDelegation.php';
+ require_once 'classes/model/Task.php';
+ require_once 'classes/model/Users.php';
+ $oTask = new Task();
+ $aRow = $oTask->load($_POST['sTaskUID']);
+ $sTitle = $aRow['TAS_TITLE'];
+ $oCriteria = new Criteria('workflow');
+ $oCriteria->addSelectColumn(UsersPeer::USR_UID);
+ $oCriteria->addSelectColumn(UsersPeer::USR_FIRSTNAME);
+ $oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME);
+ $oCriteria->addSelectColumn(AppDelegationPeer::DEL_INIT_DATE);
+ $oCriteria->addSelectColumn(AppDelegationPeer::DEL_TASK_DUE_DATE);
+ $oCriteria->addSelectColumn(AppDelegationPeer::DEL_FINISH_DATE);
+ $oCriteria->addJoin(AppDelegationPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN);
+ $oCriteria->add(AppDelegationPeer::APP_UID, $_SESSION['APPLICATION']);
+ $oCriteria->add(AppDelegationPeer::TAS_UID, $_POST['sTaskUID']);
+ $oCriteria->addDescendingOrderByColumn(AppDelegationPeer::DEL_INDEX);
+ $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
+ $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $oDataset->next();
+ $aRow = $oDataset->getRow();
+ $iDiff = strtotime($aRow['DEL_FINISH_DATE']) - strtotime($aRow['DEL_INIT_DATE']);
+ $aFields = array();
+ $aFields['TASK'] = $sTitle;
+ $aFields['USER'] = ($aRow['USR_UID'] != null ?
+ $aRow['USR_FIRSTNAME'] . ' ' . $aRow['USR_LASTNAME'] :
+ G::LoadTranslation('ID_NONE'));
+ $aFields['INIT_DATE'] = ($aRow['DEL_INIT_DATE'] != null ?
+ $aRow['DEL_INIT_DATE'] :
+ G::LoadTranslation('ID_CASE_NOT_YET_STARTED'));
+ $aFields['DUE_DATE'] = ($aRow['DEL_TASK_DUE_DATE'] != null ?
+ $aRow['DEL_TASK_DUE_DATE'] :
+ G::LoadTranslation('ID_CASE_NOT_YET_STARTED'));
+ $aFields['FINISH'] = ($aRow['DEL_FINISH_DATE'] != null ?
+ $aRow['DEL_FINISH_DATE'] :
+ G::LoadTranslation('ID_NOT_FINISHED'));
+ $aFields['DURATION'] = ($aRow['DEL_FINISH_DATE'] != null ?
+ (int) ($iDiff / 3600) . ' ' . ((int) ($iDiff / 3600) == 1 ?
+ G::LoadTranslation('ID_HOUR') :
+ G::LoadTranslation('ID_HOURS')) . ' ' .
+ (int) (($iDiff % 3600) / 60) . ' ' .
+ ((int) (($iDiff % 3600) / 60) == 1 ?
+ G::LoadTranslation('ID_MINUTE') :
+ G::LoadTranslation('ID_MINUTES')) . ' ' .
+ (int) (($iDiff % 3600) % 60) . ' ' .
+ ((int) (($iDiff % 3600) % 60) == 1 ?
+ G::LoadTranslation('ID_SECOND') :
+ G::LoadTranslation('ID_SECONDS')) :
+ G::LoadTranslation('ID_NOT_FINISHED'));
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_TaskDetails', '', $aFields);
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showUsers':
+ switch ($_POST['TAS_ASSIGN_TYPE']) {
+ // switch verify $_POST['TAS_ASSIGN_TYPE']
+ case 'BALANCED':
+ G::LoadClass('user');
+ $oUser = new User(new DBConnection());
+ $oUser->load($_POST['USR_UID']);
+ echo $oUser->Fields['USR_FIRSTNAME'] . ' ' . $oUser->Fields['USR_LASTNAME'] .
+ '';
+ break;
+ case 'MANUAL':
+ $sAux = '';
+ echo $sAux;
+ break;
+ case 'EVALUATE':
+ G::LoadClass('application');
+ $oApplication = new Application(new DBConnection());
+ $oApplication->load($_SESSION['APPLICATION']);
+ $sUser = '';
+ if ($_POST['TAS_ASSIGN_VARIABLE'] != '') {
+ if (isset($oApplication->Fields['APP_DATA'][str_replace('@@','',$_POST['TAS_ASSIGN_VARIABLE'])])) {
+ $sUser = $oApplication->Fields['APP_DATA'][str_replace('@@','',$_POST['TAS_ASSIGN_VARIABLE'])];
+ }
+ }
+ if ($sUser != '') {
+ G::LoadClass('user');
+ $oUser = new User(new DBConnection());
+ $oUser->load($sUser);
+ echo $oUser->Fields['USR_FIRSTNAME'] . ' ' . $oUser->Fields['USR_LASTNAME'] .
+ '';
+ } else {
+ echo 'Error: ' . $_POST['TAS_ASSIGN_VARIABLE'] . ' ' .
+ G::LoadTranslation('ID_EMPTY');
+ echo '';
+ }
+ break;
+ case 'SELFSERVICE':
+ //Next release
+ break;
+ }
+ break;
+ case 'cancelCase':
+ $oCase = new Cases();
+ $multiple = false;
- require_once 'classes/model/Users.php';
- $c = new Criteria('workflow');
- $c->addSelectColumn(UsersPeer::USR_UID);
- $c->addSelectColumn(UsersPeer::USR_FIRSTNAME);
- $c->addSelectColumn(UsersPeer::USR_LASTNAME);
- $c->add(UsersPeer::USR_UID, $row, Criteria::IN);
+ if (isset($_POST['APP_UID']) && isset($_POST['DEL_INDEX'])) {
+ $APP_UID = $_POST['APP_UID'];
+ $DEL_INDEX = $_POST['DEL_INDEX'];
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'processes/processes_viewreassignCase', $c);
- G::RenderPage('publish', 'raw');
- break;
- case 'reassignCase':
- $cases = new Cases();
- $cases->reassignCase($_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['USER_LOGGED'], $_POST['USR_UID'], $_POST['THETYPE']);
- break;
- case 'toRevisePanel':
- $_GET['APP_UID'] = $_POST['APP_UID'];
- $_GET['DEL_INDEX'] = $_POST['DEL_INDEX'];
- $G_PUBLISH = new Publisher();
+ $appUids = explode(',', $APP_UID);
+ $delIndexes = explode(',', $DEL_INDEX);
+ if (count($appUids) > 1 && count($delIndexes) > 1) {
+ $multiple = true;
+ }
+ } elseif (isset($_POST['sApplicationUID']) && isset($_POST['iIndex'])) {
+ $APP_UID = $_POST['sApplicationUID'];
+ $DEL_INDEX = $_POST['iIndex'];
+ } else {
+ $APP_UID = $_SESSION['APPLICATION'];
+ $DEL_INDEX = $_SESSION['INDEX'];
+ }
- echo "";
-// $G_PUBLISH->AddContent( 'smarty', 'cases/cases_toRevise' );
-// $G_PUBLISH->AddContent('smarty', 'cases/cases_toReviseIn', '', '', array());
- G::RenderPage('publish', 'raw');
- break;
- case 'showUploadedDocuments':
- $oCase = new Cases();
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_AllInputdocsList', $oCase->getAllUploadedDocumentsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']));
- G::RenderPage('publish', 'raw');
- break;
- case 'showUploadedDocument':
- require_once 'classes/model/AppDocument.php';
- require_once 'classes/model/AppDelegation.php';
- require_once 'classes/model/InputDocument.php';
- require_once 'classes/model/Users.php';
- $oAppDocument = new AppDocument();
- $oAppDocument->Fields = $oAppDocument->load($_POST['APP_DOC_UID']);
- $oInputDocument = new InputDocument();
- if($oAppDocument->Fields['DOC_UID'] != - 1) {
- $Fields = $oInputDocument->load($oAppDocument->Fields['DOC_UID']);
- } else {
- $Fields = array('INP_DOC_FORM_NEEDED'=>'', 'FILENAME'=>$oAppDocument->Fields['APP_DOC_FILENAME']);
- }
- $oCriteria = new Criteria('workflow');
- $oCriteria->add(AppDelegationPeer::APP_UID, $oAppDocument->Fields['APP_UID']);
- $oCriteria->add(AppDelegationPeer::DEL_INDEX, $oAppDocument->Fields['DEL_INDEX']);
- $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
- $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
- $oDataset->next();
- $aRow = $oDataset->getRow();
- $oTask = new Task();
- try {
- $aTask = $oTask->load($aRow['TAS_UID']);
- $Fields['ORIGIN'] = $aTask['TAS_TITLE'];
- $oAppDocument->Fields['VIEW'] = G::LoadTranslation('ID_OPEN');
- } catch ( Exception $oException ) {
- $Fields['ORIGIN'] = '(TASK DELETED)';
- }
+ if ($multiple) {
+ foreach ($appUids as $i => $appUid) {
+ $oCase->cancelCase($appUid, $delIndexes[$i], $_SESSION['USER_LOGGED']);
+ }
+ } else {
+ $oCase->cancelCase($APP_UID, $DEL_INDEX, $_SESSION['USER_LOGGED']);
+ }
+ break;
+ case 'reactivateCase':
+ $sApplicationUID = isset($_POST['sApplicationUID']) ? $_POST['sApplicationUID'] : $_SESSION['APPLICATION'];
+ $iIndex = (isset($_POST['sApplicationUID'])) ? $_POST['iIndex'] : $_SESSION['INDEX'];
+ $oCase = new Cases();
+ $oCase->reactivateCase($sApplicationUID, $iIndex, $_SESSION['USER_LOGGED']);
+ break;
+ case 'showPauseCaseInput':
+ //echo '';
+ $aFields = Array();
+ $G_PUBLISH = new Publisher();
+ $aFields['TIME_STAMP'] = G::getformatedDate(date('Y-m-d'), 'M d, yyyy', SYS_LANG);
- try {
- $oUser = new Users();
- $aUser = $oUser->load($oAppDocument->Fields['USR_UID']);
- $Fields['CREATOR'] = $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'];
- } catch ( Exception $e ) {
- $Fields['CREATOR'] = '***';
- }
- switch($Fields['INP_DOC_FORM_NEEDED']) {
- case 'REAL':
- $sXmlForm = 'cases/cases_ViewAnyInputDocument2';
- break;
- case 'VIRTUAL':
- $sXmlForm = 'cases/cases_ViewAnyInputDocument1';
- break;
- case 'VREAL':
- $sXmlForm = 'cases/cases_ViewAnyInputDocument3';
- break;
- default:
- $sXmlForm = 'cases/cases_ViewAnyInputDocument';
- break;
- }
- //$oAppDocument->Fields['VIEW'] = G::LoadTranslation('ID_OPEN');
- $oAppDocument->Fields['FILE'] = 'cases_ShowDocument?a=' . $_POST['APP_DOC_UID'] . '&r=' . rand();
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('xmlform', 'xmlform', $sXmlForm, '', G::array_merges($Fields, $oAppDocument->Fields), '');
- G::RenderPage('publish', 'raw');
- break;
-
- case 'showGeneratedDocuments':
- global $G_PUBLISH;
- $oCase = new Cases();
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_AllOutputdocsList', $oCase->getAllGeneratedDocumentsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']));
-
- G::RenderPage('publish', 'raw');
- break;
-
- case 'uploadDocumentGrid_Ajax':
- G::LoadClass('case');
- G::LoadClass("BasePeer" );
- global $G_PUBLISH;
-
- $oCase = new Cases();
- $aProcesses = Array();
-
- $G_PUBLISH = new Publisher();
- $c = $oCase->getAllUploadedDocumentsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']);
-
- if ( $c->getDbName() == 'dbarray' ) {
- $rs = ArrayBasePeer::doSelectRs ($c);
- }
- else {
- $rs = GulliverBasePeer::doSelectRs ($c);
- }
-
- $rs->setFetchmode (ResultSet::FETCHMODE_ASSOC);
- $rs->next();
-
- $totalCount = 0;
-
- for ($j=0;$j< $rs->getRecordCount() ;$j++) {
- $result = $rs->getRow();
- $aProcesses[] = $result;
- $rs->next();
- $totalCount++;
- }
-
- $newDir = '/tmp/test/directory';
- $r = G::verifyPath ( $newDir );
- $r->data = $aProcesses;
- $r->totalCount = $totalCount;
-
- echo G::json_encode($r);
- break;
-
- case 'generateDocumentGrid_Ajax':
+ $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_UnpauseDateInput', '', $aFields);
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'pauseCase':
+ $unpauseDate = $_POST['unpausedate'];
+ $oCase = new Cases();
+ if (isset($_POST['APP_UID']) && isset($_POST['DEL_INDEX'])) {
+ $APP_UID = $_POST['APP_UID'];
+ $DEL_INDEX = $_POST['DEL_INDEX'];
+ } elseif (isset($_POST['sApplicationUID']) && isset($_POST['iIndex'])) {
+ $APP_UID = $_POST['sApplicationUID'];
+ $DEL_INDEX = $_POST['iIndex'];
+ } else {
+ $APP_UID = $_SESSION['APPLICATION'];
+ $DEL_INDEX = $_SESSION['INDEX'];
+ }
- G::LoadClass('case');
- G::LoadClass("BasePeer" );
- G::LoadClass ( 'configuration' );
- global $G_PUBLISH;
-
- $oCase = new Cases();
- $aProcesses = Array();
-
- $G_PUBLISH = new Publisher();
- $c = $oCase->getAllGeneratedDocumentsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']);
-
- if ( $c->getDbName() == 'dbarray' ){
- $rs = ArrayBasePeer::doSelectRs ($c);
- }
- else {
- $rs = GulliverBasePeer::doSelectRs ($c);
- }
-
- $rs->setFetchmode (ResultSet::FETCHMODE_ASSOC);
- $rs->next();
-
- $totalCount = 0;
-
- for ($j=0;$j< $rs->getRecordCount() ;$j++) {
- $result = $rs->getRow();
- $result["FILEDOCEXIST"] = ($result["FILEDOC"]);
- $result["FILEPDFEXIST"] = ($result["FILEPDF"]);
- $aProcesses[] = $result;
-
- $rs->next();
- $totalCount++;
- }
+ $oCase->pauseCase($APP_UID, $DEL_INDEX, $_SESSION['USER_LOGGED'], $unpauseDate);
+ break;
+ case 'unpauseCase':
+ $sApplicationUID = (isset($_POST['sApplicationUID'])) ? $_POST['sApplicationUID'] : $_SESSION['APPLICATION'];
+ $iIndex = (isset($_POST['sApplicationUID'])) ? $_POST['iIndex'] : $_SESSION['INDEX'];
+ $oCase = new Cases();
+ $oCase->unpauseCase($sApplicationUID, $iIndex, $_SESSION['USER_LOGGED']);
+ break;
+ case 'deleteCase':
+ $oCase = new Cases();
+ $sApplicationUID = (isset($_POST['sApplicationUID'])) ? $_POST['sApplicationUID'] : $_SESSION['APPLICATION'];
+ $oCase->removeCase($sApplicationUID);
+ break;
+ case 'view_reassignCase':
+ G::LoadClass('groups');
+ G::LoadClass('tasks');
- //!dateFormat
- $conf = new Configurations();
-
- try {
- $generalConfCasesList = $conf->getConfiguration('ENVIRONMENT_SETTINGS', '' );
- }
- catch (Exception $e) {
- $generalConfCasesList = array();
- }
+ $oTasks = new Tasks();
+ $aAux = $oTasks->getGroupsOfTask($_SESSION['TASK'], 1);
+ $row = array();
- $dateFormat = "";
+ $groups = new Groups();
+ foreach ($aAux as $aGroup) {
+ $aUsers = $groups->getUsersOfGroup($aGroup['GRP_UID']);
+ foreach ($aUsers as $aUser) {
+ if ($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
+ $row[] = $aUser['USR_UID'];
+ }
+ }
+ }
- if (isset($generalConfCasesList['casesListDateFormat'])&&!empty($generalConfCasesList['casesListDateFormat'])) {
- $dateFormat = $generalConfCasesList['casesListDateFormat'];
- }
+ $aAux = $oTasks->getUsersOfTask($_SESSION['TASK'], 1);
+ foreach ($aAux as $aUser) {
+ if ($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
+ $row[] = $aUser['USR_UID'];
+ }
+ }
- $newDir = '/tmp/test/directory';
- $r = G::verifyPath ( $newDir );
- $r->data = $aProcesses;
- $r->totalCount = $totalCount;
- $r->dataFormat = $dateFormat;
+ require_once 'classes/model/Users.php';
+ $c = new Criteria('workflow');
+ $c->addSelectColumn(UsersPeer::USR_UID);
+ $c->addSelectColumn(UsersPeer::USR_FIRSTNAME);
+ $c->addSelectColumn(UsersPeer::USR_LASTNAME);
+ $c->add(UsersPeer::USR_UID, $row, Criteria::IN);
- echo G::json_encode($r);
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('propeltable', 'paged-table', 'processes/processes_viewreassignCase', $c);
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'reassignCase':
+ $cases = new Cases();
+ $cases->reassignCase($_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['USER_LOGGED'],
+ $_POST['USR_UID'], $_POST['THETYPE']);
+ break;
+ case 'toRevisePanel':
+ $_GET['APP_UID'] = $_POST['APP_UID'];
+ $_GET['DEL_INDEX'] = $_POST['DEL_INDEX'];
+ $G_PUBLISH = new Publisher();
- break;
-
- case 'showGeneratedDocument' :
- require_once 'classes/model/AppDocument.php';
- require_once 'classes/model/AppDelegation.php';
- $oAppDocument = new AppDocument();
- $aFields = $oAppDocument->load($_POST['APP_DOC_UID']);
- require_once 'classes/model/OutputDocument.php';
- $oOutputDocument = new OutputDocument();
- $aOD = $oOutputDocument->load($aFields['DOC_UID']);
- $oCriteria = new Criteria('workflow');
- $oCriteria->add(AppDelegationPeer::APP_UID, $aFields['APP_UID']);
- $oCriteria->add(AppDelegationPeer::DEL_INDEX, $aFields['DEL_INDEX']);
- $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
- $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
- $oDataset->next();
- $aRow = $oDataset->getRow();
- $oTask = new Task();
- $aTask = $oTask->load($aRow['TAS_UID']);
- $aFields['ORIGIN'] = $aTask['TAS_TITLE'];
- require_once 'classes/model/Users.php';
- $oUser = new Users();
- $aUser = $oUser->load($aFields['USR_UID']);
- $aFields['CREATOR'] = $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'];
- $aFields['VIEW'] = G::LoadTranslation('ID_OPEN');
- $aFields['FILE1'] = 'cases_ShowOutputDocument?a=' . $aFields['APP_DOC_UID'] . '&ext=doc&random=' . rand();
- $aFields['FILE2'] = 'cases_ShowOutputDocument?a=' . $aFields['APP_DOC_UID'] . '&ext=pdf&random=' . rand();
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_ViewAnyOutputDocument', '', G::array_merges($aOD, $aFields), '');
- G::RenderPage('publish', 'raw');
- break;
+ echo "";
+ // $G_PUBLISH->AddContent( 'smarty', 'cases/cases_toRevise' );
+ // $G_PUBLISH->AddContent('smarty', 'cases/cases_toReviseIn', '', '', array());
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showUploadedDocuments':
+ $oCase = new Cases();
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_AllInputdocsList',
+ $oCase->getAllUploadedDocumentsCriteria($_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']));
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showUploadedDocument':
+ require_once 'classes/model/AppDocument.php';
+ require_once 'classes/model/AppDelegation.php';
+ require_once 'classes/model/InputDocument.php';
+ require_once 'classes/model/Users.php';
+ $oAppDocument = new AppDocument();
+ $oAppDocument->Fields = $oAppDocument->load($_POST['APP_DOC_UID']);
+ $oInputDocument = new InputDocument();
+ if ($oAppDocument->Fields['DOC_UID'] != - 1) {
+ $Fields = $oInputDocument->load($oAppDocument->Fields['DOC_UID']);
+ } else {
+ $Fields = array('INP_DOC_FORM_NEEDED'=>'', 'FILENAME'=>$oAppDocument->Fields['APP_DOC_FILENAME']);
+ }
+ $oCriteria = new Criteria('workflow');
+ $oCriteria->add(AppDelegationPeer::APP_UID, $oAppDocument->Fields['APP_UID']);
+ $oCriteria->add(AppDelegationPeer::DEL_INDEX, $oAppDocument->Fields['DEL_INDEX']);
+ $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
+ $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $oDataset->next();
+ $aRow = $oDataset->getRow();
+ $oTask = new Task();
+ try {
+ $aTask = $oTask->load($aRow['TAS_UID']);
+ $Fields['ORIGIN'] = $aTask['TAS_TITLE'];
+ $oAppDocument->Fields['VIEW'] = G::LoadTranslation('ID_OPEN');
+ } catch ( Exception $oException ) {
+ $Fields['ORIGIN'] = '(TASK DELETED)';
+ }
- case 'showDynaformList':
- $oCase = new Cases();
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_AllDynaformsList', $oCase->getallDynaformsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']));
- G::RenderPage('publish', 'raw');
- break;
+ try {
+ $oUser = new Users();
+ $aUser = $oUser->load($oAppDocument->Fields['USR_UID']);
+ $Fields['CREATOR'] = $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'];
+ } catch (Exception $e) {
+ $Fields['CREATOR'] = '***';
+ }
+ switch ($Fields['INP_DOC_FORM_NEEDED']) {
+ // switch verify $Fields['INP_DOC_FORM_NEEDED']
+ case 'REAL':
+ $sXmlForm = 'cases/cases_ViewAnyInputDocument2';
+ break;
+ case 'VIRTUAL':
+ $sXmlForm = 'cases/cases_ViewAnyInputDocument1';
+ break;
+ case 'VREAL':
+ $sXmlForm = 'cases/cases_ViewAnyInputDocument3';
+ break;
+ default:
+ $sXmlForm = 'cases/cases_ViewAnyInputDocument';
+ break;
+ }
+ //$oAppDocument->Fields['VIEW'] = G::LoadTranslation('ID_OPEN');
+ $oAppDocument->Fields['FILE'] = 'cases_ShowDocument?a=' . $_POST['APP_DOC_UID'] . '&r=' . rand();
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', $sXmlForm, '',
+ G::array_merges($Fields, $oAppDocument->Fields), '');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showGeneratedDocuments':
+ global $G_PUBLISH;
+ $oCase = new Cases();
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'cases/cases_AllOutputdocsList',
+ $oCase->getAllGeneratedDocumentsCriteria( $_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']));
- case 'showDynaform':
- $G_PUBLISH = new Publisher();
- $oCase = new Cases();
- $Fields = $oCase->loadCase($_SESSION['APPLICATION']);
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = '';
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = '';
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = '#';
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = 'return false;';
- if(isset($_POST['DYN_UID']))
- $_SESSION['DYN_UID_PRINT'] = $_POST['DYN_UID'];
- else
- $_SESSION['DYN_UID_PRINT'] = $_REQUEST['DYN_UID'];
- if(!isset($_SESSION['CURRENT_DYN_UID'])) $_SESSION['CURRENT_DYN_UID'] = $_POST['DYN_UID']?$_POST['DYN_UID']:$_REQUEST['DYN_UID'];
- $G_PUBLISH->AddContent('dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_REQUEST['DYN_UID'], '', $Fields['APP_DATA'], '', '', 'view');
- G::RenderPage('publish', 'blank');
- break;
- case 'showDynaformHistory':
- $G_PUBLISH = new Publisher();
- $FieldsHistory=unserialize($_SESSION['HISTORY_DATA']);
- $Fields['APP_DATA'] = $FieldsHistory[$_POST['HISTORY_ID']];
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = '';
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = '';
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = '#';
- $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = 'return false;';
- $G_PUBLISH->AddContent('dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_POST['DYN_UID'], '', $Fields['APP_DATA'], '', '', 'view');
- G::RenderPage('publish', 'raw');
- break;
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'uploadDocumentGrid_Ajax':
+ G::LoadClass('case');
+ G::LoadClass("BasePeer" );
+ global $G_PUBLISH;
- case 'adhocAssignmentUsers':
- G::LoadClass('groups');
- G::LoadClass('tasks');
- $oTasks = new Tasks();
- $aAux = $oTasks->getGroupsOfTask($_SESSION['TASK'], 2);
- $aAdhocUsers = array();
- $oGroups = new Groups();
- foreach($aAux as $aGroup) {
- $aUsers = $oGroups->getUsersOfGroup($aGroup['GRP_UID']);
- foreach($aUsers as $aUser) {
- if($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
- $aAdhocUsers[] = $aUser['USR_UID'];
- }
- }
- }
- $aAux = $oTasks->getUsersOfTask($_SESSION['TASK'], 2);
- foreach($aAux as $aUser) {
- if($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
- $aAdhocUsers[] = $aUser['USR_UID'];
- }
- }
- require_once 'classes/model/Users.php';
- $oCriteria = new Criteria('workflow');
- $oCriteria->addSelectColumn(UsersPeer::USR_UID);
- $oCriteria->addSelectColumn(UsersPeer::USR_FIRSTNAME);
- $oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME);
- $oCriteria->add(UsersPeer::USR_UID, $aAdhocUsers, Criteria::IN);
+ $oCase = new Cases();
+ $aProcesses = Array();
+ $G_PUBLISH = new Publisher();
+ $c = $oCase->getAllUploadedDocumentsCriteria( $_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']);
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'processes/processes_viewreassignCase', $oCriteria, array('THETYPE'=>'ADHOC'));
- G::RenderPage('publish', 'raw');
- break;
+ if ($c->getDbName() == 'dbarray') {
+ $rs = ArrayBasePeer::doSelectRs ($c);
+ } else {
+ $rs = GulliverBasePeer::doSelectRs ($c);
+ }
- case 'showHistoryMessages':
- $oCase = new Cases();
- global $G_PUBLISH;
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_Messages', $oCase->getHistoryMessagesTracker($_SESSION['APPLICATION']));
- G::RenderPage('publish', 'raw');
- break;
+ $rs->setFetchmode (ResultSet::FETCHMODE_ASSOC);
+ $rs->next();
- case 'showHistoryMessage':
- $G_PUBLISH = new Publisher();
- $oCase = new Cases();
+ $totalCount = 0;
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_MessagesView', '', $oCase->getHistoryMessagesTrackerView($_POST['APP_UID'], $_POST['APP_MSG_UID']));
- G::RenderPage('publish', 'raw');
- break;
+ for ($j=0; $j< $rs->getRecordCount(); $j++) {
+ $result = $rs->getRow();
+ $aProcesses[] = $result;
+ $rs->next();
+ $totalCount++;
+ }
- case 'deleteUploadedDocument':
- require_once 'classes/model/AppDocument.php';
- $oAppDocument = new AppDocument();
- $oAppDocument->remove($_POST['DOC']);
- $oCase = new Cases();
- $oCase->getAllUploadedDocumentsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']);
- break;
+ $newDir = '/tmp/test/directory';
+ $r = G::verifyPath ( $newDir );
+ $r->data = $aProcesses;
+ $r->totalCount = $totalCount;
- case 'deleteGeneratedDocument':
- require_once 'classes/model/AppDocument.php';
- $oAppDocument = new AppDocument();
- $oAppDocument->remove($_POST['DOC']);
- $oCase = new Cases();
- $oCase->getAllGeneratedDocumentsCriteria($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['TASK'], $_SESSION['USER_LOGGED']);
- break;
+ echo G::json_encode($r);
+ break;
+ case 'generateDocumentGrid_Ajax':
+ G::LoadClass('case');
+ G::LoadClass("BasePeer" );
+ G::LoadClass ( 'configuration' );
+ global $G_PUBLISH;
+
+ $oCase = new Cases();
+ $aProcesses = Array();
+ $G_PUBLISH = new Publisher();
+ $c = $oCase->getAllGeneratedDocumentsCriteria( $_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']);
+
+ if ($c->getDbName() == 'dbarray') {
+ $rs = ArrayBasePeer::doSelectRs ($c);
+ } else {
+ $rs = GulliverBasePeer::doSelectRs ($c);
+ }
+
+ $rs->setFetchmode (ResultSet::FETCHMODE_ASSOC);
+ $rs->next();
+
+ $totalCount = 0;
+
+ for ($j=0; $j< $rs->getRecordCount(); $j++) {
+ $result = $rs->getRow();
+ $result["FILEDOCEXIST"] = ($result["FILEDOC"]);
+ $result["FILEPDFEXIST"] = ($result["FILEPDF"]);
+ $aProcesses[] = $result;
+
+ $rs->next();
+ $totalCount++;
+ }
+
+ //!dateFormat
+ $conf = new Configurations();
+
+ try {
+ $globaleneralConfCasesList = $conf->getConfiguration('ENVIRONMENT_SETTINGS', '' );
+ } catch (Exception $e) {
+ $generalConfCasesList = array();
+ }
+
+ $dateFormat = "";
+ $varFlag = isset($generalConfCasesList['casesListDateFormat']);
+ if ($varFlag &&!empty($generalConfCasesList['casesListDateFormat'])) {
+ $dateFormat = $generalConfCasesList['casesListDateFormat'];
+ }
+
+ $newDir = '/tmp/test/directory';
+ $r = G::verifyPath ( $newDir );
+ $r->data = $aProcesses;
+ $r->totalCount = $totalCount;
+ $r->dataFormat = $dateFormat;
+
+ echo G::json_encode($r);
+ break;
+ case 'showGeneratedDocument':
+ require_once 'classes/model/AppDocument.php';
+ require_once 'classes/model/AppDelegation.php';
+ $oAppDocument = new AppDocument();
+ $aFields = $oAppDocument->load($_POST['APP_DOC_UID']);
+ require_once 'classes/model/OutputDocument.php';
+ $oOutputDocument = new OutputDocument();
+ $aOD = $oOutputDocument->load($aFields['DOC_UID']);
+ $oCriteria = new Criteria('workflow');
+ $oCriteria->add(AppDelegationPeer::APP_UID, $aFields['APP_UID']);
+ $oCriteria->add(AppDelegationPeer::DEL_INDEX, $aFields['DEL_INDEX']);
+ $oDataset = AppDelegationPeer::doSelectRS($oCriteria);
+ $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $oDataset->next();
+ $aRow = $oDataset->getRow();
+ $oTask = new Task();
+ $aTask = $oTask->load($aRow['TAS_UID']);
+ $aFields['ORIGIN'] = $aTask['TAS_TITLE'];
+ require_once 'classes/model/Users.php';
+ $oUser = new Users();
+ $aUser = $oUser->load($aFields['USR_UID']);
+ $aFields['CREATOR'] = $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'];
+ $aFields['VIEW'] = G::LoadTranslation('ID_OPEN');
+ $aFields['FILE1'] = 'cases_ShowOutputDocument?a=' . $aFields['APP_DOC_UID'] . '&ext=doc&random=' . rand();
+ $aFields['FILE2'] = 'cases_ShowOutputDocument?a=' . $aFields['APP_DOC_UID'] . '&ext=pdf&random=' . rand();
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_ViewAnyOutputDocument', '',
+ G::array_merges($aOD, $aFields), '');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showDynaformList':
+ $oCase = new Cases();
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'cases/cases_AllDynaformsList',
+ $oCase->getallDynaformsCriteria( $_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']));
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showDynaform':
+ $G_PUBLISH = new Publisher();
+ $oCase = new Cases();
+ $Fields = $oCase->loadCase($_SESSION['APPLICATION']);
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = '';
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = '';
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = '#';
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = 'return false;';
+ if (isset($_POST['DYN_UID'])) {
+ $_SESSION['DYN_UID_PRINT'] = $_POST['DYN_UID'];
+ } else {
+ $_SESSION['DYN_UID_PRINT'] = $_REQUEST['DYN_UID'];
+ }
+ if (!isset($_SESSION['CURRENT_DYN_UID'])) {
+ $_SESSION['CURRENT_DYN_UID'] = $_POST['DYN_UID']?$_POST['DYN_UID']:$_REQUEST['DYN_UID'];
+ }
+ $G_PUBLISH->AddContent( 'dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_REQUEST['DYN_UID'], '',
+ $Fields['APP_DATA'], '', '', 'view');
+ G::RenderPage('publish', 'blank');
+ break;
+ case 'showDynaformHistory':
+ $G_PUBLISH = new Publisher();
+ $FieldsHistory=unserialize($_SESSION['HISTORY_DATA']);
+ $Fields['APP_DATA'] = $FieldsHistory[$_POST['HISTORY_ID']];
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['PREVIOUS_STEP_LABEL'] = '';
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP_LABEL'] = '';
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = '#';
+ $Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = 'return false;';
+ $G_PUBLISH->AddContent( 'dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_POST['DYN_UID'], '',
+ $Fields['APP_DATA'], '', '', 'view');
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'adhocAssignmentUsers':
+ G::LoadClass('groups');
+ G::LoadClass('tasks');
+ $oTasks = new Tasks();
+ $aAux = $oTasks->getGroupsOfTask($_SESSION['TASK'], 2);
+ $aAdhocUsers = array();
+ $oGroups = new Groups();
+ foreach ($aAux as $aGroup) {
+ $aUsers = $oGroups->getUsersOfGroup($aGroup['GRP_UID']);
+ foreach ($aUsers as $aUser) {
+ if ($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
+ $aAdhocUsers[] = $aUser['USR_UID'];
+ }
+ }
+ }
+ $aAux = $oTasks->getUsersOfTask($_SESSION['TASK'], 2);
+ foreach ($aAux as $aUser) {
+ if ($aUser['USR_UID'] != $_SESSION['USER_LOGGED']) {
+ $aAdhocUsers[] = $aUser['USR_UID'];
+ }
+ }
+ require_once 'classes/model/Users.php';
+ $oCriteria = new Criteria('workflow');
+ $oCriteria->addSelectColumn(UsersPeer::USR_UID);
+ $oCriteria->addSelectColumn(UsersPeer::USR_FIRSTNAME);
+ $oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME);
+ $oCriteria->add(UsersPeer::USR_UID, $aAdhocUsers, Criteria::IN);
+
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'processes/processes_viewreassignCase',
+ $oCriteria, array('THETYPE'=>'ADHOC'));
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showHistoryMessages':
+ $oCase = new Cases();
+ global $G_PUBLISH;
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'cases/cases_Messages',
+ $oCase->getHistoryMessagesTracker($_SESSION['APPLICATION']));
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'showHistoryMessage':
+ $G_PUBLISH = new Publisher();
+ $oCase = new Cases();
+
+ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_MessagesView', '',
+ $oCase->getHistoryMessagesTrackerView($_POST['APP_UID'], $_POST['APP_MSG_UID']));
+ G::RenderPage('publish', 'raw');
+ break;
+ case 'deleteUploadedDocument':
+ require_once 'classes/model/AppDocument.php';
+ $oAppDocument = new AppDocument();
+ $oAppDocument->remove($_POST['DOC']);
+ $oCase = new Cases();
+ $oCase->getAllUploadedDocumentsCriteria( $_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']);
+ break;
+ case 'deleteGeneratedDocument':
+ require_once 'classes/model/AppDocument.php';
+ $oAppDocument = new AppDocument();
+ $oAppDocument->remove($_POST['DOC']);
+ $oCase = new Cases();
+ $oCase->getAllGeneratedDocumentsCriteria( $_SESSION['PROCESS'],
+ $_SESSION['APPLICATION'],
+ $_SESSION['TASK'],
+ $_SESSION['USER_LOGGED']);
+ break;
/* @Author Erik Amaru Ortiz */
- case 'resendMessage':
- require_once 'classes/model/Configuration.php';
- G::LoadClass('spool');
+ case 'resendMessage':
+ require_once 'classes/model/Configuration.php';
+ G::LoadClass('spool');
- $oCase = new Cases();
- $data = $oCase->getHistoryMessagesTrackerView($_POST['APP_UID'], $_POST['APP_MSG_UID']);
- //print_r($data);
+ $oCase = new Cases();
+ $data = $oCase->getHistoryMessagesTrackerView($_POST['APP_UID'], $_POST['APP_MSG_UID']);
+ //print_r($data);
- $oConfiguration = new Configuration();
- $sDelimiter = DBAdapter::getStringDelimiter();
- $oCriteria = new Criteria('workflow');
- $oCriteria->add(ConfigurationPeer::CFG_UID, 'Emails');
- $oCriteria->add(ConfigurationPeer::OBJ_UID, '');
- $oCriteria->add(ConfigurationPeer::PRO_UID, '');
- $oCriteria->add(ConfigurationPeer::USR_UID, '');
- $oCriteria->add(ConfigurationPeer::APP_UID, '');
- if(ConfigurationPeer::doCount($oCriteria) == 0) {
- $oConfiguration->create(array('CFG_UID'=>'Emails', 'OBJ_UID'=>'', 'CFG_VALUE'=>'', 'PRO_UID'=>'', 'USR_UID'=>'', 'APP_UID'=>''));
- $aConfiguration = array();
- } else {
- $aConfiguration = $oConfiguration->load('Emails', '', '', '', '');
- if($aConfiguration['CFG_VALUE'] != '') {
- $aConfiguration = unserialize($aConfiguration['CFG_VALUE']);
- } else {
- $aConfiguration = array();
- }
- }
-
- $oSpool = new spoolRun();
- $oSpool->setConfig(array(
- 'MESS_ENGINE' => $aConfiguration['MESS_ENGINE'],
- 'MESS_SERVER' => $aConfiguration['MESS_SERVER'],
- 'MESS_PORT' => $aConfiguration['MESS_PORT'],
- 'MESS_ACCOUNT' => $aConfiguration['MESS_ACCOUNT'],
- 'MESS_PASSWORD' => $aConfiguration['MESS_PASSWORD'],
- 'SMTPAuth' => $aConfiguration['MESS_RAUTH']
- ));
- $passwd = $oSpool['MESS_PASSWORD'];
- $passwdDec = G::decrypt($passwd,'EMAILENCRYPT');
- if (strpos( $passwdDec, 'hash:' ) !== false) {
- list($hash, $pass) = explode(":", $passwdDec);
- $oSpool['MESS_PASSWORD'] = $pass;
- }
-
- $oSpool->create(array(
- 'msg_uid' => $data['MSG_UID'],
- 'app_uid' => $data['APP_UID'],
- 'del_index' => $data['DEL_INDEX'],
- 'app_msg_type' => $data['APP_MSG_TYPE'],
- 'app_msg_subject'=> $data['APP_MSG_SUBJECT'],
- 'app_msg_from' => $data['APP_MSG_FROM'],
- 'app_msg_to' => $data['APP_MSG_TO'],
- 'app_msg_body' => $data['APP_MSG_BODY'],
- 'app_msg_cc' => $data['APP_MSG_CC'],
- 'app_msg_bcc' => $data['APP_MSG_BCC'],
- 'app_msg_attach'=> $data['APP_MSG_ATTACH'],
- 'app_msg_template'=>$data['APP_MSG_TEMPLATE'],
- 'app_msg_status'=> 'pending'
- ));
- $oSpool->sendMail();
-
- break;
-
- /* @Author Erik Amaru Ortiz */
- case 'showdebug':
-
- $G_PUBLISH = new Publisher();
- $G_PUBLISH->AddContent('view', 'cases/showDebugFrame');
- G::RenderPage('publish', 'raw');
- break;
+ $oConfiguration = new Configuration();
+ $sDelimiter = DBAdapter::getStringDelimiter();
+ $oCriteria = new Criteria('workflow');
+ $oCriteria->add(ConfigurationPeer::CFG_UID, 'Emails');
+ $oCriteria->add(ConfigurationPeer::OBJ_UID, '');
+ $oCriteria->add(ConfigurationPeer::PRO_UID, '');
+ $oCriteria->add(ConfigurationPeer::USR_UID, '');
+ $oCriteria->add(ConfigurationPeer::APP_UID, '');
+ if (ConfigurationPeer::doCount($oCriteria) == 0) {
+ $oConfiguration->create( array( 'CFG_UID'=>'Emails', 'OBJ_UID'=>'', 'CFG_VALUE'=>'',
+ 'PRO_UID'=>'', 'USR_UID'=>'', 'APP_UID'=>''));
+ $aConfiguration = array();
+ } else {
+ $aConfiguration = $oConfiguration->load('Emails', '', '', '', '');
+ if ($aConfiguration['CFG_VALUE'] != '') {
+ $aConfiguration = unserialize($aConfiguration['CFG_VALUE']);
+ } else {
+ $aConfiguration = array();
+ }
+ }
+ $oSpool = new spoolRun();
+ $oSpool->setConfig(array(
+ 'MESS_ENGINE' => $aConfiguration['MESS_ENGINE'],
+ 'MESS_SERVER' => $aConfiguration['MESS_SERVER'],
+ 'MESS_PORT' => $aConfiguration['MESS_PORT'],
+ 'MESS_ACCOUNT' => $aConfiguration['MESS_ACCOUNT'],
+ 'MESS_PASSWORD' => $aConfiguration['MESS_PASSWORD'],
+ 'SMTPAuth' => $aConfiguration['MESS_RAUTH']
+ ));
+ $passwd = $oSpool['MESS_PASSWORD'];
+ $passwdDec = G::decrypt($passwd,'EMAILENCRYPT');
+ if (strpos( $passwdDec, 'hash:' ) !== false) {
+ list($hash, $pass) = explode(":", $passwdDec);
+ $oSpool['MESS_PASSWORD'] = $pass;
+ }
+ $oSpool->create(array(
+ 'msg_uid' => $data['MSG_UID'],
+ 'app_uid' => $data['APP_UID'],
+ 'del_index' => $data['DEL_INDEX'],
+ 'app_msg_type' => $data['APP_MSG_TYPE'],
+ 'app_msg_subject'=> $data['APP_MSG_SUBJECT'],
+ 'app_msg_from' => $data['APP_MSG_FROM'],
+ 'app_msg_to' => $data['APP_MSG_TO'],
+ 'app_msg_body' => $data['APP_MSG_BODY'],
+ 'app_msg_cc' => $data['APP_MSG_CC'],
+ 'app_msg_bcc' => $data['APP_MSG_BCC'],
+ 'app_msg_attach'=> $data['APP_MSG_ATTACH'],
+ 'app_msg_template'=>$data['APP_MSG_TEMPLATE'],
+ 'app_msg_status'=> 'pending'
+ ));
+ $oSpool->sendMail();
+ break;
/* @Author Erik Amaru Ortiz */
- case 'reassignByUserList':
- $APP_UIDS = explode(',', $_POST['APP_UIDS']);
- $sReassignFromUser = $_POST['FROM_USR_ID'];
-
+ case 'showdebug':
+ $G_PUBLISH = new Publisher();
+ $G_PUBLISH->AddContent('view', 'cases/showDebugFrame');
+ G::RenderPage('publish', 'raw');
+ break;
+ /* @Author Erik Amaru Ortiz */
+ case 'reassignByUserList':
+ $APP_UIDS = explode(',', $_POST['APP_UIDS']);
+ $sReassignFromUser = $_POST['FROM_USR_ID'];
+
G::LoadClass('tasks');
G::LoadClass('groups');
G::LoadClass('case');
-
+
$oTasks = new Tasks();
$oGroups = new Groups();
$oUser = new Users();
$oCases = new Cases();
-
+
$aCasesList = Array();
- foreach ( $APP_UIDS as $APP_UID ) {
- $aCase = $oCases->loadCaseInCurrentDelegation($APP_UID);
-
+ foreach ($APP_UIDS as $APP_UID) {
+ $aCase = $oCases->loadCaseInCurrentDelegation($APP_UID);
+
$aUsersInvolved = Array();
$aCaseGroups = $oTasks->getGroupsOfTask($aCase['TAS_UID'], 1);
- foreach ( $aCaseGroups as $aCaseGroup ) {
+ foreach ($aCaseGroups as $aCaseGroup) {
$aCaseUsers = $oGroups->getUsersOfGroup($aCaseGroup['GRP_UID']);
- foreach ( $aCaseUsers as $aCaseUser ) {
- if ( $aCaseUser['USR_UID'] != $sReassignFromUser ) {
+ foreach ($aCaseUsers as $aCaseUser) {
+ if ($aCaseUser['USR_UID'] != $sReassignFromUser) {
$aCaseUserRecord = $oUser->load($aCaseUser['USR_UID']);
- $aUsersInvolved[$aCaseUser['USR_UID']] = $aCaseUserRecord['USR_FIRSTNAME'] . ' ' . $aCaseUserRecord['USR_LASTNAME']; // . ' (' . $aCaseUserRecord['USR_USERNAME'] . ')';
+ $aUsersInvolved[$aCaseUser['USR_UID']] = $aCaseUserRecord['USR_FIRSTNAME'] . ' ' .
+ $aCaseUserRecord['USR_LASTNAME'];
+ // . ' (' . $aCaseUserRecord['USR_USERNAME'] . ')';
}
}
}
-
+
$aCaseUsers = $oTasks->getUsersOfTask($aCase['TAS_UID'], 1);
- foreach ( $aCaseUsers as $aCaseUser ) {
- if ( $aCaseUser['USR_UID'] != $sReassignFromUser ) {
+ foreach ($aCaseUsers as $aCaseUser) {
+ if ($aCaseUser['USR_UID'] != $sReassignFromUser) {
$aCaseUserRecord = $oUser->load($aCaseUser['USR_UID']);
- $aUsersInvolved[$aCaseUser['USR_UID']] = $aCaseUserRecord['USR_FIRSTNAME'] . ' ' . $aCaseUserRecord['USR_LASTNAME']; // . ' (' . $aCaseUserRecord['USR_USERNAME'] . ')';
+ $aUsersInvolved[$aCaseUser['USR_UID']] = $aCaseUserRecord['USR_FIRSTNAME'] . ' ' .
+ $aCaseUserRecord['USR_LASTNAME'];
+ // . ' (' . $aCaseUserRecord['USR_USERNAME'] . ')';
}
}
$oTmp = new stdClass();
@@ -851,7 +918,7 @@ switch(($_POST['action'])?$_POST['action']:$_REQUEST['action']) {
$aCase['USERS'] = $oTmp;
array_push($aCasesList, $aCase);
}
-
+
$filedNames = Array (
"APP_UID",
"APP_NUMBER",
@@ -859,8 +926,8 @@ switch(($_POST['action'])?$_POST['action']:$_REQUEST['action']) {
"DEL_PRIORITY",
"DEL_INDEX",
"TAS_UID",
- "DEL_INIT_DATE",
- "DEL_FINISH_DATE",
+ "DEL_INIT_DATE",
+ "DEL_FINISH_DATE",
"USR_UID",
"APP_STATUS",
"DEL_TASK_DUE_DATE",
@@ -871,130 +938,142 @@ switch(($_POST['action'])?$_POST['action']:$_REQUEST['action']) {
"APP_DEL_PREVIOUS_USER",
"USERS"
);
-
+
$aCasesList = array_merge(Array($filedNames), $aCasesList);
-
+
global $_DBArray;
$_DBArray['reassign_byuser'] = $aCasesList;
G::LoadClass('ArrayPeer');
$oCriteria = new Criteria('dbarray');
$oCriteria->setDBArrayTable('reassign_byuser');
$G_PUBLISH = new Publisher;
- $G_PUBLISH->AddContent('propeltable', 'cases/paged-table-reassigByUser2', 'cases/cases_ToReassignByUserList2', $oCriteria);
+ $G_PUBLISH->AddContent( 'propeltable', 'cases/paged-table-reassigByUser2',
+ 'cases/cases_ToReassignByUserList2', $oCriteria);
G::RenderPage('publish', 'raw');
-
- break;
-
- /* @Author Erik Amaru Ortiz */
- case 'reassignByUser':
+ break;
+ /* @Author Erik Amaru Ortiz */
+ case 'reassignByUser':
G::LoadClass('case');
$oCases = new Cases();
$aCases = Array();
-
- if( isset($_POST['items']) && trim($_POST['items']) != '' ){
- $sItems = $_POST['items'];
- $aItems = explode(',', $sItems);
- $FROM_USR_UID = $_POST['USR_UID'];
-
- foreach($aItems as $item){
- list($APP_UID, $USR_UID) = explode('|', $item);
- $aCase = $oCases->loadCaseInCurrentDelegation($APP_UID);
- $oCase->reassignCase($aCase['APP_UID'], $aCase['DEL_INDEX'], $FROM_USR_UID, $USR_UID);
- array_push($aCases, $aCase);
- }
- //G::pr($aCases);
-
- require_once 'classes/model/Users.php';
- $oUser = new Users();
- $sText = '';
- foreach ($aCases as $aCase) {
- $aCaseUpdated = $oCases->loadCaseInCurrentDelegation($aCase['APP_UID']);
- $aUser = $oUser->load($aCaseUpdated['USR_UID']);
- $sText .= $aCaseUpdated['APP_PRO_TITLE'] .' - '. ' Case: ' . $aCaseUpdated['APP_NUMBER'] . '# (' . $aCaseUpdated['APP_TAS_TITLE'] . ') => Reassigned to => ' . $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'] . ' [' . $aUser['USR_USERNAME'] . ']' . '
';
- }
-
- $G_PUBLISH = new Publisher;
- $aMessage['MESSAGE'] = $sText;
- $aMessage['URL'] = 'cases_ReassignByUser?REASSIGN_USER=' . $_POST['USR_UID'];
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_ReassignShowInfo', '', $aMessage);
- G::RenderPage('publish', 'raw');
+
+ if (isset($_POST['items']) && trim($_POST['items']) != '') {
+ $sItems = $_POST['items'];
+ $aItems = explode(',', $sItems);
+ $FROM_USR_UID = $_POST['USR_UID'];
+
+ foreach ($aItems as $item) {
+ list($APP_UID, $USR_UID) = explode('|', $item);
+ $aCase = $oCases->loadCaseInCurrentDelegation($APP_UID);
+ $oCase->reassignCase($aCase['APP_UID'], $aCase['DEL_INDEX'], $FROM_USR_UID, $USR_UID);
+ array_push($aCases, $aCase);
+ }
+ //G::pr($aCases);
+
+ require_once 'classes/model/Users.php';
+ $oUser = new Users();
+ $sText = '';
+ foreach ($aCases as $aCase) {
+ $aCaseUpdated = $oCases->loadCaseInCurrentDelegation($aCase['APP_UID']);
+ $aUser = $oUser->load($aCaseUpdated['USR_UID']);
+ $sText .= $aCaseUpdated['APP_PRO_TITLE'] .' - '. ' Case: ' . $aCaseUpdated['APP_NUMBER'] . '# (' .
+ $aCaseUpdated['APP_TAS_TITLE'] . ') => Reassigned to => ' .
+ $aUser['USR_FIRSTNAME'] . ' ' . $aUser['USR_LASTNAME'] . ' [' . $aUser['USR_USERNAME'] .
+ ']' . '
';
+ }
+
+ $G_PUBLISH = new Publisher;
+ $aMessage['MESSAGE'] = $sText;
+ $aMessage['URL'] = 'cases_ReassignByUser?REASSIGN_USER=' . $_POST['USR_UID'];
+ $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_ReassignShowInfo', '', $aMessage);
+ G::RenderPage('publish', 'raw');
}
- break;
- case "uploadInputDocument":
- //krumo($_POST);
- $G_PUBLISH = new Publisher;
- $Fields['DOC_UID']=$_POST['docID'];
- $Fields['APP_DOC_UID']=$_POST['appDocId'];
- $Fields['actionType']=$_POST['actionType'];
- $Fields['docVersion']=$_POST['docVersion'];
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_AttachInputDocumentGeneral', '', $Fields, 'cases_SaveDocument?UID=' . $_POST['docID']);
- G::RenderPage('publish', 'raw');
-
- break;
- case "uploadToReviseInputDocument":
- //krumo($_POST);
- $G_PUBLISH = new Publisher;
- $Fields['DOC_UID']=$_POST['docID'];
- $Fields['APP_DOC_UID']=$_POST['appDocId'];
- $Fields['actionType']=$_POST['actionType'];
- $Fields['docVersion']=$_POST['docVersion'];
- $G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_AttachInputDocumentGeneral', '', $Fields, 'cases_SupervisorSaveDocument?UID=' . $_POST['docID'] . '&APP_UID=' . $_POST['appDocId']);
- G::RenderPage('publish', 'raw');
-
- break;
- case "inputDocumentVersionHistory":
- //krumo($_POST);
- $G_PUBLISH = new Publisher;
- $Fields['DOC_UID']=$_POST['docID'];
- $Fields['APP_DOC_UID']=$_POST['appDocId'];
- $G_PUBLISH->AddContent('propeltable', 'paged-table', 'cases/cases_InputdocsListHistory', $oCase->getInputDocumentsCriteria($_SESSION['APPLICATION'], $_SESSION['INDEX'], $_POST['docID'],$_POST['appDocId']), array());//$aFields
- //$G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_AttachInputDocumentGeneral', '', $Fields, 'cases_SaveDocument?UID=' . $_POST['docID']);
- G::RenderPage('publish', 'raw');
-
- break;
- case "getCountCasesFolder":
-
- $json = new Services_JSON();
- $aTypes = Array('to_do', 'draft', 'cancelled', 'sent', 'paused', 'completed','selfservice','to_revise','to_reassign');
- $aTypesID = Array('to_do'=>'CASES_INBOX', 'draft'=>'CASES_DRAFT', 'cancelled'=>'CASES_CANCELLED', 'sent'=>'CASES_SENT', 'paused'=>'CASES_PAUSED', 'completed'=>'CASES_COMPLETED','selfservice'=>'CASES_SELFSERVICE','to_revise'=>'CASES_TO_REVISE','to_reassign'=>'CASES_TO_REASSIGN');
-
- if(!isset($_POST['A'])){
- $oCases = new Cases();
- $aCount = $oCases->getAllConditionCasesCount($aTypes, true);
- echo $json->encode($aCount);
- }else{
- echo $json->encode($aTypesID);
- }
- break;
- case "previusJump":
- require_once 'classes/model/Application.php';
-
- $oCriteria = new Criteria('workflow');
- $response = array( "success" => true );
+ break;
+ case "uploadInputDocument":
+ //krumo($_POST);
+ $G_PUBLISH = new Publisher;
+ $Fields['DOC_UID']=$_POST['docID'];
+ $Fields['APP_DOC_UID']=$_POST['appDocId'];
+ $Fields['actionType']=$_POST['actionType'];
+ $Fields['docVersion']=$_POST['docVersion'];
+ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_AttachInputDocumentGeneral', '',
+ $Fields, 'cases_SaveDocument?UID=' . $_POST['docID']);
+ G::RenderPage('publish', 'raw');
+ break;
+ case "uploadToReviseInputDocument":
+ //krumo($_POST);
+ $G_PUBLISH = new Publisher;
+ $Fields['DOC_UID']=$_POST['docID'];
+ $Fields['APP_DOC_UID']=$_POST['appDocId'];
+ $Fields['actionType']=$_POST['actionType'];
+ $Fields['docVersion']=$_POST['docVersion'];
+ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_AttachInputDocumentGeneral', '',
+ $Fields, 'cases_SupervisorSaveDocument?UID=' . $_POST['docID'] .
+ '&APP_UID=' . $_POST['appDocId']);
+ G::RenderPage('publish', 'raw');
+ break;
+ case "inputDocumentVersionHistory":
+ //krumo($_POST);
+ $G_PUBLISH = new Publisher;
+ $Fields['DOC_UID']=$_POST['docID'];
+ $Fields['APP_DOC_UID']=$_POST['appDocId'];
+ $G_PUBLISH->AddContent( 'propeltable', 'paged-table', 'cases/cases_InputdocsListHistory',
+ $oCase->getInputDocumentsCriteria( $_SESSION['APPLICATION'],
+ $_SESSION['INDEX'],
+ $_POST['docID'],
+ $_POST['appDocId']),
+ array());//$aFields
+ //$G_PUBLISH->AddContent('xmlform', 'xmlform', 'cases/cases_AttachInputDocumentGeneral',
+ // '', $Fields, 'cases_SaveDocument?UID=' . $_POST['docID']);
+ G::RenderPage('publish', 'raw');
+ break;
+ case "getCountCasesFolder":
+ $json = new Services_JSON();
+ $aTypes = Array('to_do', 'draft', 'cancelled', 'sent', 'paused', 'completed','selfservice',
+ 'to_revise','to_reassign');
+ $aTypesID = Array('to_do'=>'CASES_INBOX', 'draft'=>'CASES_DRAFT', 'cancelled'=>'CASES_CANCELLED',
+ 'sent'=>'CASES_SENT', 'paused'=>'CASES_PAUSED', 'completed'=>'CASES_COMPLETED',
+ 'selfservice'=>'CASES_SELFSERVICE','to_revise'=>'CASES_TO_REVISE',
+ 'to_reassign'=>'CASES_TO_REASSIGN');
- $oCriteria->add(ApplicationPeer::APP_NUMBER, $_POST['appNumber']);
- $oDataset = ApplicationPeer::doSelectRS($oCriteria);
- $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
- $oDataset->next();
- $aApplication = $oDataset->getRow();
+ if (!isset($_POST['A'])) {
+ $oCases = new Cases();
+ $aCount = $oCases->getAllConditionCasesCount($aTypes, true);
+ echo $json->encode($aCount);
+ } else {
+ echo $json->encode($aTypesID);
+ }
+ break;
+ case "previusJump":
+ require_once 'classes/model/Application.php';
- if (is_array($aApplication)) {
- $response['exists'] = true;
- } else {
- $response['exists'] = false;
- }
-
- echo G::json_encode($response);
- break;
+ $oCriteria = new Criteria('workflow');
+ $response = array( "success" => true );
-
-
- default:
- echo 'default';
+ $oCriteria->add(ApplicationPeer::APP_NUMBER, $_POST['appNumber']);
+ $oDataset = ApplicationPeer::doSelectRS($oCriteria);
+ $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
+ $oDataset->next();
+ $aApplication = $oDataset->getRow();
+
+ if (is_array($aApplication)) {
+ $response['exists'] = true;
+ } else {
+ $response['exists'] = false;
+ }
+
+ echo G::json_encode($response);
+ break;
+ default:
+ echo 'default';
}
-function getCasesTypeIDs(){
- $aTypes = Array('to_do', 'draft', 'cancelled', 'sent', 'paused', 'completed','selfservice','to_revise','to_reassign');
- return $aTypesID;
+
+function getCasesTypeIds()
+{
+ $aTypes = Array('to_do', 'draft', 'cancelled', 'sent', 'paused', 'completed','selfservice',
+ 'to_revise','to_reassign');
+ return $aTypesID;
}
+