ErrorException (E_NOTICE)
Undefined index: classname ErrorException thrown with message "Undefined index: classname" Stacktrace: #6 ErrorException in /web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php:81 #5 Skeleton\Error\Handler:handle_error in /web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php:81 #4 Skeleton\Pager\Web\Pager:page in /web/lionel/123carlens.com/www/app/front/module/shop.php:52 #3 Web_Module_Shop:display in /web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Module.php:106 #2 Skeleton\Core\Web\Module:handle_request in /web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Module.php:72 #1 Skeleton\Core\Web\Module:accept_request in /web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Handler.php:160 #0 Skeleton\Core\Web\Handler:run in /web/lionel/123carlens.com/www/webroot/handler.php:12
Stack frames (7)
6
ErrorException
/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php81
5
Skeleton\Error\Handler handle_error
/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php81
4
Skeleton\Pager\Web\Pager page
/web/lionel/123carlens.com/www/app/front/module/shop.php52
3
Web_Module_Shop display
/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Module.php106
2
Skeleton\Core\Web\Module handle_request
/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Module.php72
1
Skeleton\Core\Web\Module accept_request
/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Handler.php160
0
Skeleton\Core\Web\Handler run
/web/lionel/123carlens.com/www/webroot/handler.php12
/web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php
        $template->assign('pager', $this);
        return $template->render(\Skeleton\Pager\Config::$header_template, false);
    }
 
    /**
     * Paginate the results
     *
     * @access private
     */
    public function page($all = false) {
        $pager_uri_key = $this->get_pager_uri_key();
 
        if ($_SERVER['REQUEST_METHOD'] != 'POST') {
            if (!isset($_GET['q']) AND isset($_SESSION['pager'][$pager_uri_key]) AND Config::$sticky_pager) {
                $this->options = array_replace_recursive($this->options, $this->get_options_from_hash($_SESSION['pager'][$pager_uri_key]));
            } elseif (isset($_GET['q'])) {
                $query_options = $this->get_options_from_hash($_GET['q']);
 
                // If multiple pagers exist on the same page, only load the options of the one with the same classname
                if ($query_options['classname'] == $this->classname) {
                    unset($this->options['conditions']);
                     $this->options = array_replace_recursive($this->options, $this->get_options_from_hash($_GET['q']));
                }
            }
        }
 
        if (isset($_GET['p'])) {
            $this->set_page($_GET['p']);
        }
 
        parent::page($all);
        $this->generate_links();
        $hash = $this->create_options_hash($this->options['conditions'], $this->options['page'], $this->options['sort'], $this->options['direction'], $this->options['joins']);
 
        if (Config::$sticky_pager) {
            $_SESSION['pager'][$pager_uri_key] = $hash;
        }
    }
 
    /**
Arguments
  1. "Undefined index: classname"
    
/web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php
        $template->assign('pager', $this);
        return $template->render(\Skeleton\Pager\Config::$header_template, false);
    }
 
    /**
     * Paginate the results
     *
     * @access private
     */
    public function page($all = false) {
        $pager_uri_key = $this->get_pager_uri_key();
 
        if ($_SERVER['REQUEST_METHOD'] != 'POST') {
            if (!isset($_GET['q']) AND isset($_SESSION['pager'][$pager_uri_key]) AND Config::$sticky_pager) {
                $this->options = array_replace_recursive($this->options, $this->get_options_from_hash($_SESSION['pager'][$pager_uri_key]));
            } elseif (isset($_GET['q'])) {
                $query_options = $this->get_options_from_hash($_GET['q']);
 
                // If multiple pagers exist on the same page, only load the options of the one with the same classname
                if ($query_options['classname'] == $this->classname) {
                    unset($this->options['conditions']);
                     $this->options = array_replace_recursive($this->options, $this->get_options_from_hash($_GET['q']));
                }
            }
        }
 
        if (isset($_GET['p'])) {
            $this->set_page($_GET['p']);
        }
 
        parent::page($all);
        $this->generate_links();
        $hash = $this->create_options_hash($this->options['conditions'], $this->options['page'], $this->options['sort'], $this->options['direction'], $this->options['joins']);
 
        if (Config::$sticky_pager) {
            $_SESSION['pager'][$pager_uri_key] = $hash;
        }
    }
 
    /**
Arguments
  1. 8
    
  2. "Undefined index: classname"
    
  3. "/web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-pager/lib/Skeleton/Pager/Web/Pager.php"
    
  4. 81
    
  5. array:3 [
      "all" => false
      "pager_uri_key" => "YXJ0aWNsZS8vc2hvcD9ubA=="
      "query_options" => array:1 [
        "conditions" => []
      ]
    ]
    
/web/lionel/123carlens.com/www/app/front/module/shop.php
     * Display method
     *
     * @access public
     */
    public function display() {
        $template = Template::get();
 
        $categories = Category::get_all();
        if (isset($_GET['category_id'])) {
            $current_category = Category::get_by_id($_GET['category_id']);
        } else {
            $categories = Category::get_root();
            $current_category = array_shift($categories);
        }
 
        $pager = new Pager('article');
        if (isset($_GET['category_id']) && empty($_GET['category_id']) == false) {
            $pager->add_condition('category_id', '=', $_GET['category_id']);
        }
        $pager->page();
 
        $template->assign('pager', $pager);
        $template->assign('current_category', $current_category);
    }
}
 
