diff --git a/framework/src/Maveriks/WebApplication.php b/framework/src/Maveriks/WebApplication.php index 42fc81e1c..58f0aef75 100644 --- a/framework/src/Maveriks/WebApplication.php +++ b/framework/src/Maveriks/WebApplication.php @@ -297,7 +297,9 @@ class WebApplication $port = empty($port) ? '' : ";port=$port"; Services\OAuth2\Server::setDatabaseSource(DB_USER, DB_PASS, DB_ADAPTER.":host=$host;dbname=".DB_NAME.$port); if (DB_NAME != DB_RBAC_NAME) { //it's PM < 3 - Services\OAuth2\Server::setDatabaseSourceRBAC(DB_RBAC_USER, DB_RBAC_PASS, DB_ADAPTER.":host=".DB_RBAC_HOST.";dbname=".DB_RBAC_NAME.$port); + list($host, $port) = strpos(DB_RBAC_HOST, ':') !== false ? explode(':', DB_RBAC_HOST) : array(DB_RBAC_HOST, ''); + $port = empty($port) ? '' : ";port=$port"; + Services\OAuth2\Server::setDatabaseSourceRBAC(DB_RBAC_USER, DB_RBAC_PASS, DB_ADAPTER.":host=$host;dbname=".DB_RBAC_NAME.$port); } // Setting default OAuth Client id, for local PM Web Designer diff --git a/gulliver/thirdparty/HTMLPurifier/HTMLPurifier/DefinitionCache/Serializer/CSS/4.6.0,24166bfe16a0cc6bd18d813b83121ef2eaf16545,1.ser b/gulliver/thirdparty/HTMLPurifier/HTMLPurifier/DefinitionCache/Serializer/CSS/4.6.0,24166bfe16a0cc6bd18d813b83121ef2eaf16545,1.ser new file mode 100644 index 000000000..fe7977acb Binary files /dev/null and b/gulliver/thirdparty/HTMLPurifier/HTMLPurifier/DefinitionCache/Serializer/CSS/4.6.0,24166bfe16a0cc6bd18d813b83121ef2eaf16545,1.ser differ diff --git a/gulliver/thirdparty/HTMLPurifier/HTMLPurifier/DefinitionCache/Serializer/URI/4.6.0,8d03c8ec0e84e7feb92afd4c0f1735841b5fdacf,1.ser b/gulliver/thirdparty/HTMLPurifier/HTMLPurifier/DefinitionCache/Serializer/URI/4.6.0,8d03c8ec0e84e7feb92afd4c0f1735841b5fdacf,1.ser new file mode 100644 index 000000000..f6d3e812b Binary files /dev/null and b/gulliver/thirdparty/HTMLPurifier/HTMLPurifier/DefinitionCache/Serializer/URI/4.6.0,8d03c8ec0e84e7feb92afd4c0f1735841b5fdacf,1.ser differ diff --git a/workflow/engine/classes/class.calendar.php b/workflow/engine/classes/class.calendar.php index 07939d4bd..e6e28c5b9 100755 --- a/workflow/engine/classes/class.calendar.php +++ b/workflow/engine/classes/class.calendar.php @@ -414,7 +414,7 @@ class calendar extends CalendarDefinition $hoursDuration -= (float)($secondRes/3600); //$dataLog[] = (float)($secondRes/3600); } else { - $newDate = date('Y-m-d H:i:s', strtotime('+' . (((float)$hoursDuration)*3600) . ' seconds', strtotime($newDate))); + $newDate = date("Y-m-d H:i:s", strtotime("+" . round(((float)($hoursDuration)) * 3600) . " seconds", strtotime($newDate))); //$dataLog[] = (float)($hoursDuration); $hoursDuration = 0; } @@ -797,4 +797,4 @@ class calendar extends CalendarDefinition } } -?> \ No newline at end of file +?> diff --git a/workflow/engine/classes/class.pmDynaform.php b/workflow/engine/classes/class.pmDynaform.php index 61ebf680c..a6e6806be 100644 --- a/workflow/engine/classes/class.pmDynaform.php +++ b/workflow/engine/classes/class.pmDynaform.php @@ -87,21 +87,8 @@ class pmDynaform $json->$key = $this->app_data[$triggerValue]; } } - //data - if ($key === "type" && ($value === "text" || $value === "textarea" || $value === "dropdown")) { - $json->data = array( - "value" => isset($this->data[$json->name]) ? $this->data[$json->name] : "", - "label" => isset($this->data[$json->name . "_label"]) ? $this->data[$json->name . "_label"] : "" - ); - } - if ($key === "type" && ($value === "suggets")) { - $json->data = array( - "value" => isset($this->data[$json->name . "_label"]) ? $this->data[$json->name . "_label"] : "", - "label" => isset($this->data[$json->name]) ? $this->data[$json->name] : "" - ); - } //query & options - if ($key === "type" && ($value === "text" || $value === "textarea" || $value === "dropdown" || $value === "suggets")) { + if ($key === "type" && ($value === "text" || $value === "textarea" || $value === "dropdown" || $value === "suggest" || $value === "checkbox" || $value === "radio")) { if (!isset($json->dbConnection)) $json->dbConnection = "none"; if (!isset($json->sql)) @@ -120,9 +107,24 @@ class pmDynaform ); array_push($json->options, $option); } - $json->data = isset($json->options[0]) ? $json->options[0] : $json->data; + if (isset($json->options[0])) { + $json->data = $json->options[0]; + } } } + //data + if ($key === "type" && ($value === "text" || $value === "textarea" || $value === "dropdown" || $value === "checkbox" || $value === "radio")) { + $json->data = array( + "value" => isset($this->data[$json->name]) ? $this->data[$json->name] : "", + "label" => isset($this->data[$json->name . "_label"]) ? $this->data[$json->name . "_label"] : "" + ); + } + if ($key === "type" && ($value === "suggest")) { + $json->data = array( + "value" => isset($this->data[$json->name . "_label"]) ? $this->data[$json->name . "_label"] : "", + "label" => isset($this->data[$json->name]) ? $this->data[$json->name] : "" + ); + } //grid if ($key === "type" && ($value === "grid")) { if (isset($this->data[$json->name])) { @@ -135,14 +137,14 @@ class pmDynaform //data if ($column->type === "text" || $column->type === "textarea" || $column->type === "dropdown") { array_push($cells, array( - "value" => $row[$column->name], - "label" => $row[$column->name . "_label"] + "value" => isset($row[$column->name]) ? $row[$column->name] : "", + "label" => isset($row[$column->name . "_label"]) ? $row[$column->name . "_label"] : "" )); } if ($column->type === "suggest") { array_push($cells, array( - "value" => $row[$column->name . "_label"], - "label" => $row[$column->name] + "value" => isset($row[$column->name . "_label"]) ? $row[$column->name . "_label"] : "", + "label" => isset($row[$column->name]) ? $row[$column->name] : "" )); } } @@ -191,6 +193,7 @@ class pmDynaform "var credentials = " . G::json_encode($clientToken) . ";\n" . "var filePost = null;\n" . "var fieldsRequired = null;\n" . + "var triggerDebug = null;\n" . "$(window).load(function () {\n" . " var data = jsondata;\n" . " data.items[0].mode = 'view';\n" . @@ -221,6 +224,7 @@ class pmDynaform public function printEdit($pm_run_outside_main_app, $application, $headData, $step_mode = 'EDIT') { + error_log(print_r($this->app_data, true)); ob_clean(); $json = G::json_decode($this->record["DYN_CONTENT"]); $this->jsonr($json); @@ -242,6 +246,7 @@ class pmDynaform "var credentials = " . G::json_encode($this->credentials) . ";\n" . "var filePost = null;\n" . "var fieldsRequired = null;\n" . + "var triggerDebug = " . ($this->app_data["TRIGGER_DEBUG"] === 1 ? "true" : "false") . ";\n" . "\n" . "\n" . "\n" . @@ -282,6 +287,7 @@ class pmDynaform "var credentials = " . G::json_encode($this->credentials) . ";\n" . "var filePost = '" . $filename . "';\n" . "var fieldsRequired = " . G::json_encode($this->arrayFieldRequired) . ";\n" . + "var triggerDebug = null;\n" . "\n" . "\n" . "
";
- echo G::json_encode($json);
+ echo G::json_encode(array($this->app_data, $this->data));
echo "";
}
}
diff --git a/workflow/engine/classes/class.processes.php b/workflow/engine/classes/class.processes.php
index 513b78ba1..6725e8f66 100755
--- a/workflow/engine/classes/class.processes.php
+++ b/workflow/engine/classes/class.processes.php
@@ -1516,9 +1516,20 @@ class Processes
{
foreach ($SubProcess as $key => $row) {
$oSubProcess = new SubProcess();
- if ($oSubProcess->subProcessExists( $row['SP_UID'] )) {
- $oSubProcess->remove( $row['SP_UID'] );
- }
+
+ //if ($oSubProcess->subProcessExists( $row['SP_UID'] )) {
+ // $oSubProcess->remove( $row['SP_UID'] );
+ //}
+
+ //Delete
+ $criteria = new Criteria("workflow");
+
+ $criteria->add(SubProcessPeer::PRO_PARENT, $row["PRO_PARENT"], Criteria::EQUAL);
+ $criteria->add(SubProcessPeer::TAS_PARENT, $row["TAS_PARENT"], Criteria::EQUAL);
+
+ $result = SubProcessPeer::doDelete($criteria);
+
+ //Create
$res = $oSubProcess->create( $row );
}
return;
diff --git a/workflow/engine/classes/model/OutputDocument.php b/workflow/engine/classes/model/OutputDocument.php
index 7a0e2fd64..9929c2e7c 100755
--- a/workflow/engine/classes/model/OutputDocument.php
+++ b/workflow/engine/classes/model/OutputDocument.php
@@ -201,7 +201,7 @@ class OutputDocument extends BaseOutputDocument
}
$description .= ", By clicking on the generated file link: ".$genLink;
G::auditLog("CreateOutputDocument", $description);
-
+
return $aData['OUT_DOC_UID'];
} else {
$sMessage = '';
@@ -329,9 +329,11 @@ class OutputDocument extends BaseOutputDocument
Content::removeContent('OUT_DOC_TEMPLATE', '', $oOutputDocument->getOutDocUid());
$iResult = $oOutputDocument->delete();
$oConnection->commit();
- //Add Audit Log
- G::auditLog("DeleteOutputDocument", "Output Document Name: ".$outputName.", Output Document Uid: ".$sOutDocUid.", Description: ".$outputDesc.", Filename generated: ".$outputFile);
+ //Add Audit Log
+ G::auditLog("DeleteOutputDocument", "Output Document Name: " . $oOutputDocument->getOutDocTitle() . ", Output Document Uid: " . $sOutDocUid . ", Description: " . $oOutputDocument->getOutDocDescription() . ", Filename generated: " . $oOutputDocument->getOutDocFilename());
+
+ //Return
return $iResult;
} else {
throw (new Exception('This row doesn\'t exist!'));
@@ -845,7 +847,7 @@ class OutputDocument extends BaseOutputDocument
$sContent = str_ireplace("", "", $sContent);
$sContent = str_replace($nrthtml, $nrt, $sContent);
-
+
$sContent = str_replace("margin-left", "text-indent", $sContent);
// define Save file
diff --git a/workflow/engine/classes/model/Triggers.php b/workflow/engine/classes/model/Triggers.php
index 13321d6d0..0f381703c 100755
--- a/workflow/engine/classes/model/Triggers.php
+++ b/workflow/engine/classes/model/Triggers.php
@@ -189,7 +189,7 @@ class Triggers extends BaseTriggers
$description .= ", Description: ".$aData['TRI_DESCRIPTION'];
}
G::auditLog("CreateTrigger", $description);
-
+
return $result;
} else {
$con->rollback();
@@ -240,18 +240,14 @@ class Triggers extends BaseTriggers
$con->begin();
$oTri = TriggersPeer::retrieveByPK( $TriUid );
if (!is_null($oTri)) {
- $triggerName = $this->getTriTitle();
- $triggerDesc = $this->getTriDescription();
- Content::removeContent( 'TRI_TITLE', '', $this->getTriUid());
- Content::removeContent( 'TRI_DESCRIPTION', '', $this->getTriUid());
+ Content::removeContent("TRI_TITLE", "", $TriUid);
+ Content::removeContent("TRI_DESCRIPTION", "", $TriUid);
+
$result = $oTri->delete();
$con->commit();
+
//Add Audit Log
- $description = "Trigger Name: ".$triggerName.", Trigger Uid: ".$TriUid;
- if (isset ( $triggerDesc )) {
- $description .= ", Description: ".$triggerDesc;
- }
- G::auditLog("DeleteTrigger", $description);
+ G::auditLog("DeleteTrigger", "Trigger Name: " . $oTri->getTriTitle() . ", Trigger Uid: " . $TriUid . ", Description: " . $oTri->getTriDescription());
}
return $result;
} catch (Exception $e) {
diff --git a/workflow/engine/js/cases/core/pmDynaform.js b/workflow/engine/js/cases/core/pmDynaform.js
index 62030d439..bc6ddf189 100644
--- a/workflow/engine/js/cases/core/pmDynaform.js
+++ b/workflow/engine/js/cases/core/pmDynaform.js
@@ -1,25 +1,11 @@
+function ajax_post(action, form, method, callback, asynchronous) {
+ document.getElementById("dyn_forward").onclick();
+ window.onload = function () {
+ method();
+ };
+}
function dynaFormChanged(frm) {
- for (var i1 = 0; i1 <= frm.elements.length - 1; i1++) {
- if ((frm.elements[i1].type === "radio" || frm.elements[i1].type === "checkbox") && (frm.elements[i1].checked !== frm.elements[i1].defaultChecked)) {
- return true;
- }
- if ((frm.elements[i1].type === "textarea" || frm.elements[i1].type === "text" || frm.elements[i1].type === "file") && (frm.elements[i1].value !== frm.elements[i1].defaultValue)) {
- return true;
- }
- if (frm.elements[i1].tagName.toLowerCase() === "select") {
- var selectDefaultValue = frm.elements[i1].value;
- for (var i2 = 0; i2 <= frm.elements[i1].options.length - 1; i2++) {
- if (frm.elements[i1].options[i2].defaultSelected) {
- selectDefaultValue = frm.elements[i1].options[i2].value;
- break;
- }
- }
- if (frm.elements[i1].value !== selectDefaultValue) {
- return true;
- }
- }
- }
- return false;
+ return true;
}
$(window).load(function () {
if (pm_run_outside_main_app === 'true') {
@@ -28,6 +14,7 @@ $(window).load(function () {
}
if (parent.setCurrent) {
parent.setCurrent(dyn_uid);
+
}
}
var data = jsondata;
@@ -88,4 +75,7 @@ $(window).load(function () {
form.submit();
return false;
};
+ if (triggerDebug === true) {
+ showdebug();
+ }
});
\ No newline at end of file
diff --git a/workflow/engine/methods/cases/cases_Step.php b/workflow/engine/methods/cases/cases_Step.php
index 5daf495cc..6ee2a1c8d 100755
--- a/workflow/engine/methods/cases/cases_Step.php
+++ b/workflow/engine/methods/cases/cases_Step.php
@@ -272,6 +272,7 @@ try {
$a = new pmDynaform($_GET['UID'], $Fields['APP_DATA']);
if ($a->isResponsive()) {
$a->app_data["PRO_SHOW_MESSAGE"] = $noShowTitle;
+ $a->app_data["TRIGGER_DEBUG"] = $_SESSION['TRIGGER_DEBUG']['ISSET'];
$a->printEdit((!isset($_SESSION["PM_RUN_OUTSIDE_MAIN_APP"])) ? "true" : "false", $_SESSION['APPLICATION'], $array, $oStep->getStepMode());
} else {
$G_PUBLISH->AddContent('dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_GET['UID'], '', $Fields['APP_DATA'], 'cases_SaveData?UID=' . $_GET['UID'] . '&APP_UID=' . $_SESSION['APPLICATION'], '', (strtolower($oStep->getStepMode()) != 'edit' ? strtolower($oStep->getStepMode()) : ''));
diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/Light.php b/workflow/engine/src/ProcessMaker/BusinessModel/Light.php
index 2d423184f..c55094132 100644
--- a/workflow/engine/src/ProcessMaker/BusinessModel/Light.php
+++ b/workflow/engine/src/ProcessMaker/BusinessModel/Light.php
@@ -55,6 +55,7 @@ class Light
$task->setFormatFieldNameInUppercase(false);
$task->setArrayParamException(array("taskUid" => "act_uid", "stepUid" => "step_uid"));
+ $response = array();
foreach ($processList as $key => $processInfo) {
$tempTreeChildren = array ();
foreach ($processList[$key] as $keyChild => $processInfoChild) {
@@ -78,7 +79,7 @@ class Light
$tempTreeChildren[] = $tempTreeChild;
}
}
- $response = $tempTreeChildren;
+ $response = array_merge($response, $tempTreeChildren);
}
} catch (\Exception $e) {
throw $e;
@@ -592,4 +593,78 @@ class Light
return $response;
}
+
+ /**
+ * Get information for status paused and participated or other status
+ *
+ * @param $userUid
+ * @param $type
+ * @param $app_uid
+ * @throws \Exception
+ */
+ public function getInformation($userUid, $type, $app_uid)
+ {
+ switch ($type) {
+ case 'paused':
+ case 'participated':
+ $oCase = new \Cases();
+ $iDelIndex = $oCase->getCurrentDelegationCase( $app_uid );
+ $aFields = $oCase->loadCase( $app_uid, $iDelIndex );
+ $this->getInfoResume($userUid, $aFields, $type);
+ break;
+ }
+ }
+
+ /**
+ * view in html response for status
+ *
+ * @param $userUid
+ * @param $Fields
+ * @param $type
+ * @throws \Exception
+ */
+ public function getInfoResume($userUid, $Fields, $type)
+ {
+ //print_r($Fields);die;
+ /* Includes */
+ G::LoadClass( 'case' );
+ /* Prepare page before to show */
+ //$oCase = new \Cases();
+
+// $participated = $oCase->userParticipatedInCase( $Fields['APP_UID'], $userUid );
+// if ($RBAC->userCanAccess( 'PM_ALLCASES' ) < 0 && $participated == 0) {
+// /*if (strtoupper($Fields['APP_STATUS']) != 'COMPLETED') {
+// $oCase->thisIsTheCurrentUser($_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['USER_LOGGED'], 'SHOW_MESSAGE');
+// }*/
+// $aMessage['MESSAGE'] = G::LoadTranslation( 'ID_NO_PERMISSION_NO_PARTICIPATED' );
+// $G_PUBLISH = new Publisher();
+// $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'login/showMessage', '', $aMessage );
+// G::RenderPage( 'publishBlank', 'blank' );
+// die();
+// }
+
+ $objProc = new \Process();
+ $aProc = $objProc->load( $Fields['PRO_UID'] );
+ $Fields['PRO_TITLE'] = $aProc['PRO_TITLE'];
+
+ $objTask = new \Task();
+
+ if (isset($_SESSION['ACTION']) && ($_SESSION['ACTION'] == 'jump')) {
+ $task = explode('-', $Fields['TAS_UID']);
+ $Fields['TAS_TITLE'] = '';
+ for( $i = 0; $i < sizeof($task)-1; $i ++ ) {
+ $aTask = $objTask->load( $task[$i] );
+ $Fields['TAS_TITLE'][] = $aTask['TAS_TITLE'];
+ }
+ $Fields['TAS_TITLE'] = implode(" - ", array_values($Fields['TAS_TITLE']));
+ } else {
+ $aTask = $objTask->load( $Fields['TAS_UID'] );
+ $Fields['TAS_TITLE'] = $aTask['TAS_TITLE'];
+ }
+
+ require_once(PATH_GULLIVER .'../thirdparty/smarty/libs/Smarty.class.php');
+ $G_PUBLISH = new \Publisher();
+ $G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'cases/cases_Resume.xml', '', $Fields, '' );
+ $G_PUBLISH->RenderContent();
+ }
}
diff --git a/workflow/engine/src/ProcessMaker/Project/Workflow.php b/workflow/engine/src/ProcessMaker/Project/Workflow.php
index 688023b9d..c46911cfc 100755
--- a/workflow/engine/src/ProcessMaker/Project/Workflow.php
+++ b/workflow/engine/src/ProcessMaker/Project/Workflow.php
@@ -764,6 +764,13 @@ class Workflow extends Handler
$oCriteria->add(\CaseTrackerObjectPeer::PRO_UID, $sProcessUID);
\ProcessUserPeer::doDelete($oCriteria);
+ //Delete SubProcess
+ $criteria = new \Criteria("workflow");
+
+ $criteria->add(\SubProcessPeer::PRO_PARENT, $sProcessUID, \Criteria::EQUAL);
+
+ $result = \SubProcessPeer::doDelete($criteria);
+
//Delete WebEntries
$webEntry = new \ProcessMaker\BusinessModel\WebEntry();
diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Light.php b/workflow/engine/src/ProcessMaker/Services/Api/Light.php
index bac12171a..1148d746e 100644
--- a/workflow/engine/src/ProcessMaker/Services/Api/Light.php
+++ b/workflow/engine/src/ProcessMaker/Services/Api/Light.php
@@ -713,4 +713,22 @@ class Light extends Api
}
return $files;
}
+
+ /**
+ * @url GET /:type/case/:app_uid
+ *
+ * @param $access
+ * @param $refresh
+ * @return mixed
+ */
+ public function getInformation($type, $app_uid)
+ {
+ try {
+ $userUid = $this->getUserId();
+ $oMobile = new \ProcessMaker\BusinessModel\Light();
+ $oMobile->getInformation($userUid, $type, $app_uid);
+ } catch (\Exception $e) {
+ throw (new RestException(Api::STAT_APP_EXCEPTION, $e->getMessage()));
+ }
+ }
}
diff --git a/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php b/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php
index fde833117..6ff57df53 100644
--- a/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php
+++ b/workflow/engine/src/ProcessMaker/Services/OAuth2/Server.php
@@ -49,7 +49,7 @@ class Server implements iAuthenticate
$cnn = array('dsn' => self::$dsn, 'username' => self::$dbUser, 'password' => self::$dbPassword);
if (self::$isRBAC) {
- $config = array('user_table' => 'USERS');
+ $config = array();
$cnnrbac = array('dsn' => self::$dsnRBAC, 'username' => self::$dbUserRBAC, 'password' => self::$dbPasswordRBAC);
$this->storage = new PmPdo($cnn, $config, $cnnrbac);
} else {
diff --git a/workflow/engine/templates/cases/open.js b/workflow/engine/templates/cases/open.js
index 8e640d494..ea9cc3336 100755
--- a/workflow/engine/templates/cases/open.js
+++ b/workflow/engine/templates/cases/open.js
@@ -30,7 +30,15 @@ function formatAMPM(date, initVal) {
minutes = minutes < 10 ? '0'+minutes : minutes;
var strTime = hours + ':' + minutes + ' ' + ampm;
return strTime;
-}
+};
+
+function isBrowserIE(){
+ if ( (navigator.userAgent.indexOf("MSIE")!=-1) || (navigator.userAgent.indexOf("Trident")!=-1) ){
+ return true;
+ } else {
+ return false;
+ }
+};
Ext.onReady(function(){
openToRevisePanel = function() {
@@ -249,7 +257,7 @@ Ext.onReady(function(){
if (iframeDynaForm.getElementsByTagName("form")) {
dynaformChange = iframeDynaForm.getElementsByTagName("form").item(0);
- if (typeof(window.frames["openCaseFrame"].dynaFormChanged) == "function") {
+ if (typeof(window.frames["openCaseFrame"].dynaFormChanged) == "function" && dynaformChange) {
swDynaformChange = (window.frames["openCaseFrame"].dynaFormChanged(dynaformChange))? 1 : 0;
}
}
@@ -1531,20 +1539,24 @@ Ext.onReady(function(){
TabPanel.setActiveTab(tabId);
}
else {
- TabPanel.add({
- id: tabId,
- title: menuSelectedTitle[name],
- frameConfig: {name: name + 'Frame', id: name + 'Frame'},
- defaultSrc: uri,
- loadMask: {msg: _('ID_LOADING_GRID') + '...'},
- autoWidth: true,
- closable: true,
- autoScroll: true,
- bodyStyle: {height: (PMExt.getBrowser().screen.height - 60) + 'px', overflow: 'auto'}
- }).show();
+ if(!isBrowserIE()){
+ TabPanel.add({
+ id: tabId,
+ title: menuSelectedTitle[name],
+ frameConfig: {name: name + 'Frame', id: name + 'Frame'},
+ defaultSrc: uri,
+ loadMask: {msg: _('ID_LOADING_GRID') + '...'},
+ autoWidth: true,
+ closable: true,
+ autoScroll: true,
+ bodyStyle: {height: (PMExt.getBrowser().screen.height - 60) + 'px', overflow: 'auto'}
+ }).show();
- TabPanel.doLayout();
- }
+ TabPanel.doLayout();
+ }else{
+ var windContainer = window.open(uri,"winContainer");
+ }
+ }
}
},
failure: function ( result, request) {
diff --git a/workflow/engine/templates/cases/pmdynaform.html b/workflow/engine/templates/cases/pmdynaform.html
index e3920be59..b93895beb 100644
--- a/workflow/engine/templates/cases/pmdynaform.html
+++ b/workflow/engine/templates/cases/pmdynaform.html
@@ -7,9 +7,11 @@
+
+
@@ -19,6 +21,7 @@
###TEMPLATES###
+
{javascript}