| | |
| | | |
| | | /* |
| | | +-----------------------------------------------------------------------+ |
| | | | program/include/html.php | |
| | | | | |
| | | | This file is part of the Roundcube Webmail client | |
| | | | Copyright (C) 2005-2011, The Roundcube Dev Team | |
| | | | | |
| | |
| | | | | |
| | | | PURPOSE: | |
| | | | Helper class to create valid XHTML code | |
| | | | | |
| | | +-----------------------------------------------------------------------+ |
| | | | Author: Thomas Bruederli <roundcube@gmail.com> | |
| | | +-----------------------------------------------------------------------+ |
| | |
| | | public static $lc_tags = true; |
| | | public static $common_attrib = array('id','class','style','title','align'); |
| | | public static $containers = array('iframe','div','span','p','h1','h2','h3','form','textarea','table','thead','tbody','tr','th','td','style','script'); |
| | | |
| | | |
| | | /** |
| | | * Constructor |
| | |
| | | $attr = array('href' => $attr); |
| | | } |
| | | return self::tag('a', $attr, $cont, array_merge(self::$common_attrib, |
| | | array('href','target','name','rel','onclick','onmouseover','onmouseout','onmousedown','onmouseup'))); |
| | | array('href','target','name','rel','onclick','onmouseover','onmouseout','onmousedown','onmouseup'))); |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | public static function quote($str) |
| | | { |
| | | return @htmlspecialchars($str, ENT_COMPAT, RCMAIL_CHARSET); |
| | | static $flags; |
| | | |
| | | if (!$flags) { |
| | | $flags = ENT_COMPAT; |
| | | if (defined('ENT_SUBSTITUTE')) { |
| | | $flags |= ENT_SUBSTITUTE; |
| | | } |
| | | } |
| | | |
| | | return @htmlspecialchars($str, $flags, RCUBE_CHARSET); |
| | | } |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | $cell = new stdClass; |
| | | $cell->attrib = $attr; |
| | | $cell->attrib = $attr; |
| | | $cell->content = $cont; |
| | | |
| | | $this->rows[$this->rowindex]->cells[$this->colindex] = $cell; |
| | |
| | | } |
| | | |
| | | $cell = new stdClass; |
| | | $cell->attrib = $attr; |
| | | $cell->content = $cont; |
| | | $cell->attrib = $attr; |
| | | $cell->content = $cont; |
| | | $this->header[] = $cell; |
| | | } |
| | | |
| | | /** |
| | | /** |
| | | * Remove a column from a table |
| | | * Useful for plugins making alterations |
| | | * |
| | | * @param string $class |
| | | * |
| | | * @param string $class |
| | | */ |
| | | public function remove_column($class) |
| | | { |
| | |
| | | $index = $this->rowindex; |
| | | } |
| | | |
| | | // make sure row object exists (#1489094) |
| | | if (!$this->rows[$index]) { |
| | | $this->rows[$index] = new stdClass; |
| | | } |
| | | |
| | | $this->rows[$index]->attrib = $attr; |
| | | } |
| | | |
| | |
| | | */ |
| | | public function show($attrib = null) |
| | | { |
| | | if (is_array($attrib)) |
| | | if (is_array($attrib)) { |
| | | $this->attrib = array_merge($this->attrib, $attrib); |
| | | } |
| | | |
| | | $thead = $tbody = ""; |
| | | |
| | |
| | | */ |
| | | public function size() |
| | | { |
| | | return count($this->rows); |
| | | return count($this->rows); |
| | | } |
| | | |
| | | /** |