HOR-2282
This commit is contained in:
@@ -141,7 +141,7 @@ class Derivation
|
||||
$arrayTaskData["NEXT_TASK"]["TAS_PARENT"] = "";
|
||||
}
|
||||
|
||||
$regexpTaskTypeToExclude = "GATEWAYTOGATEWAY|END-MESSAGE-EVENT|SCRIPT-TASK|INTERMEDIATE-CATCH-TIMER-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|END-EMAIL-EVENT|INTERMEDIATE-THROW-EMAIL-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT";
|
||||
$regexpTaskTypeToExclude = "GATEWAYTOGATEWAY|END-MESSAGE-EVENT|SCRIPT-TASK|SERVICE-TASK|INTERMEDIATE-CATCH-TIMER-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|END-EMAIL-EVENT|INTERMEDIATE-THROW-EMAIL-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT";
|
||||
|
||||
$arrayTaskData["NEXT_TASK"]["USER_ASSIGNED"] = (!preg_match("/^(?:" . $regexpTaskTypeToExclude . ")$/", $arrayTaskData["NEXT_TASK"]["TAS_TYPE"]))? $this->getNextAssignedUser($arrayTaskData) : array("USR_UID" => "", "USR_FULLNAME" => "");
|
||||
}
|
||||
@@ -1099,6 +1099,10 @@ class Derivation
|
||||
}
|
||||
break;
|
||||
}
|
||||
//Execute Service Task
|
||||
if (function_exists('executeServiceTaskByActivityUid')) {
|
||||
$appFields["APP_DATA"] = executeServiceTaskByActivityUid($nextDel["TAS_UID"], $appFields);
|
||||
}
|
||||
|
||||
//Execute Script-Task
|
||||
$scriptTask = new \ProcessMaker\BusinessModel\ScriptTask();
|
||||
@@ -1106,7 +1110,7 @@ class Derivation
|
||||
$appFields["APP_DATA"] = $scriptTask->execScriptByActivityUid($nextDel["TAS_UID"], $appFields);
|
||||
|
||||
//Create record in table APP_ASSIGN_SELF_SERVICE_VALUE
|
||||
$regexpTaskTypeToExclude = "SCRIPT-TASK|INTERMEDIATE-THROW-EMAIL-EVENT";
|
||||
$regexpTaskTypeToExclude = "SCRIPT-TASK|INTERMEDIATE-THROW-EMAIL-EVENT|SERVICE-TASK";
|
||||
|
||||
if (!is_null($taskNextDel) && !preg_match("/^(?:" . $regexpTaskTypeToExclude . ")$/", $taskNextDel->getTasType())) {
|
||||
if ($taskNextDel->getTasAssignType() == "SELF_SERVICE" && trim($taskNextDel->getTasGroupVariable()) != "") {
|
||||
@@ -1126,7 +1130,7 @@ class Derivation
|
||||
}
|
||||
|
||||
//Check if $taskNextDel is Script-Task
|
||||
if (!is_null($taskNextDel) && ($taskNextDel->getTasType() === "SCRIPT-TASK" || $taskNextDel->getTasType() === "INTERMEDIATE-THROW-EMAIL-EVENT" || $taskNextDel->getTasType() === "INTERMEDIATE-THROW-MESSAGE-EVENT")) {
|
||||
if (!is_null($taskNextDel) && ($taskNextDel->getTasType() === "SCRIPT-TASK" || $taskNextDel->getTasType() === "INTERMEDIATE-THROW-EMAIL-EVENT" || $taskNextDel->getTasType() === "INTERMEDIATE-THROW-MESSAGE-EVENT" || $taskNextDel->getTasType() === "SERVICE-TASK")) {
|
||||
//Get for $nextDel["TAS_UID"] your next Task
|
||||
$currentDelegationAux = array_merge($currentDelegation, array("DEL_INDEX" => $iNewDelIndex, "TAS_UID" => $nextDel["TAS_UID"]));
|
||||
$nextDelegationsAux = array();
|
||||
|
||||
@@ -449,6 +449,49 @@ class PMPlugin
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Path registry to file js or css.
|
||||
* @param type $pathFile
|
||||
* @param string $scope
|
||||
* @throws Exception
|
||||
*/
|
||||
public function registerDesignerSourcePath($pathFile, $scope = null)
|
||||
{
|
||||
if ($scope === null) {
|
||||
$scope = '/plugin/' . $this->sNamespace . '/';
|
||||
}
|
||||
try {
|
||||
$pluginRegistry = &PMPluginRegistry::getSingleton();
|
||||
$pluginRegistry->registerDesignerSourcePath($this->sNamespace, $scope . $pathFile);
|
||||
} catch (Exception $e) {
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Enable build js or css into build.json paths.
|
||||
* @param type $sourcePath
|
||||
*/
|
||||
public function enableExtensionSources($sourcePath = 'config/build.json')
|
||||
{
|
||||
$path = PATH_PLUGINS . $this->sPluginFolder . "/";
|
||||
$buildFile = $path . $sourcePath;
|
||||
if (is_file($buildFile)) {
|
||||
$buildObjects = G::json_decode(file_get_contents($buildFile));
|
||||
foreach ($buildObjects as $item) {
|
||||
$item->path = $path . rtrim($item->path, "/\\");
|
||||
$extensionPath = "extension-" . $item->name . "-" . G::browserCacheFilesGetUid() . "." . $item->extension;
|
||||
$file = $path . "public_html/" . $extensionPath;
|
||||
@file_put_contents($file, "", LOCK_EX);
|
||||
foreach ($item->files as $name) {
|
||||
@file_put_contents($file, file_get_contents($item->path . "/" . $name), FILE_APPEND | LOCK_EX);
|
||||
}
|
||||
$this->registerDesignerSourcePath($extensionPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class menuDetail
|
||||
|
||||
@@ -105,6 +105,7 @@ class PMPluginRegistry
|
||||
private $_aMenuOptionsToReplace = array ();
|
||||
private $_aImportProcessCallbackFile = array ();
|
||||
private $_aOpenReassignCallback = array ();
|
||||
private $_arrayDesignerSourcePath = array();
|
||||
|
||||
/**
|
||||
* Registry a plugin javascript to include with js core at same runtime
|
||||
@@ -409,6 +410,12 @@ class PMPluginRegistry
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($this->_arrayDesignerSourcePath as $key => $detail) {
|
||||
if ($detail->pluginName == $sNamespace) {
|
||||
unset($this->_arrayDesignerSourcePath[$key]);
|
||||
}
|
||||
}
|
||||
|
||||
if(sizeof( $this->_aMenuOptionsToReplace )){
|
||||
unset( $this->_aMenuOptionsToReplace );
|
||||
}
|
||||
@@ -1849,4 +1856,50 @@ class PMPluginRegistry
|
||||
}
|
||||
return $enabledPlugins;
|
||||
}
|
||||
|
||||
/**
|
||||
* Registry in an array routes for js or css files.
|
||||
* @param type $pluginName
|
||||
* @param type $pathFile
|
||||
* @throws Exception
|
||||
*/
|
||||
public function registerDesignerSourcePath($pluginName, $pathFile)
|
||||
{
|
||||
try {
|
||||
$flagFound = false;
|
||||
|
||||
foreach ($this->_arrayDesignerSourcePath as $value) {
|
||||
if ($value->pluginName == $pluginName && $value->pathFile == $pathFile) {
|
||||
$flagFound = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!$flagFound) {
|
||||
$obj = new stdClass();
|
||||
$obj->pluginName = $pluginName;
|
||||
$obj->pathFile = $pathFile;
|
||||
|
||||
$this->_arrayDesignerSourcePath[] = $obj;
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* You obtain an array containing the routes recorded by the
|
||||
* function registerDesignerSourcePath.
|
||||
* @return type
|
||||
* @throws Exception
|
||||
*/
|
||||
public function getDesignerSourcePath()
|
||||
{
|
||||
try {
|
||||
return $this->_arrayDesignerSourcePath;
|
||||
} catch (Exception $e) {
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -195,7 +195,7 @@ class TaskMapBuilder
|
||||
|
||||
$tMap->addColumn('TAS_RECEIVE_MESSAGE', 'TasReceiveMessage', 'string', CreoleTypes::LONGVARCHAR, false, null);
|
||||
|
||||
$tMap->addValidator('TAS_TYPE', 'validValues', 'propel.validator.ValidValuesValidator', 'NORMAL|ADHOC|SUBPROCESS|HIDDEN|GATEWAYTOGATEWAY|WEBENTRYEVENT|END-MESSAGE-EVENT|START-MESSAGE-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT|SCRIPT-TASK|START-TIMER-EVENT|INTERMEDIATE-CATCH-TIMER-EVENT|END-EMAIL-EVENT|INTERMEDIATE-THROW-EMAIL-EVENT', 'Please set a valid value for TAS_TYPE');
|
||||
$tMap->addValidator('TAS_TYPE', 'validValues', 'propel.validator.ValidValuesValidator', 'NORMAL|ADHOC|SUBPROCESS|HIDDEN|GATEWAYTOGATEWAY|WEBENTRYEVENT|END-MESSAGE-EVENT|START-MESSAGE-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT|SCRIPT-TASK|START-TIMER-EVENT|INTERMEDIATE-CATCH-TIMER-EVENT|END-EMAIL-EVENT|INTERMEDIATE-THROW-EMAIL-EVENT|SERVICE-TASK', 'Please set a valid value for TAS_TYPE');
|
||||
|
||||
$tMap->addValidator('TAS_TIMEUNIT', 'validValues', 'propel.validator.ValidValuesValidator', 'MINUTES|HOURS|DAYS|WEEKS|MONTHS', 'Please select a valid value for TAS_TIMEUNIT.');
|
||||
|
||||
|
||||
@@ -1333,7 +1333,7 @@
|
||||
</index>
|
||||
|
||||
<validator column="TAS_TYPE">
|
||||
<rule name="validValues" value="NORMAL|ADHOC|SUBPROCESS|HIDDEN|GATEWAYTOGATEWAY|WEBENTRYEVENT|END-MESSAGE-EVENT|START-MESSAGE-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT|SCRIPT-TASK|START-TIMER-EVENT|INTERMEDIATE-CATCH-TIMER-EVENT|END-EMAIL-EVENT|INTERMEDIATE-THROW-EMAIL-EVENT" message="Please set a valid value for TAS_TYPE" />
|
||||
<rule name="validValues" value="NORMAL|ADHOC|SUBPROCESS|HIDDEN|GATEWAYTOGATEWAY|WEBENTRYEVENT|END-MESSAGE-EVENT|START-MESSAGE-EVENT|INTERMEDIATE-THROW-MESSAGE-EVENT|INTERMEDIATE-CATCH-MESSAGE-EVENT|SCRIPT-TASK|START-TIMER-EVENT|INTERMEDIATE-CATCH-TIMER-EVENT|END-EMAIL-EVENT|INTERMEDIATE-THROW-EMAIL-EVENT|SERVICE-TASK" message="Please set a valid value for TAS_TYPE" />
|
||||
</validator>
|
||||
<validator column="TAS_TIMEUNIT">
|
||||
<rule name="validValues" value="MINUTES|HOURS|DAYS|WEEKS|MONTHS" message="Please select a valid value for TAS_TIMEUNIT."/>
|
||||
|
||||
@@ -24283,6 +24283,12 @@ msgstr "New BPMN Project"
|
||||
msgid "The following case is a \"Script-Task\""
|
||||
msgstr "The following case is a \"Script-Task\""
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_ROUTE_TO_TASK_SERVICE_TASK
|
||||
#: LABEL/ID_ROUTE_TO_TASK_SERVICE_TASK
|
||||
msgid "The following case is a \"Service-Task\""
|
||||
msgstr "The following case is a \"Service-Task\""
|
||||
|
||||
# TRANSLATION
|
||||
# LABEL/ID_MAFE_0d82790b0612935992bd564a17ce37d6
|
||||
#: LABEL/ID_MAFE_0d82790b0612935992bd564a17ce37d6
|
||||
|
||||
@@ -154,6 +154,26 @@ class Designer extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
//plugin set source path
|
||||
$sourceCss = array();
|
||||
$sourceJs = array();
|
||||
|
||||
$pluginRegistry = &PMPluginRegistry::getSingleton();
|
||||
$srcPath = $pluginRegistry->getDesignerSourcePath();
|
||||
|
||||
foreach ($srcPath as $key => $value) {
|
||||
$ext = pathinfo($value->pathFile, PATHINFO_EXTENSION);
|
||||
if ($ext === "css") {
|
||||
$sourceCss[] = $value->pathFile;
|
||||
}
|
||||
if ($ext === "js") {
|
||||
$sourceJs[] = $value->pathFile;
|
||||
}
|
||||
}
|
||||
|
||||
$this->setVar('sourceCss', $sourceCss);
|
||||
$this->setVar('sourceJs', $sourceJs);
|
||||
|
||||
$this->render();
|
||||
}
|
||||
|
||||
|
||||
@@ -5580,6 +5580,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
|
||||
( 'LABEL','ID_NEW_PROJECT','en','New Project','2015-08-18') ,
|
||||
( 'LABEL','ID_NEW_BPMN_PROJECT','en','New BPMN Project','2015-08-18') ,
|
||||
( 'LABEL','ID_ROUTE_TO_TASK_SCRIPT_TASK','en','The following case is a "Script-Task"','2015-08-18') ,
|
||||
( 'LABEL','ID_ROUTE_TO_TASK_SERVICE_TASK','en','The following case is a "Service-Task"','2016-11-25') ,
|
||||
( 'LABEL','ID_MAFE_0d82790b0612935992bd564a17ce37d6','en','Quit','2016-08-12') ,
|
||||
( 'LABEL','ID_MAFE_16f49c0f891dce505db0ffe478aff96f','en','Next →','2016-08-12') ,
|
||||
( 'LABEL','ID_MAFE_064626e308f7d6587778df2924ea847c','en','← Back','2016-08-12') ,
|
||||
|
||||
@@ -978,6 +978,9 @@ try {
|
||||
$optionTaskType = (isset($aFields["TASK"][$sKey]["NEXT_TASK"]["TAS_TYPE"]))? $aFields["TASK"][$sKey]["NEXT_TASK"]["TAS_TYPE"] : "";
|
||||
|
||||
switch ($optionTaskType) {
|
||||
case "SERVICE-TASK":
|
||||
$aFields["TASK"][$sKey]["NEXT_TASK"]["USR_UID"] = G::LoadTranslation("ID_ROUTE_TO_TASK_SERVICE_TASK");
|
||||
break;
|
||||
case "SCRIPT-TASK":
|
||||
$aFields["TASK"][$sKey]["NEXT_TASK"]["USR_UID"] = G::LoadTranslation("ID_ROUTE_TO_TASK_SCRIPT_TASK");
|
||||
break;
|
||||
|
||||
@@ -205,9 +205,22 @@ class BpmnWorkflow extends Project\Bpmn
|
||||
|
||||
$activityCurrent = \BpmnActivityPeer::retrieveByPK($actUid);
|
||||
|
||||
if ($activityCurrent->getActType() == "TASK" && $activityCurrent->getActTaskType() == "SCRIPTTASK") {
|
||||
if ($activityCurrent->getActType() == "TASK") {
|
||||
switch ($activityCurrent->getActTaskType()) {
|
||||
case 'SCRIPTTASK':
|
||||
$taskData["TAS_TYPE"] = "SCRIPT-TASK";
|
||||
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
|
||||
break;
|
||||
case 'SERVICETASK':
|
||||
$registry = \PMPluginRegistry::getSingleton();
|
||||
$taskData["TAS_TYPE"] = "NORMAL";
|
||||
//The plugin pmConnectors will be moved to the core in pm.3.3
|
||||
if ($registry->getStatusPlugin('pmConnectors') === 'enabled') {
|
||||
$taskData["TAS_TYPE"] = "SERVICE-TASK";
|
||||
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$this->wp->addTask($taskData);
|
||||
@@ -254,6 +267,8 @@ class BpmnWorkflow extends Project\Bpmn
|
||||
));
|
||||
}
|
||||
|
||||
$taskData = self::__updateServiceTask($activityBefore, $activityCurrent, $taskData);
|
||||
|
||||
if($activityCurrent->getActLoopType() == "PARALLEL"){
|
||||
$task = \TaskPeer::retrieveByPK($actUid);
|
||||
if($task->getTasAssignType() == "BALANCED" || $task->getTasAssignType() == "MANUAL" || $task->getTasAssignType() == "EVALUATE" || $task->getTasAssignType() == "REPORT_TO" || $task->getTasAssignType() == "SELF_SERVICE"){
|
||||
@@ -271,6 +286,62 @@ class BpmnWorkflow extends Project\Bpmn
|
||||
$this->wp->updateTask($actUid, $taskData);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $actUid
|
||||
* @param $data
|
||||
*/
|
||||
public function sincronizeActivityData($actUid, $data)
|
||||
{
|
||||
$registry = \PMPluginRegistry::getSingleton();
|
||||
$taskData = \TaskPeer::retrieveByPK($actUid);
|
||||
//The plugin pmConnectors will be moved to the core in pm.3.3
|
||||
if ($taskData->getTasType() == 'SERVICE-TASK' && $registry->getStatusPlugin('pmConnectors') !== 'enabled') {
|
||||
$taskData = array();
|
||||
$taskData["TAS_TYPE"] = "NORMAL";
|
||||
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
|
||||
$this->wp->updateTask($actUid, $taskData);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $activityBefore
|
||||
* @param null $activityCurrent
|
||||
* @param $taskData
|
||||
* @return mixed
|
||||
*/
|
||||
static function __updateServiceTask($activityBefore, $activityCurrent, $taskData)
|
||||
{
|
||||
$registry = \PMPluginRegistry::getSingleton();
|
||||
if ($activityBefore->getActTaskType() != "SERVICETASK" && $activityCurrent->getActTaskType() == "SERVICETASK") {
|
||||
//The plugin pmConnectors will be moved to the core in pm.3.3
|
||||
if ($registry->getStatusPlugin('pmConnectors') === 'enabled') {
|
||||
$taskData["TAS_TYPE"] = "SERVICE-TASK";
|
||||
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
|
||||
} else {
|
||||
$taskData["TAS_TYPE"] = "NORMAL";
|
||||
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
|
||||
}
|
||||
}
|
||||
|
||||
if ($activityBefore->getActTaskType() == "SERVICETASK" && $activityCurrent->getActTaskType() != "SERVICETASK") {
|
||||
$taskData["TAS_TYPE"] = "NORMAL";
|
||||
$taskData["TAS_ASSIGN_TYPE"] = "BALANCED";
|
||||
if($activityCurrent->getActTaskType() == "SCRIPTTASK"){
|
||||
$taskData["TAS_TYPE"] = "SCRIPT-TASK";
|
||||
}
|
||||
//The plugin pmConnectors will be moved to the core in pm.3.3
|
||||
if ($registry->getStatusPlugin('pmConnectors') === 'enabled') {
|
||||
$pathFile = PATH_PLUGINS . 'pmConnectors' . PATH_SEP . 'src' . PATH_SEP . 'Services' . PATH_SEP . 'BusinessModel' . PATH_SEP . 'PmConnectors' . PATH_SEP . 'ServiceTaskBM.php';
|
||||
if (is_file($pathFile)) {
|
||||
require_once $pathFile;
|
||||
$serviceTask = new \Services\BusinessModel\PmConnectors\ServiceTaskBM();
|
||||
$serviceTask->deleteByActivityUid($activityCurrent->getPrjUid(), $activityCurrent->getActUid());
|
||||
}
|
||||
}
|
||||
}
|
||||
return $taskData;
|
||||
}
|
||||
|
||||
public function removeActivity($actUid)
|
||||
{
|
||||
$activity = \BpmnActivityPeer::retrieveByPK($actUid);
|
||||
@@ -1530,7 +1601,6 @@ class BpmnWorkflow extends Project\Bpmn
|
||||
$activityData = Util\ArrayUtil::boolToIntValues($activityData);
|
||||
|
||||
$activity = $bwp->getActivity($activityData["ACT_UID"]);
|
||||
|
||||
if ($forceInsert || is_null($activity)) {
|
||||
if ($generateUid) {
|
||||
//Generate and update UID
|
||||
@@ -1552,7 +1622,7 @@ class BpmnWorkflow extends Project\Bpmn
|
||||
} else {
|
||||
Util\Logger::log("Update Activity ({$activityData["ACT_UID"]}) Skipped - No changes required");
|
||||
}
|
||||
|
||||
$bwp->sincronizeActivityData($activityData["ACT_UID"], $activityData);
|
||||
$diagram["activities"][$i] = $activityData;
|
||||
$whiteList[] = $activityData["ACT_UID"];
|
||||
|
||||
|
||||
@@ -230,6 +230,19 @@ class Workflow extends Handler
|
||||
$this->removeSupProcess($this->proUid, $tasUid);
|
||||
}
|
||||
|
||||
if ($tasType == "SERVICE-TASK") {
|
||||
$registry = \PMPluginRegistry::getSingleton();
|
||||
//The plugin pmConnectors will be moved to the core in pm.3.3
|
||||
if ($registry->getStatusPlugin('pmConnectors') === 'enabled') {
|
||||
$pathFile = PATH_PLUGINS . 'pmConnectors' . PATH_SEP . 'src' . PATH_SEP . 'Services' . PATH_SEP . 'BusinessModel' . PATH_SEP . 'PmConnectors' . PATH_SEP . 'ServiceTaskBM.php';
|
||||
if (is_file($pathFile)) {
|
||||
require_once $pathFile;
|
||||
$serviceTask = new \Services\BusinessModel\PmConnectors\ServiceTaskBM();
|
||||
$serviceTask->deleteByActivityUid($this->proUid, $tasUid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} catch (\Exception $e) {
|
||||
self::log("Exception: ", $e->getMessage(), "Trace: ", $e->getTraceAsString());
|
||||
throw $e;
|
||||
|
||||
@@ -98,6 +98,11 @@
|
||||
<td class="FormLabel" width="100"></td>
|
||||
<td class="FormFieldContent">{$data.NEXT_TASK.USR_UID}{$data.NEXT_TASK.USR_HIDDEN_FIELD}</td>
|
||||
</tr>
|
||||
{elseif ($data.NEXT_TASK.TAS_TYPE == "SERVICE-TASK")}
|
||||
<tr>
|
||||
<td class="FormLabel" width="100"></td>
|
||||
<td class="FormFieldContent">{$data.NEXT_TASK.USR_UID}{$data.NEXT_TASK.USR_HIDDEN_FIELD}</td>
|
||||
</tr>
|
||||
{elseif ($data.NEXT_TASK.TAS_TYPE == "INTERMEDIATE-CATCH-TIMER-EVENT")}
|
||||
<tr>
|
||||
<td class="FormLabel" width="100">{$NEXT_TASK_LABEL}:</td>
|
||||
|
||||
@@ -71,6 +71,9 @@
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="/lib/css/mafe-{$buildhash}.css" />
|
||||
<link rel="stylesheet" type="text/css" href="/css/{$sys_skin}-pm3.css" />
|
||||
{foreach from=$sourceCss item=pathFile}
|
||||
<link rel="stylesheet" type="text/css" href="{$pathFile}" />
|
||||
{/foreach}
|
||||
<script type="text/javascript">
|
||||
var prj_uid = "{$prj_uid}";
|
||||
var app_uid = "{$app_uid}";
|
||||
@@ -85,6 +88,9 @@
|
||||
var HTTP_SERVER_HOSTNAME = "{$HTTP_SERVER_HOSTNAME}";
|
||||
</script>
|
||||
<script type="text/javascript" src="/lib/js/mafe-{$buildhash}.js"></script>
|
||||
{foreach from=$sourceJs item=pathFile}
|
||||
<script type="text/javascript" src="{$pathFile}"></script>
|
||||
{/foreach}
|
||||
|
||||
{/if}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user