@@ -11,24 +11,27 @@ class pmDynaform
|
||||
{
|
||||
|
||||
public static $instance = null;
|
||||
public $dyn_uid = null;
|
||||
public $fields = null;
|
||||
public $record = null;
|
||||
public $app_data = null;
|
||||
public $credentials = null;
|
||||
public $items = array();
|
||||
public $data = array();
|
||||
public $variables = array();
|
||||
public $arrayFieldRequired = array();
|
||||
|
||||
public function __construct($dyn_uid, $app_data = array())
|
||||
public function __construct($fields)
|
||||
{
|
||||
$this->dyn_uid = $dyn_uid;
|
||||
$this->app_data = $app_data;
|
||||
$this->fields = $fields;
|
||||
$this->getDynaform();
|
||||
$this->getCredentials();
|
||||
if (isset($app_data["APPLICATION"])) {
|
||||
if (isset($this->fields["APP_UID"])) {
|
||||
//current
|
||||
$cases = new \ProcessMaker\BusinessModel\Cases();
|
||||
$this->data = $cases->getCaseVariables($app_data["APPLICATION"]);
|
||||
$this->data = $cases->getCaseVariables($this->fields["APP_UID"]);
|
||||
} else {
|
||||
//history
|
||||
$this->fields["APP_UID"] = null;
|
||||
if (isset($this->fields["APP_DATA"]))
|
||||
$this->data = $this->fields["APP_DATA"];
|
||||
if (isset($this->data["DYN_CONTENT_HISTORY"]))
|
||||
$this->record["DYN_CONTENT"] = $this->data["DYN_CONTENT_HISTORY"];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,7 +45,7 @@ class pmDynaform
|
||||
$a->addSelectColumn(DynaformPeer::DYN_CONTENT);
|
||||
$a->addSelectColumn(DynaformPeer::PRO_UID);
|
||||
$a->addSelectColumn(DynaformPeer::DYN_UID);
|
||||
$a->add(DynaformPeer::DYN_UID, $this->dyn_uid, Criteria::EQUAL);
|
||||
$a->add(DynaformPeer::DYN_UID, $this->fields["CURRENT_DYNAFORM"], Criteria::EQUAL);
|
||||
$ds = ProcessPeer::doSelectRS($a);
|
||||
$ds->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$ds->next();
|
||||
@@ -197,40 +200,28 @@ class pmDynaform
|
||||
return $this->record != null && $this->record["DYN_VERSION"] == 2 ? true : false;
|
||||
}
|
||||
|
||||
public function printView($pm_run_outside_main_app, $application)
|
||||
public function printView()
|
||||
{
|
||||
ob_clean();
|
||||
$json = G::json_decode($this->record["DYN_CONTENT"]);
|
||||
$this->jsonr($json);
|
||||
|
||||
$a = $this->clientToken();
|
||||
$clientToken = array(
|
||||
"accessToken" => $a["access_token"],
|
||||
"expiresIn" => $a["expires_in"],
|
||||
"tokenType" => $a["token_type"],
|
||||
"scope" => $a["scope"],
|
||||
"refreshToken" => $a["refresh_token"],
|
||||
"clientId" => $a["client_id"],
|
||||
"clientSecret" => $a["client_secret"]
|
||||
);
|
||||
|
||||
$javascrip = "" .
|
||||
"<script type='text/javascript'>\n" .
|
||||
"var jsondata = " . G::json_encode($json) . ";\n" .
|
||||
"var pm_run_outside_main_app = '" . $pm_run_outside_main_app . "';\n" .
|
||||
"var dyn_uid = '" . $this->dyn_uid . "';\n" .
|
||||
"var pm_run_outside_main_app = null;\n" .
|
||||
"var dyn_uid = '" . $this->fields["CURRENT_DYNAFORM"] . "';\n" .
|
||||
"var __DynaformName__ = '" . $this->record["PRO_UID"] . "_" . $this->record["DYN_UID"] . "';\n" .
|
||||
"var app_uid = '" . $application . "';\n" .
|
||||
"var prj_uid = '" . $this->app_data["PROCESS"] . "';\n" .
|
||||
"var app_uid = '" . $this->fields["APP_UID"] . "';\n" .
|
||||
"var prj_uid = '" . $this->fields["PRO_UID"] . "';\n" .
|
||||
"var step_mode = null;\n" .
|
||||
"var workspace = '" . $this->app_data["SYS_SYS"] . "';\n" .
|
||||
"var credentials = " . G::json_encode($clientToken) . ";\n" .
|
||||
"var workspace = '" . SYS_SYS . "';\n" .
|
||||
"var credentials = " . G::json_encode($this->credentials) . ";\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" .
|
||||
" data.items[0].mode = 'disabled';\n" .
|
||||
" window.project = new PMDynaform.core.Project({\n" .
|
||||
" data: data,\n" .
|
||||
" keys: {\n" .
|
||||
@@ -250,49 +241,55 @@ class pmDynaform
|
||||
|
||||
$file = file_get_contents(PATH_HOME . 'public_html/lib/pmdynaform/build/pmdynaform.html');
|
||||
$file = str_replace("{javascript}", $javascrip, $file);
|
||||
|
||||
echo $file;
|
||||
echo "<pre>";
|
||||
//echo print_r($this->fields, true);
|
||||
// echo print_r($this->data, true);
|
||||
echo "</pre>";
|
||||
exit();
|
||||
}
|
||||
|
||||
public function printEdit($pm_run_outside_main_app, $application, $headData, $step_mode = 'EDIT')
|
||||
public function printEdit()
|
||||
{
|
||||
ob_clean();
|
||||
$json = G::json_decode($this->record["DYN_CONTENT"]);
|
||||
$this->jsonr($json);
|
||||
if (!isset($this->fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["PREVIOUS_STEP"])) {
|
||||
$this->fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["PREVIOUS_STEP"] = "";
|
||||
}
|
||||
$title = "<table width='100%' align='center'>\n" .
|
||||
" <tr class='userGroupTitle'>\n" .
|
||||
" <td width='100%' align='center'>" . $headData["CASE"] . " #: " . $headData["APP_NUMBER"] . " " . $headData["TITLE"] . ": " . $headData["APP_TITLE"] . "</td>\n" .
|
||||
" <td width='100%' align='center'>" . G::LoadTranslation('ID_CASE') . " #: " . $this->fields["APP_NUMBER"] . " " . G::LoadTranslation('ID_TITLE') . ": " . $this->fields["APP_TITLE"] . "</td>\n" .
|
||||
" </tr>\n" .
|
||||
"</table>\n";
|
||||
$javascrip = "" .
|
||||
"<script type='text/javascript'>\n" .
|
||||
"var jsondata = " . G::json_encode($json) . ";\n" .
|
||||
"var pm_run_outside_main_app = '" . $pm_run_outside_main_app . "';\n" .
|
||||
"var dyn_uid = '" . $this->dyn_uid . "';\n" .
|
||||
"var pm_run_outside_main_app = '" . $this->fields["PM_RUN_OUTSIDE_MAIN_APP"] . "';\n" .
|
||||
"var dyn_uid = '" . $this->fields["CURRENT_DYNAFORM"] . "';\n" .
|
||||
"var __DynaformName__ = '" . $this->record["PRO_UID"] . "_" . $this->record["DYN_UID"] . "';\n" .
|
||||
"var app_uid = '" . $application . "';\n" .
|
||||
"var prj_uid = '" . $this->app_data["PROCESS"] . "';\n" .
|
||||
"var step_mode = '" . $step_mode . "';\n" .
|
||||
"var workspace = '" . $this->app_data["SYS_SYS"] . "';\n" .
|
||||
"var app_uid = '" . $this->fields["APP_UID"] . "';\n" .
|
||||
"var prj_uid = '" . $this->fields["PRO_UID"] . "';\n" .
|
||||
"var step_mode = '" . $this->fields["STEP_MODE"] . "';\n" .
|
||||
"var workspace = '" . SYS_SYS . "';\n" .
|
||||
"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" .
|
||||
"var triggerDebug = " . ($this->fields["TRIGGER_DEBUG"] === 1 ? "true" : "false") . ";\n" .
|
||||
"</script>\n" .
|
||||
"<script type='text/javascript' src='/jscore/cases/core/cases_Step.js'></script>\n" .
|
||||
"<script type='text/javascript' src='/jscore/cases/core/pmDynaform.js'></script>\n" .
|
||||
($this->app_data["PRO_SHOW_MESSAGE"] === 1 ? '' : $title ) .
|
||||
($this->fields["PRO_SHOW_MESSAGE"] === 1 ? '' : $title ) .
|
||||
"<div style='width:100%;padding:0px 10px 0px 10px;margin:15px 0px 0px 0px;'>\n" .
|
||||
" <img src='/images/bulletButtonLeft.gif' style='float:left;'> \n" .
|
||||
" <a id='dyn_backward' href='' style='float:left;'>\n" .
|
||||
" <a id='dyn_backward' href='" . $this->fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["PREVIOUS_STEP"] . "' style='float:left;font-size:12px;line-height:1;margin:0px 0px 1px 5px;'>\n" .
|
||||
" " . $this->fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["PREVIOUS_STEP_LABEL"] . "" .
|
||||
" </a>\n" .
|
||||
" <img src='/images/bulletButton.gif' style='float:right;'> \n" .
|
||||
" <a id='dyn_forward' href='' style='float:right;font-size:12px;line-height:1;margin:0px 5px 1px 0px;'>\n" .
|
||||
" Next Step\n" .
|
||||
" <a id='dyn_forward' href='" . $this->fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["NEXT_STEP"] . "' style='float:right;font-size:12px;line-height:1;margin:0px 5px 1px 0px;'>\n" .
|
||||
" " . $this->fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["NEXT_STEP_LABEL"] . "" .
|
||||
" </a>\n" .
|
||||
"</div>";
|
||||
|
||||
$file = file_get_contents(PATH_HOME . 'public_html/lib/pmdynaform/build/pmdynaform.html');
|
||||
$file = str_replace("{javascript}", $javascrip, $file);
|
||||
echo $file;
|
||||
@@ -308,7 +305,7 @@ class pmDynaform
|
||||
"<script type='text/javascript'>\n" .
|
||||
"var jsondata = " . G::json_encode($json) . ";\n" .
|
||||
"var pm_run_outside_main_app = null;\n" .
|
||||
"var dyn_uid = '" . $this->dyn_uid . "';\n" .
|
||||
"var dyn_uid = '" . $this->fields["CURRENT_DYNAFORM"] . "';\n" .
|
||||
"var __DynaformName__ = null;\n" .
|
||||
"var app_uid = null;\n" .
|
||||
"var prj_uid = '" . $this->record["PRO_UID"] . "';\n" .
|
||||
@@ -316,7 +313,7 @@ class pmDynaform
|
||||
"var workspace = '" . SYS_SYS . "';\n" .
|
||||
"var credentials = " . G::json_encode($this->credentials) . ";\n" .
|
||||
"var filePost = '" . $filename . "';\n" .
|
||||
"var fieldsRequired = " . G::json_encode($this->arrayFieldRequired) . ";\n" .
|
||||
"var fieldsRequired = " . G::json_encode(array()) . ";\n" .
|
||||
"var triggerDebug = null;\n" .
|
||||
"</script>\n" .
|
||||
"<script type='text/javascript' src='/jscore/cases/core/pmDynaform.js'></script>\n" .
|
||||
@@ -329,7 +326,6 @@ class pmDynaform
|
||||
|
||||
$file = file_get_contents(PATH_HOME . 'public_html/lib/pmdynaform/build/pmdynaform.html');
|
||||
$file = str_replace("{javascript}", $javascrip, $file);
|
||||
|
||||
echo $file;
|
||||
exit();
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ function ajax_post(action, form, method, callback, asynchronous) {
|
||||
};
|
||||
}
|
||||
function dynaFormChanged(frm) {
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
$(window).load(function () {
|
||||
if (pm_run_outside_main_app === 'true') {
|
||||
@@ -30,23 +30,10 @@ $(window).load(function () {
|
||||
token: credentials,
|
||||
submitRest: false
|
||||
});
|
||||
|
||||
var type = document.createElement("input");
|
||||
type.type = "hidden";
|
||||
type.name = "TYPE";
|
||||
type.value = "ASSIGN_TASK";
|
||||
var uid = document.createElement("input");
|
||||
uid.type = "hidden";
|
||||
uid.name = "UID";
|
||||
uid.value = dyn_uid;
|
||||
var position = document.createElement("input");
|
||||
position.type = "hidden";
|
||||
position.name = "POSITION";
|
||||
position.value = "10000";
|
||||
var action = document.createElement("input");
|
||||
action.type = "hidden";
|
||||
action.name = "ACTION";
|
||||
action.value = "ASSIGN";
|
||||
var dyn_content_history = document.createElement("input");
|
||||
dyn_content_history.type = "hidden";
|
||||
dyn_content_history.name = "form[DYN_CONTENT_HISTORY]";
|
||||
dyn_content_history.value = JSON.stringify(jsondata);
|
||||
var dynaformname = document.createElement("input");
|
||||
dynaformname.type = "hidden";
|
||||
dynaformname.name = "__DynaformName__";
|
||||
@@ -63,10 +50,7 @@ $(window).load(function () {
|
||||
form.action = filePost ? filePost : "cases_SaveData?UID=" + dyn_uid + "&APP_UID=" + app_uid;
|
||||
form.method = "post";
|
||||
form.enctype = "multipart/form-data";
|
||||
form.appendChild(type);
|
||||
form.appendChild(uid);
|
||||
form.appendChild(position);
|
||||
form.appendChild(action);
|
||||
form.appendChild(dyn_content_history);
|
||||
form.appendChild(dynaformname);
|
||||
form.appendChild(appuid);
|
||||
form.appendChild(arrayRequired);
|
||||
|
||||
@@ -852,11 +852,11 @@ class Ajax
|
||||
$Fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["NEXT_STEP"] = "#";
|
||||
$Fields["APP_DATA"]["__DYNAFORM_OPTIONS"]["NEXT_ACTION"] = "return false;";
|
||||
G::LoadClass('pmDynaform');
|
||||
$a = new pmDynaform($_REQUEST['DYN_UID'], $Fields['APP_DATA']);
|
||||
$FieldsPmDynaform["PRO_UID"] = $_SESSION['PROCESS'];
|
||||
$FieldsPmDynaform["CURRENT_DYNAFORM"] = $_REQUEST['DYN_UID'];
|
||||
$a = new pmDynaform($FieldsPmDynaform);
|
||||
if ($a->isResponsive()) {
|
||||
$a->app_data["PROCESS"] = $_SESSION['PROCESS'];
|
||||
$a->app_data["SYS_SYS"] = SYS_SYS;
|
||||
$a->printView((!isset($_SESSION["PM_RUN_OUTSIDE_MAIN_APP"])) ? "true" : "false", $_SESSION['APPLICATION']);
|
||||
$a->printView();
|
||||
} else {
|
||||
$G_PUBLISH->AddContent("dynaform", "xmlform", $_SESSION["PROCESS"] . "/" . $_POST["DYN_UID"], "", $Fields["APP_DATA"], "", "", "view");
|
||||
}
|
||||
|
||||
@@ -383,11 +383,12 @@ if ($actionAjax == 'dynaformChangeLogViewHistory') {
|
||||
$Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_STEP'] = '#';
|
||||
$Fields['APP_DATA']['__DYNAFORM_OPTIONS']['NEXT_ACTION'] = 'return false;';
|
||||
G::LoadClass('pmDynaform');
|
||||
$a = new pmDynaform($_GET['DYN_UID'], $Fields['APP_DATA']);
|
||||
$FieldsPmDynaform = $Fields;
|
||||
$FieldsPmDynaform["PRO_UID"] = $_SESSION['PROCESS'];
|
||||
$FieldsPmDynaform["CURRENT_DYNAFORM"] = $_GET['DYN_UID'];
|
||||
$a = new pmDynaform($FieldsPmDynaform);
|
||||
if ($a->isResponsive()) {
|
||||
$a->app_data["PROCESS"] = $_SESSION['PROCESS'];
|
||||
$a->app_data["SYS_SYS"] = SYS_SYS;
|
||||
$a->printView((!isset($_SESSION["PM_RUN_OUTSIDE_MAIN_APP"])) ? "true" : "false", $_SESSION['APPLICATION']);
|
||||
$a->printView();
|
||||
} else {
|
||||
$G_PUBLISH->AddContent('dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_POST['DYN_UID'], '', $Fields['APP_DATA'], '', '', 'view');
|
||||
}
|
||||
@@ -474,9 +475,11 @@ if ($actionAjax == 'historyDynaformGridPreview') {
|
||||
$_SESSION['CURRENT_DYN_UID'] = $_POST['DYN_UID'];
|
||||
$_SESSION['DYN_UID_PRINT'] = $_POST['DYN_UID'];
|
||||
G::LoadClass('pmDynaform');
|
||||
$a = new pmDynaform($_GET['DYN_UID'], $Fields['APP_DATA']);
|
||||
$FieldsPmDynaform = $Fields;
|
||||
$FieldsPmDynaform["CURRENT_DYNAFORM"] = $_GET['DYN_UID'];
|
||||
$a = new pmDynaform($FieldsPmDynaform);
|
||||
if ($a->isResponsive()) {
|
||||
$a->printView((!isset($_SESSION["PM_RUN_OUTSIDE_MAIN_APP"])) ? "true" : "false", $_SESSION['APPLICATION']);
|
||||
$a->printView();
|
||||
} else {
|
||||
$G_PUBLISH->AddContent('dynaform', 'xmlform', $_SESSION['PROCESS'] . '/' . $_POST['DYN_UID'], '', $Fields['APP_DATA'], '', '', 'view');
|
||||
}
|
||||
|
||||
@@ -269,11 +269,14 @@ try {
|
||||
$_SESSION['CURRENT_DYN_UID'] = $_GET['UID'];
|
||||
|
||||
G::LoadClass('pmDynaform');
|
||||
$a = new pmDynaform($_GET['UID'], $Fields['APP_DATA']);
|
||||
$FieldsPmDynaform = $Fields;
|
||||
$FieldsPmDynaform["PM_RUN_OUTSIDE_MAIN_APP"] = (!isset($_SESSION["PM_RUN_OUTSIDE_MAIN_APP"])) ? "true" : "false";
|
||||
$FieldsPmDynaform["STEP_MODE"] = $oStep->getStepMode();
|
||||
$FieldsPmDynaform["PRO_SHOW_MESSAGE"] = $noShowTitle;
|
||||
$FieldsPmDynaform["TRIGGER_DEBUG"] = $_SESSION['TRIGGER_DEBUG']['ISSET'];
|
||||
$a = new pmDynaform($FieldsPmDynaform);
|
||||
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());
|
||||
$a->printEdit();
|
||||
} 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()) : ''));
|
||||
}
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
|
||||
$DYN_UID = $_GET["dyn_uid"];
|
||||
G::LoadClass('pmDynaform');
|
||||
$a = new pmDynaform($DYN_UID);
|
||||
$a = new pmDynaform(array("CURRENT_DYNAFORM" => $DYN_UID));
|
||||
$a->printPmDynaform();
|
||||
|
||||
@@ -398,7 +398,7 @@ class WebEntry
|
||||
|
||||
|
||||
$fileContent .= "G::LoadClass('pmDynaform');\n";
|
||||
$fileContent .= "\$a = new pmDynaform('".$arrayWebEntryData["DYN_UID"]."', array());\n";
|
||||
$fileContent .= "\$a = new pmDynaform(array('CURRENT_DYNAFORM'=>'" . $arrayWebEntryData["DYN_UID"] . "'));\n";
|
||||
$fileContent .= "if(\$a->isResponsive()){";
|
||||
$fileContent .= "\$a->printWebEntry('".$fileName."Post.php');";
|
||||
$fileContent .= "}else {";
|
||||
|
||||
@@ -132,11 +132,13 @@ while ($oDataset->next()) {
|
||||
} else {
|
||||
$label = $key;
|
||||
}
|
||||
$tpl->newBlock("FIELDLOG");
|
||||
$tpl->assign("fieldName", $label);
|
||||
$tpl->assign("previous", (isset($historyData[$tableNameA][$key]))? $historyData[$tableNameA][$key] : "");
|
||||
$tpl->assign("actual", $value);
|
||||
$count++;
|
||||
if (strpos($label, "DYN_CONTENT_HISTORY") === false) {
|
||||
$tpl->newBlock("FIELDLOG");
|
||||
$tpl->assign("fieldName", $label);
|
||||
$tpl->assign("previous", (isset($historyData[$tableNameA][$key]))? $historyData[$tableNameA][$key] : "");
|
||||
$tpl->assign("actual", $value);
|
||||
$count++;
|
||||
}
|
||||
}
|
||||
|
||||
if (is_array($value)) {
|
||||
|
||||
Reference in New Issue
Block a user