Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 51
0.00% covered (danger)
0.00%
0 / 3
CRAP
0.00% covered (danger)
0.00%
0 / 1
TaskList
0.00% covered (danger)
0.00%
0 / 51
0.00% covered (danger)
0.00%
0 / 3
132
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 getFullTaskList
0.00% covered (danger)
0.00%
0 / 22
0.00% covered (danger)
0.00%
0 / 1
30
 getTodaysList
0.00% covered (danger)
0.00%
0 / 26
0.00% covered (danger)
0.00%
0 / 1
30
1<?php
2
3namespace BuyerKiosk\Core;
4
5class TaskList extends Store
6{
7    private $db;
8    private $log;
9
10    public function __construct($typeNum)
11    {
12        parent::createStore($typeNum);
13        $this->log = new \KLogger($_ENV['LOG_DIR'] . "dev_log.txt", \KLogger::DEBUG);
14        $this->db = dbConnectByName($this->getDbName());
15    }
16
17    public function getFullTaskList()
18    {
19        try {
20            $stmt = $this->db->query("SELECT tasks.id as taskID, taskName, comment, groupName, taskGroups.id as groupID, recurOn, COALESCE(priority, 2) as priority, COALESCE(sortOrder, 0) as sortOrder, startDate, endDate, timeOfDay FROM taskGroups JOIN tasks on tasks.taskGroup = taskGroups.id ORDER BY groupID, sortOrder ASC, taskID ASC");
21            if ($stmt) {
22                $taskGroups = [];
23                $rows = $stmt->fetchAll(\PDO::FETCH_ASSOC);
24                foreach ($rows as $task) {
25                    $tempTask = new \Task($this->getTypeNum());
26                    $tempTask->taskGroup = $task['groupID'];
27                    $tempTask->taskName = $task['taskName'];
28                    $tempTask->id = $task['taskID'];
29                    $tempTask->comment = $task['comment'];
30                    $tempTask->recurOn = $task['recurOn'];
31                    $tempTask->priority = $task['priority'];
32                    $tempTask->sortOrder = $task['sortOrder'];
33                    $tempTask->startDate = $task['startDate'];
34                    $tempTask->endDate = $task['endDate'];
35                    $tempTask->timeOfDay = $task['timeOfDay'];
36                    if (!array_key_exists($task['groupName'], $taskGroups)) {
37                        $taskGroups[$task['groupName']]['groupID'] = $task['groupID'];
38                    }
39                    $taskGroups[$task['groupName']]['tasks'][] = $tempTask;
40                    $tempTask = null;
41                }
42                return $taskGroups;
43            }
44        } catch (\PDOException $e) {
45
46        }
47    }
48
49    public function getTodaysList()
50    {
51        $today = new \DateTime('now', new \DateTimeZone($this->getTimeZone()));
52        $letterCode = strtoupper($today->format("D"));
53        try {
54            $stmt = $this->db->prepare("SELECT tasks.id as taskID, taskName, comment, groupName, taskGroups.id as groupID, recurOn, COALESCE(priority, 2) as priority, COALESCE(sortOrder, 0) as sortOrder, startDate, endDate, timeOfDay FROM taskGroups JOIN tasks on tasks.taskGroup = taskGroups.id WHERE tasks.recurOn LIKE :letterCode ORDER BY groupID, sortOrder ASC, taskID ASC");
55            $stmt->bindValue(':letterCode', '%' . $letterCode . '%');
56            $stmt->execute();
57            if ($stmt) {
58                $taskGroups = [];
59                $rows = $stmt->fetchAll(\PDO::FETCH_ASSOC);
60                foreach ($rows as $task) {
61                    $tempTask = [];
62                    $tempTask['taskGroup'] = $task['groupID'];
63                    $tempTask['taskName'] = $task['taskName'];
64                    $tempTask['taskID'] = $task['taskID'];
65                    $tempTask['taskComment'] = $task['comment'];
66                    $tempTask['taskRecurOn'] = $task['recurOn'];
67                    $tempTask['priority'] = $task['priority'];
68                    $tempTask['sortOrder'] = $task['sortOrder'];
69                    $tempTask['startDate'] = $task['startDate'];
70                    $tempTask['endDate'] = $task['endDate'];
71                    $tempTask['timeOfDay'] = $task['timeOfDay'];
72                    if (!array_key_exists($task['groupName'], $taskGroups)) {
73                        $taskGroups[$task['groupName']]['groupID'] = $task['groupID'];
74                    }
75                    $taskGroups[$task['groupName']]['tasks'][] = $tempTask;
76                    $tempTask = null;
77                }
78                return $taskGroups;
79            }
80        } catch (\PDOException $e) {
81
82        }
83    }
84}