96 lines
4.9 KiB
PHP
96 lines
4.9 KiB
PHP
<?php
|
|
/**
|
|
* cases_ActionsTree.php
|
|
*
|
|
* ProcessMaker Open Source Edition
|
|
* Copyright (C) 2004 - 2008 Colosa Inc.23
|
|
*
|
|
* This program is free software: you can redistribute it and/or modify
|
|
* it under the terms of the GNU Affero General Public License as
|
|
* published by the Free Software Foundation, either version 3 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* 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
|
|
* 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 <http://www.gnu.org/licenses/>.
|
|
*
|
|
* For more information, contact Colosa Inc, 2566 Le Jeune Rd.,
|
|
* Coral Gables, FL, 33134, USA, or email info@colosa.com.
|
|
*
|
|
*/
|
|
|
|
$APP_UID = $_SESSION['APPLICATION'];
|
|
|
|
$c = new Criteria('workflow');
|
|
$c->clearSelectColumns();
|
|
$c->addSelectColumn(AppThreadPeer::APP_THREAD_PARENT);
|
|
$c->add(AppThreadPeer::APP_UID, $APP_UID);
|
|
$c->add(AppThreadPeer::APP_THREAD_STATUS, 'OPEN');
|
|
$cant = AppThreadPeer::doCount($c);
|
|
|
|
$oTree = new PmTree();
|
|
$oTree->nodeType = "blank";
|
|
$oTree->name = 'Actions';
|
|
$oTree->showSign = false;
|
|
|
|
$oCase = new Cases();
|
|
$aFields = $oCase->loadCase($_SESSION['APPLICATION'], $_SESSION['INDEX']);
|
|
|
|
$oCriteria = new Criteria('workflow');
|
|
$oCriteria->add(AppDelayPeer::APP_UID, $_SESSION['APPLICATION']);
|
|
$oCriteria->add(AppDelayPeer::APP_DEL_INDEX, $_SESSION['INDEX']);
|
|
$oCriteria->add(AppDelayPeer::APP_TYPE, 'PAUSE');
|
|
$oCriteria->add(AppDelayPeer::APP_DISABLE_ACTION_USER, null);
|
|
|
|
$oDataset = AppDelayPeer::doSelectRS($oCriteria);
|
|
$oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
|
$oDataset->next();
|
|
$aRow = $oDataset->getRow();
|
|
global $RBAC;
|
|
switch ($aFields['APP_STATUS']) {
|
|
case 'DRAFT':
|
|
if (!$aRow) {
|
|
$oNode = $oTree->addChild('1', '<a id="spause" class="linkInBlue" href="#" onclick="pauseCase();return false;">' . G::LoadTranslation('ID_PAUSED_CASE') . '</a></span><a id="scpause" class="linkInBlue" href="#" onclick="cancelPauseCase();return false;" style="display:none">' . G::LoadTranslation('ID_CANCEL') . ' ' . strtolower(G::LoadTranslation('ID_PAUSED_CASE')) . '</a><div id="pausediv" style="display:none"></div>', array('nodeType' => 'parentBlue'));
|
|
} else {
|
|
$oNode = $oTree->addChild('1', '<a class="linkInBlue" href="#" onclick="unpauseCase();return false;">' . G::LoadTranslation('ID_UNPAUSE') . '</a>', array('nodeType' => 'parentBlue'));
|
|
}
|
|
$oNode = $oTree->addChild('2', '<a class="linkInBlue" href="#" onclick="deleteCase(\'' . $APP_UID . '\');return false;">' . G::LoadTranslation('ID_DELETE') . '</a>', array('nodeType' => 'parentBlue'));
|
|
if ($RBAC->userCanAccess('PM_REASSIGNCASE') == 1) {
|
|
$oNode = $oTree->addChild('3', '<a class="linkInBlue" href="#" onclick="view_reassignCase(\'' . $APP_UID . '\');return false;">' . G::LoadTranslation('ID_REASSIGN') . '</a>', array('nodeType' => 'parentBlue'));
|
|
}
|
|
break;
|
|
case 'TO_DO':
|
|
if (!$aRow) {
|
|
$oNode = $oTree->addChild('1', '<a id="spause" class="linkInBlue" href="#" onclick="pauseCase();return false;">' . G::LoadTranslation('ID_PAUSED_CASE') . '</a></span><a id="scpause" class="linkInBlue" href="#" onclick="cancelPauseCase();return false;" style="display:none">' . G::LoadTranslation('ID_CANCEL') . ' ' . strtolower(G::LoadTranslation('ID_PAUSED_CASE')) . '</a><div id="pausediv" style="display:none"></div>', array('nodeType' => 'parentBlue'));
|
|
if ($cant == 1) {
|
|
$oNode = $oTree->addChild('2', '<a class="linkInBlue" href="#" onclick="cancelCase();return false;">' . G::LoadTranslation('ID_CANCEL') . '</a>', array('nodeType' => 'parentBlue'));
|
|
}
|
|
} else {
|
|
$oNode = $oTree->addChild('1', '<a class="linkInBlue" href="#" onclick="unpauseCase();return false;">' . G::LoadTranslation('ID_UNPAUSE') . '</a>', array('nodeType' => 'parentBlue'));
|
|
}
|
|
if ($RBAC->userCanAccess('PM_REASSIGNCASE') == 1) {
|
|
$oNode = $oTree->addChild('3', '<a class="linkInBlue" href="#" onclick="view_reassignCase(\'' . $APP_UID . '\');return false;">' . G::LoadTranslation('ID_REASSIGN') . '</a>', array('nodeType' => 'parentBlue'));
|
|
}
|
|
break;
|
|
|
|
case 'CANCELLED':
|
|
$oNode = $oTree->addChild('1', '<a class="linkInBlue" href="#" onclick="reactivateCase();return false;">' . G::LoadTranslation('ID_REACTIVATE') . '</a>', array('nodeType' => 'parentBlue'));
|
|
break;
|
|
}
|
|
|
|
$oTask = new Task();
|
|
$aTask = $oTask->load($_SESSION['TASK']);
|
|
if ($aTask['TAS_TYPE'] == 'ADHOC') {
|
|
$oNode = $oTree->addChild('4', '<a class="linkInBlue" href="#" onclick="adhocAssignmentUsers();return false;">' . G::LoadTranslation('ID_ADHOC_ASSIGNMENT') . '</a>', array('nodeType' => 'parentBlue'));
|
|
}
|
|
|
|
$oNode->plus = '';
|
|
$oNode->minus = '';
|
|
$oNode->point = '';
|
|
|
|
echo $oTree->render();
|