public function categories($config = array())
 {
     $config = new Library\ObjectConfig($config);
     $config->append(array('name' => 'categories_category_id', 'row' => '', 'uncategorised' => false, 'max_depth' => '9'))->append(array('selected' => $config->row->{$config->name}))->append(array('filter' => array('sort' => 'title', 'parent' => null, 'published' => null, 'table' => $config->row->getTable()->getBase())));
     $categories = $this->getObject('com:categories.model.categories')->setState(Library\ObjectConfig::unbox($config->filter))->getRowset();
     $iterator = new DatabaseIteratorNode($categories);
     $iterator->setMaxDepth($config->max_depth);
     $options = $this->options(array('entity' => $iterator, 'value' => 'id', 'label' => 'title'));
     if ($config->uncategorised) {
         array_unshift($options, $this->option(array('label' => $this->translate('Uncategorized'), 'value' => '0', 'id' => '0')));
     }
     //Add the options to the config object
     $config->options = $options;
     return parent::radiolist($config);
 }
 public function booleanlist($config = array())
 {
     $config = new Library\ObjectConfig($config);
     $config->append(array('name' => '', 'attribs' => array(), 'true' => 'yes', 'false' => 'no', 'selected' => null, 'translate' => true));
     return parent::booleanlist($config);
 }