This is a preparatory patch that simplifies adding more arguments to
the parse functions

Signed-off-by: Johannes Löthberg <[email protected]>
---
 web/lib/aurjson.class.php | 24 ++++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/web/lib/aurjson.class.php b/web/lib/aurjson.class.php
index 7b77da4..6f95406 100644
--- a/web/lib/aurjson.class.php
+++ b/web/lib/aurjson.class.php
@@ -84,7 +84,7 @@ class AurJSON {
                $this->dbh = DB::connect();
 
                $type = str_replace('-', '_', $http_data['type']);
-               $json = call_user_func(array(&$this, $type), $http_data['arg']);
+               $json = call_user_func(array(&$this, $type), $http_data);
 
                $etag = md5($json);
                header("Etag: \"$etag\"");
@@ -291,7 +291,8 @@ class AurJSON {
         *
         * @return mixed An array containing 'ids' and 'names'.
         */
-       private function parse_multiinfo_args($args) {
+       private function parse_multiinfo_args($http_data) {
+               $args = $http_data['arg'];
                if (!is_array($args)) {
                        $args = array($args);
                }
@@ -319,7 +320,9 @@ class AurJSON {
         *
         * @return mixed Returns an array of package matches.
         */
-       private function search($keyword_string) {
+       private function search($http_data) {
+               $keyword_string = $http_data['arg'];
+
                if (strlen($keyword_string) < 2) {
                        return $this->json_error('Query arg too small');
                }
@@ -339,7 +342,8 @@ class AurJSON {
         *
         * @return mixed Returns an array of value data containing the package 
data
         */
-       private function info($pqdata) {
+       private function info($http_data) {
+               $pqdata = $http_data['arg'];
                if (is_numeric($pqdata)) {
                        $where_condition = "Packages.ID = $pqdata";
                } else {
@@ -356,7 +360,8 @@ class AurJSON {
         *
         * @return mixed Returns an array of results containing the package data
         */
-       private function multiinfo($pqdata) {
+       private function multiinfo($http_data) {
+               $pqdata = $http_data['arg'];
                $args = $this->parse_multiinfo_args($pqdata);
                $ids = $args['ids'];
                $names = $args['names'];
@@ -392,7 +397,8 @@ class AurJSON {
         *
         * @return mixed Returns an array of value data containing the package 
data
         */
-       private function msearch($maintainer) {
+       private function msearch($http_data) {
+               $maintainer = $http_data['arg'];
                $maintainer = $this->dbh->quote($maintainer);
 
                $where_condition = "Users.Username = $maintainer ";
@@ -407,7 +413,8 @@ class AurJSON {
         *
         * @return string The JSON formatted response data.
         */
-       private function suggest($search) {
+       private function suggest($http_data) {
+               $search = $http_data['arg'];
                $query = "SELECT Packages.Name FROM Packages ";
                $query.= "LEFT JOIN PackageBases ";
                $query.= "ON PackageBases.ID = Packages.PackageBaseID ";
@@ -433,7 +440,8 @@ class AurJSON {
         *
         * @return string The JSON formatted response data.
         */
-       private function suggest_pkgbase($search) {
+       private function suggest_pkgbase($http_data) {
+               $search = $http_data['arg'];
                $query = "SELECT Name FROM PackageBases WHERE Name LIKE ";
                $query.= $this->dbh->quote(addcslashes($search, '%_') . '%');
                $query.= " AND PackageBases.PackagerUID IS NOT NULL ";
-- 
2.4.4

Reply via email to