/web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Module.php
        $application = Application::Get();
        $path = '/' . str_replace($application->module_path, '', $reflection->getFileName());
        $path = str_replace('.php', '', $path);
        return $path;
    }
 
    /**
     * Handle the request
     *
     * @access public
     */
    public function handle_request() {
        $template = \Skeleton\Core\Web\Template::Get();
 
        // Find out which method to call, fall back to calling displa()
        if (isset($_REQUEST['action']) AND method_exists($this, 'display_' . $_REQUEST['action'])) {
            $template->assign('action', $_REQUEST['action']);
            call_user_func([$this, 'display_'.$_REQUEST['action']]);
        } else {
            $this->display();
        }
 
        // If the module has defined a template, render it
        if ($this->template !== null and $this->template !== false) {
            $template->display($this->template);
        }
    }
 
    /**
     * Is login required?
     *
     * @access public
     */
    public function is_login_required() {
        return $this->login_required;
    }
 
    /**
     * Get the classname of the current module
     *
/web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Module.php
            $allowed = $this->secure();
        }
 
        // If the request is not allowed, make sure it gets handled properly
        if ($allowed === false) {
            $module_403 = strtolower(\Skeleton\Core\Config::$module_403);
 
            // Always check if it can not be handled by an event first
            if ($application->event_exists('module', 'access_denied')) {
                $application->call_event_if_exists('module', 'access_denied', [ $this ]);
            } elseif ($module_403 !== null and file_exists($application->module_path . '/' . $module_403 . '.php')) {
                require $application->module_path . '/' . $module_403 . '.php';
                $classname = 'Web_Module_' . $module_403;
                $module = new $classname;
                $module->accept_request();
            } else {
                throw new \Exception('Access denied');
            }
        } else {
            $this->handle_request();
        }
 
        // Call the teardown event if it exists
        $application->call_event_if_exists('application', 'teardown', [ $this ]);
    }
 
    /**
     * get module_path
     *
     * @access public
     * @return string $path
     */
    public function get_module_path() {
        $reflection = new \ReflectionClass($this);
        $application = Application::Get();
        $path = '/' . str_replace($application->module_path, '', $reflection->getFileName());
        $path = str_replace('.php', '', $path);
        return $path;
    }
 
/web/lionel/123carlens.com/www/lib/external/packages/tigron/skeleton-core/lib/Skeleton/Core/Web/Handler.php
                }
            }
            $application->language = $_SESSION['language'];
        }
 
        /**
         * Validate CSRF
         */
        $csrf = Security\Csrf::get();
 
        if ($session_properties['resumed'] === true && !$csrf->validate()) {
            if ($application->event_exists('security', 'csrf_validation_failed')) {
                $application->call_event_if_exists('security', 'csrf_validation_failed');
            } else {
                HTTP\Status::code_403('CSRF validation failed');
            }
        }
 
        if ($module !== null) {
            $module->accept_request();
        }
    }
}
 
