<?php
/**
 * Arquivo de declaração da classe Permissao.
 */
class Permissao extends Controller
{
    /**
     * Método construtor.
     */
    public function __construct()
    {
    }

    /**
     * Método para inserir permissão.
     *
     * @param  int $perfil
     * @param  int $tela
     */
    public static function inserePerfilTela($perfil = 0, $tela = 0)
    {
        FabricaDAO::fabricar(static::className())->inserePerfilTela($perfil, $tela);
    }

    /**
     * Método para buscar.
     *
     * @param  int $id
     * @return array
     */
    public static function buscar($id = 0)
    {
        return FabricaDAO::fabricar(static::className())->buscar($id);
    }

    /**
     * Método para alterar a permissão.
     *
     * @param  int $id
     * @param  string  $campo
     * @param  int $valor
     */
    public static function mudaPermissao($id = 0, $campo = '', $valor = 0)
    {
        FabricaDAO::fabricar(static::className())->mudaPermissao($id, $campo, $valor);
    }

    /**
     * Método para carregar permissoes de uma tela especifica.
     *
     * @param  string  $telaSlug
     * @param  int $idUser
     */
    public static function permissaoTela($telaSlug = '', $idUser = 0)
    {
        return FabricaDAO::fabricar(static::className())->permissaoTela($telaSlug, $idUser);
    }

    /**
     * Método para carregar permissoes.
     *
     * @param  int $idUser
     */
    public static function permissaoPerfil($idUser = 0)
    {
        return FabricaDAO::fabricar(static::className())->permissaoPerfil($idUser);
    }
}
