config = $config; $this->ui = $ui; // Build filter if (session::global_is_set(get_class($this)."_filter")){ $filter= session::global_get(get_class($this)."_filter"); } else { $filter = new filter(get_template_path("selectClass-filter.xml", true, dirname(__FILE__))); $filter->setObjectStorage($this->storagePoints); } $this->setFilter($filter); // Build headpage $headpage = new listing(get_template_path("selectClass-list.xml", true, dirname(__FILE__))); $headpage->registerElementFilter("filterProperties", "classSelect::filterProperties"); $headpage->setFilter($filter); parent::__construct($config, $ui, "FAI class", $headpage); } static function filterProperties($row, $classes) { /* Create different picture for each object type */ $objTypes['FAIhook'] = image('plugins/fai/images/fai_hook.png'); $objTypes['FAItemplate'] = image('plugins/fai/images/fai_template.png'); $objTypes['FAIscript'] = image('plugins/fai/images/fai_script.png'); $objTypes['FAIvariable'] = image('plugins/fai/images/fai_variable.png'); $objTypes['FAIpackageList'] = image('plugins/fai/images/fai_packages.png'); $objTypes['FAIpartitionTable'] = image('plugins/fai/images/fai_partitionTable.png'); $str = ""; foreach($objTypes as $class => $img){ if(in_array_strict($class, $classes)){ $str .= $img; }else{ $str .= image('images/empty.png'); } } return($str); } function save() { $act = $this->detectPostActions(); $headpage = $this->getHeadpage(); if(!isset($act['targets'])) return(array()); $ret = array(); foreach($act['targets'] as $dn){ $ret[] = $headpage->getEntry($dn); } return($ret); } } // vim:tabstop=2:expandtab:shiftwidth=2:filetype=php:syntax:ruler: ?>