aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorV.Krishn <vkrishn4@gmail.com>2016-06-20 05:00:50 +0530
committerV.Krishn <vkrishn4@gmail.com>2016-06-20 05:00:50 +0530
commit3be0c714c500118956f0aeb032d5db0f55a66d04 (patch)
treee500f3fb1c589ee6919969e90d4310470dd09376
parent6f42edad58f53108bb1896fb1571a5789970c10c (diff)
downloadaport-api-3be0c714c500118956f0aeb032d5db0f55a66d04.tar.bz2
add maintainer in search(GET)
-rw-r--r--index.php35
1 files changed, 19 insertions, 16 deletions
diff --git a/index.php b/index.php
index fedc95d..3202cc0 100644
--- a/index.php
+++ b/index.php
@@ -182,7 +182,24 @@ The Aports API consists of the following methods: # TODO - clean text import fro
$app->get('/search/{where:[a-z0-9\_]+}/{filters:.*}', function($where, $filters) use ($app) {
$data = initJapiData($app, 'search');
- $filter = (array)sanitize_filters($filters, $where, $app);
+ //$filter = (array)sanitize_filters($filters, $where, $app);
+ $_w = array('packages', 'contents');
+ //$_k = array('category', 'name', 'maintainer', 'flagged'); # TODO
+ if ( ! in_array($where, $_w)) return;
+
+ $f = explode('/', single_slash(urldecode($filters)));
+ for($c=0; $c<=count($f); $c=$c+2) { # limit key/value to 56 chars each
+ if($f[$c]) $filter[mb_substr(@$f[$c], 0, 56)] = mb_substr(@$f[$c+1], 0, 56);
+ }
+ unset($f);
+
+ $filter['filter'] = array();
+ # Create customs filters # TODO
+ $filter = set_search_category($filter);
+ $filter = set_search_name_pkg($filter);
+ $filter = set_search_flagged($filter);
+ $filter = set_search_maint($filter);
+
if(isset($filter['page'])) $app->myapi->reqPage = (int)$filter['page'];
if('packages' === $where) {
@@ -191,6 +208,7 @@ $app->get('/search/{where:[a-z0-9\_]+}/{filters:.*}', function($where, $filters)
$data->meta['search'] = $filter['filter'];
$data->meta['per-page'] = '<=50';
+ $data->meta['count'] = count($data->data);
if($data) json_api_encode($data, $app);
});
@@ -240,21 +258,6 @@ $app->post('/search/{where:[a-z0-9\_]+}/page/{page:[0-9]+}', function($where, $p
// Sanitizes and makes filters into key=>value array
function sanitize_filters($filters='', $where='', $app) {
- $_w = array('packages', 'contents');
- //$_k = array('category', 'name', 'maintainer', 'flagged');
- if ( ! in_array($where, $_w)) return;
-
- $f = explode('/', single_slash(urldecode($filters)));
- for($c=0; $c<=count($f); $c=$c+2) { # limit key/value to 56 chars each
- if($f[$c]) $filter[mb_substr(@$f[$c], 0, 56)] = mb_substr(@$f[$c+1], 0, 56);
- }
- unset($f);
-
- $filter['filter'] = array();
- # Create customs filters # TODO
- $filter = set_search_category($filter);
- $filter = set_search_name_pkg($filter);
- $filter = set_search_flagged($filter);
return $filter;
}