* @package Horde */ class Horde_Block_Cloud extends Horde_Core_Block { /** */ public function __construct($app, $params = array()) { parent::__construct($app, $params); $this->_name = _("Tag Cloud"); } protected function _escapeJs($string) { return str_replace("\n", '\n', str_replace('"', '\"', addcslashes(str_replace("\r", '', (string)$string), "\0..\37'\\"))); } /** */ protected function _content() { $cloud = new Horde_Core_Ui_TagCloud(); foreach ($this->_getTags() as $tag) { $cloud->addElement( $tag['tag_name'], '#', $tag['count'], null, 'doSearch(\'' . htmlspecialchars($this->_escapeJs($tag['tag_name'])) . '\'); return false;'); } Horde::startBuffer(); include HORDE_TEMPLATES . '/block/cloud.inc'; return Horde::endBuffer() . '