phpgroupware-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-cvs] CVS: etemplate/inc class.boetemplate.inc.php,1.28,1.2


From: Ralf Becker <address@hidden>
Subject: [Phpgroupware-cvs] CVS: etemplate/inc class.boetemplate.inc.php,1.28,1.29 class.html.inc.php,1.11,1.12 class.uietemplate.inc.php,1.39,1.40
Date: Tue, 08 Oct 2002 20:31:03 -0400

Update of /cvsroot/phpgroupware/etemplate/inc
In directory subversions:/tmp/cvs-serv21646

Modified Files:
        class.boetemplate.inc.php class.html.inc.php 
        class.uietemplate.inc.php 
Log Message:
made labels with accesskey work
changed name for html-widget from raw to html
fixed some error/warnings

Index: class.boetemplate.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/etemplate/inc/class.boetemplate.inc.php,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -r1.28 -r1.29
*** class.boetemplate.inc.php   8 Oct 2002 00:06:14 -0000       1.28
--- class.boetemplate.inc.php   9 Oct 2002 00:31:01 -0000       1.29
***************
*** 31,46 ****
                        'int'           => 'Integer',           // like text, 
but only numbers (size = [min][,max])
                        'float' => 'Floating Point', // --------------- " 
--------------------------
!                       'textarea' => 'Textarea',       // Multiline Text Input 
(size = [rows][,cols])
                        'checkbox'=> 'Checkbox',
                        'radio' => 'Radiobutton',       // Radiobutton (size = 
value if checked)
                        'button'        => 'Submitbutton',
                        'hrule' => 'Horizontal Rule',
!                       'template' => 'Template',       // $cell['name'] 
contains template-name, $cell['size'] index into $content,$cname,$readonlys
!                       'image' => 'Image',                     // label = url, 
name=link or method, help=alt or title
!                       'date'  => '',                  // Datefield, size='' 
timestamp or size=format like 'm/d/Y'
                        'select'        =>      'Selectbox',    // Selectbox 
($sel_options[$name] or $content[options-$name] is array with options)
                                                                                
                // if size > 1 then multiple selections, size lines showed
