Ver Fonte

Implement unimplemented user filter for asset edits

Good we go some random testing now and then...
Bojidar Marinov há 9 anos atrás
pai
commit
982363a967
2 ficheiros alterados com 8 adições e 2 exclusões
  1. 2 2
      src/queries.php
  2. 6 0
      src/routes/asset_edit.php

+ 2 - 2
src/queries.php

@@ -121,7 +121,7 @@ return [
       LEFT JOIN `as_assets` USING (asset_id)
       WHERE
         status RLIKE :statuses_regex
-        AND asset_id LIKE :asset_id
+        AND asset_id LIKE :asset_id AND username LIKE :username
         AND (
           `as_asset_edits`.title LIKE :filter
           OR `as_assets`.title LIKE :filter
@@ -134,7 +134,7 @@ return [
       LEFT JOIN `as_users` USING (user_id)
       WHERE
         status RLIKE :statuses_regex
-        AND asset_id LIKE :asset_id
+        AND asset_id LIKE :asset_id AND username LIKE :username
         AND (
           title LIKE :filter
           OR username LIKE :filter

+ 6 - 0
src/routes/asset_edit.php

@@ -188,6 +188,7 @@ $app->get('/asset/edit', function ($request, $response, $args) {
 
   $asset_id = '%';
   $filter = '%';
+  $username = '%';
   $statuses = [];
   $page_size = 10;
   $max_page_size = 500;
@@ -213,6 +214,9 @@ $app->get('/asset/edit', function ($request, $response, $args) {
   if(isset($params['filter'])) {
     $filter = '%'.preg_replace('/[[:punct:]]+/', '%', $params['filter']).'%';
   }
+  if(isset($params['user'])) {
+    $username = $params['user'];
+  }
   if(isset($params['max_results'])) {
     $page_size = min(abs((int) $params['max_results']), $max_page_size);
   }
@@ -229,6 +233,7 @@ $app->get('/asset/edit', function ($request, $response, $args) {
 
   $query = $this->queries['asset_edit']['search'];
   $query->bindValue(':filter', $filter);
+  $query->bindValue(':username', $username);
   $query->bindValue(':asset_id', $asset_id);
   $query->bindValue(':statuses_regex', $statuses);
   $query->bindValue(':page_size', $page_size, PDO::PARAM_INT);
@@ -240,6 +245,7 @@ $app->get('/asset/edit', function ($request, $response, $args) {
 
   $query_count = $this->queries['asset_edit']['search_count'];
   $query_count->bindValue(':filter', $filter);
+  $query_count->bindValue(':username', $username);
   $query_count->bindValue(':asset_id', $asset_id);
   $query_count->bindValue(':statuses_regex', $statuses);
   $query_count->execute();