Merge pull request #1151 from victorsl/BUG-9549
BUG 9549 "Posibilidad de copiar dynaforms" SOLVED
This commit is contained in:
@@ -59,11 +59,14 @@ if ($dynUid == '') {
|
||||
} else {
|
||||
$aFields = $dynaform->load( $dynUid );
|
||||
}
|
||||
$aFields['PRO_UID'] = isset( $dynaform->Fields['PRO_UID'] ) ? $dynaform->Fields['PRO_UID'] : $_GET['PRO_UID'];
|
||||
|
||||
$aFields["PRO_UID"] = (isset($dynaform->Fields["PRO_UID"]))? $dynaform->Fields["PRO_UID"] : $_GET["PRO_UID"];
|
||||
$aFields['ACTION'] = isset( $_GET['ACTION'] ) ? $_GET['ACTION'] : '';
|
||||
//$aFields['READ_ONLY'] = ($_GET['ACTION']=='normal')?0:1;
|
||||
$aFields["LANG"] = SYS_LANG;
|
||||
|
||||
G::LoadClass( 'xmlfield_InputPM' );
|
||||
|
||||
$G_PUBLISH = new Publisher();
|
||||
$G_PUBLISH->AddContent( 'xmlform', 'xmlform', 'dynaforms/dynaforms_Edit', '', $aFields, SYS_URI . 'dynaforms/dynaforms_Save' );
|
||||
|
||||
|
||||
@@ -37,7 +37,6 @@ if (isset( $_POST['function'] )) {
|
||||
}
|
||||
|
||||
if (isset( $sfunction ) && $sfunction == 'lookforNameDynaform') {
|
||||
|
||||
$snameDyanform = urldecode( $_POST['NAMEDYNAFORM'] );
|
||||
$sPRO_UID = urldecode( $_POST['proUid'] );
|
||||
|
||||
@@ -69,7 +68,6 @@ if (isset( $sfunction ) && $sfunction == 'lookforNameDynaform') {
|
||||
print $flag;
|
||||
|
||||
} else {
|
||||
$dynaform = new dynaform();
|
||||
if (isset( $_POST['form'] )) {
|
||||
$aData = $_POST['form']; //For old process map form
|
||||
if ($aData['DYN_UID'] === '') {
|
||||
@@ -91,18 +89,161 @@ if (isset( $sfunction ) && $sfunction == 'lookforNameDynaform') {
|
||||
}
|
||||
//if ($aData['DYN_UID']==='') unset($aData['DYN_UID']);
|
||||
|
||||
$dynaform = new dynaform();
|
||||
|
||||
if (isset( $aData['DYN_UID'] )) {
|
||||
$dynaform->Save( $aData );
|
||||
if (isset($aData["DYN_UID"])) {
|
||||
$dynaform->Save($aData);
|
||||
} else {
|
||||
if (! isset( $aData['ADD_TABLE'] ) || $aData['ADD_TABLE'] == "") {
|
||||
$aFields = $dynaform->create( $aData );
|
||||
} else {
|
||||
$aFields = $dynaform->createFromPMTable( $aData, $aData['ADD_TABLE'] );
|
||||
switch ($aData["ACTION"]) {
|
||||
case "copy":
|
||||
$aData["DYN_TYPE"] = $aData["COPY_TYPE"];
|
||||
$aData["DYN_TITLE"] = $aData["COPY_DYNAFORM_TITLE"];
|
||||
$aData["DYN_DESCRIPTION"] = $aData["COPY_DYNAFORM_DESCRIPTION"];
|
||||
|
||||
$aFields = $dynaform->create($aData);
|
||||
|
||||
$dynaformUid = $dynaform->getDynUid();
|
||||
|
||||
//Copy files of the dynaform
|
||||
$umaskOld = umask(0);
|
||||
|
||||
$fileXml = PATH_DYNAFORM . $aData["COPY_PROCESS_UID"] . PATH_SEP . $aData["COPY_DYNAFORM_UID"] . ".xml";
|
||||
|
||||
if (file_exists($fileXml)) {
|
||||
$fileXmlCopy = PATH_DYNAFORM . $aData["PRO_UID"] . PATH_SEP . $dynaformUid . ".xml";
|
||||
|
||||
$fhXml = fopen($fileXml, "r");
|
||||
$fhXmlCopy = fopen($fileXmlCopy, "w");
|
||||
|
||||
while (!feof($fhXml)) {
|
||||
$strLine = fgets($fhXml, 4096);
|
||||
$strLine = str_replace($aData["COPY_PROCESS_UID"] . "/" . $aData["COPY_DYNAFORM_UID"], $aData["PRO_UID"] . "/" . $dynaformUid, $strLine);
|
||||
|
||||
//Dynaform grid
|
||||
preg_match_all("/<.*type\s*=\s*[\"\']grid[\"\'].*xmlgrid\s*=\s*[\"\']\w{32}\/(\w{32})[\"\'].*\/>/", $strLine, $arrayMatch, PREG_SET_ORDER);
|
||||
|
||||
foreach ($arrayMatch as $value) {
|
||||
$copyDynaformGridUid = $value[1];
|
||||
|
||||
//Get data
|
||||
$criteria = new Criteria();
|
||||
|
||||
$criteria->addSelectColumn(ContentPeer::CON_VALUE);
|
||||
$criteria->add(ContentPeer::CON_ID, $copyDynaformGridUid);
|
||||
$criteria->add(ContentPeer::CON_CATEGORY, "DYN_TITLE");
|
||||
$criteria->add(ContentPeer::CON_LANG, SYS_LANG);
|
||||
|
||||
$rsCriteria = ContentPeer::doSelectRS($criteria);
|
||||
$rsCriteria->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
$rsCriteria->next();
|
||||
$row = $rsCriteria->getRow();
|
||||
|
||||
$copyDynGrdTitle = $row["CON_VALUE"];
|
||||
|
||||
$criteria = new Criteria();
|
||||
|
||||
$criteria->addSelectColumn(ContentPeer::CON_VALUE);
|
||||
$criteria->add(ContentPeer::CON_ID, $copyDynaformGridUid);
|
||||
$criteria->add(ContentPeer::CON_CATEGORY, "DYN_DESCRIPTION");
|
||||
$criteria->add(ContentPeer::CON_LANG, SYS_LANG);
|
||||
|
||||
$rsCriteria = ContentPeer::doSelectRS($criteria);
|
||||
$rsCriteria->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
|
||||
$rsCriteria->next();
|
||||
$row = $rsCriteria->getRow();
|
||||
|
||||
$copyDynGrdDescription = $row["CON_VALUE"];
|
||||
|
||||
//Create grid
|
||||
$aDataAux = $aData;
|
||||
|
||||
$aDataAux["DYN_TYPE"] = "grid";
|
||||
$aDataAux["DYN_TITLE"] = $copyDynGrdTitle;
|
||||
$aDataAux["DYN_DESCRIPTION"] = $copyDynGrdDescription;
|
||||
|
||||
$dynaformGrid = new dynaform();
|
||||
$aFields = $dynaformGrid->create($aDataAux);
|
||||
|
||||
$dynaformGridUid = $dynaformGrid->getDynUid();
|
||||
|
||||
$aDataAux["DYN_UID"] = $dynaformGridUid;
|
||||
|
||||
$dynaformGrid->update($aDataAux);
|
||||
|
||||
//Copy files of the dynaform grid
|
||||
$fileGridXml = PATH_DYNAFORM . $aData["COPY_PROCESS_UID"] . PATH_SEP . $copyDynaformGridUid . ".xml";
|
||||
|
||||
if (file_exists($fileGridXml)) {
|
||||
$fileGridXmlCopy = PATH_DYNAFORM . $aData["PRO_UID"] . PATH_SEP . $dynaformGridUid . ".xml";
|
||||
|
||||
$fhGridXml = fopen($fileGridXml, "r");
|
||||
$fhGridXmlCopy = fopen($fileGridXmlCopy, "w");
|
||||
|
||||
while (!feof($fhGridXml)) {
|
||||
$strLineAux = fgets($fhGridXml, 4096);
|
||||
$strLineAux = str_replace($aData["COPY_PROCESS_UID"] . "/" . $copyDynaformGridUid, $aData["PRO_UID"] . "/" . $dynaformGridUid, $strLineAux);
|
||||
|
||||
fwrite($fhGridXmlCopy, $strLineAux);
|
||||
}
|
||||
|
||||
fclose($fhGridXmlCopy);
|
||||
fclose($fhGridXml);
|
||||
|
||||
chmod($fileGridXmlCopy, 0777);
|
||||
}
|
||||
|
||||
$fileGridHtml = PATH_DYNAFORM . $aData["COPY_PROCESS_UID"] . PATH_SEP . $copyDynaformGridUid . ".html";
|
||||
|
||||
if (file_exists($fileGridHtml)) {
|
||||
$fileGridHtmlCopy = PATH_DYNAFORM . $aData["PRO_UID"] . PATH_SEP . $dynaformGridUid . ".html";
|
||||
|
||||
copy($fileGridHtml, $fileGridHtmlCopy);
|
||||
|
||||
chmod($fileGridHtmlCopy, 0777);
|
||||
}
|
||||
|
||||
$strLine = str_replace($aData["COPY_PROCESS_UID"] . "/" . $copyDynaformGridUid, $aData["PRO_UID"] . "/" . $dynaformGridUid, $strLine);
|
||||
}
|
||||
|
||||
fwrite($fhXmlCopy, $strLine);
|
||||
}
|
||||
|
||||
fclose($fhXmlCopy);
|
||||
fclose($fhXml);
|
||||
|
||||
chmod($fileXmlCopy, 0777);
|
||||
}
|
||||
|
||||
$fileHtml = PATH_DYNAFORM . $aData["COPY_PROCESS_UID"] . PATH_SEP . $aData["COPY_DYNAFORM_UID"] . ".html";
|
||||
|
||||
if (file_exists($fileHtml)) {
|
||||
$fileHtmlCopy = PATH_DYNAFORM . $aData["PRO_UID"] . PATH_SEP . $dynaformUid . ".html";
|
||||
|
||||
copy($fileHtml, $fileHtmlCopy);
|
||||
|
||||
chmod($fileHtmlCopy, 0777);
|
||||
}
|
||||
|
||||
umask($umaskOld);
|
||||
break;
|
||||
default:
|
||||
//normal
|
||||
//pmtable
|
||||
if (!isset($aData["ADD_TABLE"]) || $aData["ADD_TABLE"] == "") {
|
||||
$aFields = $dynaform->create($aData);
|
||||
} else {
|
||||
$aFields = $dynaform->createFromPMTable($aData, $aData["ADD_TABLE"]);
|
||||
}
|
||||
break;
|
||||
}
|
||||
$aData['DYN_UID'] = $dynaform->getDynUid();
|
||||
$dynaform->update( $aData );
|
||||
|
||||
$aData["DYN_UID"] = $dynaform->getDynUid();
|
||||
|
||||
$dynaform->update($aData);
|
||||
}
|
||||
|
||||
echo $dynaform->getDynUid();
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
<en>Type
|
||||
<option name="normal">Blank Dynaform</option>
|
||||
<option name="pmtable">PM Table Dynaform</option>
|
||||
<option name="copy">Copy/Import Dynaform</option>
|
||||
</en>
|
||||
</DYN_SOURCE>
|
||||
|
||||
@@ -30,23 +31,33 @@
|
||||
<dynaformsNewPlugin type="private" defaultValue="../dynaforms/dynaforms_NewPlugin"/>
|
||||
|
||||
<JS type="javascript">
|
||||
<![CDATA[
|
||||
function choseDynaformType( form, bOpen ) {
|
||||
var action;
|
||||
if (document.getElementsByName('form[DYN_SOURCE]')[0].checked) {
|
||||
action = document.getElementsByName('form[DYN_SOURCE]')[0].value;
|
||||
} else {
|
||||
action = document.getElementsByName('form[DYN_SOURCE]')[1].value;
|
||||
}
|
||||
panel = popupWindowObject('@G::LoadTranslation(ID_NEW_DYNAFORM)', '@G::encryptlink(@#dynaformsNewPlugin)?PRO_UID=@%PRO_UID&ACTION='+action , 450, 350);
|
||||
currentPopupWindow.remove();
|
||||
}
|
||||
|
||||
function cancel(){
|
||||
currentPopupWindow.remove();
|
||||
}
|
||||
|
||||
]]>
|
||||
</JS>
|
||||
<![CDATA[
|
||||
function choseDynaformType(form, bOpen)
|
||||
{
|
||||
var action = "";
|
||||
|
||||
if (document.getElementsByName("form[DYN_SOURCE]")[0].checked) {
|
||||
action = document.getElementsByName("form[DYN_SOURCE]")[0].value;
|
||||
}
|
||||
|
||||
if (document.getElementsByName("form[DYN_SOURCE]")[1].checked) {
|
||||
action = document.getElementsByName("form[DYN_SOURCE]")[1].value;
|
||||
}
|
||||
|
||||
if (document.getElementsByName("form[DYN_SOURCE]")[2].checked) {
|
||||
action = document.getElementsByName("form[DYN_SOURCE]")[2].value;
|
||||
}
|
||||
|
||||
panel = popupWindowObject("@G::LoadTranslation(ID_NEW_DYNAFORM)", "@G::encryptlink(@#dynaformsNewPlugin)?PRO_UID=@%PRO_UID&ACTION=" + action, 600, 460);
|
||||
|
||||
currentPopupWindow.remove();
|
||||
}
|
||||
|
||||
function cancel()
|
||||
{
|
||||
currentPopupWindow.remove();
|
||||
}
|
||||
]]>
|
||||
</JS>
|
||||
</dynaForm>
|
||||
|
||||
</dynaForm>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<form id="{$form_id}" name="{$form_name}" action="{$form_action}" class="{$form_className}" method="post" encType="multipart/form-data" style="margin:0px;" onsubmit='return validateForm("{$form_objectRequiredFields}".parseJSON());'>
|
||||
<form id="{$form_id}" name="{$form_name}" action="{$form_action}" class="{$form_className}" method="post" encType="multipart/form-data" style="margin:0px;" onsubmit='return validateForm("{$form_objectRequiredFields}".parseJSON());'>
|
||||
|
||||
<div class="borderForm" style="padding-left: 0pt; padding-right: 0pt;">
|
||||
<div class="boxTop"><div class="a"></div><div class="b"></div><div class="c"></div></div>
|
||||
@@ -22,33 +22,56 @@
|
||||
<td class="FormTitle" colspan="2" align="">{$form.TITLE}</td>
|
||||
</tr>
|
||||
<tr id="pmtabledrop" style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$ADD_TABLE}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.ADD_TABLE} </td> //-->
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.ADD_TABLE}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="FormLabel" width="{$form_labelWidth}"><font color="red">* </font>{$DYN_TITLE}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.DYN_TITLE} </td> //-->
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.DYN_TITLE}</td>
|
||||
</tr>
|
||||
<tr id='normalformdrop' style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$DYN_TYPE}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.DYN_TYPE} </td> //-->
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.DYN_TYPE}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$DYN_DESCRIPTION}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.DYN_DESCRIPTION} </td> //-->
|
||||
<td class="FormFieldContent"width="{$form_fieldContentWidth}">{$form.DYN_DESCRIPTION}</td>
|
||||
</tr>
|
||||
<tr id="normalform" style="display: none;" ><td></td>
|
||||
<td class="FormButton" colspan="1" align="center">{$form.SAVE_DYNAFORM} {$form.SAVE_OPEN} {$form.BTN_CANCEL}</td>
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$ADD_TABLE}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.ADD_TABLE} </td> //-->
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.ADD_TABLE}</td>
|
||||
</tr>
|
||||
|
||||
<tr id="pmtableform" style="display: none;" ><td></td>
|
||||
<td class="FormButton" colspan="1" align="center">{$form.CONTINUE} {$form.BTN_CANCEL}</td>
|
||||
<tr id="title">
|
||||
<td class="FormLabel" width="{$form_labelWidth}"><font color="red">* </font>{$DYN_TITLE}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.DYN_TITLE} </td> //-->
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.DYN_TITLE}</td>
|
||||
</tr>
|
||||
<tr id='normalformdrop' style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$DYN_TYPE}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.DYN_TYPE} </td> //-->
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.DYN_TYPE}</td>
|
||||
</tr>
|
||||
<tr id="description">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$DYN_DESCRIPTION}</td>
|
||||
<!-- <td class='FormFieldContent' width="{$form_width}" >{$form.DYN_DESCRIPTION} </td> //-->
|
||||
<td class="FormFieldContent"width="{$form_fieldContentWidth}">{$form.DYN_DESCRIPTION}</td>
|
||||
</tr>
|
||||
<tr id="normalform" style="display: none;">
|
||||
<td class="FormButton" colspan="2" align="center">{$form.SAVE_DYNAFORM} {$form.SAVE_OPEN} {$form.BTN_CANCEL}</td>
|
||||
</tr>
|
||||
<tr id="pmtableform" style="display: none;">
|
||||
<td class="FormButton" colspan="2" align="center">{$form.CONTINUE} {$form.BTN_CANCEL}</td>
|
||||
</tr>
|
||||
|
||||
<!--Copy dynaform-->
|
||||
<tr id="copyProcess" style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$COPY_PROCESS_UID}</td>
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.COPY_PROCESS_UID}</td>
|
||||
</tr>
|
||||
<tr id="copyType" style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$COPY_TYPE}</td>
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.COPY_TYPE}</td>
|
||||
</tr>
|
||||
<tr id="copyDynaform" style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}"><span style="color: red;">*</span> {$COPY_DYNAFORM_UID}</td>
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.COPY_DYNAFORM_UID}</td>
|
||||
</tr>
|
||||
<tr id="copyDynTitle" style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}"><span style="color: red;">*</span> {$COPY_DYNAFORM_TITLE}</td>
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.COPY_DYNAFORM_TITLE}</td>
|
||||
</tr>
|
||||
<tr id="copyDynDescription" style="display: none;">
|
||||
<td class="FormLabel" width="{$form_labelWidth}">{$COPY_DYNAFORM_DESCRIPTION}</td>
|
||||
<td class="FormFieldContent" width="{$form_fieldContentWidth}">{$form.COPY_DYNAFORM_DESCRIPTION}</td>
|
||||
</tr>
|
||||
<tr id="copyButton" style="display: none;">
|
||||
<td class="FormButton" colspan="2" align="center">{$form.BTNCOPYSAVE} {$form.BTNCOPYSAVEOPEN} {$form.BTNCOPYCANCEL}</td>
|
||||
</tr>
|
||||
|
||||
</tbody></table>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -59,5 +82,6 @@
|
||||
<script type="text/javascript">
|
||||
{$form.JS}
|
||||
</script>
|
||||
|
||||
|
||||
</form>
|
||||
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<dynaForm
|
||||
name="dynaforms_Edit"
|
||||
type="xmlform"
|
||||
width="100%" enableTemplate="1" >
|
||||
|
||||
<dynaForm name="dynaforms_Edit" type="xmlform" width="100%" enableTemplate="1">
|
||||
<DYN_UID type="hidden" showInTable="0"/>
|
||||
<ACTION type="hidden" showInTable="0"/>
|
||||
<PRO_UID type="hidden" showInTable="0"/>
|
||||
<LANG type="private"/>
|
||||
|
||||
<TITLE type="title" group="1">
|
||||
<en>Dynaform Information</en>
|
||||
@@ -37,7 +34,7 @@
|
||||
</CONTINUE>
|
||||
|
||||
<SAVE_DYNAFORM type="button" onclick="dynaformSave( this.form, false );">
|
||||
<en>Save</en>
|
||||
<en>Save</en>
|
||||
</SAVE_DYNAFORM>
|
||||
|
||||
<SAVE_OPEN type="button" onclick="dynaformSave( this.form, true );">
|
||||
@@ -48,38 +45,157 @@
|
||||
<en>Cancel</en>
|
||||
</BTN_CANCEL>
|
||||
|
||||
<!--Copy dynaform-->
|
||||
<COPY_PROCESS_UID type="dropdown" dependentfields="COPY_DYNAFORM_UID">
|
||||
<![CDATA[
|
||||
SELECT PRO.PRO_UID, CON.CON_VALUE
|
||||
FROM PROCESS AS PRO, CONTENT AS CON
|
||||
WHERE PRO.PRO_UID = CON.CON_ID AND CON.CON_CATEGORY = 'PRO_TITLE' AND CON.CON_LANG = '@#LANG'
|
||||
ORDER BY CON.CON_VALUE ASC
|
||||
]]>
|
||||
|
||||
<en>
|
||||
Process
|
||||
<option name="">- Select a process -</option>
|
||||
</en>
|
||||
</COPY_PROCESS_UID>
|
||||
|
||||
<COPY_TYPE type="dropdown" dependentfields="COPY_DYNAFORM_UID">
|
||||
<en>
|
||||
Showing forms of type
|
||||
<option name="xmlform">Normal</option>
|
||||
<option name="grid">Grid</option>
|
||||
</en>
|
||||
</COPY_TYPE>
|
||||
|
||||
<COPY_DYNAFORM_UID type="dropdown" dependentfields="COPY_DYNAFORM_DESCRIPTION">
|
||||
<![CDATA[
|
||||
SELECT DYN.DYN_UID, CON.CON_VALUE
|
||||
FROM DYNAFORM AS DYN, CONTENT AS CON
|
||||
WHERE DYN.PRO_UID = '@#COPY_PROCESS_UID' AND DYN.DYN_TYPE = '@#COPY_TYPE' AND
|
||||
DYN.DYN_UID = CON.CON_ID AND CON.CON_CATEGORY = 'DYN_TITLE' AND CON.CON_LANG = '@#LANG'
|
||||
ORDER BY CON.CON_VALUE ASC
|
||||
]]>
|
||||
|
||||
<en>
|
||||
Dynaform to copy/import
|
||||
<option name="">- Select a dynaform -</option>
|
||||
</en>
|
||||
</COPY_DYNAFORM_UID>
|
||||
|
||||
<COPY_DYNAFORM_TITLE type="text" size="48" maxlength="256" required="1">
|
||||
<en>Title of the new dynaform</en>
|
||||
</COPY_DYNAFORM_TITLE>
|
||||
|
||||
<COPY_DYNAFORM_DESCRIPTION type="textarea" rows="8" cols="45">
|
||||
<![CDATA[
|
||||
SELECT CON.CON_VALUE
|
||||
FROM CONTENT AS CON
|
||||
WHERE CON.CON_ID = '@#COPY_DYNAFORM_UID' AND CON.CON_CATEGORY = 'DYN_DESCRIPTION' AND CON.CON_LANG = '@#LANG'
|
||||
]]>
|
||||
|
||||
<en>Description of the new dynaform</en>
|
||||
</COPY_DYNAFORM_DESCRIPTION>
|
||||
|
||||
<BTNCOPYSAVE type="button" onclick="dynaformSave(this.form, false);">
|
||||
<en><![CDATA[Copy/Import]]></en>
|
||||
</BTNCOPYSAVE>
|
||||
|
||||
<BTNCOPYSAVEOPEN type="button" onclick="dynaformSave(this.form, true);">
|
||||
<en><![CDATA[Copy/Import and Open]]></en>
|
||||
</BTNCOPYSAVEOPEN>
|
||||
|
||||
<BTNCOPYCANCEL type="button" onclick="cancel();">
|
||||
<en>Cancel</en>
|
||||
</BTNCOPYCANCEL>
|
||||
|
||||
<JS type="javascript">
|
||||
<![CDATA[
|
||||
|
||||
getField('DYN_TITLE').form.onsubmit = function() {return false;};
|
||||
function checkDynaformSource()
|
||||
{
|
||||
var action = "@#ACTION";
|
||||
|
||||
checkDynaformSource();
|
||||
function checkDynaformSource(){
|
||||
//alert('@#ACTION');
|
||||
|
||||
if ('@#ACTION'=='normal'){
|
||||
document.getElementById('normalform').style.display='';
|
||||
document.getElementById('normalformdrop').style.display='';
|
||||
document.getElementById('pmtableform').style.display='none';
|
||||
} else {
|
||||
document.getElementById('pmtableform').style.display='';
|
||||
document.getElementById('pmtabledrop').style.display='';
|
||||
document.getElementById('normalform').style.display='none';
|
||||
//document.getElementById('form[DYN_TYPE]').value = 'xmlform';
|
||||
}
|
||||
|
||||
/*if ('@#ACTION'=='normal'){
|
||||
hideRow('ADD_TABLE');
|
||||
hideRow('CONTINUE');
|
||||
hideRow('PROCESS_VARIABLES');
|
||||
hideRow('PRO_VAR_ASSIGN');
|
||||
} else {
|
||||
document.getElementById('form[DYN_TYPE]').value = 'xmlform';
|
||||
hideRow('DYN_TYPE');
|
||||
}*/
|
||||
}
|
||||
leimnud.event.add(getField('DYN_TITLE'), 'blur', function()
|
||||
{
|
||||
switch (action) {
|
||||
case "pmtable":
|
||||
document.getElementById("pmtableform").style.display="";
|
||||
document.getElementById("pmtabledrop").style.display="";
|
||||
document.getElementById("normalform").style.display="none";
|
||||
//document.getElementById("form[DYN_TYPE]").value = "xmlform";
|
||||
break;
|
||||
case "copy":
|
||||
document.getElementById("title").style.display = "none";
|
||||
document.getElementById("description").style.display = "none";
|
||||
|
||||
document.getElementById("form[TITLE]").innerHTML = "@G::LoadTranslation(ID_DYNAFORM_COPY)";
|
||||
document.getElementById("copyProcess").style.display = "";
|
||||
document.getElementById("copyType").style.display = "";
|
||||
document.getElementById("copyDynaform").style.display = "";
|
||||
document.getElementById("copyDynTitle").style.display = "";
|
||||
document.getElementById("copyDynDescription").style.display = "";
|
||||
document.getElementById("copyButton").style.display = "";
|
||||
break;
|
||||
default:
|
||||
//normal
|
||||
document.getElementById("normalform").style.display="";
|
||||
document.getElementById("normalformdrop").style.display="";
|
||||
document.getElementById("pmtableform").style.display="none";
|
||||
break;
|
||||
}
|
||||
|
||||
/*
|
||||
if ("@#ACTION" == "normal"){
|
||||
hideRow("ADD_TABLE");
|
||||
hideRow("CONTINUE");
|
||||
hideRow("PROCESS_VARIABLES");
|
||||
hideRow("PRO_VAR_ASSIGN");
|
||||
} else {
|
||||
document.getElementById("form[DYN_TYPE]").value = "xmlform";
|
||||
hideRow("DYN_TYPE");
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
var cbocopyDynaformUid = getField("COPY_DYNAFORM_UID")
|
||||
var txtcopyDynTitle = getField("COPY_DYNAFORM_TITLE");
|
||||
|
||||
leimnud.event.add(
|
||||
getField("COPY_PROCESS_UID"),
|
||||
"change",
|
||||
function ()
|
||||
{
|
||||
txtcopyDynTitle.value = "";
|
||||
}
|
||||
);
|
||||
|
||||
leimnud.event.add(
|
||||
getField("COPY_TYPE"),
|
||||
"change",
|
||||
function ()
|
||||
{
|
||||
txtcopyDynTitle.value = "";
|
||||
}
|
||||
);
|
||||
|
||||
leimnud.event.add(
|
||||
cbocopyDynaformUid,
|
||||
"change",
|
||||
function ()
|
||||
{
|
||||
txtcopyDynTitle.value = "";
|
||||
|
||||
if (cbocopyDynaformUid.value != "") {
|
||||
txtcopyDynTitle.value = cbocopyDynaformUid.options[cbocopyDynaformUid.selectedIndex].text;
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
txtcopyDynTitle.form.onsubmit = function () { return false; };
|
||||
getField("DYN_TITLE").form.onsubmit = function () { return false; };
|
||||
|
||||
checkDynaformSource();
|
||||
|
||||
leimnud.event.add(getField('DYN_TITLE'), 'blur', function()
|
||||
{
|
||||
String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ""); };
|
||||
document.getElementById('form[DYN_TITLE]').value = document.getElementById('form[DYN_TITLE]').value.trim();
|
||||
});
|
||||
@@ -133,17 +249,18 @@ document.getElementById('form[DYN_TITLE]').value = document.getElementById('form
|
||||
}.extend(this);
|
||||
oRPC.make();
|
||||
lastPopupWindow.remove();
|
||||
|
||||
|
||||
|
||||
|
||||
//popupWindow('Assign Variable', '?PRO_UID=@%PRO_UID&TABLE_UID='+table_uid , 500, 300);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function cancel(){
|
||||
lastPopupWindow.remove();
|
||||
}
|
||||
|
||||
|
||||
]]>
|
||||
</JS>
|
||||
|
||||
</dynaForm>
|
||||
</dynaForm>
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
<js type="javascript" replaceTags="1"><![CDATA[
|
||||
function dynaformAdd(){
|
||||
popupWindow('@G::LoadTranslation(ID_NEW_DYNAFORM)', '@G::encryptlink(@#dynaformsChoseType)?PRO_UID=@%PRO_UID' , 500, 200);
|
||||
popupWindow("@G::LoadTranslation(ID_NEW_DYNAFORM)", "@G::encryptlink(@#dynaformsChoseType)?PRO_UID=@%PRO_UID" , 500, 225);
|
||||
//popupWindow('@G::LoadTranslation(ID_NEW_DYNAFORM)', '@G::encryptlink(@#dynaformsNewPlugin)?PRO_UID=@%PRO_UID' , 500, 350);
|
||||
}
|
||||
function dynaformPluginAdd(){
|
||||
@@ -74,30 +74,52 @@
|
||||
return document.getElementById(id);
|
||||
}
|
||||
|
||||
function dynaformSave ( form, bOpen ) {
|
||||
var nameDynaForm = getField('DYN_TITLE').value;
|
||||
var proUid = getField('PRO_UID').value;
|
||||
|
||||
if(nameDynaForm==''){
|
||||
// G_STRINGS.ID_REQUIRED_NAME_DYNAFORM
|
||||
msgBox('@G::LoadTranslation(ID_REQUIRED_NAME_DYNAFORM)','alert');
|
||||
return false;
|
||||
}
|
||||
|
||||
reqName=ajax_function(form.action,'lookforNameDynaform','NAMEDYNAFORM='+encodeURIComponent(nameDynaForm)+'&proUid='+encodeURIComponent(proUid),'POST') ;
|
||||
if(!reqName){
|
||||
// alert(G_STRINGS.ID_EXIST_DYNAFORM);return false;
|
||||
msgBox('@G::LoadTranslation(ID_EXIST_DYNAFORM)','alert');
|
||||
}else{
|
||||
if (!bOpen) {
|
||||
ajax_post( form.action, form, 'POST' );
|
||||
lastPopupWindow.remove();
|
||||
@#PAGED_TABLE_ID.refresh();
|
||||
} else {
|
||||
ajax_post( form.action, form, 'POST', openDynaform );
|
||||
}
|
||||
}
|
||||
|
||||
function dynaformSave(form, bOpen)
|
||||
{
|
||||
var nameDynaForm = "";
|
||||
|
||||
var msgv = "";
|
||||
var swv = 1;
|
||||
|
||||
switch (getField("ACTION").value) {
|
||||
case "copy":
|
||||
nameDynaForm = getField("COPY_DYNAFORM_TITLE").value;
|
||||
|
||||
if (getField("COPY_DYNAFORM_UID").value == "") {
|
||||
msgv = msgv + ((msgv != "")? "<br />" : "") + "@G::LoadTranslation(ID_DYNAFORM_COPY_REQUIRED)";
|
||||
swv = 0;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
//normal
|
||||
//pmtable
|
||||
nameDynaForm = getField("DYN_TITLE").value;
|
||||
break;
|
||||
}
|
||||
|
||||
if (nameDynaForm == "") {
|
||||
msgv = msgv + ((msgv != "")? "<br />" : "") + "@G::LoadTranslation(ID_REQUIRED_NAME_DYNAFORM)";
|
||||
swv = 0;
|
||||
}
|
||||
|
||||
if (swv == 0) {
|
||||
msgBox(msgv, "alert");
|
||||
return false;
|
||||
}
|
||||
|
||||
var reqName = ajax_function(form.action, "lookforNameDynaform", "NAMEDYNAFORM=" + encodeURIComponent(nameDynaForm) + "&proUid=" + encodeURIComponent(getField("PRO_UID").value), "POST");
|
||||
|
||||
if (!reqName) {
|
||||
msgBox("@G::LoadTranslation(ID_EXIST_DYNAFORM)", "alert");
|
||||
} else {
|
||||
if (!bOpen) {
|
||||
ajax_post(form.action, form, "POST");
|
||||
lastPopupWindow.remove();
|
||||
@#PAGED_TABLE_ID.refresh();
|
||||
} else {
|
||||
ajax_post(form.action, form, "POST", openDynaform);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function dynaformSavePMBasedForm ( form, bOpen ) {
|
||||
@@ -114,7 +136,7 @@
|
||||
function openDynaform(sUID) {
|
||||
dynaformEdit(sUID);
|
||||
}
|
||||
|
||||
|
||||
function dynaformDelete ( uid,proUid ){
|
||||
|
||||
isokDependent = ajax_function('@G::encryptlink(@#dynaformsDelete)','getDynaformAssign','DYN_UID='+uid+'&PRO_UID='+proUid,'POST');
|
||||
@@ -124,7 +146,7 @@
|
||||
}
|
||||
result = ajax_function('@G::encryptlink(@#dynaformsDelete)','getRelationInfDynaform','DYN_UID='+uid,'POST');
|
||||
labelToshow = (result)?'@G::LoadTranslation(ID_MSG_CONFIRM_DELETE_IDOCUMENT)':'@G::LoadTranslation(ID_MSG_CONFIRM_DELETE_DYNAFORM)';
|
||||
|
||||
|
||||
new leimnud.module.app.confirm().make({
|
||||
label:labelToshow,
|
||||
action:function()
|
||||
@@ -134,7 +156,7 @@
|
||||
}.extend(this)
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function getStyle(oElm, strCssRule){
|
||||
var strValue = "";
|
||||
if(document.defaultView && document.defaultView.getComputedStyle){
|
||||
@@ -151,4 +173,5 @@
|
||||
]]></js>
|
||||
|
||||
<SEARCH_FILTER_FORM type="private"/>
|
||||
</dynaForm>
|
||||
</dynaForm>
|
||||
|
||||
|
||||
@@ -57,11 +57,13 @@
|
||||
</TAS_SELFSERVICE_TIME_UNIT>
|
||||
|
||||
<TAS_SELFSERVICE_TRIGGER_UID type="dropdown" required="1">
|
||||
<![CDATA[
|
||||
SELECT TGR.TRI_UID, CON.CON_VALUE
|
||||
FROM TRIGGERS AS TGR, CONTENT AS CON
|
||||
WHERE TGR.PRO_UID = '@#PRO_UID' AND
|
||||
TGR.TRI_UID = CON.CON_ID AND CON.CON_CATEGORY = 'TRI_TITLE' AND CON.CON_LANG = '@#LANG'
|
||||
ORDER BY CON.CON_VALUE ASC
|
||||
]]>
|
||||
|
||||
<en>
|
||||
Trigger to execute
|
||||
@@ -296,3 +298,4 @@ var insertFormVar = function(sFieldName, sValue) {
|
||||
]]></JS>
|
||||
|
||||
</dynaForm>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user