/** * Generates an HTML radio list, Overriding Koowa to remove the <br> * * @param array An optional array with configuration options * @return string Html */ public function radiolist($config = array()) { $html = parent::radiolist($config); $html = explode(PHP_EOL, $html); unset($html[2]); unset($html[5]); return implode(PHP_EOL, $html); }
/** * Search phrase radiolist helper. * * @param Array $config An optional configuration object */ public function searchphrase($config = array()) { $config = new KConfig($config); $search_phrases = array(); foreach (array('all' => 'All words', 'any' => 'Any words', 'exact' => 'Exact phrase') as $value => $title) { $search_phrase = new stdClass(); $search_phrase->value = $value; $search_phrase->title = $title; $search_phrases[] = $search_phrase; } $config->append(array('list' => $search_phrases, 'name' => 'match', 'key' => 'value', 'translate' => true))->append(array('selected' => $config->{$config->name})); $html = parent::radiolist($config); // Romove unwanted linebreaks. return str_replace('<br />', '', $html); }
/** * Display a radio list for filtering the list based on specified filters * */ public function filter($config = array()) { $config = new KConfig($config); $config->append(array('name' => 'enabled'))->append(array('selected' => $config->state->{$config->name}, 'list' => array((object) array('id' => '', 'title' => JText::_('All')), (object) array('id' => '1', 'title' => JText::_('Enabled')), (object) array('id' => '0', 'title' => JText::_('Disabled'))))); KFactory::get('admin::com.ninja.helper.default')->css('/select.css'); $url = clone KRequest::url(); $url->query[$config->name] = ''; KFactory::get('lib.joomla.document')->addScriptDeclaration("\nwindow.addEvent('domready', function(){\n\t\$\$('[name=" . $config->name . "][checked]').getNext().addClass('selected');\n\tnew Element('label', {'class': 'divider'}).inject(\$('" . $config->name . "').getNext(), 'after');\n\t\$\$('[name=" . $config->name . "]').addEvent('change', function(){\n\t\tthis.getSiblings('label').removeClass('selected');\n\t\tthis.getNext().addClass('selected');\n\t\twindow.location.href = '{$url}'.replace('&" . $config->name . "=', '&" . $config->name . "='+this.get('value'));\n\t});\t\t\n});"); return '<div class="ninja-filter ' . $config->name . '">' . KTemplateHelperSelect::radiolist($config) . '</div>'; }