<?php $Read = new WsAcesso(); switch ($method) { case "GET": //retorna todos os itens if (isset($id)) { $Read->setAcesso_id($id); $Read->Execute()->find(); Check::JsonReturn($Read->Execute()->getResult(), 'Acesso não encontrado!', '404'); } else { $Read->Execute()->findAll(); Check::JsonReturn($Read->Execute()->getResult(), 'Nenhum acesso cadastrado!', '204'); } break; case "POST": if (!empty($request->acesso_id)) { //update $Read->setThis($request); $Read->Execute()->update(NULL, 'acesso_id'); echo json_encode($request); } else { //salvar $request->acesso_tag = Check::Name($request->acesso_tag); $request->acesso_status = 1; $request->acesso_name = Check::Name($request->acesso_title); $Read->setThis($request); $insert = $Read->Execute()->insert(); if ($insert) { $request->acesso_id = (int) $Read->Execute()->MaxFild("acesso_id"); }
/** * Verifica se o usuario logado tem acesso o acesso informado! * * @param type $acesso * @return boolean */ public static function UserPermission($acesso, $system = NULL) { $acessos = $_SESSION['userlogin']['perfil']->acessos; $acesso_name = self::Name($acesso); $Read = new WsAcesso(); $Read->setAcesso_name($acesso_name); $Read->setAcesso_tag($acesso_name); $Read->Execute()->Query("(#acesso_name# OR #acesso_tag#)"); $result = $Read->Execute()->getResult(); if ($result) { foreach ($acessos as $value) { if ($value->acesso_id == $result[0]->acesso_id) { return true; } } $message = "Não tem permissão"; $status = WS_ALERT; self::mensagem($system, false, $message, $status); } else { $message = "Acesso não encontrado"; $status = WS_INFOR; self::mensagem($system, false, $message, $status); } }
private function getAcessos($acessos_id) { $Read = new WsAcesso(); $Read->Execute()->FullRead("SELECT a.* FROM ws_acesso a " . " JOIN ws_perfil_has_ws_acesso pa ON(pa.acesso_id = a.acesso_id)" . " WHERE pa.perfil_id = :perfil", "perfil={$acessos_id}"); if ($Read->Execute()->getResult()) { return $Read->Execute()->getResult(); } else { WSErro("Acessos não encontrado para este perfil!", WS_ERROR); return null; } }