diff options
Diffstat (limited to 'class/FedoraPkgdb.php')
-rw-r--r-- | class/FedoraPkgdb.php | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/class/FedoraPkgdb.php b/class/FedoraPkgdb.php index 1650493..afe7adc 100644 --- a/class/FedoraPkgdb.php +++ b/class/FedoraPkgdb.php @@ -7,7 +7,7 @@ * * PHP version 5 * - * Copyright (C) 2010-2013 Remi Collet + * Copyright (C) 2010-2014 Remi Collet * http://github.com/remicollet/rpmphp. * * Inspired from python-fedora @@ -29,7 +29,7 @@ * * @author Remi Collet <remi@fedoraproject.org> * @author Johan Cwiklinski <johan@x-tnd.be> - * @copyright 2010-2013 Remi Collet + * @copyright 2010-2014 Remi Collet * @license http://www.gnu.org/licenses/lgpl-2.1.txt LGPL License 2.1 or (at your option) any later version * @link http://github.com/remicollet/rpmphp/ * @since The begining of times. @@ -46,7 +46,7 @@ class FedoraPkgdb extends FedoraClient } else { $server = 'admin.fedoraproject.org'; } - parent::__construct("http://$server/api/", $options); + parent::__construct("https://$server/pkgdb/api/", $options); $rep = $this->cache->get(__METHOD__, $this->url); if ($rep!==false) { @@ -109,21 +109,13 @@ class FedoraPkgdb extends FedoraClient function getPackageInfo($name, $refresh=false) { - if ($this->_version > 0) { - $url='package/acl/get/'.urlencode($name); - $rep = ($refresh ? false : $this->cache->get(__METHOD__, $this->url.$url)); - if ($rep) { - $this->logDebug(2, __METHOD__."($name) get from cache"); - } else { - $rep =$this->sendRequest($url); - $this->cache->save($rep, __METHOD__, $this->url.$url); - $this->logDebug(2, __METHOD__."($name) save to cache"); - } - $this->logDebug(8, print_r($rep, true)); - return false; - } - - $url='acls/name/'.urlencode($name); + static $convert=array( + 'master' => 'devel', + 'el5' => 'EL-5', + 'el6' => 'EL-6', + 'epel7' => 'EL-7', + ); + $url='package/'.urlencode($name); $rep = ($refresh ? false : $this->cache->get(__METHOD__, $this->url.$url)); if ($rep) { $this->logDebug(2, __METHOD__."($name) get from cache"); @@ -139,8 +131,18 @@ class FedoraPkgdb extends FedoraClient } $this->logDebug(8, print_r($rep, true)); $branches = array(); - foreach ($rep['packageListings'] as $pack) { - $branches[$pack['collection']['branchname']] = $pack; + foreach ($rep['packages'] as $pack) { + $n = $pack['collection']['branchname']; + if (isset($convert[$n])) $n=$convert[$n]; + + $pack['owner'] = $pack['point_of_contact']; + $pack['people'] = array(); + foreach ($pack['acls'] as $acl) { + if ($acl['acl']=='commit' && $acl['status']=='Approved') { + $pack['people'][] = $acl['fas_name']; + } + } + $branches[$n] = $pack; } $this->logDebug(7, print_r($branches, true)); return $branches; |