function executeChange($userID, $groupID, $newStatus) { $newStatus = $newStatus; if ($newStatus !== "1" && $newStatus !== "2" && $newStatus !== "3") { return "Invalid status!"; } $userDAO = new UserDAO(); $user = $userDAO->getUserByID($userID); $groupDAO = new GroupDAO(); $group = $groupDAO->getGroupByID($groupID); if ($group === null) { return "Could not find this group!"; } if ($group->getActivateStatus() === $newStatus) { return "Old status is equal to new status, don't need to change!"; } if ($user->getRole()->getRoleID() === "3") { if ($group->getOwner()->getUserID() !== $userID) { return "You have no right to change group status!"; } if ($newStatus === "3") { return "You have no right to delete this group!"; } } if ($newStatus !== "3") { $group->setActivateStatus($newStatus); $groupDAO->updateGroup($group); } else { //delete records $recordDAO = new RecordDAO(); $recordDAO->deleteRecordsByGroup($group); //delete groupmember $gmDAO = new GroupMemberDAO(); $gmDAO->deleteGroupMembersByGroup($group); //delete group $groupDAO->deleteGroup($group); } return true; }
function changeGroupStatus($adminID, $groupID, $activateStatus) { $userDAO = new UserDAO(); $admin = $userDAO->getUserByID($adminID); if ($admin->getRole()->getRoleID !== 1 || $admin->getRole()->getRoleID !== 2) { return "You do not have the right to change group status!"; } $groupDAO = new GroupDAO(); $group = $groupDAO->getGroupByID($groupID); //need function if ($group->getActivateStatus() === $actuvateStatus) { return "Same Status, no need to change it!"; } $group->setActivateStatus($activateStatis); $groupDAO->updateGroup($group); //need function }
echo json_encode($groupDAO->selectById($id), JSON_NUMERIC_CHECK); exit; }); $app->get('/group/:groupname/?', authorize(), function ($groupname) use($groupDAO) { header("Content-Type: application/json"); echo json_encode($groupDAO->selectByGroupName($groupname), JSON_NUMERIC_CHECK); exit; }); $app->post('/group/?', function () use($app, $groupDAO) { header("Content-Type: application/json"); $post = $app->request->post(); if (empty($post)) { $post = (array) json_decode($app->request()->getBody()); } echo json_encode($groupDAO->insert($post), JSON_NUMERIC_CHECK); exit; }); $app->delete('/group/:id/?', authorize(), function () use($groupDAO) { header("Content-Type: application/json"); echo json_encode($groupDAO->delete()); exit; }); $app->put('/group/:id/?', authorize(), function ($id) use($app, $groupDAO) { header("Content-Type: application/json"); $post = $app->request->post(); if (empty($post)) { $post = (array) json_decode($app->request()->getBody()); } echo json_encode($groupDAO->updateGroup($id, $post), JSON_NUMERIC_CHECK); exit; });