!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache/2.2.22 (Debian). PHP/5.6.36 

uname -a: Linux h05.hvosting.ua 4.9.110-amd64 #3 SMP Sun Nov 4 16:27:09 UTC 2018 x86_64 

uid=1389(h33678) gid=1099(h33678) groups=1099(h33678),502(mgrsecure) 

Safe-mode: OFF (not secure)

/home/h33678/data/www/it-man.ztu.edu.ua/src/vendor/laravel/framework/src/Illuminate/Routing/   drwxr-xr-x
Free 116.5 GB of 200.55 GB (58.09%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     ResourceRegistrar.php (12.08 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Illuminate\Routing;

use 
Illuminate\Support\Str;

class 
ResourceRegistrar
{
    
/**
     * The router instance.
     *
     * @var \Illuminate\Routing\Router
     */
    
protected $router;

    
/**
     * The default actions for a resourceful controller.
     *
     * @var array
     */
    
protected $resourceDefaults = ['index''create''store''show''edit''update''destroy'];

    
/**
     * The parameters set for this resource instance.
     *
     * @var array|string
     */
    
protected $parameters;

    
/**
     * The global parameter mapping.
     *
     * @var array
     */
    
protected static $parameterMap = [];

    
/**
     * Singular global parameters.
     *
     * @var bool
     */
    
protected static $singularParameters false;

    
/**
     * Create a new resource registrar instance.
     *
     * @param  \Illuminate\Routing\Router  $router
     * @return void
     */
    
public function __construct(Router $router)
    {
        
$this->router $router;
    }

    
/**
     * Route a resource to a controller.
     *
     * @param  string  $name
     * @param  string  $controller
     * @param  array   $options
     * @return void
     */
    
public function register($name$controller, array $options = [])
    {
        if (isset(
$options['parameters']) && ! isset($this->parameters)) {
            
$this->parameters $options['parameters'];
        }

        
// If the resource name contains a slash, we will assume the developer wishes to
        // register these resource routes with a prefix so we will set that up out of
        // the box so they don't have to mess with it. Otherwise, we will continue.
        
if (Str::contains($name'/')) {
            
$this->prefixedResource($name$controller$options);

            return;
        }

        
// We need to extract the base resource from the resource name. Nested resources
        // are supported in the framework, but we need to know what name to use for a
        // place-holder on the route parameters, which should be the base resources.
        
$base $this->getResourceWildcard(last(explode('.'$name)));

        
$defaults $this->resourceDefaults;

        foreach (
$this->getResourceMethods($defaults$options) as $m) {
            
$this->{'addResource'.ucfirst($m)}($name$base$controller$options);
        }
    }

    
/**
     * Build a set of prefixed resource routes.
     *
     * @param  string  $name
     * @param  string  $controller
     * @param  array   $options
     * @return void
     */
    
protected function prefixedResource($name$controller, array $options)
    {
        list(
$name$prefix) = $this->getResourcePrefix($name);

        
// We need to extract the base resource from the resource name. Nested resources
        // are supported in the framework, but we need to know what name to use for a
        // place-holder on the route parameters, which should be the base resources.
        
$callback = function ($me) use ($name$controller$options) {
            
$me->resource($name$controller$options);
        };

        return 
$this->router->group(compact('prefix'), $callback);
    }

    
/**
     * Extract the resource and prefix from a resource name.
     *
     * @param  string  $name
     * @return array
     */
    
protected function getResourcePrefix($name)
    {
        
$segments explode('/'$name);

        
// To get the prefix, we will take all of the name segments and implode them on
        // a slash. This will generate a proper URI prefix for us. Then we take this
        // last segment, which will be considered the final resources name we use.
        
$prefix implode('/'array_slice($segments0, -1));

        return [
end($segments), $prefix];
    }

    
/**
     * Get the applicable resource methods.
     *
     * @param  array  $defaults
     * @param  array  $options
     * @return array
     */
    
protected function getResourceMethods($defaults$options)
    {
        if (isset(
$options['only'])) {
            return 
array_intersect($defaults, (array) $options['only']);
        } elseif (isset(
$options['except'])) {
            return 
array_diff($defaults, (array) $options['except']);
        }

        return 
$defaults;
    }

    
/**
     * Get the base resource URI for a given resource.
     *
     * @param  string  $resource
     * @return string
     */
    
public function getResourceUri($resource)
    {
        if (! 
Str::contains($resource'.')) {
            return 
$resource;
        }

        
// Once we have built the base URI, we'll remove the parameter holder for this
        // base resource name so that the individual route adders can suffix these
        // paths however they need to, as some do not have any parameters at all.
        
$segments explode('.'$resource);

        
$uri $this->getNestedResourceUri($segments);

        return 
str_replace('/{'.$this->getResourceWildcard(end($segments)).'}'''$uri);
    }

    
/**
     * Get the URI for a nested resource segment array.
     *
     * @param  array   $segments
     * @return string
     */
    
protected function getNestedResourceUri(array $segments)
    {
        
// We will spin through the segments and create a place-holder for each of the
        // resource segments, as well as the resource itself. Then we should get an
        // entire string for the resource URI that contains all nested resources.
        
return implode('/'array_map(function ($s) {
            return 
$s.'/{'.$this->getResourceWildcard($s).'}';
        }, 
$segments));
    }

    
/**
     * Get the action array for a resource route.
     *
     * @param  string  $resource
     * @param  string  $controller
     * @param  string  $method
     * @param  array   $options
     * @return array
     */
    
protected function getResourceAction($resource$controller$method$options)
    {
        
$name $this->getResourceName($resource$method$options);

        return [
'as' => $name'uses' => $controller.'@'.$method];
    }

    
/**
     * Get the name for a given resource.
     *
     * @param  string  $resource
     * @param  string  $method
     * @param  array   $options
     * @return string
     */
    
protected function getResourceName($resource$method$options)
    {
        if (isset(
$options['names'][$method])) {
            return 
$options['names'][$method];
        }

        
// If a global prefix has been assigned to all names for this resource, we will
        // grab that so we can prepend it onto the name when we create this name for
        // the resource action. Otherwise we'll just use an empty string for here.
        
$prefix = isset($options['as']) ? $options['as'].'.' '';

        if (! 
$this->router->hasGroupStack()) {
            return 
$prefix.$resource.'.'.$method;
        }

        return 
$this->getGroupResourceName($prefix$resource$method);
    }

    
/**
     * Get the resource name for a grouped resource.
     *
     * @param  string  $prefix
     * @param  string  $resource
     * @param  string  $method
     * @return string
     */
    
protected function getGroupResourceName($prefix$resource$method)
    {
        
$group trim(str_replace('/''.'$this->router->getLastGroupPrefix()), '.');

        if (empty(
$group)) {
            return 
trim("{$prefix}{$resource}.{$method}"'.');
        }

        return 
trim("{$prefix}{$group}.{$resource}.{$method}"'.');
    }

    
/**
     * Format a resource parameter for usage.
     *
     * @param  string  $value
     * @return string
     */
    
public function getResourceWildcard($value)
    {
        if (isset(
$this->parameters[$value])) {
            
$value $this->parameters[$value];
        } elseif (isset(static::
$parameterMap[$value])) {
            
$value = static::$parameterMap[$value];
        } elseif (
$this->parameters === 'singular' || static::$singularParameters) {
            
$value Str::singular($value);
        }

        return 
str_replace('-''_'$value);
    }

    
/**
     * Add the index method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return \Illuminate\Routing\Route
     */
    
protected function addResourceIndex($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name);

        
$action $this->getResourceAction($name$controller'index'$options);

        return 
$this->router->get($uri$action);
    }

    
/**
     * Add the create method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return \Illuminate\Routing\Route
     */
    
protected function addResourceCreate($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name).'/create';

        
$action $this->getResourceAction($name$controller'create'$options);

        return 
$this->router->get($uri$action);
    }

    
/**
     * Add the store method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return \Illuminate\Routing\Route
     */
    
protected function addResourceStore($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name);

        
$action $this->getResourceAction($name$controller'store'$options);

        return 
$this->router->post($uri$action);
    }

    