!                       'raw'           => 'Raw',       // Raw html in 
$content[$cell['name']]
!                       'file' => 'FileUpload'  // show an input type='file', 
set the local name as ${name}_path
                );
                /*!
--- 31,46 ----
                        'int'           => 'Integer',           // like text, 
but only numbers (size = [min][,max])
                        'float' => 'Floating Point', // --------------- " 
--------------------------
!                       'textarea'=> 'Textarea',        // Multiline Text Input 
(size = [rows][,cols])
                        'checkbox'=> 'Checkbox',
                        'radio' => 'Radiobutton',       // Radiobutton (size = 
value if checked)
                        'button'        => 'Submitbutton',
                        'hrule' => 'Horizontal Rule',
!                       'template'=> 'Template',        // $cell['name'] 
contains template-name, $cell['size'] index into $content,$cname,$readonlys
!                       'image' => 'Image',                     // label = url, 
name=link or method, help=alt or title
!                       'date'  => '',                          // Datefield, 
size='' timestamp or size=format like 'm/d/Y'
                        'select'        =>      'Selectbox',    // Selectbox 
($sel_options[$name] or $content[options-$name] is array with options)
                                                                                
                // if size > 1 then multiple selections, size lines showed
!                       'html'  => 'Html',                      // Raw html in 
$content[$cell['name']]
!                       'file'  => 'FileUpload' // show an input type='file', 
set the local name as ${name}_path
                );
                /*!
***************
*** 592,594 ****
                        return $result;
                }
!       };
\ No newline at end of file
--- 592,594 ----
                        return $result;
                }
!       };

Index: class.html.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/etemplate/inc/class.html.inc.php,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -r1.11 -r1.12
*** class.html.inc.php  8 Oct 2002 00:02:39 -0000       1.11
--- class.html.inc.php  9 Oct 2002 00:31:01 -0000       1.12
***************
*** 1,299 ****
! <?php
!       
/**************************************************************************\
!       * phpGroupWare - HTML creation class                                    
   *
!       * http://www.phpgroupware.org                                           
   *
!       * Written by Ralf Becker <address@hidden>                  *
!       * --------------------------------------------                          
   *
!       *  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;
!       var $prefered_img_title;
! 
!       function html()
!       {                                                                       
                                                        // should be Ok for all 
HTML 4 compatible browsers
!               if (!eregi('compatible; ([a-z_]+)[/ 
]+([0-9.]+)',$GLOBALS['HTTP_USER_AGENT'],$parts))
!                       
eregi('^([a-z_]+)/([0-9.]+)',$GLOBALS['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 "<p>HTTP_USER_AGENT='$GLOBALS[HTTP_USER_AGENT]', 
UserAgent: '$this->user_agent', Version: '$this->ua_version', img_title: 
'$this->prefered_img_title'</p>\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 (0+$multiple > 0)
!               {
!                       $options .= ' MULTIPLE SIZE='.(0+$multiple);
!                       if (substr($name,-2) != '[]')
!                       {
!                               $name .= '[]';
!                       }
!               }
!               $out = "<select name=\"$name\" $options>\n";
! 
!               if (is_array($key))
!               {
!                       $key = implode(',',$key);
!               }
!               while (list($k,$text) = each($arr))
!               {
!                       $out .= '<option value="'.$k.'"';
!                       if($k == $key || strstr(",$key,",",$k,"))
!                       {
!                               $out .= " SELECTED";
!                       }
!                       $out .= ">" . ($no_lang || $text == '' ? $text : 
lang($text)) . "</option>\n";
!               }
!               $out .= "</select>\n";
! 
!               return $out;
!       }
! 
!       function div($content,$options='')
!       {
!               return "<DIV $options>\n$content</DIV>\n";
!       }
! 
!       function input_hidden($vars,$value='',$ignore_empty=True)
!       {
!               if (!is_array($vars))
!               {
!                       $vars = array( $vars => $value );
!               }
!               while (list($name,$value) = each($vars))
!               {
!                       if (is_array($value)) $value = serialize($value);
!                       if (!$ignore_empty || $value && !($name == 'filter' && 
$value == 'none'))       // dont need to send all the empty vars
!                       {
!                               $html .= "<INPUT TYPE=HIDDEN NAME=\"$name\" 
VALUE=\"".htmlspecialchars($value)."\">\n";
!                       }
!               }
!               return $html;
!       }
! 
!       function textarea($name,$value='',$options='' )
!       {
!               return "<TEXTAREA name=\"$name\" $options>$value</TEXTAREA>\n";
!       }
! 
!       function input($name,$value='',$type='',$options='' )
!       {
!               if ($type) $type = 'TYPE="'.$type.'"';
! 
!               return "<INPUT $type NAME=\"$name\" VALUE=\"$value\" 
$options>\n";
!       }
! 
!       function 
submit_button($name,$lang,$onClick='',$no_lang=0,$options='',$image='',$app='')
!       {
!               if ($image != '')
!               {
!                       if (!($path = 
$GLOBALS['phpgw']->common->image($app,$image)))
!                               $path = $image;         // name may already 
contain absolut path
!                       $options .= ' src="'.$path.'"';
!               }
!               if (!$no_lang) $lang = lang($lang);
!               if ($onClick) $options .= " onClick=\"$onClick\"";
!               return $this->input($name,$lang,$image != '' ? 'IMAGE' : 
'SUBMIT',$options);
!       }
! 
!       /*!
!       @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='')
!       {
!               if (is_array( $vars ))
!               {
!                       $v = array( );
!                       while(list($name,$value) = each($vars))
!                       {
!                               if ($value && !($name == 'filter' && $value == 
'none')) // dont need to send all the empty vars
!                               {
!                                       $v[] = "$name=$value";
!                               }
!                       }
!                       $vars = implode('&',$v);
!               }
!               list($url,$v) = explode('?',$url);      // url may contain 
additional vars
!               if ($v)
!                       $vars .= ($vars ? '&' : '') . $v;
! 
!               return $GLOBALS['phpgw']->link($url,$vars);
!       }
! 
!       function checkbox($name,$value='')
!       {
!               return "<input type=\"checkbox\" name=\"$name\" value=\"True\"" 
.($value ? ' checked' : '') . ">\n";
!       }
! 
!       function 
form($content,$hidden_vars,$url,$url_vars='',$name='',$options='',$method='POST')
!       {
!               $html = "<form method=\"$method\" ".($name != '' ? 
"name=\"$name\" " : '')."action=\"".$this->link($url,$url_vars)."\" 
$options>\n";
!               $html .= $this->input_hidden($hidden_vars);
! 
!               if ($content) {
!                       $html .= $content;
!                       $html .= "</form>\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%"') = '<table WIDTH="100%"><tr><td 
colspan=3>cell1</td><td>cell2</td><td width="10%">cell3</td></tr></table>'
!       @result string with html-code of the table
!       */
!       function table($rows,$options = '')
!       {
!               $html = "<TABLE $options>\n";
! 
!               while (list($key,$row) = each($rows)) {
!                       if (!is_array($row))
!                               continue;                                       
// parameter
!                       $html .= "\t<TR ".$rows['.'.$key].">\n";
!                       while (list($key,$cell) = each($row)) {
!                               if ($key[0] == '.')
!                                       continue;                               
// parameter
!                               $html .= "\t\t<TD 
".$row['.'.$key].">$cell</TD>\n";
!                       }
!                       $html .= "\t</TR>\n";
!               }
!               $html .= "</TABLE>\n";
!               
!               return $html;
!       }
!       
!       function sbox_submit( $sbox,$no_script=0 )
!       {
!               $html = str_replace('<select','<select 
onChange="this.form.submit()" ',
!                                                                 $sbox);
!               if ($no_script)
!               {
!                       $html .= 
'<noscript>'.$this->submit_button('send','>').'</noscript>';
!               }
!               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 ($title)
!               {
!                       $options .= " $this->prefered_img_title=\"$title\"";
!               }
!               return "<IMG SRC=\"$path\" $options>";
!       }
! 
!       function a_href( $content,$url,$vars='',$options='')
!       {
!               if (!strstr($url,'/') && count(explode('.',$url)) == 3)
!                       $url = "/index.php?menuaction=$url";
! 
!               return '<a href="'.$this->link($url,$vars).'" 
'.$options.'>'.$content.'</a>';
!       }
! 
!       function bold($content)
!       {
!               return '<b>'.$content.'</b>';
!       }
! 
!       function italic($content)
!       {
!               return '<i>'.$content.'</i>';
!       }
! 
!       function hr($width,$options='')
!       {
!               if ($width)
!                       $options .= " WIDTH=$width";
!               return "<hr $options>\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 for nextmatch row-colors
!       @result the classes 'th' = nextmatch header, 'row_on'+'row_off' = 
alternating rows
!       */
!       function themeStyles()
!       {
!               return $this->style(
!                       ".th { background: 
".$GLOBALS['phpgw_info']['theme']['th_bg']."; }\n".
!                       ".row_on { background: 
".$GLOBALS['phpgw_info']['theme']['row_on']."; }\n".
!                       ".row_off { background: 
".$GLOBALS['phpgw_info']['theme']['row_off']."; }\n"
!               );
!       }
! 
!       function style($styles)
!       {
!               return $styles ? "<STYLE 
type=\"text/css\">\n<!--\n$styles\n-->\n</STYLE>" : '';
!       }
! 
!       function label($content,$options='')
!       {
!               return "<LABEL $options>$content</LABEL>";
!       }
! }
--- 1,331 ----
! <?php
!       
/**************************************************************************\
!       * phpGroupWare - HTML creation class                                    
   *
!       * http://www.phpgroupware.org                                           
   *
!       * Written by Ralf Becker <address@hidden>                  *
!       * --------------------------------------------                          
   *
!       *  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.]+)',$GLOBALS['HTTP_USER_AGENT'],$parts))
!               {
!                       
eregi('^([a-z_]+)/([0-9.]+)',$GLOBALS['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 "<p>HTTP_USER_AGENT='$GLOBALS[HTTP_USER_AGENT]', 
UserAgent: '$this->user_agent', Version: '$this->ua_version', img_title: 
'$this->prefered_img_title'</p>\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 (0+$multiple > 0)
!               {
!                       $options .= ' MULTIPLE SIZE='.(0+$multiple);
!                       if (substr($name,-2) != '[]')
!                       {
!                               $name .= '[]';
!                       }
!               }
!               $out = "<select name=\"$name\" $options>\n";
! 
!               if (is_array($key))
!               {
!                       $key = implode(',',$key);
!               }
!               while (list($k,$text) = each($arr))
!               {
!                       $out .= '<option value="'.$k.'"';
!                       if($k == $key || strstr(",$key,",",$k,"))
!                       {
!                               $out .= " SELECTED";
!                       }
!                       $out .= ">" . ($no_lang || $text == '' ? $text : 
lang($text)) . "</option>\n";
!               }
!               $out .= "</select>\n";
! 
!               return $out;
!       }
! 
!       function div($content,$options='')
!       {
!               return "<DIV $options>\n$content</DIV>\n";
!       }
! 
!       function input_hidden($vars,$value='',$ignore_empty=True)
!       {
!               if (!is_array($vars))
!               {
!                       $vars = array( $vars => $value );
!               }
!               while (list($name,$value) = each($vars))
!               {
!                       if (is_array($value)) $value = serialize($value);
!                       if (!$ignore_empty || $value && !($name == 'filter' && 
$value == 'none'))       // dont need to send all the empty vars
!                       {
!                               $html .= "<INPUT TYPE=HIDDEN NAME=\"$name\" 
VALUE=\"".htmlspecialchars($value)."\">\n";
!                       }
!               }
!               return $html;
!       }
! 
!       function textarea($name,$value='',$options='' )
!       {
!               return "<TEXTAREA name=\"$name\" $options>$value</TEXTAREA>\n";
!       }
! 
!       function input($name,$value='',$type='',$options='' )
!       {
!               if ($type) $type = 'TYPE="'.$type.'"';
! 
!               return "<INPUT $type NAME=\"$name\" VALUE=\"$value\" 
$options>\n";
!       }
! 
!       function 
submit_button($name,$lang,$onClick='',$no_lang=0,$options='',$image='',$app='')
!       {
!               if ($image != '')
!               {
!                       if (!($path = 
$GLOBALS['phpgw']->common->image($app,$image)))
!                               $path = $image;         // name may already 
contain absolut path
!                       $image = ' SRC="'.$path.'"';
!               }
!               if (!$no_lang)
!               {
!                       $lang = lang($lang);
!               }
!               if (($accesskey = strstr($lang,'&')) && $accesskey[1] != ' ')
!               {
!                       $lang_u = 
str_replace('&'.$accesskey[1],'<u>'.$accesskey[1].'</u>',$lang);
!                       $lang = str_replace('&','',$lang);
!                       $options = 'ACCESSKEY="'.$accesskey[1].'" '.$options;
!               }
!               else
!               {
!                       $accesskey = '';
!                       $lang_u = $lang;
!               }
!               if ($onClick) $options .= " onClick=\"$onClick\"";
! 
!               // <button> 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 '<button TYPE="submit" NAME="'.$name.'" 
VALUE="'.$lang.'" '.$options.'>'.
!                       ($image != '' ? "<img$image 
$this->prefered_img_title=\"$lang\"> " : '').
!                       ($image == '' || $accesskey ? $lang_u : '').'</button>';
!       }
! 
!       /*!
!       @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='')
!       {
!               if (is_array( $vars ))
!               {
!                       $v = array( );
!                       while(list($name,$value) = each($vars))
!                       {
!                               if ($value && !($name == 'filter' && $value == 
'none')) // dont need to send all the empty vars
!                               {
!                                       $v[] = "$name=$value";
!                               }
!                       }
!                       $vars = implode('&',$v);
!               }
!               list($url,$v) = explode('?',$url);      // url may contain 
additional vars
!               if ($v)
!                       $vars .= ($vars ? '&' : '') . $v;
! 
!               return $GLOBALS['phpgw']->link($url,$vars);
!       }
! 
!       function checkbox($name,$value='')
!       {
!               return "<input type=\"checkbox\" name=\"$name\" value=\"True\"" 
.($value ? ' checked' : '') . ">\n";
!       }
! 
!       function 
form($content,$hidden_vars,$url,$url_vars='',$name='',$options='',$method='POST')
!       {
!               $html = "<form method=\"$method\" ".($name != '' ? 
"name=\"$name\" " : '')."action=\"".$this->link($url,$url_vars)."\" 
$options>\n";
!               $html .= $this->input_hidden($hidden_vars);
! 
!               if ($content) {
!                       $html .= $content;
!                       $html .= "</form>\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%"') = '<table WIDTH="100%"><tr><td 
colspan=3>cell1</td><td>cell2</td><td width="10%">cell3</td></tr></table>'
!       @result string with html-code of the table
!       */
!       function table($rows,$options = '')
!       {
!               $html = "<TABLE $options>\n";
! 
!               while (list($key,$row) = each($rows)) {
!                       if (!is_array($row))
!                               continue;                                       
// parameter
!                       $html .= "\t<TR ".$rows['.'.$key].">\n";
!                       while (list($key,$cell) = each($row)) {
!                               if ($key[0] == '.')
!                                       continue;                               
// parameter
!                               $html .= "\t\t<TD 
".$row['.'.$key].">$cell</TD>\n";
!                       }
!                       $html .= "\t</TR>\n";
!               }
!               $html .= "</TABLE>\n";
!               
!               return $html;
!       }
!       
!       function sbox_submit( $sbox,$no_script=0 )
!       {
!               $html = str_replace('<select','<select 
onChange="this.form.submit()" ',
!                                                                 $sbox);
!               if ($no_script)
!               {
!                       $html .= 
'<noscript>'.$this->submit_button('send','>').'</noscript>';
!               }
!               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 ($title)
!               {
!                       $options .= " $this->prefered_img_title=\"$title\"";
!               }
!               return "<IMG SRC=\"$path\" $options>";
!       }
! 
!       function a_href( $content,$url,$vars='',$options='')
!       {
!               if (!strstr($url,'/') && count(explode('.',$url)) == 3)
!                       $url = "/index.php?menuaction=$url";
! 
!               return '<a href="'.$this->link($url,$vars).'" 
'.$options.'>'.$content.'</a>';
!       }
! 
!       function bold($content)
!       {
!               return '<b>'.$content.'</b>';
!       }
! 
!       function italic($content)
!       {
!               return '<i>'.$content.'</i>';
!       }
! 
!       function hr($width,$options='')
!       {
!               if ($width)
!                       $options .= " WIDTH=$width";
!               return "<hr $options>\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 for nextmatch row-colors
!       @result the classes 'th' = nextmatch header, 'row_on'+'row_off' = 
alternating rows
!       */
!       function themeStyles()
!       {
!               return $this->style(
!                       ".th { background: 
".$GLOBALS['phpgw_info']['theme']['th_bg']."; }\n".
!                       ".row_on,.th_bright { background: 
".$GLOBALS['phpgw_info']['theme']['row_on']."; }\n".
!                       ".row_off { background: 
".$GLOBALS['phpgw_info']['theme']['row_off']."; }\n"
!               );
!       }
! 
!       function style($styles)
!       {
!               return $styles ? "<STYLE 
type=\"text/css\">\n<!--\n$styles\n-->\n</STYLE>" : '';
!       }
! 
!       function label($content,$id='',$accesskey='',$options='')
!       {
!               if ($id != '')
!               {
!                       $id = " FOR=\"$id\"";
!               }
!               if ($accesskey != '')
!               {
!                       $accesskey = " ACCESSKEY=\"$accesskey\"";
!               }
!               return "<LABEL$id$accesskey $options>$content</LABEL>";
!       }
! }

