setAppUid($aData['APP_UID']); $this->setDelIndex($aData['DEL_INDEX']); $this->setProUid($aData['PRO_UID']); $this->setTasUid($aData['TAS_UID']); $this->setDynUid($aData['CURRENT_DYNAFORM']); $this->setUsrUid($aData['USER_UID']); $this->setAppStatus($aData['APP_STATUS']); $this->setHistoryDate($aData['APP_UPDATE_DATE']); $this->setHistoryData($aData['APP_DATA']); if ($this->validate() ) { $res = $this->save(); } else { // Something went wrong. We can now get the validationFailures and handle them. $msg = ''; $validationFailuresArray = $this->getValidationFailures(); foreach($validationFailuresArray as $objValidationFailure) { $msg .= $objValidationFailure->getMessage() . "
"; } krumo($msg); //return array ( 'codError' => -100, 'rowsAffected' => 0, 'message' => $msg ); } } function getDynaformHistory($PRO_UID,$TAS_UID,$APP_UID,$DYN_UID=""){ G::LoadClass('case'); $oCase = new Cases(); $oCase->verifyTable(); $aObjectPermissions = $oCase->getAllObjects($PRO_UID, $APP_UID, $TAS_UID, $_SESSION['USER_LOGGED']); if (!is_array($aObjectPermissions)) { $aObjectPermissions = array('DYNAFORMS' => array(-1), 'INPUT_DOCUMENTS' => array(-1), 'OUTPUT_DOCUMENTS' => array(-1)); } if (!isset($aObjectPermissions['DYNAFORMS'])) { $aObjectPermissions['DYNAFORMS'] = array(-1); } else { if (!is_array($aObjectPermissions['DYNAFORMS'])) { $aObjectPermissions['DYNAFORMS'] = array(-1); } } if (!isset($aObjectPermissions['INPUT_DOCUMENTS'])) { $aObjectPermissions['INPUT_DOCUMENTS'] = array(-1); } else { if (!is_array($aObjectPermissions['INPUT_DOCUMENTS'])) { $aObjectPermissions['INPUT_DOCUMENTS'] = array(-1); } } if (!isset($aObjectPermissions['OUTPUT_DOCUMENTS'])) { $aObjectPermissions['OUTPUT_DOCUMENTS'] = array(-1); } else { if (!is_array($aObjectPermissions['OUTPUT_DOCUMENTS'])) { $aObjectPermissions['OUTPUT_DOCUMENTS'] = array(-1); } } $c = new Criteria('workflow'); $c->addSelectColumn(AppHistoryPeer::APP_UID); $c->addSelectColumn(AppHistoryPeer::DEL_INDEX); $c->addSelectColumn(AppHistoryPeer::PRO_UID); $c->addSelectColumn(AppHistoryPeer::TAS_UID); $c->addSelectColumn(AppHistoryPeer::DYN_UID); $c->addSelectColumn(AppHistoryPeer::USR_UID); $c->addSelectColumn(AppHistoryPeer::APP_STATUS); $c->addSelectColumn(AppHistoryPeer::HISTORY_DATE); $c->addSelectColumn(AppHistoryPeer::HISTORY_DATA); $c->addSelectColumn(UsersPeer::USR_FIRSTNAME); $c->addSelectColumn(UsersPeer::USR_LASTNAME); $c->addAsColumn('USR_NAME', "CONCAT(USR_LASTNAME, ' ', USR_FIRSTNAME)"); $c->addJoin(AppHistoryPeer::USR_UID, UsersPeer::USR_UID, Criteria::LEFT_JOIN); //WHERE $c->add(AppHistoryPeer::DYN_UID, $aObjectPermissions['DYNAFORMS'], Criteria::IN); $c->add(AppHistoryPeer::PRO_UID, $PRO_UID); $c->add(AppHistoryPeer::TAS_UID, $TAS_UID); $c->add(AppHistoryPeer::APP_UID, $APP_UID); if((isset($DYN_UID))&&($DYN_UID!="")){ $c->add(AppHistoryPeer::DYN_UID, $DYN_UID); } //ORDER BY $c->clearOrderByColumns(); $c->addDescendingOrderByColumn(AppHistoryPeer::HISTORY_DATE); //Execute $oDataset = AppHistoryPeer::doSelectRS($c); $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); $oDataset->next(); $aDynHistory = array(); $aDynHistory[] = array( 'DYN_TITLE' => 'char' ); while ($aRow = $oDataset->getRow()) { $o = new Dynaform(); $o->setDynUid($aRow['DYN_UID']); $aRow['DYN_TITLE'] = $o->getDynTitle(); $changedValues=unserialize($aRow['HISTORY_DATA']); $html=""; $sw_add=false; foreach($changedValues as $key =>$value){ if(($value!=NULL)&&(!is_array($value))){ $sw_add=true; $html.=""; $html.=""; $html.=""; $html.=""; } if(is_array($value)){ $html.=""; $html.=""; $html.=""; $html.=""; $html.=""; } } $html.="
$key: $value
$key (grid): "; $html.=""; foreach($value as $key1 =>$value1){ $html.=""; $html.=""; $html.=""; $html.=""; } $html.="
$key1"; if(is_array($value1)){ $sw_add=true; $html.=""; foreach($value1 as $key2 =>$value2){ $html.=""; $html.=""; $html.=""; $html.=""; } $html.="
$key2$value2
"; } $html.="
"; $html.="
"; $aRow['FIELDS'] = $html; if($sw_add){ $aDynHistory[] = $aRow; } $oDataset->next(); } global $_DBArray; $_DBArray['DynaformsHistory'] = $aDynHistory; $_SESSION['_DBArray'] = $_DBArray; G::LoadClass('ArrayPeer'); $oCriteria = new Criteria('dbarray'); $oCriteria->setDBArrayTable('DynaformsHistory'); $oCriteria->addDescendingOrderByColumn(AppHistoryPeer::HISTORY_DATE); return $oCriteria; } } // AppHistory