public function get_tags()
{
$this->theme->wsse = Utils::WSSE();
$this->theme->tags = Tags::vocabulary()->get_tree('term_display asc');
$this->theme->max = Tags::vocabulary()->max_count();
$this->theme->min = Tags::vocabulary()->min_count();
$form = new FormUI('tags');
$form->append(FormControlFacet::create('search')->set_property('data-facet-config', array('onsearch' => 'deselect_all(); $("#tag_collection").manager("update", self.data("visualsearch").searchQuery.facets());', 'facetsURL' => URL::get('admin_ajax_facets', array('context' => 'facets', 'page' => 'tags', 'component' => 'facets')), 'valuesURL' => URL::get('admin_ajax_facets', array('context' => 'facets', 'page' => 'tags', 'component' => 'values')))));
$aggregate = FormControlAggregate::create('selected_items')->set_selector("#tag_collection input")->label('0 Selected');
$aggr_wrap = FormControlWrapper::create('tag_controls_aggregate')->add_class('aggregate_wrapper');
$aggr_wrap->append($aggregate);
$delete = FormControlDropbutton::create('delete_dropbutton');
$delete->append(FormControlButton::create('action')->set_caption(_t('Delete selected'))->set_properties(array('title' => _t('Delete selected'), 'value' => 'delete')));
$rename_text = FormControlText::create('rename_text');
$rename = FormControlDropbutton::create('rename_dropbutton');
$rename->append(FormControlButton::create('action')->set_caption(_t('Rename selected'))->set_properties(array('title' => _t('Rename selected'), 'value' => 'rename')));
$tag_controls = $form->append(FormControlWrapper::create('tag_controls'))->add_class("container tag_controls");
$tag_controls->append($aggr_wrap);
$tag_controls->append($rename_text);
$tag_controls->append($rename);
$tag_controls->append($delete);
$tag_controls->append(FormControlWrapper::create('selected_tags')->set_setting('wrap_element', 'ul')->set_property('id', 'selected_tags'));
if (count($this->theme->tags) > 0) {
$tag_collection = $form->append(FormControlWrapper::create('tag_collection')->add_class('container items')->set_setting('wrap_element', 'ul')->set_property('id', 'tag_collection'));
$listitems = $this->get_tag_listitems();
foreach ($listitems as $item) {
$tag_collection->append($item);
}
} else {
$tag_collection = $form->append(FormControlStatic::create('<p>' . _t('No tags could be found to match the query criteria.') . '</p>'));
}
$form->on_success(array($this, 'process_tags'));
$this->theme->form = $form;
Stack::add('admin_header_javascript', 'visualsearch');
Stack::add('admin_header_javascript', 'manage-js');
Stack::add('admin_stylesheet', 'visualsearch-css');
Stack::add('admin_stylesheet', 'visualsearch-datauri-css');
$this->display('tags');
}