public function get_items($id, $status = '') { if (func_num_args() < 1) { throw new ExceptionToDoList('Error get item : missing id'); } if (empty($id)) { throw new ExceptionToDoList('Error get items : missing id of todolist'); } $id = intval($id); $status != '' ? $filters = " AND status='" . DataBase::format_text_sql($status) . "' " : ($filters = ''); $data = json_decode(json_encode(self::generate_listItem_fromDB($id, $filters))); return array(200, responseMessage::MESSAGE_GETITEM_SUCCESS, $data); }
private function generate_listItem_fromDB($nameList, $filters = '') { // Request for this nameList in DB $listArr = $this->DB->query_select("SELECT lists.id FROM lists WHERE name='" . DataBase::format_text_sql($nameList) . "' order by id DESC limit 0,1"); if ($listArr[0]['count_row'] == 0) { throw new ExceptionToDoList('Error : name list not found'); } $id = $listArr[0]['id']; $lstTodo = parent::create($nameList); // Create a new object of listTodo class // Request for items nameList in DB if (is_array($filters)) { $filters = DataBase::generate_filter_sql($filters); } $listArr = $this->DB->query_select("SELECT items.content, items.status FROM items WHERE list_id={$id} {$filters} order by id DESC"); for ($i = 0; $i < $listArr[0]['count_row']; $i++) { if ($listArr[$i]['content'] != '') { $lstTodo->addItem(array('content' => $listArr[$i]['content'], 'status' => $listArr[$i]['status'])); } } return array($id, $lstTodo); }