diff --git a/workflow/engine/methods/processes/processes_Ajax.php b/workflow/engine/methods/processes/processes_Ajax.php index 9f0bee2f7..14de2abf4 100755 --- a/workflow/engine/methods/processes/processes_Ajax.php +++ b/workflow/engine/methods/processes/processes_Ajax.php @@ -12,23 +12,22 @@ * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . + * along with this program. If not, see . * * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. - * */ try { - /*global $RBAC; - switch ($RBAC->userCanAccess('PM_FACTORY')) - { - case -2: - G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels'); - G::header('location: ../login/login'); + /*global $RBAC; + switch ($RBAC->userCanAccess('PM_FACTORY')) + { + case -2: + G::SendTemporalMessage('ID_USER_HAVENT_RIGHTS_SYSTEM', 'error', 'labels'); + G::header('location: ../login/login'); die; break; case -1: @@ -37,475 +36,463 @@ try { die; break; }*/ - $oJSON = new Services_JSON(); - if ( isset ($_REQUEST['data']) ) { - $oData = $oJSON->decode(stripslashes($_REQUEST['data'])); - $sOutput = ''; - } + $oJSON = new Services_JSON(); + if (isset( $_REQUEST['data'] )) { + $oData = $oJSON->decode( stripslashes( $_REQUEST['data'] ) ); + $sOutput = ''; + } - G::LoadClass('processMap'); - $oProcessMap = new processMap(new DBConnection); + G::LoadClass( 'processMap' ); + $oProcessMap = new processMap( new DBConnection() ); - switch($_REQUEST['action']) - { - case 'load': - $_SESSION['PROCESS'] = $oData->uid; - if ($oData->ct) { - $sOutput = $oProcessMap->load($oData->uid, true, $_SESSION['APPLICATION'], -1, $_SESSION['TASK'], $oData->ct); - } - else { - if ($oData->mode) { - $sOutput = $oProcessMap->load($oData->uid); - } - else { - if ($_SESSION['TASK'] != -1) { - $taskUid = $_SESSION['TASK']; - } else { - $c = new Criteria('workflow'); - $c->clearSelectColumns(); - $c->addSelectColumn(AppDelegationPeer::TAS_UID); - $c->add(AppDelegationPeer::APP_UID, $_SESSION['APPLICATION']); - $c->add(AppDelegationPeer::DEL_INDEX, $_SESSION['INDEX']); - $oDataset = AppDelegationPeer::doSelectRS($c); - $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $oDataset->next(); - $aData = $oDataset->getRow(); - $taskUid = isset($aData['TAS_UID']) ? $aData['TAS_UID'] : -1; - } - $sOutput = $oProcessMap->load($oData->uid, true, $_SESSION['APPLICATION'], $_SESSION['INDEX'], $taskUid); - } - } - break; - case 'process_Edit': - $oProcessMap->editProcess($oData->pro_uid); - break; - case 'process_Export': - include(PATH_METHODS . 'processes/processes_Export.php'); - break; - case 'process_User': - include(PATH_METHODS . 'processes/processes_User.php'); - break; - case 'availableProcessesUser': - include(PATH_METHODS . 'processes/processes_availableProcessesUser.php'); - break; - case 'webEntry_generate': - include(PATH_METHODS . 'processes/processes_webEntryGenerate.php'); - break; + switch ($_REQUEST['action']) { + case 'load': + $_SESSION['PROCESS'] = $oData->uid; + if ($oData->ct) { + $sOutput = $oProcessMap->load( $oData->uid, true, $_SESSION['APPLICATION'], - 1, $_SESSION['TASK'], $oData->ct ); + } else { + if ($oData->mode) { + $sOutput = $oProcessMap->load( $oData->uid ); + } else { + if ($_SESSION['TASK'] != - 1) { + $taskUid = $_SESSION['TASK']; + } else { + $c = new Criteria( 'workflow' ); + $c->clearSelectColumns(); + $c->addSelectColumn( AppDelegationPeer::TAS_UID ); + $c->add( AppDelegationPeer::APP_UID, $_SESSION['APPLICATION'] ); + $c->add( AppDelegationPeer::DEL_INDEX, $_SESSION['INDEX'] ); + $oDataset = AppDelegationPeer::doSelectRS( $c ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $oDataset->next(); + $aData = $oDataset->getRow(); + $taskUid = isset( $aData['TAS_UID'] ) ? $aData['TAS_UID'] : - 1; + } + $sOutput = $oProcessMap->load( $oData->uid, true, $_SESSION['APPLICATION'], $_SESSION['INDEX'], $taskUid ); + } + } + break; + case 'process_Edit': + $oProcessMap->editProcess( $oData->pro_uid ); + break; + case 'process_Export': + include (PATH_METHODS . 'processes/processes_Export.php'); + break; + case 'process_User': + include (PATH_METHODS . 'processes/processes_User.php'); + break; + case 'availableProcessesUser': + include (PATH_METHODS . 'processes/processes_availableProcessesUser.php'); + break; + case 'webEntry_generate': + include (PATH_METHODS . 'processes/processes_webEntryGenerate.php'); + break; // add this event to validate de data to create a Web Entry - case 'webEntry_validate': - include(PATH_METHODS . 'processes/processes_webEntryValidate.php'); - break; - case 'webEntry_delete': - $form=$_REQUEST; - unlink(PATH_DATA ."sites" . PATH_SEP . SYS_SYS . PATH_SEP . "public" . PATH_SEP. $form['PRO_UID']. PATH_SEP.$form['FILENAME']); - unlink(PATH_DATA ."sites" . PATH_SEP . SYS_SYS . PATH_SEP . "public" . PATH_SEP. $form['PRO_UID']. PATH_SEP .str_replace(".php","Post",$form['FILENAME']).".php"); - $oProcessMap->webEntry($_REQUEST['PRO_UID']); - break; + case 'webEntry_validate': + include (PATH_METHODS . 'processes/processes_webEntryValidate.php'); + break; + case 'webEntry_delete': + $form = $_REQUEST; + unlink( PATH_DATA . "sites" . PATH_SEP . SYS_SYS . PATH_SEP . "public" . PATH_SEP . $form['PRO_UID'] . PATH_SEP . $form['FILENAME'] ); + unlink( PATH_DATA . "sites" . PATH_SEP . SYS_SYS . PATH_SEP . "public" . PATH_SEP . $form['PRO_UID'] . PATH_SEP . str_replace( ".php", "Post", $form['FILENAME'] ) . ".php" ); + $oProcessMap->webEntry( $_REQUEST['PRO_UID'] ); + break; - case 'webEntry_new': - $oProcessMap->webEntry_new($oData->PRO_UID); - break; - case 'assignProcessUser': - $oProcessMap->assignProcessUser($oData->PRO_UID, $oData->USR_UID, $oData->TYPE_UID); - G::LoadClass('processMap'); - $oProcessMap = new ProcessMap(); - $oProcessMap->listProcessesUser($oData->PRO_UID); - break; - case 'removeProcessUser': - $oProcessMap->removeProcessUser($oData->PU_UID); - foreach ($_SESSION['_DBArray']['data'] as $key => $value) { - if ($value['LA_PU_UID'] == $oData->PU_UID) { - unset($_SESSION['_DBArray']['data'][$key]); - break; - } - } - break; - case 'supervisorDynaforms': - $oProcessMap->supervisorDynaforms($oData->pro_uid); - break; - case 'supervisorInputs': - $oProcessMap->supervisorInputs($oData->pro_uid); - break; - case 'webEntry': - $oProcessMap->webEntry($oData->pro_uid); - break; + case 'webEntry_new': + $oProcessMap->webEntry_new( $oData->PRO_UID ); + break; + case 'assignProcessUser': + $oProcessMap->assignProcessUser( $oData->PRO_UID, $oData->USR_UID, $oData->TYPE_UID ); + G::LoadClass( 'processMap' ); + $oProcessMap = new ProcessMap(); + $oProcessMap->listProcessesUser( $oData->PRO_UID ); + break; + case 'removeProcessUser': + $oProcessMap->removeProcessUser( $oData->PU_UID ); + foreach ($_SESSION['_DBArray']['data'] as $key => $value) { + if ($value['LA_PU_UID'] == $oData->PU_UID) { + unset( $_SESSION['_DBArray']['data'][$key] ); + break; + } + } + break; + case 'supervisorDynaforms': + $oProcessMap->supervisorDynaforms( $oData->pro_uid ); + break; + case 'supervisorInputs': + $oProcessMap->supervisorInputs( $oData->pro_uid ); + break; + case 'webEntry': + $oProcessMap->webEntry( $oData->pro_uid ); + break; - case 'webEntry_Val_Assig': - include(PATH_METHODS . 'processes/webEntry_Val_Assig.php'); - break; + case 'webEntry_Val_Assig': + include (PATH_METHODS . 'processes/webEntry_Val_Assig.php'); + break; - case 'saveTitlePosition': - $sOutput = $oProcessMap->saveTitlePosition($oData->pro_uid, $oData->position->x, $oData->position->y); - break; - case 'steps': - switch ($oData->option) - { - case 1: - $oProcessMap->steps($oData->proUid, $oData->tasUid); - break; - case 2: - $oProcessMap->stepsConditions($oData->proUid, $oData->tasUid); - break; - case 3: - $oProcessMap->stepsTriggers($oData->proUid, $oData->tasUid); - break; - } - break; - case 'users': - $oProcessMap->users($oData->pro_uid, $oData->tas_uid); - break; + case 'saveTitlePosition': + $sOutput = $oProcessMap->saveTitlePosition( $oData->pro_uid, $oData->position->x, $oData->position->y ); + break; + case 'steps': + switch ($oData->option) { + case 1: + $oProcessMap->steps( $oData->proUid, $oData->tasUid ); + break; + case 2: + $oProcessMap->stepsConditions( $oData->proUid, $oData->tasUid ); + break; + case 3: + $oProcessMap->stepsTriggers( $oData->proUid, $oData->tasUid ); + break; + } + break; + case 'users': + $oProcessMap->users( $oData->pro_uid, $oData->tas_uid ); + break; - case 'users_adhoc': - $oProcessMap->users_adhoc($oData->pro_uid, $oData->tas_uid); - break; + case 'users_adhoc': + $oProcessMap->users_adhoc( $oData->pro_uid, $oData->tas_uid ); + break; - case 'addTask': - $sOutput = $oProcessMap->addTask($oData->uid, $oData->position->x, $oData->position->y); - break; + case 'addTask': + $sOutput = $oProcessMap->addTask( $oData->uid, $oData->position->x, $oData->position->y ); + break; - case 'addSubProcess': - $sOutput = $oProcessMap->addSubProcess($oData->uid, $oData->position->x, $oData->position->y); - break; + case 'addSubProcess': + $sOutput = $oProcessMap->addSubProcess( $oData->uid, $oData->position->x, $oData->position->y ); + break; case 'taskColor': - $oTask->taskColor($oData->pro_uid, $oData->tas_uid); - break; - case 'addTaskHidden': - $sOutput = $oProcessMap->addTaskHidden($oData->uid, $oData->position->x, $oData->position->y); - break; - case 'editTaskProperties': - $oProcessMap->editTaskProperties($oData->uid, (isset($oData->iForm) ? $oData->iForm : 1), $oData->index); - break; - case 'saveTaskPosition': - $sOutput = $oProcessMap->saveTaskPosition($oData->uid, $oData->position->x, $oData->position->y); - break; - case 'deleteTask': - $sOutput = $oProcessMap->deleteTask($oData->tas_uid); - break; - case 'addGuide': - $sOutput = $oProcessMap->addGuide($oData->uid, $oData->position, $oData->direction); - break; - case 'saveGuidePosition': - $sOutput = $oProcessMap->saveGuidePosition($oData->uid, $oData->position, $oData->direction); - break; - case 'deleteGuide': - $sOutput = $oProcessMap->deleteGuide($oData->uid); - break; - case 'deleteGuides': - $sOutput = $oProcessMap->deleteGuides($oData->pro_uid); - break; - case 'addText': - $sOutput = $oProcessMap->addText($oData->uid, $oData->label, $oData->position->x, $oData->position->y); - break; - case 'updateText': - $sOutput = $oProcessMap->updateText($oData->uid, $oData->label); - break; - case 'saveTextPosition': - $sOutput = $oProcessMap->saveTextPosition($oData->uid, $oData->position->x, $oData->position->y); - break; - case 'deleteText': - $sOutput = $oProcessMap->deleteText($oData->uid); - break; - case 'dynaforms': - $oProcessMap->dynaformsList($oData->pro_uid); - break; - case 'inputs': - $oProcessMap->inputdocsList($oData->pro_uid); - break; - case 'outputs': - $oProcessMap->outputdocsList($oData->pro_uid); - break; - case 'triggers': - $oProcessMap->triggersList($oData->pro_uid); - break; - case 'case_scheduler': - if(isset($_REQUEST['PRO_UID'])){ - $oProcessMap->caseSchedulerList($_REQUEST['PRO_UID']); - } - break; - case 'log_case_scheduler': - if(isset($_REQUEST['PRO_UID'])){ - $oProcessMap->logCaseSchedulerList($_REQUEST['PRO_UID']); - } - break; - case 'messages': - $oProcessMap->messagesList($oData->pro_uid); - break; - case 'reportTables': - $oProcessMap->reportTablesList($oData->pro_uid); - break; - case 'derivations': - if (!isset($oData->type)) { - $oProcessMap->currentPattern($oData->pro_uid, $oData->tas_uid); - } - else { - switch ($oData->type) { - case 0: - $oData->type = 'SEQUENTIAL'; - break; - case 1: - $oData->type = 'SELECT'; - break; - case 2: - $oData->type = 'EVALUATE'; - break; - case 3: - $oData->type = 'PARALLEL'; - break; - case 4: - $oData->type = 'PARALLEL-BY-EVALUATION'; - break; - case 5: - $oData->type = 'SEC-JOIN'; - break; + $oTask->taskColor( $oData->pro_uid, $oData->tas_uid ); + break; + case 'addTaskHidden': + $sOutput = $oProcessMap->addTaskHidden( $oData->uid, $oData->position->x, $oData->position->y ); + break; + case 'editTaskProperties': + $oProcessMap->editTaskProperties( $oData->uid, (isset( $oData->iForm ) ? $oData->iForm : 1), $oData->index ); + break; + case 'saveTaskPosition': + $sOutput = $oProcessMap->saveTaskPosition( $oData->uid, $oData->position->x, $oData->position->y ); + break; + case 'deleteTask': + $sOutput = $oProcessMap->deleteTask( $oData->tas_uid ); + break; + case 'addGuide': + $sOutput = $oProcessMap->addGuide( $oData->uid, $oData->position, $oData->direction ); + break; + case 'saveGuidePosition': + $sOutput = $oProcessMap->saveGuidePosition( $oData->uid, $oData->position, $oData->direction ); + break; + case 'deleteGuide': + $sOutput = $oProcessMap->deleteGuide( $oData->uid ); + break; + case 'deleteGuides': + $sOutput = $oProcessMap->deleteGuides( $oData->pro_uid ); + break; + case 'addText': + $sOutput = $oProcessMap->addText( $oData->uid, $oData->label, $oData->position->x, $oData->position->y ); + break; + case 'updateText': + $sOutput = $oProcessMap->updateText( $oData->uid, $oData->label ); + break; + case 'saveTextPosition': + $sOutput = $oProcessMap->saveTextPosition( $oData->uid, $oData->position->x, $oData->position->y ); + break; + case 'deleteText': + $sOutput = $oProcessMap->deleteText( $oData->uid ); + break; + case 'dynaforms': + $oProcessMap->dynaformsList( $oData->pro_uid ); + break; + case 'inputs': + $oProcessMap->inputdocsList( $oData->pro_uid ); + break; + case 'outputs': + $oProcessMap->outputdocsList( $oData->pro_uid ); + break; + case 'triggers': + $oProcessMap->triggersList( $oData->pro_uid ); + break; + case 'case_scheduler': + if (isset( $_REQUEST['PRO_UID'] )) { + $oProcessMap->caseSchedulerList( $_REQUEST['PRO_UID'] ); + } + break; + case 'log_case_scheduler': + if (isset( $_REQUEST['PRO_UID'] )) { + $oProcessMap->logCaseSchedulerList( $_REQUEST['PRO_UID'] ); + } + break; + case 'messages': + $oProcessMap->messagesList( $oData->pro_uid ); + break; + case 'reportTables': + $oProcessMap->reportTablesList( $oData->pro_uid ); + break; + case 'derivations': + if (! isset( $oData->type )) { + $oProcessMap->currentPattern( $oData->pro_uid, $oData->tas_uid ); + } else { + switch ($oData->type) { + case 0: + $oData->type = 'SEQUENTIAL'; + break; + case 1: + $oData->type = 'SELECT'; + break; + case 2: + $oData->type = 'EVALUATE'; + break; + case 3: + $oData->type = 'PARALLEL'; + break; + case 4: + $oData->type = 'PARALLEL-BY-EVALUATION'; + break; + case 5: + $oData->type = 'SEC-JOIN'; + break; + case 8: + $oData->type = 'DISCRIMINATOR'; + break; + } + $oProcessMap->newPattern( $oData->pro_uid, $oData->tas_uid, $oData->next_task, $oData->type ); + } + break; + case 'saveNewPattern': + switch ($oData->type) { + case 0: + $sType = 'SEQUENTIAL'; + break; + case 1: + $sType = 'SELECT'; + break; + case 2: + $sType = 'EVALUATE'; + break; + case 3: + $sType = 'PARALLEL'; + break; + case 4: + $sType = 'PARALLEL-BY-EVALUATION'; + break; + case 5: + $sType = 'SEC-JOIN'; + break; case 8: - $oData->type = 'DISCRIMINATOR'; - break; - } - $oProcessMap->newPattern($oData->pro_uid, $oData->tas_uid, $oData->next_task, $oData->type); - } - break; - case 'saveNewPattern': - switch ($oData->type) - { - case 0: - $sType = 'SEQUENTIAL'; - break; - case 1: - $sType = 'SELECT'; - break; - case 2: - $sType = 'EVALUATE'; - break; - case 3: - $sType = 'PARALLEL'; - break; - case 4: - $sType = 'PARALLEL-BY-EVALUATION'; - break; - case 5: - $sType = 'SEC-JOIN'; - break; - case 8: - $sType = 'DISCRIMINATOR'; - break; - } - if (($oData->type != 0) && ($oData->type != 5) && ($oData->type != 8)) { - if ($oProcessMap->getNumberOfRoutes($oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType) > 0) { - die; - } - unset($aRow); - } - if (($oData->delete) || ($oData->type == 0) || ($oData->type == 5) || ($oData->type == 8)) { - G::LoadClass('tasks'); - $oTasks = new Tasks(); - $oTasks->deleteAllRoutesOfTask($oData->pro_uid, $oData->tas_uid); - $oTasks->deleteAllGatewayOfTask($oData->pro_uid, $oData->tas_uid); - } - $oProcessMap->saveNewPattern($oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType, $oData->delete); - break; - case 'deleteAllRoutes': - G::LoadClass('tasks'); - $oTasks = new Tasks(); - $oTasks->deleteAllRoutesOfTask($oData->pro_uid, $oData->tas_uid); - break; - case 'objectPermissions': - $oProcessMap->objectsPermissionsList($oData->pro_uid); - break; - case 'newObjectPermission': - $oProcessMap->newObjectPermission($oData->pro_uid); - break; - case 'editObjectPermission': - // we also need the process uid variable for the function. - $oProcessMap->editObjectPermission($oData->op_uid,$oData->pro_uid); - break; - case 'caseTracker': - $oProcessMap->caseTracker($oData->pro_uid); - break; - case 'caseTrackerObjects': - $oProcessMap->caseTrackerObjects($oData->pro_uid); - break; - case 'processFilesManager': - $_SESSION['PFMDirectory'] = ''; - $oProcessMap->processFilesManager($oData->pro_uid); - break; - case 'exploreDirectory': - $objData = G::json_decode($_REQUEST['data']); - $_SESSION['PFMDirectory'] = $objData->{'main_directory'}; - $oProcessMap->exploreDirectory($oData->pro_uid, $oData->main_directory, $oData->directory); - break; - case 'deleteFile': - $oProcessMap->deleteFile($oData->pro_uid, $oData->main_directory, $oData->directory, $oData->file); - break; - case 'deleteDirectory': - $oProcessMap->deleteDirectory($oData->pro_uid, $oData->main_directory, $oData->directory, $oData->dir_to_delete); - break; - case 'downloadFile': - $oProcessMap->downloadFile($oData->pro_uid, $oData->main_directory, $oData->directory, $oData->file); - break; - case 'deleteSubProcess': - $sOutput = $oProcessMap->deleteSubProcess($oData->pro_uid, $oData->tas_uid); - break; - case 'subProcess_Properties': - $oProcessMap->subProcess_Properties($oData->pro_uid, $oData->tas_uid, $oData->index); - break; - case 'showDetailsPMDWL': - G::LoadClass('processes'); - $oProcesses = new Processes(); - $oProcesses->ws_open_public(); - $aFields = get_object_vars($oProcesses->ws_processGetData($oData->pro_uid)); + $sType = 'DISCRIMINATOR'; + break; + } + if (($oData->type != 0) && ($oData->type != 5) && ($oData->type != 8)) { + if ($oProcessMap->getNumberOfRoutes( $oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType ) > 0) { + die(); + } + unset( $aRow ); + } + if (($oData->delete) || ($oData->type == 0) || ($oData->type == 5) || ($oData->type == 8)) { + G::LoadClass( 'tasks' ); + $oTasks = new Tasks(); + $oTasks->deleteAllRoutesOfTask( $oData->pro_uid, $oData->tas_uid ); + $oTasks->deleteAllGatewayOfTask( $oData->pro_uid, $oData->tas_uid ); + } + $oProcessMap->saveNewPattern( $oData->pro_uid, $oData->tas_uid, $oData->next_task, $sType, $oData->delete ); + break; + case 'deleteAllRoutes': + G::LoadClass( 'tasks' ); + $oTasks = new Tasks(); + $oTasks->deleteAllRoutesOfTask( $oData->pro_uid, $oData->tas_uid ); + break; + case 'objectPermissions': + $oProcessMap->objectsPermissionsList( $oData->pro_uid ); + break; + case 'newObjectPermission': + $oProcessMap->newObjectPermission( $oData->pro_uid ); + break; + case 'editObjectPermission': + // we also need the process uid variable for the function. + $oProcessMap->editObjectPermission( $oData->op_uid, $oData->pro_uid ); + break; + case 'caseTracker': + $oProcessMap->caseTracker( $oData->pro_uid ); + break; + case 'caseTrackerObjects': + $oProcessMap->caseTrackerObjects( $oData->pro_uid ); + break; + case 'processFilesManager': + $_SESSION['PFMDirectory'] = ''; + $oProcessMap->processFilesManager( $oData->pro_uid ); + break; + case 'exploreDirectory': + $objData = G::json_decode( $_REQUEST['data'] ); + $_SESSION['PFMDirectory'] = $objData->{'main_directory'}; + $oProcessMap->exploreDirectory( $oData->pro_uid, $oData->main_directory, $oData->directory ); + break; + case 'deleteFile': + $oProcessMap->deleteFile( $oData->pro_uid, $oData->main_directory, $oData->directory, $oData->file ); + break; + case 'deleteDirectory': + $oProcessMap->deleteDirectory( $oData->pro_uid, $oData->main_directory, $oData->directory, $oData->dir_to_delete ); + break; + case 'downloadFile': + $oProcessMap->downloadFile( $oData->pro_uid, $oData->main_directory, $oData->directory, $oData->file ); + break; + case 'deleteSubProcess': + $sOutput = $oProcessMap->deleteSubProcess( $oData->pro_uid, $oData->tas_uid ); + break; + case 'subProcess_Properties': + $oProcessMap->subProcess_Properties( $oData->pro_uid, $oData->tas_uid, $oData->index ); + break; + case 'showDetailsPMDWL': + G::LoadClass( 'processes' ); + $oProcesses = new Processes(); + $oProcesses->ws_open_public(); + $aFields = get_object_vars( $oProcesses->ws_processGetData( $oData->pro_uid ) ); - $aFields['description'] = nl2br ($aFields['description']); - $aFields['installSteps'] = nl2br ($aFields['installSteps']); - switch ($aFields['privacy']) { - case 'FREE': - $aFields['link_label'] = G::LoadTranslation('ID_DOWNLOAD'); - $aFields['link_href'] = '../processes/downloadPML?id=' . $oData->pro_uid . '&s=' . $sessionId; - break; - case 'PUBLIC': - require_once 'classes/model/Configuration.php'; - $oCriteria = new Criteria('workflow'); - $oCriteria->addSelectColumn(ConfigurationPeer::CFG_VALUE); - $oCriteria->add(ConfigurationPeer::CFG_UID, 'REGISTER_INFORMATION'); - $oCriteria->add(ConfigurationPeer::USR_UID, $_SESSION['USER_LOGGED']); - if (ConfigurationPeer::doCount($oCriteria) > 0) { - $oDataset = ConfigurationPeer::doSelectRS($oCriteria); - $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $oDataset->next(); - $aRow = $oDataset->getRow(); - $aRI = unserialize($aRow['CFG_VALUE']); - try { - if ($oProcesses->ws_open($aRI['u'], $aRI['p']) == 1) { - $bExists = true; - } - else { + $aFields['description'] = nl2br( $aFields['description'] ); + $aFields['installSteps'] = nl2br( $aFields['installSteps'] ); + switch ($aFields['privacy']) { + case 'FREE': + $aFields['link_label'] = G::LoadTranslation( 'ID_DOWNLOAD' ); + $aFields['link_href'] = '../processes/downloadPML?id=' . $oData->pro_uid . '&s=' . $sessionId; + break; + case 'PUBLIC': + require_once 'classes/model/Configuration.php'; + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->addSelectColumn( ConfigurationPeer::CFG_VALUE ); + $oCriteria->add( ConfigurationPeer::CFG_UID, 'REGISTER_INFORMATION' ); + $oCriteria->add( ConfigurationPeer::USR_UID, $_SESSION['USER_LOGGED'] ); + if (ConfigurationPeer::doCount( $oCriteria ) > 0) { + $oDataset = ConfigurationPeer::doSelectRS( $oCriteria ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $oDataset->next(); + $aRow = $oDataset->getRow(); + $aRI = unserialize( $aRow['CFG_VALUE'] ); + try { + if ($oProcesses->ws_open( $aRI['u'], $aRI['p'] ) == 1) { + $bExists = true; + } else { + $bExists = false; + } + } catch (Exception $oException) { + $bExists = false; + } + if ($bExists) { + $aFields['link_label'] = G::LoadTranslation( 'ID_DOWNLOAD' ); + $aFields['link_href'] = '../processes/downloadPML?id=' . $oData->pro_uid . '&s=' . $sessionId; + } else { + $aFields['link_label'] = G::LoadTranslation( 'ID_NEED_REGISTER' ); + $aFields['link_href'] = "javascript:registerPML('" . $oData->pro_uid . "');"; + } + } else { + $aFields['link_label'] = G::LoadTranslation( 'ID_NEED_REGISTER' ); + $aFields['link_href'] = "javascript:registerPML('" . $oData->pro_uid . "');"; + } + break; + } + $G_PUBLISH = new Publisher(); + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'processes/objectpmView', '', $aFields, '' ); + G::RenderPage( 'publish', 'raw' ); + break; + case 'registerPML': + $aFields = array (); + $aFields['pro_uid'] = $oData->pro_uid; + $aFields['link_create_account'] = PML_SERVER; + $G_PUBLISH = new Publisher(); + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'processes/registerPML', '', $aFields, '' ); + G::RenderPage( 'publish', 'raw' ); + break; + case 'loginPML': + G::LoadClass( 'processes' ); + G::LoadThirdParty( 'pear/json', 'class.json' ); + $oProcesses = new Processes(); + try { + if ($oProcesses->ws_open( $oData->u, $oData->p ) == 1) { + $bExists = true; + } else { + $bExists = false; + } + } catch (Exception $oException) { $bExists = false; - } - } - catch (Exception $oException) { - $bExists = false; } + $oResponse = new stdclass(); if ($bExists) { - $aFields['link_label'] = G::LoadTranslation('ID_DOWNLOAD'); - $aFields['link_href'] = '../processes/downloadPML?id=' . $oData->pro_uid . '&s=' . $sessionId; - } - else { - $aFields['link_label'] = G::LoadTranslation('ID_NEED_REGISTER'); - $aFields['link_href'] = "javascript:registerPML('" . $oData->pro_uid . "');"; - } - } - else { - $aFields['link_label'] = G::LoadTranslation('ID_NEED_REGISTER'); - $aFields['link_href'] = "javascript:registerPML('" . $oData->pro_uid . "');"; - } - break; - } - $G_PUBLISH = new Publisher; - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'processes/objectpmView', '', $aFields, ''); - G::RenderPage('publish', 'raw'); - break; - case 'registerPML': - $aFields = array(); - $aFields['pro_uid'] = $oData->pro_uid; - $aFields['link_create_account'] = PML_SERVER; - $G_PUBLISH = new Publisher; - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'processes/registerPML', '', $aFields, ''); - G::RenderPage('publish', 'raw'); - break; - case 'loginPML': - G::LoadClass('processes'); - G::LoadThirdParty('pear/json','class.json'); - $oProcesses = new Processes(); - try { - if ($oProcesses->ws_open($oData->u, $oData->p) == 1) { - $bExists = true; - } - else { - $bExists = false; - } - } - catch (Exception $oException) { - $bExists = false; - } - $oResponse = new stdclass(); - if ($bExists) { - require_once 'classes/model/Configuration.php'; - $oConfiguration = new Configuration(); - $oConfiguration->create(array('CFG_UID' => 'REGISTER_INFORMATION', - 'OBJ_UID' => '', - 'CFG_VALUE' => serialize(array('u' => $oData->u, 'p' => $oData->p)), - 'PRO_UID' => '', - 'USR_UID' => $_SESSION['USER_LOGGED'], - 'APP_UID' => '')); - $oResponse->sLabel = G::LoadTranslation('ID_DOWNLOAD'); - $oResponse->sLink = '../processes/downloadPML?id=' . $oData->pro_uid . '&s=' . $sessionId; - } - $oResponse->bExists = $bExists; - $oJSON = new Services_JSON(); - echo $oJSON->encode($oResponse); - break; + require_once 'classes/model/Configuration.php'; + $oConfiguration = new Configuration(); + $oConfiguration->create( array ('CFG_UID' => 'REGISTER_INFORMATION','OBJ_UID' => '','CFG_VALUE' => serialize( array ('u' => $oData->u,'p' => $oData->p + ) ),'PRO_UID' => '','USR_UID' => $_SESSION['USER_LOGGED'],'APP_UID' => '' + ) ); + $oResponse->sLabel = G::LoadTranslation( 'ID_DOWNLOAD' ); + $oResponse->sLink = '../processes/downloadPML?id=' . $oData->pro_uid . '&s=' . $sessionId; + } + $oResponse->bExists = $bExists; + $oJSON = new Services_JSON(); + echo $oJSON->encode( $oResponse ); + break; - case 'editFile': - //echo $_REQUEST['filename']; - global $G_PUBLISH; - $G_PUBLISH = new Publisher(); - ///-- $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - $sDir = ""; - if(isset($_SESSION['PFMDirectory'])) - $sDir = $_SESSION['PFMDirectory']; + case 'editFile': + //echo $_REQUEST['filename']; + global $G_PUBLISH; + $G_PUBLISH = new Publisher(); + ///-- $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + $sDir = ""; + if (isset( $_SESSION['PFMDirectory'] )) + $sDir = $_SESSION['PFMDirectory']; - switch($sDir){ - case 'mailTemplates' : $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - break; - case 'public' : $sDirectory = PATH_DATA_PUBLIC . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - break; - default : $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - break; - } - $fcontent = file_get_contents($sDirectory); - $extion=explode(".",$_REQUEST['filename']); + switch ($sDir) { + case 'mailTemplates': + $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + break; + case 'public': + $sDirectory = PATH_DATA_PUBLIC . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + break; + default: + $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + break; + } + $fcontent = file_get_contents( $sDirectory ); + $extion = explode( ".", $_REQUEST['filename'] ); - //if($extion[count($extion)-1]=='html' || $extion[count($extion)-1]=='txt'){ - $aData = Array( - 'pro_uid'=>$_REQUEST['pro_uid'], - 'fcontent'=>$fcontent, - 'filename'=>$_REQUEST['filename'], - ); - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'processes/processes_FileEdit', '', $aData); - G::RenderPage('publish', 'raw'); - /*}else{ echo 'krlos'; + //if($extion[count($extion)-1]=='html' || $extion[count($extion)-1]=='txt'){ + $aData = Array ('pro_uid' => $_REQUEST['pro_uid'],'fcontent' => $fcontent,'filename' => $_REQUEST['filename'] + ); + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'processes/processes_FileEdit', '', $aData ); + G::RenderPage( 'publish', 'raw' ); + /*}else{ echo 'krlos'; $aMessage['MESSAGE'] = G::loadTranslation( 'HTML_FILES' ); $G_PUBLISH->AddContent ( 'xmlform', 'xmlform', 'login/showMessage', '',$aMessage ); }*/ - break; - case 'saveFile': - global $G_PUBLISH; - $G_PUBLISH = new Publisher(); - $sDir = ""; - if(isset($_REQUEST['MAIN_DIRECTORY'])) - $sDir = $_REQUEST['MAIN_DIRECTORY']; + break; + case 'saveFile': + global $G_PUBLISH; + $G_PUBLISH = new Publisher(); + $sDir = ""; + if (isset( $_REQUEST['MAIN_DIRECTORY'] )) + $sDir = $_REQUEST['MAIN_DIRECTORY']; - switch($sDir){ - case 'mailTemplates' : $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - break; - case 'public' : $sDirectory = PATH_DATA_PUBLIC . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - break; - default : $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; - break; - } + switch ($sDir) { + case 'mailTemplates': + $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + break; + case 'public': + $sDirectory = PATH_DATA_PUBLIC . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + break; + default: + $sDirectory = PATH_DATA_MAILTEMPLATES . $_REQUEST['pro_uid'] . PATH_SEP . $_REQUEST['filename']; + break; + } - $fp = fopen($sDirectory, 'w'); - $content = stripslashes($_REQUEST['fcontent']); - $content = str_replace("@amp@", "&", $content); - $content = base64_decode($content); - fwrite($fp, $content); - fclose($fp); - echo 'saved: '. $sDirectory; - break; - case 'events': - $oProcessMap->eventsList($oData->pro_uid, $oData->type); - break; -/* + $fp = fopen( $sDirectory, 'w' ); + $content = stripslashes( $_REQUEST['fcontent'] ); + $content = str_replace( "@amp@", "&", $content ); + $content = base64_decode( $content ); + fwrite( $fp, $content ); + fclose( $fp ); + echo 'saved: ' . $sDirectory; + break; + case 'events': + $oProcessMap->eventsList( $oData->pro_uid, $oData->type ); + break; + /* case 'saveFile': global $G_PUBLISH; $G_PUBLISH = new Publisher(); @@ -519,56 +506,55 @@ try { echo 'saved: '. $sDirectory; break; */ - case 'emptyFileOptions': - global $G_PUBLISH; - $G_PUBLISH = new Publisher(); - $G_PUBLISH->AddContent('xmlform', 'xmlform', 'processes/processes_FileEditCreateEmpty', ''); - G::RenderPage('publish', 'raw'); - break; + case 'emptyFileOptions': + global $G_PUBLISH; + $G_PUBLISH = new Publisher(); + $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'processes/processes_FileEditCreateEmpty', '' ); + G::RenderPage( 'publish', 'raw' ); + break; - case "taskCases": - require_once 'classes/model/AppDelegation.php'; - $criteria = new Criteria('workflow'); - $criteria->addSelectColumn(AppDelegationPeer::APP_UID); - $criteria->addSelectColumn(AppDelegationPeer::DEL_INDEX); - $criteria->addSelectColumn(AppDelegationPeer::TAS_UID); - $criteria->add(AppDelegationPeer::TAS_UID, $oData->task_uid); - $criteria->add(AppDelegationPeer::DEL_THREAD_STATUS, 'OPEN'); - $casesNumRec = AppDelegationPeer::doCount($criteria); - if ($casesNumRec == 0) { - require_once 'classes/model/AppDelay.php'; - $criteria = new Criteria('workflow'); - $criteria->addSelectColumn(AppDelayPeer::APP_UID); - $criteria->addSelectColumn(AppDelayPeer::APP_DEL_INDEX); - $criteria->add(AppDelayPeer::PRO_UID, $oData->pro_uid); - $criteria->add(AppDelayPeer::APP_TYPE, 'PAUSE'); - $criteria->add(AppDelayPeer::APP_DISABLE_ACTION_DATE, null, Criteria::ISNULL); - $dataset = AppDelayPeer::doSelectRS($criteria); - if ($dataset->getRecordCount() > 0) { - $dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $dataset->next(); - while ($row = $dataset->getRow()) { - $criteria = new Criteria('workflow'); - $criteria->addSelectColumn(AppDelegationPeer::TAS_UID); - $criteria->add(AppDelegationPeer::APP_UID, $row['APP_UID']); - $criteria->add(AppDelegationPeer::DEL_INDEX, $row['APP_DEL_INDEX']); - $criteria->add(AppDelegationPeer::TAS_UID, $oData->task_uid); - $casesNumRec += AppDelegationPeer::doCount($criteria); - $dataset->next(); - } - } - } - $response = new stdclass(); - $response->casesNumRec = $casesNumRec; - $json = new Services_JSON(); - $sOutput = $json->encode($response); - break; - } - if (isset($sOutput)) { - die($sOutput); - } + case "taskCases": + require_once 'classes/model/AppDelegation.php'; + $criteria = new Criteria( 'workflow' ); + $criteria->addSelectColumn( AppDelegationPeer::APP_UID ); + $criteria->addSelectColumn( AppDelegationPeer::DEL_INDEX ); + $criteria->addSelectColumn( AppDelegationPeer::TAS_UID ); + $criteria->add( AppDelegationPeer::TAS_UID, $oData->task_uid ); + $criteria->add( AppDelegationPeer::DEL_THREAD_STATUS, 'OPEN' ); + $casesNumRec = AppDelegationPeer::doCount( $criteria ); + if ($casesNumRec == 0) { + require_once 'classes/model/AppDelay.php'; + $criteria = new Criteria( 'workflow' ); + $criteria->addSelectColumn( AppDelayPeer::APP_UID ); + $criteria->addSelectColumn( AppDelayPeer::APP_DEL_INDEX ); + $criteria->add( AppDelayPeer::PRO_UID, $oData->pro_uid ); + $criteria->add( AppDelayPeer::APP_TYPE, 'PAUSE' ); + $criteria->add( AppDelayPeer::APP_DISABLE_ACTION_DATE, null, Criteria::ISNULL ); + $dataset = AppDelayPeer::doSelectRS( $criteria ); + if ($dataset->getRecordCount() > 0) { + $dataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $dataset->next(); + while ($row = $dataset->getRow()) { + $criteria = new Criteria( 'workflow' ); + $criteria->addSelectColumn( AppDelegationPeer::TAS_UID ); + $criteria->add( AppDelegationPeer::APP_UID, $row['APP_UID'] ); + $criteria->add( AppDelegationPeer::DEL_INDEX, $row['APP_DEL_INDEX'] ); + $criteria->add( AppDelegationPeer::TAS_UID, $oData->task_uid ); + $casesNumRec += AppDelegationPeer::doCount( $criteria ); + $dataset->next(); + } + } + } + $response = new stdclass(); + $response->casesNumRec = $casesNumRec; + $json = new Services_JSON(); + $sOutput = $json->encode( $response ); + break; + } + if (isset( $sOutput )) { + die( $sOutput ); + } +} catch (Exception $oException) { + die( $oException->getMessage() . "\n" . $oException->getTraceAsString() ); } -catch (Exception $oException) { - die($oException->getMessage() . "\n" . $oException->getTraceAsString()); -} -?> +