aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorV.Krishn <vkrishn4@gmail.com>2016-07-12 03:43:46 +0530
committerV.Krishn <vkrishn4@gmail.com>2016-07-12 03:43:46 +0530
commit18a95db474342f267846de55b2d8984d69f02196 (patch)
treef29e50b1b4235c052817f642fa1bf79a35150898
parentdd59f6a2134aa584cb61bcbc9de441debc1b9d35 (diff)
downloadaport-api-18a95db474342f267846de55b2d8984d69f02196.tar.bz2
add /packages/flagged filters
-rw-r--r--index.php13
1 files changed, 11 insertions, 2 deletions
diff --git a/index.php b/index.php
index b0fc228..e3d1ff3 100644
--- a/index.php
+++ b/index.php
@@ -658,10 +658,15 @@ $app->get('/packages/fid/{fid:[0-9]+}', function($fid) use ($app) {
// Retrieves packages data + flagged data (included)
// i.e a Compound Jsonapi Document
-$app->get('/packages/flagged', function() use ($app) {
+$app->get('/packages/flagged{filters:.*}', function($filters) use ($app) {
$data = initJapiData($app, 'packages');
- $condt = "fid IS NOT NULL";
+ $filter = (array)sanitize_filters($filters, '', $app);
+ $filter = set_search_globname($filter, 'origin');
+ $filter = set_search_category($filter);
+ $filter = set_search_maint($filter);
+ $filter['filter2'][] = "fid IS NOT NULL";
+ $condt = isset($filter['filter2']) ? implode(' AND ', $filter['filter2']) : '';
# get Packages count
$params = array( 'conditions' => "$condt", "group" => "origin, branch" );
@@ -680,6 +685,10 @@ $app->get('/packages/flagged', function() use ($app) {
);
$res = Packages::find( $params );
+ if($filter) {
+ $data->meta['search'] = $filter['filter'];
+ $data->meta['per-page'] = '<=50';
+ }
$data->meta['count'] = count($res);
$data->data = fmtData($res, 'packages.flagged', $app)->data;
$data = populate_maintainer($data, $app);