Index: class.uietemplate.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/etemplate/inc/class.uietemplate.inc.php,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -r1.39 -r1.40
*** class.uietemplate.inc.php   8 Oct 2002 00:08:40 -0000       1.39
--- class.uietemplate.inc.php   9 Oct 2002 00:31:01 -0000       1.40
***************
*** 406,409 ****
--- 406,413 ----
                                }
                        }
+                       if ($form_name != '')
+                       {
+                               $options = "ID=\"$form_name\" $options";
+                       }
                        list($type,$sub_type) = explode('-',$cell['type']);
                        switch ($type)
***************
*** 415,419 ****
                                        $html .= $value;
                                        break;
!                               case 'raw':
                                        $html .= $value;
                                        break;
--- 419,423 ----
                                        $html .= $value;
                                        break;
!                               case 'html':
                                        $html .= $value;
                                        break;
***************
*** 642,648 ****
                                        break;
                        }
!                       if ($ext_type && !$readonly && // extension-processing 
need to be after all other and only with diff. name
!                                
!isset($GLOBALS['phpgw_info']['etemplate']['to_process'][$form_name]))
!                       {
                                
$GLOBALS['phpgw_info']['etemplate']['to_process'][$form_name] = 
'ext-'.$ext_type;
                        }
--- 646,652 ----
                                        break;
                        }
