Example #1
0
 /**
  * Generate the widget and return it as string
  * @return string
  */
 public function generate()
 {
     $taglist = new TagList($this->table);
     $taglist->maxtags = $this->intMaxTags;
     $tags = $taglist->getTagList();
     $list = '<div class="tags"><ul class="cloud">';
     foreach ($tags as $tag) {
         $list .= '<li class="' . $tag['tag_class'] . '">';
         $list .= '<a href="javascript:Tag.selectedTag(\'' . $tag['tag_name'] . '\', \'ctrl_' . $this->strId . '\');" title="' . $tag['tag_name'] . ' (' . $tag['tag_count'] . ')' . '">' . $tag['tag_name'] . '</a>';
         $list .= '</li> ';
     }
     $list .= '</ul></div>';
     $value = !$this->blnSubmitInput ? $this->readTags() : $this->varValue;
     return $list . sprintf('<input type="text" name="%s" id="ctrl_%s" class="tl_text%s" value="%s"%s onfocus="Backend.getScrollOffset();" />', $this->strName, $this->strId, strlen($this->strClass) ? ' ' . $this->strClass : '', specialchars($value), $this->getAttributes());
 }
Example #2
0
 /**
  * Display a wildcard in the back end
  * @return string
  */
 public function generate()
 {
     if (TL_MODE == 'BE') {
         $objTemplate = new BackendTemplate('be_wildcard');
         $objTemplate->wildcard = '### TAGCLOUD ###';
         return $objTemplate->parse();
     }
     $this->strTemplate = strlen($this->cloud_template) ? $this->cloud_template : $this->strTemplate;
     $taglist = new TagList();
     $taglist->addNamedClass = $this->tag_named_class;
     if (strlen($this->tag_tagtable)) {
         $taglist->tagtable = $this->tag_tagtable;
     }
     if (strlen($this->tag_tagfield)) {
         $taglist->tagfield = $this->tag_tagfield;
     }
     if (strlen($this->tag_sourcetables)) {
         $taglist->fortable = deserialize($this->tag_sourcetables, TRUE);
     }
     if (strlen($this->tag_topten_number) && $this->tag_topten_number > 0) {
         $taglist->topnumber = $this->tag_topten_number;
     }
     if (strlen($this->tag_maxtags)) {
         $taglist->maxtags = $this->tag_maxtags;
     }
     if (strlen($this->tag_buckets) && $this->tag_buckets > 0) {
         $taglist->buckets = $this->tag_buckets;
     }
     if (strlen($this->pagesource)) {
         $taglist->pagesource = deserialize($this->pagesource, TRUE);
     }
     $this->arrTags = $taglist->getTagList();
     if ($this->tag_topten) {
         $this->arrTopTenTags = $taglist->getTopTenTagList();
     }
     if (strlen(\Input::get('tag')) && $this->tag_related) {
         $relatedlist = strlen(\Input::get('related')) ? preg_split("/,/", \Input::get('related')) : array();
         $this->arrRelated = $taglist->getRelatedTagList(array_merge(array(\Input::get('tag')), $relatedlist));
     }
     if (count($this->arrTags) < 1) {
         return '';
     }
     $this->toggleTagCloud();
     return parent::generate();
 }