UnexpectedValueException
Invalid route action: [App\Http\Controllers\App\Http\Controllers\umum\BidangController]. UnexpectedValueException thrown with message "Invalid route action: [App\Http\Controllers\App\Http\Controllers\umum\BidangController]." Stacktrace: #37 UnexpectedValueException in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/RouteAction.php:84 #36 Illuminate\Routing\RouteAction:makeInvokable in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/RouteAction.php:43 #35 Illuminate\Routing\RouteAction:parse in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Route.php:155 #34 Illuminate\Routing\Route:parseAction in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Route.php:134 #33 Illuminate\Routing\Route:__construct in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Router.php:525 #32 Illuminate\Routing\Router:newRoute in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Router.php:444 #31 Illuminate\Routing\Router:createRoute in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Router.php:423 #30 Illuminate\Routing\Router:addRoute in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Router.php:140 #29 Illuminate\Routing\Router:get in /home/puprsa/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:221 #28 Illuminate\Support\Facades\Facade:__callStatic in /home/puprsa/routes/web.php:61 #27 require in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Router.php:393 #26 Illuminate\Routing\Router:loadRoutes in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/Router.php:349 #25 Illuminate\Routing\Router:group in /home/puprsa/vendor/laravel/framework/src/Illuminate/Routing/RouteRegistrar.php:105 #24 Illuminate\Routing\RouteRegistrar:group in /home/puprsa/app/Providers/RouteServiceProvider.php:56 #23 App\Providers\RouteServiceProvider:mapWebRoutes in /home/puprsa/app/Providers/RouteServiceProvider.php:40 #22 App\Providers\RouteServiceProvider:map in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29 #21 call_user_func_array in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29 #20 Illuminate\Container\BoundMethod:Illuminate\Container\{closure} in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87 #19 Illuminate\Container\BoundMethod:callBoundMethod in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31 #18 Illuminate\Container\BoundMethod:call in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/Container.php:549 #17 Illuminate\Container\Container:call in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Support/Providers/RouteServiceProvider.php:74 #16 Illuminate\Foundation\Support\Providers\RouteServiceProvider:loadRoutes in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Support/Providers/RouteServiceProvider.php:33 #15 Illuminate\Foundation\Support\Providers\RouteServiceProvider:boot in /home/puprsa/app/Providers/RouteServiceProvider.php:28 #14 App\Providers\RouteServiceProvider:boot in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29 #13 call_user_func_array in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29 #12 Illuminate\Container\BoundMethod:Illuminate\Container\{closure} in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87 #11 Illuminate\Container\BoundMethod:callBoundMethod in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31 #10 Illuminate\Container\BoundMethod:call in /home/puprsa/vendor/laravel/framework/src/Illuminate/Container/Container.php:549 #9 Illuminate\Container\Container:call in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:792 #8 Illuminate\Foundation\Application:bootProvider in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:775 #7 Illuminate\Foundation\Application:Illuminate\Foundation\{closure} in [internal]:0 #6 array_walk in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:776 #5 Illuminate\Foundation\Application:boot in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17 #4 Illuminate\Foundation\Bootstrap\BootProviders:bootstrap in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:213 #3 Illuminate\Foundation\Application:bootstrapWith in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:162 #2 Illuminate\Foundation\Http\Kernel:bootstrap in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:146 #1 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /home/puprsa/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116 #0 Illuminate\Foundation\Http\Kernel:handle in /home/puprsa/public_html/index.php:52
37
UnexpectedValueException
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
RouteAction.php
84
36
Illuminate
\
Routing
\
RouteAction
makeInvokable
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
RouteAction.php
43
35
Illuminate
\
Routing
\
RouteAction
parse
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
155
34
Illuminate
\
Routing
\
Route
parseAction
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
134
33
Illuminate
\
Routing
\
Route
__construct
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
525
32
Illuminate
\
Routing
\
Router
newRoute
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
444
31
Illuminate
\
Routing
\
Router
createRoute
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
423
30
Illuminate
\
Routing
\
Router
addRoute
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
140
29
Illuminate
\
Routing
\
Router
get
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Support
/
Facades
/
Facade.php
221
28
Illuminate
\
Support
\
Facades
\
Facade
__callStatic
/
routes
/
web.php
61
27
require
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
393
26
Illuminate
\
Routing
\
Router
loadRoutes
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
349
25
Illuminate
\
Routing
\
Router
group
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
RouteRegistrar.php
105
24
Illuminate
\
Routing
\
RouteRegistrar
group
/
app
/
Providers
/
RouteServiceProvider.php
56
23
App
\
Providers
\
RouteServiceProvider
mapWebRoutes
/
app
/
Providers
/
RouteServiceProvider.php
40
22
App
\
Providers
\
RouteServiceProvider
map
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
29
21
call_user_func_array
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
29
20
Illuminate
\
Container
\
BoundMethod
Illuminate
\
Container
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
87
19
Illuminate
\
Container
\
BoundMethod
callBoundMethod
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
31
18
Illuminate
\
Container
\
BoundMethod
call
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
Container.php
549
17
Illuminate
\
Container
\
Container
call
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Support
/
Providers
/
RouteServiceProvider.php
74
16
Illuminate
\
Foundation
\
Support
\
Providers
\
RouteServiceProvider
loadRoutes
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Support
/
Providers
/
RouteServiceProvider.php
33
15
Illuminate
\
Foundation
\
Support
\
Providers
\
RouteServiceProvider
boot
/
app
/
Providers
/
RouteServiceProvider.php
28
14
App
\
Providers
\
RouteServiceProvider
boot
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
29
13
call_user_func_array
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
29
12
Illuminate
\
Container
\
BoundMethod
Illuminate
\
Container
\
{closure}
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
87
11
Illuminate
\
Container
\
BoundMethod
callBoundMethod
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
31
10
Illuminate
\
Container
\
BoundMethod
call
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
Container.php
549
9
Illuminate
\
Container
\
Container
call
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
792
8
Illuminate
\
Foundation
\
Application
bootProvider
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
775
7
Illuminate
\
Foundation
\
Application
Illuminate
\
Foundation
\
{closure}
[internal]
0
6
array_walk
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
776
5
Illuminate
\
Foundation
\
Application
boot
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Bootstrap
/
BootProviders.php
17
4
Illuminate
\
Foundation
\
Bootstrap
\
BootProviders
bootstrap
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
213
3
Illuminate
\
Foundation
\
Application
bootstrapWith
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
162
2
Illuminate
\
Foundation
\
Http
\
Kernel
bootstrap
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
146
1
Illuminate
\
Foundation
\
Http
\
Kernel
sendRequestThroughRouter
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
116
0
Illuminate
\
Foundation
\
Http
\
Kernel
handle
/
public_html
/
index.php
52
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
RouteAction.php
     * @param  array  $action
     * @return callable
     */
    protected static function findCallable(array $action)
    {
        return Arr::first($action, function ($value, $key) {
            return is_callable($value) && is_numeric($key);
        });
    }
 
    /**
     * Make an action for an invokable controller.
     *
     * @param  string $action
     * @return string
     */
    protected static function makeInvokable($action)
    {
        if (! method_exists($action, '__invoke')) {
            throw new UnexpectedValueException("Invalid route action: [{$action}].");
        }
 
        return $action.'@__invoke';
    }
}
 
