Вход Регистрация
Файл: gapps/vendor/laravel/framework/src/Illuminate/Foundation/Auth/Access/AuthorizesRequests.php
Строк: 63
<?php

namespace IlluminateFoundationAuthAccess;

use 
IlluminateContractsAuthAccessGate;

trait 
AuthorizesRequests
{
    
/**
     * Authorize a given action against a set of arguments.
     *
     * @param  mixed  $ability
     * @param  mixed|array  $arguments
     * @return IlluminateAuthAccessResponse
     *
     * @throws IlluminateAuthAccessAuthorizationException
     */
    
public function authorize($ability$arguments = [])
    {
        list(
$ability$arguments) = $this->parseAbilityAndArguments($ability$arguments);

        return 
app(Gate::class)->authorize($ability$arguments);
    }

    
/**
     * Authorize a given action for a user.
     *
     * @param  IlluminateContractsAuthAuthenticatable|mixed  $user
     * @param  mixed  $ability
     * @param  mixed|array  $arguments
     * @return IlluminateAuthAccessResponse
     *
     * @throws IlluminateAuthAccessAuthorizationException
     */
    
public function authorizeForUser($user$ability$arguments = [])
    {
        list(
$ability$arguments) = $this->parseAbilityAndArguments($ability$arguments);

        return 
app(Gate::class)->forUser($user)->authorize($ability$arguments);
    }

    
/**
     * Guesses the ability's name if it wasn't provided.
     *
     * @param  mixed  $ability
     * @param  mixed|array  $arguments
     * @return array
     */
    
protected function parseAbilityAndArguments($ability$arguments)
    {
        if (
is_string($ability)) {
            return [
$ability$arguments];
        }

        return [
debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS3)[2]['function'], $ability];
    }
}
Онлайн: 0
Реклама