diff --git a/etemplate/inc/class.html.inc.php b/etemplate/inc/class.html.inc.php
deleted file mode 100644
index be328e3c6a..0000000000
--- a/etemplate/inc/class.html.inc.php
+++ /dev/null
@@ -1,388 +0,0 @@
- *
- * -------------------------------------------- *
- * This program is free software; you can redistribute it and/or modify it *
- * under the terms of the GNU General Public License as published by the *
- * Free Software Foundation; either version 2 of the License, or (at your *
- * option) any later version. *
- \**************************************************************************/
-
- /* $Id$ */
-
-class html
-{
- var $user_agent,$ua_version; // 'mozilla','msie','konqueror'
- var $prefered_img_title;
-
- function html()
- { // should be Ok for all HTML 4 compatible browsers
- if (!eregi('compatible; ([a-z_]+)[/ ]+([0-9.]+)',$_SERVER['HTTP_USER_AGENT'],$parts))
- {
- eregi('^([a-z_]+)/([0-9.]+)',$_SERVER['HTTP_USER_AGENT'],$parts);
- }
- list(,$this->user_agent,$this->ua_version) = $parts;
- $this->user_agent = strtolower($this->user_agent);
-
- $this->prefered_img_title = $this->user_agent == 'mozilla' && $this->ua_version < 5 ? 'ALT' : 'TITLE';
- //echo "
HTTP_USER_AGENT='$GLOBALS[HTTP_USER_AGENT]', UserAgent: '$this->user_agent', Version: '$this->ua_version', img_title: '$this->prefered_img_title'
\n";
-
- $this->document_root = $_SERVER['DOCUMENT_ROOT'];
- // this is because some webservers report their docroot without the leading slash
- if (!is_dir($this->document_root) && is_dir('/'.$this->document_root))
- {
- $this->document_root = '/' . $this->document_root;
- }
- //echo "_SERVER[DOCUMENT_ROOT]='$_SERVER[DOCUMENT_ROOT]', this->document_root='$this->document_root'
\n";
- }
-
- /*
- * Function: Allows to show and select one item from an array
- * Parameters: $name string with name of the submitted var which holds the key of the selected item form array
- * $key key(s) of already selected item(s) from $arr, eg. '1' or '1,2' or array with keys
- * $arr array with items to select, eg. $arr = array ( 'y' => 'yes','n' => 'no','m' => 'maybe');
- * $no_lang if !$no_lang send items through lang()
- * $options additional options (e.g. 'multiple')
- * On submit $XXX is the key of the selected item (XXX is the content of $name)
- * Returns: string to set for a template or to echo into html page
- */
- function select($name, $key, $arr=0,$no_lang=0,$options='',$multiple=0)
- {
- // should be in class common.sbox
- if (!is_array($arr))
- {
- $arr = array('no','yes');
- }
- if (intval($multiple) > 0)
- {
- $options .= ' MULTIPLE SIZE="'.intval($multiple).'"';
- if (substr($name,-2) != '[]')
- {
- $name .= '[]';
- }
- }
- $out = "\n";
-
- if (is_array($key))
- {
- $key = implode(',',$key);
- }
- foreach($arr as $k => $text)
- {
- $out .= '\n";
- }
- $out .= " \n";
-
- return $out;
- }
-
- function div($content,$options='')
- {
- return "\n$content
\n";
- }
-
- function input_hidden($vars,$value='',$ignore_empty=True)
- {
- if (!is_array($vars))
- {
- $vars = array( $vars => $value );
- }
- foreach($vars as $name => $value)
- {
- if (is_array($value))
- {
- $value = serialize($value);
- }
- if (!$ignore_empty || $value && !($name == 'filter' && $value == 'none')) // dont need to send all the empty vars
- {
- $html .= " \n";
- }
- }
- return $html;
- }
-
- function textarea($name,$value='',$options='' )
- {
- return "\n";
- }
-
- function input($name,$value='',$type='',$options='' )
- {
- if ($type)
- {
- $type = 'TYPE="'.$type.'"';
- }
- return " \n";
- }
-
- function submit_button($name,$lang,$onClick='',$no_lang=0,$options='',$image='',$app='')
- {
- if ($image != '')
- {
- if (strpos($image,'.'))
- {
- $image = substr($image,0,strpos($image,'.'));
- }
- if (!($path = $GLOBALS['phpgw']->common->image($app,$image)) &&
- !($path = $GLOBALS['phpgw']->common->image('phpgwapi',$image)))
- {
- $path = $image; // name may already contain absolut path
- }
- $image = ' SRC="'.$path.'"';
- }
- if (!$no_lang)
- {
- $lang = lang($lang);
- }
- if (($accesskey = strstr($lang,'&')) && $accesskey[1] != ' ' &&
- (($pos = strpos($accesskey,';')) === False || $pos > 5))
- {
- $lang_u = str_replace('&'.$accesskey[1],''.$accesskey[1].' ',$lang);
- $lang = str_replace('&','',$lang);
- $options = 'ACCESSKEY="'.$accesskey[1].'" '.$options;
- }
- else
- {
- $accesskey = '';
- $lang_u = $lang;
- }
- if ($onClick) $options .= " onClick=\"$onClick\"";
-
- // is not working in all cases if ($this->user_agent == 'mozilla' && $this->ua_version < 5 || $image)
- {
- return $this->input($name,$lang,$image != '' ? 'IMAGE' : 'SUBMIT',$options.$image);
- }
- return ''.
- ($image != '' ? " prefered_img_title=\"$lang\"> " : '').
- ($image == '' || $accesskey ? $lang_u : '').' ';
- }
-
- /*!
- @function link
- @abstract creates an absolut link + the query / get-variables
- @param $url phpgw-relative link, may include query / get-vars
- @parm $vars query or array ('name' => 'value', ...) with query
- @example link('/index.php?menuaction=infolog.uiinfolog.get_list',array('info_id' => 123))
- @example = 'http://domain/phpgw-path/index.php?menuaction=infolog.uiinfolog.get_list&info_id=123'
- @result absolut link already run through $phpgw->link
- */
- function link($url,$vars='')
- {
- //echo "html::link(url='$url',vars='"; print_r($vars); echo "')
\n";
- if (!is_array($vars))
- {
- parse_str($vars,$vars);
- }
- list($url,$v) = explode('?',$url); // url may contain additional vars
- if ($v)
- {
- parse_str($v,$v);
- $vars += $v;
- }
- return $GLOBALS['phpgw']->link($url,$vars);
- }
-
- function checkbox($name,$value='')
- {
- return " \n";
- }
-
- function form($content,$hidden_vars,$url,$url_vars='',$name='',$options='',$method='POST')
- {
- $html = "\n";
- }
- return $html;
- }
-
- function form_1button($name,$lang,$hidden_vars,$url,$url_vars='',$form_name='',$method='POST')
- {
- return $this->form($this->submit_button($name,$lang),
- $hidden_vars,$url,$url_vars,$form_name,'',$method);
- }
-
- /*!
- @function table
- @abstracts creates table from array with rows
- @discussion abstract the html stuff
- @param $rows array with rows, each row is an array of the cols
- @param $options options for the table-tag
- @example $rows = array ( '1' => array( 1 => 'cell1', '.1' => 'colspan=3',
- @example 2 => 'cell2', 3 => 'cell3', '.3' => 'width="10%"' ),
- @example '.1' => 'BGCOLOR="#0000FF"' );
- @example table($rows,'WIDTH="100%"') = ''
- @result string with html-code of the table
- */
- function table($rows,$options = '',$no_table_tr=False)
- {
- $html = $no_table_tr ? '' : "\n";
-
- foreach($rows as $key => $row)
- {
- if (!is_array($row))
- {
- continue; // parameter
- }
- $html .= $no_table_tr && $key == 1 ? '' : "\t\n";
-
- foreach($row as $key => $cell)
- {
- if ($key[0] == '.')
- {
- continue; // parameter
- }
- $table_pos = strpos($cell,'$cell\n";
- }
- }
- $html .= "\t\n";
- }
- $html .= "
\n";
-
- if ($no_table_tr)
- {
- $html = substr($html,0,-16);
- }
- return $html;
- }
-
- function sbox_submit( $sbox,$no_script=0 )
- {
- $html = str_replace('submit_button('send','>').'';
- }
- return $html;
- }
-
- function image( $app,$name,$title='',$options='' )
- {
- if (!($path = $GLOBALS['phpgw']->common->image($app,$name)))
- {
- $path = $name; // name may already contain absolut path
- }
- if (!@is_readable($this->document_root . $path))
- {
- return $title;
- }
- if ($title)
- {
- $options .= " $this->prefered_img_title=\"".htmlspecialchars($title).'"';
- }
- return " ";
- }
-
- function a_href( $content,$url,$vars='',$options='')
- {
- if (!strstr($url,'/') && count(explode('.',$url)) == 3)
- {
- $url = "/index.php?menuaction=$url";
- }
- if (is_array($url))
- {
- $vars = $url;
- $url = '/index.php';
- }
- return ''.$content.' ';
- }
-
- function bold($content)
- {
- return ''.$content.' ';
- }
-
- function italic($content)
- {
- return ''.$content.' ';
- }
-
- function hr($width,$options='')
- {
- if ($width)
- $options .= " WIDTH=$width";
- return " \n";
- }
-
- /*!
- @function formatOptions
- @abstract formats option-string for most of the above functions
- @param $options String (or Array) with option-values eg. '100%,,1'
- @param $names String (or Array) with the option-names eg. 'WIDTH,HEIGHT,BORDER'
- @example formatOptions('100%,,1','WIDTH,HEIGHT,BORDER') = ' WIDTH="100%" BORDER="1"'
- @result option string
- */
- function formatOptions($options,$names)
- {
- if (!is_array($options)) $options = explode(',',$options);
- if (!is_array($names)) $names = explode(',',$names);
-
- while (list($n,$val) = each($options))
- if ($val != '' && $names[$n] != '')
- $html .= ' '.$names[$n].'="'.$val.'"';
-
- return $html;
- }
-
- /*!
- @function themeStyles
- @abstract returns simple stylesheet (incl. " : '';
- }
-
- function label($content,$id='',$accesskey='',$options='')
- {
- if ($id != '')
- {
- $id = " FOR=\"$id\"";
- }
- if ($accesskey != '')
- {
- $accesskey = " ACCESSKEY=\"$accesskey\"";
- }
- return "$content ";
- }
-}
diff --git a/etemplate/inc/class.uietemplate.inc.php b/etemplate/inc/class.uietemplate.inc.php
index f07e248dc4..cf0378d5b4 100644
--- a/etemplate/inc/class.uietemplate.inc.php
+++ b/etemplate/inc/class.uietemplate.inc.php
@@ -49,7 +49,11 @@
'show' => True,
'process_show' => True,
);
- $this->html = CreateObject('etemplate.html'); // should be in the api (older version in infolog)
+ if (!is_object($GLOBALS['phpgw']->html))
+ {
+ $GLOBALS['phpgw']->html = CreateObject('phpgwapi.html');
+ }
+ $this->html = &$GLOBALS['phpgw']->html;
$this->boetemplate($name,$load_via);
diff --git a/infolog/inc/class.boinfolog.inc.php b/infolog/inc/class.boinfolog.inc.php
index 65a7638ecc..dedc70d0eb 100644
--- a/infolog/inc/class.boinfolog.inc.php
+++ b/infolog/inc/class.boinfolog.inc.php
@@ -294,6 +294,12 @@
{
return False;
}
+ if (!is_object($GLOBALS['phpgw']->html))
+ {
+ $GLOBALS['phpgw']->html = CreateObject('phpgwapi.html');
+ }
+ $GLOBALS['phpgw']->translation->add_app('infolog');
+
$do_events = $args['location'] == 'calendar_include_events';
$start = 0;
$to_include = array();
@@ -310,11 +316,6 @@
{
continue;
}
- if (!is_object($GLOBALS['phpgw']->html)) // only once and only if thers something to report
- {
- $GLOBALS['phpgw']->html = CreateObject('etemplate.html');
- $GLOBALS['phpgw']->translation->add_app('infolog');
- }
$title = ($do_events?$GLOBALS['phpgw']->common->formattime(date('H',$info['info_startdate']+$this->tz_offset_sec),date('i',$info['info_startdate']+$this->tz_offset_sec)).' ':'').
$info['info_subject'];
$view = $this->link->view('infolog',$info['info_id']);
diff --git a/infolog/inc/class.uilink.inc.php b/infolog/inc/class.uilink.inc.php
index 714ded5ba0..52bc92c1cb 100644
--- a/infolog/inc/class.uilink.inc.php
+++ b/infolog/inc/class.uilink.inc.php
@@ -32,6 +32,10 @@
'getEntry' => True,
'showLinks' => True
);
+ if (!is_object($GLOBALS['phpgw']->html))
+ {
+ $GLOBALS['phpgw']->html = CreateObjecet('phpgwapi.html');
+ }
}
/*!
@@ -65,8 +69,7 @@
'remark' => ''
);
$etemplate = CreateObject('etemplate.etemplate','infolog.linkto_widget.create');
- $html = CreateObject('etemplate.html');
- $out = $etemplate->show($value,'','',$name)."\n".$html->input_hidden($name.'[app]',$value['app']);
+ $out = $etemplate->show($value,'','',$name)."\n".$GLOBALS['phpgw']->html->input_hidden($name.'[app]',$value['app']);
}
else
{
@@ -136,15 +139,14 @@
@param $content if set result will be like "$content "
@result link to view $id in $app or False if no link for $app registered or $id==''
*/
- function viewLink($app,$id,$html='')
+ function viewLink($app,$id)
{
$view = $this->view($app,$id);
if (!count($view))
{
return False;
}
- $html = CreateObject('etemplate.html');
- return $content == '' ? $html->link('/index.php',$view) : $html->a_href($content,'/index.php',$view);
+ return $content == '' ? $GLOBALS['phpgw']->html->link('/index.php',$view) : $GLOBALS['phpgw']->html->a_href($content,'/index.php',$view);
}
/*!