-
Notifications
You must be signed in to change notification settings - Fork 0
/
admin_save_changes.php
99 lines (70 loc) · 3.11 KB
/
admin_save_changes.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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<?php
include 'connect.php';
header('Content-type: application/json');
// FILE UNTUK HANDLE MEMASUKKAN ORANG KE DALAM GROUP
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Struktur Database Detail Group
// id | id_group | id_user | id_alkitab | sudah_baca | sudah_baca_at
// Struktur Database Group Alkitab
// id | nama | createdAt | createdBy | updatedAt | updatedBy | isActive | deletedAt | deletedBy
// Buat Group Alkitab Baru
$assignedPerson = $_POST['assignedPerson'];
$checkedPerson = $_POST['checkedPerson'];
$groupName = $_POST['groupName'];
$createdBy = $_SESSION['email'];
$now = date("Y-m-d H:i:s");
$sql = "INSERT INTO group_alkitab VALUES (DEFAULT, ?, ?, ?, ?, ?, 1, ?, ?)";
$stmt = $pdo->prepare($sql);
$stmt->execute([$groupName, $now, $createdBy, '', '', '', '']);
$notif = 'Query Group Alkitab Error';
if ($stmt) {
$sql = "SELECT id
FROM group_alkitab
WHERE createdAt = ? AND createdBy = ?";
$stmt = $pdo->prepare($sql);
$stmt->execute([$now, $createdBy]);
$notif = 'Query ID Group Alkitab Error';
// Sambungin id group alkitab yang baru dibuat ke dalam detail_group
if ($stmt) {
$output = '';
// Struktur Database Detail Group
// id | id_group | id_user | id_alkitab | sudah_baca | sudah_baca_at
// Dapet ID Group Alkitab dari SQL diatas
$groupId = $stmt->fetch();
$groupId = $groupId['id'];
// Dapet ID User
$checkedPersonId = array();
foreach ($checkedPerson as $person) {
$sql = "SELECT id
FROM user
WHERE email = ? LIMIT 1";
$stmt = $pdo->prepare($sql);
$stmt->execute([$person]);
array_push($checkedPersonId, $stmt->fetch()['id']);
}
// Dapat ID Ketua Group
$sql = "SELECT id
FROM user
WHERE email = ? LIMIT 1";
$stmt = $pdo->prepare($sql);
$stmt->execute([$assignedPerson]);
$assignedPersonId = $stmt->fetch()['id'];
// Insert Ketua Group ke Detail Group
$sql = "INSERT INTO detail_group VALUES (DEFAULT,?,?,?,?,?)";
$stmt = $pdo->prepare($sql);
$stmt->execute([$groupId, $assignedPersonId, '', '', '']);
// Insert Anggota Group ke Detail Group
foreach ($checkedPersonId as $personId) {
$sql = "INSERT INTO detail_group VALUES (DEFAULT,?,?,?,?,?)";
$stmt = $pdo->prepare($sql);
// Untuk Memasukkan Anggota Group
$stmt->execute([$groupId, $personId, '', '', '']);
// Update Group Member jadi 1 --> artinya sudah dimasukkan ke dalam group
$sql = "UPDATE user SET group_member = 1 WHERE id = ?";
$stmt = $pdo->prepare($sql);
$stmt->execute([$personId]);
}
}
}
echo json_encode(array('output' => $output, 'notif' => $notif));
}