public function isAuthorized($user) { if ($this->request->action === 'index') { if (isset($user['role']) && $user['role'] === 'Administrador' || $user['role'] === 'Suporte') { return true; } return false; } if ($this->request->action === 'cadastrar') { if (isset($user['role'])) { return true; } return false; } if ($this->request->action === 'add') { if (isset($user['role']) && $user['role'] === 'Administrador') { return true; } return false; } if ($this->request->action === 'view') { if (isset($user['role'])) { return true; } return false; } if ($this->request->action === 'editar') { if (isset($user['role'])) { return true; } return false; } if ($this->request->action === 'edit') { if (isset($user['role']) && $user['role'] === 'Administrador') { return true; } return false; } if ($this->request->action === 'delete') { if (isset($user['role']) && $user['role'] === 'Administrador' || $user['role'] === 'Professor' || $user['role'] === 'Bolsista') { return true; } return false; } if ($this->request->action === 'find') { if (isset($user['role'])) { return true; } return false; } if ($this->request->action === 'alterarResponsavel') { if (isset($user['role']) && $user['role'] === 'Administrador' || $user['role'] === 'Professor' || $user['role'] === 'Bolsista') { return true; } return false; } if ($this->request->action === 'relatorio') { $tomboEquipamento = $this->request->params['pass']['0']; $equipamento = $this->Equipamentos->find()->where(['tombo' => $tomboEquipamento])->contain(['Locals', 'Users'])->first(); if (isset($user['role']) && $user['role'] === 'Administrador' || $user['role'] === 'Suporte' || UsersController::isCoordenador($user, $equipamento->codLocal) || $equipamento->responsavel === $user['matricula']) { return true; } return false; } if ($this->request->action === 'alterarStatus') { return true; } }
public function isAuthorized($user) { if ($this->request->action === 'view') { $codLocal = $this->request->params['pass']['0']; $local = $this->Locals->find()->where(['codigo' => $codLocal])->first(); if (!strcmp($local->tipo, 'Almoxarifado')) { if (isset($user['role']) && $user['role'] === 'Administrador' || $user['role'] === 'Suporte') { return true; } return false; } return true; } if ($this->request->action === 'edit') { if (isset($user['role']) && $user['role'] === 'Administrador') { return true; } return false; } if ($this->request->action === 'moverEquipamentos') { if (isset($user['role']) && $user['role'] === 'Administrador') { return true; } return false; } if ($this->request->action === 'bolsista') { $codLocal = $this->request->params['pass']['0']; if (isset($user['role']) && UsersController::isCoordenador($user, $codLocal) || $user['role'] === 'Administrador') { return true; } return false; } if ($this->request->action === 'relatorio') { $codLocal = $this->request->params['pass']['0']; if (isset($user['role']) && UsersController::isCoordenador($user, $codLocal) || $user['role'] === 'Administrador' || $user['role'] === 'Suporte') { return true; } return false; } return parent::isAuthorized($user); }