Arguments
  1. "Invalid route action: [App\Http\Controllers\App\Http\Controllers\umum\BidangController]."
    
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
RouteAction.php
        if (is_null($action)) {
            return static::missingAction($uri);
        }
 
        // If the action is already a Closure instance, we will just set that instance
        // as the "uses" property, because there is nothing else we need to do when
        // it is available. Otherwise we will need to find it in the action list.
        if (is_callable($action)) {
            return ['uses' => $action];
        }
 
        // If no "uses" property has been set, we will dig through the array to find a
        // Closure instance within this list. We will set the first Closure we come
        // across into the "uses" property that will get fired off by this route.
        elseif (! isset($action['uses'])) {
            $action['uses'] = static::findCallable($action);
        }
 
        if (is_string($action['uses']) && ! Str::contains($action['uses'], '@')) {
            $action['uses'] = static::makeInvokable($action['uses']);
        }
 
        return $action;
    }
 
    /**
     * Get an action for a route that has no action.
     *
     * @param  string  $uri
     * @return array
     */
    protected static function missingAction($uri)
    {
        return ['uses' => function () use ($uri) {
            throw new LogicException("Route for [{$uri}] has no action.");
        }];
    }
 
    /**
     * Find the callable in an action array.
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
        if (in_array('GET', $this->methods) && ! in_array('HEAD', $this->methods)) {
            $this->methods[] = 'HEAD';
        }
 
        if (isset($this->action['prefix'])) {
            $this->prefix($this->action['prefix']);
        }
    }
 
    /**
     * Parse the route action into a standard array.
     *
     * @param  callable|array|null  $action
     * @return array
     *
     * @throws \UnexpectedValueException
     */
    protected function parseAction($action)
    {
        return RouteAction::parse($this->uri, $action);
    }
 
    /**
     * Run the route action and return the response.
     *
     * @return mixed
     */
    public function run()
    {
        $this->container = $this->container ?: new Container;
 
        try {
            if ($this->isControllerAction()) {
                return $this->runController();
            }
 
            return $this->runCallable();
        } catch (HttpResponseException $e) {
            return $e->getResponse();
        }
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Route.php
    /**
     * The validators used by the routes.
     *
     * @var array
     */
    public static $validators;
 
    /**
     * Create a new Route instance.
     *
     * @param  array|string  $methods
     * @param  string  $uri
     * @param  \Closure|array  $action
     * @return void
     */
    public function __construct($methods, $uri, $action)
    {
        $this->uri = $uri;
        $this->methods = (array) $methods;
        $this->action = $this->parseAction($action);
 
        if (in_array('GET', $this->methods) && ! in_array('HEAD', $this->methods)) {
            $this->methods[] = 'HEAD';
        }
 
        if (isset($this->action['prefix'])) {
            $this->prefix($this->action['prefix']);
        }
    }
 
    /**
     * Parse the route action into a standard array.
     *
     * @param  callable|array|null  $action
     * @return array
     *
     * @throws \UnexpectedValueException
     */
    protected function parseAction($action)
    {
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
     */
    protected function prependGroupNamespace($class)
    {
        $group = end($this->groupStack);
 
        return isset($group['namespace']) && strpos($class, '\\') !== 0
                ? $group['namespace'].'\\'.$class : $class;
    }
 
    /**
     * Create a new Route object.
     *
     * @param  array|string  $methods
     * @param  string  $uri
     * @param  mixed  $action
     * @return \Illuminate\Routing\Route
     */
    protected function newRoute($methods, $uri, $action)
    {
        return (new Route($methods, $uri, $action))
                    ->setRouter($this)
                    ->setContainer($this->container);
    }
 
    /**
     * Prefix the given URI with the last prefix.
     *
     * @param  string  $uri
     * @return string
     */
    protected function prefix($uri)
    {
        return trim(trim($this->getLastGroupPrefix(), '/').'/'.trim($uri, '/'), '/') ?: '/';
    }
 
    /**
     * Add the necessary where clauses to the route based on its initial registration.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return \Illuminate\Routing\Route
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
 
    /**
     * Create a new route instance.
     *
     * @param  array|string  $methods
     * @param  string  $uri
     * @param  mixed  $action
     * @return \Illuminate\Routing\Route
     */
    protected function createRoute($methods, $uri, $action)
    {
        // If the route is routing to a controller we will parse the route action into
        // an acceptable array format before registering it and creating this route
        // instance itself. We need to build the Closure that will call this out.
        if ($this->actionReferencesController($action)) {
            $action = $this->convertToControllerAction($action);
        }
 
        $route = $this->newRoute(
            $methods, $this->prefix($uri), $action
        );
 
        // If we have groups that need to be merged, we will merge them now after this
        // route has already been created and is ready to go. After we're done with
        // the merge we will be ready to return the route back out to the caller.
        if ($this->hasGroupStack()) {
            $this->mergeGroupAttributesIntoRoute($route);
        }
 
        $this->addWhereClausesToRoute($route);
 
        return $route;
    }
 
    /**
     * Determine if the action is routing to a controller.
     *
     * @param  array  $action
     * @return bool
     */
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
        if (! empty($this->groupStack)) {
            $last = end($this->groupStack);
 
            return $last['prefix'] ?? '';
        }
 
        return '';
    }
 
    /**
     * Add a route to the underlying route collection.
     *
     * @param  array|string  $methods
     * @param  string  $uri
     * @param  \Closure|array|string|null  $action
     * @return \Illuminate\Routing\Route
     */
    protected function addRoute($methods, $uri, $action)
    {
        return $this->routes->add($this->createRoute($methods, $uri, $action));
    }
 
    /**
     * Create a new route instance.
     *
     * @param  array|string  $methods
     * @param  string  $uri
     * @param  mixed  $action
     * @return \Illuminate\Routing\Route
     */
    protected function createRoute($methods, $uri, $action)
    {
        // If the route is routing to a controller we will parse the route action into
        // an acceptable array format before registering it and creating this route
        // instance itself. We need to build the Closure that will call this out.
        if ($this->actionReferencesController($action)) {
            $action = $this->convertToControllerAction($action);
        }
 
        $route = $this->newRoute(
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
     * @param  \Illuminate\Container\Container  $container
     * @return void
     */
    public function __construct(Dispatcher $events, Container $container = null)
    {
        $this->events = $events;
        $this->routes = new RouteCollection;
        $this->container = $container ?: new Container;
    }
 
    /**
     * Register a new GET route with the router.
     *
     * @param  string  $uri
     * @param  \Closure|array|string|null  $action
     * @return \Illuminate\Routing\Route
     */
    public function get($uri, $action = null)
    {
        return $this->addRoute(['GET', 'HEAD'], $uri, $action);
    }
 
    /**
     * Register a new POST route with the router.
     *
     * @param  string  $uri
     * @param  \Closure|array|string|null  $action
     * @return \Illuminate\Routing\Route
     */
    public function post($uri, $action = null)
    {
        return $this->addRoute('POST', $uri, $action);
    }
 
    /**
     * Register a new PUT route with the router.
     *
     * @param  string  $uri
     * @param  \Closure|array|string|null  $action
     * @return \Illuminate\Routing\Route
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Support
/
Facades
/
Facade.php
    }
 
    /**
     * Handle dynamic, static calls to the object.
     *
     * @param  string  $method
     * @param  array   $args
     * @return mixed
     *
     * @throws \RuntimeException
     */
    public static function __callStatic($method, $args)
    {
        $instance = static::getFacadeRoot();
 
        if (! $instance) {
            throw new RuntimeException('A facade root has not been set.');
        }
 
        return $instance->$method(...$args);
    }
}
 
/
home
/
puprsa
/
routes
/
web.php
/**               
 *     
 * Controller Umum
 *
 */

// Halaman utama
Route::get('/', [HomeController::class, 'index'])
  ->name('umum.beranda');

// Halaman profil
Route::get('/profil/{page}', [HalamanProfilController::class, 'index'])
  ->name('umum.profil.{page}');

// Bidang
Route::get('/bidang/{namaBidang}', [BidangController::class, 'index'])
  ->name('umum.bidang.{namaBidang}');

Route::get('/bidang/download/{berkas}', BidangController::class)
  ->name('umum.download.tupoksi');

// Berita
Route::get('/berita', [BeritaController::class, 'pilih'])
  ->name('umum.berita.pilih');

Route::get('/kategori-berita', [BeritaController::class, 'kategori'])
  ->name('umum.berita.kategori');

Route::get('/berita/{berita:slug}', [BeritaController::class, 'lihat'])
  ->name('umum.berita.lihat.{berita:slug}');

// Infografis
Route::get('/e-library/infografis', [InfografisController::class, 'index'])
  ->name('umum.elibrary.infografis');

// Galeri dan Foto
Route::get('/e-library/galeri', [GaleriController::class, 'index'])
  ->name('umum.elibrary.galeri');

/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
     */
    public function mergeWithLastGroup($new)
    {
        return RouteGroup::merge($new, end($this->groupStack));
    }
 
    /**
     * Load the provided routes.
     *
     * @param  \Closure|string  $routes
     * @return void
     */
    protected function loadRoutes($routes)
    {
        if ($routes instanceof Closure) {
            $routes($this);
        } else {
            $router = $this;
 
            require $routes;
        }
    }
 
    /**
     * Get the prefix from the last group on the stack.
     *
     * @return string
     */
    public function getLastGroupPrefix()
    {
        if (! empty($this->groupStack)) {
            $last = end($this->groupStack);
 
            return $last['prefix'] ?? '';
        }
 
        return '';
    }
 
    /**
Arguments
  1. "/home/puprsa/routes/web.php"
    
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
Router.php
        return $this->resource($name, $controller, array_merge([
            'only' => ['index', 'show', 'store', 'update', 'destroy'],
        ], $options));
    }
 
    /**
     * Create a route group with shared attributes.
     *
     * @param  array  $attributes
     * @param  \Closure|string  $routes
     * @return void
     */
    public function group(array $attributes, $routes)
    {
        $this->updateGroupStack($attributes);
 
        // Once we have updated the group stack, we'll load the provided routes and
        // merge in the group's attributes when the routes are created. After we
        // have created the routes, we will pop the attributes off the stack.
        $this->loadRoutes($routes);
 
        array_pop($this->groupStack);
    }
 
    /**
     * Update the group stack with the given attributes.
     *
     * @param  array  $attributes
     * @return void
     */
    protected function updateGroupStack(array $attributes)
    {
        if (! empty($this->groupStack)) {
            $attributes = RouteGroup::merge($attributes, end($this->groupStack));
        }
 
        $this->groupStack[] = $attributes;
    }
 
    /**
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Routing
/
RouteRegistrar.php
     *
     * @param  string  $name
     * @param  string  $controller
     * @param  array  $options
     * @return \Illuminate\Routing\PendingResourceRegistration
     */
    public function resource($name, $controller, array $options = [])
    {
        return $this->router->resource($name, $controller, $this->attributes + $options);
    }
 
    /**
     * Create a route group with shared attributes.
     *
     * @param  \Closure|string  $callback
     * @return void
     */
    public function group($callback)
    {
        $this->router->group($this->attributes, $callback);
    }
 
    /**
     * Register a new route with the given verbs.
     *
     * @param  array|string  $methods
     * @param  string  $uri
     * @param  \Closure|array|string|null  $action
     * @return \Illuminate\Routing\Route
     */
    public function match($methods, $uri, $action = null)
    {
        return $this->router->match($methods, $uri, $this->compileAction($action));
    }
 
    /**
     * Register a new route with the router.
     *
     * @param  string  $method
     * @param  string  $uri
/
home
/
puprsa
/
app
/
Providers
/
RouteServiceProvider.php
    {
        $this->mapApiRoutes();
 
        $this->mapWebRoutes();
 
        //
    }
 
    /**
     * Define the "web" routes for the application.
     *
     * These routes all receive session state, CSRF protection, etc.
     *
     * @return void
     */
    protected function mapWebRoutes()
    {
        Route::middleware('web')
             ->namespace($this->namespace)
             ->group(base_path('routes/web.php'));
    }
 
    /**
     * Define the "api" routes for the application.
     *
     * These routes are typically stateless.
     *
     * @return void
     */
    protected function mapApiRoutes()
    {
        Route::prefix('api')
             ->middleware('api')
             ->namespace($this->namespace)
             ->group(base_path('routes/api.php'));
    }
}
 
/
home
/
puprsa
/
app
/
Providers
/
RouteServiceProvider.php
     *
     * @return void
     */
    public function boot()
    {
        //
 
        parent::boot();
    }
 
    /**
     * Define the routes for the application.
     *
     * @return void
     */
    public function map()
    {
        $this->mapApiRoutes();
 
        $this->mapWebRoutes();
 
        //
    }
 
    /**
     * Define the "web" routes for the application.
     *
     * These routes all receive session state, CSRF protection, etc.
     *
     * @return void
     */
    protected function mapWebRoutes()
    {
        Route::middleware('web')
             ->namespace($this->namespace)
             ->group(base_path('routes/web.php'));
    }
 
    /**
     * Define the "api" routes for the application.
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
class BoundMethod
{
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public static function call($container, $callback, array $parameters = [], $defaultMethod = null)
    {
        if (static::isCallableWithAtSign($callback) || $defaultMethod) {
            return static::callClass($container, $callback, $parameters, $defaultMethod);
        }
 
        return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
            return call_user_func_array(
                $callback, static::getMethodDependencies($container, $callback, $parameters)
            );
        });
    }
 
    /**
     * Call a string reference to a class using Class@method syntax.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $target
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     *
     * @throws \InvalidArgumentException
     */
    protected static function callClass($container, $target, array $parameters = [], $defaultMethod = null)
    {
        $segments = explode('@', $target);
 
        // We will assume an @ sign is used to delimit the class name from the method
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
class BoundMethod
{
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public static function call($container, $callback, array $parameters = [], $defaultMethod = null)
    {
        if (static::isCallableWithAtSign($callback) || $defaultMethod) {
            return static::callClass($container, $callback, $parameters, $defaultMethod);
        }
 
        return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
            return call_user_func_array(
                $callback, static::getMethodDependencies($container, $callback, $parameters)
            );
        });
    }
 
    /**
     * Call a string reference to a class using Class@method syntax.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $target
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     *
     * @throws \InvalidArgumentException
     */
    protected static function callClass($container, $target, array $parameters = [], $defaultMethod = null)
    {
        $segments = explode('@', $target);
 
        // We will assume an @ sign is used to delimit the class name from the method
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
     * @param  callable  $callback
     * @param  mixed  $default
     * @return mixed
     */
    protected static function callBoundMethod($container, $callback, $default)
    {
        if (! is_array($callback)) {
            return $default instanceof Closure ? $default() : $default;
        }
 
        // Here we need to turn the array callable into a Class@method string we can use to
        // examine the container and see if there are any method bindings for this given
        // method. If there are, we can call this method binding callback immediately.
        $method = static::normalizeMethod($callback);
 
        if ($container->hasMethodBinding($method)) {
            return $container->callMethodBinding($method, $callback[0]);
        }
 
        return $default instanceof Closure ? $default() : $default;
    }
 
    /**
     * Normalize the given callback into a Class@method string.
     *
     * @param  callable  $callback
     * @return string
     */
    protected static function normalizeMethod($callback)
    {
        $class = is_string($callback[0]) ? $callback[0] : get_class($callback[0]);
 
        return "{$class}@{$callback[1]}";
    }
 
    /**
     * Get all dependencies for a given method.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public static function call($container, $callback, array $parameters = [], $defaultMethod = null)
    {
        if (static::isCallableWithAtSign($callback) || $defaultMethod) {
            return static::callClass($container, $callback, $parameters, $defaultMethod);
        }
 
        return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
            return call_user_func_array(
                $callback, static::getMethodDependencies($container, $callback, $parameters)
            );
        });
    }
 
    /**
     * Call a string reference to a class using Class@method syntax.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $target
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     *
     * @throws \InvalidArgumentException
     */
    protected static function callClass($container, $target, array $parameters = [], $defaultMethod = null)
    {
        $segments = explode('@', $target);
 
        // We will assume an @ sign is used to delimit the class name from the method
        // name. We will split on this @ sign and then build a callable array that
        // we can pass right back into the "call" method for dependency binding.
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
Container.php
     * @return \Closure
     */
    public function wrap(Closure $callback, array $parameters = [])
    {
        return function () use ($callback, $parameters) {
            return $this->call($callback, $parameters);
        };
    }
 
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public function call($callback, array $parameters = [], $defaultMethod = null)
    {
        return BoundMethod::call($this, $callback, $parameters, $defaultMethod);
    }
 
    /**
     * Get a closure to resolve the given type from the container.
     *
     * @param  string  $abstract
     * @return \Closure
     */
    public function factory($abstract)
    {
        return function () use ($abstract) {
            return $this->make($abstract);
        };
    }
 
    /**
     * An alias function name for make().
     *
     * @param  string  $abstract
     * @param  array  $parameters
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Support
/
Providers
/
RouteServiceProvider.php
     * Load the cached routes for the application.
     *
     * @return void
     */
    protected function loadCachedRoutes()
    {
        $this->app->booted(function () {
            require $this->app->getCachedRoutesPath();
        });
    }
 
    /**
     * Load the application routes.
     *
     * @return void
     */
    protected function loadRoutes()
    {
        if (method_exists($this, 'map')) {
            $this->app->call([$this, 'map']);
        }
    }
 
    /**
     * Register the service provider.
     *
     * @return void
     */
    public function register()
    {
        //
    }
 
    /**
     * Pass dynamic methods onto the router instance.
     *
     * @param  string  $method
     * @param  array  $parameters
     * @return mixed
     */
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Support
/
Providers
/
RouteServiceProvider.php
    /**
     * The controller namespace for the application.
     *
     * @var string|null
     */
    protected $namespace;
 
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        $this->setRootControllerNamespace();
 
        if ($this->app->routesAreCached()) {
            $this->loadCachedRoutes();
        } else {
            $this->loadRoutes();
 
            $this->app->booted(function () {
                $this->app['router']->getRoutes()->refreshNameLookups();
                $this->app['router']->getRoutes()->refreshActionLookups();
            });
        }
    }
 
    /**
     * Set the root controller namespace for the application.
     *
     * @return void
     */
    protected function setRootControllerNamespace()
    {
        if (! is_null($this->namespace)) {
            $this->app[UrlGenerator::class]->setRootControllerNamespace($this->namespace);
        }
    }
 
/
home
/
puprsa
/
app
/
Providers
/
RouteServiceProvider.php
{
    /**
     * This namespace is applied to your controller routes.
     *
     * In addition, it is set as the URL generator's root namespace.
     *
     * @var string
     */
    protected $namespace = 'App\Http\Controllers';
 
    /**
     * Define your route model bindings, pattern filters, etc.
     *
     * @return void
     */
    public function boot()
    {
        //
 
        parent::boot();
    }
 
    /**
     * Define the routes for the application.
     *
     * @return void
     */
    public function map()
    {
        $this->mapApiRoutes();
 
        $this->mapWebRoutes();
 
        //
    }
 
    /**
     * Define the "web" routes for the application.
     *
     * These routes all receive session state, CSRF protection, etc.
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
class BoundMethod
{
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public static function call($container, $callback, array $parameters = [], $defaultMethod = null)
    {
        if (static::isCallableWithAtSign($callback) || $defaultMethod) {
            return static::callClass($container, $callback, $parameters, $defaultMethod);
        }
 
        return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
            return call_user_func_array(
                $callback, static::getMethodDependencies($container, $callback, $parameters)
            );
        });
    }
 
    /**
     * Call a string reference to a class using Class@method syntax.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $target
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     *
     * @throws \InvalidArgumentException
     */
    protected static function callClass($container, $target, array $parameters = [], $defaultMethod = null)
    {
        $segments = explode('@', $target);
 
        // We will assume an @ sign is used to delimit the class name from the method
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
class BoundMethod
{
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public static function call($container, $callback, array $parameters = [], $defaultMethod = null)
    {
        if (static::isCallableWithAtSign($callback) || $defaultMethod) {
            return static::callClass($container, $callback, $parameters, $defaultMethod);
        }
 
        return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
            return call_user_func_array(
                $callback, static::getMethodDependencies($container, $callback, $parameters)
            );
        });
    }
 
    /**
     * Call a string reference to a class using Class@method syntax.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $target
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     *
     * @throws \InvalidArgumentException
     */
    protected static function callClass($container, $target, array $parameters = [], $defaultMethod = null)
    {
        $segments = explode('@', $target);
 
        // We will assume an @ sign is used to delimit the class name from the method
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
     * @param  callable  $callback
     * @param  mixed  $default
     * @return mixed
     */
    protected static function callBoundMethod($container, $callback, $default)
    {
        if (! is_array($callback)) {
            return $default instanceof Closure ? $default() : $default;
        }
 
        // Here we need to turn the array callable into a Class@method string we can use to
        // examine the container and see if there are any method bindings for this given
        // method. If there are, we can call this method binding callback immediately.
        $method = static::normalizeMethod($callback);
 
        if ($container->hasMethodBinding($method)) {
            return $container->callMethodBinding($method, $callback[0]);
        }
 
        return $default instanceof Closure ? $default() : $default;
    }
 
    /**
     * Normalize the given callback into a Class@method string.
     *
     * @param  callable  $callback
     * @return string
     */
    protected static function normalizeMethod($callback)
    {
        $class = is_string($callback[0]) ? $callback[0] : get_class($callback[0]);
 
        return "{$class}@{$callback[1]}";
    }
 
    /**
     * Get all dependencies for a given method.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
BoundMethod.php
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public static function call($container, $callback, array $parameters = [], $defaultMethod = null)
    {
        if (static::isCallableWithAtSign($callback) || $defaultMethod) {
            return static::callClass($container, $callback, $parameters, $defaultMethod);
        }
 
        return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
            return call_user_func_array(
                $callback, static::getMethodDependencies($container, $callback, $parameters)
            );
        });
    }
 
    /**
     * Call a string reference to a class using Class@method syntax.
     *
     * @param  \Illuminate\Container\Container  $container
     * @param  string  $target
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     *
     * @throws \InvalidArgumentException
     */
    protected static function callClass($container, $target, array $parameters = [], $defaultMethod = null)
    {
        $segments = explode('@', $target);
 
        // We will assume an @ sign is used to delimit the class name from the method
        // name. We will split on this @ sign and then build a callable array that
        // we can pass right back into the "call" method for dependency binding.
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Container
/
Container.php
     * @return \Closure
     */
    public function wrap(Closure $callback, array $parameters = [])
    {
        return function () use ($callback, $parameters) {
            return $this->call($callback, $parameters);
        };
    }
 
    /**
     * Call the given Closure / class@method and inject its dependencies.
     *
     * @param  callable|string  $callback
     * @param  array  $parameters
     * @param  string|null  $defaultMethod
     * @return mixed
     */
    public function call($callback, array $parameters = [], $defaultMethod = null)
    {
        return BoundMethod::call($this, $callback, $parameters, $defaultMethod);
    }
 
    /**
     * Get a closure to resolve the given type from the container.
     *
     * @param  string  $abstract
     * @return \Closure
     */
    public function factory($abstract)
    {
        return function () use ($abstract) {
            return $this->make($abstract);
        };
    }
 
    /**
     * An alias function name for make().
     *
     * @param  string  $abstract
     * @param  array  $parameters
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
 
        array_walk($this->serviceProviders, function ($p) {
            $this->bootProvider($p);
        });
 
        $this->booted = true;
 
        $this->fireAppCallbacks($this->bootedCallbacks);
    }
 
    /**
     * Boot the given service provider.
     *
     * @param  \Illuminate\Support\ServiceProvider  $provider
     * @return mixed
     */
    protected function bootProvider(ServiceProvider $provider)
    {
        if (method_exists($provider, 'boot')) {
            return $this->call([$provider, 'boot']);
        }
    }
 
    /**
     * Register a new boot listener.
     *
     * @param  mixed  $callback
     * @return void
     */
    public function booting($callback)
    {
        $this->bootingCallbacks[] = $callback;
    }
 
    /**
     * Register a new "booted" listener.
     *
     * @param  mixed  $callback
     * @return void
     */
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
    }
 
    /**
     * Boot the application's service providers.
     *
     * @return void
     */
    public function boot()
    {
        if ($this->booted) {
            return;
        }
 
        // Once the application has booted we will also fire some "booted" callbacks
        // for any listeners that need to do work after this initial booting gets
        // finished. This is useful when ordering the boot-up processes we run.
        $this->fireAppCallbacks($this->bootingCallbacks);
 
        array_walk($this->serviceProviders, function ($p) {
            $this->bootProvider($p);
        });
 
        $this->booted = true;
 
        $this->fireAppCallbacks($this->bootedCallbacks);
    }
 
    /**
     * Boot the given service provider.
     *
     * @param  \Illuminate\Support\ServiceProvider  $provider
     * @return mixed
     */
    protected function bootProvider(ServiceProvider $provider)
    {
        if (method_exists($provider, 'boot')) {
            return $this->call([$provider, 'boot']);
        }
    }
 
[internal]
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
 
    /**
     * Boot the application's service providers.
     *
     * @return void
     */
    public function boot()
    {
        if ($this->booted) {
            return;
        }
 
        // Once the application has booted we will also fire some "booted" callbacks
        // for any listeners that need to do work after this initial booting gets
        // finished. This is useful when ordering the boot-up processes we run.
        $this->fireAppCallbacks($this->bootingCallbacks);
 
        array_walk($this->serviceProviders, function ($p) {
            $this->bootProvider($p);
        });
 
        $this->booted = true;
 
        $this->fireAppCallbacks($this->bootedCallbacks);
    }
 
    /**
     * Boot the given service provider.
     *
     * @param  \Illuminate\Support\ServiceProvider  $provider
     * @return mixed
     */
    protected function bootProvider(ServiceProvider $provider)
    {
        if (method_exists($provider, 'boot')) {
            return $this->call([$provider, 'boot']);
        }
    }
 
    /**
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Bootstrap
/
BootProviders.php
<?php
 
namespace Illuminate\Foundation\Bootstrap;
 
use Illuminate\Contracts\Foundation\Application;
 
class BootProviders
{
    /**
     * Bootstrap the given application.
     *
     * @param  \Illuminate\Contracts\Foundation\Application  $app
     * @return void
     */
    public function bootstrap(Application $app)
    {
        $app->boot();
    }
}
 
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Application.php
 
        $this->register(new LogServiceProvider($this));
 
        $this->register(new RoutingServiceProvider($this));
    }
 
    /**
     * Run the given array of bootstrap classes.
     *
     * @param  array  $bootstrappers
     * @return void
     */
    public function bootstrapWith(array $bootstrappers)
    {
        $this->hasBeenBootstrapped = true;
 
        foreach ($bootstrappers as $bootstrapper) {
            $this['events']->fire('bootstrapping: '.$bootstrapper, [$this]);
 
            $this->make($bootstrapper)->bootstrap($this);
 
            $this['events']->fire('bootstrapped: '.$bootstrapper, [$this]);
        }
    }
 
    /**
     * Register a callback to run after loading the environment.
     *
     * @param  \Closure  $callback
     * @return void
     */
    public function afterLoadingEnvironment(Closure $callback)
    {
        return $this->afterBootstrapping(
            LoadEnvironmentVariables::class, $callback
        );
    }
 
    /**
     * Register a callback to run before a bootstrapper.
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
 
        Facade::clearResolvedInstance('request');
 
        $this->bootstrap();
 
        return (new Pipeline($this->app))
                    ->send($request)
                    ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
                    ->then($this->dispatchToRouter());
    }
 
    /**
     * Bootstrap the application for HTTP requests.
     *
     * @return void
     */
    public function bootstrap()
    {
        if (! $this->app->hasBeenBootstrapped()) {
            $this->app->bootstrapWith($this->bootstrappers());
        }
    }
 
    /**
     * Get the route dispatcher callback.
     *
     * @return \Closure
     */
    protected function dispatchToRouter()
    {
        return function ($request) {
            $this->app->instance('request', $request);
 
            return $this->router->dispatch($request);
        };
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
        $this->app['events']->dispatch(
            new Events\RequestHandled($request, $response)
        );
 
        return $response;
    }
 
    /**
     * Send the given request through the middleware / router.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    protected function sendRequestThroughRouter($request)
    {
        $this->app->instance('request', $request);
 
        Facade::clearResolvedInstance('request');
 
        $this->bootstrap();
 
        return (new Pipeline($this->app))
                    ->send($request)
                    ->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
                    ->then($this->dispatchToRouter());
    }
 
    /**
     * Bootstrap the application for HTTP requests.
     *
     * @return void
     */
    public function bootstrap()
    {
        if (! $this->app->hasBeenBootstrapped()) {
            $this->app->bootstrapWith($this->bootstrappers());
        }
    }
 
    /**
/
home
/
puprsa
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Http
/
Kernel.php
            $router->middlewareGroup($key, $middleware);
        }
 
        foreach ($this->routeMiddleware as $key => $middleware) {
            $router->aliasMiddleware($key, $middleware);
        }
    }
 
    /**
     * Handle an incoming HTTP request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function handle($request)
    {
        try {
            $request->enableHttpMethodParameterOverride();
 
            $response = $this->sendRequestThroughRouter($request);
        } catch (Exception $e) {
            $this->reportException($e);
 
            $response = $this->renderException($request, $e);
        } catch (Throwable $e) {
            $this->reportException($e = new FatalThrowableError($e));
 
            $response = $this->renderException($request, $e);
        }
 
        $this->app['events']->dispatch(
            new Events\RequestHandled($request, $response)
        );
 
        return $response;
    }
 
    /**
     * Send the given request through the middleware / router.
     *
/
home
/
puprsa
/
public_html
/
index.php
require __DIR__.'/../vendor/autoload.php';

/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request using
| the application's HTTP kernel. Then, we will send the response back
| to this client's browser, allowing them to enjoy our application.
|
*/

$app = require_once __DIR__.'/../bootstrap/app.php';

$kernel = $app->make(Kernel::class);

$response = $kernel->handle(
    $request = Request::capture()
)->send();

$kernel->terminate($request, $response);
 

Environment & details:

empty
empty
empty
empty
empty
Key Value
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
TEMP
"/home/puprsa/tmp"
TMPDIR
"/home/puprsa/tmp"
TMP
"/home/puprsa/tmp"
HOSTNAME
""
USER
"puprsa"
HOME
"/home/puprsa"
SCRIPT_NAME
"/index.php"
REQUEST_URI
"/dokumen/renstra-p-2016-2021"
QUERY_STRING
""
REQUEST_METHOD
"GET"
SERVER_PROTOCOL
"HTTP/1.0"
GATEWAY_INTERFACE
"CGI/1.1"
REDIRECT_URL
"/dokumen/renstra-p-2016-2021"
REMOTE_PORT
"40024"
SCRIPT_FILENAME
"/home/puprsa/public_html/index.php"
SERVER_ADMIN
"webmaster@pupr.samarindakota.go.id"
CONTEXT_DOCUMENT_ROOT
"/home/puprsa/public_html"
CONTEXT_PREFIX
""
REQUEST_SCHEME
"https"
DOCUMENT_ROOT
"/home/puprsa/public_html"
REMOTE_ADDR
"18.118.1.158"
SERVER_PORT
"443"
SERVER_ADDR
"103.152.244.17"
SERVER_NAME
"pupr.samarindakota.go.id"
SERVER_SOFTWARE
"Apache/2.4.57 (Unix) OpenSSL/1.0.2k-fips"
SERVER_SIGNATURE
""
LD_LIBRARY_PATH
"/usr/local/apache/lib"
HTTP_USER_AGENT
"claudebot"
HTTP_ACCEPT
"*/*"
HTTP_CONNECTION
"close"
HTTP_X_FORWARDED_PROTO
"https"
HTTP_X_FORWARDED_FOR
"18.118.1.158"
HTTP_X_FORWARDED_SERVER
"pupr.samarindakota.go.id"
HTTP_X_FORWARDED_HOST
"pupr.samarindakota.go.id"
HTTP_X_REAL_IP
"18.118.1.158"
HTTP_HOST
"pupr.samarindakota.go.id"
proxy-nokeepalive
"1"
UNIQUE_ID
"ZiFNsMbqw9BYbyH9eVfl2QAAA8s"
HTTPS
"on"
REDIRECT_STATUS
"200"
REDIRECT_UNIQUE_ID
"ZiFNsMbqw9BYbyH9eVfl2QAAA8s"
REDIRECT_HTTPS
"on"
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1713458608.9314
REQUEST_TIME
1713458608
APP_NAME
"E-News CMS"
APP_ENV
"prod"
APP_KEY
"base64:O0DW0rhoOnsp/NuLeXVlXr/hDKDm+7mm2ZSzHlkfo6I="
APP_DEBUG
"true"
APP_LOG_LEVEL
"debug"
APP_URL
"https://pupr.samarindakota.go.id"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"puprsa_main"
DB_USERNAME
"puprsa_root"
DB_PASSWORD
"lR4xrKFZ6RgB"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
QUEUE_DRIVER
"sync"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
"smtp.mailtrap.io"
MAIL_PORT
"2525"
MAIL_USERNAME
"null"
MAIL_PASSWORD
"null"
MAIL_ENCRYPTION
"null"
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
EW_MAIN_COLOR
"#3c6790"
EW_SECONDARY_COLOR
"#e1be48"
EW_SITE
"pupr.samarindakota.go.id"
EW_INSTANSI
"Dinas Pekerjaan Umum dan Penataan Ruang"
EW_SINGKATAN
"PUPR Samarinda"
EW_PEMERINTAH
"Pemerintah Kota Samarinda"
EW_ALAMAT
"Jl. H.Achmad Amins.  Kel. Gn. Lingai, Sungai Pinang, Samarinda 75243"
EW_TELEPON
"0541-203785"
EW_FAX
"0541-732072"
EW_EMAIL
"pupr@samarindakota.go.id"
EW_WEBSITE
"https://pupr.samarindakota.go.id"
EW_MAINTENANCE
"0"
EW_MAPS
"-0.493856,117.1444153"
EW_KEPALA
"kepala.png"
EW_STRUKTUR
"struktur.png"
EW_META_DESCRIPTION
"Situs Resmi Dinas Pekerjaan Umum dan Penataan Ruang"
EW_META_KEYWORDS
"samarinda, website, pekerjaan, umum, penataan, ruang, pu, dpu, pupr"
EW_FACEBOOK
""
EW_TWITTER
""
EW_INSTAGRAM
""
EW_YOUTUBE
""
EW_FACEBOOK_ID
"277173772313158"
EW_YOUTUBE_API
"AIzaSyAt2XUXl8c5Ns2W7lzBo5QF-RfUmiapi7M"
EW_GOOGLE_ANALYTICS_ID
"UA-134039807-1"
EW_GOOGLE_ANALYTICS_MAIL
""
EW_GOOGLE_SITE_VERIFICATION
""
EW_DISQUS
"pupr-samarinda"
EW_CHANNEL
"PLq1DT2QoG4JORUYiMhNctL0RnMsSLL5uI"
EW_HEAD_CODE
""
EW_FOOTER_CODE
""
SMR_API
"http://api.samarindakota.go.id/api"
SMR_API_VERSION
"v1"
SMR_TOKEN
"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjFkMmYxYzMzYzZmYmNlOGZlOGRmMzA3MzM1ZGU4YjMxYTcyOTYwYTE3MDk4MTdmMWZhMjk1YTAxMTAzZjVmYzk0MzQ1Y2MzZTlmNDdlYzc1In0.eyJhdWQiOiIzIiwianRpIjoiMWQyZjFjMzNjNmZiY2U4ZmU4ZGYzMDczMzVkZThiMzFhNzI5NjBhMTcwOTgxN2YxZmEyOTVhMDExMDNmNWZjOTQzNDVjYzNlOWY0N2VjNzUiLCJpYXQiOjE1Mjg2NTMwMzksIm5iZiI6MTUyODY1MzAzOSwiZXhwIjoxNTYwMTg5MDM5LCJzdWIiOiIxIiwic2NvcGVzIjpbIlByb3ZpbnNpIiwiS2FidXBhdGVuXC9Lb3RhIiwiS2VjYW1hdGFuIiwiS2VsdXJhaGFuIiwiU2Vrb2xhaCIsIk1vbm9ncmFmaSIsIkRMSCIsIktvbWluZm8iLCJUZW5hbnQiLCJQZW5kdWR1ayJdfQ.D3f1UeC508ChHCbRS0pZ4ItLbqc0hnThWwNWmhpYzy0baCP1pAjRAHoxoGMzVMqyhxv-lff3AbLonGSuiAnCbCiTlVi1RKFyV1QuTGpeB3GtRvVNWrc4PouHQVP5plU-VMCYABZ1ndwSkVewG9ARYCPMMB3FDXUZ4c0d-tJ04_4wr9D-6dh7fcDB3i904hQzeslip9qjXQog4j5ysKSf372dHYIiCjcFyih5OQBWON9PDYbjHyUborigrHo2GtZc_DdgwT0zhrOUlalnY2RongzX67BS3JKyxtdv1Fz6wKBn1DtWJMT3SvtdgVpi03PXbzTkTLFuJkBQK1ve6qDE2Z3yduFlT7MTvRG1M7fO7zpIAf7U-VTnQEG-QMr8rgWO5A1IBNOPVCVmbp9fSRNXioQ2SPul7mlPsLTjePBbN6qDWwfpgpEnKGnhNTIxTG_j1fmNqY1l-yF9Kxgkb7S_EdJzffBU67glB4vf2tyWyYEbBnIhLrXdJTEpMqrFLkDD1rYWyMvw42fU0uiDU2VdpdYjYYtY7xOUN4JRAAl_O_Ku2QqtjW2wBzwBI28ZzE4BCtjSMACCh7BVwY-MCgbg4_ixefsHzDFGABIO8Ekv7PG6nMZxX0amXOF4sFG6Kty0aPH48V_DP8Vqmx2kk7d2Nekp1XhEwu7jmX5ETv0qyKY"
SIPEDAS_TAHUN
"2019"
SIPEDAS_PERUBAHAN
"0"
EW_DISPLAY_PEMERINTAH
"PEMERINTAH KOTA SAMARINDA"
EW_DISPLAY_INSTANSI
"DPU-PR"
EW_DISPLAY_VIDEO
"-"
EW_DISPLAY_DAFTAR_HADIR
"0"
EW_DISPLAY_DARK_MODE
"0"
EW_DISPLAY_FOTO_MODE
"1"
EW_WELCOME_MESSAGE
"Selamat Datang di Dinas PUPR Samarinda"
EW_WELCOME_DESCRIPTION
"Website Dinas PUPR Samarinda ini merupakan media informasi elektronik yang berisi berbagai data dan informasi terbaru seputar pekerjaan umum dan penataan ruang. Dinas Pekerjaan Umum dan Penataan Ruang Kota Samarinda membangun Samarinda melalui pengendalian pembangunan yang berkualitas yang Sinergis dan Aplikatif."
EW_VISI_MISI
"<p class="text-left"><b>"Terwujudnya infrastruktur sesuai tata ruang kota yang berkualitas dan berwawasan lingkungan."</b></p><p>Dinas Pekerjaan Umum dan Penataan Ruang memiliki 9 misi dalam men-dukung Visi yang ada, untuk informasi selengkapnya silahkan sentuh pada tautan berikut ini:</p>"
EW_YOUTUBE_PROFILE
"https://www.youtube.com/watch?v=jh73r9l_0uw"
EW_ECHO_LPSE
"1483"
NBOARD_HEAD_PEMERINTAH
"PEMERINTAH KOTA SAMARINDA"
NBOARD_HEAD_INSTANSI
"DINAS PEKERJAAN UMUM & PENATAAN RUANG"
NBOARD_HEAD_ALAMAT
"Jl. H.Achmad Amins. Kel. Gn. Lingai, Sungai Pinang, Samarinda 75243, 0541-203785 E-mail : pupr@samarindakota.go.id"
NBOARD_MAIN_VIDEO
"HU371bbgdbs, qJ1yd2e4Tv0, 3nriKaCcrew"
NBOARD_SECONDARY_VIDEO
"-"
NBOARD_DISPLAY_BACKGROUND
"https://cdn.pixabay.com/photo/2022/01/11/17/04/city-6931092_960_720.jpg"
NBOARD_DISPLAY_LOGO_URL
"https://cdn.enterwind.com/template/epanel/storage/logo-samarinda.png"
NBOARD_DISPLAY_HEADER1_COLOR
"0f0f0f"
NBOARD_DISPLAY_HEADER2_COLOR
"f8ac00"
NBOARD_DISPLAY_HEADER3_COLOR
"0f0f0f"
NBOARD_DISPLAY_PRIMARY_COLOR
"900000"
NBOARD_DISPLAY_SECONDARY_COLOR
"EEAE16"
NBOARD_LAYOUT_FOOTER
"1"
NBOARD_LAYOUT_FLUID
"1"
NBOARD_LAYOUT_NAV_STYLE
"1"
NBOARD_LAYOUT_COLOR_HEADER_BAR
"bg-dark top-bar-text-light"
NBOARD_LAYOUT_COLOR_HEADER_NAV
"bg-info header-text-dark"
NBOARD_LAYOUT_COLOR_SCHEME
"app-theme-gray"
EW_STRUKTURS
"/tmp/phpL6gy6r"
EW_KEPALAS
"/tmp/phpVYSsrK"
Key Value
APP_NAME
"E-News CMS"
APP_ENV
"prod"
APP_KEY
"base64:O0DW0rhoOnsp/NuLeXVlXr/hDKDm+7mm2ZSzHlkfo6I="
APP_DEBUG
"true"
APP_LOG_LEVEL
"debug"
APP_URL
"https://pupr.samarindakota.go.id"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"puprsa_main"
DB_USERNAME
"puprsa_root"
DB_PASSWORD
"lR4xrKFZ6RgB"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
QUEUE_DRIVER
"sync"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
"smtp.mailtrap.io"
MAIL_PORT
"2525"
MAIL_USERNAME
"null"
MAIL_PASSWORD
"null"
MAIL_ENCRYPTION
"null"
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
EW_MAIN_COLOR
"#3c6790"
EW_SECONDARY_COLOR
"#e1be48"
EW_SITE
"pupr.samarindakota.go.id"
EW_INSTANSI
"Dinas Pekerjaan Umum dan Penataan Ruang"
EW_SINGKATAN
"PUPR Samarinda"
EW_PEMERINTAH
"Pemerintah Kota Samarinda"
EW_ALAMAT
"Jl. H.Achmad Amins.  Kel. Gn. Lingai, Sungai Pinang, Samarinda 75243"
EW_TELEPON
"0541-203785"
EW_FAX
"0541-732072"
EW_EMAIL
"pupr@samarindakota.go.id"
EW_WEBSITE
"https://pupr.samarindakota.go.id"
EW_MAINTENANCE
"0"
EW_MAPS
"-0.493856,117.1444153"
EW_KEPALA
"kepala.png"
EW_STRUKTUR
"struktur.png"
EW_META_DESCRIPTION
"Situs Resmi Dinas Pekerjaan Umum dan Penataan Ruang"
EW_META_KEYWORDS
"samarinda, website, pekerjaan, umum, penataan, ruang, pu, dpu, pupr"
EW_FACEBOOK
""
EW_TWITTER
""
EW_INSTAGRAM
""
EW_YOUTUBE
""
EW_FACEBOOK_ID
"277173772313158"
EW_YOUTUBE_API
"AIzaSyAt2XUXl8c5Ns2W7lzBo5QF-RfUmiapi7M"
EW_GOOGLE_ANALYTICS_ID
"UA-134039807-1"
EW_GOOGLE_ANALYTICS_MAIL
""
EW_GOOGLE_SITE_VERIFICATION
""
EW_DISQUS
"pupr-samarinda"
EW_CHANNEL
"PLq1DT2QoG4JORUYiMhNctL0RnMsSLL5uI"
EW_HEAD_CODE
""
EW_FOOTER_CODE
""
SMR_API
"http://api.samarindakota.go.id/api"
SMR_API_VERSION
"v1"
SMR_TOKEN
"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjFkMmYxYzMzYzZmYmNlOGZlOGRmMzA3MzM1ZGU4YjMxYTcyOTYwYTE3MDk4MTdmMWZhMjk1YTAxMTAzZjVmYzk0MzQ1Y2MzZTlmNDdlYzc1In0.eyJhdWQiOiIzIiwianRpIjoiMWQyZjFjMzNjNmZiY2U4ZmU4ZGYzMDczMzVkZThiMzFhNzI5NjBhMTcwOTgxN2YxZmEyOTVhMDExMDNmNWZjOTQzNDVjYzNlOWY0N2VjNzUiLCJpYXQiOjE1Mjg2NTMwMzksIm5iZiI6MTUyODY1MzAzOSwiZXhwIjoxNTYwMTg5MDM5LCJzdWIiOiIxIiwic2NvcGVzIjpbIlByb3ZpbnNpIiwiS2FidXBhdGVuXC9Lb3RhIiwiS2VjYW1hdGFuIiwiS2VsdXJhaGFuIiwiU2Vrb2xhaCIsIk1vbm9ncmFmaSIsIkRMSCIsIktvbWluZm8iLCJUZW5hbnQiLCJQZW5kdWR1ayJdfQ.D3f1UeC508ChHCbRS0pZ4ItLbqc0hnThWwNWmhpYzy0baCP1pAjRAHoxoGMzVMqyhxv-lff3AbLonGSuiAnCbCiTlVi1RKFyV1QuTGpeB3GtRvVNWrc4PouHQVP5plU-VMCYABZ1ndwSkVewG9ARYCPMMB3FDXUZ4c0d-tJ04_4wr9D-6dh7fcDB3i904hQzeslip9qjXQog4j5ysKSf372dHYIiCjcFyih5OQBWON9PDYbjHyUborigrHo2GtZc_DdgwT0zhrOUlalnY2RongzX67BS3JKyxtdv1Fz6wKBn1DtWJMT3SvtdgVpi03PXbzTkTLFuJkBQK1ve6qDE2Z3yduFlT7MTvRG1M7fO7zpIAf7U-VTnQEG-QMr8rgWO5A1IBNOPVCVmbp9fSRNXioQ2SPul7mlPsLTjePBbN6qDWwfpgpEnKGnhNTIxTG_j1fmNqY1l-yF9Kxgkb7S_EdJzffBU67glB4vf2tyWyYEbBnIhLrXdJTEpMqrFLkDD1rYWyMvw42fU0uiDU2VdpdYjYYtY7xOUN4JRAAl_O_Ku2QqtjW2wBzwBI28ZzE4BCtjSMACCh7BVwY-MCgbg4_ixefsHzDFGABIO8Ekv7PG6nMZxX0amXOF4sFG6Kty0aPH48V_DP8Vqmx2kk7d2Nekp1XhEwu7jmX5ETv0qyKY"
SIPEDAS_TAHUN
"2019"
SIPEDAS_PERUBAHAN
"0"
EW_DISPLAY_PEMERINTAH
"PEMERINTAH KOTA SAMARINDA"
EW_DISPLAY_INSTANSI
"DPU-PR"
EW_DISPLAY_VIDEO
"-"
EW_DISPLAY_DAFTAR_HADIR
"0"
EW_DISPLAY_DARK_MODE
"0"
EW_DISPLAY_FOTO_MODE
"1"
EW_WELCOME_MESSAGE
"Selamat Datang di Dinas PUPR Samarinda"
EW_WELCOME_DESCRIPTION
"Website Dinas PUPR Samarinda ini merupakan media informasi elektronik yang berisi berbagai data dan informasi terbaru seputar pekerjaan umum dan penataan ruang. Dinas Pekerjaan Umum dan Penataan Ruang Kota Samarinda membangun Samarinda melalui pengendalian pembangunan yang berkualitas yang Sinergis dan Aplikatif."
EW_VISI_MISI
"<p class="text-left"><b>"Terwujudnya infrastruktur sesuai tata ruang kota yang berkualitas dan berwawasan lingkungan."</b></p><p>Dinas Pekerjaan Umum dan Penataan Ruang memiliki 9 misi dalam men-dukung Visi yang ada, untuk informasi selengkapnya silahkan sentuh pada tautan berikut ini:</p>"
EW_YOUTUBE_PROFILE
"https://www.youtube.com/watch?v=jh73r9l_0uw"
EW_ECHO_LPSE
"1483"
NBOARD_HEAD_PEMERINTAH
"PEMERINTAH KOTA SAMARINDA"
NBOARD_HEAD_INSTANSI
"DINAS PEKERJAAN UMUM & PENATAAN RUANG"
NBOARD_HEAD_ALAMAT
"Jl. H.Achmad Amins. Kel. Gn. Lingai, Sungai Pinang, Samarinda 75243, 0541-203785 E-mail : pupr@samarindakota.go.id"
NBOARD_MAIN_VIDEO
"HU371bbgdbs, qJ1yd2e4Tv0, 3nriKaCcrew"
NBOARD_SECONDARY_VIDEO
"-"
NBOARD_DISPLAY_BACKGROUND
"https://cdn.pixabay.com/photo/2022/01/11/17/04/city-6931092_960_720.jpg"
NBOARD_DISPLAY_LOGO_URL
"https://cdn.enterwind.com/template/epanel/storage/logo-samarinda.png"
NBOARD_DISPLAY_HEADER1_COLOR
"0f0f0f"
NBOARD_DISPLAY_HEADER2_COLOR
"f8ac00"
NBOARD_DISPLAY_HEADER3_COLOR
"0f0f0f"
NBOARD_DISPLAY_PRIMARY_COLOR
"900000"
NBOARD_DISPLAY_SECONDARY_COLOR
"EEAE16"
NBOARD_LAYOUT_FOOTER
"1"
NBOARD_LAYOUT_FLUID
"1"
NBOARD_LAYOUT_NAV_STYLE
"1"
NBOARD_LAYOUT_COLOR_HEADER_BAR
"bg-dark top-bar-text-light"
NBOARD_LAYOUT_COLOR_HEADER_NAV
"bg-info header-text-dark"
NBOARD_LAYOUT_COLOR_SCHEME
"app-theme-gray"
EW_STRUKTURS
"/tmp/phpL6gy6r"
EW_KEPALAS
"/tmp/phpVYSsrK"
0. Whoops\Handler\PrettyPageHandler