From 825c4679551854f48c6c6b67e5c5b7f7322d24d2 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 8 Jun 2010 20:25:59 +0200 Subject: improves previous, add active field to pearrepo table --- class/TablePearRepo.php | 67 ++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 53 insertions(+), 14 deletions(-) (limited to 'class/TablePearRepo.php') diff --git a/class/TablePearRepo.php b/class/TablePearRepo.php index 6ff3eaa..34a0c17 100644 --- a/class/TablePearRepo.php +++ b/class/TablePearRepo.php @@ -58,38 +58,77 @@ class TablePearRepo extends CommonTable `id` int(11) NOT NULL AUTO_INCREMENT, `alias` varchar(30) NOT NULL, `url` varchar(255) NOT NULL, + `active` tinyint NOT NULL default 1, PRIMARY KEY (`id`), - UNIQUE KEY `alias` (`alias`) + UNIQUE KEY `alias` (`alias`), + KEY `active` (`active`) ) DEFAULT CHARSET=utf8"; $this->exec($sql); // Some known repo, other could be add manually - // no reply from "phpdb" => "pear.phpdb.org" + // no reply from "" => "" $channels = array( - "pear" => "pear.php.net" - ,"doctrine" => "pear.phpdoctrine.org" - ,"ezc" => "components.ez.no" - ,"pdepend" => "pear.pdepend.org" - ,"phing" => "pear.phing.info" - ,"phpmd" => "pear.phpmd.org" - ,"phpunit" => "pear.phpunit.de" - ,"swift" => "pear.swiftmailer.org" - ,"symphony" => "pear.symfony-project.com" + array( + 'alias' => 'pear', + 'url' => 'pear.php.net' + ), + array( + 'alias' => 'doctrine', + 'url' => 'pear.phpdoctrine.org' + ), + array( + 'alias' => 'ezc', + 'url' => 'components.ez.no' + ), + array( + 'alias' => 'pdepend', + 'url' => 'pear.pdepend.org' + ), + array( + 'alias' => 'phing', + 'url' => 'pear.phing.info' + ), + array( + 'alias' => 'phpmd', + 'url' => 'pear.phpmd.org' + ), + array( + 'alias' => 'phpunit', + 'url' => 'pear.phpunit.de' + ), + array( + 'alias' => 'swift', + 'url' => 'pear.swiftmailer.org' + ), + array( + 'alias' => 'symphony', + 'url' => 'pear.symfony-project.com' + ), + array( + 'alias' => 'phpdb', + 'active' => 0, + 'url' => 'pear.phpdb.org' + ) ); - foreach ($channels as $alias => $url) { - $this->add(array('alias'=>$alias, 'url'=>$url)); + foreach ($channels as $channel) { + $this->add($channel); } } /** * Retrieve all the known repository * + * @param boolean $active true for only active repo (false for all) + * * @return hastable of alias => url */ - function getAllRepo() + function getAllRepo($active=true) { + if ($active) { + return $this->getHashtable('alias', 'url', array('active'=>1)); + } return $this->getHashtable('alias', 'url'); } } -- cgit