/**
     * Add the show method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return \Illuminate\Routing\Route
     */
    
protected function addResourceShow($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name).'/{'.$base.'}';

        
$action $this->getResourceAction($name$controller'show'$options);

        return 
$this->router->get($uri$action);
    }

    
/**
     * Add the edit method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return \Illuminate\Routing\Route
     */
    
protected function addResourceEdit($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name).'/{'.$base.'}/edit';

        
$action $this->getResourceAction($name$controller'edit'$options);

        return 
$this->router->get($uri$action);
    }

    
/**
     * Add the update method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return void
     */
    
protected function addResourceUpdate($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name).'/{'.$base.'}';

        
$action $this->getResourceAction($name$controller'update'$options);

        return 
$this->router->match(['PUT''PATCH'], $uri$action);
    }

    
/**
     * Add the destroy method for a resourceful route.
     *
     * @param  string  $name
     * @param  string  $base
     * @param  string  $controller
     * @param  array   $options
     * @return \Illuminate\Routing\Route
     */
    
protected function addResourceDestroy($name$base$controller$options)
    {
        
$uri $this->getResourceUri($name).'/{'.$base.'}';

        
$action $this->getResourceAction($name$controller'destroy'$options);

        return 
$this->router->delete($uri$action);
    }

    
/**
     * Set or unset the unmapped global parameters to singular.
     *
     * @return void
     */
    
public static function singularParameters($singular true)
    {
        static::
$singularParameters = (bool) $singular;
    }

    
/**
     * Get the global parameter map.
     *
     * @return array
     */
    
public static function getParameters()
    {
        return static::
$parameterMap;
    }

    
/**
     * Set the global parameter mapping.
     *
     * @param  array $parameters
     * @return void
     */
    
public static function setParameters(array $parameters = [])
    {
        static::
$parameterMap $parameters;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by PinoyWH1Z | C99Shell Github | Generation time: 0.0114 ]--