public function userAction() { $auth = $this->session->get('auth'); $email = $auth['email']; $user = Users::findFirstByemail($email); $security_groups = $user->SecurityGroup; $user_dashboards = array(); foreach ($security_groups as $security_group) { $dashboards = $security_group->Dashboard; $user_dashboards = array_merge($user_dashboards, $dashboards->ToArray()); } if ($user_dashboards) { $dashboard = $user_dashboards[0]; $this->response->redirect("/dashboards/" . $dashboard['type'] . "/render/" . $dashboard['id'] . "/dashboard"); } }
/** * Builds header menu with left and right items * * @return string */ public function getMenu() { $menu = array(); $auth = $this->session->get('auth'); $email = $auth['email']; $user = Users::findFirstByemail($email); $security_groups = $user->SecurityGroup; $user_dashboards = array(); foreach ($security_groups as $security_group) { $dashboards = $security_group->Dashboard; $user_dashboards = array_merge($user_dashboards, $dashboards->ToArray()); } foreach ($user_dashboards as $dashboard) { $newMenuLink = array('link' => "/dashboards/" . $dashboard['type'] . "/render/" . $dashboard['id'] . "/dashboard", 'title' => $dashboard['title'], 'icon' => $dashboard['icon'], 'selected' => 'false'); array_push($menu, $newMenuLink); } if ($auth) { if ($auth['role'] == 'User') { foreach ($this->_userMenu as $controller => $option) { $newMenuLink = array('link' => '/' . $controller . '/' . $option['action'], 'title' => $option['caption'], 'icon' => $option['icon'], 'selected' => 'false'); array_push($menu, $newMenuLink); } } elseif ($auth['role'] == 'Admin') { foreach ($this->_adminMenu as $controller => $option) { $newMenuLink = array('link' => '/' . $controller . '/' . $option['action'], 'title' => $option['caption'], 'icon' => $option['icon'], 'selected' => 'false'); array_push($menu, $newMenuLink); } } elseif ($auth['role'] == 'Supervisor') { foreach ($this->_supervisorMenu as $controller => $option) { $newMenuLink = array('link' => '/' . $controller . '/' . $option['action'], 'title' => $option['caption'], 'icon' => $option['icon'], 'selected' => 'false'); array_push($menu, $newMenuLink); } } } return $menu; }
/** * Deletes a user * * @param string $email */ public function deleteAction() { $email = $this->request->getPost("id"); $user = Users::findFirstByemail($email); if (!$user) { $this->flash->error("User was not found"); return $this->dispatcher->forward(array("controller" => "users", "action" => "index")); } if (!$user->delete()) { foreach ($user->getMessages() as $message) { $this->flash->error($message); } return $this->dispatcher->forward(array("controller" => "users", "action" => "index")); } $this->flash->success("User was deleted successfully"); return $this->dispatcher->forward(array("controller" => "users", "action" => "index")); }