PHP Classes

File: backend/Router/PerfilPermissaoRouter.php

Recommend this page to a friend!
  Classes of Rodrigo Faustino   PHP AJAX Login with JWT and Fetch API   backend/Router/PerfilPermissaoRouter.php   Download  
File: backend/Router/PerfilPermissaoRouter.php
Role: Example script
Content type: text/plain
Description: Example script
Class: PHP AJAX Login with JWT and Fetch API
Login users using AJAX to send JWT to a server API
Author: By
Last change:
Date: 5 months ago
Size: 2,059 bytes
 

Contents

Class file image Download
<?php

namespace App\Router;

require
"../../vendor/autoload.php";

use
App\Controller\PerfilPermissaoController;
use
App\Model\Perfil;
use
App\Model\Permissao;
$perfil = new Perfil();
$permissao = new Permissao();

header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: OPTIONS, GET, POST, PUT, DELETE');
header('Access-Control-Allow-Headers: Content-Type');
header('Cache-Control: no-cache, no-store, must-revalidate');

$body = json_decode(file_get_contents('php://input'), true);

$perfilId = isset($_GET['perfilId']) ? $_GET['perfilId'] : '';
$permissaoId = isset($body['permissaoId']) ? $body['permissaoId'] : '';

$controller = new PerfilPermissaoController();
switch (
$_SERVER["REQUEST_METHOD"]) {
    case
"POST":
       
$perfil->setId($perfilId);

       
$resultado = $controller->adicionarPermissao($perfil, $body['nome']);
        echo
json_encode(['status' => $resultado]);
        break;

        case
"GET":
            if (
$perfilId) {
               
$perfil->setId($perfilId);
              
               
$resultado = $controller->obterPermissoesDoPerfil($perfil);
       
                if (!
$resultado) {
                    echo
json_encode(["status" => false, "mensagem" => "Nenhum resultado encontrado"]);
                    exit;
                } else {
                    echo
json_encode($resultado);
                    exit;
                }
            } else {
               
$resultado = $controller->listarTodos();
       
                if (!
$resultado) {
                    echo
json_encode(["status" => false, "mensagem" => "Nenhum perfil encontrado"]);
                    exit;
                } else {
                    echo
json_encode($resultado);
                    exit;
                }
            }
            break;
       

    case
"DELETE":
       
$perfil->setId($perfilId);
       
$resultado = $controller->removerPermissao($perfil, $body['nome']);
        echo
json_encode(['status' => $resultado]);
        break;
}