public function profile() { $user = User::getData(); if (!empty($user)) { // setting a new properity for the user permission $permission = PermissionModel::first('user_id = ?', [$user->id]); $user->permission = $permission->permission; // if the user is admin then will fetch the not replied complains $requests = null; if ($permission->permission == 'admin') { $requests = ComplainModel::with(['status' => 'bending']); if (count($requests)) { foreach ($requests as $request) { // fetching the data for the patient who made the complain $request->patient = UserModel::id($request->user_id); } } $requests_count = count($requests); return twig('profile-admin.html', ['user' => $user, 'requests' => $requests, 'requests_count' => $requests_count]); } $msgs = $complains = null; if ($permission->permission == 'normal') { // fetching the current user messages $msgs = MessageModel::with(['user_id' => $user->id]); // fetching the current user complains $complains = ComplainModel::with(['user_id' => $user->id]); $msgs_count = count(MessageModel::with(['user_id' => $user->id, 'viewed' => 0])); return twig('profile-user.html', ['user' => $user, 'complains' => $complains, 'msgs' => $msgs, 'msgs_count' => $msgs_count]); } } else { Session::flash("msg", '<li><span class="msg-warning">Warning: </span> Humm!... you want to cheat, access denied</li>'); goBack(); } }
public function delete($id) { $current = User::getData(); $admin = PermissionModel::findBy(['user_id' => $current->id, 'permission' => 'admin']); $userFlag = $perFlag = $msgFlag = $compFlag = FALSE; if ($current->id != $id && $admin) { $avatar = UserModel::id($id)->avatar; if (!empty($avatar)) { @unlink(Url::resource($avatar)); } $userFlag = UserModel::delete('id = ?', [$id]); $perFlag = PermissionModel::delete('user_id = ?', [$id]); $msgFlag = MessageModel::delete('user_id = ?', [$id]); $compFlag = ComplainModel::delete('user_id = ?', [$id]); } Response::json(['status' => $userFlag && $perFlag && $msgFlag && $compFlag]); }