PMC-693-A
This commit is contained in:
committed by
Paula Quispe
parent
52073709aa
commit
06fb08671f
@@ -105,6 +105,10 @@ class Form extends XmlForm
|
|||||||
$filename = $filename . '.xml';
|
$filename = $filename . '.xml';
|
||||||
}
|
}
|
||||||
$this->home = $home;
|
$this->home = $home;
|
||||||
|
|
||||||
|
//to do: This must be removed, the post validation should only be done for the classic version.
|
||||||
|
self::createXMLFileIfNotExists($this->home . $filename);
|
||||||
|
|
||||||
$res = parent::parseFile( $filename, $language, $forceParse );
|
$res = parent::parseFile( $filename, $language, $forceParse );
|
||||||
if ($res == 1) {
|
if ($res == 1) {
|
||||||
trigger_error( 'Faild to parse file ' . $filename . '.', E_USER_ERROR );
|
trigger_error( 'Faild to parse file ' . $filename . '.', E_USER_ERROR );
|
||||||
@@ -751,5 +755,53 @@ class Form extends XmlForm
|
|||||||
}
|
}
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create XML file if not exists.
|
||||||
|
*
|
||||||
|
* @param string $filepath
|
||||||
|
*
|
||||||
|
* @see Form->__construct()
|
||||||
|
* @@link https://wiki.processmaker.com/3.1/Cases
|
||||||
|
* @link https://wiki.processmaker.com/index.php/2.5.X/DynaForms#XML_tab
|
||||||
|
*/
|
||||||
|
public static function createXMLFileIfNotExists($filepath)
|
||||||
|
{
|
||||||
|
if (file_exists($filepath)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$pathParts = pathinfo($filepath);
|
||||||
|
if (empty($pathParts)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$dynUid = $pathParts["filename"];
|
||||||
|
$proUid = basename($pathParts["dirname"]);
|
||||||
|
$pathHome = dirname($pathParts["dirname"]) . PATH_SEP;
|
||||||
|
self::createXMLFile($proUid, $dynUid, 'xmlform', $pathHome);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create XML file.
|
||||||
|
*
|
||||||
|
* @param string $proUid
|
||||||
|
* @param string $dynUid
|
||||||
|
* @param string $dynType
|
||||||
|
* @param string $pathHome
|
||||||
|
*
|
||||||
|
* @see Dynaform->create()
|
||||||
|
* @see Form::createXMLFileIfNotExists()
|
||||||
|
* @link https://wiki.processmaker.com/3.1/Cases
|
||||||
|
* @link https://wiki.processmaker.com/index.php/2.5.X/DynaForms#XML_tab
|
||||||
|
*/
|
||||||
|
public static function createXMLFile($proUid, $dynUid, $dynType = 'xmlform', $pathHome = PATH_XMLFORM)
|
||||||
|
{
|
||||||
|
$xml = '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
|
||||||
|
$xml .= '<dynaForm type="' . $dynType . '" name="' . $proUid . '/' . $dynUid . '" width="500" enabletemplate="0" mode="" nextstepsave="prompt">' . "\n";
|
||||||
|
$xml .= '</dynaForm>';
|
||||||
|
G::verifyPath($pathHome . $proUid, true);
|
||||||
|
$file = fopen($pathHome . $proUid . '/' . $dynUid . '.xml', 'w');
|
||||||
|
fwrite($file, $xml);
|
||||||
|
fclose($file);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2190,7 +2190,7 @@ class Processes
|
|||||||
$labels = ['OUT_DOC_TITLE' => $row['OUT_DOC_TITLE'],
|
$labels = ['OUT_DOC_TITLE' => $row['OUT_DOC_TITLE'],
|
||||||
'OUT_DOC_DESCRIPTION' => !empty($row['OUT_DOC_DESCRIPTION']) ? $row['OUT_DOC_DESCRIPTION'] : '',
|
'OUT_DOC_DESCRIPTION' => !empty($row['OUT_DOC_DESCRIPTION']) ? $row['OUT_DOC_DESCRIPTION'] : '',
|
||||||
'OUT_DOC_FILENAME' => $row['OUT_DOC_FILENAME'],
|
'OUT_DOC_FILENAME' => $row['OUT_DOC_FILENAME'],
|
||||||
'OUT_DOC_TEMPLATE' => $row['OUT_DOC_TEMPLATE']];
|
'OUT_DOC_TEMPLATE' => !empty($row['OUT_DOC_TEMPLATE']) ? $row['OUT_DOC_TEMPLATE'] : ''];
|
||||||
$this->insertToContentTable($con, $labels, $row['OUT_DOC_UID'], SYS_LANG);
|
$this->insertToContentTable($con, $labels, $row['OUT_DOC_UID'], SYS_LANG);
|
||||||
}
|
}
|
||||||
$con->commit();
|
$con->commit();
|
||||||
|
|||||||
@@ -223,14 +223,8 @@ class Dynaform extends BaseDynaform
|
|||||||
$description = "Create from a PM Table: " . $addTabName . ", ";
|
$description = "Create from a PM Table: " . $addTabName . ", ";
|
||||||
}
|
}
|
||||||
G::auditLog("CreateDynaform", $description . "Dynaform Title: " . $aData['DYN_TITLE'] . ", Type: " . $aData['DYN_TYPE'] . ", Description: " . $aData['DYN_DESCRIPTION'] . ", Mode: " . $mode);
|
G::auditLog("CreateDynaform", $description . "Dynaform Title: " . $aData['DYN_TITLE'] . ", Type: " . $aData['DYN_TYPE'] . ", Description: " . $aData['DYN_DESCRIPTION'] . ", Mode: " . $mode);
|
||||||
|
|
||||||
$sXml = '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
|
Form::createXMLFile($this->getProUid(), $this->getDynUid(), $this->getDynType(), PATH_DYNAFORM);
|
||||||
$sXml .= '<dynaForm type="' . $this->getDynType() . '" name="' . $this->getProUid() . '/' . $this->getDynUid() . '" width="500" enabletemplate="0" mode="" nextstepsave="prompt">' . "\n";
|
|
||||||
$sXml .= '</dynaForm>';
|
|
||||||
G::verifyPath(PATH_DYNAFORM . $this->getProUid(), true);
|
|
||||||
$oFile = fopen(PATH_DYNAFORM . $this->getProUid() . '/' . $this->getDynUid() . '.xml', 'w');
|
|
||||||
fwrite($oFile, $sXml);
|
|
||||||
fclose($oFile);
|
|
||||||
return $this->getDynUid();
|
return $this->getDynUid();
|
||||||
} else {
|
} else {
|
||||||
$msg = '';
|
$msg = '';
|
||||||
|
|||||||
Reference in New Issue
Block a user