| | |
| | | | program/include/html.php | |
| | | | | |
| | | | This file is part of the Roundcube Webmail client | |
| | | | Copyright (C) 2005-2010, Roundcube Dev, - Switzerland | |
| | | | Copyright (C) 2005-2010, The Roundcube Dev Team | |
| | | | Licensed under the GNU GPL | |
| | | | | |
| | | | PURPOSE: | |
| | |
| | | */ |
| | | public static function tag($tagname, $attrib = array(), $content = null, $allowed_attrib = null) |
| | | { |
| | | if (is_string($attrib)) |
| | | $attrib = array('class' => $attrib); |
| | | |
| | | $inline_tags = array('a','span','img'); |
| | | $suffix = $attrib['nl'] || ($content && $attrib['nl'] !== false && !in_array($tagname, $inline_tags)) ? "\n" : ''; |
| | | |
| | | $tagname = self::$lc_tags ? strtolower($tagname) : $tagname; |
| | | if ($content || in_array($tagname, self::$containers)) { |
| | | if (isset($content) || in_array($tagname, self::$containers)) { |
| | | $templ = $attrib['noclose'] ? "<%s%s>%s" : "<%s%s>%s</%s>%s"; |
| | | unset($attrib['noclose']); |
| | | return sprintf($templ, $tagname, self::attrib_string($attrib, $allowed_attrib), $content, $tagname, $suffix); |
| | |
| | | $attr = array('href' => $attr); |
| | | } |
| | | return self::tag('a', $attr, $cont, array_merge(self::$common_attrib, |
| | | array('href','target','name','onclick','onmouseover','onmouseout','onmousedown','onmouseup'))); |
| | | array('href','target','name','rel','onclick','onmouseover','onmouseout','onmousedown','onmouseup'))); |
| | | } |
| | | |
| | | /** |
| | |
| | | protected $type = 'text'; |
| | | protected $allowed = array('type','name','value','size','tabindex', |
| | | 'autocomplete','checked','onchange','onclick','disabled','readonly', |
| | | 'spellcheck','results','maxlength','src'); |
| | | 'spellcheck','results','maxlength','src','multiple'); |
| | | |
| | | /** |
| | | * Object constructor |
| | |
| | | protected $tagname = 'select'; |
| | | protected $options = array(); |
| | | protected $allowed = array('name','size','tabindex','autocomplete', |
| | | 'multiple','onchange','disabled'); |
| | | 'multiple','onchange','disabled','rel'); |
| | | |
| | | /** |
| | | * Add a new option to this drop-down |
| | |
| | | $this->options[] = array('text' => $names, 'value' => $values); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Get HTML code for this object |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * Jump to next row |
| | | * |
| | |
| | | { |
| | | return count($this->rows); |
| | | } |
| | | |
| | | /** |
| | | * Remove table body (all rows) |
| | | */ |
| | | public function remove_body() |
| | | { |
| | | $this->rows = array(); |
| | | $this->rowindex = 0; |
| | | } |
| | | |
| | | } |
| | | |