From 4581a6efc394072ef243de2276ae6163d061f785 Mon Sep 17 00:00:00 2001 From: Roly Rudy Gutierrez Pinto Date: Wed, 25 Mar 2015 15:57:53 -0400 Subject: [PATCH] PM-947 --- workflow/engine/classes/model/Dynaform.php | 3 +++ .../ProcessMaker/BusinessModel/DynaForm.php | 18 +++++++++++------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/workflow/engine/classes/model/Dynaform.php b/workflow/engine/classes/model/Dynaform.php index ba413d9f7..598db7931 100755 --- a/workflow/engine/classes/model/Dynaform.php +++ b/workflow/engine/classes/model/Dynaform.php @@ -173,6 +173,9 @@ class Dynaform extends BaseDynaform if (isset($aData["DYN_CONTENT"])) { $this->setDynContent($aData["DYN_CONTENT"]); } + if (isset($aData["DYN_LABEL"])) { + $this->setDynLabel($aData["DYN_LABEL"]); + } if (!isset($aData['DYN_VERSION'])) { $aData['DYN_VERSION'] = 0; } diff --git a/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php b/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php index 09e058288..d6afc78c4 100644 --- a/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php +++ b/workflow/engine/src/ProcessMaker/BusinessModel/DynaForm.php @@ -1195,13 +1195,13 @@ class DynaForm $dynaForm = new \Dynaform(); $arraydata = $dynaForm->Load($dynaFormUid); - + if ($arraydata["DYN_LABEL"] !== null && $arraydata["DYN_LABEL"] !== "") { $dyn_labels = \G::json_decode($arraydata["DYN_LABEL"]); - $dyn_labels->$name[count($name) - 2] = $content; } else { - $dyn_labels = array(); + $dyn_labels = new \stdClass(); } + $dyn_labels->$name[count($name) - 2] = $content; $arraydata["DYN_LABEL"] = \G::json_encode($dyn_labels); $dynaForm->update($arraydata); @@ -1225,11 +1225,13 @@ class DynaForm public function listLanguage($projectUid, $dynaFormUid) { try { + $list = array(); $dynaForm = new \Dynaform(); $arraydata = $dynaForm->Load($dynaFormUid); - + + if ($arraydata["DYN_LABEL"] === null || $arraydata["DYN_LABEL"] === "") + return $list; $dyn_labels = \G::json_decode($arraydata["DYN_LABEL"]); - $list = array(); foreach ($dyn_labels as $key => $value) { array_push($list, array( "Lang" => $key, @@ -1267,8 +1269,10 @@ class DynaForm try { $dynaForm = new \Dynaform(); $arraydata = $dynaForm->Load($dynaFormUid); - $json = \G::json_decode($arraydata["DYN_CONTENT"]); - $this->jsonr($json); + if ($arraydata["DYN_CONTENT"] !== null && $arraydata["DYN_CONTENT"] !== "") { + $json = \G::json_decode($arraydata["DYN_CONTENT"]); + $this->jsonr($json); + } $string = ""; $string = $string . "msgid \"\"\n"; $string = $string . "msgstr \"\"\n";