@@ -181,7 +181,6 @@ class pmDynaform
|
|||||||
case 'dataVariable':
|
case 'dataVariable':
|
||||||
$dataVariable = (preg_match('/^\s*@.(.+)\s*$/', $json->dataVariable, $arrayMatch)) ?
|
$dataVariable = (preg_match('/^\s*@.(.+)\s*$/', $json->dataVariable, $arrayMatch)) ?
|
||||||
$arrayMatch[1] : $json->dataVariable;
|
$arrayMatch[1] : $json->dataVariable;
|
||||||
|
|
||||||
if (isset($this->fields['APP_DATA'][$dataVariable]) &&
|
if (isset($this->fields['APP_DATA'][$dataVariable]) &&
|
||||||
is_array($this->fields['APP_DATA'][$dataVariable]) &&
|
is_array($this->fields['APP_DATA'][$dataVariable]) &&
|
||||||
!empty($this->fields['APP_DATA'][$dataVariable])
|
!empty($this->fields['APP_DATA'][$dataVariable])
|
||||||
@@ -189,8 +188,7 @@ class pmDynaform
|
|||||||
foreach ($this->fields['APP_DATA'][$dataVariable] as $row) {
|
foreach ($this->fields['APP_DATA'][$dataVariable] as $row) {
|
||||||
$option = new stdClass();
|
$option = new stdClass();
|
||||||
$option->value = $row[0];
|
$option->value = $row[0];
|
||||||
$option->label = (isset($row[1])) ? $row[1] : $row[0];
|
$option->label = isset($row[1]) ? $row[1] : "";
|
||||||
|
|
||||||
$json->optionsSql[] = $option;
|
$json->optionsSql[] = $option;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -207,7 +205,7 @@ class pmDynaform
|
|||||||
$row = $rs->getRow();
|
$row = $rs->getRow();
|
||||||
$option = new stdClass();
|
$option = new stdClass();
|
||||||
$option->value = $row[0];
|
$option->value = $row[0];
|
||||||
$option->label = isset($row[1]) ? $row[1] : $row[0];
|
$option->label = isset($row[1]) ? $row[1] : "";
|
||||||
$json->optionsSql[] = $option;
|
$json->optionsSql[] = $option;
|
||||||
}
|
}
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
@@ -234,7 +232,6 @@ class pmDynaform
|
|||||||
$json->data->value = $this->fields["APP_DATA"][$json->name];
|
$json->data->value = $this->fields["APP_DATA"][$json->name];
|
||||||
$json->data->label = $this->fields["APP_DATA"][$json->name];
|
$json->data->label = $this->fields["APP_DATA"][$json->name];
|
||||||
}
|
}
|
||||||
$json->optionsSql = array();
|
|
||||||
}
|
}
|
||||||
if ($key === "type" && ($value === "dropdown")) {
|
if ($key === "type" && ($value === "dropdown")) {
|
||||||
$json->data = new stdClass();
|
$json->data = new stdClass();
|
||||||
@@ -287,7 +284,6 @@ class pmDynaform
|
|||||||
if (isset($this->fields["APP_DATA"][$json->name . "_label"])) {
|
if (isset($this->fields["APP_DATA"][$json->name . "_label"])) {
|
||||||
$json->data->label = $this->fields["APP_DATA"][$json->name . "_label"];
|
$json->data->label = $this->fields["APP_DATA"][$json->name . "_label"];
|
||||||
}
|
}
|
||||||
$json->optionsSql = array();
|
|
||||||
}
|
}
|
||||||
if ($key === "type" && ($value === "radio")) {
|
if ($key === "type" && ($value === "radio")) {
|
||||||
$json->data = new stdClass();
|
$json->data = new stdClass();
|
||||||
@@ -438,15 +434,15 @@ class pmDynaform
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//synchronize var_label
|
//synchronize var_label
|
||||||
if ($key === "type" && ($value === "dropdown" || $value === "suggest")) {
|
if ($key === "type" && ($value === "dropdown" || $value === "suggest" || $value === "radio")) {
|
||||||
if (isset($this->fields["APP_DATA"]["__VAR_CHANGED__"]) && in_array($json->name, explode(",", $this->fields["APP_DATA"]["__VAR_CHANGED__"]))) {
|
if (isset($this->fields["APP_DATA"]["__VAR_CHANGED__"]) && in_array($json->name, explode(",", $this->fields["APP_DATA"]["__VAR_CHANGED__"]))) {
|
||||||
foreach ($json->optionsSql as $io) {
|
foreach ($json->optionsSql as $io) {
|
||||||
if ($json->data->value === $io->value) {
|
if ($this->toStringNotNullValues($json->data->value) === $io->value) {
|
||||||
$json->data->label = $io->label;
|
$json->data->label = $io->label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
foreach ($json->options as $io) {
|
foreach ($json->options as $io) {
|
||||||
if ($json->data->value === $io->value) {
|
if ($this->toStringNotNullValues($json->data->value) === $io->value) {
|
||||||
$json->data->label = $io->label;
|
$json->data->label = $io->label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -466,14 +462,14 @@ class pmDynaform
|
|||||||
foreach ($dv as $idv) {
|
foreach ($dv as $idv) {
|
||||||
foreach ($json->optionsSql as $os) {
|
foreach ($json->optionsSql as $os) {
|
||||||
if ($os->value === $idv) {
|
if ($os->value === $idv) {
|
||||||
array_push($dataValue, $os->value);
|
$dataValue[] = $os->value;
|
||||||
array_push($dataLabel, $os->label);
|
$dataLabel[] = $os->label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
foreach ($json->options as $os) {
|
foreach ($json->options as $os) {
|
||||||
if ($os->value === $idv) {
|
if ($os->value === $idv) {
|
||||||
array_push($dataValue, $os->value);
|
$dataValue[] = $os->value;
|
||||||
array_push($dataLabel, $os->label);
|
$dataLabel[] = $os->label;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -488,6 +484,10 @@ class pmDynaform
|
|||||||
$_SESSION["TRIGGER_DEBUG"]["DATA"][] = Array("key" => $json->name . "_label", "value" => $json->data->label);
|
$_SESSION["TRIGGER_DEBUG"]["DATA"][] = Array("key" => $json->name . "_label", "value" => $json->data->label);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//clear optionsSql
|
||||||
|
if ($key === "type" && ($value === "text" || $value === "textarea" || $value === "hidden" || $value === "suggest")) {
|
||||||
|
$json->optionsSql = array();
|
||||||
|
}
|
||||||
//grid
|
//grid
|
||||||
if ($key === "type" && ($value === "grid")) {
|
if ($key === "type" && ($value === "grid")) {
|
||||||
if (isset($this->fields["APP_DATA"][$json->name])) {
|
if (isset($this->fields["APP_DATA"][$json->name])) {
|
||||||
@@ -1528,4 +1528,18 @@ class pmDynaform
|
|||||||
return array('dsn' => $dsn, 'username' => DB_USER, 'password' => DB_PASS);
|
return array('dsn' => $dsn, 'username' => DB_USER, 'password' => DB_PASS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the value converted to string if it is not null.
|
||||||
|
*
|
||||||
|
* @param string $string
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
private function toStringNotNullValues($value)
|
||||||
|
{
|
||||||
|
if (is_null($value)) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
return (string) $value;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user