diff --git a/gulliver/system/class.table.php b/gulliver/system/class.table.php index 3a43acd9a..945f8e065 100644 --- a/gulliver/system/class.table.php +++ b/gulliver/system/class.table.php @@ -1,1207 +1,1193 @@ -. - * - * For more information, contact Colosa Inc, 2566 Le Jeune Rd., - * Coral Gables, FL, 33134, USA, or email info@colosa.com. - * - */ -/** - * - * - * - * - * Table class definition - * Render table - * - * @package gulliver.system - * @author Fernando Ontiveros Lira - * @copyright (C) 2002 by Colosa Development Team. - * - */ - -class Table -{ - var $Columns = null; - var $Labels = null; - var $rows_per_page = 25; - var $show_nummbers = null; - var $first_row = 0; - var $row_pos = 0; +. + * + * For more information, contact Colosa Inc, 2566 Le Jeune Rd., + * Coral Gables, FL, 33134, USA, or email info@colosa.com. + * + */ +/** + * + * + * + * + * + * + * Table class definition + * Render table + * + * @package gulliver.system + * @author Fernando Ontiveros Lira + * @copyright (C) 2002 by Colosa Development Team. + * + */ + +class Table +{ + var $Columns = null; + var $Labels = null; + var $rows_per_page = 25; + var $show_nummbers = null; + var $first_row = 0; + var $row_pos = 0; var $Action = ""; //not used var $ActionLabel = "Continuar"; //not used - var $_dbc = null; - var $_dbses = null; - var $_dbset = null; - var $_source = ""; - var $DefaultOrder = "UID"; - var $DefaultOrderDir = 'ASC'; - var $CustomOrder = ""; - var $WhereClause = ""; - var $_row_values = null; - var $_ordered = true; - var $orderprefix = ""; - var $CountQry = ""; - var $filtro = 1; - var $title = ''; - - /** - * Asocia un arreglo con valores de traducci?n/conversi?n a un contexto - * - * @var array - */ - var $contexto = null; - - /** - * Arreglo que contiene las cadenas que van a ser usadas al traducir/convertir - * - * @var array - */ - var $translate = null; - - /** - * Establece el ?ltimo contexto utilizado - * - * @var string - */ - var $_contexto = ''; - - /** - * Set conecction using default values - * - * @author Fernando Ontiveros Lira - * @access public - * @param string $objConnection connection string - * @return void - */ - function Table ($objConnection = null) - { - $this->SetTo( $objConnection ); - } - - /** - * Set conecction using default values - * - * @author Fernando Ontiveros Lira - * @access public - * @param string $objConnection connection string - * @return void - */ - function SetTo ($objConnection = null) - { - $this->_dbc = $objConnection; - } - - /** - * Set query string - * - * @author Fernando Ontiveros Lira - * @access public - * @param string $stQry query string - * @param string $stDefaultOrder index to order by, default value='UID' - * @return void - */ - function SetSource ($stQry = "", $stDefaultOrder = "UID", $stDefaultOrderDir = 'ASC') - { + var $_dbc = null; + var $_dbses = null; + var $_dbset = null; + var $_source = ""; + var $DefaultOrder = "UID"; + var $DefaultOrderDir = 'ASC'; + var $CustomOrder = ""; + var $WhereClause = ""; + var $_row_values = null; + var $_ordered = true; + var $orderprefix = ""; + var $CountQry = ""; + var $filtro = 1; + var $title = ''; + + /** + * Asocia un arreglo con valores de traducci?n/conversi?n a un contexto + * + * @var array + */ + var $contexto = null; + + /** + * Arreglo que contiene las cadenas que van a ser usadas al traducir/convertir + * + * @var array + */ + var $translate = null; + + /** + * Establece el ?ltimo contexto utilizado + * + * @var string + */ + var $_contexto = ''; + + /** + * Set conecction using default values + * + * @author Fernando Ontiveros Lira + * @access public + * @param string $objConnection connection string + * @return void + */ + function Table ($objConnection = null) + { + $this->SetTo( $objConnection ); + } + + /** + * Set conecction using default values + * + * @author Fernando Ontiveros Lira + * @access public + * @param string $objConnection connection string + * @return void + */ + function SetTo ($objConnection = null) + { + $this->_dbc = $objConnection; + } + + /** + * Set query string + * + * @author Fernando Ontiveros Lira + * @access public + * @param string $stQry query string + * @param string $stDefaultOrder index to order by, default value='UID' + * @return void + */ + function SetSource ($stQry = "", $stDefaultOrder = "UID", $stDefaultOrderDir = 'ASC') + { //to fix missing value for variable orderDir, when between pages changes. - $url1 = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '?'; - $url2 = strstr( $_SERVER['HTTP_REFERER'] . '?', $_SERVER['HTTP_HOST'] ); - $url1 = substr( $url1, 0, strpos( $url1, '?' ) ); - $url2 = substr( $url2, 0, strpos( $url2, '?' ) ); - if ($url1 != $url2) { - if (isset( $_SESSION['OrderBy'] )) { - unset( $_SESSION['OrderBy'] ); - } - if (isset( $_SESSION['OrderDir'] )) { - unset( $_SESSION['OrderDir'] ); - } - } - $this->_source = $stQry; - $this->DefaultOrder = $stDefaultOrder; - $this->DefaultOrderDir = $stDefaultOrderDir; - } - - /** - * Obtains query string asociated - * - * @author Fernando Ontiveros Lira - * @access public - * @return void - */ - function GetSource () - { - global $HTTP_GET_VARS; - global $HTTP_SESSION_VARS; - $stOrderByDir = $this->DefaultOrderDir; - if (isset( $HTTP_SESSION_VARS['OrderDir'] ) && ($HTTP_SESSION_VARS['OrderDir'] == 'DESC' || $HTTP_SESSION_VARS['OrderDir'] == 'ASC')) - $stOrderByDir = $HTTP_SESSION_VARS['OrderDir']; - - $stQry = $this->_source; - if ($this->WhereClause != "") { - $stQry .= " WHERE " . $this->WhereClause; - } - - if ($this->_ordered == true) { - $stOrderBy = (isset( $HTTP_GET_VARS[$this->orderprefix . 'order'] ) ? $HTTP_GET_VARS[$this->orderprefix . 'order'] : ''); - $stOrderLb = (isset( $HTTP_GET_VARS[$this->orderprefix . 'label'] ) ? $HTTP_GET_VARS[$this->orderprefix . 'label'] : ''); - + $url1 = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '?'; + $url2 = strstr( $_SERVER['HTTP_REFERER'] . '?', $_SERVER['HTTP_HOST'] ); + $url1 = substr( $url1, 0, strpos( $url1, '?' ) ); + $url2 = substr( $url2, 0, strpos( $url2, '?' ) ); + if ($url1 != $url2) { + if (isset( $_SESSION['OrderBy'] )) { + unset( $_SESSION['OrderBy'] ); + } + if (isset( $_SESSION['OrderDir'] )) { + unset( $_SESSION['OrderDir'] ); + } + } + $this->_source = $stQry; + $this->DefaultOrder = $stDefaultOrder; + $this->DefaultOrderDir = $stDefaultOrderDir; + } + + /** + * Obtains query string asociated + * + * @author Fernando Ontiveros Lira + * @access public + * @return void + */ + function GetSource () + { + global $HTTP_GET_VARS; + global $HTTP_SESSION_VARS; + $stOrderByDir = $this->DefaultOrderDir; + if (isset( $HTTP_SESSION_VARS['OrderDir'] ) && ($HTTP_SESSION_VARS['OrderDir'] == 'DESC' || $HTTP_SESSION_VARS['OrderDir'] == 'ASC')) { + $stOrderByDir = $HTTP_SESSION_VARS['OrderDir']; + } + + $stQry = $this->_source; + if ($this->WhereClause != "") { + $stQry .= " WHERE " . $this->WhereClause; + } + + if ($this->_ordered == true) { + $stOrderBy = (isset( $HTTP_GET_VARS[$this->orderprefix . 'order'] ) ? $HTTP_GET_VARS[$this->orderprefix . 'order'] : ''); + $stOrderLb = (isset( $HTTP_GET_VARS[$this->orderprefix . 'label'] ) ? $HTTP_GET_VARS[$this->orderprefix . 'label'] : ''); + //if( isset( $HTTP_SESSION_VARS['OrderDir'] ) && $HTTP_SESSION_VARS['OrderDir'] == $stOrderBy ) { - if ($stOrderLb) { - if ($HTTP_SESSION_VARS['OrderDir'] == 'ASC') { - $stOrderByDir = 'DESC'; - } elseif ($HTTP_SESSION_VARS['OrderDir'] == 'DESC') { - $stOrderByDir = 'ASC'; - } - } elseif (isset( $HTTP_SESSION_VARS['OrderDir'] ) && $HTTP_SESSION_VARS['OrderDir'] != '') { - $stOrderByDir = $HTTP_SESSION_VARS['OrderDir']; - } else { - $stOrderByDir = $this->DefaultOrderDir; - } - - if ($stOrderBy == "") { - if ($this->DefaultOrder != "") { - $aux = str_replace( ' ASC|', '', $this->DefaultOrder . '|' ); - $aux = str_replace( ' DESC|', '', $aux ); - $aux = str_replace( '|', '', $aux ); - $stQry .= " ORDER BY " . $aux . " " . $stOrderByDir; - } - } else { - $stQry .= " ORDER BY " . $stOrderBy; - if ($stOrderByDir != "") { - $stQry .= " $stOrderByDir"; - - } - } - } else { - if ($this->DefaultOrder != "") { - $stQry .= " ORDER BY " . $this->DefaultOrder . " " . (isset( $stOrderBy ) ? $stOrderBy : ''); - } - } + if ($stOrderLb) { + if ($HTTP_SESSION_VARS['OrderDir'] == 'ASC') { + $stOrderByDir = 'DESC'; + } elseif ($HTTP_SESSION_VARS['OrderDir'] == 'DESC') { + $stOrderByDir = 'ASC'; + } + } elseif (isset( $HTTP_SESSION_VARS['OrderDir'] ) && $HTTP_SESSION_VARS['OrderDir'] != '') { + $stOrderByDir = $HTTP_SESSION_VARS['OrderDir']; + } else { + $stOrderByDir = $this->DefaultOrderDir; + } + + if ($stOrderBy == "") { + if ($this->DefaultOrder != "") { + $aux = str_replace( ' ASC|', '', $this->DefaultOrder . '|' ); + $aux = str_replace( ' DESC|', '', $aux ); + $aux = str_replace( '|', '', $aux ); + $stQry .= " ORDER BY " . $aux . " " . $stOrderByDir; + } + } else { + $stQry .= " ORDER BY " . $stOrderBy; + if ($stOrderByDir != "") { + $stQry .= " $stOrderByDir"; + + } + } + } else { + if ($this->DefaultOrder != "") { + $stQry .= " ORDER BY " . $this->DefaultOrder . " " . (isset( $stOrderBy ) ? $stOrderBy : ''); + } + } //print $stQry; - - - $HTTP_SESSION_VARS['OrderBy'] = isset( $stOrderBy ) ? $stOrderBy : ''; - $HTTP_SESSION_VARS['OrderDir'] = $stOrderByDir; - - $page = (isset( $HTTP_GET_VARS["page"] ) ? $HTTP_GET_VARS["page"] : ''); - - $tr = (isset( $HTTP_SESSION_VARS['TP'] ) ? $HTTP_SESSION_VARS['TP'] : ''); - - $desde = 0; - - if ($page != "") { + + + $HTTP_SESSION_VARS['OrderBy'] = isset( $stOrderBy ) ? $stOrderBy : ''; + $HTTP_SESSION_VARS['OrderDir'] = $stOrderByDir; + + $page = (isset( $HTTP_GET_VARS["page"] ) ? $HTTP_GET_VARS["page"] : ''); + + $tr = (isset( $HTTP_SESSION_VARS['TP'] ) ? $HTTP_SESSION_VARS['TP'] : ''); + + $desde = 0; + + if ($page != "") { //$desde=(($page-1)*25); - $desde = (($page - 1) * $this->rows_per_page); - + $desde = (($page - 1) * $this->rows_per_page); + //$strLimit = " LIMIT $desde , 25"; - $strLimit = " LIMIT $desde , $this->rows_per_page"; - if (PEAR_DATABASE == 'pgsql') { + $strLimit = " LIMIT $desde , $this->rows_per_page"; + if (PEAR_DATABASE == 'pgsql') { //$strLimit = " OFFSET $desde LIMIT 25"; - $strLimit = " OFFSET $desde LIMIT $this->rows_per_page"; - } - $stQry .= $strLimit; - } - + $strLimit = " OFFSET $desde LIMIT $this->rows_per_page"; + } + $stQry .= $strLimit; + } + //print $stQry; - $this->_dbses = new DBSession( $this->_dbc ); - $this->_dbses->UseDB( DB_NAME ); - $this->_dbses->Query( $stQry ); - $this->_dbset = new DBRecordset( $this->_dbses->result ); - } - - /** - * Obtains number of elements of asociated query - * - * @author Fernando Ontiveros Lira - * @access public - * @return int - */ - function TotalCount () - { - global $HTTP_GET_VARS; - global $HTTP_SESSION_VARS; - - $stQry = $this->_source; - if ($this->WhereClause != "") { - $stQry .= " WHERE " . $this->WhereClause; - } - if ($this->_ordered == true) { - $stOrderBy = (isset( $HTTP_GET_VARS[$this->orderprefix . 'order'] ) ? $HTTP_GET_VARS[$this->orderprefix . 'order'] : ''); - if ($stOrderBy == "") { - if ($this->DefaultOrder != "") { - $stQry .= " ORDER BY " . $this->DefaultOrder; - } - } else { - $stQry .= " ORDER BY " . $stOrderBy; - } - } else { - if ($this->DefaultOrder != "") { - $stQry .= " ORDER BY " . $this->DefaultOrder; - } - } - - $dbses = new DBSession( $this->_dbc ); - $dbses->UseDB( DB_NAME ); - $dset = $dbses->Execute( $stQry ); - return $dset->Count(); - } - - /** - * Obtains number of elements of asociated recordset - * - * @author Fernando Ontiveros Lira - * @access public - * @return int - */ - function Count () - { - if (is_object( $this->_dbset )) { - return $this->_dbset->Count(); - } else { - return 0; - } - } - - /** - * Obtains row position - * - * @author Fernando Ontiveros Lira - * @access public - * @return int - */ - function CurRow () - { - return $this->row_pos; - } - - /** - * Obtains number columns - * - * @author Fernando Ontiveros Lira - * @access public - * @return int - */ - function ColumnCount () - { - $result = 0; - if (is_array( $this->Columns )) { - $result = count( $this->Columns ); - } - return $result; - } - - /** - * Obtains a row array and moves the internal data pointer ahead - * - * @author Fernando Ontiveros Lira - * @access public - * @return array - */ - function Read () - { - $this->_row_values = $this->_dbset->Read(); - $this->row_pos ++; - return $this->_row_values; - } - - /** - * Moves the internal row pointer - * - * @author Fernando Ontiveros Lira - * @access public - * @param int $intPos position to seek - * @return int - */ - function Seek ($intPos = 0) - { - $result = $this->_dbset->Seek( $intPos ); - if ($result) { - $this->row_pos = $intPos; - } - return $result; - } - - /** - * Moves the internal row pointer to first position - * - * @author Fernando Ontiveros Lira - * @access public - * @return int - */ - function MoveFirst () - { - if ($this->Count() != 0) { - if ($this->first_row < $this->Count()) { - $this->Seek( $this->first_row ); - } - } - } - - /** - * Verify if row position is in the end - * - * @author Fernando Ontiveros Lira - * @access public - * @return boolean - */ - function EOF () - { - $result = false; - if ($this->Count() == 0) { - $result = true; - } else { - if ($this->row_pos >= $this->Count()) { - $result = true; - } else { - if ($this->rows_per_page != 0) { - if ($this->row_pos >= $this->first_row + $this->rows_per_page) { - $result = true; - } - } - } - } - return $result; - } - - /** - * Set values to add a column to show in the dynaform - * - * @author Fernando Ontiveros Lira - * @access public - * @param $strLabel - * @param $strType - * @param $strName - * @param $strAlign - * @param $intWidth - * @param $strTarget - * @param $strContent - * @return void - */ - function AddColumn ($strLabel = "", $strType = "text", $strName = "", $strAlign = "left", $intWidth = 0, $strTarget = "", $strContent = "") - { - $tmpCol = array ("Name" => $strName,"Type" => $strType,"Width" => $intWidth,"Align" => $strAlign,"Target" => $strTarget,"Content" => $strContent - ); - $pos = 0; - if (is_array( $this->Columns )) { - $pos = count( $this->Columns ); - } - $this->Columns[$pos] = $tmpCol; - $this->Labels[$pos] = $strLabel; - } - - /** - * Set values to add a column to show in the dynaform - * - * @author Fernando Ontiveros Lira - * @access public - * @param $strType - * @param $strName - * @param $strAlign - * @param $intWidth - * @param $strTarget - * @param $strContent - * @param $strExtra - * @param $strCondition - * @param $orderByThis - * @return void - */ - function AddRawColumn ($strType = "text", $strName = "", $strAlign = "left", $intWidth = 0, $strTarget = "", $strContent = "", $strExtra = "", $strCondition = "", $orderByThis = true) - { - $tmpCol = array ("Name" => $strName,"Type" => $strType,"Width" => $intWidth,"Align" => $strAlign,"Target" => $strTarget,"Content" => $strContent,"Extra" => $strExtra,"Condition" => $strCondition,"orderByThis" => $orderByThis - ); - $pos = 0; - if (is_array( $this->Columns )) { - $pos = count( $this->Columns ); - } - $this->Columns[$pos] = $tmpCol; - $this->Labels[$pos] = ""; - } - - /** - * Show dynaform's title - * - * @author Fernando Ontiveros Lira - * @access public - * @param $pa - * @param $intPos - * @param $strClass - * @return void - */ - function RenderTitle ($pa, $intPos = 1, $strClass = "tblHeader") - { - if (! defined( 'ENABLE_ENCRYPT' )) { - define( 'ENABLE_ENCRYPT', 'no' ); - } - global $HTTP_SESSION_VARS; - $col = $this->Columns[$intPos]; - $order = ! ($col["Type"] == "image"); - if ($this->_ordered == true && $order) { - $res = " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= ">"; - + $this->_dbses = new DBSession( $this->_dbc ); + $this->_dbses->UseDB( DB_NAME ); + $this->_dbses->Query( $stQry ); + $this->_dbset = new DBRecordset( $this->_dbses->result ); + } + + /** + * Obtains number of elements of asociated query + * + * @author Fernando Ontiveros Lira + * @access public + * @return int + */ + function TotalCount () + { + global $HTTP_GET_VARS; + global $HTTP_SESSION_VARS; + + $stQry = $this->_source; + if ($this->WhereClause != "") { + $stQry .= " WHERE " . $this->WhereClause; + } + if ($this->_ordered == true) { + $stOrderBy = (isset( $HTTP_GET_VARS[$this->orderprefix . 'order'] ) ? $HTTP_GET_VARS[$this->orderprefix . 'order'] : ''); + if ($stOrderBy == "") { + if ($this->DefaultOrder != "") { + $stQry .= " ORDER BY " . $this->DefaultOrder; + } + } else { + $stQry .= " ORDER BY " . $stOrderBy; + } + } else { + if ($this->DefaultOrder != "") { + $stQry .= " ORDER BY " . $this->DefaultOrder; + } + } + + $dbses = new DBSession( $this->_dbc ); + $dbses->UseDB( DB_NAME ); + $dset = $dbses->Execute( $stQry ); + return $dset->Count(); + } + + /** + * Obtains number of elements of asociated recordset + * + * @author Fernando Ontiveros Lira + * @access public + * @return int + */ + function Count () + { + if (is_object( $this->_dbset )) { + return $this->_dbset->Count(); + } else { + return 0; + } + } + + /** + * Obtains row position + * + * @author Fernando Ontiveros Lira + * @access public + * @return int + */ + function CurRow () + { + return $this->row_pos; + } + + /** + * Obtains number columns + * + * @author Fernando Ontiveros Lira + * @access public + * @return int + */ + function ColumnCount () + { + $result = 0; + if (is_array( $this->Columns )) { + $result = count( $this->Columns ); + } + return $result; + } + + /** + * Obtains a row array and moves the internal data pointer ahead + * + * @author Fernando Ontiveros Lira + * @access public + * @return array + */ + function Read () + { + $this->_row_values = $this->_dbset->Read(); + $this->row_pos ++; + return $this->_row_values; + } + + /** + * Moves the internal row pointer + * + * @author Fernando Ontiveros Lira + * @access public + * @param int $intPos position to seek + * @return int + */ + function Seek ($intPos = 0) + { + $result = $this->_dbset->Seek( $intPos ); + if ($result) { + $this->row_pos = $intPos; + } + return $result; + } + + /** + * Moves the internal row pointer to first position + * + * @author Fernando Ontiveros Lira + * @access public + * @return int + */ + function MoveFirst () + { + if ($this->Count() != 0) { + if ($this->first_row < $this->Count()) { + $this->Seek( $this->first_row ); + } + } + } + + /** + * Verify if row position is in the end + * + * @author Fernando Ontiveros Lira + * @access public + * @return boolean + */ + function EOF () + { + $result = false; + if ($this->Count() == 0) { + $result = true; + } else { + if ($this->row_pos >= $this->Count()) { + $result = true; + } else { + if ($this->rows_per_page != 0) { + if ($this->row_pos >= $this->first_row + $this->rows_per_page) { + $result = true; + } + } + } + } + return $result; + } + + /** + * Set values to add a column to show in the dynaform + * + * @author Fernando Ontiveros Lira + * @access public + * @param $strLabel + * @param $strType + * @param $strName + * @param $strAlign + * @param $intWidth + * @param $strTarget + * @param $strContent + * @return void + */ + function AddColumn ($strLabel = "", $strType = "text", $strName = "", $strAlign = "left", $intWidth = 0, $strTarget = "", $strContent = "") + { + $tmpCol = array ("Name" => $strName,"Type" => $strType,"Width" => $intWidth,"Align" => $strAlign,"Target" => $strTarget,"Content" => $strContent + ); + $pos = 0; + if (is_array( $this->Columns )) { + $pos = count( $this->Columns ); + } + $this->Columns[$pos] = $tmpCol; + $this->Labels[$pos] = $strLabel; + } + + /** + * Set values to add a column to show in the dynaform + * + * @author Fernando Ontiveros Lira + * @access public + * @param $strType + * @param $strName + * @param $strAlign + * @param $intWidth + * @param $strTarget + * @param $strContent + * @param $strExtra + * @param $strCondition + * @param $orderByThis + * @return void + */ + function AddRawColumn ($strType = "text", $strName = "", $strAlign = "left", $intWidth = 0, $strTarget = "", $strContent = "", $strExtra = "", $strCondition = "", $orderByThis = true) + { + $tmpCol = array ("Name" => $strName,"Type" => $strType,"Width" => $intWidth,"Align" => $strAlign,"Target" => $strTarget,"Content" => $strContent,"Extra" => $strExtra,"Condition" => $strCondition,"orderByThis" => $orderByThis + ); + $pos = 0; + if (is_array( $this->Columns )) { + $pos = count( $this->Columns ); + } + $this->Columns[$pos] = $tmpCol; + $this->Labels[$pos] = ""; + } + + /** + * Show dynaform's title + * + * @author Fernando Ontiveros Lira + * @access public + * @param $pa + * @param $intPos + * @param $strClass + * @return void + */ + function RenderTitle ($pa, $intPos = 1, $strClass = "tblHeader") + { + if (! defined( 'ENABLE_ENCRYPT' )) { + define( 'ENABLE_ENCRYPT', 'no' ); + } + global $HTTP_SESSION_VARS; + $col = $this->Columns[$intPos]; + $order = ! ($col["Type"] == "image"); + if ($this->_ordered == true && $order) { + $res = " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= ">"; + //$res .= "" . $this->Labels[$intPos] . ""; - + $res .= "\">" . $this->Labels[$intPos] . ""; + $res .= "\n"; //echo $res;die; - } else { - $res = " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= ">"; - $res .= $this->Labels[$intPos] . "\n"; - } - return $res; - } - - /** - * Show dynaform's title using ajax - * - * @author Fernando Ontiveros Lira - * @access public - * @param $pa - * @param $intPos - * @param $strClass - * @return void - */ - function RenderTitle_ajax ($pa, $intPos = 1, $strClass = "tblHeader") - { - global $HTTP_SESSION_VARS; - $col = $this->Columns[$intPos]; - $order = ! (($col["Type"] == "image") || ($col["Type"] == "jsimglink")); - - if ($this->_ordered == true && $order) { - $res = " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= ">"; - + } else { + $res = " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= ">"; + $res .= $this->Labels[$intPos] . "\n"; + } + return $res; + } + + /** + * Show dynaform's title using ajax + * + * @author Fernando Ontiveros Lira + * @access public + * @param $pa + * @param $intPos + * @param $strClass + * @return void + */ + function RenderTitle_ajax ($pa, $intPos = 1, $strClass = "tblHeader") + { + global $HTTP_SESSION_VARS; + $col = $this->Columns[$intPos]; + $order = ! (($col["Type"] == "image") || ($col["Type"] == "jsimglink")); + + if ($this->_ordered == true && $order) { + $res = " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= ">"; + //$res .= "Columns[$intPos]['Name']; - $res .= "Javascript:changetableOrder('$_temp_var',$pa)"; + $res .= "Columns[$intPos]['Name']; + $res .= "Javascript:changetableOrder('$_temp_var',$pa)"; //$res .= $_SERVER['REDIRECT_URL'] . "?order=" . $this->Columns[$intPos]['Name']."&page=".$pa."&label=true"; - $res .= "\">" . $this->Labels[$intPos] . ""; - if ($HTTP_SESSION_VARS['OrderBy'] == $this->Columns[$intPos]['Name']) { - if ($HTTP_SESSION_VARS['OrderDir'] == 'DESC') { - $res .= " "; - } else { - $res .= " "; - } - } - + $res .= "\">" . $this->Labels[$intPos] . ""; + if ($HTTP_SESSION_VARS['OrderBy'] == $this->Columns[$intPos]['Name']) { + if ($HTTP_SESSION_VARS['OrderDir'] == 'DESC') { + $res .= " "; + } else { + $res .= " "; + } + } + $res .= "\n"; //echo $res;die; - } else { - $res = " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= ">"; - $res .= $this->Labels[$intPos] . "\n"; - } - return $res; - } - - /** - * Show dynaform title - * - * @author Fernando Ontiveros Lira - * @access public - * @param $pa - * @param $fil - * @param $intPos - * @param $strClass - * @param $auxgetval - * @return void - */ - function RenderTitle2 ($pa, $fil, $intPos, $strClass = "tblHeader", $auxgetval = '') - { - if (! defined( 'ENABLE_ENCRYPT' )) { - define( 'ENABLE_ENCRYPT', 'no' ); - } - global $HTTP_SESSION_VARS; - - if ($auxgetval == '') { - $targ = SYS_TARGET . ".html"; - } else { - $targ = SYS_TARGET . '.html?' . $auxgetval; - } - $target = (ENABLE_ENCRYPT == 'yes' ? G::encryptUrl( urldecode( $targ ), URL_KEY ) : $targ); - - $col = $this->Columns[$intPos]; - - if ($col['Type'] == 'hidden') { - return ''; - } - $order = ! ($col["Type"] == "image"); - - if (($this->_ordered == true) && ($order) && ($this->Columns[$intPos]['orderByThis'])) { - $res = ""; - if (($this->show_nummbers) and ($intPos == 0)) { - $res = "# "; - } - $res .= " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= "> "; - - $res .= " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= ">"; + $res .= $this->Labels[$intPos] . "\n"; + } + return $res; + } + + /** + * Show dynaform title + * + * @author Fernando Ontiveros Lira + * @access public + * @param $pa + * @param $fil + * @param $intPos + * @param $strClass + * @param $auxgetval + * @return void + */ + function RenderTitle2 ($pa, $fil, $intPos, $strClass = "tblHeader", $auxgetval = '') + { + if (! defined( 'ENABLE_ENCRYPT' )) { + define( 'ENABLE_ENCRYPT', 'no' ); + } + global $HTTP_SESSION_VARS; + + if ($auxgetval == '') { + $targ = SYS_TARGET . ".html"; + } else { + $targ = SYS_TARGET . '.html?' . $auxgetval; + } + $target = (ENABLE_ENCRYPT == 'yes' ? G::encryptUrl( urldecode( $targ ), URL_KEY ) : $targ); + + $col = $this->Columns[$intPos]; + + if ($col['Type'] == 'hidden') { + return ''; + } + $order = ! ($col["Type"] == "image"); + + if (($this->_ordered == true) && ($order) && ($this->Columns[$intPos]['orderByThis'])) { + $res = ""; + if (($this->show_nummbers) and ($intPos == 0)) { + $res = "# "; + } + $res .= " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= "> "; + + $res .= "" . $this->Labels[$intPos] . ""; - - $res .= "\n"; - } else { - $col = $this->Columns[$intPos]; - $res = " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= ">"; - $res .= (isset( $this->Labels[$intPos] ) ? $this->Labels[$intPos] : '') . "\n"; - } - return $res; - } - - /** - * Show dynaform column - * - * @author Fernando Ontiveros Lira - * @access public - * @param $intPos - * @param $strClass - * @param $strClassLink - * @param $number - * @param $renderTD if this value = 1, this function will include the TD tags - * @return void - */ - function RenderColumn ($intPos = 0, $strClass = "tblCell", $strClassLink = "tblCellA", $number = 0, $renderTD = 1) - { - if (! defined( 'ENABLE_ENCRYPT' )) { - define( 'ENABLE_ENCRYPT', 'no' ); - } - global $G_DATE_FORMAT; - global $G_TABLE_DATE_FORMAT; - $col = $this->Columns[$intPos]; - - switch (substr( $col['Name'], 0, 1 )) { - case '=': + $res .= "\">" . $this->Labels[$intPos] . ""; + + $res .= "\n"; + } else { + $col = $this->Columns[$intPos]; + $res = " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= ">"; + $res .= (isset( $this->Labels[$intPos] ) ? $this->Labels[$intPos] : '') . "\n"; + } + return $res; + } + + /** + * Show dynaform column + * + * @author Fernando Ontiveros Lira + * @access public + * @param $intPos + * @param $strClass + * @param $strClassLink + * @param $number + * @param $renderTD if this value = 1, this function will include the TD tags + * @return void + */ + function RenderColumn ($intPos = 0, $strClass = "tblCell", $strClassLink = "tblCellA", $number = 0, $renderTD = 1) + { + if (! defined( 'ENABLE_ENCRYPT' )) { + define( 'ENABLE_ENCRYPT', 'no' ); + } + global $G_DATE_FORMAT; + global $G_TABLE_DATE_FORMAT; + $col = $this->Columns[$intPos]; + + switch (substr( $col['Name'], 0, 1 )) { + case '=': // Si empieza con '=' entonces se toma como valor constante - $val = substr( $col['Name'], 1, strlen( $col['Name'] ) - 1 ); - break; - case '%': + $val = substr( $col['Name'], 1, strlen( $col['Name'] ) - 1 ); + break; + case '%': // Si empieza con '%' entonces traducir/convertir el valor - $fieldname = substr( $col['Name'], 1, strlen( $col['Name'] ) - 1 ); - $val = $this->_row_values[$fieldname]; - $val = $this->translateValue( $this->_contexto, $val, SYS_LANG ); - break; - default: - $fieldname = $col['Name']; - $val = isset( $this->_row_values[$fieldname] ) ? $this->_row_values[$fieldname] : ''; - } - - $res = ""; - if (($this->show_nummbers) and ($intPos == 0)) { - $res = "$number"; - } - if (! (stristr( $val, "script" ) === false)) { - $val = htmlentities( $val, ENT_QUOTES, 'utf-8' ); - } - - if ($renderTD == 1) { - $res .= " 0) { - $res .= " width=\"" . $col["Width"] . "\""; - } - $res .= "> "; - } - - switch ($col["Type"]) { - case 'hidden': - return ''; - break; - case "text": - if ($val != "") { - $res .= G::unhtmlentities( $val, ENT_QUOTES, 'utf-8' ); - } else { - $res .= " "; - } - break; - case "text-dontSearch": - if ($val != "") { - $res .= G::unhtmlentities( $val ); - } else { - $res .= " "; - } - break; - case "html": - if ($val != "") { - $res .= ($val); - } else { - $res .= " "; - } - break; - case "textPlain": - if ($val != "") { - $res .= ($this->ParsingFromHtml( G::unhtmlentities( $val ), "300" )); + $fieldname = substr( $col['Name'], 1, strlen( $col['Name'] ) - 1 ); + $val = $this->_row_values[$fieldname]; + $val = $this->translateValue( $this->_contexto, $val, SYS_LANG ); + break; + default: + $fieldname = $col['Name']; + $val = isset( $this->_row_values[$fieldname] ) ? $this->_row_values[$fieldname] : ''; + } + + $res = ""; + if (($this->show_nummbers) and ($intPos == 0)) { + $res = "$number"; + } + if (! (stristr( $val, "script" ) === false)) { + $val = htmlentities( $val, ENT_QUOTES, 'utf-8' ); + } + + if ($renderTD == 1) { + $res .= " 0) { + $res .= " width=\"" . $col["Width"] . "\""; + } + $res .= "> "; + } + + switch ($col["Type"]) { + case 'hidden': + return ''; + break; + case "text": + if ($val != "") { + $res .= G::unhtmlentities( $val, ENT_QUOTES, 'utf-8' ); + } else { + $res .= " "; + } + break; + case "text-dontSearch": + if ($val != "") { + $res .= G::unhtmlentities( $val ); + } else { + $res .= " "; + } + break; + case "html": + if ($val != "") { + $res .= ($val); + } else { + $res .= " "; + } + break; + case "textPlain": + if ($val != "") { + $res .= ($this->ParsingFromHtml( G::unhtmlentities( $val ), "300" )); //if ( $val != "" ) $res .= (($val)); - } else { - $res .= " "; - } - break; - case "currency": - if ($val != "") { - $aux = explode( ' ', $val ); - $format = number_format( (float) $aux[0], 2, ".", "," ); - $res .= htmlentities( $format . ' ' . (isset( $aux[1] ) ? $aux[1] : ''), ENT_QUOTES, 'utf-8' ); - } else { - $res .= " "; - } - break; - - case "currency2": - if ($val != "") { - $res .= G::NumberToCurrency( $val ); - } else { - $res .= "$ 0.00"; - } - break; - - case "percentage2": - if ($val != "") { - $res .= G::NumberToPercentage( $val ); - } else { - $res .= "0.00 %"; - } - break; - - case "percentage": - if ($val != "") { - $res .= htmlentities( number_format( (float) $val, 2, ".", "," ) . " %", ENT_QUOTES, 'utf-8' ); - } else { - $res .= " "; - } - break; - - case "date": - if ($val != "" && $val != '0000-00-00 00:00:00') { - $part = explode( ' ', $val ); - $aux = explode( '-', $part[0] ); - - switch ($G_DATE_FORMAT) { - case 'DD/MM/AAAA': - $res .= formatDate( '$d/$m/$Y $H:$i:$s', $val ); - break; - case 'MM/DD/AAAA': - $res .= formatDate( '$m/$d/$Y $H:$i:$s EST', $val ); - break; - case 'AAAA/MM/DD': - $res .= formatDate( '$Y/$m/$d $H:$i:$s', $val ); - break; - case 'LITERAL': - $res .= formatDate( '$M $d $Y', $val ); - break; - } - - } else { - $res .= " "; - } - break; - - case "email": - if ($val != "") { - $res .= ""; - $res .= $val; - $res .= ""; - } else { - $res .= " "; - } - break; - - case "ifpdf": - if ($val == '1') { - $image = ""; + } else { + $res .= " "; + } + break; + case "currency": + if ($val != "") { + $aux = explode( ' ', $val ); + $format = number_format( (float) $aux[0], 2, ".", "," ); + $res .= htmlentities( $format . ' ' . (isset( $aux[1] ) ? $aux[1] : ''), ENT_QUOTES, 'utf-8' ); + } else { + $res .= " "; + } + break; + case "currency2": + if ($val != "") { + $res .= G::NumberToCurrency( $val ); + } else { + $res .= "$ 0.00"; + } + break; + case "percentage2": + if ($val != "") { + $res .= G::NumberToPercentage( $val ); + } else { + $res .= "0.00 %"; + } + break; + case "percentage": + if ($val != "") { + $res .= htmlentities( number_format( (float) $val, 2, ".", "," ) . " %", ENT_QUOTES, 'utf-8' ); + } else { + $res .= " "; + } + break; + case "date": + if ($val != "" && $val != '0000-00-00 00:00:00') { + $part = explode( ' ', $val ); + $aux = explode( '-', $part[0] ); + + switch ($G_DATE_FORMAT) { + case 'DD/MM/AAAA': + $res .= formatDate( '$d/$m/$Y $H:$i:$s', $val ); + break; + case 'MM/DD/AAAA': + $res .= formatDate( '$m/$d/$Y $H:$i:$s EST', $val ); + break; + case 'AAAA/MM/DD': + $res .= formatDate( '$Y/$m/$d $H:$i:$s', $val ); + break; + case 'LITERAL': + $res .= formatDate( '$M $d $Y', $val ); + break; + } + } else { + $res .= " "; + } + break; + case "email": + if ($val != "") { + $res .= ""; + $res .= $val; + $res .= ""; + } else { + $res .= " "; + } + break; + case "ifpdf": + if ($val == '1') { + $image = ""; //valor - $tlabel = substr( $col["Content"], 0, 1 ); - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; + $tlabel = substr( $col["Content"], 0, 1 ); + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; //$res .= " $image "; //It open a new window... better the other way By JHL 16/11/06 - $res .= " $image "; - } else { - $res .= " "; - } - break; - - case "ifimg": - $image = ""; - if ($val == '1') { + $res .= " $image "; + } else { + $res .= " "; + } + break; + case "ifimg": + $image = ""; + if ($val == '1') { //valor - $tlabel = substr( $col["Content"], 0, 1 ); - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; - $res .= " $image "; - } else { - $res .= " "; - } - break; - - case "ifrtf": - if ($val == '1') { - $image = ""; + $tlabel = substr( $col["Content"], 0, 1 ); + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; + $res .= " $image "; + } else { + $res .= " "; + } + break; + case "ifrtf": + if ($val == '1') { + $image = ""; //valor - $tlabel = substr( $col["Content"], 0, 1 ); - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; + $tlabel = substr( $col["Content"], 0, 1 ); + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; //$res .= " $image "; //It open a new window... better the other way By JHL 16/11/06 - $res .= " $image "; - } else { - $res .= " "; - } - break; - - case "image": - - if (is_array( $col["Condition"] )) //By JHL to enable Condition to display a image -- New parameter Condition in Addrawcolumn -{ - $field_compare = $col["Condition"]['field']; - $tlabel = substr( $field_compare, 0, 1 ); - switch ($tlabel) { - case "&": - $vname = substr( $field_compare, 1, (strlen( $field_compare ) - 1) ); - $field_val = $this->_row_values[$vname]; - break; - } - - } else { - $val = ""; - } - // break; - - - case "textimage": - $AAS = $col['Extra']; - $val1 = " "; - // break; - case "image-text": - if (is_array( $col['Content'] ) && $col['Content'] != "") { - // Hay mas de un valor para el link - $values = $col['Content']; - $n = count( $values ); - - $res .= "_row_values[$vname]; - - $res .= $i == $n - 1 ? $lval : $lval . "/"; - break; - } - } - $res .= "\">" . strtoupper( $fieldname ) . "$val"; - } else - $val2 = "" . strtoupper( $fieldname ) . ""; + $res .= " $image "; + } else { + $res .= " "; + } + break; + case "image": + if (is_array( $col["Condition"] )) { + //By JHL to enable Condition to display a image -- New parameter Condition in Addrawcolumn + $field_compare = $col["Condition"]['field']; + $tlabel = substr( $field_compare, 0, 1 ); + switch ($tlabel) { + case "&": + $vname = substr( $field_compare, 1, (strlen( $field_compare ) - 1) ); + $field_val = $this->_row_values[$vname]; + break; + } + + } else { + $val = ""; + } + // break; + case "textimage": + $AAS = $col['Extra']; + $val1 = " "; // break; - - - case "link": - if ($val == "") - $res .= " "; - $title = ''; - if ($col["Type"] == 'link' && trim( isset( $this->_row_values['TOOLTIP'] ) ? $this->_row_values['TOOLTIP'] : '' )) - ; - $title = (isset( $this->_row_values['TOOLTIP'] ) ? "title=\" " . $this->_row_values['TOOLTIP'] . " \"" : ''); - if (is_array( $col['Content'] ) && $col['Content'] != "") { + case "image-text": + if (is_array( $col['Content'] ) && $col['Content'] != "") { // Hay mas de un valor para el link - $values = $col['Content']; - $n = count( $values ); - - $res .= "_row_values[$vname]; - - $res .= $i == $n - 1 ? $lval : $lval . "/"; - break; - } - } - $res .= "\">$val"; - } elseif ($col["Content"] != "" && ! is_array( $col['Content'] )) { - $tlabel = substr( $col["Content"], 0, 1 ); - switch ($tlabel) { - case "&": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; - if (ENABLE_ENCRYPT == 'yes') { - + $values = $col['Content']; + $n = count( $values ); + + $res .= "_row_values[$vname]; + + $res .= $i == $n - 1 ? $lval : $lval . "/"; + break; + } + } + $res .= "\">" . strtoupper( $fieldname ) . "$val"; + } else { + $val2 = "" . strtoupper( $fieldname ) . ""; + } + // break; + case "link": + if ($val == "") { + $res .= " "; + } + $title = ''; + if ($col["Type"] == 'link' && trim( isset( $this->_row_values['TOOLTIP'] ) ? $this->_row_values['TOOLTIP'] : '' )) + ; + $title = (isset( $this->_row_values['TOOLTIP'] ) ? "title=\" " . $this->_row_values['TOOLTIP'] . " \"" : ''); + if (is_array( $col['Content'] ) && $col['Content'] != "") { + // Hay mas de un valor para el link + $values = $col['Content']; + $n = count( $values ); + + $res .= "_row_values[$vname]; + + $res .= $i == $n - 1 ? $lval : $lval . "/"; + break; + } + } + $res .= "\">$val"; + } elseif ($col["Content"] != "" && ! is_array( $col['Content'] )) { + $tlabel = substr( $col["Content"], 0, 1 ); + switch ($tlabel) { + case "&": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; + if (ENABLE_ENCRYPT == 'yes') { + //$encoded = G::encrypt ( $col["Target"] . "/" . $lval . ".html", URL_KEY ); - $encoded = G::encryptUrl( $col["Target"] . "/" . $lval . ".html", URL_KEY ); - $res .= ""; - if ($col["Type"] == "textimage") { - $res .= $val1; - $val = " (" . $val . ")"; - } - if ($col["Type"] == "image-text") { - - $res .= $val2; - } - $res .= $val; - $res .= ""; - } else { - $res .= ""; - if ($col["Type"] == "textimage") { - $res .= $val1; - $val = " (" . $val . ")"; - } - if ($col["Type"] == "image-text") { - - $res .= $val2; - } - $res .= $val; - $res .= ""; - } - break; - case "$": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $HTTP_SESSION_VARS[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - break; - default: - $res .= ""; - $res .= $col["Content"]; - $res .= ""; - break; - } - } else { - $res .= ""; - $res .= $val; - $res .= ""; - } - break; - - case "linknew": - if ($val == "") - $res .= " "; - if ($col["Content"] != "") { - $tlabel = substr( $col["Content"], 0, 1 ); - switch ($tlabel) { - case "&": - if (ENABLE_ENCRYPT == 'yes') { - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; + $encoded = G::encryptUrl( $col["Target"] . "/" . $lval . ".html", URL_KEY ); + $res .= ""; + if ($col["Type"] == "textimage") { + $res .= $val1; + $val = " (" . $val . ")"; + } + if ($col["Type"] == "image-text") { + + $res .= $val2; + } + $res .= $val; + $res .= ""; + } else { + $res .= ""; + if ($col["Type"] == "textimage") { + $res .= $val1; + $val = " (" . $val . ")"; + } + if ($col["Type"] == "image-text") { + + $res .= $val2; + } + $res .= $val; + $res .= ""; + } + break; + case "$": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $HTTP_SESSION_VARS[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + break; + default: + $res .= ""; + $res .= $col["Content"]; + $res .= ""; + break; + } + } else { + $res .= ""; + $res .= $val; + $res .= ""; + } + break; + case "linknew": + if ($val == "") { + $res .= " "; + } + if ($col["Content"] != "") { + $tlabel = substr( $col["Content"], 0, 1 ); + switch ($tlabel) { + case "&": + if (ENABLE_ENCRYPT == 'yes') { + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; //$encoded = G::encryptUrl ( $col["Target"] , URL_KEY ). "/" . $lval . ".html"; - $encoded = G::encryptUrl( $col["Target"] . "/" . $lval . "", URL_KEY ); - $res .= ""; - $res .= $val; - $res .= ""; - } else { - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - } - break; - case "$": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $HTTP_SESSION_VARS[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - break; - default: - $res .= ""; - $res .= $col["Content"]; - $res .= ""; - break; - } - } else { - $res .= ""; - $res .= $val; - $res .= ""; - } - break; - - case "iflink": - if ($col["Content"] != "") { - $tlabel = substr( $col["Content"], 0, 1 ); - if ($val != "") { - switch ($tlabel) { - case "&": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - break; - case "$": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $HTTP_SESSION_VARS[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - break; - default: - $res .= ""; - $res .= $col["Content"]; - $res .= ""; - break; - } - } else { - $res .= " "; - } - } else { - $res .= ""; - $res .= $val; - $res .= ""; - } - break; - - case "jsimglink": - $val = ""; - - case "jslink": - if ($val == "") { - $val .= " " . $col['Name'] . ''; - } - if ($val == "") { - $res .= " "; - } - if ($col["Content"] != "") { - $tlabel = substr( $col["Content"], 0, 1 ); - switch ($tlabel) { - case "&": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $this->_row_values[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - break; - - case "$": - $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); - $lval = $HTTP_SESSION_VARS[$vname]; - $res .= ""; - $res .= $val; - $res .= ""; - break; - - case '_': - $Values = explode( ',', substr( $col['Content'], 1, strlen( $col['Content'] ) ) ); - $res .= "_row_values[substr( $Value, 1, strlen( $Value ) )] . ','; - } else { - $res .= "'" . $this->_row_values[substr( $Value, 1, strlen( $Value ) )] . "',"; - } - } else { - $res .= $Value . ','; - } - } - $res = substr( $res, 0, strlen( $res ) - 1 ); - $res .= ")\"" . $col['Extra'] . ">"; - $res .= $val; - $res .= ""; - break; - - default: - $res .= ""; - $res .= $col["Content"]; - $res .= ""; - break; - } - } else { - $res .= ""; - $res .= $val; - $res .= ""; - } - break; - - case "checkbox": - $res .= ""; + $res .= $val; + $res .= ""; + } else { + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + } + break; + case "$": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $HTTP_SESSION_VARS[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + break; + default: + $res .= ""; + $res .= $col["Content"]; + $res .= ""; + break; + } + } else { + $res .= ""; + $res .= $val; + $res .= ""; + } + break; + case "iflink": + if ($col["Content"] != "") { + $tlabel = substr( $col["Content"], 0, 1 ); + if ($val != "") { + switch ($tlabel) { + case "&": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + break; + case "$": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $HTTP_SESSION_VARS[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + break; + default: + $res .= ""; + $res .= $col["Content"]; + $res .= ""; + break; + } + } else { + $res .= " "; + } + } else { + $res .= ""; + $res .= $val; + $res .= ""; + } + break; + case "jsimglink": + $val = ""; + case "jslink": + if ($val == "") { + $val .= " " . $col['Name'] . ''; + } + if ($val == "") { + $res .= " "; + } + if ($col["Content"] != "") { + $tlabel = substr( $col["Content"], 0, 1 ); + switch ($tlabel) { + case "&": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $this->_row_values[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + break; + case "$": + $vname = substr( $col["Content"], 1, (strlen( $col["Content"] ) - 1) ); + $lval = $HTTP_SESSION_VARS[$vname]; + $res .= ""; + $res .= $val; + $res .= ""; + break; + case '_': + $Values = explode( ',', substr( $col['Content'], 1, strlen( $col['Content'] ) ) ); + $res .= "_row_values[substr( $Value, 1, strlen( $Value ) )] . ','; + } else { + $res .= "'" . $this->_row_values[substr( $Value, 1, strlen( $Value ) )] . "',"; + } + } else { + $res .= $Value . ','; + } + } + $res = substr( $res, 0, strlen( $res ) - 1 ); + $res .= ")\"" . $col['Extra'] . ">"; + $res .= $val; + $res .= ""; + break; + default: + $res .= ""; + $res .= $col["Content"]; + $res .= ""; + break; + } + } else { + $res .= ""; + $res .= $val; + $res .= ""; + } + break; + case "checkbox": + $res .= " - * @access public - * @param string $strAction Next action to do - * @param string $strLabel Label - * @return void - */ - function SetAction ($strAction, $strLabel = "Continue") - { - $this->Action = $strAction; - $this->ActionLabel = $strLabel; - } - - /** - * Set contaxt and table (array) of translate - * - * @author Hardy Beltran Monasterios - * @param string $contexto Contexto en el cual se busca la traducci?n - * @param array $tabla Tabla con valores para traducir - * @param string $nombre Nombre del array $tabla - * @access public - * @return void - */ - function setTranslate ($contexto, $tabla, $nombre) - { - if (is_array( $this->contexto )) { - $this->contexto[0][] = $contexto; - $this->contexto[1][] = $nombre; - - } else { - $this->contexto = array (); - $this->contexto[0][] = $contexto; - $this->contexto[1][] = $nombre; + } + + /** + * Set next action + * + * @author Fernando Ontiveros Lira + * @access public + * @param string $strAction Next action to do + * @param string $strLabel Label + * @return void + */ + function SetAction ($strAction, $strLabel = "Continue") + { + $this->Action = $strAction; + $this->ActionLabel = $strLabel; + } + + /** + * Set contaxt and table (array) of translate + * + * @author Hardy Beltran Monasterios + * @param string $contexto Contexto en el cual se busca la traducci?n + * @param array $tabla Tabla con valores para traducir + * @param string $nombre Nombre del array $tabla + * @access public + * @return void + */ + function setTranslate ($contexto, $tabla, $nombre) + { + if (is_array( $this->contexto )) { + $this->contexto[0][] = $contexto; + $this->contexto[1][] = $nombre; + } else { + $this->contexto = array (); + $this->contexto[0][] = $contexto; + $this->contexto[1][] = $nombre; // array_push($this->contexto[0], $contexto); // array_push($this->contexto[1], $nombre); - } - if (is_array( $this->translate )) { - $this->translate = array (); - $this->translate[$nombre] = $tabla; - } else { - $this->translate[$nombre] = $tabla; - } + } + if (is_array( $this->translate )) { + $this->translate = array (); + $this->translate[$nombre] = $tabla; + } else { + $this->translate[$nombre] = $tabla; + } // Fijamos ultimo contexto usado - $this->_contexto = $contexto; - } - - /** - * Search value in the table of translation and returns last accourding to choised context - * Retorna el valor a su equivalente traducido/convertido - * - * @author Hardy Beltran Monasterios - * @param string $contexto Contexto en el cual se busca la traducci?n - * @param mixed $valor Valor que se va traducir/convertir - * @param string $lang El lenguaje que se va utilizar - * @return mixed - */ - function translateValue ($contexto, $valor, $lang) - { + $this->_contexto = $contexto; + } + + /** + * Search value in the table of translation and returns last accourding to choised context + * Retorna el valor a su equivalente traducido/convertido + * + * @author Hardy Beltran Monasterios + * @param string $contexto Contexto en el cual se busca la traducci?n + * @param mixed $valor Valor que se va traducir/convertir + * @param string $lang El lenguaje que se va utilizar + * @return mixed + */ + function translateValue ($contexto, $valor, $lang) + { // Verificar si exite el contexto - if (in_array( $contexto, $this->contexto[0] )) { - $j = count( $this->contexto[0] ); - for ($i = 0; $i < $j; $i ++) { - if ($contexto == $this->contexto[0][$i]) { - $origen = $this->contexto[1][$i]; - } - } - $tabla = $this->translate[$origen]; - if (isset( $tabla[$lang][$valor] )) { - return $tabla[$lang][$valor]; - } else { - print ("l10n error:no lang or value.") ; - } - } else { - print ("l10n error:no context.") ; - } - } - - /** - * Estable el contexto de traducci?n/conversi?n - * - * @author Hardy Beltran Monasterios - * @param string $contexto Contexto en el cual se busca la traducci?n - * @return void - */ - function setContext ($contexto) - { - $this->_context = $contexto; - } - - /** - * Parse from HTML - * - * @author Fernando Ontiveros Lira - * @access public - * @return void - */ - function ParsingFromHtml ($value, $number = '100000000') - { - $car = substr( $value, 0, 1 ); - $len = strlen( $value ); - $Flag = 1; - $token = ''; - $i = 0; - - While ($i <= $len and $i <= $number) { - $car = substr( $value, $i, 1 ); - $br = strtoupper( substr( $value, $i, 4 ) ); - if ($car == '<') { - $Flag = 0; - } - if ($car == '>') { - $Flag = 1; - } - if ($br == '
' || $br == '

') - $token .= "
"; - - if (($Flag == 1) && ($car != '>')) { - $token .= $car; - if ($i == $number) - $token .= "... "; - } - $i = $i + 1; - } - return $token; - } + if (in_array( $contexto, $this->contexto[0] )) { + $j = count( $this->contexto[0] ); + for ($i = 0; $i < $j; $i ++) { + if ($contexto == $this->contexto[0][$i]) { + $origen = $this->contexto[1][$i]; + } + } + $tabla = $this->translate[$origen]; + if (isset( $tabla[$lang][$valor] )) { + return $tabla[$lang][$valor]; + } else { + print ("l10n error:no lang or value.") ; + } + } else { + print ("l10n error:no context.") ; + } + } + + /** + * Estable el contexto de traducci?n/conversi?n + * + * @author Hardy Beltran Monasterios + * @param string $contexto Contexto en el cual se busca la traducci?n + * @return void + */ + function setContext ($contexto) + { + $this->_context = $contexto; + } + + /** + * Parse from HTML + * + * @author Fernando Ontiveros Lira + * @access public + * @return void + */ + function ParsingFromHtml ($value, $number = '100000000') + { + $car = substr( $value, 0, 1 ); + $len = strlen( $value ); + $Flag = 1; + $token = ''; + $i = 0; + + while ($i <= $len and $i <= $number) { + $car = substr( $value, $i, 1 ); + $br = strtoupper( substr( $value, $i, 4 ) ); + if ($car == '<') { + $Flag = 0; + } + if ($car == '>') { + $Flag = 1; + } + if ($br == '
' || $br == '

') { + $token .= "
"; + } + + if (($Flag == 1) && ($car != '>')) { + $token .= $car; + if ($i == $number) { + $token .= "... "; + } + } + $i = $i + 1; + } + return $token; + } } + diff --git a/workflow/engine/classes/class.pmGauge.php b/workflow/engine/classes/class.pmGauge.php index c690f05f3..5b43ebb77 100755 --- a/workflow/engine/classes/class.pmGauge.php +++ b/workflow/engine/classes/class.pmGauge.php @@ -66,7 +66,7 @@ class pmGauge $center_x = intval( $width / 2 ); $center_y = intval( $height / 2 ); - //gauge color + //gauge color $bgcolor = ImageColorAllocate( $im, 247, 247, 247 ); $extRing = ImageColorAllocate( $im, 214, 214, 214 ); $blueRing = ImageColorAllocate( $im, 70, 132, 238 ); @@ -85,26 +85,26 @@ class pmGauge ImageFilledRectangle( $im, 0, 0, $width - 1, $height - 1, $white ); ImageRectangle( $im, 0, 0, $width - 1, $height - 1, $gray ); - //center coords + //center coords $cX = intval( $this->w / 2 ); - //$cX = intval($this->w /4); + //$cX = intval($this->w /4); $cY = intval( $this->h / 2 ); - //diameter for gauge + //diameter for gauge $diameter = intval( $this->h * 4 / 5 ); $this->renderGauge( $im, $cX, $cY, $diameter ); - /* - //center coords - $cX = intval($this->w * 3/4); - $cY = intval($this->h /2); - - //diameter for gauge - $diameter = intval( $this->h * 4/5 ); - - $this->renderGauge($im, $cX, $cY, $diameter); -*/ + /* + //center coords + $cX = intval($this->w * 3/4); + $cY = intval($this->h /2); + + //diameter for gauge + $diameter = intval( $this->h * 4/5 ); + + $this->renderGauge($im, $cX, $cY, $diameter); + */ Header( "Content-type: image/png" ); ImagePng( $im ); @@ -112,7 +112,7 @@ class pmGauge function renderGauge ($im, $cX, $cY, $diameter) { - //gauge color + //gauge color $bgcolor = ImageColorAllocate( $im, 247, 247, 247 ); $extRing = ImageColorAllocate( $im, 214, 214, 214 ); $blueRing = ImageColorAllocate( $im, 70, 132, 238 ); @@ -129,7 +129,7 @@ class pmGauge $fontArial = PATH_THIRDPARTY . 'html2ps_pdf/fonts/arial.ttf'; - $dX = intval( $diameter * 8 / 7 ); //for now ratio aspect is 8:7 + $dX = intval( $diameter * 8 / 7 ); //for now ratio aspect is 8:7 $dY = intval( $diameter ); $dXRing = intval( $dX * 0.90 ); $dYRing = intval( $dY * 0.90 ); @@ -144,19 +144,25 @@ class pmGauge imagefilledellipse( $im, $cX, $cY, $dXRing, $dYRing, $bgcolor ); - //drawing the red arc - if ($this->redFrom > $this->maxValue) + //drawing the red arc + if ($this->redFrom > $this->maxValue) { $this->redFrom = $this->maxValue; - if ($this->redTo > $this->maxValue) + } + if ($this->redTo > $this->maxValue) { $this->redTo = $this->maxValue; - if ($this->yellowFrom > $this->maxValue) + } + if ($this->yellowFrom > $this->maxValue) { $this->yellowFrom = $this->maxValue; - if ($this->yellowTo > $this->maxValue) + } + if ($this->yellowTo > $this->maxValue) { $this->yellowTo = $this->maxValue; - if ($this->greenFrom > $this->maxValue) + } + if ($this->greenFrom > $this->maxValue) { $this->greenFrom = $this->maxValue; - if ($this->greenTo > $this->maxValue) + } + if ($this->greenTo > $this->maxValue) { $this->greenTo = $this->maxValue; + } $redFrom = $this->redFrom / $this->maxValue * 300 - 240; $redTo = $this->redTo / $this->maxValue * 300 - 240; @@ -176,15 +182,16 @@ class pmGauge } imagefilledellipse( $im, $cX, $cY, $dXRingCenter, $dYRingCenter, $bgcolor ); - //ticks + //ticks $radiusX = intval( $dX * 0.42 ); $radiusY = intval( $dY * 0.42 ); $min = 5; while ($min <= 55) { - if ($min % 5 == 0) + if ($min % 5 == 0) { $len = $radiusX / 8; - else + } else { $len = $radiusX / 25; + } $ang = (2 * M_PI * $min) / 60; $x1 = sin( $ang ) * ($radiusX - $len) + $cX; @@ -198,7 +205,7 @@ class pmGauge $textToDisplay = sprintf( "%d", (55 - $min) * $this->maxValue / 50 ); $bbox = imagettfbbox( 8, 0, $fontArial, $textToDisplay ); $x1 = sin( $ang ) * ($radiusX - 2.5 * $len) + $cX - $bbox[4] / 2; - $y1 = cos( $ang ) * ($radiusY - 2.5 * $len) + $cY + 2; // - abs($bbox[5]); + $y1 = cos( $ang ) * ($radiusY - 2.5 * $len) + $cY + 2; // - abs($bbox[5]); imagettftext( $im, 8, 0, $x1, $y1, $gray, $fontArial, $textToDisplay ); } $min ++; @@ -215,7 +222,7 @@ class pmGauge imagettftext( $im, 9, 0, $cX * 0.60, $cY * 1.8, $gray, $fontArial, $this->open ); imagettftext( $im, 9, 0, $cX * 1.40, $cY * 1.8, $gray, $fontArial, $this->completed ); - //drawing the arrow, simple way + //drawing the arrow, simple way $radiusX = intval( $dX * 0.35 ); $radiusY = intval( $dY * 0.35 ); @@ -224,41 +231,41 @@ class pmGauge $y1 = cos( $ang ) * ($radiusY) + $cY; ImageLine( $im, $cX, $cY, $x1, $y1, $arrowLine ); - /* - //arrowLine - $arrowHeight = intval($dY * 0.02); - $arrowWidth = intval($dX * 0.35); - $arrowTail = intval($dX * 0.15); - $values = array( - 0, -$arrowHeight, - -$arrowTail, 0, - 0, $arrowHeight, - $arrowWidth, 0, - 0, -$arrowHeight - ); - - //rotate n degrees - $n = 20; - $ang = (2 * M_PI * $n) / 60; - - foreach ( $values as $k => $val ) { - if ( $k % 2 == 0 ) { - //$values[$k] = sin($ang)*$val + 20; - $values[$k] = sin($ang)*($val/$cX)*$; - $values[$k] += $cX; - } - else { - //$ys = intval(sin($sec * M_PI/30 - M_PI/2) * R); - //$values[$k] = intval(sin($n * M_PI/30 - M_PI/2) *$val); - $values[$k] = (cos($ang))*($val/$cY)*$cY; - $values[$k] += $cY; - } - } - - imagefilledpolygon ($im, $values, 5, $arrowBody); - imagepolygon ($im, $values, 5, $arrowLine); - */ - //blue ring + /* + //arrowLine + $arrowHeight = intval($dY * 0.02); + $arrowWidth = intval($dX * 0.35); + $arrowTail = intval($dX * 0.15); + $values = array( + 0, -$arrowHeight, + -$arrowTail, 0, + 0, $arrowHeight, + $arrowWidth, 0, + 0, -$arrowHeight + ); + + //rotate n degrees + $n = 20; + $ang = (2 * M_PI * $n) / 60; + + foreach ( $values as $k => $val ) { + if ( $k % 2 == 0 ) { + //$values[$k] = sin($ang)*$val + 20; + $values[$k] = sin($ang)*($val/$cX)*$; + $values[$k] += $cX; + } + else { + //$ys = intval(sin($sec * M_PI/30 - M_PI/2) * R); + //$values[$k] = intval(sin($n * M_PI/30 - M_PI/2) *$val); + $values[$k] = (cos($ang))*($val/$cY)*$cY; + $values[$k] += $cY; + } + } + + imagefilledpolygon ($im, $values, 5, $arrowBody); + imagepolygon ($im, $values, 5, $arrowLine); + */ + //blue ring $dXBlueRing = $dX * 0.07; $dYBlueRing = $dY * 0.07; imagefilledellipse( $im, $cX, $cY, $dXBlueRing, $dXBlueRing, $blueRing ); @@ -273,5 +280,5 @@ class pmGauge imagettftext( $im, 9, 0, $centerX, $centerY, $black, $fontArial, $textToDisplay ); } +} -} \ No newline at end of file diff --git a/workflow/engine/classes/class.propelTable.php b/workflow/engine/classes/class.propelTable.php index db491b6ed..6bae2bee1 100755 --- a/workflow/engine/classes/class.propelTable.php +++ b/workflow/engine/classes/class.propelTable.php @@ -150,15 +150,18 @@ class propelTable foreach ($orderFields as $field => $fieldOrder) { $field = G::getUIDName( $field, '' ); $fieldOrder = strtoupper( $fieldOrder ); - if ($fieldOrder === 'A') + if ($fieldOrder === 'A') { $fieldOrder = 'ASC'; - if ($fieldOrder === 'D') + } + if ($fieldOrder === 'D') { $fieldOrder = 'DESC'; + } switch ($fieldOrder) { case 'ASC': case 'DESC': - if ($order !== '') + if ($order !== '') { $order .= ', '; + } $order .= $field . ' ' . $fieldOrder; $this->aOrder[$field] = $fieldOrder; } @@ -175,10 +178,11 @@ class propelTable $this->criteria->clearOrderByColumns(); } foreach ($this->aOrder as $field => $ascending) { - if ($ascending == 'ASC') + if ($ascending == 'ASC') { $this->criteria->addAscendingOrderByColumn( $field ); - else + } else { $this->criteria->addDescendingOrderByColumn( $field ); + } } } /** @@ -215,18 +219,21 @@ class propelTable $this->name = $xmlForm->name; $this->id = $xmlForm->id; //$this->sqlConnection=((isset($this->xmlForm->sqlConnection))?$this->xmlForm->sqlConnection:''); - if (isset( $_GET['page'] )) + if (isset( $_GET['page'] )) { $this->currentPage = $_GET['page']; - else + } else { $this->currentPage = 1; - if (isset( $_GET['order'] )) + } + if (isset( $_GET['order'] )) { $this->orderBy = urldecode( $_GET['order'] ); - else + } else { $this->orderBy = ""; - if (isset( $_GET['filter'] )) + } + if (isset( $_GET['filter'] )) { $this->filter = urldecode( $_GET['filter'] ); - else + } else { $this->filter = ""; + } if ($xmlForm->ajaxServer != '') { $this->ajaxServer = G::encryptLink( $xmlForm->ajaxServer ); } else { @@ -235,12 +242,14 @@ class propelTable $this->ownerPage = G::encryptLink( SYS_CURRENT_URI ); // Config attributes from XMLFORM file $myAttributes = get_class_vars( get_class( $this ) ); - foreach ($this->xmlForm->xmlform->tree->attribute as $atrib => $value) + foreach ($this->xmlForm->xmlform->tree->attribute as $atrib => $value) { if (array_key_exists( $atrib, $myAttributes )) { eval( 'settype($value, gettype($this->' . $atrib . '));' ); - if ($value !== '') + if ($value !== '') { eval( '$this->' . $atrib . '=$value;' ); + } } + } if ($this->masterdetail != "") { $this->masterdetail = explode( ",", $this->masterdetail ); foreach ($this->masterdetail as $keyMasterDetail => $valueMasterDetail) { @@ -258,8 +267,9 @@ class propelTable $r = $f; $this->fields[$r]['Name'] = $this->xmlForm->fields[$f]->name; $this->fields[$r]['Type'] = $this->xmlForm->fields[$f]->type; - if (isset( $this->xmlForm->fields[$f]->size )) + if (isset( $this->xmlForm->fields[$f]->size )) { $this->fields[$r]['Size'] = $this->xmlForm->fields[$f]->size; + } $this->fields[$r]['Label'] = $this->xmlForm->fields[$f]->label; } //Set the default settings @@ -283,9 +293,11 @@ class propelTable } } $totalWidth = 0; - foreach ($this->fields as $r => $rval) - if ($this->style[$r]['showInTable'] != '0') + foreach ($this->fields as $r => $rval) { + if ($this->style[$r]['showInTable'] != '0') { $totalWidth += $this->style[$r]['colWidth']; + } + } $this->totalWidth = $totalWidth; } @@ -313,13 +325,14 @@ class propelTable { //fix the bug about showing hidden fields in propel table. foreach ($this->fields as $r => $rval) { - if ($this->style[$r]['type'] == 'hidden') + if ($this->style[$r]['type'] == 'hidden') { $this->style[$r]['showInTable'] = '0'; + } } //Render headers $this->colCount = 0; $this->shownFields = '['; - foreach ($this->fields as $r => $rval) + foreach ($this->fields as $r => $rval) { if (($this->style[$r]['showInTable'] != '0') && (! (in_array( $this->fields[$r]['Name'], $this->masterdetail )))) { //if (($this->style[$r]['showInTable'] != '0' )) $this->tpl->newBlock( "headers" ); @@ -327,26 +340,31 @@ class propelTable $sortOrder = (((isset( $this->aOrder[$this->fields[$r]['Name']] )) && ($this->aOrder[$this->fields[$r]['Name']] === 'DESC')) ? '' : $sortOrder); $this->style[$r]['href'] = $this->ownerPage . '?order=' . ($sortOrder !== '' ? (G::createUID( '', $this->fields[$r]['Name'] ) . '=' . $sortOrder) : '') . '&page=' . $this->currentPage; $this->style[$r]['onsort'] = $this->id . '.doSort("' . G::createUID( '', $this->fields[$r]['Name'] ) . '" , "' . $sortOrder . '");return false;'; - if (isset( $this->style[$r]['href'] )) + if (isset( $this->style[$r]['href'] )) { $this->tpl->assign( "href", $this->style[$r]['href'] ); - if (isset( $this->style[$r]['onsort'] )) + } + if (isset( $this->style[$r]['onsort'] )) { $this->tpl->assign( "onsort", htmlentities( $this->style[$r]['onsort'], ENT_QUOTES, 'UTF-8' ) ); + } /* BUG 8080 - erik: don't setup onclick on page table header, doesn't have sense and causing problems - if (isset($this->style[$r]['onclick'])) - $this->tpl->assign( "onclick" , htmlentities( $this->style[$r]['onclick'] , ENT_QUOTES, 'UTF-8' ) ); - */ + if (isset($this->style[$r]['onclick'])) + $this->tpl->assign( "onclick" , htmlentities( $this->style[$r]['onclick'] , ENT_QUOTES, 'UTF-8' ) ); + */ - if (isset( $this->style[$r]['colWidth'] )) + if (isset( $this->style[$r]['colWidth'] )) { $this->tpl->assign( "width", $this->style[$r]['colWidth'] ); - if (isset( $this->style[$r]['colWidth'] )) + } + if (isset( $this->style[$r]['colWidth'] )) { $this->tpl->assign( "widthPercent", ($this->style[$r]['colWidth'] * 100 / $this->totalWidth) . "%" ); //Hook for special skin with RTL languajes + } if (defined( 'SYS_LANG_DIRECTION' ) && SYS_LANG_DIRECTION == 'R') { $this->style[$r]['titleAlign'] = 'right'; } - if (isset( $this->style[$r]['titleAlign'] )) + if (isset( $this->style[$r]['titleAlign'] )) { $this->tpl->assign( "align", 'text-align:' . $this->style[$r]['titleAlign'] . ';' ); + } if ($this->style[$r]['titleVisibility'] != '0') { $sortOrder = (((isset( $this->aOrder[$this->fields[$r]['Name']] )) && ($this->aOrder[$this->fields[$r]['Name']] === 'ASC')) ? '' : ''); $sortOrder = (((isset( $this->aOrder[$this->fields[$r]['Name']] )) && ($this->aOrder[$this->fields[$r]['Name']] === 'DESC')) ? '' : $sortOrder); @@ -359,6 +377,7 @@ class propelTable $this->shownFields .= ($this->shownFields !== '[') ? ',' : ''; $this->shownFields .= '"' . $r . '"'; } + } $this->shownFields .= ']'; } @@ -380,10 +399,11 @@ class propelTable $styleData = $this->style[$r]; $fielDataName = $styleData['data']; $fieldClassName = isset( $styleData['colClassName'] ) && ($styleData['colClassName']) ? $styleData['colClassName'] : $this->tdClass; - if ($fielDataName != '') + if ($fielDataName != '') { $value = ((isset( $result[$fielDataName] )) ? $result[$fielDataName] : ''); - else + } else { $value = $this->fields[$r]['Label']; + } $this->tpl->newBlock( "field" ); $this->tpl->assign( 'width', $this->style[$r]['colWidth'] ); $classAttr = (trim( $fieldClassName ) != '') ? " class=\"$fieldClassName\"" : ''; @@ -414,7 +434,7 @@ class propelTable $this->xmlForm->setDefaultValues(); $this->xmlForm->setValues( $result ); //var_dump($fieldName, $fieldClass );echo '

'; - if (array_search( 'renderTable', get_class_methods( $fieldClass ) ) !== FALSE) { + if (array_search( 'renderTable', get_class_methods( $fieldClass ) ) !== false) { $htmlField = $this->xmlForm->fields[$fieldName]->renderTable( $value, $this->xmlForm, true ); if (is_object( $value )) { $value = ''; @@ -423,8 +443,9 @@ class propelTable $testValue = preg_match( "/
(.*)<\/a>/i", $htmlField, $value ); $this->tpl->assign( "value", $htmlField ); if ($testValue > 0 && (isset( $value[1] ) && strlen( trim( $value[1] ) ) == 0)) { - if ((trim( $value[0] )) == '') + if ((trim( $value[0] )) == '') { $this->tpl->assign( "value", " " ); + } // $this->tpl->assign( "value" , (preg_match('^[[:space:]]^', $value) && (substr($fieldName,0,3)!="PRO"))? str_ireplace(" "," ",$htmlField):$htmlField ); } else { $this->tpl->assign( "value", $htmlField ); @@ -453,51 +474,60 @@ class propelTable $this->style[$r] = array ('showInTable' => '1','titleVisibility' => '1','colWidth' => '150','onclick' => '','event' => '' ); //Some widths - if (! (strpos( ' date linknew ', ' ' . $this->fields[$r]['Type'] . ' ' ) === FALSE)) + if (! (strpos( ' date linknew ', ' ' . $this->fields[$r]['Type'] . ' ' ) === false)) { $this->style[$r]['colWidth'] = '70'; + } //Data source: - if (! (strpos( ' title button linknew image-text jslink ', ' ' . $this->fields[$r]['Type'] . ' ' ) === FALSE)) + if (! (strpos( ' title button linknew image-text jslink ', ' ' . $this->fields[$r]['Type'] . ' ' ) === false)) { $this->style[$r]['data'] = ''; //If the control is a link it shows the label - else + } else { $this->style[$r]['data'] = $this->fields[$r]['Name']; //ELSE: The data value for that field //Hidden fields + } if (! isset( $this->style[$r]['showInTable'] )) { - if (! (strpos( ' title button endgrid2 submit password ', ' ' . $this->fields[$r]['Type'] . ' ' ) === FALSE)) { + if (! (strpos( ' title button endgrid2 submit password ', ' ' . $this->fields[$r]['Type'] . ' ' ) === false)) { $this->style[$r]['showInTable'] = '0'; } else { $this->style[$r]['showInTable'] = '1'; } } //Hidden titles - if (! (strpos( ' linknew button endgrid2 ', ' ' . $this->fields[$r]['Type'] . ' ' ) === FALSE)) { + if (! (strpos( ' linknew button endgrid2 ', ' ' . $this->fields[$r]['Type'] . ' ' ) === false)) { $this->style[$r]['titleVisibility'] = '0'; } //Align titles $this->style[$r]['titleAlign'] = 'center'; //Align fields - if (defined( 'SYS_LANG_DIRECTION' ) && SYS_LANG_DIRECTION == 'R') + if (defined( 'SYS_LANG_DIRECTION' ) && SYS_LANG_DIRECTION == 'R') { $this->style[$r]['align'] = 'right'; - else + } else { $this->style[$r]['align'] = 'left'; - if (! (strpos( ' linknew date ', ' ' . $this->fields[$r]['Type'] . ' ' ) === FALSE)) { + } + if (! (strpos( ' linknew date ', ' ' . $this->fields[$r]['Type'] . ' ' ) === false)) { $this->style[$r]['align'] = 'center'; } } // Adjust the columns width to prevent overflow the page width //Render headers $totalWidth = 0; - foreach ($this->fields as $r => $rval) - if ($this->style[$r]['showInTable'] != '0') + foreach ($this->fields as $r => $rval) { + if ($this->style[$r]['showInTable'] != '0') { $totalWidth += $this->style[$r]['colWidth']; + } + } $this->totalWidth = $totalWidth; $maxWidth = 1800; $proportion = $totalWidth / $maxWidth; - if ($proportion > 1) + if ($proportion > 1) { $this->totalWidth = 1800; - if ($proportion > 1) - foreach ($this->fields as $r => $rval) - if ($this->style[$r]['showInTable'] != '0') + } + if ($proportion > 1) { + foreach ($this->fields as $r => $rval) { + if ($this->style[$r]['showInTable'] != '0') { $this->style[$r]['colWidth'] = $this->style[$r]['colWidth'] / $proportion; + } + } + } } /** @@ -512,12 +542,13 @@ class propelTable { //Render Title $thereisnotitle = true; - foreach ($this->fields as $r => $rval) + foreach ($this->fields as $r => $rval) { if ($this->fields[$r]['Type'] === 'title') { $this->title = $this->fields[$r]['Label']; unset( $this->fields[$r] ); $thereisnotitle = false; } + } if ($thereisnotitle) { $this->title = ''; } @@ -530,11 +561,12 @@ class propelTable // verify if there are templates folders registered, template and method folders are the same $folderTemplate = explode( '/', $this->template ); $oPluginRegistry = & PMPluginRegistry::getSingleton(); - if ($oPluginRegistry->isRegisteredFolder( $folderTemplate[0] )) + if ($oPluginRegistry->isRegisteredFolder( $folderTemplate[0] )) { $templateFile = PATH_PLUGINS . $this->template . '.html'; - else + } else { $templateFile = PATH_TPL . $this->template . '.html'; // Prepare the template + } $this->tpl = new TemplatePower( $templateFile ); $this->tpl->prepare(); if (is_array( $fields )) { @@ -553,8 +585,9 @@ class propelTable $this->tpl->assign( "title", $this->title ); if (file_exists( $this->xmlForm->home . $this->filterForm . '.xml' )) { $filterForm = new filterForm( $this->filterForm, $this->xmlForm->home ); - if ($this->menu === '') + if ($this->menu === '') { $this->menu = 'gulliver/pagedTable_Options'; + } } if (file_exists( $this->xmlForm->home . $this->menu . '.xml' )) { $menu = new xmlMenu( $this->menu, $this->xmlForm->home ); @@ -585,8 +618,9 @@ class propelTable $this->tpl->assign( 'content', $filterForm->render( $template, $scriptCode ) ); $oHeadPublisher->addScriptFile( $filterForm->scriptURL ); $oHeadPublisher->addScriptCode( $scriptCode ); - if (isset( $_SESSION )) + if (isset( $_SESSION )) { $_SESSION[$filterForm->id] = $filterForm->values; + } } } @@ -620,17 +654,17 @@ class propelTable } $rs->setFetchmode( ResultSet::FETCHMODE_ASSOC ); /* - print "
"; - $rs->next(); - $row = $rs->getRow(); - while ( is_array ( $row ) ) { - print ""; - foreach ( $row as $k=>$v ) print ""; - print ""; - $rs->next(); - $row = $rs->getRow(); - } - print "
$v
"; die;*/ + print "
"; + $rs->next(); + $row = $rs->getRow(); + while ( is_array ( $row ) ) { + print ""; + foreach ( $row as $k=>$v ) print ""; + print ""; + $rs->next(); + $row = $rs->getRow(); + } + print "
$v
"; die;*/ $gridRows = 0; $rs->next(); //Initialize the array of breakFields for Master Detail View @@ -677,14 +711,16 @@ class propelTable } } $this->tpl->gotoblock( "row" ); - if (! isset( $rowName )) + if (! isset( $rowName )) { $rowName = array (); + } $this->tpl->assign( "rowName", implode( ",", $rowName ) ); } //End Master Detail: This enable the MasterDEtail view //Merge $result with $xmlForm values (for default valuesSettings) - if (is_array( $this->xmlForm->values )) + if (is_array( $this->xmlForm->values )) { $result = array_merge( $this->xmlForm->values, $result ); + } foreach ($this->fields as $r => $rval) { if (strcasecmp( $this->fields[$r]['Type'], 'cellMark' ) == 0) { $result1 = $result; @@ -695,8 +731,9 @@ class propelTable $this->tdStyle = $this->xmlForm->fields[$this->fields[$r]['Name']]->tdStyle( $result1, $this->xmlForm ); $this->tdClass = $this->xmlForm->fields[$this->fields[$r]['Name']]->tdClass( $result1, $this->xmlForm ); } elseif ($this->style[$r]['showInTable'] != '0') { - if (($this->style[$r]['showInTable'] != '0') && (! (in_array( $this->fields[$r]['Name'], $this->masterdetail )))) + if (($this->style[$r]['showInTable'] != '0') && (! (in_array( $this->fields[$r]['Name'], $this->masterdetail )))) { $this->renderField( $j + 1, $r, $result ); + } } } } @@ -728,20 +765,23 @@ class propelTable $last = "
     "; } $pagesEnum = ''; - for ($r = 1; $r <= $this->totPages; $r ++) + for ($r = 1; $r <= $this->totPages; $r ++) { if (($r >= ($this->currentPage - 5)) && ($r <= ($this->currentPage + 5))) { $pageAjax = $this->id . ".doGoToPage(" . $r . ");return false;"; - if ($r != $this->currentPage) + if ($r != $this->currentPage) { $pagesEnum .= " ownerPage . '?order=' . $this->orderBy . '&page=' . $r, ENT_QUOTES, 'utf-8' ) . "\" onclick=\"" . $pageAjax . "\">" . $r . ""; - else + } else { $pagesEnum .= " " . $r . ""; + } } + } if ($this->totRows === 0) { $this->tpl->newBlock( 'norecords' ); $this->tpl->assign( "columnCount", $this->colCount ); $noRecordsFound = 'ID_NO_RECORDS_FOUND'; - if (G::LoadTranslation( $noRecordsFound )) + if (G::LoadTranslation( $noRecordsFound )) { $noRecordsFound = G::LoadTranslation( $noRecordsFound ); + } $this->tpl->assign( "noRecordsFound", $noRecordsFound ); } if (! $this->disableFooter) { @@ -770,32 +810,34 @@ class propelTable } else { $this->tpl->assign( "fastSearchStyle", 'visibility:hidden;' ); } - if ($this->addRow) - if ($this->sqlInsert != '') + if ($this->addRow) { + if ($this->sqlInsert != '') { $this->tpl->assign( "insert", ''./*G::LoadXml('labels','ID_ADD_NEW')*/ 'ID_ADD_NEW' . '' ); + } + } $this->tpl->assign( "pagesEnum", $pagesEnum ); } ?> - -popupWidth?>; + var popupHeightpopupHeight?>; + + popupHeight?>; $G_PUBLISH->AddContent( 'xmlform', 'xmlform', $filename, '', $data, $this->popupSubmit ); G::RenderPage( "publish", "blank" ); } -} \ No newline at end of file +} + diff --git a/workflow/engine/classes/entities/Base.php b/workflow/engine/classes/entities/Base.php index 5aa927469..b8134c007 100644 --- a/workflow/engine/classes/entities/Base.php +++ b/workflow/engine/classes/entities/Base.php @@ -2,156 +2,154 @@ class Entity_Base { - - /** - * this function check if a field is in the data sent in the constructor - * you can specify an array, and this function will use like alias - */ - protected function validateField($field, $default = false) - { - $fieldIsEmpty = true; - - // this is a trick, if $fields is a string, $fields will be an array with - // one element - if (is_array ($field)) { - $fields = $field; - } - else { - $fields = array (); - $fields [] = $field; - } - - // if there are aliases for this field, evaluate all aliases and take the - // first occurence - foreach ($fields as $k => $f) { - if (isset ($this->temp [$f])) { - $fieldIsEmpty = false; - return $this->temp [$f]; - } - } - - // field empty means the user has not sent a value for this Field, so we are - // using the default value - if ($fieldIsEmpty) { - if ($default !== false) { - return $default; - } - } - } - - protected function validateRequiredFields($requiredFields = array()) - { - foreach ($requiredFields as $k => $field) { - if ($this->{$field} === NULL) { - throw (new Exception ("Field $field is required in " . get_class ($this))); - die (); - } - } - } - - /** - * - * - * - * Copy the values of the Entity to the array of aliases - * The array of aliases must be defined. - * - * @return Array of alias with the Entity values - */ - public function getAliasDataArray() - { - $aAlias = array (); - // get aliases from class - $className = get_class ($this); - if (method_exists ($className, 'GetAliases')) { - $aliases = call_user_func (array ( - $className, - 'GetAliases' - )); - // $aliases = $className::GetAliases (); - foreach ($this as $field => $value) - if (isset ($aliases [$field])) { - // echo "Field exists in Aliases: " . $field . "\n"; - // echo "Alias Name:" . $aliases[$field] . "\n"; - // echo "Alias value:" . $value . "\n"; - $aAlias [$aliases [$field]] = $value; + + /** + * this function check if a field is in the data sent in the constructor + * you can specify an array, and this function will use like alias + */ + protected function validateField ($field, $default = false) + { + $fieldIsEmpty = true; + + // this is a trick, if $fields is a string, $fields will be an array with + // one element + if (is_array( $field )) { + $fields = $field; + } else { + $fields = array (); + $fields[] = $field; + } + + // if there are aliases for this field, evaluate all aliases and take the + // first occurence + foreach ($fields as $k => $f) { + if (isset( $this->temp[$f] )) { + $fieldIsEmpty = false; + return $this->temp[$f]; + } + } + + // field empty means the user has not sent a value for this Field, so we are + // using the default value + if ($fieldIsEmpty) { + if ($default !== false) { + return $default; + } } } - - return $aAlias; - } - - /** - * - * - * - * Set the data from array of alias to Entity - * - * @param $aAliasData array - * of data of aliases - */ - public function setAliasDataArray($aAliasData) - { - // get aliases from class - $className = get_class ($this); - if (method_exists ($className, 'GetAliases')) { - $aliases = call_user_func (array ( - $className, - 'GetAliases' - )); - // $aliases = $className::GetAliases (); - foreach ($this as $field => $value) - if (isset ($aliases [$field])) - $this->{$field} = $aAliasData [$aliases [$field]]; - } - } - - /** - * - * - * - * Initialize object with values from $data. - * The values from data use properties or alias array. - * - * @param - * $data - */ - protected function initializeObject($data) - { - // get aliases from class - $className = get_class ($this); - $aliases = array (); - $swAliases = false; - if (method_exists ($className, 'GetAliases')) { - $aliases = call_user_func (array ( - $className, - 'GetAliases' - )); - // $aliases = $className::GetAliases (); - $swAliases = true; - } - // use object properties or aliases to initialize - foreach ($this as $field => $value) - if (isset ($data [$field])) { - $this->$field = $data [$field]; - } - elseif ($swAliases && isset ($aliases [$field]) && isset ($data [$aliases [$field]])) { - $this->$field = $data [$aliases [$field]]; - } - } - - public function serialize() - { - if (isset ($this->temp)) - unset ($this->temp); - return serialize ($this); - } - - public function unserialize($str) - { - $className = get_class ($this); - $data = unserialize ($str); - return new $className ($data); - } -} \ No newline at end of file + protected function validateRequiredFields ($requiredFields = array()) + { + foreach ($requiredFields as $k => $field) { + if ($this->{$field} === null) { + throw (new Exception( "Field $field is required in " . get_class( $this ) )); + die(); + } + } + } + + /** + * + * + * + * + * Copy the values of the Entity to the array of aliases + * The array of aliases must be defined. + * + * @return Array of alias with the Entity values + */ + public function getAliasDataArray () + { + $aAlias = array (); + // get aliases from class + $className = get_class( $this ); + if (method_exists( $className, 'GetAliases' )) { + $aliases = call_user_func( array ($className,'GetAliases' + ) ); + // $aliases = $className::GetAliases (); + foreach ($this as $field => $value) { + if (isset( $aliases[$field] )) { + // echo "Field exists in Aliases: " . $field . "\n"; + // echo "Alias Name:" . $aliases[$field] . "\n"; + // echo "Alias value:" . $value . "\n"; + $aAlias[$aliases[$field]] = $value; + } + } + } + + return $aAlias; + } + + /** + * + * + * + * + * Set the data from array of alias to Entity + * + * @param $aAliasData array of data of aliases + */ + public function setAliasDataArray ($aAliasData) + { + // get aliases from class + $className = get_class( $this ); + if (method_exists( $className, 'GetAliases' )) { + $aliases = call_user_func( array ($className,'GetAliases' + ) ); + // $aliases = $className::GetAliases (); + foreach ($this as $field => $value) { + if (isset( $aliases[$field] )) { + $this->{$field} = $aAliasData[$aliases[$field]]; + } + } + } + } + + /** + * + * + * + * + * Initialize object with values from $data. + * The values from data use properties or alias array. + * + * @param $data + */ + protected function initializeObject ($data) + { + // get aliases from class + $className = get_class( $this ); + $aliases = array (); + $swAliases = false; + if (method_exists( $className, 'GetAliases' )) { + $aliases = call_user_func( array ($className,'GetAliases' + ) ); + // $aliases = $className::GetAliases (); + $swAliases = true; + } + // use object properties or aliases to initialize + foreach ($this as $field => $value) { + if (isset( $data[$field] )) { + $this->$field = $data[$field]; + } elseif ($swAliases && isset( $aliases[$field] ) && isset( $data[$aliases[$field]] )) { + $this->$field = $data[$aliases[$field]]; + } + } + } + + public function serialize () + { + if (isset( $this->temp )) { + unset( $this->temp ); + } + return serialize( $this ); + } + + public function unserialize ($str) + { + $className = get_class( $this ); + $data = unserialize( $str ); + return new $className( $data ); + } +} + diff --git a/workflow/engine/classes/model/AppEvent.php b/workflow/engine/classes/model/AppEvent.php index 39214a5f2..54a10b25e 100755 --- a/workflow/engine/classes/model/AppEvent.php +++ b/workflow/engine/classes/model/AppEvent.php @@ -1,337 +1,358 @@ toArray(BasePeer::TYPE_FIELDNAME); - $this->fromArray($aFields, BasePeer::TYPE_FIELDNAME); - return $aFields; - } - else { - throw(new Exception('This row doesn\'t exist!')); - } - } - catch (Exception $oError) { - throw($oError); - } - } +class AppEvent extends BaseAppEvent +{ - function create($aData) { - $oConnection = Propel::getConnection(AppEventPeer::DATABASE_NAME); - try { - $oAppEvent = new AppEvent(); - $oAppEvent->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oAppEvent->validate()) { - $oConnection->begin(); - $iResult = $oAppEvent->save(); - $oConnection->commit(); - return true; - } - else { - $sMessage = ''; - $aValidationFailures = $oAppEvent->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; + public function load ($sApplicationUID, $iDelegation) + { + try { + $oAppEvent = AppEventPeer::retrieveByPK( $sApplicationUID, $iDelegation ); + if (! is_null( $oAppEvent )) { + $aFields = $oAppEvent->toArray( BasePeer::TYPE_FIELDNAME ); + $this->fromArray( $aFields, BasePeer::TYPE_FIELDNAME ); + return $aFields; + } else { + throw (new Exception( 'This row doesn\'t exist!' )); + } + } catch (Exception $oError) { + throw ($oError); } - throw(new Exception('The registry cannot be created!
' . $sMessage)); - } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - function update($aData) { - $oConnection = Propel::getConnection(AppEventPeer::DATABASE_NAME); - try { - $oAppEvent = AppEventPeer::retrieveByPK($aData['APP_UID'], $aData['DEL_INDEX']); - if (!is_null($oAppEvent)) { - $oAppEvent->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oAppEvent->validate()) { - $oConnection->begin(); - $iResult = $oAppEvent->save(); - $oConnection->commit(); - return $iResult; + function create ($aData) + { + $oConnection = Propel::getConnection( AppEventPeer::DATABASE_NAME ); + try { + $oAppEvent = new AppEvent(); + $oAppEvent->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oAppEvent->validate()) { + $oConnection->begin(); + $iResult = $oAppEvent->save(); + $oConnection->commit(); + return true; + } else { + $sMessage = ''; + $aValidationFailures = $oAppEvent->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be created!
' . $sMessage )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - else { - $sMessage = ''; - $aValidationFailures = $oAppEvent->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; - } - throw(new Exception('The registry cannot be updated!
'.$sMessage)); + } + + function update ($aData) + { + $oConnection = Propel::getConnection( AppEventPeer::DATABASE_NAME ); + try { + $oAppEvent = AppEventPeer::retrieveByPK( $aData['APP_UID'], $aData['DEL_INDEX'] ); + if (! is_null( $oAppEvent )) { + $oAppEvent->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oAppEvent->validate()) { + $oConnection->begin(); + $iResult = $oAppEvent->save(); + $oConnection->commit(); + return $iResult; + } else { + $sMessage = ''; + $aValidationFailures = $oAppEvent->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be updated!
' . $sMessage )); + } + } else { + throw (new Exception( 'This row doesn\'t exist!' )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - } - else { - throw(new Exception('This row doesn\'t exist!')); - } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - function remove($sApplicationUID, $iDelegation, $sEvnUid) { - $oConnection = Propel::getConnection(AppEventPeer::DATABASE_NAME); - try { - $oAppEvent = AppEventPeer::retrieveByPK($sApplicationUID, $iDelegation, $sEvnUid); - if (!is_null($oAppEvent)) { - $oConnection->begin(); - $iResult = $oAppEvent->delete(); - $oConnection->commit(); - return $iResult; - } - else { - throw(new Exception('This row doesn\'t exist!')); - } + function remove ($sApplicationUID, $iDelegation, $sEvnUid) + { + $oConnection = Propel::getConnection( AppEventPeer::DATABASE_NAME ); + try { + $oAppEvent = AppEventPeer::retrieveByPK( $sApplicationUID, $iDelegation, $sEvnUid ); + if (! is_null( $oAppEvent )) { + $oConnection->begin(); + $iResult = $oAppEvent->delete(); + $oConnection->commit(); + return $iResult; + } else { + throw (new Exception( 'This row doesn\'t exist!' )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); + } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - function getAppEventsCriteria($sProcessUid='', $sStatus = '', $EVN_ACTION='') { + function getAppEventsCriteria ($sProcessUid = '', $sStatus = '', $EVN_ACTION = '') + { try { require_once 'classes/model/Event.php'; - $oCriteria = new Criteria('workflow'); - $oCriteria->addSelectColumn(AppEventPeer::APP_UID); - $oCriteria->addSelectColumn(AppEventPeer::DEL_INDEX); - $oCriteria->addSelectColumn(AppEventPeer::EVN_UID); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_ACTION_DATE); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_ATTEMPTS); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_LAST_EXECUTION_DATE); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_STATUS); - $oCriteria->addSelectColumn(EventPeer::PRO_UID); - $oCriteria->addSelectColumn(EventPeer::EVN_WHEN_OCCURS); - $oCriteria->addSelectColumn(EventPeer::EVN_ACTION); - $oCriteria->addAsColumn('EVN_DESCRIPTION', 'C1.CON_VALUE'); - $oCriteria->addAsColumn('TAS_TITLE', 'C2.CON_VALUE'); - $oCriteria->addAsColumn('APP_TITLE', 'C3.CON_VALUE'); - $oCriteria->addAsColumn('PRO_TITLE', 'C4.CON_VALUE'); - $oCriteria->addAlias('C1', 'CONTENT'); - $oCriteria->addAlias('C2', 'CONTENT'); - $oCriteria->addAlias('C3', 'CONTENT'); - $oCriteria->addAlias('C4', 'CONTENT'); - $oCriteria->addJoin(AppEventPeer::EVN_UID, EventPeer::EVN_UID, Criteria::LEFT_JOIN); + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->addSelectColumn( AppEventPeer::APP_UID ); + $oCriteria->addSelectColumn( AppEventPeer::DEL_INDEX ); + $oCriteria->addSelectColumn( AppEventPeer::EVN_UID ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_ACTION_DATE ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_ATTEMPTS ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_LAST_EXECUTION_DATE ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_STATUS ); + $oCriteria->addSelectColumn( EventPeer::PRO_UID ); + $oCriteria->addSelectColumn( EventPeer::EVN_WHEN_OCCURS ); + $oCriteria->addSelectColumn( EventPeer::EVN_ACTION ); + $oCriteria->addAsColumn( 'EVN_DESCRIPTION', 'C1.CON_VALUE' ); + $oCriteria->addAsColumn( 'TAS_TITLE', 'C2.CON_VALUE' ); + $oCriteria->addAsColumn( 'APP_TITLE', 'C3.CON_VALUE' ); + $oCriteria->addAsColumn( 'PRO_TITLE', 'C4.CON_VALUE' ); + $oCriteria->addAlias( 'C1', 'CONTENT' ); + $oCriteria->addAlias( 'C2', 'CONTENT' ); + $oCriteria->addAlias( 'C3', 'CONTENT' ); + $oCriteria->addAlias( 'C4', 'CONTENT' ); + $oCriteria->addJoin( AppEventPeer::EVN_UID, EventPeer::EVN_UID, Criteria::LEFT_JOIN ); $del = DBAdapter::getStringDelimiter(); - $aConditions = array(); - $aConditions[] = array(EventPeer::EVN_UID, 'C1.CON_ID'); - $aConditions[] = array('C1.CON_CATEGORY', $del . 'EVN_DESCRIPTION' . $del); - $aConditions[] = array('C1.CON_LANG', $del . SYS_LANG . $del); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(AppEventPeer::APP_UID, AppDelegationPeer::APP_UID); - $aConditions[] = array(AppEventPeer::DEL_INDEX, AppDelegationPeer::DEL_INDEX); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(AppDelegationPeer::TAS_UID, 'C2.CON_ID'); - $aConditions[] = array('C2.CON_CATEGORY', $del . 'TAS_TITLE' . $del); - $aConditions[] = array('C2.CON_LANG', $del . SYS_LANG . $del); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(AppDelegationPeer::APP_UID, 'C3.CON_ID'); - $aConditions[] = array('C3.CON_CATEGORY', $del . 'APP_TITLE' . $del); - $aConditions[] = array('C3.CON_LANG', $del . SYS_LANG . $del); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $aConditions = array(); - $aConditions[] = array(AppDelegationPeer::PRO_UID, 'C4.CON_ID'); - $aConditions[] = array('C4.CON_CATEGORY', $del . 'PRO_TITLE' . $del); - $aConditions[] = array('C4.CON_LANG', $del . SYS_LANG . $del); + $aConditions = array (); + $aConditions[] = array (EventPeer::EVN_UID,'C1.CON_ID' + ); + $aConditions[] = array ('C1.CON_CATEGORY',$del . 'EVN_DESCRIPTION' . $del + ); + $aConditions[] = array ('C1.CON_LANG',$del . SYS_LANG . $del + ); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); + $aConditions = array (); + $aConditions[] = array (AppEventPeer::APP_UID,AppDelegationPeer::APP_UID + ); + $aConditions[] = array (AppEventPeer::DEL_INDEX,AppDelegationPeer::DEL_INDEX + ); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); + $aConditions = array (); + $aConditions[] = array (AppDelegationPeer::TAS_UID,'C2.CON_ID' + ); + $aConditions[] = array ('C2.CON_CATEGORY',$del . 'TAS_TITLE' . $del + ); + $aConditions[] = array ('C2.CON_LANG',$del . SYS_LANG . $del + ); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); + $aConditions = array (); + $aConditions[] = array (AppDelegationPeer::APP_UID,'C3.CON_ID' + ); + $aConditions[] = array ('C3.CON_CATEGORY',$del . 'APP_TITLE' . $del + ); + $aConditions[] = array ('C3.CON_LANG',$del . SYS_LANG . $del + ); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); + $aConditions = array (); + $aConditions[] = array (AppDelegationPeer::PRO_UID,'C4.CON_ID' + ); + $aConditions[] = array ('C4.CON_CATEGORY',$del . 'PRO_TITLE' . $del + ); + $aConditions[] = array ('C4.CON_LANG',$del . SYS_LANG . $del + ); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); - $oCriteria->add(AppEventPeer::EVN_UID, '', Criteria::NOT_EQUAL); - if($sProcessUid != ''){ - $oCriteria->add(EventPeer::PRO_UID, $sProcessUid); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); + $oCriteria->add( AppEventPeer::EVN_UID, '', Criteria::NOT_EQUAL ); + if ($sProcessUid != '') { + $oCriteria->add( EventPeer::PRO_UID, $sProcessUid ); } - if($EVN_ACTION != ''){ - $oCriteria->add(EventPeer::EVN_ACTION, $EVN_ACTION); + if ($EVN_ACTION != '') { + $oCriteria->add( EventPeer::EVN_ACTION, $EVN_ACTION ); } switch ($sStatus) { case '': //Nothing - break; + break; case 'PENDING': - $oCriteria->add(AppEventPeer::APP_EVN_STATUS, 'OPEN'); - break; + $oCriteria->add( AppEventPeer::APP_EVN_STATUS, 'OPEN' ); + break; case 'COMPLETED': - $oCriteria->add(AppEventPeer::APP_EVN_STATUS, 'CLOSE'); - break; + $oCriteria->add( AppEventPeer::APP_EVN_STATUS, 'CLOSE' ); + break; } //$oCriteria->addDescendingOrderByColumn(AppEventPeer::APP_EVN_ACTION_DATE); return $oCriteria; - } - catch (Exception $oError) { - throw($oError); + } catch (Exception $oError) { + throw ($oError); } } - public function executeEvents($sNow, $debug=false, &$log=array(), $cron=0) { + public function executeEvents ($sNow, $debug = false, &$log = array(), $cron = 0) + { - require_once 'classes/model/Configuration.php'; - require_once 'classes/model/Triggers.php'; - G::LoadClass('case'); + require_once 'classes/model/Configuration.php'; + require_once 'classes/model/Triggers.php'; + G::LoadClass( 'case' ); - $debug = 1; - $oCase = new Cases(); + $debug = 1; + $oCase = new Cases(); - try { - $oCriteria = new Criteria('workflow'); + try { + $oCriteria = new Criteria( 'workflow' ); - $oCriteria->addSelectColumn(AppEventPeer::APP_UID); - $oCriteria->addSelectColumn(AppEventPeer::DEL_INDEX); - $oCriteria->addSelectColumn(AppEventPeer::EVN_UID); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_ACTION_DATE); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_ATTEMPTS); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_LAST_EXECUTION_DATE); - $oCriteria->addSelectColumn(AppEventPeer::APP_EVN_STATUS); - $oCriteria->addSelectColumn(EventPeer::PRO_UID); - $oCriteria->addSelectColumn(EventPeer::EVN_ACTION); - $oCriteria->addSelectColumn(EventPeer::TRI_UID); - $oCriteria->addSelectColumn(EventPeer::EVN_ACTION_PARAMETERS); - $oCriteria->addSelectColumn(EventPeer::EVN_RELATED_TO); - $oCriteria->addSelectColumn(AppDelegationPeer::TAS_UID); - $oCriteria->addSelectColumn(AppDelegationPeer::USR_UID); - $oCriteria->addSelectColumn(AppDelegationPeer::DEL_TASK_DUE_DATE); - $oCriteria->addSelectColumn(AppDelegationPeer::DEL_FINISH_DATE); + $oCriteria->addSelectColumn( AppEventPeer::APP_UID ); + $oCriteria->addSelectColumn( AppEventPeer::DEL_INDEX ); + $oCriteria->addSelectColumn( AppEventPeer::EVN_UID ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_ACTION_DATE ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_ATTEMPTS ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_LAST_EXECUTION_DATE ); + $oCriteria->addSelectColumn( AppEventPeer::APP_EVN_STATUS ); + $oCriteria->addSelectColumn( EventPeer::PRO_UID ); + $oCriteria->addSelectColumn( EventPeer::EVN_ACTION ); + $oCriteria->addSelectColumn( EventPeer::TRI_UID ); + $oCriteria->addSelectColumn( EventPeer::EVN_ACTION_PARAMETERS ); + $oCriteria->addSelectColumn( EventPeer::EVN_RELATED_TO ); + $oCriteria->addSelectColumn( AppDelegationPeer::TAS_UID ); + $oCriteria->addSelectColumn( AppDelegationPeer::USR_UID ); + $oCriteria->addSelectColumn( AppDelegationPeer::DEL_TASK_DUE_DATE ); + $oCriteria->addSelectColumn( AppDelegationPeer::DEL_FINISH_DATE ); + + $oCriteria->addJoin( AppEventPeer::EVN_UID, EventPeer::EVN_UID, Criteria::JOIN ); + + $aConditions = array (); + array_push( $aConditions, Array (AppEventPeer::APP_UID,AppDelegationPeer::APP_UID + ) ); + array_push( $aConditions, Array (AppEventPeer::DEL_INDEX,AppDelegationPeer::DEL_INDEX + ) ); + $oCriteria->addJoinMC( $aConditions, Criteria::LEFT_JOIN ); + + $oCriteria->addJoin( ApplicationPeer::APP_UID, AppEventPeer::APP_UID ); + + $oCriteria->add( AppDelegationPeer::DEL_FINISH_DATE, null, Criteria::ISNULL ); //by me + $oCriteria->add( AppEventPeer::APP_EVN_STATUS, 'OPEN' ); + $oCriteria->add( AppEventPeer::APP_EVN_ACTION_DATE, $sNow, Criteria::LESS_EQUAL ); + + $oDataset = AppEventPeer::doSelectRS( $oCriteria ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + + $c = 0; + while ($oDataset->next()) { + if ($cron == 1) { + $arrayCron = unserialize( trim( @file_get_contents( PATH_DATA . "cron" ) ) ); + $arrayCron["processcTimeStart"] = time(); + @file_put_contents( PATH_DATA . "cron", serialize( $arrayCron ) ); + } + + $c ++; + $aRow = $oDataset->getRow(); + $oTrigger = new Triggers(); + $aFields = $oCase->loadCase( $aRow['APP_UID'] ); + $oAppEvent = AppEventPeer::retrieveByPK( $aRow['APP_UID'], $aRow['DEL_INDEX'], $aRow['EVN_UID'] ); + + //g::pr($aRow); //die; - $oCriteria->addJoin(AppEventPeer::EVN_UID, EventPeer::EVN_UID, Criteria::JOIN); + if ($debug) { + require_once 'classes/model/Application.php'; + $oApp = ApplicationPeer::retrieveByPk( $aRow['APP_UID'] ); + $oEv = EventPeer::retrieveByPk( $aRow['EVN_UID'] ); + $log[] = 'Event ' . $oEv->getEvnDescription() . ' with ID ' . $aRow['EVN_UID']; - $aConditions = array(); - array_push($aConditions, Array(AppEventPeer::APP_UID, AppDelegationPeer::APP_UID)); - array_push($aConditions, Array(AppEventPeer::DEL_INDEX, AppDelegationPeer::DEL_INDEX)); - $oCriteria->addJoinMC($aConditions, Criteria::LEFT_JOIN); + println( "\nOK+ event \"" . $oEv->getEvnDescription() . "\" with ID {} was found" ); + println( " - PROCESS................" . $aRow['PRO_UID'] ); + println( " - APPLICATION............" . $aRow['APP_UID'] . " CASE #" . $oApp->getAppNumber() ); + println( " - ACTION DATE............" . $aRow['APP_EVN_ACTION_DATE'] ); + println( " - ATTEMPTS..............." . $aRow['APP_EVN_ATTEMPTS'] ); + println( " - INTERVAL WITH TASKS...." . $aRow['EVN_RELATED_TO'] ); + } - $oCriteria->addJoin(ApplicationPeer::APP_UID, AppEventPeer::APP_UID); + if ($aRow['TRI_UID'] == '') { + //a rare case when the tri_uid is not set. + $log[] = " (!) Any trigger was set................................SKIPPED and will be CLOSED"; + if ($debug) { + println( " (!) Any trigger was set................................SKIPPED and will be CLOSED" ); + } + $oAppEvent->setAppEvnStatus( 'CLOSE' ); + $oAppEvent->save(); + continue; + } - $oCriteria->add(AppDelegationPeer::DEL_FINISH_DATE, null, Criteria::ISNULL); //by me - $oCriteria->add(AppEventPeer::APP_EVN_STATUS, 'OPEN'); - $oCriteria->add(AppEventPeer::APP_EVN_ACTION_DATE, $sNow, Criteria::LESS_EQUAL); + $oTrigger = TriggersPeer::retrieveByPk( $aRow['TRI_UID'] ); + if (! is_object( $oTrigger )) { + //the trigger record doesn't exist.. + $log[] = ' (!) The trigger ' . $aRow['TRI_UID'] . ' ' . $oTrigger->getTriTitle() . " doesn't exist.......SKIPPED and will be CLOSED"; + if ($debug) { + println( " (!) The trigger {$aRow['TRI_UID']} {$oTrigger->getTriTitle()} doesn't exist.......SKIPPED and will be CLOSED" ); + } + $oAppEvent->setAppEvnStatus( 'CLOSE' ); + $oAppEvent->save(); + continue; + } - $oDataset = AppEventPeer::doSelectRS($oCriteria); - $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); + global $oPMScript; + $oPMScript = new PMScript(); - $c = 0; - while ($oDataset->next()){ - if ($cron == 1) { - $arrayCron = unserialize(trim(@file_get_contents(PATH_DATA . "cron"))); - $arrayCron["processcTimeStart"] = time(); - @file_put_contents(PATH_DATA . "cron", serialize($arrayCron)); + $task = new Task(); + $taskFields = $task->Load( $aRow['TAS_UID'] ); + $aFields['APP_DATA']['APP_NUMBER'] = $aFields['APP_NUMBER']; + $aFields['APP_DATA']['TAS_TITLE'] = $taskFields['TAS_TITLE']; + $aFields['APP_DATA']['DEL_TASK_DUE_DATE'] = $aRow['DEL_TASK_DUE_DATE']; + $oPMScript->setFields( $aFields['APP_DATA'] ); + $oPMScript->setScript( $oTrigger->getTriWebbot() ); + + $oPMScript->execute(); + + $oAppEvent->setAppEvnLastExecutionDate( date( 'Y-m-d H:i:s' ) ); + + if (sizeof( $_SESSION['TRIGGER_DEBUG']['ERRORS'] ) == 0) { + $log[] = ' - The trigger ' . $oTrigger->getTriTitle() . ' was executed successfully!'; + if ($debug) { + println( " - The trigger '{$oTrigger->getTriTitle()}' was executed successfully!" ); + //g::pr($aFields); + } + $aFields['APP_DATA'] = $oPMScript->aFields; + $oCase->updateCase( $aRow['APP_UID'], $aFields ); + $oAppEvent->setAppEvnStatus( 'CLOSE' ); + } else { + if ($debug) { + $log[] = ' - The trigger ' . $aRow['TRI_UID'] . ' throw some errors!'; + println( " - The trigger {$aRow['TRI_UID']} throw some errors!" ); + print_r( $_SESSION['TRIGGER_DEBUG']['ERRORS'] ); + } + if ($oAppEvent->getAppEvnAttempts() > 0) { + $oAppEvent->setAppEvnAttempts( $oAppEvent->getAppEvnAttempts() - 1 ); + } else { + $oAppEvent->setAppEvnStatus( 'CLOSE' ); + } + } + $oAppEvent->save(); + } + return $c; + } catch (Exception $oError) { + $log[] = ' Error execute event : ' . $oError->getMessage(); + die( $oError->getMessage() ); + return $oError->getMessage(); } - - $c++; - $aRow = $oDataset->getRow(); - $oTrigger = new Triggers(); - $aFields = $oCase->loadCase($aRow['APP_UID']); - $oAppEvent = AppEventPeer::retrieveByPK($aRow['APP_UID'], $aRow['DEL_INDEX'], $aRow['EVN_UID']); - - //g::pr($aRow); //die; - - if($debug){ - require_once 'classes/model/Application.php'; - $oApp = ApplicationPeer::retrieveByPk($aRow['APP_UID']); - $oEv = EventPeer::retrieveByPk($aRow['EVN_UID']); - $log[] = 'Event ' . $oEv->getEvnDescription() . ' with ID ' . $aRow['EVN_UID']; - - println("\nOK+ event \"".$oEv->getEvnDescription()."\" with ID {} was found"); - println(" - PROCESS................".$aRow['PRO_UID']); - println(" - APPLICATION............".$aRow['APP_UID']." CASE #".$oApp->getAppNumber()); - println(" - ACTION DATE............".$aRow['APP_EVN_ACTION_DATE']); - println(" - ATTEMPTS...............".$aRow['APP_EVN_ATTEMPTS']); - println(" - INTERVAL WITH TASKS....".$aRow['EVN_RELATED_TO']); - } - - if ($aRow['TRI_UID'] == '') { - //a rare case when the tri_uid is not set. - $log[] = " (!) Any trigger was set................................SKIPPED and will be CLOSED"; - if($debug) println(" (!) Any trigger was set................................SKIPPED and will be CLOSED"); - $oAppEvent->setAppEvnStatus('CLOSE'); - $oAppEvent->save(); - continue; - } - - $oTrigger = TriggersPeer::retrieveByPk($aRow['TRI_UID']); - if( !is_object($oTrigger) ){ - //the trigger record doesn't exist.. - $log[] = ' (!) The trigger ' . $aRow['TRI_UID'] . ' ' . $oTrigger->getTriTitle() . " doesn't exist.......SKIPPED and will be CLOSED"; - if($debug) println(" (!) The trigger {$aRow['TRI_UID']} {$oTrigger->getTriTitle()} doesn't exist.......SKIPPED and will be CLOSED"); - $oAppEvent->setAppEvnStatus('CLOSE'); - $oAppEvent->save(); - continue; - } - - global $oPMScript; - $oPMScript = new PMScript(); - - $task = new Task(); - $taskFields = $task->Load($aRow['TAS_UID']); - $aFields['APP_DATA']['APP_NUMBER'] = $aFields['APP_NUMBER']; - $aFields['APP_DATA']['TAS_TITLE'] = $taskFields['TAS_TITLE']; - $aFields['APP_DATA']['DEL_TASK_DUE_DATE'] = $aRow['DEL_TASK_DUE_DATE']; - $oPMScript->setFields($aFields['APP_DATA']); - $oPMScript->setScript($oTrigger->getTriWebbot()); - - $oPMScript->execute(); - - $oAppEvent->setAppEvnLastExecutionDate(date('Y-m-d H:i:s')); - - if( sizeof($_SESSION['TRIGGER_DEBUG']['ERRORS']) == 0 ){ - $log[] = ' - The trigger ' . $oTrigger->getTriTitle() . ' was executed successfully!'; - if($debug) println(" - The trigger '{$oTrigger->getTriTitle()}' was executed successfully!"); - //g::pr($aFields); - $aFields['APP_DATA'] = $oPMScript->aFields; - $oCase->updateCase($aRow['APP_UID'], $aFields); - $oAppEvent->setAppEvnStatus('CLOSE'); - } else { - if($debug) { - $log[] = ' - The trigger ' . $aRow['TRI_UID'] . ' throw some errors!'; - println(" - The trigger {$aRow['TRI_UID']} throw some errors!"); - print_r($_SESSION['TRIGGER_DEBUG']['ERRORS']); - } - if ( $oAppEvent->getAppEvnAttempts() > 0 ){ - $oAppEvent->setAppEvnAttempts($oAppEvent->getAppEvnAttempts() - 1); - } else { - $oAppEvent->setAppEvnStatus('CLOSE'); - } - } - $oAppEvent->save(); - } - return $c; } - catch (Exception $oError) { - $log[] = ' Error execute event : ' . $oError->getMessage(); - die($oError->getMessage()); - return $oError->getMessage(); + + function close ($APP_UID, $DEL_INDEX) + { + $aRow = $this->load( $APP_UID, $DEL_INDEX ); + $aRow['APP_EVN_STATUS'] = 'CLOSE'; + $this->update( $aRow ); } - } +} +// AppEvent - function close($APP_UID, $DEL_INDEX){ - $aRow = $this->load($APP_UID, $DEL_INDEX); - $aRow['APP_EVN_STATUS'] = 'CLOSE'; - $this->update($aRow); - } - -} // AppEvent diff --git a/workflow/engine/classes/model/AppMessage.php b/workflow/engine/classes/model/AppMessage.php index 19fbce143..a1a31a3ea 100755 --- a/workflow/engine/classes/model/AppMessage.php +++ b/workflow/engine/classes/model/AppMessage.php @@ -1,11 +1,11 @@ . - * - * For more information, contact Colosa Inc, 2566 Le Jeune Rd., + * along with this program. If not, see . + * + * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. - * */ require_once 'classes/model/om/BaseAppMessage.php'; @@ -29,93 +28,98 @@ require_once 'classes/model/om/BaseAppMessage.php'; /** * Skeleton subclass for representing a row from the 'APP_MESSAGE' table. * - * + * * * You should add additional methods to this class to meet the - * application requirements. This class will only be generated as + * application requirements. This class will only be generated as * long as it does not already exist in the output directory. * - * @package workflow.engine.classes.model + * @package workflow.engine.classes.model */ -class AppMessage extends BaseAppMessage { - - private $data_spool; - private $status_spool; - private $error_spool; - - public function getSpoolStatus() { - return $this->status_spool; - } - - public function getSpoolError() { - return $this->error_spool; - } - - - /** - * AppMessgae quick Save method - * @param Array(msg_uid, app_uid, del_index, app_msg_type, app_msg_subject, app_msg_from, app_msg_to, - * app_msg_body, app_msg_cc, app_msg_bcc, app_msg_attach, app_msg_template, app_msg_status ) - * - * @author Erik Amaru Ortiz - * Date Aug 31th, 2009 - */ - public function quickSave2($data_spool) { - $this->data_spool = $data_spool; - - $sUID = G::generateUniqueID(); - $spool = new AppMessage(); - - $spool->setAppMsgUid($sUID); - $spool->setMsgUid($data_spool['msg_uid']); - $spool->setAppUid($data_spool['app_uid']); - $spool->setDelIndex($data_spool['del_index']); - $spool->setAppMsgType($data_spool['app_msg_type']); - $spool->setAppMsgSubject($data_spool['app_msg_subject']); - $spool->setAppMsgFrom($data_spool['app_msg_from']); - $spool->setAppMsgTo($data_spool['app_msg_to']); - $spool->setAppMsgBody($data_spool['app_msg_body']); - $spool->setAppMsgDate(date('Y-m-d H:i:s')); - $spool->setAppMsgCc($data_spool['app_msg_cc']); - $spool->setAppMsgBcc($data_spool['app_msg_bcc']); - $spool->setappMsgAttach($data_spool['app_msg_attach']); - $spool->setAppMsgTemplate($data_spool['app_msg_template']); - $spool->setAppMsgStatus($data_spool['app_msg_status']); - - if( !$spool->validate() ) { - $this->error_spool = $spool->getValidationFailures(); - $this->status_spool = 'error'; - - $error_msg = "AppMessage::quickSave(): Validation error: \n"; - foreach($errors as $key=>$value) { - $error_msg .= $value->getMessage($key) . "\n"; - } - throw new Exception($error_msg); - } else { - //echo "Saving - validation ok\n"; - $this->error_spool = ''; - $this->status = 'success'; - $spool->save(); +class AppMessage extends BaseAppMessage +{ + + private $data_spool; + private $status_spool; + private $error_spool; + + public function getSpoolStatus () + { + return $this->status_spool; } - return $sUID; - } - - - public function quickSave($aData){ - if(isset($aData['app_msg_uid'])) { - $o = EmployeePeer::retrieveByPk($aData['app_msg_uid']); + + public function getSpoolError () + { + return $this->error_spool; } - if (isset($o) && is_object($o)&& get_class($o) == 'AppMessage') { - $o->fromArray($aData, BasePeer::TYPE_FIELDNAME); - $o->setAppMsgDate(date('Y-m-d H:i:s')); - $o->save(); - return $o->getAppMsgUid(); - } else { - $this->fromArray($aData, BasePeer::TYPE_FIELDNAME); - $this->setAppMsgDate(date('Y-m-d H:i:s')); - $this->save(); - return $this->getAppMsgUid(); + + /** + * AppMessgae quick Save method + * + * @param Array(msg_uid, app_uid, del_index, app_msg_type, app_msg_subject, app_msg_from, app_msg_to, + * app_msg_body, app_msg_cc, app_msg_bcc, app_msg_attach, app_msg_template, app_msg_status ) + * + * @author Erik Amaru Ortiz + * Date Aug 31th, 2009 + */ + public function quickSave2 ($data_spool) + { + $this->data_spool = $data_spool; + + $sUID = G::generateUniqueID(); + $spool = new AppMessage(); + + $spool->setAppMsgUid( $sUID ); + $spool->setMsgUid( $data_spool['msg_uid'] ); + $spool->setAppUid( $data_spool['app_uid'] ); + $spool->setDelIndex( $data_spool['del_index'] ); + $spool->setAppMsgType( $data_spool['app_msg_type'] ); + $spool->setAppMsgSubject( $data_spool['app_msg_subject'] ); + $spool->setAppMsgFrom( $data_spool['app_msg_from'] ); + $spool->setAppMsgTo( $data_spool['app_msg_to'] ); + $spool->setAppMsgBody( $data_spool['app_msg_body'] ); + $spool->setAppMsgDate( date( 'Y-m-d H:i:s' ) ); + $spool->setAppMsgCc( $data_spool['app_msg_cc'] ); + $spool->setAppMsgBcc( $data_spool['app_msg_bcc'] ); + $spool->setappMsgAttach( $data_spool['app_msg_attach'] ); + $spool->setAppMsgTemplate( $data_spool['app_msg_template'] ); + $spool->setAppMsgStatus( $data_spool['app_msg_status'] ); + + if (! $spool->validate()) { + $this->error_spool = $spool->getValidationFailures(); + $this->status_spool = 'error'; + + $error_msg = "AppMessage::quickSave(): Validation error: \n"; + foreach ($errors as $key => $value) { + $error_msg .= $value->getMessage( $key ) . "\n"; + } + throw new Exception( $error_msg ); + } else { + //echo "Saving - validation ok\n"; + $this->error_spool = ''; + $this->status = 'success'; + $spool->save(); + } + return $sUID; } - } - -} // AppMessage + + public function quickSave ($aData) + { + if (isset( $aData['app_msg_uid'] )) { + $o = EmployeePeer::retrieveByPk( $aData['app_msg_uid'] ); + } + if (isset( $o ) && is_object( $o ) && get_class( $o ) == 'AppMessage') { + $o->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + $o->setAppMsgDate( date( 'Y-m-d H:i:s' ) ); + $o->save(); + return $o->getAppMsgUid(); + } else { + $this->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + $this->setAppMsgDate( date( 'Y-m-d H:i:s' ) ); + $this->save(); + return $this->getAppMsgUid(); + } + } +} +// AppMessage + diff --git a/workflow/engine/classes/model/CaseTracker.php b/workflow/engine/classes/model/CaseTracker.php index ead85ccee..b439443f4 100755 --- a/workflow/engine/classes/model/CaseTracker.php +++ b/workflow/engine/classes/model/CaseTracker.php @@ -1,125 +1,124 @@ toArray(BasePeer::TYPE_FIELDNAME); - $this->fromArray($aFields, BasePeer::TYPE_FIELDNAME); - $this->setNew(false); - return $aFields; - } - else { - throw(new Exception("The row '$sProcessUID' in table CASE_TRACKER doesn't exist!")); - } - } - catch (Exception $oError) { - throw($oError); - } - } +class CaseTracker extends BaseCaseTracker +{ - public function create($aData) { - $oConnection = Propel::getConnection(CaseTrackerPeer::DATABASE_NAME); - try { - if (!isset($aData['CT_MAP_TYPE'])) { - $aData['CT_MAP_TYPE'] = 'PROCESSMAP'; - } - $oCaseTracker = new CaseTracker(); - $oCaseTracker->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oCaseTracker->validate()) { - $oConnection->begin(); - $iResult = $oCaseTracker->save(); - $oConnection->commit(); - return true; - } - else { - $sMessage = ''; - $aValidationFailures = $oCaseTracker->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; + public function load ($sProcessUID) + { + try { + $oRow = CaseTrackerPeer::retrieveByPK( $sProcessUID ); + if (! is_null( $oRow )) { + $aFields = $oRow->toArray( BasePeer::TYPE_FIELDNAME ); + $this->fromArray( $aFields, BasePeer::TYPE_FIELDNAME ); + $this->setNew( false ); + return $aFields; + } else { + throw (new Exception( "The row '$sProcessUID' in table CASE_TRACKER doesn't exist!" )); + } + } catch (Exception $oError) { + throw ($oError); } - throw(new Exception('The registry cannot be created!
'.$sMessage)); - } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - public function update($aData) { - $oConnection = Propel::getConnection(CaseTrackerPeer::DATABASE_NAME); - try { - $oCaseTracker = CaseTrackerPeer::retrieveByPK($aData['PRO_UID']); - if (!is_null($oCaseTracker)) - { - $oCaseTracker->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oCaseTracker->validate()) { - $oConnection->begin(); - $iResult = $oCaseTracker->save(); - $oConnection->commit(); - return $iResult; + public function create ($aData) + { + $oConnection = Propel::getConnection( CaseTrackerPeer::DATABASE_NAME ); + try { + if (! isset( $aData['CT_MAP_TYPE'] )) { + $aData['CT_MAP_TYPE'] = 'PROCESSMAP'; + } + $oCaseTracker = new CaseTracker(); + $oCaseTracker->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oCaseTracker->validate()) { + $oConnection->begin(); + $iResult = $oCaseTracker->save(); + $oConnection->commit(); + return true; + } else { + $sMessage = ''; + $aValidationFailures = $oCaseTracker->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be created!
' . $sMessage )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - else { - $sMessage = ''; - $aValidationFailures = $oCaseTracker->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; - } - throw(new Exception('The registry cannot be updated!
'.$sMessage)); + } + + public function update ($aData) + { + $oConnection = Propel::getConnection( CaseTrackerPeer::DATABASE_NAME ); + try { + $oCaseTracker = CaseTrackerPeer::retrieveByPK( $aData['PRO_UID'] ); + if (! is_null( $oCaseTracker )) { + $oCaseTracker->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oCaseTracker->validate()) { + $oConnection->begin(); + $iResult = $oCaseTracker->save(); + $oConnection->commit(); + return $iResult; + } else { + $sMessage = ''; + $aValidationFailures = $oCaseTracker->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be updated!
' . $sMessage )); + } + } else { + throw (new Exception( 'This row doesn\'t exist!' )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - } - else { - throw(new Exception('This row doesn\'t exist!')); - } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); + + public function remove ($sProcessUID) + { + $oConnection = Propel::getConnection( CaseTrackerPeer::DATABASE_NAME ); + try { + $oConnection->begin(); + $this->setProUid( $sProcessUID ); + $iResult = $this->delete(); + $oConnection->commit(); + return $iResult; + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); + } } - } - - public function remove($sProcessUID) { - $oConnection = Propel::getConnection(CaseTrackerPeer::DATABASE_NAME); - try { - $oConnection->begin(); - $this->setProUid($sProcessUID); - $iResult = $this->delete(); - $oConnection->commit(); - return $iResult; + + function caseTrackerExists ($sUid) + { + try { + $oObj = CaseTrackerPeer::retrieveByPk( $sUid ); + return (is_object( $oObj ) && get_class( $oObj ) == 'CaseTracker'); + } catch (Exception $oError) { + throw ($oError); + } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - - function caseTrackerExists ( $sUid ) { - try { - $oObj = CaseTrackerPeer::retrieveByPk($sUid); - return (is_object($oObj) && get_class($oObj) == 'CaseTracker'); - } - catch (Exception $oError) { - throw($oError); - } - } -} // CaseTracker +} +// CaseTracker + diff --git a/workflow/engine/classes/model/CaseTrackerObject.php b/workflow/engine/classes/model/CaseTrackerObject.php index d1574f230..aaebf2883 100755 --- a/workflow/engine/classes/model/CaseTrackerObject.php +++ b/workflow/engine/classes/model/CaseTrackerObject.php @@ -1,173 +1,165 @@ toArray(BasePeer::TYPE_FIELDNAME); - $this->fromArray($aFields,BasePeer::TYPE_FIELDNAME); - $this->setNew(false); - return $aFields; - } - else { - throw( new Exception( "The row '$Uid' in table CaseTrackerObject doesn't exist!" )); - } - } - catch (Exception $oError) { - throw($oError); - } - } +class CaseTrackerObject extends BaseCaseTrackerObject +{ - public function create($aData) { - $oConnection = Propel::getConnection(CaseTrackerObjectPeer::DATABASE_NAME); - try { - if (!isset($aData['CTO_UID'])) { - $aData['CTO_UID'] = G::generateUniqueID(); - } - $oCaseTrackerObject = new CaseTrackerObject(); - $oCaseTrackerObject->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oCaseTrackerObject->validate()) { - $oConnection->begin(); - $iResult = $oCaseTrackerObject->save(); - $oConnection->commit(); - return $aData['CTO_UID']; - } - else { - $sMessage = ''; - $aValidationFailures = $oCaseTrackerObject->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; + public function load ($Uid) + { + try { + $oRow = CaseTrackerObjectPeer::retrieveByPK( $Uid ); + if (! is_null( $oRow )) { + $aFields = $oRow->toArray( BasePeer::TYPE_FIELDNAME ); + $this->fromArray( $aFields, BasePeer::TYPE_FIELDNAME ); + $this->setNew( false ); + return $aFields; + } else { + throw (new Exception( "The row '$Uid' in table CaseTrackerObject doesn't exist!" )); + } + } catch (Exception $oError) { + throw ($oError); } - throw(new Exception('The registry cannot be created!
'.$sMessage)); - } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - public function update($aData) - { - $oConnection = Propel::getConnection(CaseTrackerObjectPeer::DATABASE_NAME); - try { - $oCaseTrackerObject = CaseTrackerObjectPeer::retrieveByPK($aData['CTO_UID']); - if (!is_null($oCaseTrackerObject)) - { - $oCaseTrackerObject->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oCaseTrackerObject->validate()) { - $oConnection->begin(); - $iResult = $oCaseTrackerObject->save(); - $oConnection->commit(); - return $iResult; + public function create ($aData) + { + $oConnection = Propel::getConnection( CaseTrackerObjectPeer::DATABASE_NAME ); + try { + if (! isset( $aData['CTO_UID'] )) { + $aData['CTO_UID'] = G::generateUniqueID(); + } + $oCaseTrackerObject = new CaseTrackerObject(); + $oCaseTrackerObject->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oCaseTrackerObject->validate()) { + $oConnection->begin(); + $iResult = $oCaseTrackerObject->save(); + $oConnection->commit(); + return $aData['CTO_UID']; + } else { + $sMessage = ''; + $aValidationFailures = $oCaseTrackerObject->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be created!
' . $sMessage )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - else { - $sMessage = ''; - $aValidationFailures = $oCaseTrackerObject->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; - } - throw(new Exception('The registry cannot be updated!
'.$sMessage)); + } + + public function update ($aData) + { + $oConnection = Propel::getConnection( CaseTrackerObjectPeer::DATABASE_NAME ); + try { + $oCaseTrackerObject = CaseTrackerObjectPeer::retrieveByPK( $aData['CTO_UID'] ); + if (! is_null( $oCaseTrackerObject )) { + $oCaseTrackerObject->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oCaseTrackerObject->validate()) { + $oConnection->begin(); + $iResult = $oCaseTrackerObject->save(); + $oConnection->commit(); + return $iResult; + } else { + $sMessage = ''; + $aValidationFailures = $oCaseTrackerObject->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be updated!
' . $sMessage )); + } + } else { + throw (new Exception( 'This row doesn\'t exist!' )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - } - else { - throw(new Exception('This row doesn\'t exist!')); - } } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - public function remove($sCTOUID) { - $oConnection = Propel::getConnection(CaseTrackerObjectPeer::DATABASE_NAME); - try { - $oCaseTobj = CaseTrackerObjectPeer::retrieveByPK($sCTOUID); - if (is_object($oCaseTobj) && get_class($oCaseTobj) == 'CaseTrackerObject') - { - $oConnection->begin(); - $iResult = $oCaseTobj->delete(); - $oConnection->commit(); - return $iResult; - } - else { - throw( new Exception( "The row '" . $sCTOUID . "' in table CaseTrackerObject doesn't exist!" )); - } + public function remove ($sCTOUID) + { + $oConnection = Propel::getConnection( CaseTrackerObjectPeer::DATABASE_NAME ); + try { + $oCaseTobj = CaseTrackerObjectPeer::retrieveByPK( $sCTOUID ); + if (is_object( $oCaseTobj ) && get_class( $oCaseTobj ) == 'CaseTrackerObject') { + $oConnection->begin(); + $iResult = $oCaseTobj->delete(); + $oConnection->commit(); + return $iResult; + } else { + throw (new Exception( "The row '" . $sCTOUID . "' in table CaseTrackerObject doesn't exist!" )); + } + } catch (Exception $oError) { + var_dump( $oError ); + die(); + $oConnection->rollback(); + throw ($oError); + } } - catch (Exception $oError) {var_dump($oError);die; - $oConnection->rollback(); - throw($oError); - } - } - function reorderPositions($sProcessUID, $iPosition) { - try { - $oCriteria = new Criteria('workflow'); - $oCriteria->add(CaseTrackerObjectPeer::PRO_UID, $sProcessUID); - $oCriteria->add(CaseTrackerObjectPeer::CTO_POSITION, $iPosition, '>'); - $oDataset = CaseTrackerObjectPeer::doSelectRS($oCriteria); - $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $oDataset->next(); - while ($aRow = $oDataset->getRow()) { - $this->update(array('CTO_UID' => $aRow['CTO_UID'], - 'PRO_UID' => $aRow['PRO_UID'], - 'CTO_TYPE_OBJ' => $aRow['CTO_TYPE_OBJ'], - 'CTO_UID_OBJ' => $aRow['CTO_UID_OBJ'], - 'CTO_CONDITION' => $aRow['CTO_CONDITION'], - 'CTO_POSITION' => $aRow['CTO_POSITION'] - 1)); - $oDataset->next(); - } + function reorderPositions ($sProcessUID, $iPosition) + { + try { + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->add( CaseTrackerObjectPeer::PRO_UID, $sProcessUID ); + $oCriteria->add( CaseTrackerObjectPeer::CTO_POSITION, $iPosition, '>' ); + $oDataset = CaseTrackerObjectPeer::doSelectRS( $oCriteria ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $oDataset->next(); + while ($aRow = $oDataset->getRow()) { + $this->update( array ('CTO_UID' => $aRow['CTO_UID'],'PRO_UID' => $aRow['PRO_UID'],'CTO_TYPE_OBJ' => $aRow['CTO_TYPE_OBJ'],'CTO_UID_OBJ' => $aRow['CTO_UID_OBJ'],'CTO_CONDITION' => $aRow['CTO_CONDITION'],'CTO_POSITION' => $aRow['CTO_POSITION'] - 1 + ) ); + $oDataset->next(); + } + } catch (Exception $oException) { + throw $Exception; + } } - catch (Exception $oException) { - throw $Exception; - } - } - function caseTrackerObjectExists ( $Uid ) { - try { - $oObj = CaseTrackerObjectPeer::retrieveByPk( $Uid ); - if (is_object($oObj) && get_class ($oObj) == 'CaseTrackerObject' ) { - return true; - } - else { - return false; - } + function caseTrackerObjectExists ($Uid) + { + try { + $oObj = CaseTrackerObjectPeer::retrieveByPk( $Uid ); + if (is_object( $oObj ) && get_class( $oObj ) == 'CaseTrackerObject') { + return true; + } else { + return false; + } + } catch (Exception $oError) { + throw ($oError); + } } - catch (Exception $oError) { - throw($oError); - } - } - function removeByObject($sType, $sObjUid) { - try { - $oCriteria = new Criteria('workflow'); - $oCriteria->add(CaseTrackerObjectPeer::CTO_TYPE_OBJ, $sType); - $oCriteria->add(CaseTrackerObjectPeer::CTO_UID_OBJ, $sObjUid); - CaseTrackerObjectPeer::doDelete($oCriteria); + function removeByObject ($sType, $sObjUid) + { + try { + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->add( CaseTrackerObjectPeer::CTO_TYPE_OBJ, $sType ); + $oCriteria->add( CaseTrackerObjectPeer::CTO_UID_OBJ, $sObjUid ); + CaseTrackerObjectPeer::doDelete( $oCriteria ); + } catch (Exception $e) { + throw ($e); + } } - catch(Exception $e) { - throw($e); - } - } -} // CaseTrackerObject +} +// CaseTrackerObject + diff --git a/workflow/engine/classes/model/GroupUser.php b/workflow/engine/classes/model/GroupUser.php index aff11518c..0f13e98d5 100755 --- a/workflow/engine/classes/model/GroupUser.php +++ b/workflow/engine/classes/model/GroupUser.php @@ -1,11 +1,12 @@ . - * - * For more information, contact Colosa Inc, 2566 Le Jeune Rd., + * along with this program. If not, see . + * + * For more information, contact Colosa Inc, 2566 Le Jeune Rd., * Coral Gables, FL, 33134, USA, or email info@colosa.com. - * + * */ require_once 'classes/model/om/BaseGroupUser.php'; @@ -35,114 +36,112 @@ require_once 'classes/model/Groupwf.php'; * * * You should add additional methods to this class to meet the - * application requirements. This class will only be generated as + * application requirements. This class will only be generated as * long as it does not already exist in the input directory. * - * @package workflow.engine.classes.model + * @package workflow.engine.classes.model */ -class GroupUser extends BaseGroupUser { +class GroupUser extends BaseGroupUser +{ - /** - * Create the application document registry - * @param array $aData - * @return string - */ - public function create($aData) - { - $oConnection = Propel::getConnection(GroupUserPeer::DATABASE_NAME); - try { - $oGroupUser = new GroupUser(); - $oGroupUser->fromArray($aData, BasePeer::TYPE_FIELDNAME); - if ($oGroupUser->validate()) { - $oConnection->begin(); - $iResult = $oGroupUser->save(); - $oConnection->commit(); - return $iResult; - } - else { - $sMessage = ''; - $aValidationFailures = $oGroupUser->getValidationFailures(); - foreach($aValidationFailures as $oValidationFailure) { - $sMessage .= $oValidationFailure->getMessage() . '
'; + /** + * Create the application document registry + * + * @param array $aData + * @return string + */ + public function create ($aData) + { + $oConnection = Propel::getConnection( GroupUserPeer::DATABASE_NAME ); + try { + $oGroupUser = new GroupUser(); + $oGroupUser->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($oGroupUser->validate()) { + $oConnection->begin(); + $iResult = $oGroupUser->save(); + $oConnection->commit(); + return $iResult; + } else { + $sMessage = ''; + $aValidationFailures = $oGroupUser->getValidationFailures(); + foreach ($aValidationFailures as $oValidationFailure) { + $sMessage .= $oValidationFailure->getMessage() . '
'; + } + throw (new Exception( 'The registry cannot be created!
' . $sMessage )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); } - throw(new Exception('The registry cannot be created!
'.$sMessage)); - } - } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - - /** - * Remove the application document registry - * @param string $sGrpUid - * @param string $sUserUid - * @return string - */ - public function remove($sGrpUid, $sUserUid) - { - $oConnection = Propel::getConnection(GroupUserPeer::DATABASE_NAME); - try { - $oGroupUser = GroupUserPeer::retrieveByPK($sGrpUid, $sUserUid); - if (!is_null($oGroupUser)) - { - $oConnection->begin(); - $iResult = $oGroupUser->delete(); - $oConnection->commit(); - return $iResult; - } - else { - throw(new Exception('This row doesn\'t exist!')); - } - } - catch (Exception $oError) { - $oConnection->rollback(); - throw($oError); - } - } - - function getCountAllUsersByGroup() - { - $oCriteria = new Criteria('workflow'); - $oCriteria->addSelectColumn(GroupUserPeer::GRP_UID); - $oCriteria->addSelectColumn('COUNT(*) AS CNT'); - $oCriteria->addJoin(GroupUserPeer::USR_UID, UsersPeer::USR_UID, Criteria::INNER_JOIN); - $oCriteria->add(UsersPeer::USR_STATUS,'CLOSED', Criteria::NOT_EQUAL); - $oCriteria->addGroupByColumn(GroupUserPeer::GRP_UID); - $oDataset = GroupUserPeer::doSelectRS($oCriteria); - $oDataset->setFetchmode (ResultSet::FETCHMODE_ASSOC); - $aRows = Array(); - while ($oDataset->next()){ - $row = $oDataset->getRow(); - $aRows[$row['GRP_UID']] = $row['CNT']; - } - return $aRows; - } - - function getAllUserGroups($usrUid) - { - $oCriteria = new Criteria('workflow'); - $oCriteria->add(GroupUserPeer::USR_UID, $usrUid); - //$oCriteria->addGroupByColumn(GroupUserPeer::GRP_UID); - $oDataset = GroupUserPeer::doSelectRS($oCriteria); - $oDataset->setFetchmode (ResultSet::FETCHMODE_ASSOC); - - $rows = Array(); - while ($oDataset->next()) { - $row = $oDataset->getRow(); - $g = new Groupwf(); - try { - $grpRow = $g->load($row['GRP_UID']); - $row = array_merge($row, $grpRow); - $rows[] = $row; - } - catch (Exception $e){ - continue; - } } - return $rows; - } + /** + * Remove the application document registry + * + * @param string $sGrpUid + * @param string $sUserUid + * @return string + */ + public function remove ($sGrpUid, $sUserUid) + { + $oConnection = Propel::getConnection( GroupUserPeer::DATABASE_NAME ); + try { + $oGroupUser = GroupUserPeer::retrieveByPK( $sGrpUid, $sUserUid ); + if (! is_null( $oGroupUser )) { + $oConnection->begin(); + $iResult = $oGroupUser->delete(); + $oConnection->commit(); + return $iResult; + } else { + throw (new Exception( 'This row doesn\'t exist!' )); + } + } catch (Exception $oError) { + $oConnection->rollback(); + throw ($oError); + } + } + + function getCountAllUsersByGroup () + { + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->addSelectColumn( GroupUserPeer::GRP_UID ); + $oCriteria->addSelectColumn( 'COUNT(*) AS CNT' ); + $oCriteria->addJoin( GroupUserPeer::USR_UID, UsersPeer::USR_UID, Criteria::INNER_JOIN ); + $oCriteria->add( UsersPeer::USR_STATUS, 'CLOSED', Criteria::NOT_EQUAL ); + $oCriteria->addGroupByColumn( GroupUserPeer::GRP_UID ); + $oDataset = GroupUserPeer::doSelectRS( $oCriteria ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $aRows = Array (); + while ($oDataset->next()) { + $row = $oDataset->getRow(); + $aRows[$row['GRP_UID']] = $row['CNT']; + } + return $aRows; + } + + function getAllUserGroups ($usrUid) + { + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->add( GroupUserPeer::USR_UID, $usrUid ); + //$oCriteria->addGroupByColumn(GroupUserPeer::GRP_UID); + $oDataset = GroupUserPeer::doSelectRS( $oCriteria ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + + $rows = Array (); + while ($oDataset->next()) { + $row = $oDataset->getRow(); + $g = new Groupwf(); + try { + $grpRow = $g->load( $row['GRP_UID'] ); + $row = array_merge( $row, $grpRow ); + $rows[] = $row; + } catch (Exception $e) { + continue; + } + } + + return $rows; + } +} +// GroupUser -} // GroupUser diff --git a/workflow/engine/classes/model/LoginLog.php b/workflow/engine/classes/model/LoginLog.php index 2f6a9be88..773e9e7d9 100755 --- a/workflow/engine/classes/model/LoginLog.php +++ b/workflow/engine/classes/model/LoginLog.php @@ -1,143 +1,130 @@ fromArray($aData, BasePeer::TYPE_FIELDNAME); - if($this->validate()) - { - $result=$this->save(); - } - else - { - $e=new Exception("Failed Validation in class ".get_class($this)."."); - $e->aValidationFailures=$this->getValidationFailures(); - throw($e); - } - $con->commit(); - return $result; - } - catch(Exception $e) - { - $con->rollback(); - throw($e); - } - } - - public function load($LogUid) - { - try { - $oRow = LoginLogPeer::retrieveByPK( $LogUid ); - if (!is_null($oRow)) - { - $aFields = $oRow->toArray(BasePeer::TYPE_FIELDNAME); - $this->fromArray($aFields,BasePeer::TYPE_FIELDNAME); - $this->setNew(false); - return $aFields; - } - else { - throw(new Exception( "The row '" . $LogUid . "' in table LOGIN_LOG doesn't exist!" )); - } - } - catch (Exception $oError) { - throw($oError); - } - } - - public function update($fields) - { - $con = Propel::getConnection(LoginLogPeer::DATABASE_NAME); - try - { - $con->begin(); - $this->load($fields['LOG_UID']); - $this->fromArray($fields,BasePeer::TYPE_FIELDNAME); - if($this->validate()) - { - $result=$this->save(); - $con->commit(); - return $result; - } - else - { - $con->rollback(); - throw(new Exception("Failed Validation in class ".get_class($this).".")); - } - } - catch(Exception $e) - { - $con->rollback(); - throw($e); - } - } +class LoginLog extends BaseLoginLog +{ - function remove($LogUid) - { - $con = Propel::getConnection(LoginLogPeer::DATABASE_NAME); - try + function create ($aData) { - $con->begin(); - $this->setWlUid($LogUid); - $result=$this->delete(); - $con->commit(); - return $result; + $con = Propel::getConnection( LoginLogPeer::DATABASE_NAME ); + try { + $this->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + if ($this->validate()) { + $result = $this->save(); + } else { + $e = new Exception( "Failed Validation in class " . get_class( $this ) . "." ); + $e->aValidationFailures = $this->getValidationFailures(); + throw ($e); + } + $con->commit(); + return $result; + } catch (Exception $e) { + $con->rollback(); + throw ($e); + } } - catch(Exception $e) + + public function load ($LogUid) { - $con->rollback(); - throw($e); + try { + $oRow = LoginLogPeer::retrieveByPK( $LogUid ); + if (! is_null( $oRow )) { + $aFields = $oRow->toArray( BasePeer::TYPE_FIELDNAME ); + $this->fromArray( $aFields, BasePeer::TYPE_FIELDNAME ); + $this->setNew( false ); + return $aFields; + } else { + throw (new Exception( "The row '" . $LogUid . "' in table LOGIN_LOG doesn't exist!" )); + } + } catch (Exception $oError) { + throw ($oError); + } } - } - - //Added by Qennix - function getLastLoginByUser($sUID){ - $c = new Criteria(); - $c->addSelectColumn(LoginLogPeer::LOG_INIT_DATE); - $c->add(LoginLogPeer::USR_UID,$sUID); - $c->setLimit(1); - $c->addDescendingOrderByColumn(LoginLogPeer::LOG_INIT_DATE); - $Dat = LoginLogPeer::doSelectRS ($c); - $Dat->setFetchmode ( ResultSet::FETCHMODE_ASSOC ); - $Dat->next(); - $aRow = $Dat->getRow(); - return isset($aRow['LOG_INIT_DATE']) ? $aRow['LOG_INIT_DATE'] : ''; - } - - //Added by Qennix - function getLastLoginAllUsers(){ - $c = new Criteria(); - $c->addSelectColumn(LoginLogPeer::USR_UID); - $c->addAsColumn('LAST_LOGIN', 'MAX(LOG_INIT_DATE)'); - $c->addGroupByColumn(LoginLogPeer::USR_UID); - $Dat = LoginLogPeer::doSelectRS ($c); - $Dat->setFetchmode (ResultSet::FETCHMODE_ASSOC); - $aRows = Array(); - while ($Dat->next()){ - $row = $Dat->getRow(); - $aRows[$row['USR_UID']] = $row['LAST_LOGIN']; - } - return $aRows; - } - -} // LoginLog + + public function update ($fields) + { + $con = Propel::getConnection( LoginLogPeer::DATABASE_NAME ); + try { + $con->begin(); + $this->load( $fields['LOG_UID'] ); + $this->fromArray( $fields, BasePeer::TYPE_FIELDNAME ); + if ($this->validate()) { + $result = $this->save(); + $con->commit(); + return $result; + } else { + $con->rollback(); + throw (new Exception( "Failed Validation in class " . get_class( $this ) . "." )); + } + } catch (Exception $e) { + $con->rollback(); + throw ($e); + } + } + + function remove ($LogUid) + { + $con = Propel::getConnection( LoginLogPeer::DATABASE_NAME ); + try { + $con->begin(); + $this->setWlUid( $LogUid ); + $result = $this->delete(); + $con->commit(); + return $result; + } catch (Exception $e) { + $con->rollback(); + throw ($e); + } + } + + //Added by Qennix + function getLastLoginByUser ($sUID) + { + $c = new Criteria(); + $c->addSelectColumn( LoginLogPeer::LOG_INIT_DATE ); + $c->add( LoginLogPeer::USR_UID, $sUID ); + $c->setLimit( 1 ); + $c->addDescendingOrderByColumn( LoginLogPeer::LOG_INIT_DATE ); + $Dat = LoginLogPeer::doSelectRS( $c ); + $Dat->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $Dat->next(); + $aRow = $Dat->getRow(); + return isset( $aRow['LOG_INIT_DATE'] ) ? $aRow['LOG_INIT_DATE'] : ''; + } + + //Added by Qennix + function getLastLoginAllUsers () + { + $c = new Criteria(); + $c->addSelectColumn( LoginLogPeer::USR_UID ); + $c->addAsColumn( 'LAST_LOGIN', 'MAX(LOG_INIT_DATE)' ); + $c->addGroupByColumn( LoginLogPeer::USR_UID ); + $Dat = LoginLogPeer::doSelectRS( $c ); + $Dat->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $aRows = Array (); + while ($Dat->next()) { + $row = $Dat->getRow(); + $aRows[$row['USR_UID']] = $row['LAST_LOGIN']; + } + return $aRows; + } +} +// LoginLog + diff --git a/workflow/engine/classes/model/ObjectPermission.php b/workflow/engine/classes/model/ObjectPermission.php index 1ddc653d2..5c8315d83 100755 --- a/workflow/engine/classes/model/ObjectPermission.php +++ b/workflow/engine/classes/model/ObjectPermission.php @@ -1,139 +1,131 @@ toArray(BasePeer::TYPE_FIELDNAME); - $this->fromArray($aFields,BasePeer::TYPE_FIELDNAME); - $this->setNew(false); - return $aFields; - } - else { - throw(new Exception( "The row '" . $UsrUid . "' in table USER doesn't exist!" )); - } - } - catch (Exception $oError) { - throw($oError); - } - } - - function create ($aData) - { - try + public function load ($UID) { - $this->fromArray($aData,BasePeer::TYPE_FIELDNAME); - $result=$this->save(); - return $result; + try { + $oRow = ObjectPermissionPeer::retrieveByPK( $UID ); + if (! is_null( $oRow )) { + $aFields = $oRow->toArray( BasePeer::TYPE_FIELDNAME ); + $this->fromArray( $aFields, BasePeer::TYPE_FIELDNAME ); + $this->setNew( false ); + return $aFields; + } else { + throw (new Exception( "The row '" . $UsrUid . "' in table USER doesn't exist!" )); + } + } catch (Exception $oError) { + throw ($oError); + } } - catch(Exception $e) + + function create ($aData) { - throw($e); + try { + $this->fromArray( $aData, BasePeer::TYPE_FIELDNAME ); + $result = $this->save(); + return $result; + } catch (Exception $e) { + throw ($e); + } } - } - function Exists ( $Uid ) { - try { - $oPro = ObjectPermissionPeer::retrieveByPk( $Uid ); - if (is_object($oPro) && get_class ($oPro) == 'ObjectPermission' ) { - return true; - } - else { - return false; - } + function Exists ($Uid) + { + try { + $oPro = ObjectPermissionPeer::retrieveByPk( $Uid ); + if (is_object( $oPro ) && get_class( $oPro ) == 'ObjectPermission') { + return true; + } else { + return false; + } + } catch (Exception $oError) { + throw ($oError); + } } - catch (Exception $oError) { - throw($oError); - } - } - function remove($Uid) - { - $con = Propel::getConnection(ObjectPermissionPeer::DATABASE_NAME); - try { - $oObjPer = ObjectPermissionPeer::retrieveByPK($Uid); - if (is_object($oObjPer) && get_class($oObjPer) == 'ObjectPermission') - { - $con->begin(); - $iResult = $oObjPer->delete(); - $con->commit(); - return $iResult; - } - else { - throw( new Exception( "The row '" . $Uid . "' in table CaseTrackerObject doesn't exist!" )); - } + function remove ($Uid) + { + $con = Propel::getConnection( ObjectPermissionPeer::DATABASE_NAME ); + try { + $oObjPer = ObjectPermissionPeer::retrieveByPK( $Uid ); + if (is_object( $oObjPer ) && get_class( $oObjPer ) == 'ObjectPermission') { + $con->begin(); + $iResult = $oObjPer->delete(); + $con->commit(); + return $iResult; + } else { + throw (new Exception( "The row '" . $Uid . "' in table CaseTrackerObject doesn't exist!" )); + } + } catch (exception $e) { + $con->rollback(); + throw ($e); + } } - catch (exception $e) { - $con->rollback(); - throw ($e); - } - } - function update($aFields) { - $oConnection = Propel::getConnection(ObjectPermissionPeer::DATABASE_NAME); - try { - $oConnection->begin(); - $this->load($aFields['OP_UID']); - $this->fromArray($aFields, BasePeer::TYPE_FIELDNAME); - if ($this->validate()) { - $iResult = $this->save(); - $oConnection->commit(); - return $iResult; - } - else { - $oConnection->rollback(); - throw(new Exception('Failed Validation in class ' . get_class($this) . '.')); - } + function update ($aFields) + { + $oConnection = Propel::getConnection( ObjectPermissionPeer::DATABASE_NAME ); + try { + $oConnection->begin(); + $this->load( $aFields['OP_UID'] ); + $this->fromArray( $aFields, BasePeer::TYPE_FIELDNAME ); + if ($this->validate()) { + $iResult = $this->save(); + $oConnection->commit(); + return $iResult; + } else { + $oConnection->rollback(); + throw (new Exception( 'Failed Validation in class ' . get_class( $this ) . '.' )); + } + } catch (Exception $e) { + $oConnection->rollback(); + throw ($e); + } } - catch(Exception $e) { - $oConnection->rollback(); - throw($e); - } - } - function removeByObject($sType, $sObjUid) { - try { - $oCriteria = new Criteria('workflow'); - $oCriteria->add(ObjectPermissionPeer::OP_OBJ_TYPE, $sType); - $oCriteria->add(ObjectPermissionPeer::OP_OBJ_UID, $sObjUid); - ObjectPermissionPeer::doDelete($oCriteria); + function removeByObject ($sType, $sObjUid) + { + try { + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->add( ObjectPermissionPeer::OP_OBJ_TYPE, $sType ); + $oCriteria->add( ObjectPermissionPeer::OP_OBJ_UID, $sObjUid ); + ObjectPermissionPeer::doDelete( $oCriteria ); + } catch (Exception $e) { + throw ($e); + } } - catch(Exception $e) { - throw($e); + + function loadInfo ($sObjUID) + { + + $oCriteria = new Criteria( 'workflow' ); + $oCriteria->add( ObjectPermissionPeer::OP_OBJ_UID, $sObjUID ); + $oDataset = ObjectPermissionPeer::doSelectRS( $oCriteria ); + $oDataset->setFetchmode( ResultSet::FETCHMODE_ASSOC ); + $oDataset->next(); + $aRow = $oDataset->getRow(); + return ($aRow); } - } - - function loadInfo($sObjUID){ - - $oCriteria = new Criteria('workflow'); - $oCriteria->add(ObjectPermissionPeer::OP_OBJ_UID, $sObjUID); - $oDataset = ObjectPermissionPeer::doSelectRS($oCriteria); - $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC); - $oDataset->next(); - $aRow = $oDataset->getRow(); - return($aRow); - } - -} // ObjectPermission +} +// ObjectPermission +