forked from jamalhassouni/Todo-List-API
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathupdate.php
70 lines (64 loc) · 2.14 KB
/
update.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
// Headers
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
header('Access-Control-Allow-Methods: PUT');
header('Access-Control-Allow-Headers: Access-Control-Allow-Headers,Content-Type,Access-Control-Allow-Methods, Authorization, X-Requested-With');
include_once 'config/Database.php';
include_once 'models/Todo.php';
// Instantiate DB & connect
$database = new Database();
$db = $database->connect();
$output = array();
// Instantiate blog post object
$todo = new Todo($db);
// Get raw posted data
$data = json_decode(file_get_contents("php://input"));
if (isset($data->id) AND isset($data->item)) {
$todo->id = $data->id;
$todo->item = $data->item;
if ($todo->update()) {
$output['status'] = 200;
$output['message'] = "Task Updated";
} else {
$output['status'] = 204;
$output['message'] = "Task Not Updated";
}
} elseif (isset($data->id) AND isset($data->sort) AND isset($data->type)) {
$todo->id = $data->id;
$todo->sort = $data->sort;
$todo->todoStatu = $data->type;
// Update post
if ($data->type == 1) {
if ($todo->markAsUncompleted()) {
$output['status'] = 200;
$output['message'] = "Task Uncompleted";
} else {
$output['status'] = 204;
$output['message'] = "Task Not Uncompleted";
}
} elseif ($data->type == 2) {
if ($todo->markAsCompleted()) {
$output['status'] = 200;
$output['message'] = "Task Completed";
} else {
$output['status'] = 204;
$output['message'] = "Task Not Completed";
}
}
} elseif (isset($data->from) AND isset($data->posFrom) AND isset($data->to) AND isset($data->posTo)) {
$todo->from = $data->from;
$todo->PosFrom = $data->posFrom;
$todo->to = $data->to;
$todo->PosTo = $data->posTo;
// Update post
if ($todo->Sort()) {
$output['status'] = 200;
$output['message'] = "Tasks Sort Updated";
} else {
$output['status'] = 204;
$output['message'] = "Tasks Sort Not Updated";
}
}
// Turn to JSON & output
echo json_encode($output);