!                       if ($ext_type && !$readonly)    // extension-processing 
need to be after all other and only with diff. name
!                       {       // unset it first, if it is already set, to be 
after the other widgets of the ext.
!                               
unset($GLOBALS['phpgw_info']['etemplate']['to_process'][$form_name]);
                                
$GLOBALS['phpgw_info']['etemplate']['to_process'][$form_name] = 
'ext-'.$ext_type;
                        }
***************
*** 653,658 ****
                                        $label = lang($label);
                                }
!                               $html_label = $html != '' && $label != '';
! 
                                if (strstr($label,'%s'))
                                {
--- 657,665 ----
                                        $label = lang($label);
                                }
!                               if (($accesskey = strstr($label,'&')) && 
$accesskey[1] != ' ' && $form_name != '')
!                               {
!                                       $label = 
str_replace('&'.$accesskey[1],'<u>'.$accesskey[1].'</u>',$label);
!                                       $label = 
$this->html->label($label,$form_name,$accesskey[1]);
!                               }
                                if (strstr($label,'%s'))
                                {
***************
*** 663,670 ****
                                        $html = '&nbsp;';
                                }
-                               if ($html_label)
-                               {
-                                       $html = $this->html->label($html);
-                               }
                        }
                        return $html;
--- 670,673 ----
***************
*** 684,688 ****
                function process_show(&$content,$to_process,$cname='')
                {
!                       if (!isset($content) || !is_array($content))
                        {
                                return;
--- 687,691 ----
                function process_show(&$content,$to_process,$cname='')
                {
!                       if (!isset($content) || !is_array($content) || 
!is_array($to_process))
                        {
                                return;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]