conf = new IDF_Gconf(); $this->conf->setModel($this); } public static function instance() { return new IDF_Forge(); } public function getProjectLabels($default = '') { return $this->conf->getVal('project_labels', $default); } public function setProjectLabels($labels) { $this->conf->setVal('project_labels', $labels); } public function getProjectLabelsWithCounts() { $sql = new Pluf_SQL('project=0'); $tagList = Pluf::factory('IDF_Tag')->getList(array( 'filter' => $sql->gen(), 'view' => 'join_projects', 'order' => 'class ASC, lcname ASC' )); $tags = array(); foreach ($tagList as $tag) { // group by class if (!array_key_exists($tag->class, $tags)) { $tags[$tag->class] = array(); } $tags[$tag->class][] = $tag; } return $tags; } }