From d3711593bd0903e7c3dbcaef34ee0cab55d70a64 Mon Sep 17 00:00:00 2001 From: Erik Amaru Ortiz Date: Wed, 19 Jan 2011 14:08:35 +0000 Subject: [PATCH] BUG 5857: Solved --- .../methods/dynaforms/dynaforms_Save.php | 122 +++++++++--------- 1 file changed, 62 insertions(+), 60 deletions(-) diff --git a/workflow/engine/methods/dynaforms/dynaforms_Save.php b/workflow/engine/methods/dynaforms/dynaforms_Save.php index 52906f312..47608f5b0 100644 --- a/workflow/engine/methods/dynaforms/dynaforms_Save.php +++ b/workflow/engine/methods/dynaforms/dynaforms_Save.php @@ -30,81 +30,83 @@ if (($RBAC_Response=$RBAC->userCanAccess("PM_FACTORY"))!=1) return $RBAC_Respons $oJSON = new Services_JSON(); - if(isset($_POST['function'])) - $sfunction =$_POST['function']; - else - $sfunction =$_POST['functions']; + if( isset($_POST['function']) ) + $sfunction = $_POST['function']; + else if( isset($_POST['functions']) ) + $sfunction = $_POST['functions']; - if($sfunction=='lookforNameDynaform'){ - $snameDyanform=urldecode($_POST['NAMEDYNAFORM']); - $sPRO_UID=urldecode($_POST['proUid']); + if( isset($sfunction) && $sfunction == 'lookforNameDynaform' ) { + + $snameDyanform = urldecode($_POST['NAMEDYNAFORM']); + $sPRO_UID = urldecode($_POST['proUid']); $oCriteria = new Criteria('workflow'); $oCriteria->addSelectColumn ( DynaformPeer::DYN_UID ); $oCriteria->add(DynaformPeer::PRO_UID, $sPRO_UID); $oDataset = DynaformPeer::doSelectRS($oCriteria); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $flag=true; + $flag = true; + while ($oDataset->next() && $flag) { $aRow = $oDataset->getRow(); $oCriteria1 = new Criteria('workflow'); - $oCriteria1->addSelectColumn('COUNT(*) AS DYNAFORMS'); - $oCriteria1->add(ContentPeer::CON_CATEGORY, 'DYN_TITLE'); - $oCriteria1->add(ContentPeer::CON_ID, $aRow['DYN_UID']); - $oCriteria1->add(ContentPeer::CON_VALUE, $snameDyanform); - $oCriteria1->add(ContentPeer::CON_LANG, SYS_LANG); - $oDataset1 = ContentPeer::doSelectRS($oCriteria1); - $oDataset1->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $oDataset1->next(); - $aRow1 = $oDataset1->getRow(); - - if($aRow1['DYNAFORMS'])$flag=false; - + $oCriteria1->addSelectColumn('COUNT(*) AS DYNAFORMS'); + $oCriteria1->add(ContentPeer::CON_CATEGORY, 'DYN_TITLE'); + $oCriteria1->add(ContentPeer::CON_ID, $aRow['DYN_UID']); + $oCriteria1->add(ContentPeer::CON_VALUE, $snameDyanform); + $oCriteria1->add(ContentPeer::CON_LANG, SYS_LANG); + $oDataset1 = ContentPeer::doSelectRS($oCriteria1); + $oDataset1->setFetchmode(ResultSet::FETCHMODE_ASSOC); + $oDataset1->next(); + $aRow1 = $oDataset1->getRow(); + if( $aRow1['DYNAFORMS'] ) + $flag = false; } print $flag; } else { - $dynaform = new dynaform(); + $dynaform = new dynaform(); - if(isset($_POST['form'])) - { - $aData = $_POST['form']; //For old process map form - if ($aData['DYN_UID']==='') unset($aData['DYN_UID']); - } - else - { - $aData = $_POST; //For Extjs (Since we are not using form in ExtJS) - if(isset($aData['FIELDS'])) - { - $test = '{"1":{"TESTID":"1223","PRO_VARIABLE":"saaa"},"2":{"TESTID":"420","PRO_VARIABLE":"sas"}}'; - //$aData['FIELDS'] = (array)$oJSON->decode($test); - $oData = json_decode($_POST['FIELDS']); - //$oData1 = $oJSON->decode($test); - $aData['FIELDS'] = ''; - for($i=0;$idecode($test); + $oData = json_decode($_POST['FIELDS']); + //$oData1 = $oJSON->decode($test); + $aData['FIELDS'] = ''; + for($i=0;$iSave( $aData ); - } - else - { - if (!isset($aData['ADD_TABLE'])||$aData['ADD_TABLE']==""){ - $aFields=$dynaform->create( $aData ); - } else { - // $aFields=$dynaform->createFromPMTable( $aData, $aData['ADD_TABLE']); - } - $aData['DYN_UID']=$dynaform->getDynUid(); - $dynaform->update( $aData ); - } - echo $dynaform->getDynUid(); - } -?> \ No newline at end of file + 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']); + } + $aData['DYN_UID']=$dynaform->getDynUid(); + $dynaform->update( $aData ); + } + echo $dynaform->getDynUid(); + } +?>