Merge pull request #170 from hector-cortez/BUG-8369
BUG 8369 Adjustment for standardization of code SOLVED
This commit is contained in:
@@ -1,11 +1,11 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* AdditionalTables.php
|
* AdditionalTables.php
|
||||||
* @package workflow.engine.classes.model
|
* @package workflow.engine.classes.model
|
||||||
*/
|
*/
|
||||||
require_once 'classes/model/om/BaseAdditionalTables.php';
|
require_once 'classes/model/om/BaseAdditionalTables.php';
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Skeleton subclass for representing a row from the 'ADDITIONAL_TABLES' table.
|
* Skeleton subclass for representing a row from the 'ADDITIONAL_TABLES' table.
|
||||||
*
|
*
|
||||||
@@ -18,7 +18,8 @@ require_once 'classes/model/om/BaseAdditionalTables.php';
|
|||||||
*
|
*
|
||||||
* @package workflow.engine.classes.model
|
* @package workflow.engine.classes.model
|
||||||
*/
|
*/
|
||||||
class AdditionalTables extends BaseAdditionalTables {
|
class AdditionalTables extends BaseAdditionalTables
|
||||||
|
{
|
||||||
|
|
||||||
public $fields = array();
|
public $fields = array();
|
||||||
public $primaryKeys = array();
|
public $primaryKeys = array();
|
||||||
@@ -88,8 +89,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
if ($field['FLD_KEY'] == '1') {
|
if ($field['FLD_KEY'] == '1') {
|
||||||
if ($type == 'complete') {
|
if ($type == 'complete') {
|
||||||
$this->primaryKeys[] = $field;
|
$this->primaryKeys[] = $field;
|
||||||
}
|
} else {
|
||||||
else { // just field names
|
// just field names
|
||||||
$this->primaryKeys[] = $field['FLD_NAME'];
|
$this->primaryKeys[] = $field['FLD_NAME'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -97,7 +98,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
return $this->primaryKeys;
|
return $this->primaryKeys;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function loadByName($name) {
|
public function loadByName($name)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
$oCriteria = new Criteria('workflow');
|
$oCriteria = new Criteria('workflow');
|
||||||
$oCriteria->addSelectColumn(AdditionalTablesPeer::ADD_TAB_UID);
|
$oCriteria->addSelectColumn(AdditionalTablesPeer::ADD_TAB_UID);
|
||||||
@@ -126,8 +128,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oDataset->next();
|
$oDataset->next();
|
||||||
|
|
||||||
return $oDataset->getRow();
|
return $oDataset->getRow();
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -135,7 +136,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
/**
|
/**
|
||||||
* Create & Update function
|
* Create & Update function
|
||||||
*/
|
*/
|
||||||
function create($aData, $aFields = array())
|
public function create($aData, $aFields=array())
|
||||||
{
|
{
|
||||||
if (!isset($aData['ADD_TAB_UID']) || (isset($aData['ADD_TAB_UID']) && $aData['ADD_TAB_UID'] == '')) {
|
if (!isset($aData['ADD_TAB_UID']) || (isset($aData['ADD_TAB_UID']) && $aData['ADD_TAB_UID'] == '')) {
|
||||||
$aData['ADD_TAB_UID'] = G::generateUniqueID();
|
$aData['ADD_TAB_UID'] = G::generateUniqueID();
|
||||||
@@ -170,14 +171,14 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
}
|
}
|
||||||
throw(new Exception('The registry cannot be created!<br />' . $sMessage));
|
throw(new Exception('The registry cannot be created!<br />' . $sMessage));
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
$oConnection->rollback();
|
$oConnection->rollback();
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function update($aData, $aFields = array()) {
|
public function update($aData, $aFields=array())
|
||||||
|
{
|
||||||
$oConnection = Propel::getConnection(AdditionalTablesPeer::DATABASE_NAME);
|
$oConnection = Propel::getConnection(AdditionalTablesPeer::DATABASE_NAME);
|
||||||
try {
|
try {
|
||||||
$oAdditionalTables = AdditionalTablesPeer::retrieveByPK($aData['ADD_TAB_UID']);
|
$oAdditionalTables = AdditionalTablesPeer::retrieveByPK($aData['ADD_TAB_UID']);
|
||||||
@@ -197,8 +198,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
'APP_UID' => '',
|
'APP_UID' => '',
|
||||||
'SHD_DATE' => date('Y-m-d H:i:s')));
|
'SHD_DATE' => date('Y-m-d H:i:s')));
|
||||||
return $iResult; */
|
return $iResult; */
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$sMessage = '';
|
$sMessage = '';
|
||||||
$aValidationFailures = $oAdditionalTables->getValidationFailures();
|
$aValidationFailures = $oAdditionalTables->getValidationFailures();
|
||||||
foreach ($aValidationFailures as $oValidationFailure) {
|
foreach ($aValidationFailures as $oValidationFailure) {
|
||||||
@@ -206,18 +206,17 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
}
|
}
|
||||||
throw(new Exception('The registry cannot be updated!<br />' . $sMessage));
|
throw(new Exception('The registry cannot be updated!<br />' . $sMessage));
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
throw(new Exception('This row doesn\'t exist!'));
|
throw(new Exception('This row doesn\'t exist!'));
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
$oConnection->rollback();
|
$oConnection->rollback();
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function remove($sUID) {
|
public function remove($sUID)
|
||||||
|
{
|
||||||
$oConnection = Propel::getConnection(AdditionalTablesPeer::DATABASE_NAME);
|
$oConnection = Propel::getConnection(AdditionalTablesPeer::DATABASE_NAME);
|
||||||
try {
|
try {
|
||||||
$oAdditionalTables = AdditionalTablesPeer::retrieveByPK($sUID);
|
$oAdditionalTables = AdditionalTablesPeer::retrieveByPK($sUID);
|
||||||
@@ -228,18 +227,16 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oConnection->commit();
|
$oConnection->commit();
|
||||||
|
|
||||||
return $iResult;
|
return $iResult;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
throw(new Exception('This row doesn\'t exist!'));
|
throw(new Exception('This row doesn\'t exist!'));
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
$oConnection->rollback();
|
$oConnection->rollback();
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteAll($id)
|
public function deleteAll($id)
|
||||||
{
|
{
|
||||||
//deleting pm table
|
//deleting pm table
|
||||||
$additionalTable = AdditionalTables::load($id);
|
$additionalTable = AdditionalTables::load($id);
|
||||||
@@ -258,7 +255,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$pmTable->remove();
|
$pmTable->remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
function getPHPName($sName) {
|
public function getPHPName($sName)
|
||||||
|
{
|
||||||
$sName = trim($sName);
|
$sName = trim($sName);
|
||||||
$aAux = explode('_', $sName);
|
$aAux = explode('_', $sName);
|
||||||
foreach ($aAux as $iKey => $sPart) {
|
foreach ($aAux as $iKey => $sPart) {
|
||||||
@@ -267,18 +265,22 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
return implode('', $aAux);
|
return implode('', $aAux);
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteMultiple($arrUID){
|
public function deleteMultiple($arrUID)
|
||||||
|
{
|
||||||
$arrUIDs = explode(",", $arrUID);
|
$arrUIDs = explode(",", $arrUID);
|
||||||
foreach ($arrUIDs as $UID) {
|
foreach ($arrUIDs as $UID) {
|
||||||
$this->deleteAll($UID);
|
$this->deleteAll($UID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDataCriteria($sUID) {
|
public function getDataCriteria($sUID)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
$aData = $this->load($sUID, true);
|
$aData = $this->load($sUID, true);
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
|
|
||||||
if (file_exists($sPath . $sClassName . '.php')) {
|
if (file_exists($sPath . $sClassName . '.php')) {
|
||||||
require_once $sPath . $sClassName . '.php';
|
require_once $sPath . $sClassName . '.php';
|
||||||
@@ -301,23 +303,24 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
case 'TEXT':
|
case 'TEXT':
|
||||||
case 'DATE':
|
case 'DATE':
|
||||||
// if($aField['FLD_NULL']!=1)
|
// if($aField['FLD_NULL']!=1)
|
||||||
// eval('$oCriteria->add(' . $sClassPeerName . '::' . $aField['FLD_NAME'] . ', \'(<28>_<EFBFBD>_<EFBFBD>)\', Criteria::NOT_EQUAL);');
|
// eval('$oCriteria->add(' . $sClassPeerName . '::' . $aField['FLD_NAME']
|
||||||
|
//. ', \'(<28>_<EFBFBD>_<EFBFBD>)\', Criteria::NOT_EQUAL);');
|
||||||
break;
|
break;
|
||||||
case 'INT';
|
case 'INT';
|
||||||
case 'FLOAT':
|
case 'FLOAT':
|
||||||
eval('$oCriteria->add(' . $sClassPeerName . '::' . $aField['FLD_NAME'] . ', -99999999999, Criteria::NOT_EQUAL);');
|
eval('$oCriteria->add(' . $sClassPeerName . '::' . $aField['FLD_NAME']
|
||||||
|
.', -99999999999, Criteria::NOT_EQUAL);');
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
//eval('$oCriteria->addAscendingOrderByColumn(' . $sClassPeerName . '::PM_UNIQUE_ID);');
|
//eval('$oCriteria->addAscendingOrderByColumn(' . $sClassPeerName . '::PM_UNIQUE_ID);');
|
||||||
//echo $oCriteria->toString();
|
//echo $oCriteria->toString();
|
||||||
return $oCriteria;
|
return $oCriteria;
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getAllData($sUID, $start=NULL, $limit=NULL, $keyOrderUppercase = true)
|
public function getAllData($sUID, $start=null, $limit=null, $keyOrderUppercase=true)
|
||||||
{
|
{
|
||||||
$addTab = new AdditionalTables();
|
$addTab = new AdditionalTables();
|
||||||
$aData = $addTab->load($sUID, true);
|
$aData = $addTab->load($sUID, true);
|
||||||
@@ -326,7 +329,9 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
}
|
}
|
||||||
$aData['DBS_UID'] = $aData['DBS_UID'] ? $aData['DBS_UID'] : 'workflow';
|
$aData['DBS_UID'] = $aData['DBS_UID'] ? $aData['DBS_UID'] : 'workflow';
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
|
|
||||||
if (file_exists($sPath . $sClassName . '.php')) {
|
if (file_exists($sPath . $sClassName . '.php')) {
|
||||||
require_once $sPath . $sClassName . '.php';
|
require_once $sPath . $sClassName . '.php';
|
||||||
@@ -369,28 +374,33 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
return array('rows' => $rows, 'count' => $count);
|
return array('rows' => $rows, 'count' => $count);
|
||||||
}
|
}
|
||||||
|
|
||||||
function checkClassNotExist($sUID) {
|
public function checkClassNotExist($sUID)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
$aData = $this->load($sUID, true);
|
$aData = $this->load($sUID, true);
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
|
|
||||||
if (file_exists($sPath . $sClassName . '.php')) {
|
if (file_exists($sPath . $sClassName . '.php')) {
|
||||||
return $sClassName;
|
return $sClassName;
|
||||||
} else {
|
} else {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (Exception $oError) {
|
} catch (Exception $oError) {
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function saveDataInTable($sUID, $aFields) {
|
public function saveDataInTable($sUID, $aFields)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
$aData = $this->load($sUID, true);
|
$aData = $this->load($sUID, true);
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
// $oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
|
// $oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
|
||||||
$oConnection = Propel::getConnection($aData['DBS_UID']);
|
$oConnection = Propel::getConnection($aData['DBS_UID']);
|
||||||
$stmt = $oConnection->createStatement();
|
$stmt = $oConnection->createStatement();
|
||||||
@@ -406,24 +416,27 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$sKeys = substr($sKeys, 0, -1);
|
$sKeys = substr($sKeys, 0, -1);
|
||||||
$oClass = new $sClassName;
|
$oClass = new $sClassName;
|
||||||
foreach ($aFields as $sKey => $sValue) {
|
foreach ($aFields as $sKey => $sValue) {
|
||||||
if(!preg_match("/\(?\)/", $sKey))
|
if (!preg_match("/\(?\)/", $sKey)) {
|
||||||
eval('$oClass->set' . $this->getPHPName($sKey) . '($aFields["' . $sKey . '"]);');
|
eval('$oClass->set' . $this->getPHPName($sKey) . '($aFields["' . $sKey . '"]);');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if ($oClass->validate()) {
|
if ($oClass->validate()) {
|
||||||
$iResult = $oClass->save();
|
$iResult = $oClass->save();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getDataTable($sUID, $aKeys) {
|
public function getDataTable($sUID, $aKeys)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
$aData = $this->load($sUID, true);
|
$aData = $this->load($sUID, true);
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
require_once $sPath . $sClassName . '.php';
|
require_once $sPath . $sClassName . '.php';
|
||||||
$sKeys = '';
|
$sKeys = '';
|
||||||
foreach ($aKeys as $sName => $vValue) {
|
foreach ($aKeys as $sName => $vValue) {
|
||||||
@@ -435,26 +448,27 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
//eval('$oClass = ' . $sClassName . 'Peer::retrieveByPK($sPMUID);');
|
//eval('$oClass = ' . $sClassName . 'Peer::retrieveByPK($sPMUID);');
|
||||||
if (!is_null($oClass)) {
|
if (!is_null($oClass)) {
|
||||||
return $oClass->toArray(BasePeer::TYPE_FIELDNAME);
|
return $oClass->toArray(BasePeer::TYPE_FIELDNAME);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateDataInTable($sUID, $aFields) {
|
public function updateDataInTable($sUID, $aFields)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
//$sPMUID = $aFields['PM_UNIQUE_ID'];
|
//$sPMUID = $aFields['PM_UNIQUE_ID'];
|
||||||
$aData = $this->load($sUID, true);
|
$aData = $this->load($sUID, true);
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
$oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
|
$oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
|
||||||
require_once $sPath . $sClassName . '.php';
|
require_once $sPath . $sClassName . '.php';
|
||||||
$sKeys = '';
|
$sKeys = '';
|
||||||
foreach ($aData['FIELDS'] as $aField) {//$sName => $vValue
|
foreach ($aData['FIELDS'] as $aField) {
|
||||||
if ($aField['FLD_KEY'] == 1) {
|
if ($aField['FLD_KEY'] == 1) {
|
||||||
$vValue = $aFields[$aField['FLD_NAME']];
|
$vValue = $aFields[$aField['FLD_NAME']];
|
||||||
eval('$' . $aField['FLD_NAME'] . ' = $vValue;');
|
eval('$' . $aField['FLD_NAME'] . ' = $vValue;');
|
||||||
@@ -472,32 +486,32 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oConnection->commit();
|
$oConnection->commit();
|
||||||
return $iResult;
|
return $iResult;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$sMessage = '';
|
$sMessage = '';
|
||||||
if ($oClass) {
|
if ($oClass) {
|
||||||
$aValidationFailures = $oClass->getValidationFailures();
|
$aValidationFailures = $oClass->getValidationFailures();
|
||||||
foreach ($aValidationFailures as $oValidationFailure) {
|
foreach ($aValidationFailures as $oValidationFailure) {
|
||||||
$sMessage .= $oValidationFailure->getMessage() . '<br />';
|
$sMessage .= $oValidationFailure->getMessage() . '<br />';
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$sMessage = 'Error, row cannot updated';
|
$sMessage = 'Error, row cannot updated';
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
throw(new Exception('The registry cannot be updated!<br />' . $sMessage));
|
throw(new Exception('The registry cannot be updated!<br />' . $sMessage));
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function deleteDataInTable($sUID, $aKeys) {
|
public function deleteDataInTable($sUID, $aKeys)
|
||||||
|
{
|
||||||
try {
|
try {
|
||||||
$aData = $this->load($sUID, true);
|
$aData = $this->load($sUID, true);
|
||||||
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
$sPath = PATH_DB . SYS_SYS . PATH_SEP . 'classes' . PATH_SEP;
|
||||||
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != '' ? $aData['ADD_TAB_CLASS_NAME'] : $this->getPHPName($aData['ADD_TAB_NAME']));
|
$sClassName = ($aData['ADD_TAB_CLASS_NAME'] != ''
|
||||||
|
? $aData['ADD_TAB_CLASS_NAME']
|
||||||
|
: $this->getPHPName($aData['ADD_TAB_NAME']));
|
||||||
$oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
|
$oConnection = Propel::getConnection(FieldsPeer::DATABASE_NAME);
|
||||||
require_once $sPath . $sClassName . '.php';
|
require_once $sPath . $sClassName . '.php';
|
||||||
$sKeys = '';
|
$sKeys = '';
|
||||||
@@ -515,8 +529,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oConnection->commit();
|
$oConnection->commit();
|
||||||
return $iResult;
|
return $iResult;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$sMessage = '';
|
$sMessage = '';
|
||||||
$aValidationFailures = $oConnection-- > getValidationFailures();
|
$aValidationFailures = $oConnection-- > getValidationFailures();
|
||||||
foreach ($aValidationFailures as $oValidationFailure) {
|
foreach ($aValidationFailures as $oValidationFailure) {
|
||||||
@@ -524,13 +537,11 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
}
|
}
|
||||||
throw(new Exception('The registry cannot be updated!<br />' . $sMessage));
|
throw(new Exception('The registry cannot be updated!<br />' . $sMessage));
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Populate the report table with all case data
|
* Populate the report table with all case data
|
||||||
* @param string $sType
|
* @param string $sType
|
||||||
@@ -546,7 +557,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$this->classPeerName = $this->className . 'Peer';
|
$this->classPeerName = $this->className . 'Peer';
|
||||||
|
|
||||||
if (!file_exists(PATH_WORKSPACE . 'classes/' . $this->className . '.php')) {
|
if (!file_exists(PATH_WORKSPACE . 'classes/' . $this->className . '.php')) {
|
||||||
throw new Exception("ERROR: ".PATH_WORKSPACE . 'classes/' . $this->className . '.php'." class file doesn't exit!");
|
throw new Exception( "ERROR: " . PATH_WORKSPACE . 'classes/' . $this->className . '.php'
|
||||||
|
. " class file doesn't exit!");
|
||||||
}
|
}
|
||||||
|
|
||||||
require_once PATH_WORKSPACE . 'classes/' . $this->className . '.php';
|
require_once PATH_WORKSPACE . 'classes/' . $this->className . '.php';
|
||||||
@@ -571,16 +583,17 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
// quick fix
|
// quick fix
|
||||||
// map all empty values as NULL for Database
|
// map all empty values as NULL for Database
|
||||||
foreach ($caseData as $dKey => $dValue) {
|
foreach ($caseData as $dKey => $dValue) {
|
||||||
if (!is_array($dValue)) { // normal fields
|
if (!is_array($dValue)) {
|
||||||
|
// normal fields
|
||||||
if (trim($dValue) === '') {
|
if (trim($dValue) === '') {
|
||||||
$caseData[$dKey] = NULL;
|
$caseData[$dKey] = null;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else { // grids
|
// grids
|
||||||
foreach ($caseData[$dKey] as $dIndex => $dRow) {
|
foreach ($caseData[$dKey] as $dIndex => $dRow) {
|
||||||
foreach ($dRow as $k => $v) {
|
foreach ($dRow as $k => $v) {
|
||||||
if (trim($v) === '') {
|
if (trim($v) === '') {
|
||||||
$caseData[$dKey][$dIndex][$k] = NULL;
|
$caseData[$dKey][$dIndex][$k] = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -628,7 +641,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$dataset = AdditionalTablesPeer::doSelectRS($criteria);
|
$dataset = AdditionalTablesPeer::doSelectRS($criteria);
|
||||||
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||||
|
|
||||||
// accomplish all related report tables for this process that contain case data for the target ($appUid) application
|
// accomplish all related report tables for this process that contain case data
|
||||||
|
// for the target ($appUid) application
|
||||||
while ($dataset->next()) {
|
while ($dataset->next()) {
|
||||||
$row = $dataset->getRow();
|
$row = $dataset->getRow();
|
||||||
$className = $row['ADD_TAB_CLASS_NAME'];
|
$className = $row['ADD_TAB_CLASS_NAME'];
|
||||||
@@ -637,30 +651,32 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// the class exists then load it.
|
// the class exists then load it.
|
||||||
require_once PATH_WORKSPACE . 'classes/' . $className . '.php'; //
|
require_once PATH_WORKSPACE . 'classes/' . $className . '.php';
|
||||||
|
|
||||||
// create a criteria object of report table class
|
// create a criteria object of report table class
|
||||||
$c = new Criteria(pmTable::resolveDbSource($row['DBS_UID']));
|
$c = new Criteria(pmTable::resolveDbSource($row['DBS_UID']));
|
||||||
// select all related records with this $appUid
|
// select all related records with this $appUid
|
||||||
eval('$c->add(' . $className . 'Peer::APP_UID, \'' . $appUid . '\');');
|
eval('$c->add(' . $className . 'Peer::APP_UID, \'' . $appUid . '\');');
|
||||||
eval('$records = ' . $className . 'Peer::doSelect($c);');
|
eval('$records = ' . $className . 'Peer::doSelect($c);');
|
||||||
|
|
||||||
switch ($row['ADD_TAB_TYPE']) { //switching by report table type
|
switch ($row['ADD_TAB_TYPE']) {
|
||||||
|
//switching by report table type
|
||||||
case 'NORMAL':
|
case 'NORMAL':
|
||||||
// parsing empty values to null
|
// parsing empty values to null
|
||||||
foreach ($caseData as $i => $v) {
|
foreach ($caseData as $i => $v) {
|
||||||
$caseData[$i] = $v === '' ? NULL : $v;
|
$caseData[$i] = $v === '' ? null : $v;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_array($records) && count($records) > 0) { // if the record already exists on the report table
|
if (is_array($records) && count($records) > 0) {
|
||||||
foreach ($records as $record) { //update all records
|
// if the record already exists on the report table
|
||||||
|
foreach ($records as $record) {
|
||||||
|
//update all records
|
||||||
$record->fromArray(array_change_key_case($caseData, CASE_UPPER), BasePeer::TYPE_FIELDNAME);
|
$record->fromArray(array_change_key_case($caseData, CASE_UPPER), BasePeer::TYPE_FIELDNAME);
|
||||||
if ($record->validate()) {
|
if ($record->validate()) {
|
||||||
$record->save();
|
$record->save();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else { // there are not any record for this application on the table, then create it
|
// there are not any record for this application on the table, then create it
|
||||||
eval('$obj = new ' . $className . '();');
|
eval('$obj = new ' . $className . '();');
|
||||||
$obj->fromArray(array_change_key_case($caseData, CASE_UPPER), BasePeer::TYPE_FIELDNAME);
|
$obj->fromArray(array_change_key_case($caseData, CASE_UPPER), BasePeer::TYPE_FIELDNAME);
|
||||||
$obj->setAppUid($appUid);
|
$obj->setAppUid($appUid);
|
||||||
@@ -668,7 +684,6 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$obj->save();
|
$obj->save();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'GRID':
|
case 'GRID':
|
||||||
list($gridName, $gridUid) = explode('-', $row['ADD_TAB_GRID']);
|
list($gridName, $gridUid) = explode('-', $row['ADD_TAB_GRID']);
|
||||||
$gridData = isset($caseData[$gridName]) ? $caseData[$gridName] : array();
|
$gridData = isset($caseData[$gridName]) ? $caseData[$gridName] : array();
|
||||||
@@ -712,7 +727,9 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
if ($bWhitType) {
|
if ($bWhitType) {
|
||||||
if (!in_array($aRow['FLD_NAME'], $aImportedVars)) {
|
if (!in_array($aRow['FLD_NAME'], $aImportedVars)) {
|
||||||
$aImportedVars[] = $aRow['FLD_NAME'];
|
$aImportedVars[] = $aRow['FLD_NAME'];
|
||||||
$aVars[] = array('sFieldName' => $aRow['FLD_NAME'], 'sFieldDynName' => $aRow['FLD_DYN_NAME'], 'sType' => $aRow['FLD_TYPE']);
|
$aVars[] = array('sFieldName' => $aRow['FLD_NAME'],
|
||||||
|
'sFieldDynName' => $aRow['FLD_DYN_NAME'],
|
||||||
|
'sType' => $aRow['FLD_TYPE']);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$aVars[] = $aRow['FLD_NAME'];
|
$aVars[] = $aRow['FLD_NAME'];
|
||||||
@@ -720,8 +737,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oDataset->next();
|
$oDataset->next();
|
||||||
}
|
}
|
||||||
return $aVars;
|
return $aVars;
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -739,12 +755,13 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
|
|
||||||
if (isset($process)) {
|
if (isset($process)) {
|
||||||
foreach ($process as $key => $pro_uid) {
|
foreach ($process as $key => $pro_uid) {
|
||||||
if ($key == 'equal')
|
if ($key == 'equal') {
|
||||||
$oCriteria->add(AdditionalTablesPeer::PRO_UID, $pro_uid, Criteria::EQUAL);
|
$oCriteria->add(AdditionalTablesPeer::PRO_UID, $pro_uid, Criteria::EQUAL);
|
||||||
else
|
} else {
|
||||||
$oCriteria->add(AdditionalTablesPeer::PRO_UID, $pro_uid, Criteria::NOT_EQUAL);
|
$oCriteria->add(AdditionalTablesPeer::PRO_UID, $pro_uid, Criteria::NOT_EQUAL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ($filter != '' && is_string($filter)) {
|
if ($filter != '' && is_string($filter)) {
|
||||||
$oCriteria->add(
|
$oCriteria->add(
|
||||||
@@ -793,13 +810,15 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
}
|
}
|
||||||
|
|
||||||
foreach ($addTables as $i => $addTable) {
|
foreach ($addTables as $i => $addTable) {
|
||||||
if (isset($procDetails[$addTable['PRO_UID']]['PRO_TITLE']))
|
if (isset($procDetails[$addTable['PRO_UID']]['PRO_TITLE'])) {
|
||||||
$addTables[$i]['PRO_TITLE'] = $procDetails[$addTable['PRO_UID']]['PRO_TITLE'];
|
$addTables[$i]['PRO_TITLE'] = $procDetails[$addTable['PRO_UID']]['PRO_TITLE'];
|
||||||
|
}
|
||||||
|
|
||||||
if (isset($procDetails[$addTable['PRO_UID']]['PRO_DESCRIPTION']))
|
if (isset($procDetails[$addTable['PRO_UID']]['PRO_DESCRIPTION'])) {
|
||||||
$addTables[$i]['PRO_DESCRIPTION'] = $procDetails[$addTable['PRO_UID']]['PRO_DESCRIPTION'];
|
$addTables[$i]['PRO_DESCRIPTION'] = $procDetails[$addTable['PRO_UID']]['PRO_DESCRIPTION'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// // fltering by proces title
|
// // fltering by proces title
|
||||||
// if(isset($filter['process'])) {
|
// if(isset($filter['process'])) {
|
||||||
@@ -818,8 +837,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
* Don't use this method, it was left only for backward compatibility
|
* Don't use this method, it was left only for backward compatibility
|
||||||
* for some external plugins that still is using it
|
* for some external plugins that still is using it
|
||||||
*/
|
*/
|
||||||
|
public function createPropelClasses($sTableName, $sClassName, $aFields, $sAddTabUid, $connection='workflow')
|
||||||
function createPropelClasses($sTableName, $sClassName, $aFields, $sAddTabUid, $connection='workflow')
|
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
/* $aUID = array('FLD_NAME' => 'PM_UNIQUE_ID',
|
/* $aUID = array('FLD_NAME' => 'PM_UNIQUE_ID',
|
||||||
@@ -864,7 +882,9 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$aData['connection'] = $connection;
|
$aData['connection'] = $connection;
|
||||||
$aData['GUID'] = $sAddTabUid;
|
$aData['GUID'] = $sAddTabUid;
|
||||||
|
|
||||||
$aData['firstColumn'] = isset($aFields[0])? strtoupper($aFields[0]['FLD_NAME']) : ($aFields[1]['FLD_NAME']);
|
$aData['firstColumn'] = isset($aFields[0])
|
||||||
|
? strtoupper($aFields[0]['FLD_NAME'])
|
||||||
|
: ($aFields[1]['FLD_NAME']);
|
||||||
$aData['totalColumns'] = count($aFields);
|
$aData['totalColumns'] = count($aFields);
|
||||||
$aData['useIdGenerator'] = 'false';
|
$aData['useIdGenerator'] = 'false';
|
||||||
$oTP1 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'Table.tpl');
|
$oTP1 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'Table.tpl');
|
||||||
@@ -881,16 +901,24 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$i = 0;
|
$i = 0;
|
||||||
foreach ($aFields as $iKey => $aField) {
|
foreach ($aFields as $iKey => $aField) {
|
||||||
$aField['FLD_NAME'] = strtoupper($aField['FLD_NAME']);
|
$aField['FLD_NAME'] = strtoupper($aField['FLD_NAME']);
|
||||||
if ($aField['FLD_TYPE']=='DATE') $aField['FLD_NULL'] = '';
|
if ($aField['FLD_TYPE'] == 'DATE') {
|
||||||
|
$aField['FLD_NULL'] = '';
|
||||||
|
}
|
||||||
$aColumn = array(
|
$aColumn = array(
|
||||||
'name' => $aField['FLD_NAME'],
|
'name' => $aField['FLD_NAME'],
|
||||||
'phpName' => $this->getPHPName($aField['FLD_NAME']),
|
'phpName' => $this->getPHPName($aField['FLD_NAME']),
|
||||||
'type' => $aTypes[$aField['FLD_TYPE']],
|
'type' => $aTypes[$aField['FLD_TYPE']],
|
||||||
'creoleType' => $aCreoleTypes[$aField['FLD_TYPE']],
|
'creoleType' => $aCreoleTypes[$aField['FLD_TYPE']],
|
||||||
'notNull' => ($aField['FLD_NULL'] == 'on' ? 'true' : 'false'),
|
'notNull' => ($aField['FLD_NULL'] == 'on' ? 'true' : 'false'),
|
||||||
'size' => (($aField['FLD_TYPE'] == 'VARCHAR') || ($aField['FLD_TYPE'] == 'INT') || ($aField['FLD_TYPE'] == 'FLOAT') ? $aField['FLD_SIZE'] : 'null'),
|
'size' => (($aField['FLD_TYPE'] == 'VARCHAR')
|
||||||
|
|| ($aField['FLD_TYPE'] == 'INT')
|
||||||
|
|| ($aField['FLD_TYPE'] == 'FLOAT') ? $aField['FLD_SIZE'] : 'null'),
|
||||||
'var' => strtolower($aField['FLD_NAME']),
|
'var' => strtolower($aField['FLD_NAME']),
|
||||||
'attribute' => (($aField['FLD_TYPE'] == 'VARCHAR') || ($aField['FLD_TYPE'] == 'TEXT') || ($aField['FLD_TYPE'] == 'DATE') ? '$' . strtolower($aField['FLD_NAME']) . " = ''" : '$' . strtolower($aField['FLD_NAME']) . ' = 0'),
|
'attribute' => (($aField['FLD_TYPE'] == 'VARCHAR')
|
||||||
|
|| ($aField['FLD_TYPE'] == 'TEXT')
|
||||||
|
|| ($aField['FLD_TYPE'] == 'DATE')
|
||||||
|
? '$' . strtolower($aField['FLD_NAME']) . " = ''"
|
||||||
|
: '$' . strtolower($aField['FLD_NAME']) . ' = 0'),
|
||||||
'index' => $i,
|
'index' => $i,
|
||||||
);
|
);
|
||||||
if ($aField['FLD_TYPE'] == 'DATE') {
|
if ($aField['FLD_TYPE'] == 'DATE') {
|
||||||
@@ -909,14 +937,16 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
return null;
|
return null;
|
||||||
} elseif (!is_int($this->' . $aColumn['var'] . ')) {
|
} elseif (!is_int($this->' . $aColumn['var'] . ')) {
|
||||||
// a non-timestamp value was set externally, so we convert it
|
// a non-timestamp value was set externally, so we convert it
|
||||||
if (($this->' . $aColumn['var'] . ' == "0000-00-00 00:00:00") || ($this->' . $aColumn['var'] . ' == "0000-00-00") || !$this->' . $aColumn['var'] . ') {
|
if (($this->' . $aColumn['var'] . ' == "0000-00-00 00:00:00")
|
||||||
|
|| ($this->' . $aColumn['var'] . ' == "0000-00-00") || !$this->' . $aColumn['var'] . ') {
|
||||||
$ts = "0";
|
$ts = "0";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$ts = strtotime($this->' . $aColumn['var'] . ');
|
$ts = strtotime($this->' . $aColumn['var'] . ');
|
||||||
}
|
}
|
||||||
if ($ts === -1 || $ts === false) { // in PHP 5.1 return value changes to FALSE
|
if ($ts === -1 || $ts === false) { // in PHP 5.1 return value changes to FALSE
|
||||||
throw new PropelException("Unable to parse value of [' . $aColumn['var'] . '] as date/time value: " . var_export($this->' . $aColumn['var'] . ', true));
|
throw new PropelException("Unable to parse value of [' . $aColumn['var'] . '] as date/time value: "
|
||||||
|
. var_export($this->' . $aColumn['var'] . ', true));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$ts = $this->' . $aColumn['var'] . ';
|
$ts = $this->' . $aColumn['var'] . ';
|
||||||
@@ -929,8 +959,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
return date($format, $ts);
|
return date($format, $ts);
|
||||||
}
|
}
|
||||||
}';
|
}';
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$aColumn['getFunction'] = '/**
|
$aColumn['getFunction'] = '/**
|
||||||
* Get the [' . $aColumn['var'] . '] column value.
|
* Get the [' . $aColumn['var'] . '] column value.
|
||||||
*
|
*
|
||||||
@@ -963,7 +992,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
// else
|
// else
|
||||||
$ts = strtotime($v);
|
$ts = strtotime($v);
|
||||||
if ($ts === -1 || $ts === false) { // in PHP 5.1 return value changes to FALSE
|
if ($ts === -1 || $ts === false) { // in PHP 5.1 return value changes to FALSE
|
||||||
//throw new PropelException("Unable to parse date/time value for [' . $aColumn['var'] . '] from input: " . var_export($v, true));
|
//throw new PropelException("Unable to parse date/time value for [' . $aColumn['var'] . '] from input: "
|
||||||
|
// . var_export($v, true));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$ts = $v;
|
$ts = $v;
|
||||||
@@ -994,8 +1024,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$aColumns[] = $aColumn;
|
$aColumns[] = $aColumn;
|
||||||
if ($aField['FLD_KEY'] == 1 || $aField['FLD_KEY'] === 'on') {
|
if ($aField['FLD_KEY'] == 1 || $aField['FLD_KEY'] === 'on') {
|
||||||
$aPKs[] = $aColumn;
|
$aPKs[] = $aColumn;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$aNotPKs[] = $aColumn;
|
$aNotPKs[] = $aColumn;
|
||||||
}
|
}
|
||||||
if ($aField['FLD_AUTO_INCREMENT'] == 1 || $aField['FLD_AUTO_INCREMENT'] === 'on') {
|
if ($aField['FLD_AUTO_INCREMENT'] == 1 || $aField['FLD_AUTO_INCREMENT'] === 'on') {
|
||||||
@@ -1003,7 +1032,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
}
|
}
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
$oTP3 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'map' . PATH_SEP . 'TableMapBuilder.tpl');
|
$oTP3 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'map'
|
||||||
|
. PATH_SEP . 'TableMapBuilder.tpl');
|
||||||
$oTP3->prepare();
|
$oTP3->prepare();
|
||||||
$oTP3->assignGlobal($aData);
|
$oTP3->assignGlobal($aData);
|
||||||
foreach ($aPKs as $iIndex => $aColumn) {
|
foreach ($aPKs as $iIndex => $aColumn) {
|
||||||
@@ -1021,7 +1051,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oTP3->assign($sKey, $aColumn[$sKey]);
|
$oTP3->assign($sKey, $aColumn[$sKey]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
file_put_contents($sPath . PATH_SEP . 'map' . PATH_SEP . $sClassName . 'MapBuilder.php', $oTP3->getOutputContent());
|
file_put_contents($sPath . PATH_SEP . 'map' . PATH_SEP . $sClassName
|
||||||
|
. 'MapBuilder.php', $oTP3->getOutputContent());
|
||||||
$oTP4 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'om' . PATH_SEP . 'BaseTable.tpl');
|
$oTP4 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'om' . PATH_SEP . 'BaseTable.tpl');
|
||||||
$oTP4->prepare();
|
$oTP4->prepare();
|
||||||
switch (count($aPKs)) {
|
switch (count($aPKs)) {
|
||||||
@@ -1037,8 +1068,10 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$aData['getPrimaryKeyFunction'] = '$pks = array();' . "\n";
|
$aData['getPrimaryKeyFunction'] = '$pks = array();' . "\n";
|
||||||
$aData['setPrimaryKeyFunction'] = '';
|
$aData['setPrimaryKeyFunction'] = '';
|
||||||
foreach ($aPKs as $iIndex => $aColumn) {
|
foreach ($aPKs as $iIndex => $aColumn) {
|
||||||
$aData['getPrimaryKeyFunction'] .= '$pks[' . $iIndex . '] = $this->get' . $aColumn['phpName'] . '();' . "\n";
|
$aData['getPrimaryKeyFunction'] .= '$pks[' . $iIndex . '] = $this->get'
|
||||||
$aData['setPrimaryKeyFunction'] .= '$this->set' . $aColumn['phpName'] . '($keys[' . $iIndex . ']);' . "\n";
|
. $aColumn['phpName'] . '();' . "\n";
|
||||||
|
$aData['setPrimaryKeyFunction'] .= '$this->set' . $aColumn['phpName']
|
||||||
|
. '($keys[' . $iIndex . ']);' . "\n";
|
||||||
}
|
}
|
||||||
$aData['getPrimaryKeyFunction'] .= 'return $pks;' . "\n";
|
$aData['getPrimaryKeyFunction'] .= 'return $pks;' . "\n";
|
||||||
break;
|
break;
|
||||||
@@ -1115,7 +1148,8 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oTP4->assign($sKey, $aColumn[$sKey]);
|
$oTP4->assign($sKey, $aColumn[$sKey]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
file_put_contents($sPath . PATH_SEP . 'om' . PATH_SEP . 'Base' . $sClassName . '.php', $oTP4->getOutputContent());
|
file_put_contents($sPath . PATH_SEP . 'om' . PATH_SEP . 'Base'
|
||||||
|
. $sClassName . '.php', $oTP4->getOutputContent());
|
||||||
$oTP5 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'om' . PATH_SEP . 'BaseTablePeer.tpl');
|
$oTP5 = new TemplatePower(PATH_TPL . 'additionalTables' . PATH_SEP . 'om' . PATH_SEP . 'BaseTablePeer.tpl');
|
||||||
$oTP5->prepare();
|
$oTP5->prepare();
|
||||||
$sKeys = '';
|
$sKeys = '';
|
||||||
@@ -1126,8 +1160,7 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
//$sKeys = '$pm_unique_id';
|
//$sKeys = '$pm_unique_id';
|
||||||
if ($sKeys != '') {
|
if ($sKeys != '') {
|
||||||
$aData['sKeys'] = $sKeys;
|
$aData['sKeys'] = $sKeys;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$aData['sKeys'] = '$DUMMY';
|
$aData['sKeys'] = '$DUMMY';
|
||||||
}
|
}
|
||||||
$oTP5->assignGlobal($aData);
|
$oTP5->assignGlobal($aData);
|
||||||
@@ -1198,10 +1231,12 @@ class AdditionalTables extends BaseAdditionalTables {
|
|||||||
$oTP5->assign($sKey, $aColumn[$sKey]);
|
$oTP5->assign($sKey, $aColumn[$sKey]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
file_put_contents($sPath . PATH_SEP . 'om' . PATH_SEP . 'Base' . $sClassName . 'Peer.php', $oTP5->getOutputContent());
|
file_put_contents($sPath . PATH_SEP . 'om' . PATH_SEP . 'Base'
|
||||||
}
|
. $sClassName . 'Peer.php', $oTP5->getOutputContent());
|
||||||
catch (Exception $oError) {
|
} catch (Exception $oError) {
|
||||||
throw($oError);
|
throw($oError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} // AdditionalTables
|
}
|
||||||
|
// AdditionalTables
|
||||||
|
|
||||||
@@ -1,11 +1,11 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* pmTablesProxy
|
* pmTablesProxy
|
||||||
* @author Erik Amaru Ortiz <erik@colosa.com, aortiz.erik@gmail.com>
|
* @author Erik Amaru Ortiz <erik@colosa.com, aortiz.erik@gmail.com>
|
||||||
* @inherits HttpProxyController
|
* @inherits HttpProxyController
|
||||||
* @access public
|
* @access public
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once 'classes/model/AdditionalTables.php';
|
require_once 'classes/model/AdditionalTables.php';
|
||||||
|
|
||||||
class pmTablesProxy extends HttpProxyController
|
class pmTablesProxy extends HttpProxyController
|
||||||
@@ -62,8 +62,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
'TYPE' => 'CLASSIC'
|
'TYPE' => 'CLASSIC'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$addTables = AdditionalTables::getAll($start, $limit, $filter);
|
$addTables = AdditionalTables::getAll($start, $limit, $filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -75,8 +74,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($rs->next()) {
|
if ($rs->next()) {
|
||||||
$r = $rs->getRow();
|
$r = $rs->getRow();
|
||||||
$addTables['rows'][$i]['NUM_ROWS'] = $r['NUM_ROWS'];
|
$addTables['rows'][$i]['NUM_ROWS'] = $r['NUM_ROWS'];
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$addTables['rows'][$i]['NUM_ROWS'] = 0;
|
$addTables['rows'][$i]['NUM_ROWS'] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -84,8 +82,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if (substr($addTables['rows'][$i]['ADD_TAB_NAME'], 0, 4) == 'PMT_') {
|
if (substr($addTables['rows'][$i]['ADD_TAB_NAME'], 0, 4) == 'PMT_') {
|
||||||
$addTables['rows'][$i]['ADD_TAB_NAME'] = substr($addTables['rows'][$i]['ADD_TAB_NAME'], 4);
|
$addTables['rows'][$i]['ADD_TAB_NAME'] = substr($addTables['rows'][$i]['ADD_TAB_NAME'], 4);
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $e) {
|
||||||
catch (Exception $e) {
|
|
||||||
$addTables['rows'][$i]['NUM_ROWS'] = G::LoadTranslation('ID_TABLE_NOT_FOUND');
|
$addTables['rows'][$i]['NUM_ROWS'] = G::LoadTranslation('ID_TABLE_NOT_FOUND');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -147,9 +144,9 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$this->dynUid = $gridId;
|
$this->dynUid = $gridId;
|
||||||
|
|
||||||
$httpData->textFilter = isset($httpData->textFilter) ? $httpData->textFilter : null;
|
$httpData->textFilter = isset($httpData->textFilter) ? $httpData->textFilter : null;
|
||||||
$dynFields = $this->_getDynafields($aFields['PRO_UID'], 'grid', $httpData->start, $httpData->limit, $httpData->textFilter);
|
$dynFields = $this->_getDynafields($aFields['PRO_UID'], 'grid', $httpData->start,
|
||||||
}
|
$httpData->limit, $httpData->textFilter);
|
||||||
else {
|
} else {
|
||||||
if (isset($_SESSION['_cache_pmtables'])) {
|
if (isset($_SESSION['_cache_pmtables'])) {
|
||||||
unset($_SESSION['_cache_pmtables']);
|
unset($_SESSION['_cache_pmtables']);
|
||||||
}
|
}
|
||||||
@@ -162,11 +159,11 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
}
|
// normal dynaform
|
||||||
else { // normal dynaform
|
|
||||||
$httpData->textFilter = isset($httpData->textFilter) ? $httpData->textFilter : null;
|
$httpData->textFilter = isset($httpData->textFilter) ? $httpData->textFilter : null;
|
||||||
$dynFields = $this->_getDynafields($aFields['PRO_UID'], 'xmlform', $httpData->start, $httpData->limit, $httpData->textFilter);
|
$dynFields = $this->_getDynafields($aFields['PRO_UID'], 'xmlform', $httpData->start,
|
||||||
|
$httpData->limit, $httpData->textFilter);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $dynFields;
|
return $dynFields;
|
||||||
@@ -230,8 +227,10 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
);
|
);
|
||||||
|
|
||||||
// verify if exists.
|
// verify if exists.
|
||||||
if ($data['REP_TAB_UID'] == '' || (isset($httpData->forceUid) && $httpData->forceUid)) { //new report table
|
if ($data['REP_TAB_UID'] == '' || (isset($httpData->forceUid) && $httpData->forceUid)) {
|
||||||
if ($isReportTable && $alterTable) { //setting default columns
|
//new report table
|
||||||
|
if ($isReportTable && $alterTable) {
|
||||||
|
//setting default columns
|
||||||
$defaultColumns = $this->_getReportTableDefaultColumns($data['REP_TAB_TYPE']);
|
$defaultColumns = $this->_getReportTableDefaultColumns($data['REP_TAB_TYPE']);
|
||||||
$columns = array_merge($defaultColumns, $columns);
|
$columns = array_merge($defaultColumns, $columns);
|
||||||
}
|
}
|
||||||
@@ -249,10 +248,13 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
//backward compatility
|
//backward compatility
|
||||||
foreach ($columns as $i => $column) {
|
foreach ($columns as $i => $column) {
|
||||||
switch ($column->field_type) {
|
switch ($column->field_type) {
|
||||||
case 'INT': $columns[$i]->field_type = 'INTEGER'; break;
|
case 'INT': $columns[$i]->field_type = 'INTEGER';
|
||||||
case 'TEXT': $columns[$i]->field_type = 'LONGVARCHAR'; break;
|
break;
|
||||||
|
case 'TEXT': $columns[$i]->field_type = 'LONGVARCHAR';
|
||||||
|
break;
|
||||||
// propel DATETIME equivalent is TIMESTAMP
|
// propel DATETIME equivalent is TIMESTAMP
|
||||||
case 'DATETIME': $columns[$i]->field_type = 'TIMESTAMP'; break;
|
case 'DATETIME': $columns[$i]->field_type = 'TIMESTAMP';
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// VALIDATIONS
|
// VALIDATIONS
|
||||||
@@ -286,10 +288,12 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
'ADD_TAB_TYPE' => $data['REP_TAB_TYPE'],
|
'ADD_TAB_TYPE' => $data['REP_TAB_TYPE'],
|
||||||
'ADD_TAB_GRID' => $data['REP_TAB_GRID']
|
'ADD_TAB_GRID' => $data['REP_TAB_GRID']
|
||||||
);
|
);
|
||||||
if ($data['REP_TAB_UID'] == '' || (isset($httpData->forceUid) && $httpData->forceUid)) { //new report table
|
if ($data['REP_TAB_UID'] == '' || (isset($httpData->forceUid) && $httpData->forceUid)) {
|
||||||
|
//new report table
|
||||||
//create record
|
//create record
|
||||||
$addTabUid = $oAdditionalTables->create($addTabData);
|
$addTabUid = $oAdditionalTables->create($addTabData);
|
||||||
} else { //editing report table
|
} else {
|
||||||
|
//editing report table
|
||||||
//updating record
|
//updating record
|
||||||
$addTabUid = $data['REP_TAB_UID'];
|
$addTabUid = $data['REP_TAB_UID'];
|
||||||
$oAdditionalTables->update($addTabData);
|
$oAdditionalTables->update($addTabData);
|
||||||
@@ -309,7 +313,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
'FLD_NAME' => $column->field_name,
|
'FLD_NAME' => $column->field_name,
|
||||||
'FLD_DESCRIPTION' => $column->field_label,
|
'FLD_DESCRIPTION' => $column->field_label,
|
||||||
'FLD_TYPE' => $column->field_type,
|
'FLD_TYPE' => $column->field_type,
|
||||||
'FLD_SIZE' => $column->field_size=='' ? NULL : $column->field_size,
|
'FLD_SIZE' => $column->field_size == '' ? null : $column->field_size,
|
||||||
'FLD_NULL' => $column->field_null ? 1 : 0,
|
'FLD_NULL' => $column->field_null ? 1 : 0,
|
||||||
'FLD_AUTO_INCREMENT' => $column->field_autoincrement ? 1 : 0,
|
'FLD_AUTO_INCREMENT' => $column->field_autoincrement ? 1 : 0,
|
||||||
'FLD_KEY' => $column->field_key ? 1 : 0,
|
'FLD_KEY' => $column->field_key ? 1 : 0,
|
||||||
@@ -325,18 +329,19 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($isReportTable && $alterTable) {
|
if ($isReportTable && $alterTable) {
|
||||||
// the table was create successfully but we're catching problems while populating table
|
// the table was create successfully but we're catching problems while populating table
|
||||||
try {
|
try {
|
||||||
$oAdditionalTables->populateReportTable($data['REP_TAB_NAME'], $pmTable->getDataSource(), $data['REP_TAB_TYPE'], $data['PRO_UID'], $data['REP_TAB_GRID']);
|
$oAdditionalTables->populateReportTable($data['REP_TAB_NAME'],
|
||||||
}
|
$pmTable->getDataSource(),
|
||||||
catch (Exception $e) {
|
$data['REP_TAB_TYPE'],
|
||||||
|
$data['PRO_UID'],
|
||||||
|
$data['REP_TAB_GRID']);
|
||||||
|
} catch (Exception $e) {
|
||||||
$result->message = $result->msg = $e->getMessage();
|
$result->message = $result->msg = $e->getMessage();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$result->success = true;
|
$result->success = true;
|
||||||
$result->message = $result->msg = $buildResult;
|
$result->message = $result->msg = $buildResult;
|
||||||
|
} catch (Exception $e) {
|
||||||
}
|
|
||||||
catch (Exception $e) {
|
|
||||||
$buildResult = ob_get_contents();
|
$buildResult = ob_get_contents();
|
||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
@@ -345,8 +350,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if (preg_match('/(.*)\s\[(.*):\s(.*)\]\s\[(.*):\s(.*)\]/', $e->getMessage(), $match)) {
|
if (preg_match('/(.*)\s\[(.*):\s(.*)\]\s\[(.*):\s(.*)\]/', $e->getMessage(), $match)) {
|
||||||
$result->message = $result->msg = $match[3];
|
$result->message = $result->msg = $match[3];
|
||||||
$result->type = ucfirst($pmTable->getDbConfig()->adapter);
|
$result->type = ucfirst($pmTable->getDbConfig()->adapter);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$result->message = $result->msg = $e->getMessage();
|
$result->message = $result->msg = $e->getMessage();
|
||||||
$result->type = G::loadTranslation('ID_EXCEPTION');
|
$result->type = G::loadTranslation('ID_EXCEPTION');
|
||||||
}
|
}
|
||||||
@@ -381,8 +385,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$rp = new reportTables();
|
$rp = new reportTables();
|
||||||
$rp->deleteReportTable($row->id);
|
$rp->deleteReportTable($row->id);
|
||||||
$count++;
|
$count++;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$at->deleteAll($row->id);
|
$at->deleteAll($row->id);
|
||||||
$count++;
|
$count++;
|
||||||
}
|
}
|
||||||
@@ -396,8 +399,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($errors == '') {
|
if ($errors == '') {
|
||||||
$result->success = true;
|
$result->success = true;
|
||||||
$result->message = "$count tables removed Successfully.";
|
$result->message = "$count tables removed Successfully.";
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
$result->message = "$count tables removed but with errors.\n$errors";
|
$result->message = "$count tables removed but with errors.\n$errors";
|
||||||
}
|
}
|
||||||
@@ -450,8 +452,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
{
|
{
|
||||||
if ($codification == 'base64') {
|
if ($codification == 'base64') {
|
||||||
$rows = unserialize(base64_decode($httpData->rows));
|
$rows = unserialize(base64_decode($httpData->rows));
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$rows = G::json_decode(stripslashes($httpData->rows));
|
$rows = G::json_decode(stripslashes($httpData->rows));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -488,8 +489,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$method = 'get' . AdditionalTables::getPHPName($primaryKey['FLD_NAME']);
|
$method = 'get' . AdditionalTables::getPHPName($primaryKey['FLD_NAME']);
|
||||||
$primaryKeysValues[] = $obj->$method();
|
$primaryKeysValues[] = $obj->$method();
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$msg = '';
|
$msg = '';
|
||||||
foreach ($obj->getValidationFailures() as $objValidationFailure) {
|
foreach ($obj->getValidationFailures() as $objValidationFailure) {
|
||||||
$msg .= $objValidationFailure->getMessage() . "\n";
|
$msg .= $objValidationFailure->getMessage() . "\n";
|
||||||
@@ -498,8 +498,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
}
|
}
|
||||||
|
|
||||||
$index = G::encrypt(implode('-', $primaryKeysValues), 'pmtable');
|
$index = G::encrypt(implode('-', $primaryKeysValues), 'pmtable');
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$toSave = false;
|
$toSave = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -508,14 +507,12 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$result->message = 'Record saved successfully';
|
$result->message = 'Record saved successfully';
|
||||||
$result->rows = $obj->toArray(BasePeer::TYPE_FIELDNAME);
|
$result->rows = $obj->toArray(BasePeer::TYPE_FIELDNAME);
|
||||||
$result->rows['__index__'] = $index;
|
$result->rows['__index__'] = $index;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
$result->rows = array();
|
$result->rows = array();
|
||||||
$result->message = '$$';
|
$result->message = '$$';
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $e) {
|
||||||
catch (Exception $e) {
|
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
$result->rows = array();
|
$result->rows = array();
|
||||||
$result->message = $e->getMessage();
|
$result->message = $e->getMessage();
|
||||||
@@ -551,14 +548,16 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$row = (array) $row;
|
$row = (array) $row;
|
||||||
$result = $this->_dataUpdate($row, $primaryKeys);
|
$result = $this->_dataUpdate($row, $primaryKeys);
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else { //then is object
|
//then is object
|
||||||
$row = (array) $rows;
|
$row = (array) $rows;
|
||||||
$result = $this->_dataUpdate($row, $primaryKeys);
|
$result = $this->_dataUpdate($row, $primaryKeys);
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->success = $result;
|
$this->success = $result;
|
||||||
$this->message = $result ? G::loadTranslation('ID_UPDATED_SUCCESSFULLY') : G::loadTranslation('ID_UPDATE_FAILED');
|
$this->message = $result
|
||||||
|
? G::loadTranslation('ID_UPDATED_SUCCESSFULLY')
|
||||||
|
: G::loadTranslation('ID_UPDATE_FAILED');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -581,7 +580,9 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
require_once $sPath . $this->className . '.php';
|
require_once $sPath . $this->className . '.php';
|
||||||
|
|
||||||
$this->success = $this->_dataDestroy($httpData->rows);
|
$this->success = $this->_dataDestroy($httpData->rows);
|
||||||
$this->message = $this->success ? G::loadTranslation('ID_DELETED_SUCCESSFULLY') : G::loadTranslation('ID_DELETE_FAILED');
|
$this->message = $this->success
|
||||||
|
? G::loadTranslation('ID_DELETED_SUCCESSFULLY')
|
||||||
|
: G::loadTranslation('ID_DELETE_FAILED');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -590,7 +591,8 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
*/
|
*/
|
||||||
public function importCSV($httpData)
|
public function importCSV($httpData)
|
||||||
{
|
{
|
||||||
if (preg_match('/[\x00-\x08\x0b-\x0c\x0e\x1f]/', file_get_contents($_FILES['form']['tmp_name']['CSV_FILE'])) === 0) {
|
if (preg_match('/[\x00-\x08\x0b-\x0c\x0e\x1f]/',
|
||||||
|
file_get_contents($_FILES['form']['tmp_name']['CSV_FILE'])) === 0) {
|
||||||
$filename = $_FILES['form']['name']['CSV_FILE'];
|
$filename = $_FILES['form']['name']['CSV_FILE'];
|
||||||
if ($oFile = fopen($_FILES['form']['tmp_name']['CSV_FILE'], 'r')) {
|
if ($oFile = fopen($_FILES['form']['tmp_name']['CSV_FILE'], 'r')) {
|
||||||
require_once 'classes/model/AdditionalTables.php';
|
require_once 'classes/model/AdditionalTables.php';
|
||||||
@@ -609,7 +611,9 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($i == 1) {
|
if ($i == 1) {
|
||||||
$j = 0;
|
$j = 0;
|
||||||
foreach ($aAdditionalTables['FIELDS'] as $aField) {
|
foreach ($aAdditionalTables['FIELDS'] as $aField) {
|
||||||
if($aField['FLD_NAME'] === $aAux[$j]) $swHead = true;
|
if ($aField['FLD_NAME'] === $aAux[$j]) {
|
||||||
|
$swHead = true;
|
||||||
|
}
|
||||||
$j++;
|
$j++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -623,11 +627,12 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
if (!$oAdditionalTables->saveDataInTable($_POST['form']['ADD_TAB_UID'], $aData)) {
|
if (!$oAdditionalTables->saveDataInTable($_POST['form']['ADD_TAB_UID'], $aData)) {
|
||||||
$sErrorMessages .= G::LoadTranslation('ID_DUPLICATE_ENTRY_PRIMARY_KEY') . ', ' . G::LoadTranslation('ID_LINE') . ' ' . $i . '. ';
|
$sErrorMessages .= G::LoadTranslation('ID_DUPLICATE_ENTRY_PRIMARY_KEY')
|
||||||
|
. ', ' . G::LoadTranslation('ID_LINE') . ' ' . $i . '. ';
|
||||||
}
|
}
|
||||||
}
|
} catch (Exception $oError) {
|
||||||
catch (Exception $oError) {
|
$sErrorMessages .= G::LoadTranslation('ID_ERROR_INSERT_LINE')
|
||||||
$sErrorMessages .= G::LoadTranslation('ID_ERROR_INSERT_LINE') . ': ' . G::LoadTranslation('ID_LINE') . ' ' . $i . '. ';
|
. ': ' . G::LoadTranslation('ID_LINE') . ' ' . $i . '. ';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$swHead = false;
|
$swHead = false;
|
||||||
@@ -644,12 +649,10 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$this->success = true;
|
$this->success = true;
|
||||||
$this->message = G::loadTranslation('ID_FILE_IMPORTED_SUCCESSFULLY', array($filename));
|
$this->message = G::loadTranslation('ID_FILE_IMPORTED_SUCCESSFULLY', array($filename));
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$sMessage = G::LoadTranslation('ID_UPLOAD_VALID_CSV_FILE');
|
$sMessage = G::LoadTranslation('ID_UPLOAD_VALID_CSV_FILE');
|
||||||
$this->success = false;
|
$this->success = false;
|
||||||
$this->message = $sMessage;
|
$this->message = $sMessage;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -673,12 +676,13 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$sErrorMessages = '';
|
$sErrorMessages = '';
|
||||||
$sDelimiter = $_POST['CSV_DELIMITER'];
|
$sDelimiter = $_POST['CSV_DELIMITER'];
|
||||||
|
|
||||||
$resultData = $oAdditionalTables->getAllData($_POST['ADD_TAB_UID'], NULL, NULL, false);
|
$resultData = $oAdditionalTables->getAllData($_POST['ADD_TAB_UID'], null, null, false);
|
||||||
$rows = $resultData['rows'];
|
$rows = $resultData['rows'];
|
||||||
$count = $resultData['count'];
|
$count = $resultData['count'];
|
||||||
|
|
||||||
$PUBLIC_ROOT_PATH = PATH_DATA . 'sites' . PATH_SEP . SYS_SYS . PATH_SEP . 'public' . PATH_SEP;
|
$PUBLIC_ROOT_PATH = PATH_DATA . 'sites' . PATH_SEP . SYS_SYS . PATH_SEP . 'public' . PATH_SEP;
|
||||||
$filenameOnly = strtolower( $aAdditionalTables['ADD_TAB_NAME'] ."_".date("Y-m-d").'_'.date("Hi").".csv");
|
$filenameOnly = strtolower($aAdditionalTables['ADD_TAB_NAME'] . "_" . date("Y-m-d")
|
||||||
|
. '_' . date("Hi") . ".csv");
|
||||||
$filename = $PUBLIC_ROOT_PATH . $filenameOnly;
|
$filename = $PUBLIC_ROOT_PATH . $filenameOnly;
|
||||||
$fp = fopen($filename, "wb");
|
$fp = fopen($filename, "wb");
|
||||||
|
|
||||||
@@ -687,7 +691,9 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$cnt = count($cols);
|
$cnt = count($cols);
|
||||||
foreach ($cols as $key => $val) {
|
foreach ($cols as $key => $val) {
|
||||||
$SDATA .= $val;
|
$SDATA .= $val;
|
||||||
if(--$cnt > 0 ) $SDATA .= $sDelimiter;
|
if (--$cnt > 0) {
|
||||||
|
$SDATA .= $sDelimiter;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
$SDATA .= "\n";
|
$SDATA .= "\n";
|
||||||
$bytesSaved += fwrite($fp, $SDATA);
|
$bytesSaved += fwrite($fp, $SDATA);
|
||||||
@@ -708,14 +714,12 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$result->filename = $filenameOnly;
|
$result->filename = $filenameOnly;
|
||||||
$result->link = $link;
|
$result->link = $link;
|
||||||
$result->message = "Generated file: $filenameOnly, size: $size";
|
$result->message = "Generated file: $filenameOnly, size: $size";
|
||||||
}
|
} catch (Exception $e) {
|
||||||
catch (Exception $e) {
|
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
$result->message = $e->getMessage();
|
$result->message = $e->getMessage();
|
||||||
}
|
}
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -762,7 +766,6 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$fsData = intval(fread($fp, 9));
|
$fsData = intval(fread($fp, 9));
|
||||||
$METADATA = fread($fp, $fsData);
|
$METADATA = fread($fp, $fsData);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case '@SCHEMA':
|
case '@SCHEMA':
|
||||||
$fsUid = intval(fread($fp, 9));
|
$fsUid = intval(fread($fp, 9));
|
||||||
$uid = fread($fp, $fsUid);
|
$uid = fread($fp, $fsUid);
|
||||||
@@ -777,9 +780,9 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($tableExists !== false) {
|
if ($tableExists !== false) {
|
||||||
$additionalTable->deleteAll($tableExists['ADD_TAB_UID']);
|
$additionalTable->deleteAll($tableExists['ADD_TAB_UID']);
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
if ($tableExists !== false) {
|
||||||
if ($tableExists !== false) {// some table exists with the same name
|
// some table exists with the same name
|
||||||
// renaming...
|
// renaming...
|
||||||
$tNameOld = $contentSchema['ADD_TAB_NAME'];
|
$tNameOld = $contentSchema['ADD_TAB_NAME'];
|
||||||
$newTableName = $contentSchema['ADD_TAB_NAME'] . '_' . date('YmdHis');
|
$newTableName = $contentSchema['ADD_TAB_NAME'] . '_' . date('YmdHis');
|
||||||
@@ -792,7 +795,8 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
}
|
}
|
||||||
|
|
||||||
// validating invalid bds_uid in old tables definition -> mapped to workflow
|
// validating invalid bds_uid in old tables definition -> mapped to workflow
|
||||||
if (!$contentSchema['DBS_UID'] || $contentSchema['DBS_UID'] == '0' || !$contentSchema['DBS_UID']) {
|
if (!$contentSchema['DBS_UID']
|
||||||
|
|| $contentSchema['DBS_UID'] == '0' || !$contentSchema['DBS_UID']) {
|
||||||
$contentSchema['DBS_UID'] = 'workflow';
|
$contentSchema['DBS_UID'] = 'workflow';
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -808,7 +812,8 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
'field_size' => $field['FLD_SIZE'],
|
'field_size' => $field['FLD_SIZE'],
|
||||||
'field_key' => isset($field['FLD_KEY']) ? $field['FLD_KEY'] : 0,
|
'field_key' => isset($field['FLD_KEY']) ? $field['FLD_KEY'] : 0,
|
||||||
'field_null' => isset($field['FLD_NULL']) ? $field['FLD_NULL'] : 1,
|
'field_null' => isset($field['FLD_NULL']) ? $field['FLD_NULL'] : 1,
|
||||||
'field_autoincrement' => isset($field['FLD_AUTO_INCREMENT']) ? $field['FLD_AUTO_INCREMENT'] : 0
|
'field_autoincrement' => isset($field['FLD_AUTO_INCREMENT'])
|
||||||
|
? $field['FLD_AUTO_INCREMENT'] : 0
|
||||||
);
|
);
|
||||||
$columns[] = $column;
|
$columns[] = $column;
|
||||||
}
|
}
|
||||||
@@ -819,8 +824,10 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$tableData->REP_TAB_DSC = $contentSchema['ADD_TAB_DESCRIPTION'];
|
$tableData->REP_TAB_DSC = $contentSchema['ADD_TAB_DESCRIPTION'];
|
||||||
$tableData->REP_TAB_CONNECTION = $contentSchema['DBS_UID'];
|
$tableData->REP_TAB_CONNECTION = $contentSchema['DBS_UID'];
|
||||||
$tableData->PRO_UID = isset($contentSchema['PRO_UID']) ? $contentSchema['PRO_UID'] : '';
|
$tableData->PRO_UID = isset($contentSchema['PRO_UID']) ? $contentSchema['PRO_UID'] : '';
|
||||||
$tableData->REP_TAB_TYPE = isset($contentSchema['ADD_TAB_TYPE'])? $contentSchema['ADD_TAB_TYPE'] : '';
|
$tableData->REP_TAB_TYPE = isset($contentSchema['ADD_TAB_TYPE'])
|
||||||
$tableData->REP_TAB_GRID = isset($contentSchema['ADD_TAB_GRID'])? $contentSchema['ADD_TAB_GRID'] : '';
|
? $contentSchema['ADD_TAB_TYPE'] : '';
|
||||||
|
$tableData->REP_TAB_GRID = isset($contentSchema['ADD_TAB_GRID'])
|
||||||
|
? $contentSchema['ADD_TAB_GRID'] : '';
|
||||||
$tableData->columns = G::json_encode($columns);
|
$tableData->columns = G::json_encode($columns);
|
||||||
$tableData->forceUid = true;
|
$tableData->forceUid = true;
|
||||||
|
|
||||||
@@ -830,29 +837,29 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
|
|
||||||
if ($result->success) {
|
if ($result->success) {
|
||||||
$processQueueTables[$contentSchema['DBS_UID']][] = $contentSchema['ADD_TAB_NAME'];
|
$processQueueTables[$contentSchema['DBS_UID']][] = $contentSchema['ADD_TAB_NAME'];
|
||||||
}
|
} else {
|
||||||
else {
|
$errors .= 'Error creating table: ' . $tableData->REP_TAB_NAME
|
||||||
$errors .= 'Error creating table: '.$tableData->REP_TAB_NAME.'-> '.$result->message . "\n\n";
|
. '-> ' . $result->message . "\n\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case '@DATA':
|
case '@DATA':
|
||||||
$fstName = intval(fread($fp, 9));
|
$fstName = intval(fread($fp, 9));
|
||||||
$tableName = fread($fp, $fstName);
|
$tableName = fread($fp, $fstName);
|
||||||
$fsData = intval(fread($fp, 9));
|
$fsData = intval(fread($fp, 9));
|
||||||
if ($fsData > 0) $data = fread($fp, $fsData);
|
if ($fsData > 0) {
|
||||||
|
$data = fread($fp, $fsData);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$fsData = intval(fread($fp, 9)); //reading the metadata
|
$fsData = intval(fread($fp, 9)); //reading the metadata
|
||||||
if($fsData > 0){ // reading next block type
|
if ($fsData > 0) {
|
||||||
|
// reading next block type
|
||||||
$sType = fread($fp, $fsData);
|
$sType = fread($fp, $fsData);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fclose($fp);
|
fclose($fp);
|
||||||
@@ -879,7 +886,6 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$fsData = intval(fread($fp, 9));
|
$fsData = intval(fread($fp, 9));
|
||||||
$METADATA = fread($fp, $fsData);
|
$METADATA = fread($fp, $fsData);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case '@SCHEMA':
|
case '@SCHEMA':
|
||||||
$fsUid = intval(fread($fp, 9));
|
$fsUid = intval(fread($fp, 9));
|
||||||
$uid = fread($fp, $fsUid);
|
$uid = fread($fp, $fsUid);
|
||||||
@@ -888,11 +894,15 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$contentSchema = unserialize($schema);
|
$contentSchema = unserialize($schema);
|
||||||
$additionalTable = new additionalTables();
|
$additionalTable = new additionalTables();
|
||||||
$table = $additionalTable->loadByName($tableNameMap[$contentSchema['ADD_TAB_NAME']]);
|
$table = $additionalTable->loadByName($tableNameMap[$contentSchema['ADD_TAB_NAME']]);
|
||||||
if ($table['PRO_UID'] != '') { // is a report table, try populate it
|
if ($table['PRO_UID'] != '') {
|
||||||
$additionalTable->populateReportTable($table['ADD_TAB_NAME'], pmTable::resolveDbSource($table['DBS_UID']), $table['ADD_TAB_TYPE'], $table['PRO_UID'], $table['ADD_TAB_GRID']);
|
// is a report table, try populate it
|
||||||
|
$additionalTable->populateReportTable($table['ADD_TAB_NAME'],
|
||||||
|
pmTable::resolveDbSource($table['DBS_UID']),
|
||||||
|
$table['ADD_TAB_TYPE'],
|
||||||
|
$table['PRO_UID'],
|
||||||
|
$table['ADD_TAB_GRID']);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case '@DATA':
|
case '@DATA':
|
||||||
$fstName = intval(fread($fp, 9));
|
$fstName = intval(fread($fp, 9));
|
||||||
$tableName = fread($fp, $fstName);
|
$tableName = fread($fp, $fstName);
|
||||||
@@ -929,8 +939,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$fsData = intval(fread($fp, 9));
|
$fsData = intval(fread($fp, 9));
|
||||||
if ($fsData > 0) {
|
if ($fsData > 0) {
|
||||||
$sType = fread($fp, $fsData);
|
$sType = fread($fp, $fsData);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -941,17 +950,14 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($errors == '') {
|
if ($errors == '') {
|
||||||
$result->success = true;
|
$result->success = true;
|
||||||
$msg = G::loadTranslation('ID_PMTABLE_IMPORT_SUCCESS', array($filename));
|
$msg = G::loadTranslation('ID_PMTABLE_IMPORT_SUCCESS', array($filename));
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
$result->errorType = 'warning';
|
$result->errorType = 'warning';
|
||||||
$msg = G::loadTranslation('ID_PMTABLE_IMPORT_WITH_ERRORS', array($filename)) . "\n\n" . $errors;
|
$msg = G::loadTranslation('ID_PMTABLE_IMPORT_WITH_ERRORS', array($filename)) . "\n\n" . $errors;
|
||||||
}
|
}
|
||||||
|
|
||||||
$result->message = $msg;
|
$result->message = $msg;
|
||||||
|
} catch (Exception $e) {
|
||||||
}
|
|
||||||
catch(Exception $e) {
|
|
||||||
$result->errorType = 'error';
|
$result->errorType = 'error';
|
||||||
$result->buildResult = ob_get_contents();
|
$result->buildResult = ob_get_contents();
|
||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
@@ -961,8 +967,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if (preg_match('/(.*)\s\[(.*):\s(.*)\]\s\[(.*):\s(.*)\]/', $e->getMessage(), $match)) {
|
if (preg_match('/(.*)\s\[(.*):\s(.*)\]\s\[(.*):\s(.*)\]/', $e->getMessage(), $match)) {
|
||||||
$result->message = $match[3];
|
$result->message = $match[3];
|
||||||
$result->type = G::loadTranslation('ID_ERROR');
|
$result->type = G::loadTranslation('ID_ERROR');
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$result->message = $e->getMessage();
|
$result->message = $e->getMessage();
|
||||||
$result->type = G::loadTranslation('ID_EXCEPTION');
|
$result->type = G::loadTranslation('ID_EXCEPTION');
|
||||||
}
|
}
|
||||||
@@ -1002,7 +1007,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$c = 0;
|
$c = 0;
|
||||||
foreach ($tablesToExport as $table) {
|
foreach ($tablesToExport as $table) {
|
||||||
$tableRecord = $at->load($table->ADD_TAB_UID);
|
$tableRecord = $at->load($table->ADD_TAB_UID);
|
||||||
$tableData = $at->getAllData($table->ADD_TAB_UID, NULL, NULL, false);
|
$tableData = $at->getAllData($table->ADD_TAB_UID, null, null, false);
|
||||||
$table->ADD_TAB_NAME = $tableRecord['ADD_TAB_NAME'];
|
$table->ADD_TAB_NAME = $tableRecord['ADD_TAB_NAME'];
|
||||||
$rows = $tableData['rows'];
|
$rows = $tableData['rows'];
|
||||||
$count = $tableData['count'];
|
$count = $tableData['count'];
|
||||||
@@ -1064,7 +1069,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($table->_DATA) {
|
if ($table->_DATA) {
|
||||||
//export data
|
//export data
|
||||||
$oAdditionalTables = new additionalTables();
|
$oAdditionalTables = new additionalTables();
|
||||||
$tableData = $oAdditionalTables->getAllData($table->ADD_TAB_UID, NULL, NULL, false);
|
$tableData = $oAdditionalTables->getAllData($table->ADD_TAB_UID, null, null, false);
|
||||||
|
|
||||||
$SDATA = serialize($tableData['rows']);
|
$SDATA = serialize($tableData['rows']);
|
||||||
$bufferType = '@DATA';
|
$bufferType = '@DATA';
|
||||||
@@ -1094,8 +1099,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$result->filename = $filenameOnly;
|
$result->filename = $filenameOnly;
|
||||||
$result->link = $link;
|
$result->link = $link;
|
||||||
$result->message = "Generated file: $filenameOnly, size: $size";
|
$result->message = "Generated file: $filenameOnly, size: $size";
|
||||||
}
|
} catch (Exception $e) {
|
||||||
catch (Exception $e) {
|
|
||||||
$result->success = false;
|
$result->success = false;
|
||||||
$result->message = $e->getMessage();
|
$result->message = $e->getMessage();
|
||||||
}
|
}
|
||||||
@@ -1159,7 +1163,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
* Update data from a addTable record
|
* Update data from a addTable record
|
||||||
* @param $row
|
* @param $row
|
||||||
*/
|
*/
|
||||||
function _dataUpdate($row, $primaryKeys)
|
public function _dataUpdate($row, $primaryKeys)
|
||||||
{
|
{
|
||||||
$keys = G::decrypt($row['__index__'], 'pmtable');
|
$keys = G::decrypt($row['__index__'], 'pmtable');
|
||||||
$keys = explode('-', $keys);
|
$keys = explode('-', $keys);
|
||||||
@@ -1186,17 +1190,14 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($r = $obj->validate()) {
|
if ($r = $obj->validate()) {
|
||||||
$obj->save();
|
$obj->save();
|
||||||
$result = true;
|
$result = true;
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
$msg = '';
|
$msg = '';
|
||||||
foreach ($obj->getValidationFailures() as $objValidationFailure) {
|
foreach ($obj->getValidationFailures() as $objValidationFailure) {
|
||||||
$msg .= $objValidationFailure->getMessage() . "\n";
|
$msg .= $objValidationFailure->getMessage() . "\n";
|
||||||
}
|
}
|
||||||
throw new Exception($msg);
|
throw new Exception($msg);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
}
|
|
||||||
else {
|
|
||||||
$result = false;
|
$result = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1207,7 +1208,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
* Update data from a addTable record
|
* Update data from a addTable record
|
||||||
* @param $row
|
* @param $row
|
||||||
*/
|
*/
|
||||||
function _dataDestroy($row)
|
public function _dataDestroy($row)
|
||||||
{
|
{
|
||||||
$row = G::decrypt($row, 'pmtable');
|
$row = G::decrypt($row, 'pmtable');
|
||||||
$row = str_replace('"', '', $row);
|
$row = str_replace('"', '', $row);
|
||||||
@@ -1289,7 +1290,8 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
array_push($defaultColumns, $application);
|
array_push($defaultColumns, $application);
|
||||||
|
|
||||||
//if it is a grid report table
|
//if it is a grid report table
|
||||||
if ($type == 'GRID') { //GRID INDEX
|
if ($type == 'GRID') {
|
||||||
|
//GRID INDEX
|
||||||
$gridIndex = new stdClass();
|
$gridIndex = new stdClass();
|
||||||
$gridIndex->uid = '';
|
$gridIndex->uid = '';
|
||||||
$gridIndex->field_dyn = '';
|
$gridIndex->field_dyn = '';
|
||||||
@@ -1314,7 +1316,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
* @param $proUid
|
* @param $proUid
|
||||||
* @param $type [values:xmlform/grid]
|
* @param $type [values:xmlform/grid]
|
||||||
*/
|
*/
|
||||||
function _getDynafields2($proUid, $type = 'xmlform')
|
public function _getDynafields2($proUid, $type='xmlform')
|
||||||
{
|
{
|
||||||
require_once 'classes/model/Dynaform.php';
|
require_once 'classes/model/Dynaform.php';
|
||||||
$fields = array();
|
$fields = array();
|
||||||
@@ -1340,11 +1342,16 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($G_FORM->type == 'xmlform' || $G_FORM->type == '') {
|
if ($G_FORM->type == 'xmlform' || $G_FORM->type == '') {
|
||||||
foreach ($G_FORM->fields as $fieldName => $fieldNode) {
|
foreach ($G_FORM->fields as $fieldName => $fieldNode) {
|
||||||
if (!in_array($fieldNode->type, $excludeFieldsList) && !in_array($fieldName, $fieldsNames)) {
|
if (!in_array($fieldNode->type, $excludeFieldsList) && !in_array($fieldName, $fieldsNames)) {
|
||||||
$fields[] = array('name' => $fieldName, 'type' => $fieldNode->type, 'label'=> $fieldNode->label);
|
$fields[] = array('name' => $fieldName,
|
||||||
|
'type' => $fieldNode->type,
|
||||||
|
'label' => $fieldNode->label);
|
||||||
$fieldsNames[] = $fieldName;
|
$fieldsNames[] = $fieldName;
|
||||||
|
|
||||||
if (in_array($fieldNode->type, $labelFieldsTypeList) && !in_array($fieldName.'_label', $fieldsNames)) {
|
if (in_array($fieldNode->type, $labelFieldsTypeList)
|
||||||
$fields[] = array('name' => $fieldName . '_label', 'type' => $fieldNode->type, 'label'=>$fieldNode->label . '_label');
|
&& !in_array($fieldName . '_label', $fieldsNames)) {
|
||||||
|
$fields[] = array('name' => $fieldName . '_label',
|
||||||
|
'type' => $fieldNode->type,
|
||||||
|
'label' => $fieldNode->label . '_label');
|
||||||
$fieldsNames[] = $fieldName;
|
$fieldsNames[] = $fieldName;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1357,7 +1364,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
return $fields;
|
return $fields;
|
||||||
}
|
}
|
||||||
|
|
||||||
function _getDynafields($proUid, $type = 'xmlform', $start=null, $limit=null, $filter=null)
|
public function _getDynafields($proUid, $type='xmlform', $start=null, $limit=null, $filter=null)
|
||||||
{
|
{
|
||||||
$cache = 1;
|
$cache = 1;
|
||||||
if (!isset($_SESSION['_cache_pmtables']) ||
|
if (!isset($_SESSION['_cache_pmtables']) ||
|
||||||
@@ -1410,7 +1417,8 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
);
|
);
|
||||||
$fieldsNames[] = $fieldName;
|
$fieldsNames[] = $fieldName;
|
||||||
|
|
||||||
if (in_array($fieldType, $labelFieldsTypeList) && !in_array($fieldName . '_label', $fieldsNames)) {
|
if (in_array($fieldType, $labelFieldsTypeList)
|
||||||
|
&& !in_array($fieldName . '_label', $fieldsNames)) {
|
||||||
$fields[] = array(
|
$fields[] = array(
|
||||||
'FIELD_UID' => $fieldName . '_label' . '-' . $fieldType,
|
'FIELD_UID' => $fieldName . '_label' . '-' . $fieldType,
|
||||||
'FIELD_NAME' => $fieldName . '_label',
|
'FIELD_NAME' => $fieldName . '_label',
|
||||||
@@ -1421,7 +1429,6 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
$oDataset->next();
|
$oDataset->next();
|
||||||
}
|
}
|
||||||
@@ -1465,8 +1472,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($row['_isset'] && stripos($row['FIELD_NAME'], $filter) !== false) {
|
if ($row['_isset'] && stripos($row['FIELD_NAME'], $filter) !== false) {
|
||||||
$tmp[] = $row;
|
$tmp[] = $row;
|
||||||
}
|
}
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
if ($row['_isset']) {
|
if ($row['_isset']) {
|
||||||
$tmp[] = $row;
|
$tmp[] = $row;
|
||||||
}
|
}
|
||||||
@@ -1483,7 +1489,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
* @param $proUid
|
* @param $proUid
|
||||||
* @param $gridId
|
* @param $gridId
|
||||||
*/
|
*/
|
||||||
function _getGridDynafields($proUid, $gridId)
|
public function _getGridDynafields($proUid, $gridId)
|
||||||
{
|
{
|
||||||
$fields = array();
|
$fields = array();
|
||||||
$fieldsNames = array();
|
$fieldsNames = array();
|
||||||
@@ -1500,8 +1506,11 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
$fields[] = array('name' => $fieldName, 'type' => $fieldNode->type, 'label' => $fieldNode->label);
|
$fields[] = array('name' => $fieldName, 'type' => $fieldNode->type, 'label' => $fieldNode->label);
|
||||||
$fieldsNames[] = $fieldName;
|
$fieldsNames[] = $fieldName;
|
||||||
|
|
||||||
if (in_array($fieldNode->type, $labelFieldsTypeList) && !in_array($fieldName.'_label', $fieldsNames)) {
|
if (in_array($fieldNode->type, $labelFieldsTypeList)
|
||||||
$fields[] = array('name' => $fieldName . '_label', 'type' => $fieldNode->type, 'label'=>$fieldNode->label . '_label');
|
&& !in_array($fieldName . '_label', $fieldsNames)) {
|
||||||
|
$fields[] = array('name' => $fieldName . '_label',
|
||||||
|
'type' => $fieldNode->type,
|
||||||
|
'label' => $fieldNode->label . '_label');
|
||||||
$fieldsNames[] = $fieldName;
|
$fieldsNames[] = $fieldName;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1515,7 +1524,7 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
* Get all dynaform fields inside all grids from a process
|
* Get all dynaform fields inside all grids from a process
|
||||||
* @param $proUid
|
* @param $proUid
|
||||||
*/
|
*/
|
||||||
function _getGridFields($proUid)
|
public function _getGridFields($proUid)
|
||||||
{
|
{
|
||||||
require_once 'classes/model/Dynaform.php';
|
require_once 'classes/model/Dynaform.php';
|
||||||
G::loadSystem('dynaformhandler');
|
G::loadSystem('dynaformhandler');
|
||||||
@@ -1543,7 +1552,8 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
if ($fieldType == 'grid') {
|
if ($fieldType == 'grid') {
|
||||||
|
|
||||||
if (!in_array($fieldName, $aFieldsNames)) {
|
if (!in_array($fieldName, $aFieldsNames)) {
|
||||||
$aFields[] = array('name' => $fieldName, 'xmlform' => str_replace($proUid . '/', '', $arrayNode['xmlgrid']));
|
$aFields[] = array('name' => $fieldName,
|
||||||
|
'xmlform' => str_replace($proUid . '/', '', $arrayNode['xmlgrid']));
|
||||||
$aFieldsNames[] = $fieldName;
|
$aFieldsNames[] = $fieldName;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1554,3 +1564,4 @@ class pmTablesProxy extends HttpProxyController
|
|||||||
return $aFields;
|
return $aFields;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Reference in New Issue
Block a user