ErrorException (E_WARNING)
file_put_contents(/var/www/html/purr/storage/framework/views/7be3587ff6a4541c2ed032928c138dc71bb048e8.php): failed to open stream: Permission denied ErrorException thrown with message "file_put_contents(/var/www/html/purr/storage/framework/views/7be3587ff6a4541c2ed032928c138dc71bb048e8.php): failed to open stream: Permission denied" Stacktrace: #56 ErrorException in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122 #55 file_put_contents in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122 #54 Illuminate\Filesystem\Filesystem:put in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php:140 #53 Illuminate\View\Compilers\BladeCompiler:compile in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:51 #52 Illuminate\View\Engines\CompilerEngine:get in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/View.php:142 #51 Illuminate\View\View:getContents in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/View.php:125 #50 Illuminate\View\View:renderContents in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/View.php:90 #49 Illuminate\View\View:render in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Http/Response.php:42 #48 Illuminate\Http\Response:setContent in /var/www/html/purr/vendor/symfony/http-foundation/Response.php:202 #47 Symfony\Component\HttpFoundation\Response:__construct in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:748 #46 Illuminate\Routing\Router:toResponse in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:720 #45 Illuminate\Routing\Router:prepareResponse in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:680 #44 Illuminate\Routing\Router:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30 #43 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41 #42 Illuminate\Routing\Middleware\SubstituteBindings:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #41 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #40 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php:75 #39 Illuminate\Foundation\Http\Middleware\VerifyCsrfToken:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #38 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #37 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php:49 #36 Illuminate\View\Middleware\ShareErrorsFromSession:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #35 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #34 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php:56 #33 Illuminate\Session\Middleware\StartSession:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #32 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #31 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php:37 #30 Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #29 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #28 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php:66 #27 Illuminate\Cookie\Middleware\EncryptCookies:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #26 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #25 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104 #24 Illuminate\Pipeline\Pipeline:then in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:682 #23 Illuminate\Routing\Router:runRouteWithinStack in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:657 #22 Illuminate\Routing\Router:runRoute in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:623 #21 Illuminate\Routing\Router:dispatchToRoute in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php:612 #20 Illuminate\Routing\Router:dispatch in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176 #19 Illuminate\Foundation\Http\Kernel:Illuminate\Foundation\Http\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30 #18 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/fideloper/proxy/src/TrustProxies.php:57 #17 Fideloper\Proxy\TrustProxies:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #16 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #15 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21 #14 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #13 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #12 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:21 #11 Illuminate\Foundation\Http\Middleware\TransformsRequest:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #10 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #9 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27 #8 Illuminate\Foundation\Http\Middleware\ValidatePostSize:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #7 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #6 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:62 #5 Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode:handle in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:163 #4 Illuminate\Pipeline\Pipeline:Illuminate\Pipeline\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53 #3 Illuminate\Routing\Pipeline:Illuminate\Routing\{closure} in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:104 #2 Illuminate\Pipeline\Pipeline:then in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151 #1 Illuminate\Foundation\Http\Kernel:sendRequestThroughRouter in /var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116 #0 Illuminate\Foundation\Http\Kernel:handle in /var/www/html/purr/public/index.php:55
56
ErrorException
/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php122
55
file_put_contents
/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php122
54
Illuminate\Filesystem\Filesystem put
/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php140
53
Illuminate\View\Compilers\BladeCompiler compile
/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php51
52
Illuminate\View\Engines\CompilerEngine get
/vendor/laravel/framework/src/Illuminate/View/View.php142
51
Illuminate\View\View getContents
/vendor/laravel/framework/src/Illuminate/View/View.php125
50
Illuminate\View\View renderContents
/vendor/laravel/framework/src/Illuminate/View/View.php90
49
Illuminate\View\View render
/vendor/laravel/framework/src/Illuminate/Http/Response.php42
48
Illuminate\Http\Response setContent
/vendor/symfony/http-foundation/Response.php202
47
Symfony\Component\HttpFoundation\Response __construct
/vendor/laravel/framework/src/Illuminate/Routing/Router.php748
46
Illuminate\Routing\Router toResponse
/vendor/laravel/framework/src/Illuminate/Routing/Router.php720
45
Illuminate\Routing\Router prepareResponse
/vendor/laravel/framework/src/Illuminate/Routing/Router.php680
44
Illuminate\Routing\Router Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php30
43
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php41
42
Illuminate\Routing\Middleware\SubstituteBindings handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
41
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
40
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php75
39
Illuminate\Foundation\Http\Middleware\VerifyCsrfToken handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
38
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
37
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php49
36
Illuminate\View\Middleware\ShareErrorsFromSession handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
35
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
34
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php56
33
Illuminate\Session\Middleware\StartSession handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
32
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
31
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php37
30
Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
29
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
28
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php66
27
Illuminate\Cookie\Middleware\EncryptCookies handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
26
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
25
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php104
24
Illuminate\Pipeline\Pipeline then
/vendor/laravel/framework/src/Illuminate/Routing/Router.php682
23
Illuminate\Routing\Router runRouteWithinStack
/vendor/laravel/framework/src/Illuminate/Routing/Router.php657
22
Illuminate\Routing\Router runRoute
/vendor/laravel/framework/src/Illuminate/Routing/Router.php623
21
Illuminate\Routing\Router dispatchToRoute
/vendor/laravel/framework/src/Illuminate/Routing/Router.php612
20
Illuminate\Routing\Router dispatch
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php176
19
Illuminate\Foundation\Http\Kernel Illuminate\Foundation\Http\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php30
18
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/fideloper/proxy/src/TrustProxies.php57
17
Fideloper\Proxy\TrustProxies handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
16
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
15
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php21
14
Illuminate\Foundation\Http\Middleware\TransformsRequest handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
13
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
12
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php21
11
Illuminate\Foundation\Http\Middleware\TransformsRequest handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
10
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
9
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php27
8
Illuminate\Foundation\Http\Middleware\ValidatePostSize handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
7
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
6
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php62
5
Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode handle
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php163
4
Illuminate\Pipeline\Pipeline Illuminate\Pipeline\{closure}
/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php53
3
Illuminate\Routing\Pipeline Illuminate\Routing\{closure}
/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php104
2
Illuminate\Pipeline\Pipeline then
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php151
1
Illuminate\Foundation\Http\Kernel sendRequestThroughRouter
/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php116
0
Illuminate\Foundation\Http\Kernel handle
/public/index.php55
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php
     *
     * @param  string  $path
     * @return string
     */
    public function hash($path)
    {
        return md5_file($path);
    }
 
    /**
     * Write the contents of a file.
     *
     * @param  string  $path
     * @param  string  $contents
     * @param  bool  $lock
     * @return int|bool
     */
    public function put($path, $contents, $lock = false)
    {
        return file_put_contents($path, $contents, $lock ? LOCK_EX : 0);
    }
 
    /**
     * Write the contents of a file, replacing it atomically if it already exists.
     *
     * @param  string  $path
     * @param  string  $content
     * @return void
     */
    public function replace($path, $content)
    {
        // If the path already exists and is a symlink, get the real path...
        clearstatcache(true, $path);
 
        $path = realpath($path) ?: $path;
 
        $tempPath = tempnam(dirname($path), basename($path));
 
        // Fix permissions of tempPath because `tempnam()` creates it with permissions set to 0600...
        chmod($tempPath, 0777 - umask());
Arguments
  1. "file_put_contents(/var/www/html/purr/storage/framework/views/7be3587ff6a4541c2ed032928c138dc71bb048e8.php): failed to open stream: Permission denied"
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php
     *
     * @param  string  $path
     * @return string
     */
    public function hash($path)
    {
        return md5_file($path);
    }
 
    /**
     * Write the contents of a file.
     *
     * @param  string  $path
     * @param  string  $contents
     * @param  bool  $lock
     * @return int|bool
     */
    public function put($path, $contents, $lock = false)
    {
        return file_put_contents($path, $contents, $lock ? LOCK_EX : 0);
    }
 
    /**
     * Write the contents of a file, replacing it atomically if it already exists.
     *
     * @param  string  $path
     * @param  string  $content
     * @return void
     */
    public function replace($path, $content)
    {
        // If the path already exists and is a symlink, get the real path...
        clearstatcache(true, $path);
 
        $path = realpath($path) ?: $path;
 
        $tempPath = tempnam(dirname($path), basename($path));
 
        // Fix permissions of tempPath because `tempnam()` creates it with permissions set to 0600...
        chmod($tempPath, 0777 - umask());
Arguments
  1. "/var/www/html/purr/storage/framework/views/7be3587ff6a4541c2ed032928c138dc71bb048e8.php"
    
  2. """
    <?php \Html::macro('aggregationFilter', function ( $aggregation, $filters, $key) use ($__env) { ob_start(); ?>\n
    \n
    \t<ul class="list-group">\n
    \t\t<?php $__currentLoopData = $aggregation['buckets']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $bucket): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
                <?php if(($key == 'subject' || $key == 'creator') && ((empty($filters)) || (!empty($filters) && !in_array($bucket['key'], $filters)))): ?>\n
                <li class="list-group-item rounded-0">\n
    \t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', $key, $key == 'date' ? $bucket['key_as_string'] : $bucket['key'])); ?>"> <?php echo e($key == "date" ? $bucket['key_as_string'] : ucfirst($bucket['key'])); ?></a>\n
    \t\t\t\t<span class="badge badge-warning badge-pill"><?php echo e($bucket['doc_count']); ?></span>\n
                </li>\n
    \t\t\t<?php elseif(($key == 'date' || $key == 'type') && ((empty($filters) && $bucket['doc_count']) || (!empty($filters) && in_array($key == 'date' ? $bucket['key_as_string'] : $bucket['key'], $filters)))): ?>\n
    \t\t\t<li class="list-group-item rounded-0">\n
    \t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', $key, $key == 'date' ? $bucket['key_as_string'] : $bucket['key'])); ?>"> <?php echo e($key == "date" ? $bucket['key_as_string'] : ucfirst($bucket['key'])); ?></a>\n
    \t\t\t\t<span class="badge badge-warning badge-pill"><?php echo e($bucket['doc_count']); ?></span>\n
                </li>\n
                <?php endif; ?>\n
            <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
        </ul>\n
    \n
    <?php return ob_get_clean(); }) ?>\n
    \n
    \n
    <?php $__env->startSection('title'); ?>\n
    PURR Registry\n
    <?php $__env->stopSection(); ?>\n
    \n
    <?php $__env->startSection('heading'); ?>\n
    <div class="headingdiv">\n
    \t<h1>Datasets<h1>\n
    \t<nav class="searchbox">\n
    \t\t<form name="search_form" action="<?php echo e(action('PurrrController@index')); ?>" method="get">\n
                <div class="form-row">\n
                    <div class="form-row col-12">\n
    \t\t\t\t\t<div class="col-2 pr-0">\n
    \t\t\t\t\t\t<select name="field" class="form-control rounded-0">\n
    \t\t\t\t\t\t\t<option value="" <?php if(empty($fieldSelected)): ?> selected="selected" <?php endif; ?>>All fields</option>\n
    \t\t\t\t\t\t\t<option value="DOI" <?php if($fieldSelected == "DOI"): ?> selected="selected" <?php endif; ?>>DOI</option>\n
    \t\t\t\t\t\t\t<option value="Author" <?php if($fieldSelected == "Author"): ?> selected="selected" <?php endif; ?>>Author</option>\n
    \t\t\t\t\t\t\t<option value="Subject" <?php if($fieldSelected == "Subject"): ?> selected="selected" <?php endif; ?>>Subject</option>\n
    \t\t\t\t\t\t</select>\t\n
    \t\t\t\t\t</div>\t\t\t\t\t\n
    \t\t\t\t\t<div class="col-8 pl-0">\n
    \t\t\t\t\t\t<input id="searchinput" name="q" maxlength="256" class="form-control rounded-0" type="search" placeholder="Find dataset..." value= "<?php echo e($q); ?>"/>\n
    \t\t\t\t\t</div>\n
    \t\t\t\t\t<button class="btn rounded-0" type="submit">Search</button>\n
                    </div>\n
                </div>\n
    \t\t\t<?php $__currentLoopData = $filters; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $active): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t<?php if(!empty($active)): ?>\n
    \t\t\t\t\t<?php $__currentLoopData = $active; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $id => $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t<input type="hidden" name="<?php echo e($key); ?>[<?php echo e($id); ?>]" value="<?php echo e($item); ?>" />\n
    \t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t<?php endif; ?>\n
    \t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t<input type="hidden" id="srv" value="<?php echo e($srv); ?>"/>\n
            </form>\n
    \t</nav>\n
    </div>\n
    <?php $__env->stopSection(); ?>\n
    \n
    <?php $__env->startSection('body'); ?>\n
    <div class="bodydiv">\n
      <div class="row">\n
    \t<div class="col-12 row">\n
    \t\t<div class="col-4">\n
    \t\t\t<?php if($hitsTotal && $showSubjectHeading): ?>\n
    \t\t\t<h5>Subject</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($subjectFacets, $filters['subject'], 'subject'); ?>\n
    \n
    \t\t\t<?php if($hitsTotal && $showCreatorHeading): ?>\n
    \t\t\t<h5>Creator</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($result['aggregations']['creator'], $filters['creator'], 'creator'); ?>\n
    \n
    \t\t\t<?php if($hitsTotal): ?>\n
    \t\t\t<h5>Type</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($result['aggregations']['type'], $filters['type'], 'type'); ?>\n
    \n
    \t\t\t<?php if($hitsTotal): ?>\n
    \t\t\t<h5>Date</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($result['aggregations']['date'], $filters['date'], 'date'); ?>\n
    \n
    \t\t</div>\n
    \t\t<div class="col-8">\n
    \t\t\t<?php if($hitsTotal): ?>\n
    \t\t\t<p class="mt-4 mb-4">\n
    \t\t\t\t<?php $__currentLoopData = $filters; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $active): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t<?php if(!empty($active)): ?>\n
    \t\t\t\t\t\t<?php $__currentLoopData = $active; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t<span class="badge badge-background rounded-0 mt-1">\n
    \t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::removeFilter('registryHome', $key, $item, 'page', 1)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t<i class="fas fa-times-circle fa-1x"></i> <?php echo e($key); ?>: <?php echo e($item); ?>\n
    \n
    \t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t</span>\n
    \t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t</p>\n
    \t\t\t<div class="form-row pb-2">\n
    \t\t\t\t<div class="col-3">\n
    \t\t\t\t\t<h6 class="pt-2 mb-0"> Total is <?php echo e($hitsTotal); ?> Results</h6>\n
    \t\t\t\t</div>\n
    \t\t\t\t<div class="col-2 ml-auto">\n
    \t\t\t\t\t<select id="sortID" name="sort" class="form-control rounded-0 shadow-none" onChange="orderUpdate('sortID')">\n
    \t\t\t\t\t\t<option value="" <?php if(empty($sortSelected)): ?> selected="selected" <?php endif; ?>>Sort</option>\n
    \t\t\t\t\t\t<option value="newest" <?php if($sortSelected == "newest"): ?> selected="selected" <?php endif; ?>>Newest</option>\n
    \t\t\t\t\t\t<option value="oldest" <?php if($sortSelected == "oldest"): ?> selected="selected" <?php endif; ?>>Oldest</option>\n
    \t\t\t\t\t</select>\n
    \t\t\t\t</div>\n
    \t\t\t</div>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t\n
    \t\t\t<?php $__currentLoopData = $result['hits']['hits']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $publication): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t<div class="card rounded-0">\n
    \t\t\t\t\t<div class="card-body">\n
    \t\t\t\t\t\t<?php if($publication['_source']['source'] == "PURR"): ?>\n
    \t\t\t\t\t\t<h5 class="card-title"><a target="_blank" href="<?php echo e($publication['_source']['identifier']); ?>"><?php echo e($publication['_source']['title']); ?></a>\n
    \t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_OpenPurdue.svg')); ?>"/>\n
    \t\t\t\t\t\t<?php if(isset($publication['_source']['unavailability']) && $publication['_source']['unavailability']): ?>\n
    \t\t\t\t\t\t<img id="unavailable" width="40" height="40" src="<?php echo e(asset('images/warning.png')); ?>"/>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t</h5>\n
    \t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t<h5 class="card-title"><a target="_blank" href="<?php echo e(route('singleData', str_replace(['.', '/', '-'], '_', $publication['_source']['id']))); ?>"><?php echo e($publication['_source']['title']); ?></a>\t\n
    \t\t\t\t\t\t\t<?php if($publication['_source']['source'] == "physical"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Physical.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "request"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Restricted.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "online"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_OpenOther.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "purchase"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Restricted.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "licensed"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Library.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t<?php if(isset($publication['_source']['unavailability']) && $publication['_source']['unavailability']): ?>\n
    \t\t\t\t\t\t\t<img id="unavailable" width="40" height="40" src="<?php echo e(asset('images/warning.png')); ?>"/>\n
    \t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t</h5>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t<script type="text/javascript">hostHint("<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?>", <?php echo json_encode($publication['_source']['source']); ?>);</script>\n
    \t\t\t\t\t\t\n
    \t\t\t\t\t\t<?php if(isset($publication['highlight']['id'])): ?>\n
    \t\t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['highlight']['id']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlight): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<b><?php echo e(strip_tags($highlight)); ?></b>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t<p class="card-text mt-2 mb-2"><?php echo e($publication['_source']['id']); ?></p>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\n
    \t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['_source']['creator']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $creator): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', 'creator', $creator)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t<?php\n
    \t\t\t\t\t\t\t\t\t$found = 0;\n
    \t\t\t\t\t\t\t\t\t?>\n
    \t\t\t\t\t\t\t\t\t<?php if(isset($publication['highlight']['creator'])): ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php $__currentLoopData = array_map('strip_tags', $publication['highlight']['creator']); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlighted): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php if(preg_match("/$highlighted/", $creator)): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<b><?php echo e($creator); ?></b><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php\n
    \t\t\t\t\t\t\t\t\t\t\t\t$found = 1;\n
    \t\t\t\t\t\t\t\t\t\t\t\t?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php break; ?>;\n
    \t\t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php if(!$found): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php echo e($creator); ?><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t<?php elseif(isset($publication['highlight']['creator.raw'])): ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php $__currentLoopData = array_map('strip_tags', $publication['highlight']['creator.raw']); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlighted): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php if(preg_match("/$highlighted/", $creator)): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<b><?php echo e($creator); ?></b><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php\n
    \t\t\t\t\t\t\t\t\t\t\t\t$found = 1;\n
    \t\t\t\t\t\t\t\t\t\t\t\t?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php break; ?>;\n
    \t\t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php if(!$found): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php echo e($creator); ?><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t\t\t<?php echo e($creator); ?><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t\n
    \t\t\t\t\t\t<p class="card-text mt-2 mb-2"><?php echo e(date('m/d/Y', strtotime($publication['_source']['date']))); ?></p>\n
    \t\t\t\t\t\n
    \t\t\t\t\t\t<?php if(isset($publication['highlight']['description'])): ?>\n
    \t\t\t\t\t\t\t<p class="card-text highlight-description mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['highlight']['description']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlight): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<?php echo $highlight; ?>&#8230;<br/>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php echo (strlen(html_entity_decode($publication['_source']['description'])) > 256) ? Str::limit(html_entity_decode($publication['_source']['description']), 256, '...') : html_entity_decode($publication['_source']['description']); ?>\n
    \n
    \t\t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\n
    \t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['_source']['subject']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $subject): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<?php if(isset($publication['highlight']['subject']) && in_array($subject, array_map('strip_tags', $publication['highlight']['subject']))): ?>\n
    \t\t\t\t\t\t\t\t\t<span class="badge badge-background rounded-0 hoverBG">\n
    \t\t\t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', 'subject', $subject)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t\t\t<b><?php echo e($subject); ?></b>\n
    \t\t\t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t\t\t</span>\n
    \t\t\t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t\t\t<span class="badge badge-background rounded-0">\n
    \t\t\t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', 'subject', $subject)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t\t<?php echo e($subject); ?>\n
    \n
    \t\t\t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t\t\t</span>\n
    \t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t</p>\n
    \t\t\t\t\t</div>\n
    \t\t\t\t</div>\n
    \t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\n
    \t\t\t<?php if($hitsTotal != 0): ?>\n
    \t\t\t\t<nav aria-label="Search Result Pagination" class="float-left">\n
    \t\t\t\t  <ul name='page' class="pagination mt-3 pagination-sm">\t\t\t\n
    \t\t\t\t\t<li <?php echo $pageNum <= 1 ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', 1)); ?>" aria-label="start">Start</a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t\t<li <?php echo $pageNum <= 1 ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(($pageNum <=1) ? App\Helpers\urlGenExtension::updateURL('registryHome', 'page', 1) : App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $pageNum-1)); ?>" aria-label="Previous">\n
    \t\t\t\t\t\t<span aria-hidden="true">&lt;</span>\n
    \t\t\t\t\t\t<span class="sr-only">Previous</span>\n
    \t\t\t\t\t  </a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t\t<?php if($totalPages >= 1 and $totalPages <=6): ?>\n
    \t\t\t\t\t\t<?php for($i = 1; $i <= $totalPages; $i++): ?>\n
    \t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?>"><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t</li>\t\t\t\t\t\n
    \t\t\t\t\t\t<?php endfor; ?>\n
    \t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t<?php if($pageNum >= 1 and $pageNum <= 6): ?>\n
    \t\t\t\t\t\t\t<?php for($i = 1; $i < 7; $i++): ?>\n
    \t\t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?>"><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t\t</li>\t\t\t\t\t\n
    \t\t\t\t\t\t\t<?php endfor; ?>\t\t\t\t\t\n
    \t\t\t\t\t\t<?php elseif($pageNum > 6 and $pageNum < $totalPages-5): ?>\n
    \t\t\t\t\t\t\t<?php for($i = $pageNum; $i<=5+$pageNum; $i++): ?>\n
    \t\t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t\t<a class="page-link" href=" <?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?> "><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t\t</li>\n
    \t\t\t\t\t\t\t<?php endfor; ?>\t\t\t\t\t\n
    \t\t\t\t\t\t<?php elseif(($pageNum >= $totalPages - 5) and ($pageNum <= $totalPages)): ?>\n
    \t\t\t\t\t\t\t<?php for($i = $totalPages-5; $i<=$totalPages; $i++): ?>\n
    \t\t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?> "><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t\t</li>\n
    \t\t\t\t\t\t\t<?php endfor; ?>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t<li <?php echo $pageNum == $totalPages ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(($pageNum < $totalPages) ? App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $pageNum+1) : App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $pageNum)); ?> " aria-label="Next">\n
    \t\t\t\t\t\t<span aria-hidden="true">&gt;</span>\n
    \t\t\t\t\t\t<span class="sr-only">Next</span>\n
    \t\t\t\t\t  </a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t\t<li <?php echo $pageNum >= $totalPages ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $totalPages)); ?> " aria-label="end">End</a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t  </ul>\n
    \t\t\t\t</nav>\n
    \t\t\t\t<div class="form-inline float-right">\n
    \t\t\t\t\t<p class="mt-3">Display #</p>\n
    \t\t\t\t\t<select id="numPerPage" class="numPerPage" name="size" onChange="pageNumUpdate('numPerPage', <?php echo e(json_encode($pageNum)); ?>, <?php echo e(json_encode($hitsTotal)); ?>)">\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '10')); ?>" selected="selected">10</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '20')); ?>" <?php if($displayNum == 20): ?> selected="selected" <?php endif; ?>>20</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '50')); ?>" <?php if($displayNum == 50): ?> selected="selected" <?php endif; ?>>50</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '100')); ?>" <?php if($displayNum == 100): ?> selected="selected" <?php endif; ?>>100</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '500')); ?>" <?php if($displayNum == 500): ?> selected="selected" <?php endif; ?>>500</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '1000')); ?>" <?php if($displayNum == 1000): ?> selected="selected" <?php endif; ?>>1000</option>\n
    \t\t\t\t\t</select>\n
    \t\t\t\t\t<p class="ml-2 mt-3">Results <?php echo e(($pageNum <= $totalPages) ? $displayNum*($pageNum-1) + 1 : 1); ?> - <?php echo e(($pageNum < $totalPages) ? $displayNum*($pageNum-1) + $displayNum : $hitsTotal); ?> of <?php echo e($hitsTotal); ?></p>\n
    \t\t\t\t</div>\n
    \t\t\t<?php endif; ?>\t\n
    \t\t</div>\n
    \t</div>\n
    \t<div class="col-12 pb-4">\n
    \t\t<?php if(!$hitsTotal): ?>\n
    \t\t<div class="minHeight">\n
    \t\t\t<hr class="line">\n
    \t\t\t<h5><i class="fas fa-exclamation-circle mr-sm-2"></i>Sorry, no results were found.</h5>\n
    \t\t\t<hr class="line">\n
    \t\t\t<h4 class="pl-4">Search Suggestions:</h4>\n
    \t\t\t<ul>\n
    \t\t\t\t<li><h6>Check your spelling and try again.</h6></li>\n
    \t\t\t\t<li><h6>Use the subject term hint that shows in the search box.</h6></li>\n
    \t\t\t\t<li><h6>Try seaching by the full author name.</h6></li>\n
    \t\t\t\t<li><h6>Filter the datasets by subject, author name, type or year.</h6></li>\n
    \t\t\t\t<li><h6>Try looking for the particular term that you know.</h6></li>\n
    \t\t\t</ul>\n
    \t\t</div>\n
    \t\t<?php endif; ?>\t\n
    \t</div>\n
      </div>\n
    </div>\n
    <?php $__env->stopSection(); ?>\n
    <?php echo $__env->make('base.general', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?><?php /**PATH /var/www/html/purr/resources/views/home/index.blade.php ENDPATH**/ ?>
    """
    
  3. 0
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php
        if (! is_null($this->cachePath)) {
            $contents = $this->compileString(
                $this->files->get($this->getPath())
            );
 
            if (! empty($this->getPath())) {
                $tokens = $this->getOpenAndClosingPhpTokens($contents);
 
                // If the tokens we retrieved from the compiled contents have at least
                // one opening tag and if that last token isn't the closing tag, we
                // need to close the statement before adding the path at the end.
                if ($tokens->isNotEmpty() && $tokens->last() !== T_CLOSE_TAG) {
                    $contents .= ' ?>';
                }
 
                $contents .= "<?php /**PATH {$this->getPath()} ENDPATH**/ ?>";
            }
 
            $this->files->put(
                $this->getCompiledPath($this->getPath()), $contents
            );
        }
    }
 
    /**
     * Get the open and closing PHP tag tokens from the given string.
     *
     * @param  string  $contents
     * @return \Illuminate\Support\Collection
     */
    protected function getOpenAndClosingPhpTokens($contents)
    {
        return collect(token_get_all($contents))
            ->pluck($tokenNumber = 0)
            ->filter(function ($token) {
                return in_array($token, [T_OPEN_TAG, T_OPEN_TAG_WITH_ECHO, T_CLOSE_TAG]);
            });
    }
 
    /**
Arguments
  1. "/var/www/html/purr/storage/framework/views/7be3587ff6a4541c2ed032928c138dc71bb048e8.php"
    
  2. """
    <?php \Html::macro('aggregationFilter', function ( $aggregation, $filters, $key) use ($__env) { ob_start(); ?>\n
    \n
    \t<ul class="list-group">\n
    \t\t<?php $__currentLoopData = $aggregation['buckets']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $bucket): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
                <?php if(($key == 'subject' || $key == 'creator') && ((empty($filters)) || (!empty($filters) && !in_array($bucket['key'], $filters)))): ?>\n
                <li class="list-group-item rounded-0">\n
    \t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', $key, $key == 'date' ? $bucket['key_as_string'] : $bucket['key'])); ?>"> <?php echo e($key == "date" ? $bucket['key_as_string'] : ucfirst($bucket['key'])); ?></a>\n
    \t\t\t\t<span class="badge badge-warning badge-pill"><?php echo e($bucket['doc_count']); ?></span>\n
                </li>\n
    \t\t\t<?php elseif(($key == 'date' || $key == 'type') && ((empty($filters) && $bucket['doc_count']) || (!empty($filters) && in_array($key == 'date' ? $bucket['key_as_string'] : $bucket['key'], $filters)))): ?>\n
    \t\t\t<li class="list-group-item rounded-0">\n
    \t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', $key, $key == 'date' ? $bucket['key_as_string'] : $bucket['key'])); ?>"> <?php echo e($key == "date" ? $bucket['key_as_string'] : ucfirst($bucket['key'])); ?></a>\n
    \t\t\t\t<span class="badge badge-warning badge-pill"><?php echo e($bucket['doc_count']); ?></span>\n
                </li>\n
                <?php endif; ?>\n
            <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
        </ul>\n
    \n
    <?php return ob_get_clean(); }) ?>\n
    \n
    \n
    <?php $__env->startSection('title'); ?>\n
    PURR Registry\n
    <?php $__env->stopSection(); ?>\n
    \n
    <?php $__env->startSection('heading'); ?>\n
    <div class="headingdiv">\n
    \t<h1>Datasets<h1>\n
    \t<nav class="searchbox">\n
    \t\t<form name="search_form" action="<?php echo e(action('PurrrController@index')); ?>" method="get">\n
                <div class="form-row">\n
                    <div class="form-row col-12">\n
    \t\t\t\t\t<div class="col-2 pr-0">\n
    \t\t\t\t\t\t<select name="field" class="form-control rounded-0">\n
    \t\t\t\t\t\t\t<option value="" <?php if(empty($fieldSelected)): ?> selected="selected" <?php endif; ?>>All fields</option>\n
    \t\t\t\t\t\t\t<option value="DOI" <?php if($fieldSelected == "DOI"): ?> selected="selected" <?php endif; ?>>DOI</option>\n
    \t\t\t\t\t\t\t<option value="Author" <?php if($fieldSelected == "Author"): ?> selected="selected" <?php endif; ?>>Author</option>\n
    \t\t\t\t\t\t\t<option value="Subject" <?php if($fieldSelected == "Subject"): ?> selected="selected" <?php endif; ?>>Subject</option>\n
    \t\t\t\t\t\t</select>\t\n
    \t\t\t\t\t</div>\t\t\t\t\t\n
    \t\t\t\t\t<div class="col-8 pl-0">\n
    \t\t\t\t\t\t<input id="searchinput" name="q" maxlength="256" class="form-control rounded-0" type="search" placeholder="Find dataset..." value= "<?php echo e($q); ?>"/>\n
    \t\t\t\t\t</div>\n
    \t\t\t\t\t<button class="btn rounded-0" type="submit">Search</button>\n
                    </div>\n
                </div>\n
    \t\t\t<?php $__currentLoopData = $filters; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $active): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t<?php if(!empty($active)): ?>\n
    \t\t\t\t\t<?php $__currentLoopData = $active; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $id => $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t<input type="hidden" name="<?php echo e($key); ?>[<?php echo e($id); ?>]" value="<?php echo e($item); ?>" />\n
    \t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t<?php endif; ?>\n
    \t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t<input type="hidden" id="srv" value="<?php echo e($srv); ?>"/>\n
            </form>\n
    \t</nav>\n
    </div>\n
    <?php $__env->stopSection(); ?>\n
    \n
    <?php $__env->startSection('body'); ?>\n
    <div class="bodydiv">\n
      <div class="row">\n
    \t<div class="col-12 row">\n
    \t\t<div class="col-4">\n
    \t\t\t<?php if($hitsTotal && $showSubjectHeading): ?>\n
    \t\t\t<h5>Subject</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($subjectFacets, $filters['subject'], 'subject'); ?>\n
    \n
    \t\t\t<?php if($hitsTotal && $showCreatorHeading): ?>\n
    \t\t\t<h5>Creator</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($result['aggregations']['creator'], $filters['creator'], 'creator'); ?>\n
    \n
    \t\t\t<?php if($hitsTotal): ?>\n
    \t\t\t<h5>Type</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($result['aggregations']['type'], $filters['type'], 'type'); ?>\n
    \n
    \t\t\t<?php if($hitsTotal): ?>\n
    \t\t\t<h5>Date</h5>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t<?php echo Html::aggregationFilter($result['aggregations']['date'], $filters['date'], 'date'); ?>\n
    \n
    \t\t</div>\n
    \t\t<div class="col-8">\n
    \t\t\t<?php if($hitsTotal): ?>\n
    \t\t\t<p class="mt-4 mb-4">\n
    \t\t\t\t<?php $__currentLoopData = $filters; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $key => $active): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t<?php if(!empty($active)): ?>\n
    \t\t\t\t\t\t<?php $__currentLoopData = $active; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $item): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t<span class="badge badge-background rounded-0 mt-1">\n
    \t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::removeFilter('registryHome', $key, $item, 'page', 1)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t<i class="fas fa-times-circle fa-1x"></i> <?php echo e($key); ?>: <?php echo e($item); ?>\n
    \n
    \t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t</span>\n
    \t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t</p>\n
    \t\t\t<div class="form-row pb-2">\n
    \t\t\t\t<div class="col-3">\n
    \t\t\t\t\t<h6 class="pt-2 mb-0"> Total is <?php echo e($hitsTotal); ?> Results</h6>\n
    \t\t\t\t</div>\n
    \t\t\t\t<div class="col-2 ml-auto">\n
    \t\t\t\t\t<select id="sortID" name="sort" class="form-control rounded-0 shadow-none" onChange="orderUpdate('sortID')">\n
    \t\t\t\t\t\t<option value="" <?php if(empty($sortSelected)): ?> selected="selected" <?php endif; ?>>Sort</option>\n
    \t\t\t\t\t\t<option value="newest" <?php if($sortSelected == "newest"): ?> selected="selected" <?php endif; ?>>Newest</option>\n
    \t\t\t\t\t\t<option value="oldest" <?php if($sortSelected == "oldest"): ?> selected="selected" <?php endif; ?>>Oldest</option>\n
    \t\t\t\t\t</select>\n
    \t\t\t\t</div>\n
    \t\t\t</div>\n
    \t\t\t<?php endif; ?>\n
    \t\t\t\n
    \t\t\t<?php $__currentLoopData = $result['hits']['hits']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $publication): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t<div class="card rounded-0">\n
    \t\t\t\t\t<div class="card-body">\n
    \t\t\t\t\t\t<?php if($publication['_source']['source'] == "PURR"): ?>\n
    \t\t\t\t\t\t<h5 class="card-title"><a target="_blank" href="<?php echo e($publication['_source']['identifier']); ?>"><?php echo e($publication['_source']['title']); ?></a>\n
    \t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_OpenPurdue.svg')); ?>"/>\n
    \t\t\t\t\t\t<?php if(isset($publication['_source']['unavailability']) && $publication['_source']['unavailability']): ?>\n
    \t\t\t\t\t\t<img id="unavailable" width="40" height="40" src="<?php echo e(asset('images/warning.png')); ?>"/>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t</h5>\n
    \t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t<h5 class="card-title"><a target="_blank" href="<?php echo e(route('singleData', str_replace(['.', '/', '-'], '_', $publication['_source']['id']))); ?>"><?php echo e($publication['_source']['title']); ?></a>\t\n
    \t\t\t\t\t\t\t<?php if($publication['_source']['source'] == "physical"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Physical.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "request"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Restricted.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "online"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_OpenOther.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "purchase"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Restricted.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php elseif($publication['_source']['source'] == "licensed"): ?>\n
    \t\t\t\t\t\t\t\t<img id=<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?> src="<?php echo e(asset('images/RegIcon_Library.svg')); ?>"/>\n
    \t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t<?php if(isset($publication['_source']['unavailability']) && $publication['_source']['unavailability']): ?>\n
    \t\t\t\t\t\t\t<img id="unavailable" width="40" height="40" src="<?php echo e(asset('images/warning.png')); ?>"/>\n
    \t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t</h5>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t<script type="text/javascript">hostHint("<?php echo e(str_replace(['.', '/', '-'], '', $publication['_source']['id'])); ?>", <?php echo json_encode($publication['_source']['source']); ?>);</script>\n
    \t\t\t\t\t\t\n
    \t\t\t\t\t\t<?php if(isset($publication['highlight']['id'])): ?>\n
    \t\t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['highlight']['id']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlight): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<b><?php echo e(strip_tags($highlight)); ?></b>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t<p class="card-text mt-2 mb-2"><?php echo e($publication['_source']['id']); ?></p>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\n
    \t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['_source']['creator']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $creator): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', 'creator', $creator)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t<?php\n
    \t\t\t\t\t\t\t\t\t$found = 0;\n
    \t\t\t\t\t\t\t\t\t?>\n
    \t\t\t\t\t\t\t\t\t<?php if(isset($publication['highlight']['creator'])): ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php $__currentLoopData = array_map('strip_tags', $publication['highlight']['creator']); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlighted): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php if(preg_match("/$highlighted/", $creator)): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<b><?php echo e($creator); ?></b><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php\n
    \t\t\t\t\t\t\t\t\t\t\t\t$found = 1;\n
    \t\t\t\t\t\t\t\t\t\t\t\t?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php break; ?>;\n
    \t\t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php if(!$found): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php echo e($creator); ?><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t<?php elseif(isset($publication['highlight']['creator.raw'])): ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php $__currentLoopData = array_map('strip_tags', $publication['highlight']['creator.raw']); $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlighted): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php if(preg_match("/$highlighted/", $creator)): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<b><?php echo e($creator); ?></b><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php\n
    \t\t\t\t\t\t\t\t\t\t\t\t$found = 1;\n
    \t\t\t\t\t\t\t\t\t\t\t\t?>\n
    \t\t\t\t\t\t\t\t\t\t\t\t<?php break; ?>;\n
    \t\t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php if(!$found): ?>\n
    \t\t\t\t\t\t\t\t\t\t\t<?php echo e($creator); ?><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t\t\t<?php echo e($creator); ?><?php if(!$loop->last): ?><?php echo e(','); ?><?php endif; ?>\n
    \t\t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t\n
    \t\t\t\t\t\t<p class="card-text mt-2 mb-2"><?php echo e(date('m/d/Y', strtotime($publication['_source']['date']))); ?></p>\n
    \t\t\t\t\t\n
    \t\t\t\t\t\t<?php if(isset($publication['highlight']['description'])): ?>\n
    \t\t\t\t\t\t\t<p class="card-text highlight-description mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['highlight']['description']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $highlight): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<?php echo $highlight; ?>&#8230;<br/>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php echo (strlen(html_entity_decode($publication['_source']['description'])) > 256) ? Str::limit(html_entity_decode($publication['_source']['description']), 256, '...') : html_entity_decode($publication['_source']['description']); ?>\n
    \n
    \t\t\t\t\t\t\t</p>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\n
    \t\t\t\t\t\t<p class="card-text mt-2 mb-2">\n
    \t\t\t\t\t\t\t<?php $__currentLoopData = $publication['_source']['subject']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $subject): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t\t\t<?php if(isset($publication['highlight']['subject']) && in_array($subject, array_map('strip_tags', $publication['highlight']['subject']))): ?>\n
    \t\t\t\t\t\t\t\t\t<span class="badge badge-background rounded-0 hoverBG">\n
    \t\t\t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', 'subject', $subject)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t\t\t<b><?php echo e($subject); ?></b>\n
    \t\t\t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t\t\t</span>\n
    \t\t\t\t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t\t\t\t<span class="badge badge-background rounded-0">\n
    \t\t\t\t\t\t\t\t\t\t<a href="<?php echo e(App\Helpers\urlGenExtension::addFilter('registryHome', 'subject', $subject)); ?>" class="filter-link">\n
    \t\t\t\t\t\t\t\t\t\t<?php echo e($subject); ?>\n
    \n
    \t\t\t\t\t\t\t\t\t\t</a>\n
    \t\t\t\t\t\t\t\t\t</span>\n
    \t\t\t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\t\t\t</p>\n
    \t\t\t\t\t</div>\n
    \t\t\t\t</div>\n
    \t\t\t<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>\n
    \t\t\t\n
    \t\t\t<?php if($hitsTotal != 0): ?>\n
    \t\t\t\t<nav aria-label="Search Result Pagination" class="float-left">\n
    \t\t\t\t  <ul name='page' class="pagination mt-3 pagination-sm">\t\t\t\n
    \t\t\t\t\t<li <?php echo $pageNum <= 1 ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', 1)); ?>" aria-label="start">Start</a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t\t<li <?php echo $pageNum <= 1 ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(($pageNum <=1) ? App\Helpers\urlGenExtension::updateURL('registryHome', 'page', 1) : App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $pageNum-1)); ?>" aria-label="Previous">\n
    \t\t\t\t\t\t<span aria-hidden="true">&lt;</span>\n
    \t\t\t\t\t\t<span class="sr-only">Previous</span>\n
    \t\t\t\t\t  </a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t\t<?php if($totalPages >= 1 and $totalPages <=6): ?>\n
    \t\t\t\t\t\t<?php for($i = 1; $i <= $totalPages; $i++): ?>\n
    \t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?>"><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t</li>\t\t\t\t\t\n
    \t\t\t\t\t\t<?php endfor; ?>\n
    \t\t\t\t\t<?php else: ?>\n
    \t\t\t\t\t\t<?php if($pageNum >= 1 and $pageNum <= 6): ?>\n
    \t\t\t\t\t\t\t<?php for($i = 1; $i < 7; $i++): ?>\n
    \t\t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?>"><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t\t</li>\t\t\t\t\t\n
    \t\t\t\t\t\t\t<?php endfor; ?>\t\t\t\t\t\n
    \t\t\t\t\t\t<?php elseif($pageNum > 6 and $pageNum < $totalPages-5): ?>\n
    \t\t\t\t\t\t\t<?php for($i = $pageNum; $i<=5+$pageNum; $i++): ?>\n
    \t\t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t\t<a class="page-link" href=" <?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?> "><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t\t</li>\n
    \t\t\t\t\t\t\t<?php endfor; ?>\t\t\t\t\t\n
    \t\t\t\t\t\t<?php elseif(($pageNum >= $totalPages - 5) and ($pageNum <= $totalPages)): ?>\n
    \t\t\t\t\t\t\t<?php for($i = $totalPages-5; $i<=$totalPages; $i++): ?>\n
    \t\t\t\t\t\t\t<li <?php echo $pageNum == $i ? 'class="page-item active"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $i)); ?> "><?php echo e($i); ?></a>\n
    \t\t\t\t\t\t\t</li>\n
    \t\t\t\t\t\t\t<?php endfor; ?>\n
    \t\t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t<?php endif; ?>\n
    \t\t\t\t\t<li <?php echo $pageNum == $totalPages ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(($pageNum < $totalPages) ? App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $pageNum+1) : App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $pageNum)); ?> " aria-label="Next">\n
    \t\t\t\t\t\t<span aria-hidden="true">&gt;</span>\n
    \t\t\t\t\t\t<span class="sr-only">Next</span>\n
    \t\t\t\t\t  </a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t\t<li <?php echo $pageNum >= $totalPages ? 'class="page-item disabled"' : 'class="page-item"'; ?>>\n
    \t\t\t\t\t\t<a class="page-link" href="<?php echo e(App\Helpers\urlGenExtension::updateURL('registryHome', 'page', $totalPages)); ?> " aria-label="end">End</a>\n
    \t\t\t\t\t</li>\n
    \t\t\t\t  </ul>\n
    \t\t\t\t</nav>\n
    \t\t\t\t<div class="form-inline float-right">\n
    \t\t\t\t\t<p class="mt-3">Display #</p>\n
    \t\t\t\t\t<select id="numPerPage" class="numPerPage" name="size" onChange="pageNumUpdate('numPerPage', <?php echo e(json_encode($pageNum)); ?>, <?php echo e(json_encode($hitsTotal)); ?>)">\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '10')); ?>" selected="selected">10</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '20')); ?>" <?php if($displayNum == 20): ?> selected="selected" <?php endif; ?>>20</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '50')); ?>" <?php if($displayNum == 50): ?> selected="selected" <?php endif; ?>>50</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '100')); ?>" <?php if($displayNum == 100): ?> selected="selected" <?php endif; ?>>100</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '500')); ?>" <?php if($displayNum == 500): ?> selected="selected" <?php endif; ?>>500</option>\n
    \t\t\t\t\t\t<option value="<?php echo e(App\Helpers\urlGenExtension::sizeLimit('registryHome', '1000')); ?>" <?php if($displayNum == 1000): ?> selected="selected" <?php endif; ?>>1000</option>\n
    \t\t\t\t\t</select>\n
    \t\t\t\t\t<p class="ml-2 mt-3">Results <?php echo e(($pageNum <= $totalPages) ? $displayNum*($pageNum-1) + 1 : 1); ?> - <?php echo e(($pageNum < $totalPages) ? $displayNum*($pageNum-1) + $displayNum : $hitsTotal); ?> of <?php echo e($hitsTotal); ?></p>\n
    \t\t\t\t</div>\n
    \t\t\t<?php endif; ?>\t\n
    \t\t</div>\n
    \t</div>\n
    \t<div class="col-12 pb-4">\n
    \t\t<?php if(!$hitsTotal): ?>\n
    \t\t<div class="minHeight">\n
    \t\t\t<hr class="line">\n
    \t\t\t<h5><i class="fas fa-exclamation-circle mr-sm-2"></i>Sorry, no results were found.</h5>\n
    \t\t\t<hr class="line">\n
    \t\t\t<h4 class="pl-4">Search Suggestions:</h4>\n
    \t\t\t<ul>\n
    \t\t\t\t<li><h6>Check your spelling and try again.</h6></li>\n
    \t\t\t\t<li><h6>Use the subject term hint that shows in the search box.</h6></li>\n
    \t\t\t\t<li><h6>Try seaching by the full author name.</h6></li>\n
    \t\t\t\t<li><h6>Filter the datasets by subject, author name, type or year.</h6></li>\n
    \t\t\t\t<li><h6>Try looking for the particular term that you know.</h6></li>\n
    \t\t\t</ul>\n
    \t\t</div>\n
    \t\t<?php endif; ?>\t\n
    \t</div>\n
      </div>\n
    </div>\n
    <?php $__env->stopSection(); ?>\n
    <?php echo $__env->make('base.general', \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?><?php /**PATH /var/www/html/purr/resources/views/home/index.blade.php ENDPATH**/ ?>
    """
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php
    {
        $this->compiler = $compiler;
    }
 
    /**
     * Get the evaluated contents of the view.
     *
     * @param  string  $path
     * @param  array   $data
     * @return string
     */
    public function get($path, array $data = [])
    {
        $this->lastCompiled[] = $path;
 
        // If this given view has expired, which means it has simply been edited since
        // it was last compiled, we will re-compile the views so we can evaluate a
        // fresh copy of the view. We'll pass the compiler the path of the view.
        if ($this->compiler->isExpired($path)) {
            $this->compiler->compile($path);
        }
 
        $compiled = $this->compiler->getCompiledPath($path);
 
        // Once we have the path to the compiled file, we will evaluate the paths with
        // typical PHP just like any other templates. We also keep a stack of views
        // which have been rendered for right exception messages to be generated.
        $results = $this->evaluatePath($compiled, $data);
 
        array_pop($this->lastCompiled);
 
        return $results;
    }
 
    /**
     * Handle a view exception.
     *
     * @param  \Exception  $e
     * @param  int  $obLevel
     * @return void
Arguments
  1. "/var/www/html/purr/resources/views/home/index.blade.php"
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/View.php
        $this->factory->callComposer($this);
 
        $contents = $this->getContents();
 
        // Once we've finished rendering the view, we'll decrement the render count
        // so that each sections get flushed out next time a view is created and
        // no old sections are staying around in the memory of an environment.
        $this->factory->decrementRender();
 
        return $contents;
    }
 
    /**
     * Get the evaluated contents of the view.
     *
     * @return string
     */
    protected function getContents()
    {
        return $this->engine->get($this->path, $this->gatherData());
    }
 
    /**
     * Get the data bound to the view instance.
     *
     * @return array
     */
    public function gatherData()
    {
        $data = array_merge($this->factory->getShared(), $this->data);
 
        foreach ($data as $key => $value) {
            if ($value instanceof Renderable) {
                $data[$key] = $value->render();
            }
        }
 
        return $data;
    }
 
Arguments
  1. "/var/www/html/purr/resources/views/home/index.blade.php"
    
  2. array:16 [
      "__env" => Factory {#117}
      "app" => Application {#2}
      "errors" => ViewErrorBag {#289}
      "filters" => array:4 [
        "subject" => array:1 [
          1 => "Botany"
        ]
        "creator" => array:3 [
          0 => "Alemu Tirfessa"
          1 => "Adane Gebreyohannes"
          2 => "Habte Nida"
        ]
        "type" => array:1 [
          0 => "dataset"
        ]
        "date" => null
      ]
      "q" => ""
      "displayNum" => 10
      "totalPages" => 1
      "pageNum" => 1
      "result" => array:6 [
        "_scroll_id" => "DXF1ZXJ5QW5kRmV0Y2gBAAAAAAJZiUUWWUNMZHlSMnBUd2V3Yjg4U0ZIMGJKZw=="
        "took" => 2
        "timed_out" => false
        "_shards" => array:4 [
          "total" => 1
          "successful" => 1
          "skipped" => 0
          "failed" => 0
        ]
        "hits" => array:3 [
          "total" => array:2 [
            "value" => 2
            "relation" => "eq"
          ]
          "max_score" => 1.0
          "hits" => array:2 [
            0 => array:6 [
              "_index" => "publications"
              "_type" => "_doc"
              "_id" => "10.4231/EZDX-XT41"
              "_score" => 1.0
              "_source" => array:13 [
                "title" => "SNP datasets and passport information of sorghum accessions from Ethiopia"
                "id" => "10.4231/EZDX-XT41"
                "set" => ""
                "identifier" => "https://doi.org/10.4231/EZDX-XT41"
                "date" => "2020-08-03T05:47:11Z"
                "description" => "Agro-climatic information, phenotypic and SNP datasets were generated for 1628 Ethiopian sorghum accessions and utilized for a study on germplasm characterization and genome-environment association studies."
                "subject" => array:8 [
                  0 => "Botany"
                  1 => "Ethiopia"
                  2 => "Genomics"
                  3 => "Germplasm"
                  4 => "Landrace"
                  5 => "Phenotyping"
                  6 => "Plant Pathology"
                  7 => "Sorghum"
                ]
                "creator" => array:16 [
                  0 => "Adane Gebreyohannes"
                  1 => "Alemnesh Bekele"
                  2 => "Alemu Tirfessa"
                  3 => "Amare Nega"
                  4 => "Amare Seyoum"
                  5 => "Chemeda Birhanu"
                  6 => "Dagnachew Lule"
                  7 => "Gebisa Ejeta"
                  8 => "Getachew Ayana"
                  9 => "Gezahegn Tessema"
                  10 => "Habte Nida"
                  11 => "Kebede Dessalegn"
                  12 => "Moges Mekonen"
                  13 => "Tamirat Bejiga"
                  14 => "Tesfaye Mengiste, 0000-0001-8865-994X"
                  15 => "Tesfaye Tesso"
                ]
                "status" => "published"
                "type" => "dataset"
                "source" => "PURR"
                "unavailability" => 0
                "version" => "2.0"
              ]
              "highlight" => array:2 [
                "creator.raw" => array:3 [
                  0 => "<em>Adane Gebreyohannes</em>"
                  1 => "<em>Alemu Tirfessa</em>"
                  2 => "<em>Habte Nida</em>"
                ]
                "subject.raw" => array:1 [
                  0 => "<em>Botany</em>"
                ]
              ]
            ]
            1 => array:6 [
              "_index" => "publications"
              "_type" => "_doc"
              "_id" => "10.4231/PYQV-AT79"
              "_score" => 1.0
              "_source" => array:13 [
                "title" => "Ethiopian sorghum landrace SNP and phenotype data"
                "id" => "10.4231/PYQV-AT79"
                "set" => ""
                "identifier" => "https://doi.org/10.4231/PYQV-AT79"
                "date" => "2019-05-03T05:40:08Z"
                "description" => "Phenotypic and SNP datasets generated for a study on Ethiopian sorghum genomics and gene mining for important traits."
                "subject" => array:9 [
                  0 => "Botany"
                  1 => "Ethiopia"
                  2 => "Genomics"
                  3 => "Germplasm"
                  4 => "Landrace"
                  5 => "Phenotyping"
                  6 => "Plant Pathology"
                  7 => "SNP"
                  8 => "Sorghum"
                ]
                "creator" => array:18 [
                  0 => "Adane Gebreyohannes"
                  1 => "Adedayo Adeyanju, 0000-0002-7866-1437"
                  2 => "Alemnesh Bekele"
                  3 => "Alemu Tirfessa"
                  4 => "Amare Nega"
                  5 => "Amare Seyoum"
                  6 => "Dagnachew Lule"
                  7 => "Firew Mekbib"
                  8 => "Gebisa Ejeta"
                  9 => "Getachew Ayana"
                  10 => "Gezahegn Tessema"
                  11 => "Habte Nida"
                  12 => "Kebede Desalegn"
                  13 => "Ketema Belete"
                  14 => "Moges Mekonen"
                  15 => "Taye Taddese"
                  16 => "Tesfaye Mengiste, 0000-0001-8865-994X"
                  17 => "Tesfaye Tesso"
                ]
                "status" => "published"
                "type" => "dataset"
                "source" => "PURR"
                "unavailability" => 0
                "version" => "2.0"
              ]
              "highlight" => array:2 [
                "creator.raw" => array:3 [
                  0 => "<em>Adane Gebreyohannes</em>"
                  1 => "<em>Alemu Tirfessa</em>"
                  2 => "<em>Habte Nida</em>"
                ]
                "subject.raw" => array:1 [
                  0 => "<em>Botany</em>"
                ]
              ]
            ]
          ]
        ]
        "aggregations" => array:4 [
          "date" => array:1 [
            "buckets" => array:2 [
              2020 => array:3 [
                "key_as_string" => "2020"
                "key" => 1577836800000
                "doc_count" => 1
              ]
              2019 => array:3 [
                "key_as_string" => "2019"
                "key" => 1546300800000
                "doc_count" => 1
              ]
            ]
          ]
          "subject_buckets" => array:2 [
            "after_key" => array:1 [
              "subject" => "Sorghum"
            ]
            "buckets" => array:9 [
              0 => array:2 [
                "key" => array:1 [
                  "subject" => "Botany"
                ]
                "doc_count" => 2
              ]
              1 => array:2 [
                "key" => array:1 [
                  "subject" => "Ethiopia"
                ]
                "doc_count" => 2
              ]
              2 => array:2 [
                "key" => array:1 [
                  "subject" => "Genomics"
                ]
                "doc_count" => 2
              ]
              3 => array:2 [
                "key" => array:1 [
                  "subject" => "Germplasm"
                ]
                "doc_count" => 2
              ]
              4 => array:2 [
                "key" => array:1 [
                  "subject" => "Landrace"
                ]
                "doc_count" => 2
              ]
              5 => array:2 [
                "key" => array:1 [
                  "subject" => "Phenotyping"
                ]
                "doc_count" => 2
              ]
              6 => array:2 [
                "key" => array:1 [
                  "subject" => "Plant Pathology"
                ]
                "doc_count" => 2
              ]
              7 => array:2 [
                "key" => array:1 [
                  "subject" => "SNP"
                ]
                "doc_count" => 1
              ]
              8 => array:2 [
                "key" => array:1 [
                  "subject" => "Sorghum"
                ]
                "doc_count" => 2
              ]
            ]
          ]
          "creator" => array:3 [
            "doc_count_error_upper_bound" => 0
            "sum_other_doc_count" => 14
            "buckets" => array:10 [
              0 => array:2 [
                "key" => "Adane Gebreyohannes"
                "doc_count" => 2
              ]
              1 => array:2 [
                "key" => "Alemnesh Bekele"
                "doc_count" => 2
              ]
              2 => array:2 [
                "key" => "Alemu Tirfessa"
                "doc_count" => 2
              ]
              3 => array:2 [
                "key" => "Amare Nega"
                "doc_count" => 2
              ]
              4 => array:2 [
                "key" => "Amare Seyoum"
                "doc_count" => 2
              ]
              5 => array:2 [
                "key" => "Dagnachew Lule"
                "doc_count" => 2
              ]
              6 => array:2 [
                "key" => "Gebisa Ejeta"
                "doc_count" => 2
              ]
              7 => array:2 [
                "key" => "Getachew Ayana"
                "doc_count" => 2
              ]
              8 => array:2 [
                "key" => "Gezahegn Tessema"
                "doc_count" => 2
              ]
              9 => array:2 [
                "key" => "Habte Nida"
                "doc_count" => 2
              ]
            ]
          ]
          "type" => array:3 [
            "doc_count_error_upper_bound" => 0
            "sum_other_doc_count" => 0
            "buckets" => array:1 [
              0 => array:2 [
                "key" => "dataset"
                "doc_count" => 2
              ]
            ]
          ]
        ]
      ]
      "hitsTotal" => 2
      "subjectFacets" => array:1 [
        "buckets" => array:2 [
          0 => array:2 [
            "key" => "Botany"
            "doc_count" => 2
          ]
          1 => array:2 [
            "key" => "Plant Pathology"
            "doc_count" => 2
          ]
        ]
      ]
      "fieldSelected" => null
      "sortSelected" => null
      "showSubjectHeading" => true
      "showCreatorHeading" => true
      "srv" => "production"
    ]
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/View.php
 
            throw $e;
        }
    }
 
    /**
     * Get the contents of the view instance.
     *
     * @return string
     */
    protected function renderContents()
    {
        // We will keep track of the amount of views being rendered so we can flush
        // the section after the complete rendering operation is done. This will
        // clear out the sections for any separate views that may be rendered.
        $this->factory->incrementRender();
 
        $this->factory->callComposer($this);
 
        $contents = $this->getContents();
 
        // Once we've finished rendering the view, we'll decrement the render count
        // so that each sections get flushed out next time a view is created and
        // no old sections are staying around in the memory of an environment.
        $this->factory->decrementRender();
 
        return $contents;
    }
 
    /**
     * Get the evaluated contents of the view.
     *
     * @return string
     */
    protected function getContents()
    {
        return $this->engine->get($this->path, $this->gatherData());
    }
 
    /**
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/View.php
        $this->view = $view;
        $this->path = $path;
        $this->engine = $engine;
        $this->factory = $factory;
 
        $this->data = $data instanceof Arrayable ? $data->toArray() : (array) $data;
    }
 
    /**
     * Get the string contents of the view.
     *
     * @param  callable|null  $callback
     * @return array|string
     *
     * @throws \Throwable
     */
    public function render(callable $callback = null)
    {
        try {
            $contents = $this->renderContents();
 
            $response = isset($callback) ? call_user_func($callback, $this, $contents) : null;
 
            // Once we have the contents of the view, we will flush the sections if we are
            // done rendering all views so that there is nothing left hanging over when
            // another view gets rendered in the future by the application developer.
            $this->factory->flushStateIfDoneRendering();
 
            return ! is_null($response) ? $response : $contents;
        } catch (Exception $e) {
            $this->factory->flushState();
 
            throw $e;
        } catch (Throwable $e) {
            $this->factory->flushState();
 
            throw $e;
        }
    }
 
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Http/Response.php
     * @return $this
     */
    public function setContent($content)
    {
        $this->original = $content;
 
        // If the content is "JSONable" we will set the appropriate header and convert
        // the content to JSON. This is useful when returning something like models
        // from routes that will be automatically transformed to their JSON form.
        if ($this->shouldBeJson($content)) {
            $this->header('Content-Type', 'application/json');
 
            $content = $this->morphToJson($content);
        }
 
        // If this content implements the "Renderable" interface then we will call the
        // render method on the object so we will avoid any "__toString" exceptions
        // that might be thrown and have their errors obscured by PHP's handling.
        elseif ($content instanceof Renderable) {
            $content = $content->render();
        }
 
        parent::setContent($content);
 
        return $this;
    }
 
    /**
     * Determine if the given content should be turned into JSON.
     *
     * @param  mixed  $content
     * @return bool
     */
    protected function shouldBeJson($content)
    {
        return $content instanceof Arrayable ||
               $content instanceof Jsonable ||
               $content instanceof ArrayObject ||
               $content instanceof JsonSerializable ||
               is_array($content);
/var/www/html/purr/vendor/symfony/http-foundation/Response.php
        500 => 'Internal Server Error',
        501 => 'Not Implemented',
        502 => 'Bad Gateway',
        503 => 'Service Unavailable',
        504 => 'Gateway Timeout',
        505 => 'HTTP Version Not Supported',
        506 => 'Variant Also Negotiates',                                     // RFC2295
        507 => 'Insufficient Storage',                                        // RFC4918
        508 => 'Loop Detected',                                               // RFC5842
        510 => 'Not Extended',                                                // RFC2774
        511 => 'Network Authentication Required',                             // RFC6585
    ];
 
    /**
     * @throws \InvalidArgumentException When the HTTP status code is not valid
     */
    public function __construct($content = '', int $status = 200, array $headers = [])
    {
        $this->headers = new ResponseHeaderBag($headers);
        $this->setContent($content);
        $this->setStatusCode($status);
        $this->setProtocolVersion('1.0');
    }
 
    /**
     * Factory method for chainability.
     *
     * Example:
     *
     *     return Response::create($body, 200)
     *         ->setSharedMaxAge(300);
     *
     * @param mixed $content The response content, see setContent()
     * @param int   $status  The response status code
     * @param array $headers An array of response headers
     *
     * @return static
     */
    public static function create($content = '', $status = 200, $headers = [])
    {
Arguments
  1. View {#302}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
     */
    public static function toResponse($request, $response)
    {
        if ($response instanceof Responsable) {
            $response = $response->toResponse($request);
        }
 
        if ($response instanceof PsrResponseInterface) {
            $response = (new HttpFoundationFactory)->createResponse($response);
        } elseif ($response instanceof Model && $response->wasRecentlyCreated) {
            $response = new JsonResponse($response, 201);
        } elseif (! $response instanceof SymfonyResponse &&
                   ($response instanceof Arrayable ||
                    $response instanceof Jsonable ||
                    $response instanceof ArrayObject ||
                    $response instanceof JsonSerializable ||
                    is_array($response))) {
            $response = new JsonResponse($response);
        } elseif (! $response instanceof SymfonyResponse) {
            $response = new Response($response);
        }
 
        if ($response->getStatusCode() === Response::HTTP_NOT_MODIFIED) {
            $response->setNotModified();
        }
 
        return $response->prepare($request);
    }
 
    /**
     * Substitute the route bindings onto the route.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return \Illuminate\Routing\Route
     *
     * @throws \Illuminate\Database\Eloquent\ModelNotFoundException
     */
    public function substituteBindings($route)
    {
        foreach ($route->parameters() as $key => $value) {
Arguments
  1. View {#302}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
     * Sort the given middleware by priority.
     *
     * @param  \Illuminate\Support\Collection  $middlewares
     * @return array
     */
    protected function sortMiddleware(Collection $middlewares)
    {
        return (new SortedMiddleware($this->middlewarePriority, $middlewares))->all();
    }
 
    /**
     * Create a response instance from the given value.
     *
     * @param  \Symfony\Component\HttpFoundation\Request  $request
     * @param  mixed  $response
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function prepareResponse($request, $response)
    {
        return static::toResponse($request, $response);
    }
 
    /**
     * Static version of prepareResponse.
     *
     * @param  \Symfony\Component\HttpFoundation\Request  $request
     * @param  mixed  $response
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public static function toResponse($request, $response)
    {
        if ($response instanceof Responsable) {
            $response = $response->toResponse($request);
        }
 
        if ($response instanceof PsrResponseInterface) {
            $response = (new HttpFoundationFactory)->createResponse($response);
        } elseif ($response instanceof Model && $response->wasRecentlyCreated) {
            $response = new JsonResponse($response, 201);
        } elseif (! $response instanceof SymfonyResponse &&
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. View {#302}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
    /**
     * Run the given route within a Stack "onion" instance.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    protected function runRouteWithinStack(Route $route, Request $request)
    {
        $shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
                                $this->container->make('middleware.disable') === true;
 
        $middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);
 
        return (new Pipeline($this->container))
                        ->send($request)
                        ->through($middleware)
                        ->then(function ($request) use ($route) {
                            return $this->prepareResponse(
                                $request, $route->run()
                            );
                        });
    }
 
    /**
     * Gather the middleware for the given route with resolved class names.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return array
     */
    public function gatherRouteMiddleware(Route $route)
    {
        $middleware = collect($route->gatherMiddleware())->map(function ($name) {
            return (array) MiddlewareNameResolver::resolve($name, $this->middleware, $this->middlewareGroups);
        })->flatten();
 
        return $this->sortMiddleware($middleware);
    }
 
    /**
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. View {#302}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
use Symfony\Component\Debug\Exception\FatalThrowableError;
 
/**
 * This extended pipeline catches any exceptions that occur during each slice.
 *
 * The exceptions are converted to HTTP responses for proper middleware handling.
 */
class Pipeline extends BasePipeline
{
    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
    protected function prepareDestination(Closure $destination)
    {
        return function ($passable) use ($destination) {
            try {
                return $destination($passable);
            } catch (Exception $e) {
                return $this->handleException($passable, $e);
            } catch (Throwable $e) {
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php
     */
    public function __construct(Registrar $router)
    {
        $this->router = $router;
    }
 
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $this->router->substituteBindings($route = $request->route());
 
        $this->router->substituteImplicitBindings($route);
 
        return $next($request);
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#230 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php
    }
 
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     *
     * @throws \Illuminate\Session\TokenMismatchException
     */
    public function handle($request, Closure $next)
    {
        if (
            $this->isReading($request) ||
            $this->runningUnitTests() ||
            $this->inExceptArray($request) ||
            $this->tokensMatch($request)
        ) {
            return tap($next($request), function ($response) use ($request) {
                if ($this->shouldAddXsrfTokenCookie()) {
                    $this->addCookieToResponse($request, $response);
                }
            });
        }
 
        throw new TokenMismatchException('CSRF token mismatch.');
    }
 
    /**
     * Determine if the HTTP request uses a ‘read’ verb.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return bool
     */
    protected function isReading($request)
    {
        return in_array($request->method(), ['HEAD', 'GET', 'OPTIONS']);
    }
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#236 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        // If the current session has an "errors" variable bound to it, we will share
        // its value with all view instances so the views can easily access errors
        // without having to bind. An empty bag is set when there aren't errors.
        $this->view->share(
            'errors', $request->session()->get('errors') ?: new ViewErrorBag
        );
 
        // Putting the errors in the view for every view allows the developer to just
        // assume that some errors are always available, which is convenient since
        // they don't have to continually run checks for the presence of errors.
 
        return $next($request);
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#266 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if (! $this->sessionConfigured()) {
            return $next($request);
        }
 
        // If a session driver has been configured, we will need to start the session here
        // so that the data is ready for an application. Note that the Laravel sessions
        // do not make use of PHP "native" sessions in any way since they are crappy.
        $request->setLaravelSession(
            $session = $this->startSession($request)
        );
 
        $this->collectGarbage($session);
 
        $response = $next($request);
 
        $this->storeCurrentUrl($request, $session);
 
        $this->addCookieToResponse($response, $session);
 
        // Again, if the session has been configured we will need to close out the session
        // so that the attributes may be persisted to some storage medium. We will also
        // add the session identifier cookie to the application response headers now.
        $this->saveSession($request);
 
        return $response;
    }
 
    /**
     * Start the session for the given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Contracts\Session\Session
     */
    protected function startSession(Request $request)
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#268 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php
     * Create a new CookieQueue instance.
     *
     * @param  \Illuminate\Contracts\Cookie\QueueingFactory  $cookies
     * @return void
     */
    public function __construct(CookieJar $cookies)
    {
        $this->cookies = $cookies;
    }
 
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $response = $next($request);
 
        foreach ($this->cookies->getQueuedCookies() as $cookie) {
            $response->headers->setCookie($cookie);
        }
 
        return $response;
    }
}
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#269 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php
     * Disable encryption for the given cookie name(s).
     *
     * @param  string|array  $name
     * @return void
     */
    public function disableFor($name)
    {
        $this->except = array_merge($this->except, (array) $name);
    }
 
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return \Symfony\Component\HttpFoundation\Response
     */
    public function handle($request, Closure $next)
    {
        return $this->encrypt($next($this->decrypt($request)));
    }
 
    /**
     * Decrypt the cookies on the request.
     *
     * @param  \Symfony\Component\HttpFoundation\Request  $request
     * @return \Symfony\Component\HttpFoundation\Request
     */
    protected function decrypt(Request $request)
    {
        foreach ($request->cookies as $key => $cookie) {
            if ($this->isDisabled($key)) {
                continue;
            }
 
            try {
                $request->cookies->set($key, $this->decryptCookie($key, $cookie));
            } catch (DecryptException $e) {
                $request->cookies->set($key, null);
            }
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#270 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
    public function via($method)
    {
        $this->method = $method;
 
        return $this;
    }
 
    /**
     * Run the pipeline with a final destination callback.
     *
     * @param  \Closure  $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes), $this->carry(), $this->prepareDestination($destination)
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * Run the pipeline and return the result.
     *
     * @return mixed
     */
    public function thenReturn()
    {
        return $this->then(function ($passable) {
            return $passable;
        });
    }
 
    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
     *
     * @param  \Illuminate\Routing\Route  $route
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    protected function runRouteWithinStack(Route $route, Request $request)
    {
        $shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
                                $this->container->make('middleware.disable') === true;
 
        $middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);
 
        return (new Pipeline($this->container))
                        ->send($request)
                        ->through($middleware)
                        ->then(function ($request) use ($route) {
                            return $this->prepareResponse(
                                $request, $route->run()
                            );
                        });
    }
 
    /**
     * Gather the middleware for the given route with resolved class names.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @return array
     */
    public function gatherRouteMiddleware(Route $route)
    {
        $middleware = collect($route->gatherMiddleware())->map(function ($name) {
            return (array) MiddlewareNameResolver::resolve($name, $this->middleware, $this->middlewareGroups);
        })->flatten();
 
        return $this->sortMiddleware($middleware);
    }
 
    /**
     * Sort the given middleware by priority.
     *
Arguments
  1. Closure($request) {#225 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
        return $route;
    }
 
    /**
     * Return the response for the given route.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Routing\Route  $route
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    protected function runRoute(Request $request, Route $route)
    {
        $request->setRouteResolver(function () use ($route) {
            return $route;
        });
 
        $this->events->dispatch(new Events\RouteMatched($route, $request));
 
        return $this->prepareResponse($request,
            $this->runRouteWithinStack($route, $request)
        );
    }
 
    /**
     * Run the given route within a Stack "onion" instance.
     *
     * @param  \Illuminate\Routing\Route  $route
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     */
    protected function runRouteWithinStack(Route $route, Request $request)
    {
        $shouldSkipMiddleware = $this->container->bound('middleware.disable') &&
                                $this->container->make('middleware.disable') === true;
 
        $middleware = $shouldSkipMiddleware ? [] : $this->gatherRouteMiddleware($route);
 
        return (new Pipeline($this->container))
                        ->send($request)
                        ->through($middleware)
Arguments
  1. Route {#146}
    
  2. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function dispatch(Request $request)
    {
        $this->currentRequest = $request;
 
        return $this->dispatchToRoute($request);
    }
 
    /**
     * Dispatch the request to a route and return the response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function dispatchToRoute(Request $request)
    {
        return $this->runRoute($request, $this->findRoute($request));
    }
 
    /**
     * Find the route matching a given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Routing\Route
     */
    protected function findRoute($request)
    {
        $this->current = $route = $this->routes->match($request);
 
        $this->container->instance(Route::class, $route);
 
        return $route;
    }
 
    /**
     * Return the response for the given route.
     *
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Route {#146}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Router.php
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function respondWithRoute($name)
    {
        $route = tap($this->routes->getByName($name))->bind($this->currentRequest);
 
        return $this->runRoute($this->currentRequest, $route);
    }
 
    /**
     * Dispatch the request to the application.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function dispatch(Request $request)
    {
        $this->currentRequest = $request;
 
        return $this->dispatchToRoute($request);
    }
 
    /**
     * Dispatch the request to a route and return the response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response|\Illuminate\Http\JsonResponse
     */
    public function dispatchToRoute(Request $request)
    {
        return $this->runRoute($request, $this->findRoute($request));
    }
 
    /**
     * Find the route matching a given request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Routing\Route
     */
    protected function findRoute($request)
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
     * @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.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Illuminate\Http\Response  $response
     * @return void
     */
    public function terminate($request, $response)
    {
        $this->terminateMiddleware($request, $response);
 
        $this->app->terminate();
    }
 
    /**
     * Call the terminate method on any terminable middleware.
     *
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
use Symfony\Component\Debug\Exception\FatalThrowableError;
 
/**
 * This extended pipeline catches any exceptions that occur during each slice.
 *
 * The exceptions are converted to HTTP responses for proper middleware handling.
 */
class Pipeline extends BasePipeline
{
    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
    protected function prepareDestination(Closure $destination)
    {
        return function ($passable) use ($destination) {
            try {
                return $destination($passable);
            } catch (Exception $e) {
                return $this->handleException($passable, $e);
            } catch (Throwable $e) {
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/fideloper/proxy/src/TrustProxies.php
    {
        $this->config = $config;
    }
 
    /**
     * Handle an incoming request.
     *
     * @param \Illuminate\Http\Request $request
     * @param \Closure                 $next
     *
     * @throws \Symfony\Component\HttpKernel\Exception\HttpException
     *
     * @return mixed
     */
    public function handle(Request $request, Closure $next)
    {
        $request::setTrustedProxies([], $this->getTrustedHeaderNames()); // Reset trusted proxies between requests
        $this->setTrustedProxyIpAddresses($request);
 
        return $next($request);
    }
 
    /**
     * Sets the trusted proxies on the request to the value of trustedproxy.proxies
     *
     * @param \Illuminate\Http\Request $request
     */
    protected function setTrustedProxyIpAddresses(Request $request)
    {
        $trustedIps = $this->proxies ?: $this->config->get('trustedproxy.proxies');
 
        // Trust any IP address that calls us
        // `**` for backwards compatibility, but is deprecated
        if ($trustedIps === '*' || $trustedIps === '**') {
            return $this->setTrustedProxyIpAddressesToTheCallingIp($request);
        }
 
        // Support IPs addresses separated by comma
        $trustedIps = is_string($trustedIps) ? array_map('trim', explode(',', $trustedIps)) : $trustedIps;
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#205 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php
 
namespace Illuminate\Foundation\Http\Middleware;
 
use Closure;
use Symfony\Component\HttpFoundation\ParameterBag;
 
class TransformsRequest
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $this->clean($request);
 
        return $next($request);
    }
 
    /**
     * Clean the request's data.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return void
     */
    protected function clean($request)
    {
        $this->cleanParameterBag($request->query);
 
        if ($request->isJson()) {
            $this->cleanParameterBag($request->json());
        } elseif ($request->request !== $request->query) {
            $this->cleanParameterBag($request->request);
        }
    }
 
    /**
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#206 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php
 
namespace Illuminate\Foundation\Http\Middleware;
 
use Closure;
use Symfony\Component\HttpFoundation\ParameterBag;
 
class TransformsRequest
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $this->clean($request);
 
        return $next($request);
    }
 
    /**
     * Clean the request's data.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return void
     */
    protected function clean($request)
    {
        $this->cleanParameterBag($request->query);
 
        if ($request->isJson()) {
            $this->cleanParameterBag($request->json());
        } elseif ($request->request !== $request->query) {
            $this->cleanParameterBag($request->request);
        }
    }
 
    /**
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#207 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php
class ValidatePostSize
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     *
     * @throws \Illuminate\Http\Exceptions\PostTooLargeException
     */
    public function handle($request, Closure $next)
    {
        $max = $this->getPostMaxSize();
 
        if ($max > 0 && $request->server('CONTENT_LENGTH') > $max) {
            throw new PostTooLargeException;
        }
 
        return $next($request);
    }
 
    /**
     * Determine the server 'post_max_size' as bytes.
     *
     * @return int
     */
    protected function getPostMaxSize()
    {
        if (is_numeric($postMaxSize = ini_get('post_max_size'))) {
            return (int) $postMaxSize;
        }
 
        $metric = strtoupper(substr($postMaxSize, -1));
        $postMaxSize = (int) $postMaxSize;
 
        switch ($metric) {
            case 'K':
                return $postMaxSize * 1024;
            case 'M':
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#208 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php
     *
     * @throws \Symfony\Component\HttpKernel\Exception\HttpException
     */
    public function handle($request, Closure $next)
    {
        if ($this->app->isDownForMaintenance()) {
            $data = json_decode(file_get_contents($this->app->storagePath().'/framework/down'), true);
 
            if (isset($data['allowed']) && IpUtils::checkIp($request->ip(), (array) $data['allowed'])) {
                return $next($request);
            }
 
            if ($this->inExceptArray($request)) {
                return $next($request);
            }
 
            throw new MaintenanceModeException($data['time'], $data['retry'], $data['message']);
        }
 
        return $next($request);
    }
 
    /**
     * Determine if the request has a URI that should be accessible in maintenance mode.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return bool
     */
    protected function inExceptArray($request)
    {
        foreach ($this->except as $except) {
            if ($except !== '/') {
                $except = trim($except, '/');
            }
 
            if ($request->fullUrlIs($except) || $request->is($except)) {
                return true;
            }
        }
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
                    // the appropriate method and arguments, returning the results back out.
                    return $pipe($passable, $stack);
                } elseif (! is_object($pipe)) {
                    [$name, $parameters] = $this->parsePipeString($pipe);
 
                    // If the pipe is a string we will parse the string and resolve the class out
                    // of the dependency injection container. We can then build a callable and
                    // execute the pipe function giving in the parameters that are required.
                    $pipe = $this->getContainer()->make($name);
 
                    $parameters = array_merge([$passable, $stack], $parameters);
                } else {
                    // If the pipe is already an object we'll just make a callable and pass it to
                    // the pipe as-is. There is no need to do any extra parsing and formatting
                    // since the object we're given was already a fully instantiated object.
                    $parameters = [$passable, $stack];
                }
 
                $response = method_exists($pipe, $this->method)
                                ? $pipe->{$this->method}(...$parameters)
                                : $pipe(...$parameters);
 
                return $response instanceof Responsable
                            ? $response->toResponse($this->getContainer()->make(Request::class))
                            : $response;
            };
        };
    }
 
    /**
     * Parse full pipe string to get name and parameters.
     *
     * @param  string $pipe
     * @return array
     */
    protected function parsePipeString($pipe)
    {
        [$name, $parameters] = array_pad(explode(':', $pipe, 2), 2, []);
 
        if (is_string($parameters)) {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
  2. Closure($passable) {#209 …5}
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php
                return $this->handleException($passable, new FatalThrowableError($e));
            }
        };
    }
 
    /**
     * Get a Closure that represents a slice of the application onion.
     *
     * @return \Closure
     */
    protected function carry()
    {
        return function ($stack, $pipe) {
            return function ($passable) use ($stack, $pipe) {
                try {
                    $slice = parent::carry();
 
                    $callable = $slice($stack, $pipe);
 
                    return $callable($passable);
                } catch (Exception $e) {
                    return $this->handleException($passable, $e);
                } catch (Throwable $e) {
                    return $this->handleException($passable, new FatalThrowableError($e));
                }
            };
        };
    }
 
    /**
     * Handle the given exception.
     *
     * @param  mixed  $passable
     * @param  \Exception  $e
     * @return mixed
     *
     * @throws \Exception
     */
    protected function handleException($passable, Exception $e)
    {
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php
    public function via($method)
    {
        $this->method = $method;
 
        return $this;
    }
 
    /**
     * Run the pipeline with a final destination callback.
     *
     * @param  \Closure  $destination
     * @return mixed
     */
    public function then(Closure $destination)
    {
        $pipeline = array_reduce(
            array_reverse($this->pipes), $this->carry(), $this->prepareDestination($destination)
        );
 
        return $pipeline($this->passable);
    }
 
    /**
     * Run the pipeline and return the result.
     *
     * @return mixed
     */
    public function thenReturn()
    {
        return $this->then(function ($passable) {
            return $passable;
        });
    }
 
    /**
     * Get the final piece of the Closure onion.
     *
     * @param  \Closure  $destination
     * @return \Closure
     */
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php
    }
 
    /**
     * 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());
        }
    }
 
    /**
     * Get the route dispatcher callback.
     *
     * @return \Closure
     */
    protected function dispatchToRouter()
Arguments
  1. Closure($request) {#44 …4}
    
/var/www/html/purr/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.
     *
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    
/var/www/html/purr/public/index.php
*/
 
$app = require_once __DIR__.'/../bootstrap/app.php';
 
/*
|--------------------------------------------------------------------------
| Run The Application
|--------------------------------------------------------------------------
|
| Once we have the application, we can handle the incoming request
| through the kernel, and send the associated response back to
| the client's browser allowing them to enjoy the creative
| and wonderful application we have prepared for them.
|
*/
 
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
 
$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);
 
$response->send();
 
$kernel->terminate($request, $response);
 
Arguments
  1. Request {#43
      #json: null
      #convertedFiles: null
      #userResolver: Closure($guard = null) {#226 …5}
      #routeResolver: Closure() {#228 …5}
      +attributes: ParameterBag {#45}
      +request: ParameterBag {#51}
      +query: ParameterBag {#51}
      +server: ServerBag {#47}
      +files: FileBag {#48}
      +cookies: ParameterBag {#46}
      +headers: HeaderBag {#49}
      #content: null
      #languages: null
      #charsets: null
      #encodings: null
      #acceptableContentTypes: array:1 [
        0 => "*/*"
      ]
      #pathInfo: "/registry"
      #requestUri: "/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
      #baseUrl: ""
      #basePath: null
      #method: "GET"
      #format: null
      #session: Store {#282}
      #locale: null
      #defaultLocale: "en"
      -isHostValid: true
      -isForwardedValid: true
      basePath: ""
      format: "html"
    }
    

Environment & details:

Key Value
subject
array:1 [
  1 => "Botany"
]
page
"1"
type
array:1 [
  0 => "dataset"
]
creator
array:3 [
  0 => "Alemu Tirfessa"
  1 => "Adane Gebreyohannes"
  2 => "Habte Nida"
]
empty
empty
empty
empty
Key Value
USER
"www-data"
HOME
"/var/www"
HTTP_HOST
"purr.lib.purdue.edu"
HTTP_USER_AGENT
"claudebot"
HTTP_ACCEPT
"*/*"
REDIRECT_STATUS
"200"
SERVER_NAME
"purr.lib.purdue.edu"
SERVER_PORT
"443"
SERVER_ADDR
"128.210.126.113"
REMOTE_PORT
"38804"
REMOTE_ADDR
"54.242.220.142"
SERVER_SOFTWARE
"nginx/1.14.0"
GATEWAY_INTERFACE
"CGI/1.1"
HTTPS
"on"
REQUEST_SCHEME
"https"
SERVER_PROTOCOL
"HTTP/1.1"
DOCUMENT_ROOT
"/var/www/html/purr/public"
DOCUMENT_URI
"/index.php"
REQUEST_URI
"/registry?subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
SCRIPT_NAME
"/index.php"
CONTENT_LENGTH
""
CONTENT_TYPE
""
REQUEST_METHOD
"GET"
QUERY_STRING
"subject%5B1%5D=Botany&page=1&type%5B0%5D=dataset&creator%5B0%5D=Alemu%20Tirfessa&creator%5B1%5D=Adane%20Gebreyohannes&creator%5B2%5D=Habte%20Nida"
SCRIPT_FILENAME
"/var/www/html/purr/public/index.php"
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1712731438.4177
REQUEST_TIME
1712731438
APP_NAME
"PURR"
APP_ENV
"production"
APP_KEY
"base64:JRPtO7U1nOKYSi1sT1k+0czNVvWkIf2oplAjIacN55I="
APP_DEBUG
"true"
APP_URL
"https://purr.lib.purdue.edu"
LOG_CHANNEL
"stack"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"homestead"
DB_USERNAME
"homestead"
DB_PASSWORD
"secret"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
QUEUE_CONNECTION
"sync"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
"libmail.lib.purdue.edu"
MAIL_PORT
"25"
MAIL_USERNAME
"null"
MAIL_PASSWORD
"null"
MAIL_ENCRYPTION
"null"
MAIL_FROM_ADDRESS
"purr@purdue.edu"
MAIL_FROM_NAME
"PURR_Registry"
AWS_ACCESS_KEY_ID
""
AWS_SECRET_ACCESS_KEY
""
AWS_DEFAULT_REGION
"us-east-1"
AWS_BUCKET
""
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
MIX_PUSHER_APP_KEY
""
MIX_PUSHER_APP_CLUSTER
"mt1"
ELASTICSEARCH_HOST
"lib-es.lib.purdue.edu"
ELASTICSEARCH_PORT
"9200"
ELASTICSEARCH_SCHEME
"https"
ELASTICSEARCH_USER
""
ELASTICSEARCH_PASS
""
PRODCUTION_DOI_SERVICE_CREDENTIAL
"PURDUE.PURDUELIB:#BoilerLib1869!#"
DEV_DOI_SERVICE_CREDENTIAL
"PURDUE.DDCC:Purduedatacite2018"
Key Value
APP_NAME
"PURR"
APP_ENV
"production"
APP_KEY
"base64:JRPtO7U1nOKYSi1sT1k+0czNVvWkIf2oplAjIacN55I="
APP_DEBUG
"true"
APP_URL
"https://purr.lib.purdue.edu"
LOG_CHANNEL
"stack"
DB_CONNECTION
"mysql"
DB_HOST
"127.0.0.1"
DB_PORT
"3306"
DB_DATABASE
"homestead"
DB_USERNAME
"homestead"
DB_PASSWORD
"secret"
BROADCAST_DRIVER
"log"
CACHE_DRIVER
"file"
QUEUE_CONNECTION
"sync"
SESSION_DRIVER
"file"
SESSION_LIFETIME
"120"
REDIS_HOST
"127.0.0.1"
REDIS_PASSWORD
"null"
REDIS_PORT
"6379"
MAIL_DRIVER
"smtp"
MAIL_HOST
"libmail.lib.purdue.edu"
MAIL_PORT
"25"
MAIL_USERNAME
"null"
MAIL_PASSWORD
"null"
MAIL_ENCRYPTION
"null"
MAIL_FROM_ADDRESS
"purr@purdue.edu"
MAIL_FROM_NAME
"PURR_Registry"
AWS_ACCESS_KEY_ID
""
AWS_SECRET_ACCESS_KEY
""
AWS_DEFAULT_REGION
"us-east-1"
AWS_BUCKET
""
PUSHER_APP_ID
""
PUSHER_APP_KEY
""
PUSHER_APP_SECRET
""
PUSHER_APP_CLUSTER
"mt1"
MIX_PUSHER_APP_KEY
""
MIX_PUSHER_APP_CLUSTER
"mt1"
ELASTICSEARCH_HOST
"lib-es.lib.purdue.edu"
ELASTICSEARCH_PORT
"9200"
ELASTICSEARCH_SCHEME
"https"
ELASTICSEARCH_USER
""
ELASTICSEARCH_PASS
""
PRODCUTION_DOI_SERVICE_CREDENTIAL
"PURDUE.PURDUELIB:#BoilerLib1869!#"
DEV_DOI_SERVICE_CREDENTIAL
"PURDUE.DDCC:Purduedatacite2018"
0. Whoops\Handler\PrettyPageHandler