From 00774c52148be4a5ae51d6491509c47919b90bb8 Mon Sep 17 00:00:00 2001
From: Justus Dieckmann <justusdieckmann@wwu.de>
Date: Wed, 25 Sep 2019 20:25:39 +0200
Subject: [PATCH] Delays: Add coursename and category filtering

---
 classes/table/delayed_courses_table.php | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/classes/table/delayed_courses_table.php b/classes/table/delayed_courses_table.php
index cf467b4..f839f64 100644
--- a/classes/table/delayed_courses_table.php
+++ b/classes/table/delayed_courses_table.php
@@ -47,6 +47,9 @@ class delayed_courses_table extends \table_sql {
     public function __construct($filterdata) {
         parent::__construct('tool_lifecycle-delayed-courses');
 
+        global $DB;
+        $DB->set_debug(true);
+
         $fields = 'c.id as courseid, c.fullname as coursefullname, cat.name as category, ';
 
         $selectseperatedelays = true;
@@ -117,7 +120,18 @@ class delayed_courses_table extends \table_sql {
             $from .= 'JOIN {course_categories} cat ON c.category = cat.id';
         }
 
-        $where = 'true';
+        $where = 'true ';
+
+        if ($filterdata && $filterdata->category) {
+            $where .= 'AND cat.id = :catid ';
+            $params['catid'] = $filterdata->category;
+        }
+
+        if ($filterdata && $filterdata->coursename) {
+            global $DB;
+            $where .= 'AND c.fullname LIKE \'%' . $DB->sql_like_escape($filterdata->coursename) . '%\' ';
+            $params['cname'] = $filterdata->coursename;
+        }
 
         $this->set_sql($fields, $from, $where, $params);
         $this->column_nosort = ['workflow', 'tools'];
-- 
GitLab