mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-06-27 05:11:41 +02:00
fix for bug [ 1120676 ] Date&Linking Probs in InfoLog:
caused by error in handling of array's when magic_quotes_gpc was on
This commit is contained in:
parent
f3b5682b92
commit
ab02fe9ee0
@ -31,8 +31,12 @@
|
|||||||
*/
|
*/
|
||||||
class etemplate extends boetemplate
|
class etemplate extends boetemplate
|
||||||
{
|
{
|
||||||
var $debug; /** 1=calls to show and process_show, 2=content after process_show,
|
/**
|
||||||
3=calls to show_cell and process_show_cell, or template-name or cell-type */
|
* @var int/string='' integer debug-level or template-name or cell-type or '' = off
|
||||||
|
* 1=calls to show and process_show, 2=content after process_show,
|
||||||
|
* 3=calls to show_cell and process_show_cell
|
||||||
|
*/
|
||||||
|
var $debug;
|
||||||
var $html; /** instance of html-class */
|
var $html; /** instance of html-class */
|
||||||
var $xslt = false; /** do we run in the xslt framework (true) or the regular eGW one (false) */
|
var $xslt = false; /** do we run in the xslt framework (true) or the regular eGW one (false) */
|
||||||
var $class_conf = array('nmh' => 'th','nmr0' => 'row_on','nmr1' => 'row_off');
|
var $class_conf = array('nmh' => 'th','nmr0' => 'row_on','nmr1' => 'row_off');
|
||||||
@ -63,7 +67,7 @@
|
|||||||
* In other UI's than html this needs to call the methode, defined by menuaction or
|
* In other UI's than html this needs to call the methode, defined by menuaction or
|
||||||
* open a browser-window for any other links.
|
* open a browser-window for any other links.
|
||||||
*
|
*
|
||||||
* @param $params string/array url or array with get-params incl. menuaction
|
* @param string/array $params url or array with get-params incl. menuaction
|
||||||
*/
|
*/
|
||||||
function location($params='')
|
function location($params='')
|
||||||
{
|
{
|
||||||
@ -1103,6 +1107,24 @@
|
|||||||
return $html;
|
return $html;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* applies stripslashes recursivly on each element of an array
|
||||||
|
*
|
||||||
|
* @param array &$var
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
function array_stripslashes($var)
|
||||||
|
{
|
||||||
|
if (!is_array($var))
|
||||||
|
{
|
||||||
|
return stripslashes($var);
|
||||||
|
}
|
||||||
|
foreach($var as $key => $val)
|
||||||
|
{
|
||||||
|
$var[$key] = is_array($val) ? $this->array_stripslashes($val) : stripslashes($val);
|
||||||
|
}
|
||||||
|
return $var;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* makes necessary adjustments on $_POST after a eTemplate / form gots submitted
|
* makes necessary adjustments on $_POST after a eTemplate / form gots submitted
|
||||||
@ -1111,9 +1133,9 @@
|
|||||||
* Process_show uses a list of input-fields/widgets generated by show.
|
* Process_show uses a list of input-fields/widgets generated by show.
|
||||||
*
|
*
|
||||||
* @internal
|
* @internal
|
||||||
* @param $content array $_POST[$cname], on return the adjusted content
|
* @param array $content $_POST[$cname], on return the adjusted content
|
||||||
* @param $to_process array list of widgets/form-fields to process
|
* @param array $to_process list of widgets/form-fields to process
|
||||||
* @param $cname string basename of our returnt content (same as in call to show)
|
* @param string $cname basename of our returnt content (same as in call to show)
|
||||||
* @return int number of validation errors (the adjusted content is returned by the var-param &$content !)
|
* @return int number of validation errors (the adjusted content is returned by the var-param &$content !)
|
||||||
*/
|
*/
|
||||||
function process_show(&$content,$to_process,$cname='')
|
function process_show(&$content,$to_process,$cname='')
|
||||||
@ -1128,6 +1150,10 @@
|
|||||||
}
|
}
|
||||||
$content_in = $cname ? array($cname => $content) : $content;
|
$content_in = $cname ? array($cname => $content) : $content;
|
||||||
$content = array();
|
$content = array();
|
||||||
|
if (get_magic_quotes_gpc())
|
||||||
|
{
|
||||||
|
$content_in = $this->array_stripslashes($content_in);
|
||||||
|
}
|
||||||
$GLOBALS['phpgw_info']['etemplate']['validation_errors'] = array();
|
$GLOBALS['phpgw_info']['etemplate']['validation_errors'] = array();
|
||||||
$this->canceled = $this->button_pressed = False;
|
$this->canceled = $this->button_pressed = False;
|
||||||
|
|
||||||
@ -1143,8 +1169,6 @@
|
|||||||
$attr = array();
|
$attr = array();
|
||||||
}
|
}
|
||||||
$value = $this->get_array($content_in,$form_name,True);
|
$value = $this->get_array($content_in,$form_name,True);
|
||||||
|
|
||||||
if ($value && get_magic_quotes_gpc()) $value = stripslashes($value);
|
|
||||||
|
|
||||||
if (isset($attr['blur']) && $attr['blur'] == $value)
|
if (isset($attr['blur']) && $attr['blur'] == $value)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user