Merge remote-tracking branch 'origin/feature/HOR-3559' into feature/HOR-3629
This commit is contained in:
@@ -2365,7 +2365,7 @@ class AppSolr
|
||||
foreach ($dynaformFileNames as $dynaformFileName) {
|
||||
if (is_file(PATH_DYNAFORM . $dynaformFileName ['DYN_FILENAME'] . '.xml') &&
|
||||
filesize(PATH_DYNAFORM . $dynaformFileName ['DYN_FILENAME'] . '.xml') >0 ) {
|
||||
$dyn = new dynaFormHandler (PATH_DYNAFORM . $dynaformFileName ['DYN_FILENAME'] . '.xml');
|
||||
$dyn = new DynaformHandler (PATH_DYNAFORM . $dynaformFileName ['DYN_FILENAME'] . '.xml');
|
||||
$dynaformFields [] = $dyn->getFields ();
|
||||
}
|
||||
if (is_file(PATH_DYNAFORM . $dynaformFileName ['DYN_FILENAME'] . '.xml') &&
|
||||
|
||||
@@ -239,14 +239,6 @@ class Applications
|
||||
$dateFrom = isset($dateFrom)? $dateFrom : "";
|
||||
$dateTo = isset($dateTo)? $dateTo : "";
|
||||
|
||||
//require_once ("classes/model/AppCacheView.php");
|
||||
//require_once ("classes/model/AppDelegation.php");
|
||||
//require_once ("classes/model/AdditionalTables.php");
|
||||
//require_once ("classes/model/AppDelay.php");
|
||||
//require_once ("classes/model/Fields.php");
|
||||
//require_once ("classes/model/Users.php");
|
||||
//require_once ("classes/model/Process.php");
|
||||
|
||||
$oAppCache = new AppCacheView();
|
||||
|
||||
if ($configuration == true) {
|
||||
|
||||
@@ -21,7 +21,7 @@ require_once 'model/Content.php';
|
||||
* @package workflow.engine.classes
|
||||
*
|
||||
*/
|
||||
class dbConnections
|
||||
class DbConnections
|
||||
{
|
||||
private $PRO_UID;
|
||||
public $connections;
|
||||
|
||||
@@ -179,7 +179,7 @@ class DynaFormField extends DBTable
|
||||
|
||||
public function saveField($Fields, $attributes = array(), $options = array())
|
||||
{
|
||||
$dynaform = new dynaFormHandler($this->getFileName());
|
||||
$dynaform = new DynaformHandler($this->getFileName());
|
||||
if ($Fields['TYPE'] === 'javascript') {
|
||||
$Fields['XMLNODE_VALUE'] = $Fields['CODE'];
|
||||
unset($Fields['CODE']);
|
||||
|
||||
@@ -664,7 +664,7 @@ class dynaformEditorAjax extends dynaformEditor implements iDynaformEditorAjax
|
||||
|
||||
|
||||
$pathFile = $filter->xssFilterHard(PATH_DYNAFORM . "{$file}.xml", 'path');
|
||||
$dynaform = new dynaFormHandler($pathFile);
|
||||
$dynaform = new DynaformHandler($pathFile);
|
||||
$dynaform->replace($fieldName, $fieldName, Array('type' => 'javascript', 'meta' => $meta, '#cdata' => $sCode
|
||||
));
|
||||
|
||||
@@ -734,7 +734,7 @@ class dynaformEditorAjax extends dynaformEditor implements iDynaformEditorAjax
|
||||
self::_setTmpData($tmp);
|
||||
}
|
||||
$pathFile = $filter->xssFilterHard(PATH_DYNAFORM . "{$file}.xml", 'path');
|
||||
$dynaform = new dynaFormHandler($pathFile);
|
||||
$dynaform = new DynaformHandler($pathFile);
|
||||
$dbc2 = new DBConnection($pathFile, '', '', '', 'myxml');
|
||||
$ses2 = new DBSession($dbc2);
|
||||
//if (!isset($Fields['ENABLETEMPLATE'])) $Fields['ENABLETEMPLATE'] ="0";
|
||||
@@ -804,7 +804,7 @@ class dynaformEditorAjax extends dynaformEditor implements iDynaformEditorAjax
|
||||
// $ses2 = new DBSession( $dbc2 );
|
||||
// $ses2->execute( "UPDATE . SET ENABLETEMPLATE = '$value'" );
|
||||
$pathFile = $filter->xssFilterHard(PATH_DYNAFORM . "{$file}.xml", 'path');
|
||||
$dynaform = new dynaFormHandler($pathFile);
|
||||
$dynaform = new DynaformHandler($pathFile);
|
||||
$dynaform->modifyHeaderAttribute('enabletemplate', $value);
|
||||
|
||||
return $value;
|
||||
|
||||
@@ -203,9 +203,6 @@ class PMPluginRegistry
|
||||
*/
|
||||
public function registerPlugin ($sNamespace, $sFilename = null)
|
||||
{
|
||||
//require_once ($sFilename);
|
||||
|
||||
|
||||
$sClassName = $sNamespace . "plugin";
|
||||
$plugin = new $sClassName( $sNamespace, $sFilename );
|
||||
|
||||
@@ -278,7 +275,6 @@ class PMPluginRegistry
|
||||
$pluginSrcDir = PATH_PLUGINS . $detail->sNamespace . PATH_SEP . 'src';
|
||||
|
||||
if (is_dir($pluginSrcDir)) {
|
||||
//Bootstrap::registerDir($detail->sNamespace.'/src', $pluginSrcDir);
|
||||
$loader = \Maveriks\Util\ClassLoader::getInstance();
|
||||
$loader->add($pluginSrcDir);
|
||||
}
|
||||
|
||||
@@ -3916,3 +3916,287 @@ function PMFSendMessageToGroup(
|
||||
//Return
|
||||
return 1;
|
||||
}
|
||||
|
||||
//Start - Private functions
|
||||
|
||||
|
||||
/**
|
||||
* Convert to string
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return string
|
||||
*/
|
||||
function pmToString($vValue)
|
||||
{
|
||||
return (string)$vValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to integer
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return integer
|
||||
*/
|
||||
function pmToInteger($vValue)
|
||||
{
|
||||
return (int)$vValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to float
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return float
|
||||
*/
|
||||
function pmToFloat($vValue)
|
||||
{
|
||||
return (float)$vValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to Url
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return url
|
||||
*/
|
||||
function pmToUrl($vValue)
|
||||
{
|
||||
return urlencode($vValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to data base escaped string
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return string
|
||||
*/
|
||||
function pmSqlEscape($vValue)
|
||||
{
|
||||
return G::sqlEscape($vValue);
|
||||
}
|
||||
|
||||
//End - Private functions
|
||||
|
||||
|
||||
/* * *************************************************************************
|
||||
* Error handler
|
||||
* author: Julio Cesar Laura Avenda<64>o <juliocesar@colosa.com>
|
||||
* date: 2009-10-01
|
||||
* ************************************************************************* */
|
||||
/**
|
||||
* @param $errno
|
||||
* @param $errstr
|
||||
* @param $errfile
|
||||
* @param $errline
|
||||
*/
|
||||
function handleErrors($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
if ($errno != 2048 && isset($_SESSION['_DATA_TRIGGER_']['_EXECUTION_TIME_'])) {
|
||||
G::logTriggerExecution($_SESSION, $errstr, '', round(microtime(true) -
|
||||
$_SESSION['_DATA_TRIGGER_']['_EXECUTION_TIME_'], 5));
|
||||
}
|
||||
|
||||
if ($errno != '' && ($errno != 8) && ($errno != 2048)) {
|
||||
if (isset($_SESSION['_CODE_'])) {
|
||||
$sCode = $_SESSION['_CODE_'];
|
||||
unset($_SESSION['_CODE_']);
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oCase = new Cases();
|
||||
$oPMScript->aFields['__ERROR__'] = $errstr;
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
registerError(1, $errstr, $errline - 1, $sCode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Handle Fatal Errors
|
||||
* @param variant $buffer
|
||||
* @return buffer
|
||||
*/
|
||||
|
||||
function handleFatalErrors($buffer)
|
||||
{
|
||||
if (!empty($buffer)) {
|
||||
G::logTriggerExecution($_SESSION, $buffer, 'FATAL_ERROR');
|
||||
}
|
||||
|
||||
if (preg_match('/(error<\/b>:)(.+)(<br)/', $buffer, $regs)) {
|
||||
$oCase = new Cases();
|
||||
$err = preg_replace('/<.*?>/', '', $regs[2]);
|
||||
$aAux = explode(' in ', $err);
|
||||
$sCode = isset($_SESSION['_CODE_']) ? $_SESSION['_CODE_'] : null;
|
||||
unset($_SESSION['_CODE_']);
|
||||
registerError(2, $aAux[0], 0, $sCode);
|
||||
if (strpos($_SERVER['REQUEST_URI'], '/cases/cases_Step') !== false) {
|
||||
if (strpos($_SERVER['REQUEST_URI'], '&ACTION=GENERATE') !== false) {
|
||||
$aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']);
|
||||
if ($_SESSION['TRIGGER_DEBUG']['ISSET']) {
|
||||
$_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
|
||||
$_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE'];
|
||||
$aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug';
|
||||
}
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oPMScript->aFields['__ERROR__'] = $aAux[0];
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
G::header('Location: ' . $aNextStep['PAGE']);
|
||||
die();
|
||||
}
|
||||
$_SESSION['_NO_EXECUTE_TRIGGERS_'] = 1;
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oPMScript->aFields['__ERROR__'] = $aAux[0];
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
G::header('Location: ' . $_SERVER['REQUEST_URI']);
|
||||
die();
|
||||
} else {
|
||||
$aNextStep = $oCase->getNextStep($_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION']);
|
||||
if (isset($_SESSION['TRIGGER_DEBUG']['ISSET']) && $_SESSION['TRIGGER_DEBUG']['ISSET']) {
|
||||
$_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
|
||||
$_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE'];
|
||||
$aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug';
|
||||
}
|
||||
if (strpos($aNextStep['PAGE'], 'TYPE=ASSIGN_TASK&UID=-1') !== false) {
|
||||
G::SendMessageText('Fatal error in trigger', 'error');
|
||||
}
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oPMScript->aFields['__ERROR__'] = $aAux[0];
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
G::header('Location: ' . $aNextStep['PAGE']);
|
||||
die();
|
||||
}
|
||||
}
|
||||
return $buffer;
|
||||
}
|
||||
|
||||
/*
|
||||
* Register Error
|
||||
* @param string $iType
|
||||
* @param string $sError
|
||||
* @param string $iLine
|
||||
* @param string $sCode
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function registerError($iType, $sError, $iLine, $sCode)
|
||||
{
|
||||
$sType = ($iType == 1 ? 'ERROR' : 'FATAL');
|
||||
$_SESSION['TRIGGER_DEBUG']['ERRORS'][][$sType] = $sError . ($iLine > 0 ? ' (line ' . $iLine . ')' : '') . ':<br /><br />' . $sCode;
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtain engine Data Base name
|
||||
*
|
||||
* @param type $connection
|
||||
* @return type
|
||||
*/
|
||||
function getEngineDataBaseName($connection)
|
||||
{
|
||||
$aDNS = $connection->getDSN();
|
||||
return $aDNS["phptype"];
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute Queries for Oracle Database
|
||||
*
|
||||
* @param type $sql
|
||||
* @param type $connection
|
||||
*/
|
||||
function executeQueryOci($sql, $connection, $aParameter = array(), $dbsEncode = "")
|
||||
{
|
||||
$aDNS = $connection->getDSN();
|
||||
|
||||
$sUsername = $aDNS["username"];
|
||||
$sPassword = $aDNS["password"];
|
||||
$sHostspec = $aDNS["hostspec"];
|
||||
$sDatabse = $aDNS["database"];
|
||||
$sPort = $aDNS["port"];
|
||||
|
||||
if ($sPort != "1521") {
|
||||
$flagTns = ($sDatabse == "" && ($sPort . "" == "" || $sPort . "" == "0")) ? 1 : 0;
|
||||
|
||||
if ($flagTns == 0) {
|
||||
// if not default port
|
||||
$conn = oci_connect($sUsername, $sPassword, $sHostspec . ":" . $sPort . "/" . $sDatabse, $dbsEncode);
|
||||
} else {
|
||||
$conn = oci_connect($sUsername, $sPassword, $sHostspec, $dbsEncode);
|
||||
}
|
||||
} else {
|
||||
$conn = oci_connect($sUsername, $sPassword, $sHostspec . "/" . $sDatabse, $dbsEncode);
|
||||
}
|
||||
|
||||
if (!$conn) {
|
||||
$e = oci_error();
|
||||
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
|
||||
return $e;
|
||||
}
|
||||
|
||||
switch (true) {
|
||||
case preg_match("/^(SELECT|SHOW|DESCRIBE|DESC|WITH)\s/i", $sql):
|
||||
$stid = oci_parse($conn, $sql);
|
||||
|
||||
if (count($aParameter) > 0) {
|
||||
foreach ($aParameter as $key => $val) {
|
||||
oci_bind_by_name($stid, $key, $val);
|
||||
}
|
||||
}
|
||||
oci_execute($stid, OCI_DEFAULT);
|
||||
|
||||
$result = Array();
|
||||
$i = 1;
|
||||
while ($row = oci_fetch_array($stid, OCI_ASSOC + OCI_RETURN_NULLS)) {
|
||||
$result[$i++] = $row;
|
||||
}
|
||||
oci_free_statement($stid);
|
||||
oci_close($conn);
|
||||
return $result;
|
||||
break;
|
||||
case preg_match("/^(INSERT|UPDATE|DELETE)\s/i", $sql):
|
||||
$stid = oci_parse($conn, $sql);
|
||||
$isValid = true;
|
||||
if (count($aParameter) > 0) {
|
||||
foreach ($aParameter as $key => $val) {
|
||||
oci_bind_by_name($stid, $key, $val);
|
||||
}
|
||||
}
|
||||
$objExecute = oci_execute($stid, OCI_DEFAULT);
|
||||
$result = oci_num_rows($stid);
|
||||
if ($objExecute) {
|
||||
oci_commit($conn);
|
||||
} else {
|
||||
oci_rollback($conn);
|
||||
$isValid = false;
|
||||
}
|
||||
oci_free_statement($stid);
|
||||
oci_close($conn);
|
||||
if ($isValid) {
|
||||
return $result;
|
||||
} else {
|
||||
return oci_error();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
// Stored procedures
|
||||
$stid = oci_parse($conn, $sql);
|
||||
$aParameterRet = array();
|
||||
if (count($aParameter) > 0) {
|
||||
foreach ($aParameter as $key => $val) {
|
||||
$aParameterRet[$key] = $val;
|
||||
// The third parameter ($aParameterRet[$key]) returned a value by reference.
|
||||
oci_bind_by_name($stid, $key, $aParameterRet[$key]);
|
||||
}
|
||||
}
|
||||
$objExecute = oci_execute($stid, OCI_DEFAULT);
|
||||
oci_free_statement($stid);
|
||||
oci_close($conn);
|
||||
return $aParameterRet;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -640,288 +640,4 @@ class PMScript
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Start - Private functions
|
||||
|
||||
|
||||
/**
|
||||
* Convert to string
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return string
|
||||
*/
|
||||
function pmToString ($vValue)
|
||||
{
|
||||
return (string) $vValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to integer
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return integer
|
||||
*/
|
||||
function pmToInteger ($vValue)
|
||||
{
|
||||
return (int) $vValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to float
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return float
|
||||
*/
|
||||
function pmToFloat ($vValue)
|
||||
{
|
||||
return (float) $vValue;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to Url
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return url
|
||||
*/
|
||||
function pmToUrl ($vValue)
|
||||
{
|
||||
return urlencode( $vValue );
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert to data base escaped string
|
||||
*
|
||||
* @param variant $vValue
|
||||
* @return string
|
||||
*/
|
||||
function pmSqlEscape ($vValue)
|
||||
{
|
||||
return G::sqlEscape( $vValue );
|
||||
}
|
||||
|
||||
//End - Private functions
|
||||
|
||||
|
||||
/* * *************************************************************************
|
||||
* Error handler
|
||||
* author: Julio Cesar Laura Avenda<64>o <juliocesar@colosa.com>
|
||||
* date: 2009-10-01
|
||||
* ************************************************************************* */
|
||||
/**
|
||||
* @param $errno
|
||||
* @param $errstr
|
||||
* @param $errfile
|
||||
* @param $errline
|
||||
*/
|
||||
function handleErrors($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
if ($errno != 2048 && isset($_SESSION['_DATA_TRIGGER_']['_EXECUTION_TIME_'])) {
|
||||
G::logTriggerExecution($_SESSION, $errstr, '', round(microtime(true) -
|
||||
$_SESSION['_DATA_TRIGGER_']['_EXECUTION_TIME_'], 5));
|
||||
}
|
||||
|
||||
if ($errno != '' && ($errno != 8) && ($errno != 2048)) {
|
||||
if (isset( $_SESSION['_CODE_'] )) {
|
||||
$sCode = $_SESSION['_CODE_'];
|
||||
unset( $_SESSION['_CODE_'] );
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oCase = new Cases();
|
||||
$oPMScript->aFields['__ERROR__'] = $errstr;
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
registerError( 1, $errstr, $errline - 1, $sCode );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Handle Fatal Errors
|
||||
* @param variant $buffer
|
||||
* @return buffer
|
||||
*/
|
||||
|
||||
function handleFatalErrors ($buffer)
|
||||
{
|
||||
if (!empty($buffer)) {
|
||||
G::logTriggerExecution($_SESSION, $buffer, 'FATAL_ERROR');
|
||||
}
|
||||
|
||||
if (preg_match( '/(error<\/b>:)(.+)(<br)/', $buffer, $regs )) {
|
||||
$oCase = new Cases();
|
||||
$err = preg_replace( '/<.*?>/', '', $regs[2] );
|
||||
$aAux = explode( ' in ', $err );
|
||||
$sCode = isset($_SESSION['_CODE_']) ? $_SESSION['_CODE_'] : null;
|
||||
unset( $_SESSION['_CODE_'] );
|
||||
registerError( 2, $aAux[0], 0, $sCode );
|
||||
if (strpos( $_SERVER['REQUEST_URI'], '/cases/cases_Step' ) !== false) {
|
||||
if (strpos( $_SERVER['REQUEST_URI'], '&ACTION=GENERATE' ) !== false) {
|
||||
$aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] );
|
||||
if ($_SESSION['TRIGGER_DEBUG']['ISSET']) {
|
||||
$_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
|
||||
$_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE'];
|
||||
$aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug';
|
||||
}
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oPMScript->aFields['__ERROR__'] = $aAux[0];
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
G::header( 'Location: ' . $aNextStep['PAGE'] );
|
||||
die();
|
||||
}
|
||||
$_SESSION['_NO_EXECUTE_TRIGGERS_'] = 1;
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oPMScript->aFields['__ERROR__'] = $aAux[0];
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
G::header( 'Location: ' . $_SERVER['REQUEST_URI'] );
|
||||
die();
|
||||
} else {
|
||||
$aNextStep = $oCase->getNextStep( $_SESSION['PROCESS'], $_SESSION['APPLICATION'], $_SESSION['INDEX'], $_SESSION['STEP_POSITION'] );
|
||||
if (isset($_SESSION['TRIGGER_DEBUG']['ISSET']) && $_SESSION['TRIGGER_DEBUG']['ISSET']) {
|
||||
$_SESSION['TRIGGER_DEBUG']['TIME'] = G::toUpper(G::loadTranslation('ID_AFTER'));
|
||||
$_SESSION['TRIGGER_DEBUG']['BREAKPAGE'] = $aNextStep['PAGE'];
|
||||
$aNextStep['PAGE'] = $aNextStep['PAGE'] . '&breakpoint=triggerdebug';
|
||||
}
|
||||
if (strpos( $aNextStep['PAGE'], 'TYPE=ASSIGN_TASK&UID=-1' ) !== false) {
|
||||
G::SendMessageText( 'Fatal error in trigger', 'error' );
|
||||
}
|
||||
global $oPMScript;
|
||||
if (isset($oPMScript) && isset($_SESSION['APPLICATION'])) {
|
||||
$oPMScript->aFields['__ERROR__'] = $aAux[0];
|
||||
$oCase->updateCase($_SESSION['APPLICATION'], array('APP_DATA' => $oPMScript->aFields));
|
||||
}
|
||||
G::header( 'Location: ' . $aNextStep['PAGE'] );
|
||||
die();
|
||||
}
|
||||
}
|
||||
return $buffer;
|
||||
}
|
||||
|
||||
/*
|
||||
* Register Error
|
||||
* @param string $iType
|
||||
* @param string $sError
|
||||
* @param string $iLine
|
||||
* @param string $sCode
|
||||
* @return void
|
||||
*/
|
||||
|
||||
function registerError ($iType, $sError, $iLine, $sCode)
|
||||
{
|
||||
$sType = ($iType == 1 ? 'ERROR' : 'FATAL');
|
||||
$_SESSION['TRIGGER_DEBUG']['ERRORS'][][$sType] = $sError . ($iLine > 0 ? ' (line ' . $iLine . ')' : '') . ':<br /><br />' . $sCode;
|
||||
}
|
||||
|
||||
/**
|
||||
* Obtain engine Data Base name
|
||||
*
|
||||
* @param type $connection
|
||||
* @return type
|
||||
*/
|
||||
function getEngineDataBaseName ($connection)
|
||||
{
|
||||
$aDNS = $connection->getDSN();
|
||||
return $aDNS["phptype"];
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute Queries for Oracle Database
|
||||
*
|
||||
* @param type $sql
|
||||
* @param type $connection
|
||||
*/
|
||||
function executeQueryOci ($sql, $connection, $aParameter = array(), $dbsEncode = "")
|
||||
{
|
||||
$aDNS = $connection->getDSN();
|
||||
|
||||
$sUsername = $aDNS["username"];
|
||||
$sPassword = $aDNS["password"];
|
||||
$sHostspec = $aDNS["hostspec"];
|
||||
$sDatabse = $aDNS["database"];
|
||||
$sPort = $aDNS["port"];
|
||||
|
||||
if ($sPort != "1521") {
|
||||
$flagTns = ($sDatabse == "" && ($sPort . "" == "" || $sPort . "" == "0"))? 1 : 0;
|
||||
|
||||
if ($flagTns == 0) {
|
||||
// if not default port
|
||||
$conn = oci_connect($sUsername, $sPassword, $sHostspec . ":" . $sPort . "/" . $sDatabse, $dbsEncode);
|
||||
} else {
|
||||
$conn = oci_connect($sUsername, $sPassword, $sHostspec, $dbsEncode);
|
||||
}
|
||||
} else {
|
||||
$conn = oci_connect( $sUsername, $sPassword, $sHostspec . "/" . $sDatabse, $dbsEncode);
|
||||
}
|
||||
|
||||
if (! $conn) {
|
||||
$e = oci_error();
|
||||
trigger_error( htmlentities( $e['message'], ENT_QUOTES ), E_USER_ERROR );
|
||||
return $e;
|
||||
}
|
||||
|
||||
switch (true) {
|
||||
case preg_match( "/^(SELECT|SHOW|DESCRIBE|DESC|WITH)\s/i", $sql ):
|
||||
$stid = oci_parse( $conn, $sql );
|
||||
|
||||
if (count( $aParameter ) > 0) {
|
||||
foreach ($aParameter as $key => $val) {
|
||||
oci_bind_by_name( $stid, $key, $val );
|
||||
}
|
||||
}
|
||||
oci_execute( $stid, OCI_DEFAULT );
|
||||
|
||||
$result = Array ();
|
||||
$i = 1;
|
||||
while ($row = oci_fetch_array( $stid, OCI_ASSOC + OCI_RETURN_NULLS )) {
|
||||
$result[$i ++] = $row;
|
||||
}
|
||||
oci_free_statement( $stid );
|
||||
oci_close( $conn );
|
||||
return $result;
|
||||
break;
|
||||
case preg_match( "/^(INSERT|UPDATE|DELETE)\s/i", $sql ):
|
||||
$stid = oci_parse( $conn, $sql );
|
||||
$isValid = true;
|
||||
if (count( $aParameter ) > 0) {
|
||||
foreach ($aParameter as $key => $val) {
|
||||
oci_bind_by_name( $stid, $key, $val );
|
||||
}
|
||||
}
|
||||
$objExecute = oci_execute( $stid, OCI_DEFAULT );
|
||||
$result = oci_num_rows ($stid);
|
||||
if ($objExecute) {
|
||||
oci_commit( $conn );
|
||||
} else {
|
||||
oci_rollback( $conn );
|
||||
$isValid = false;
|
||||
}
|
||||
oci_free_statement( $stid );
|
||||
oci_close( $conn );
|
||||
if ($isValid) {
|
||||
return $result;
|
||||
} else {
|
||||
return oci_error();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
// Stored procedures
|
||||
$stid = oci_parse( $conn, $sql );
|
||||
$aParameterRet = array ();
|
||||
if (count( $aParameter ) > 0) {
|
||||
foreach ($aParameter as $key => $val) {
|
||||
$aParameterRet[$key] = $val;
|
||||
// The third parameter ($aParameterRet[$key]) returned a value by reference.
|
||||
oci_bind_by_name( $stid, $key, $aParameterRet[$key] );
|
||||
}
|
||||
}
|
||||
$objExecute = oci_execute( $stid, OCI_DEFAULT );
|
||||
oci_free_statement( $stid );
|
||||
oci_close( $conn );
|
||||
return $aParameterRet;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -349,7 +349,7 @@ class serverConf
|
||||
$dbNetView = new NET(DB_HOST);
|
||||
$dbNetView->loginDbServer(DB_USER, DB_PASS);
|
||||
|
||||
$dbConns = new dbConnections('');
|
||||
$dbConns = new DbConnections('');
|
||||
$availdb = '';
|
||||
foreach ($dbConns->getDbServicesAvailables() as $key => $val) {
|
||||
if ($availdb != '') {
|
||||
|
||||
@@ -65,6 +65,12 @@ class wsBase
|
||||
global $RBAC;
|
||||
|
||||
try {
|
||||
//To enable compatibility with hash login, method Enable.
|
||||
//It's necessary to enable the hash start session because there are use cases in both,
|
||||
//the web entry and in the case planner, where the password is still used in the hash
|
||||
//format so that is possible to start a session. Thiw way we will mantain the
|
||||
//compatibility with this type of loggin.
|
||||
$RBAC->enableLoginWithHash();
|
||||
$uid = $RBAC->VerifyLogin( $userid, $password );
|
||||
|
||||
switch ($uid) {
|
||||
@@ -113,14 +119,13 @@ class wsBase
|
||||
$session->Save();
|
||||
|
||||
//save the session in DataBase
|
||||
|
||||
|
||||
return $wsResponse;
|
||||
} catch (Exception $e) {
|
||||
$wsResponse = unserialize( $e->getMessage() );
|
||||
|
||||
return $wsResponse;
|
||||
}
|
||||
|
||||
//To enable compatibility with hash login, method disable.
|
||||
$RBAC->disableLoginWithHash();
|
||||
return $wsResponse;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -475,7 +475,6 @@ class workspaceTools
|
||||
foreach ($information as $key => $value) {
|
||||
$arrayLang[] = trim($value['LOCALE']);
|
||||
}
|
||||
//require_once ('classes/model/Content.php');
|
||||
$regenerateContent = new Content();
|
||||
$regenerateContent->regenerateContent($arrayLang, $workSpace);
|
||||
}
|
||||
@@ -670,7 +669,6 @@ class workspaceTools
|
||||
{
|
||||
$this->initPropel(true);
|
||||
|
||||
//require_once ('classes/model/AppCacheView.php');
|
||||
//check the language, if no info in config about language, the default is 'en'
|
||||
|
||||
$oConf = new Configurations();
|
||||
|
||||
@@ -531,7 +531,7 @@ function getVarsGrid ($proUid, $dynUid)
|
||||
$dynaformFields = array ();
|
||||
|
||||
if (is_file( PATH_DATA . '/sites/'. SYS_SYS .'/xmlForms/'. $proUid .'/'.$dynUid. '.xml' ) && filesize( PATH_DATA . '/sites/'. SYS_SYS .'/xmlForms/'. $proUid .'/'. $dynUid .'.xml' ) > 0) {
|
||||
$dyn = new dynaFormHandler( PATH_DATA . '/sites/'. SYS_SYS .'/xmlForms/' .$proUid. '/' . $dynUid .'.xml' );
|
||||
$dyn = new DynaformHandler( PATH_DATA . '/sites/'. SYS_SYS .'/xmlForms/' .$proUid. '/' . $dynUid .'.xml' );
|
||||
$dynaformFields[] = $dyn->getFields();
|
||||
}
|
||||
|
||||
|
||||
@@ -137,7 +137,7 @@ class FieldCondition extends BaseFieldCondition
|
||||
$oDynaform = DynaformPeer::retrieveByPk( $DYN_UID );
|
||||
$PRO_UID = $oDynaform->getProUid();
|
||||
|
||||
$this->oDynaformHandler = new dynaFormHandler( PATH_DYNAFORM . "$PRO_UID/$DYN_UID" . '.xml' );
|
||||
$this->oDynaformHandler = new DynaformHandler( PATH_DYNAFORM . "$PRO_UID/$DYN_UID" . '.xml' );
|
||||
$aDynaformFields = $this->oDynaformHandler->getFieldNames();
|
||||
for ($i = 0; $i < count( $aDynaformFields ); $i ++) {
|
||||
$aDynaformFields[$i] = "'$aDynaformFields[$i]'";
|
||||
|
||||
@@ -247,7 +247,7 @@ class Language extends BaseLanguage
|
||||
}
|
||||
|
||||
|
||||
$dynaform = new dynaFormHandler( PATH_XMLFORM . $xmlForm );
|
||||
$dynaform = new DynaformHandler( PATH_XMLFORM . $xmlForm );
|
||||
$fieldName = $match[2];
|
||||
|
||||
$codes = explode( '-', $reference );
|
||||
@@ -460,7 +460,7 @@ class Language extends BaseLanguage
|
||||
$xmlFormFile = str_replace( chr( 92 ), '/', $xmlFormPath );
|
||||
$xmlFormFile = str_replace( PATH_XMLFORM, '', $xmlFormPath );
|
||||
|
||||
$dynaForm = new dynaFormHandler( $xmlFormPath );
|
||||
$dynaForm = new DynaformHandler( $xmlFormPath );
|
||||
|
||||
$dynaNodes = $dynaForm->getFields();
|
||||
|
||||
@@ -635,7 +635,7 @@ class Language extends BaseLanguage
|
||||
}
|
||||
|
||||
|
||||
$dynaform = new dynaFormHandler( PATH_PLUGINS . $plugin . PATH_SEP . $xmlForm );
|
||||
$dynaform = new DynaformHandler( PATH_PLUGINS . $plugin . PATH_SEP . $xmlForm );
|
||||
$fieldName = $match[2];
|
||||
|
||||
$codes = explode( '-', $reference );
|
||||
@@ -753,7 +753,7 @@ class Language extends BaseLanguage
|
||||
foreach ($aXMLForms as $xmlFormPath) {
|
||||
$xmlFormFile = str_replace( chr( 92 ), '/', $xmlFormPath );
|
||||
$xmlFormFile = str_replace( PATH_PLUGINS . $plugin . PATH_SEP , '', $xmlFormPath );
|
||||
$dynaForm = new dynaFormHandler( $xmlFormPath );
|
||||
$dynaForm = new DynaformHandler( $xmlFormPath );
|
||||
$dynaNodes = $dynaForm->getFields();
|
||||
//get all fields of each xmlform
|
||||
foreach ($dynaNodes as $oNode) {
|
||||
|
||||
@@ -374,7 +374,7 @@ class Step extends BaseStep
|
||||
while ($oDataset->next()) {
|
||||
$aRow1 = $oDataset->getRow();
|
||||
//print_r($aRow1);
|
||||
$dynHandler = new dynaFormHandler(PATH_DYNAFORM . $sproUid . PATH_SEP . $aRow1["DYN_UID"] . ".xml");
|
||||
$dynHandler = new DynaformHandler(PATH_DYNAFORM . $sproUid . PATH_SEP . $aRow1["DYN_UID"] . ".xml");
|
||||
$dynFields = $dynHandler->getFields();
|
||||
$sxmlgrid = '';
|
||||
$sType = '';
|
||||
@@ -477,7 +477,7 @@ class Step extends BaseStep
|
||||
$oDataset->next();
|
||||
while ($aRow = $oDataset->getRow()) {
|
||||
if ($aRow['DYN_TYPE'] == 'xmlform') {
|
||||
$dynHandler = new dynaFormHandler( PATH_DYNAFORM . $aRow['DYN_FILENAME'] . ".xml" );
|
||||
$dynHandler = new DynaformHandler( PATH_DYNAFORM . $aRow['DYN_FILENAME'] . ".xml" );
|
||||
$dynFields = $dynHandler->getFields();
|
||||
$sxmlgrid = '';
|
||||
$sType = '';
|
||||
@@ -547,7 +547,7 @@ class Step extends BaseStep
|
||||
while ($oDataset->next()) {
|
||||
$aRow1 = $oDataset->getRow();
|
||||
|
||||
$dynHandler = new dynaFormHandler( PATH_DYNAFORM . $sproUid . "/" . $sObjUID . ".xml" );
|
||||
$dynHandler = new DynaformHandler( PATH_DYNAFORM . $sproUid . "/" . $sObjUID . ".xml" );
|
||||
$dynFields = $dynHandler->getFields();
|
||||
$sxmlgrid = '';
|
||||
$sType = '';
|
||||
|
||||
@@ -490,4 +490,23 @@ class Users extends BaseUsers
|
||||
$criteria->add(UsersPeer::USR_ID, $id);
|
||||
return UsersPeer::doSelect($criteria)[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc} except USR_PASSWORD, for security reasons.
|
||||
*
|
||||
* @param string $keyType One of the class type constants TYPE_PHPNAME,
|
||||
* TYPE_COLNAME, TYPE_FIELDNAME, TYPE_NUM
|
||||
* @return an associative array containing the field names (as keys) and field values
|
||||
*/
|
||||
public function toArray($keyType = BasePeer::TYPE_PHPNAME)
|
||||
{
|
||||
$key = UsersPeer::translateFieldName(
|
||||
UsersPeer::USR_PASSWORD,
|
||||
BasePeer::TYPE_COLNAME,
|
||||
$keyType
|
||||
);
|
||||
$array = parent::toArray($keyType);
|
||||
unset($array[$key]);
|
||||
return $array;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user