/web/lionel/123carlens.com/www/webroot/handler.php
<?php
/**
 * Initialize the application
 *
 * @author Christophe Gosiau <christophe@tigron.be>
 * @author Gerry Demaret <gerry@tigron.be>
 * @author David Vandemaele <david@tigron.be>
 */
 
require_once dirname(__FILE__) . '/../config/global.php';
 
\Skeleton\Core\Web\Handler::Run();
 

Environment & details:

Key Value
q
"H4sIAAAAAAAAAyXLMQqAMAwF0Lv8uZtbryIOIS0SiYk0dRLvbov7ew9YKcLorMig1oW1IoHdinRxC R1S7hoH2BJCG8d2W7VhCKt8kSzBo92uPzj/QCjKxmMWQAAAA=="
language
"nl"
empty
empty
empty
Key Value
language
Skeleton\I18n\Language {#17}
pager
[]
Key Value
TMPDIR
"/tigron/var/tmp/"
PHP_INI_SCAN_DIR
"/web/lionel/"
PATH
"/usr/local/bin:/bin:/usr/bin"
HTTP_ACCEPT
"*/*"
HTTP_CONNECTION
"close"
HTTP_HOST
"123carlens.com"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_X_FORWARDED_FOR
"52.15.71.15"
HTTP_X_FORWARDED_PROTO
"https"
HTTP_X_BALANCED_BY
"lb2.web.tigron.net"
DOCUMENT_ROOT
"/web/lionel/123carlens.com/www/webroot"
REMOTE_ADDR
"52.15.71.15"
REMOTE_PORT
"58770"
SERVER_ADDR
"10.10.11.95"
SERVER_NAME
"123carlens.com"
SERVER_ADMIN
""
SERVER_PORT
"443"
REQUEST_SCHEME
"https"
REQUEST_URI
"/shop?q=H4sIAAAAAAAAAyXLMQqAMAwF0Lv8uZtbryIOIS0SiYk0dRLvbov7ew9YKcLorMig1oW1IoHdinRxC+R1S7hoH2BJCG8d2W7VhCKt8kSzBo92uPzj/QCjKxmMWQAAAA==&language=nl"
REDIRECT_URL
"/shop"
REDIRECT_QUERY_STRING
"q=H4sIAAAAAAAAAyXLMQqAMAwF0Lv8uZtbryIOIS0SiYk0dRLvbov7ew9YKcLorMig1oW1IoHdinRxC+R1S7hoH2BJCG8d2W7VhCKt8kSzBo92uPzj/QCjKxmMWQAAAA==&language=nl"
REDIRECT_REQUEST_METHOD
"GET"
PROXY_REMOTE_ADDR
"10.10.11.72"
HTTPS
"on"
REDIRECT_STATUS
"200"
SCRIPT_FILENAME
"/web/lionel/123carlens.com/www/webroot/handler.php"
QUERY_STRING
"q=H4sIAAAAAAAAAyXLMQqAMAwF0Lv8uZtbryIOIS0SiYk0dRLvbov7ew9YKcLorMig1oW1IoHdinRxC+R1S7hoH2BJCG8d2W7VhCKt8kSzBo92uPzj/QCjKxmMWQAAAA==&language=nl"
SCRIPT_URI
"https://123carlens.com/shop"
SCRIPT_URL
"/shop"
SCRIPT_NAME
"/handler.php"
SERVER_PROTOCOL
"HTTP/1.0"
SERVER_SOFTWARE
"LiteSpeed"
REQUEST_METHOD
"GET"
X-LSCACHE
"on"
PHP_SELF
"/handler.php"
REQUEST_TIME_FLOAT
1713548464.2866
REQUEST_TIME
1713548464
empty
0. Whoops\Handler\PlainTextHandler
1. Whoops\Handler\PrettyPageHandler