fixed php5.2.6 problem: unknown type ''

This commit is contained in:
Ralf Becker 2008-06-22 07:16:40 +00:00
parent ecd3948175
commit f66e2e4004
2 changed files with 1018 additions and 1017 deletions

File diff suppressed because it is too large Load Diff

View File

@ -67,7 +67,7 @@ class soetemplate
/**
* widgets that contain other widgets, eg. for tree_walk method
* widget-type is the key, the value specifys how the children are stored.
*
*
* @var array
*/
static $widgets_with_children = array(
@ -79,7 +79,7 @@ class soetemplate
'groupbox' => 'box',
'deck' => 'box',
);
/**
* constructor of the class
*
@ -143,7 +143,7 @@ class soetemplate
{
$min = ord('A');
$max = ord('Z') - $min + 1;
$num = 1+ord($chrs{0})-$min;
if (strlen($chrs) > 1)
{
@ -171,7 +171,7 @@ class soetemplate
);
if ($attributes && is_array($attributes))
{
return array_merge($attributes,$cell);
$cell += $attributes;
}
return $cell;
}
@ -291,7 +291,7 @@ class soetemplate
}
}
}
/**
* initialises internal vars rows & cols from the data of the first (!) grid
*
@ -328,7 +328,7 @@ class soetemplate
{
// unset children and data as they are referenzes to each other
unset($this->children); unset($this->data);
foreach(self::$db_cols as $db_col => $col)
{
if ($col != 'data') $this->$col = is_array($name) ? (string) $name[$col] : $$col;
@ -342,7 +342,7 @@ class soetemplate
$this->lang = '';
}
$this->tpls_in_file = is_array($name) ? $name['tpls_in_file'] : 0;
if (is_array($name) && $name['onclick_handler']) $this->onclick_handler = $name['onclick_handler'];
if (is_array($name) && isset($name['data']))
@ -439,7 +439,7 @@ class soetemplate
return $this->readfile() && (empty($version) || $version == $this->version);
}
$this->db2obj($row);
if ($this->debug == $this->name)
{
$this->echo_tmpl();
@ -595,7 +595,7 @@ class soetemplate
foreach (self::$db_cols as $db_col => $name)
{
if ($name != 'data')
if ($name != 'data')
{
$this->$name = $row[$db_col];
}
@ -606,14 +606,14 @@ class soetemplate
}
$this->fix_old_template_format();
}
/**
* test if we have an old/original template-format and fixes it to the new format
*/
function fix_old_template_format()
{
if (!is_array($this->children)) $this->children = array();
if (!isset($this->children[0]['type']))
{
// old templates are treated as having one children of type grid (the original template)
@ -717,9 +717,9 @@ class soetemplate
/**
* returns obj-data/-vars as array
*
* the returned array ($data_too > 0) can be used with init to recreate the template
* the returned array ($data_too > 0) can be used with init to recreate the template
*
* @param int $data_too -1 = only keys, 0 = no data array, 1 = data array too, 2 = serialize data array,
* @param int $data_too -1 = only keys, 0 = no data array, 1 = data array too, 2 = serialize data array,
* 3 = only data values and data serialized
* @param boolean $db_keys use db-column-names or internal names, default false=internal names
* @return array with template-data
@ -754,11 +754,11 @@ class soetemplate
$arr[$db_keys ? $db_col : $col] = $this->$col;
}
}
if ($data_too != -1 && $this->tpls_in_file && !$db_keys)
if ($data_too != -1 && $this->tpls_in_file && !$db_keys)
{
$arr['tpls_in_file'] = $this->tpls_in_file;
}
if ($data_too != -1 && $this->onclick_handler && !$db_keys)
if ($data_too != -1 && $this->onclick_handler && !$db_keys)
{
$arr['onclick_handler'] = $this->onclick_handler;
}
@ -893,7 +893,7 @@ class soetemplate
fwrite($f,'<?php
/**
* eGroupWare - eTemplates for Application '. $app. '
* http://www.egroupware.org
* http://www.egroupware.org
* generated by soetemplate::dump4setup() '.date('Y-m-d H:i'). '
*
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
@ -932,7 +932,7 @@ class soetemplate
$to_trans = array();
$this->widget_tree_walk(array('soetemplate','getToTranslateCell'),$to_trans);
//echo '<b>'.$this->name.'</b>'; _debug_array($to_trans);
return $to_trans;
}
@ -950,7 +950,7 @@ class soetemplate
$tpls = $this->search($app);
$tpl =& new soetemplate; // to not alter our own data
while (list(,$keys) = each($tpls))
{
if (($keys['name'] != $last['name'] || // write only newest version
@ -1110,7 +1110,7 @@ class soetemplate
}
return $ret;
}
/**
* prints/echos the template's content, eg. for debuging
*
@ -1120,7 +1120,7 @@ class soetemplate
function echo_tmpl($backtrace=true,$no_other_objs=true)
{
static $objs = array('db','html','xul_io');
if ($backtrace) echo "<p>".function_backtrace(1)."</p>\n";
if ($no_other_objs)
@ -1132,7 +1132,7 @@ class soetemplate
}
}
_debug_array($this);
if ($no_other_objs)
{
foreach($objs as $obj)
@ -1147,12 +1147,12 @@ class soetemplate
* applys a function to each widget in the children tree of the template
*
* The function should be defined as [&]func([&]$widget,[&]$extra[,$path])
* If the function returns anything but null or sets $extra['__RETURN__NOW__'] (func has to reference $extra !!!),
* If the function returns anything but null or sets $extra['__RETURN__NOW__'] (func has to reference $extra !!!),
* the walk stops imediatly and returns that result
*
* Only some widgets have a sub-tree of children: *box, grid, template, ...
* For them we call tree_walk($widget,$func,$extra) instead of func direct
*
*
* Please note: as call_user_func_array does not return references, methods ($func is an array) can not either!!!
*
* @param string/array $func function to use or array($obj,'method')
@ -1186,16 +1186,16 @@ class soetemplate
}
return $result;
}
/**
* applys a function to each child in the tree of a widget (incl. the widget itself)
* applys a function to each child in the tree of a widget (incl. the widget itself)
*
* The function should be defined as [&]func([&]$widget,[&]$extra[,$path]) [] = optional
* If the function returns anything but null or sets $extra['__RETURN__NOW__'] (func has to reference $extra !!!),
* If the function returns anything but null or sets $extra['__RETURN__NOW__'] (func has to reference $extra !!!),
* the walk stops imediatly and returns that result
*
* Only some widgets have a sub-tree of children: *box, grid, template, ...
* For performance reasons the function use recursion only if a widget with children contains
* For performance reasons the function use recursion only if a widget with children contains
* a further widget with children.
*
* @param array $widget the widget(-tree) the function should be applied too
@ -1219,7 +1219,7 @@ class soetemplate
{
$result =& $func($widget,$extra,$path);
}
if (!is_null($result) || is_array($extra) && isset($extra['__RETURN__NOW__']) ||
if (!is_null($result) || is_array($extra) && isset($extra['__RETURN__NOW__']) ||
!isset(soetemplate::$widgets_with_children[$widget['type']]))
{
return $result;
@ -1278,7 +1278,7 @@ class soetemplate
}
}
break;
case 'template':
if (!isset($widget['obj']) && $widget['name'][0] != '@')
{
@ -1286,13 +1286,13 @@ class soetemplate
if (!$widget['obj']->read($widget['name'])) $widget['obj'] = false;
}
if (!is_object($widget['obj'])) break; // cant descent into template
$result =& $widget['obj']->widget_tree_walk($func,$extra,$path.'/');
break;
}
return $result;
}
/**
* extracts all translatable labels from a widget
*
@ -1319,14 +1319,14 @@ class soetemplate
}
foreach($strings as $str)
{
if (strlen($str) > 1 && $str{0} != '@' && $str{0} != '$' &&
if (strlen($str) > 1 && $str{0} != '@' && $str{0} != '$' &&
strpos($str,'$row') === false && strpos($str,'$cont') === false)
{
$to_trans[trim(strtolower($str))] = $str;
}
}
}
/**
* init our static vars
*/