Twig \ Error \ RuntimeError
An exception has been thrown during the rendering of a template ("SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist").
Previous exceptions
  • SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist (0)
  • SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist (42S02)
Twig\Error\RuntimeError thrown with message "An exception has been thrown during the rendering of a template ("SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist")." Stacktrace: #33 Twig\Error\RuntimeError in /home/kk/web/foss.it360.site/public_html/modules/Kb/html_client/mod_kb_index.html.twig:12 #32 Box\Mod\Kb\Controller\Client:get_kb in [internal]:0 #31 RedBeanPHP\RedException\SQL in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:206 #30 Box\Mod\Kb\Controller\Client:get_kb in [internal]:0 #29 PDOException in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:181 #28 PDOStatement:execute in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:181 #27 RedBeanPHP\Driver\RPDO:runQuery in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:543 #26 RedBeanPHP\Driver\RPDO:GetAll in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Adapter/DBAdapter.php:118 #25 RedBeanPHP\Adapter\DBAdapter:get in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php:175 #24 RedBeanPHP\Facade:query in /home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php:1242 #23 RedBeanPHP\Facade:getAll in /home/kk/web/foss.it360.site/public_html/library/Box/Database.php:56 #22 Box_Database:getAll in /home/kk/web/foss.it360.site/public_html/library/Box/Pagination.php:85 #21 Box_Pagination:getAdvancedResultSet in /home/kk/web/foss.it360.site/public_html/modules/Kb/Api/Guest.php:88 #20 Box\Mod\Kb\Api\Guest:category_get_list in /home/kk/web/foss.it360.site/public_html/library/Api/Handler.php:111 #19 Api_Handler:__call in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Extension/CoreExtension.php:1635 #18 twig_get_attribute in /home/kk/web/foss.it360.site/public_html/data/cache/29/29124df73375fe7bd340468fb7b8b838.php:83 #17 __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f:block_content in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:171 #16 Twig\Template:displayBlock in /home/kk/web/foss.it360.site/public_html/data/cache/b0/b0218a665b0927d012966dc5cc6e49a7.php:636 #15 __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915:block_body in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:171 #14 Twig\Template:displayBlock in /home/kk/web/foss.it360.site/public_html/data/cache/b0/b0218a665b0927d012966dc5cc6e49a7.php:184 #13 __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915:doDisplay in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:394 #12 Twig\Template:displayWithErrorHandling in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:367 #11 Twig\Template:display in /home/kk/web/foss.it360.site/public_html/data/cache/29/29124df73375fe7bd340468fb7b8b838.php:44 #10 __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f:doDisplay in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:394 #9 Twig\Template:displayWithErrorHandling in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:367 #8 Twig\Template:display in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php:379 #7 Twig\Template:render in /home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/TemplateWrapper.php:40 #6 Twig\TemplateWrapper:render in /home/kk/web/foss.it360.site/public_html/library/Box/AppClient.php:83 #5 Box_AppClient:render in /home/kk/web/foss.it360.site/public_html/modules/Kb/Controller/Client.php:36 #4 Box\Mod\Kb\Controller\Client:get_kb in [internal]:0 #3 ReflectionMethod:invokeArgs in /home/kk/web/foss.it360.site/public_html/library/Box/App.php:212 #2 Box_App:executeShared in /home/kk/web/foss.it360.site/public_html/library/Box/App.php:364 #1 Box_App:processRequest in /home/kk/web/foss.it360.site/public_html/library/Box/App.php:153 #0 Box_App:run in /home/kk/web/foss.it360.site/public_html/index.php:64
Stack frames (34)
33
Twig\Error\RuntimeError
/modules/Kb/html_client/mod_kb_index.html.twig12
32
Box\Mod\Kb\Controller\Client get_kb
[internal]0
31
RedBeanPHP\RedException\SQL
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php206
30
Box\Mod\Kb\Controller\Client get_kb
[internal]0
29
PDOException
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php181
28
PDOStatement execute
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php181
27
RedBeanPHP\Driver\RPDO runQuery
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php543
26
RedBeanPHP\Driver\RPDO GetAll
/vendor/gabordemooij/redbean/RedBeanPHP/Adapter/DBAdapter.php118
25
RedBeanPHP\Adapter\DBAdapter get
/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php175
24
RedBeanPHP\Facade query
/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php1242
23
RedBeanPHP\Facade getAll
/library/Box/Database.php56
22
Box_Database getAll
/library/Box/Pagination.php85
21
Box_Pagination getAdvancedResultSet
/modules/Kb/Api/Guest.php88
20
Box\Mod\Kb\Api\Guest category_get_list
/library/Api/Handler.php111
19
Api_Handler __call
/vendor/twig/twig/src/Extension/CoreExtension.php1635
18
twig_get_attribute
/data/cache/29/29124df73375fe7bd340468fb7b8b838.php83
17
__TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f block_content
/vendor/twig/twig/src/Template.php171
16
Twig\Template displayBlock
/data/cache/b0/b0218a665b0927d012966dc5cc6e49a7.php636
15
__TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 block_body
/vendor/twig/twig/src/Template.php171
14
Twig\Template displayBlock
/data/cache/b0/b0218a665b0927d012966dc5cc6e49a7.php184
13
__TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 doDisplay
/vendor/twig/twig/src/Template.php394
12
Twig\Template displayWithErrorHandling
/vendor/twig/twig/src/Template.php367
11
Twig\Template display
/data/cache/29/29124df73375fe7bd340468fb7b8b838.php44
10
__TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f doDisplay
/vendor/twig/twig/src/Template.php394
9
Twig\Template displayWithErrorHandling
/vendor/twig/twig/src/Template.php367
8
Twig\Template display
/vendor/twig/twig/src/Template.php379
7
Twig\Template render
/vendor/twig/twig/src/TemplateWrapper.php40
6
Twig\TemplateWrapper render
/library/Box/AppClient.php83
5
Box_AppClient render
/modules/Kb/Controller/Client.php36
4
Box\Mod\Kb\Controller\Client get_kb
[internal]0
3
ReflectionMethod invokeArgs
/library/Box/App.php212
2
Box_App executeShared
/library/Box/App.php364
1
Box_App processRequest
/library/Box/App.php153
0
Box_App run
/index.php64
/home/kk/web/foss.it360.site/public_html/modules/Kb/html_client/mod_kb_index.html.twig
{% extends request.ajax ? "layout_blank.html.twig" : "layout_default.html.twig" %}
 
{% block meta_title %}{{ 'Knowledge base'|trans }}{% endblock %}
 
{% block body_class %}kb-index{% endblock %}
{% block breadcrumb %}{{ 'Knowledge base'|trans }}{% endblock %}
 
{% block content %}
    {% if request.q %}
        {% set kbcategories = guest.kb_category_get_list({ "q": request.q }) %}
    {% else %}
        {% set kbcategories = guest.kb_category_get_list %}
    {% endif %}
 
<div class="content-block" role="main">
    <div class="row">
        <article class=" span12 data-block">
            <div class="data-container">
                <header>
                    <h1>{{ 'Knowledge base'|trans }}</h1><br/>
                    {{ 'Please try to read related topics in knowledge base before contacting support.'|trans }}
                    <form method="get" action="" class="form form-search pull-right" style="background: none; border: 0px">
                        <input type="hidden" name="CSRFToken" value="{{ CSRFToken }}"/>
                        <p>
                            <input class="" name="_url" type="hidden" value="/kb">
                            <input class="search-query text" name="q" type="text" value="{{ request.q }}" placeholder="{{ 'What are you looking for?'|trans }}">
                            <input class="btn btn-primary" value="{{ 'Search'|trans }}" type="submit">
                        </p>
                    </form>
                </header>
                <section>
 
                    <div class="row" >
                        {% for i, category in kbcategories.list %}
                        <article class="data-block">
                            <div class="data-container">
                                <header>
                                    <h2 id="category-{{category.id}}">
                                        <a href="{{ 'kb'|link }}/{{ category.slug }}">{{ category.title }}</a>
                                    </h2>
Arguments
  1. "An exception has been thrown during the rendering of a template ("SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist")."
    
[internal]
Arguments
  1. Box_AppClient {#53}
    
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php
            }
            if ( $statement->columnCount() ) {
                $fetchStyle = ( isset( $options['fetchStyle'] ) ) ? $options['fetchStyle'] : NULL;
                if ( is_null( $fetchStyle) ) {
                    $this->resultArray = $statement->fetchAll();
                } else {
                    $this->resultArray = $statement->fetchAll( $fetchStyle );
                }
                if ( $this->loggingEnabled && $this->logger ) {
                    $this->logger->log( 'resultset: ' . count( $this->resultArray ) . ' rows' );
                }
            } else {
                $this->resultArray = array();
            }
        } catch ( \PDOException $e ) {
            //Unfortunately the code field is supposed to be int by default (php)
            //So we need a property to convey the SQL State code.
            $err = $e->getMessage();
            if ( $this->loggingEnabled && $this->logger ) $this->logger->log( 'An error occurred: ' . $err );
            $exception = new SQL( $err, 0, $e );
            $exception->setSQLState( $e->getCode() );
            $exception->setDriverDetails( $e->errorInfo );
            throw $exception;
        }
    }
 
    /**
     * Try to fix MySQL character encoding problems.
     * MySQL < 5.5.3 does not support proper 4 byte unicode but they
     * seem to have added it with version 5.5.3 under a different label: utf8mb4.
     * We try to select the best possible charset based on your version data.
     *
     * @return void
     */
    protected function setEncoding()
    {
        $driver = $this->pdo->getAttribute( \PDO::ATTR_DRIVER_NAME );
        if ($driver === 'mysql') {
            $charset = $this->hasCap( 'utf8mb4' ) ? 'utf8mb4' : 'utf8';
            $collate = $this->hasCap( 'utf8mb4_520' ) ? '_unicode_520_ci' : '_unicode_ci';
Arguments
  1. "SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist"
    
Exception message: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist
[internal]
Arguments
  1. Box_AppClient {#53}
    
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php
     * @throws SQL
     */
    public function runQuery( $sql, $bindings, $options = array() )
    {
        $this->connect();
        if ( $this->loggingEnabled && $this->logger ) {
            $this->logger->log( $sql, $bindings );
        }
        try {
            if ( strpos( 'pgsql', $this->dsn ) === 0 ) {
                if (defined('\\PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT')) {
                             $statement = @$this->pdo->prepare($sql, array(\PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => TRUE));
                         } else {
                             $statement = $this->pdo->prepare($sql);
                         }
            } else {
                $statement = $this->pdo->prepare( $sql );
            }
            $this->bindParams( $statement, $bindings );
            $statement->execute();
            $this->queryCounter ++;
            $this->affectedRows = $statement->rowCount();
            if ( isset( $options['noFetch'] ) && $options['noFetch'] ) {
                $this->resultArray = array();
                return $statement;
            }
            if ( $statement->columnCount() ) {
                $fetchStyle = ( isset( $options['fetchStyle'] ) ) ? $options['fetchStyle'] : NULL;
                if ( is_null( $fetchStyle) ) {
                    $this->resultArray = $statement->fetchAll();
                } else {
                    $this->resultArray = $statement->fetchAll( $fetchStyle );
                }
                if ( $this->loggingEnabled && $this->logger ) {
                    $this->logger->log( 'resultset: ' . count( $this->resultArray ) . ' rows' );
                }
            } else {
                $this->resultArray = array();
            }
        } catch ( \PDOException $e ) {
Arguments
  1. "SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist"
    
Exception message: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'kk_fossbilling.kb_article_category' doesn't exist
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php
     * @throws SQL
     */
    public function runQuery( $sql, $bindings, $options = array() )
    {
        $this->connect();
        if ( $this->loggingEnabled && $this->logger ) {
            $this->logger->log( $sql, $bindings );
        }
        try {
            if ( strpos( 'pgsql', $this->dsn ) === 0 ) {
                if (defined('\\PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT')) {
                             $statement = @$this->pdo->prepare($sql, array(\PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT => TRUE));
                         } else {
                             $statement = $this->pdo->prepare($sql);
                         }
            } else {
                $statement = $this->pdo->prepare( $sql );
            }
            $this->bindParams( $statement, $bindings );
            $statement->execute();
            $this->queryCounter ++;
            $this->affectedRows = $statement->rowCount();
            if ( isset( $options['noFetch'] ) && $options['noFetch'] ) {
                $this->resultArray = array();
                return $statement;
            }
            if ( $statement->columnCount() ) {
                $fetchStyle = ( isset( $options['fetchStyle'] ) ) ? $options['fetchStyle'] : NULL;
                if ( is_null( $fetchStyle) ) {
                    $this->resultArray = $statement->fetchAll();
                } else {
                    $this->resultArray = $statement->fetchAll( $fetchStyle );
                }
                if ( $this->loggingEnabled && $this->logger ) {
                    $this->logger->log( 'resultset: ' . count( $this->resultArray ) . ' rows' );
                }
            } else {
                $this->resultArray = array();
            }
        } catch ( \PDOException $e ) {
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php
        if ($runInitCode) {
            /* run initialisation query if any */
            if ( $this->initSQL !== NULL ) {
                $this->Execute( $this->initSQL );
                $this->initSQL = NULL;
            }
            if ( $this->initCode !== NULL ) {
                $code = $this->initCode;
                $code( $this->pdo->getAttribute( \PDO::ATTR_SERVER_VERSION ) );
            }
        }
        if ($setDSNString) $this->dsn = $this->getDatabaseType();
    }
 
    /**
     * @see Driver::GetAll
     */
    public function GetAll( $sql, $bindings = array() )
    {
        $this->runQuery( $sql, $bindings );
        return $this->resultArray;
    }
 
    /**
     * @see Driver::GetAssocRow
     */
    public function GetAssocRow( $sql, $bindings = array() )
    {
        $this->runQuery( $sql, $bindings, array(
                'fetchStyle' => \PDO::FETCH_ASSOC
            )
        );
        return $this->resultArray;
    }
 
    /**
     * @see Driver::GetCol
     */
    public function GetCol( $sql, $bindings = array() )
    {
Arguments
  1. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  2. array:1 [
      ":status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Adapter/DBAdapter.php
     */
    public function exec( $sql, $bindings = array(), $noevent = FALSE )
    {
        if ( !$noevent ) {
            $this->sql = $sql;
            $this->signal( 'sql_exec', $this );
        }
 
        return $this->db->Execute( $sql, $bindings );
    }
 
    /**
     * @see Adapter::get
     */
    public function get( $sql, $bindings = array() )
    {
        $this->sql = $sql;
        $this->signal( 'sql_exec', $this );
 
        return $this->db->GetAll( $sql, $bindings );
    }
 
    /**
     * @see Adapter::getRow
     */
    public function getRow( $sql, $bindings = array() )
    {
        $this->sql = $sql;
        $this->signal( 'sql_exec', $this );
 
        return $this->db->GetRow( $sql, $bindings );
    }
 
    /**
     * @see Adapter::getCol
     */
    public function getCol( $sql, $bindings = array() )
    {
        $this->sql = $sql;
        $this->signal( 'sql_exec', $this );
Arguments
  1. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  2. array:1 [
      ":status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php
        if ( !self::$redbean->isFrozen() ) {
            try {
                $rs = Facade::$adapter->$method( $sql, $bindings );
            } catch ( SQLException $exception ) {
                if ( self::$writer->sqlStateIn( $exception->getSQLState(),
                    array(
                        QueryWriter::C_SQLSTATE_NO_SUCH_COLUMN,
                        QueryWriter::C_SQLSTATE_NO_SUCH_TABLE )
                    ,$exception->getDriverDetails()
                    )
                ) {
                    return ( $method === 'getCell' ) ? NULL : array();
                } else {
                    throw $exception;
                }
            }
 
            return $rs;
        } else {
            return Facade::$adapter->$method( $sql, $bindings );
        }
    }
 
    /**
     * Sets allow hybrid mode flag. In Hybrid mode (default off),
     * store/storeAll take an extra argument to switch to fluid
     * mode in case of an exception. You can use this to speed up
     * fluid mode. This method returns the previous value of the
     * flag.
     *
     * @param boolean $hybrid
     *
     * @return bool
     */
    public static function setAllowHybridMode( $hybrid )
    {
        $old = self::$allowHybridMode;
        self::$allowHybridMode = $hybrid;
        return $old;
    }
Arguments
  1. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  2. array:1 [
      ":status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php
    {
        return self::query( 'exec', $sql, $bindings );
    }
 
    /**
     * Convenience function to fire an SQL query using the RedBeanPHP
     * database adapter. This method allows you to directly query the
     * database without having to obtain an database adapter instance first.
     * Executes the specified SQL query together with the specified
     * parameter bindings and returns all rows
     * and all columns.
     *
     * @param string $sql      SQL query to execute
     * @param array  $bindings a list of values to be bound to query parameters
     *
     * @return string[][]
     */
    public static function getAll( $sql, $bindings = array() )
    {
        return self::query( 'get', $sql, $bindings );
    }
 
    /**
     * Convenience function to fire an SQL query using the RedBeanPHP
     * database adapter. This method allows you to directly query the
     * database without having to obtain an database adapter instance first.
     * Executes the specified SQL query together with the specified
     * parameter bindings and returns a single cell.
     *
     * @param string $sql      SQL query to execute
     * @param array  $bindings a list of values to be bound to query parameters
     *
     * @return string|NULL
     */
    public static function getCell( $sql, $bindings = array() )
    {
        return self::query( 'getCell', $sql, $bindings );
    }
 
    /**
Arguments
  1. "get"
    
  2. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  3. array:1 [
      ":status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/library/Box/Database.php
        $bean = $this->orm->dispense($type);
        if ($type == $modelName) {
            return $bean;
        }
        return $bean->box();
    }
 
    public function store($modelOrBean)
    {
        if ($modelOrBean instanceof \RedBeanPHP\SimpleModel) {
            $bean = $modelOrBean->unbox();
        } else {
            $bean = $modelOrBean;
        }
        return $this->orm->store($bean);
    }
 
    public function getAll($sql, $values = array())
    {
        return $this->orm->getAll($sql, $values);
    }
 
    public function getCell($sql, $values = array())
    {
        return $this->orm->getCell($sql, $values);
    }
 
    public function getRow($sql, $values = array())
    {
        return $this->orm->getRow($sql, $values);
    }
 
    public function getAssoc($sql, $values = array())
    {
        return $this->orm->getAssoc($sql, $values);
    }
 
    public function findOne($modelName, $sql = null, $values = array())
    {
        $type = $this->_getTypeFromModelName($modelName);
Arguments
  1. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  2. array:1 [
      ":status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/library/Box/Pagination.php
            "list"              => $result,
        );
    }
 
    public function getAdvancedResultSet($q, $values, ?int $per_page = 100)
    {
        $page = $_GET['page'] ?? 1;
        $per_page = $_GET['per_page'] ?? $per_page ?? 100;
 
        if (!is_numeric($page) || $page < 1 ){
           throw new \Box_Exception('Invalid page number');
        }
        if (!is_numeric($per_page) || $per_page < 1 ){
           throw new \Box_Exception('Invalid per page number');
        }
 
        $offset = ($page - 1) * $per_page;
        $q = str_replace('SELECT ', 'SELECT SQL_CALC_FOUND_ROWS ', $q);
        $q .= sprintf(' LIMIT %u,%u', $offset, $per_page);
        $result = $this->di['db']->getAll($q, $values);
        $total = $this->di['db']->getCell('SELECT FOUND_ROWS();');
 
        $pages = ($per_page > 1) ? (int)ceil($total / $per_page) : 1;
        return array(
            "pages"             => $pages,
            "page"              => $page,
            "per_page"          => $per_page,
            "total"             => $total,
            "list"              => $result,
        );
    }
}
 
Arguments
  1. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  2. array:1 [
      ":status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/modules/Kb/Api/Guest.php
        if (!$model instanceof \Model_KbArticle) {
            throw new \Box_Exception('Article item not found');
        }
        $this->getService()->hitView($model);
 
        return $this->getService()->toApiArray($model, true, $this->getIdentity());
    }
 
    /**
     * Get paginated list of knowledge base categories.
     *
     * @return array
     */
    public function category_get_list($data)
    {
        $data['article_status'] = \Model_KbArticle::ACTIVE;
        [$query, $bindings] = $this->getService()->categoryGetSearchQuery($data);
 
        $per_page = $data['per_page'] ?? $this->di['pager']->getPer_page();
        $pager = $this->di['pager']->getAdvancedResultSet($query, $bindings, $per_page);
 
        $q = $data['q'] ?? null;
 
        foreach ($pager['list'] as $key => $item) {
            $category = $this->di['db']->getExistingModelById('KbArticleCategory', $item['id'], 'KB Article not found');
            $pager['list'][$key] = $this->getService()->categoryToApiArray($category, $this->getIdentity(), $q);
        }
 
        return $pager;
    }
 
    /**
     * Get knowledge base categories id, title pairs.
     *
     * @return array
     */
    public function category_get_pairs($data)
    {
        return $this->getService()->categoryGetPairs();
    }
Arguments
  1. """
    \n
            SELECT SQL_CALC_FOUND_ROWS kac.*\n
            FROM kb_article_category kac\n
            LEFT JOIN kb_article ka ON kac.id  = ka.kb_article_category_id WHERE ka.status = :status GROUP BY kac.id ORDER BY kac.id DESC LIMIT 0,100
    """
    
  2. array:1 [
      ":status" => "active"
    ]
    
  3. 100
    
/home/kk/web/foss.it360.site/public_html/library/Api/Handler.php
            throw new \Box_Exception('Api class must be instance of Api_Abstract', null, 730);
        }
 
        $bb_mod = $this->di['mod']($mod);
 
        $api->setDi($this->di);
        $api->setMod($bb_mod);
        $api->setIdentity($this->identity);
        $api->setIp($this->di['request']->getClientAddress());
        if($bb_mod->hasService()) {
            $api->setService($this->di['mod_service']($mod));
        }
 
        if(!method_exists($api, $method_name) || !is_callable(array($api, $method_name))) {
            $reflector = new ReflectionClass($api);
            if(!$reflector->hasMethod('__call')) {
                throw new \Box_Exception(':type API call :method does not exist in module :module', array(':type'=>ucfirst($this->type), ':method'=>$method_name,':module'=>$mod), 740);
            }
        }
        $res = $api->{$method_name}($arguments);
        if($this->_enable_cache){
            $this->_cache[$cache_key] = $res;
        }
        return $res;
    }
}
 
Arguments
  1. array:1 [
      "article_status" => "active"
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Extension/CoreExtension.php
 
        if ($ignoreStrictCheck || !$env->isStrictVariables()) {
            return;
        }
 
        throw new RuntimeError(sprintf('Neither the property "%1$s" nor one of the methods "%1$s()", "get%1$s()"/"is%1$s()"/"has%1$s()" or "__call()" exist and have public access in class "%2$s".', $item, $class), $lineno, $source);
    }
 
    if ($isDefinedTest) {
        return true;
    }
 
    if ($sandboxed) {
        $env->getExtension(SandboxExtension::class)->checkMethodAllowed($object, $method, $lineno, $source);
    }
 
    // Some objects throw exceptions when they have __call, and the method we try
    // to call is not supported. If ignoreStrictCheck is true, we should return null.
    try {
        $ret = $object->$method(...$arguments);
    } catch (\BadMethodCallException $e) {
        if ($call && ($ignoreStrictCheck || !$env->isStrictVariables())) {
            return;
        }
        throw $e;
    }
 
    return $ret;
}
 
/**
 * Returns the values from a single column in the input array.
 *
 * <pre>
 *  {% set items = [{ 'fruit' : 'apple'}, {'fruit' : 'orange' }] %}
 *
 *  {% set fruits = items|column('fruit') %}
 *
 *  {# fruits now contains ['apple', 'orange'] #}
 * </pre>
Arguments
  1. "kb_category_get_list"
    
  2. []
    
/home/kk/web/foss.it360.site/public_html/data/cache/29/29124df73375fe7bd340468fb7b8b838.php
        $macros = $this->macros;
        echo twig_escape_filter($this->env, __trans("Knowledge base"), "html", null, true);
    }
 
    // line 8
    public function block_content($context, array $blocks = [])
    {
        $macros = $this->macros;
        // line 9
        echo "    ";
        if (twig_get_attribute($this->env, $this->source, ($context["request"] ?? null), "q", [], "any", false, false, false, 9)) {
            // line 10
            echo "        ";
            $context["kbcategories"] = twig_get_attribute($this->env, $this->source, ($context["guest"] ?? null), "kb_category_get_list", [0 => ["q" => twig_get_attribute($this->env, $this->source, ($context["request"] ?? null), "q", [], "any", false, false, false, 10)]], "method", false, false, false, 10);
            // line 11
            echo "    ";
        } else {
            // line 12
            echo "        ";
            $context["kbcategories"] = twig_get_attribute($this->env, $this->source, ($context["guest"] ?? null), "kb_category_get_list", [], "any", false, false, false, 12);
            // line 13
            echo "    ";
        }
        // line 14
        echo "
<div class=\"content-block\" role=\"main\">
    <div class=\"row\">
        <article class=\" span12 data-block\">
            <div class=\"data-container\">
                <header>
                    <h1>";
        // line 20
        echo twig_escape_filter($this->env, __trans("Knowledge base"), "html", null, true);
        echo "</h1><br/>
                    ";
        // line 21
        echo twig_escape_filter($this->env, __trans("Please try to read related topics in knowledge base before contacting support."), "html", null, true);
        echo "
                    <form method=\"get\" action=\"\" class=\"form form-search pull-right\" style=\"background: none; border: 0px\">
                        <input type=\"hidden\" name=\"CSRFToken\" value=\"";
Arguments
  1. Twig\Environment {#85}
    
  2. Twig\Source {#80}
    
  3. Api_Handler {#105}
    
  4. "kb_category_get_list"
    
  5. []
    
  6. "any"
    
  7. false
    
  8. false
    
  9. false
    
  10. 12
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
    {
        if ($useBlocks && isset($blocks[$name])) {
            $template = $blocks[$name][0];
            $block = $blocks[$name][1];
        } elseif (isset($this->blocks[$name])) {
            $template = $this->blocks[$name][0];
            $block = $this->blocks[$name][1];
        } else {
            $template = null;
            $block = null;
        }
 
        // avoid RCEs when sandbox is enabled
        if (null !== $template && !$template instanceof self) {
            throw new \LogicException('A block must be a method on a \Twig\Template instance.');
        }
 
        if (null !== $template) {
            try {
                $template->$block($context, $blocks);
            } catch (Error $e) {
                if (!$e->getSourceContext()) {
                    $e->setSourceContext($template->getSourceContext());
                }
 
                // this is mostly useful for \Twig\Error\LoaderError exceptions
                // see \Twig\Error\LoaderError
                if (-1 === $e->getTemplateLine()) {
                    $e->guess();
                }
 
                throw $e;
            } catch (\Exception $e) {
                $e = new RuntimeError(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $template->getSourceContext(), $e);
                $e->guess();
 
                throw $e;
            }
        } elseif (false !== $parent = $this->getParent($context)) {
            $parent->displayBlock($name, $context, array_merge($this->blocks, $blocks), false, $templateContext ?? $this);
Arguments
  1. array:10 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
      "theme_color" => "css/huraga-green.css"
      "company" => array:17 [
        "www" => "https://foss.it360.site/"
        "name" => "IT360"
        "email" => "admin@it360.pl"
        "tel" => "+123 456 12345"
        "signature" => "FOSSBilling.org - Client Management, Invoice and Support Software"
        "logo_url" => "https://foss.it360.site/themes/huraga/assets/img/logo.svg"
        "logo_url_dark" => "https://foss.it360.site/themes/huraga/assets/img/logo_white.svg"
        "favicon_url" => "https://foss.it360.site/themes/huraga/assets/favicon.ico"
        "address_1" => "Demo address line 1"
        "address_2" => "Demo address line 2"
        "address_3" => "Demo address line 3"
        "account_number" => ""
        "number" => ""
        "note" => ""
        "privacy_policy" => """
          Ac dapibus. Rhoncus integer sit aliquam a! Natoque? Lacus porttitor rhoncus, aliquam porttitor in risus turpis adipiscing! Integer, mus mattis sed enim ac velit proin est et ut, amet eros! Hac augue et vel ac sit duis facilisis purus tincidunt, porttitor eu a penatibus rhoncus platea et mauris rhoncus magnis rhoncus, montes? Et porttitor, urna, dolor, dapibus elementum porttitor aliquam.\n
          \n
          Cras risus? Turpis, mus tincidunt vel dolor lectus pulvinar aliquam nascetur parturient nunc proin aenean tortor, augue aenean ac penatibus vut arcu. Augue, aenean dapibus in nec. In tempor turpis dictumst cursus, nec eros, elit non, ut integer magna. Augue placerat magnis facilisis platea ridiculus tincidunt et ut porttitor! Cursus odio, aliquet purus tristique vel tempor urna, vut enim.\n
          \n
          Porta habitasse scelerisque elementum adipiscing elit pulvinar? Cursus! Turpis! Massa ac elementum a, facilisis eu, sed ac porta massa sociis nascetur rhoncus sed, scelerisque habitasse aliquam? Velit adipiscing turpis, risus ut duis non integer rhoncus, placerat eu adipiscing, hac? Integer cursus porttitor rhoncus turpis lundium nisi, velit? Arcu tincidunt turpis, nunc integer turpis! Ridiculus enim natoque in, eros odio.\n
          \n
          Scelerisque tempor dolor magnis natoque cras nascetur lorem, augue habitasse ac ut mid rhoncus? Montes tristique arcu, nisi integer? Augue? Adipiscing tempor parturient elementum nunc? Amet mid aliquam penatibus. Aliquam proin, parturient vel parturient dictumst? A porttitor rhoncus, a sit egestas massa tincidunt! Nunc purus. Hac ac! Enim placerat augue cursus augue sociis cum cras, pulvinar placerat nec platea.\n
          \n
          Penatibus et duis, urna. Massa cum porttitor elit porta, natoque etiam et turpis placerat lacus etiam scelerisque nunc, egestas, urna non tincidunt cursus odio urna tempor dictumst dignissim habitasse. Mus non et, nisi purus, pulvinar natoque in vel nascetur. Porttitor phasellus sed aenean eu quis? Nec vel, dignissim magna placerat turpis, ridiculus cum est auctor, sagittis, sit scelerisque duis.
          """
        "tos" => """
          Sit ridiculus nascetur porta purus tortor, augue natoque, pulvinar integer nisi mattis dignissim mus, elementum nascetur, augue etiam. Mus mus tortor? A mauris habitasse dictumst, scelerisque, dis nec pulvinar magnis velit, integer, nisi, aliquet, elit phasellus? Parturient odio purus tristique porttitor augue diam pulvinar magna ac lacus in. Augue tincidunt sociis ultrices parturient aliquet dapibus sit. Pulvinar mauris platea in amet penatibus augue ut non ridiculus, nunc lundium. Duis dapibus a mid proin pellentesque lundium vut mauris egestas dolor nec? Diam eu duis sociis. Dapibus porta! Proin, turpis nascetur et. Aenean tristique eu in elit dolor, montes sit nec, magna amet montes, hac diam ac, pellentesque duis sociis, est placerat? Montes ac, nunc aliquet ridiculus nisi? Dignissim. Et aliquet sed.\n
          \n
          Auctor mid, mauris placerat? Scelerisque amet a a facilisis porttitor aenean dolor, placerat dapibus, odio parturient scelerisque? In dis arcu nec mid ac in adipiscing ultricies, pulvinar purus dis. Nisi dis massa magnis, porta amet, scelerisque turpis etiam scelerisque porttitor ac dictumst, cras, enim? Placerat enim pulvinar turpis a cum! Aliquam? Urna ut facilisis diam diam lorem mattis ut, ac pid, sed pellentesque. Egestas nunc, lacus, tempor amet? Lacus, nunc dictumst, ac porttitor magna, nisi, montes scelerisque? Cum, rhoncus. Pid adipiscing porta dictumst porta amet dignissim purus, aliquet dolor non sagittis porta urna? Tortor egestas, ultricies elementum, placerat velit magnis lacus? Augue nunc? Ac et cras ut? Ac odio tortor lectus. Mattis adipiscing urna, scelerisque nec aenean adipiscing mid.
          """
        "vat_number" => ""
      ]
      "languages" => array:30 [
        0 => array:3 [
          "locale" => "ar_EG"
          "title" => "عربى(ar_EG)"
          "name" => "عربى"
        ]
        1 => array:3 [
          "locale" => "ar_SA"
          "title" => "العربية(ar_SA)"
          "name" => "العربية"
        ]
        2 => array:3 [
          "locale" => "bg_BG"
          "title" => "Български(bg_BG)"
          "name" => "Български"
        ]
        3 => array:3 [
          "locale" => "ca_ES"
          "title" => "ca_ES(ca_ES)"
          "name" => "ca_ES"
        ]
        4 => array:3 [
          "locale" => "cs_CZ"
          "title" => "Čeština(cs_CZ)"
          "name" => "Čeština"
        ]
        5 => array:3 [
          "locale" => "da_DK"
          "title" => "Dansk(da_DK)"
          "name" => "Dansk"
        ]
        6 => array:3 [
          "locale" => "de_DE"
          "title" => "Deutsch(de_DE)"
          "name" => "Deutsch"
        ]
        7 => array:3 [
          "locale" => "el_GR"
          "title" => "Ελληνικά(el_GR)"
          "name" => "Ελληνικά"
        ]
        8 => array:3 [
          "locale" => "en_US"
          "title" => "English(en_US)"
          "name" => "English"
        ]
        9 => array:3 [
          "locale" => "es_ES"
          "title" => "Español(es_ES)"
          "name" => "Español"
        ]
        10 => array:3 [
          "locale" => "fi_FI"
          "title" => "Suomi(fi_FI)"
          "name" => "Suomi"
        ]
        11 => array:3 [
          "locale" => "fr_FR"
          "title" => "Français(fr_FR)"
          "name" => "Français"
        ]
        12 => array:3 [
          "locale" => "he_IL"
          "title" => "עִברִית(he_IL)"
          "name" => "עִברִית"
        ]
        13 => array:3 [
          "locale" => "hu_HU"
          "title" => "Magyar(hu_HU)"
          "name" => "Magyar"
        ]
        14 => array:3 [
          "locale" => "id_ID"
          "title" => "Bahasa Indonesia(id_ID)"
          "name" => "Bahasa Indonesia"
        ]
        15 => array:3 [
          "locale" => "it_IT"
          "title" => "Italiano(it_IT)"
          "name" => "Italiano"
        ]
        16 => array:3 [
          "locale" => "ko_KR"
          "title" => "한국어(ko_KR)"
          "name" => "한국어"
        ]
        17 => array:3 [
          "locale" => "lt_LT"
          "title" => "Lietuvių(lt_LT)"
          "name" => "Lietuvių"
        ]
        18 => array:3 [
          "locale" => "nl_NL"
          "title" => "Nederlands(nl_NL)"
          "name" => "Nederlands"
        ]
        19 => array:3 [
          "locale" => "pl_PL"
          "title" => "Polski(pl_PL)"
          "name" => "Polski"
        ]
        20 => array:3 [
          "locale" => "pt_BR"
          "title" => "Português (Brasil)(pt_BR)"
          "name" => "Português (Brasil)"
        ]
        21 => array:3 [
          "locale" => "pt_PT"
          "title" => "Português(pt_PT)"
          "name" => "Português"
        ]
        22 => array:3 [
          "locale" => "ro_RO"
          "title" => "Română(ro_RO)"
          "name" => "Română"
        ]
        23 => array:3 [
          "locale" => "ru_RU"
          "title" => "Русский(ru_RU)"
          "name" => "Русский"
        ]
        24 => array:3 [
          "locale" => "sr_RS"
          "title" => "Српски(sr_RS)"
          "name" => "Српски"
        ]
        25 => array:3 [
          "locale" => "tr_TR"
          "title" => "Türkçe(tr_TR)"
          "name" => "Türkçe"
        ]
        26 => array:3 [
          "locale" => "uk_UA"
          "title" => "Українська(uk_UA)"
          "name" => "Українська"
        ]
        27 => array:3 [
          "locale" => "vi_VN"
          "title" => "Tiếng Việt(vi_VN)"
          "name" => "Tiếng Việt"
        ]
        28 => array:3 [
          "locale" => "zh_CN"
          "title" => "简体中文(zh_CN)"
          "name" => "简体中文"
        ]
        29 => array:3 [
          "locale" => "zh_TW"
          "title" => "正體中文(zh_TW)"
          "name" => "正體中文"
        ]
      ]
      "currentLang" => "pl_PL"
      "countryCode" => "TW"
    ]
    
  2. array:12 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "meta_description" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_meta_description"
      ]
      "opengraph" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_opengraph"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_head"
      ]
      "js" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_js"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "body" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_body"
      ]
      "content_before" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_before"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
      "breadcrumbs" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_breadcrumbs"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content_after" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_after"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/data/cache/b0/b0218a665b0927d012966dc5cc6e49a7.php
                    <p>";
            // line 182
            echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "sidebar_note_content", [], "any", false, false, false, 182), "html", null, true);
            echo "</p>
                </div>
                <div class=\"side-note-bottom\"></div>
            </section>
            ";
        }
        // line 187
        echo "        </div>
 
        ";
        // line 189
        $this->displayBlock('content_before', $context, $blocks);
        // line 190
        echo "        <div class=\"content-block\" role=\"main\">
            ";
        // line 191
        $this->displayBlock('content', $context, $blocks);
        // line 192
        echo "
            ";
        // line 193
        if (twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "show_breadcrumb", [], "any", false, false, false, 193)) {
            // line 194
            echo "            ";
            $this->displayBlock('breadcrumbs', $context, $blocks);
            // line 202
            echo "            ";
        }
        // line 203
        echo "
            ";
        // line 204
        if (twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "show_page_header", [], "any", false, false, false, 204)) {
            // line 205
            echo "            ";
            // line 211
            echo "            ";
Arguments
  1. "content"
    
  2. array:10 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
      "theme_color" => "css/huraga-green.css"
      "company" => array:17 [
        "www" => "https://foss.it360.site/"
        "name" => "IT360"
        "email" => "admin@it360.pl"
        "tel" => "+123 456 12345"
        "signature" => "FOSSBilling.org - Client Management, Invoice and Support Software"
        "logo_url" => "https://foss.it360.site/themes/huraga/assets/img/logo.svg"
        "logo_url_dark" => "https://foss.it360.site/themes/huraga/assets/img/logo_white.svg"
        "favicon_url" => "https://foss.it360.site/themes/huraga/assets/favicon.ico"
        "address_1" => "Demo address line 1"
        "address_2" => "Demo address line 2"
        "address_3" => "Demo address line 3"
        "account_number" => ""
        "number" => ""
        "note" => ""
        "privacy_policy" => """
          Ac dapibus. Rhoncus integer sit aliquam a! Natoque? Lacus porttitor rhoncus, aliquam porttitor in risus turpis adipiscing! Integer, mus mattis sed enim ac velit proin est et ut, amet eros! Hac augue et vel ac sit duis facilisis purus tincidunt, porttitor eu a penatibus rhoncus platea et mauris rhoncus magnis rhoncus, montes? Et porttitor, urna, dolor, dapibus elementum porttitor aliquam.\n
          \n
          Cras risus? Turpis, mus tincidunt vel dolor lectus pulvinar aliquam nascetur parturient nunc proin aenean tortor, augue aenean ac penatibus vut arcu. Augue, aenean dapibus in nec. In tempor turpis dictumst cursus, nec eros, elit non, ut integer magna. Augue placerat magnis facilisis platea ridiculus tincidunt et ut porttitor! Cursus odio, aliquet purus tristique vel tempor urna, vut enim.\n
          \n
          Porta habitasse scelerisque elementum adipiscing elit pulvinar? Cursus! Turpis! Massa ac elementum a, facilisis eu, sed ac porta massa sociis nascetur rhoncus sed, scelerisque habitasse aliquam? Velit adipiscing turpis, risus ut duis non integer rhoncus, placerat eu adipiscing, hac? Integer cursus porttitor rhoncus turpis lundium nisi, velit? Arcu tincidunt turpis, nunc integer turpis! Ridiculus enim natoque in, eros odio.\n
          \n
          Scelerisque tempor dolor magnis natoque cras nascetur lorem, augue habitasse ac ut mid rhoncus? Montes tristique arcu, nisi integer? Augue? Adipiscing tempor parturient elementum nunc? Amet mid aliquam penatibus. Aliquam proin, parturient vel parturient dictumst? A porttitor rhoncus, a sit egestas massa tincidunt! Nunc purus. Hac ac! Enim placerat augue cursus augue sociis cum cras, pulvinar placerat nec platea.\n
          \n
          Penatibus et duis, urna. Massa cum porttitor elit porta, natoque etiam et turpis placerat lacus etiam scelerisque nunc, egestas, urna non tincidunt cursus odio urna tempor dictumst dignissim habitasse. Mus non et, nisi purus, pulvinar natoque in vel nascetur. Porttitor phasellus sed aenean eu quis? Nec vel, dignissim magna placerat turpis, ridiculus cum est auctor, sagittis, sit scelerisque duis.
          """
        "tos" => """
          Sit ridiculus nascetur porta purus tortor, augue natoque, pulvinar integer nisi mattis dignissim mus, elementum nascetur, augue etiam. Mus mus tortor? A mauris habitasse dictumst, scelerisque, dis nec pulvinar magnis velit, integer, nisi, aliquet, elit phasellus? Parturient odio purus tristique porttitor augue diam pulvinar magna ac lacus in. Augue tincidunt sociis ultrices parturient aliquet dapibus sit. Pulvinar mauris platea in amet penatibus augue ut non ridiculus, nunc lundium. Duis dapibus a mid proin pellentesque lundium vut mauris egestas dolor nec? Diam eu duis sociis. Dapibus porta! Proin, turpis nascetur et. Aenean tristique eu in elit dolor, montes sit nec, magna amet montes, hac diam ac, pellentesque duis sociis, est placerat? Montes ac, nunc aliquet ridiculus nisi? Dignissim. Et aliquet sed.\n
          \n
          Auctor mid, mauris placerat? Scelerisque amet a a facilisis porttitor aenean dolor, placerat dapibus, odio parturient scelerisque? In dis arcu nec mid ac in adipiscing ultricies, pulvinar purus dis. Nisi dis massa magnis, porta amet, scelerisque turpis etiam scelerisque porttitor ac dictumst, cras, enim? Placerat enim pulvinar turpis a cum! Aliquam? Urna ut facilisis diam diam lorem mattis ut, ac pid, sed pellentesque. Egestas nunc, lacus, tempor amet? Lacus, nunc dictumst, ac porttitor magna, nisi, montes scelerisque? Cum, rhoncus. Pid adipiscing porta dictumst porta amet dignissim purus, aliquet dolor non sagittis porta urna? Tortor egestas, ultricies elementum, placerat velit magnis lacus? Augue nunc? Ac et cras ut? Ac odio tortor lectus. Mattis adipiscing urna, scelerisque nec aenean adipiscing mid.
          """
        "vat_number" => ""
      ]
      "languages" => array:30 [
        0 => array:3 [
          "locale" => "ar_EG"
          "title" => "عربى(ar_EG)"
          "name" => "عربى"
        ]
        1 => array:3 [
          "locale" => "ar_SA"
          "title" => "العربية(ar_SA)"
          "name" => "العربية"
        ]
        2 => array:3 [
          "locale" => "bg_BG"
          "title" => "Български(bg_BG)"
          "name" => "Български"
        ]
        3 => array:3 [
          "locale" => "ca_ES"
          "title" => "ca_ES(ca_ES)"
          "name" => "ca_ES"
        ]
        4 => array:3 [
          "locale" => "cs_CZ"
          "title" => "Čeština(cs_CZ)"
          "name" => "Čeština"
        ]
        5 => array:3 [
          "locale" => "da_DK"
          "title" => "Dansk(da_DK)"
          "name" => "Dansk"
        ]
        6 => array:3 [
          "locale" => "de_DE"
          "title" => "Deutsch(de_DE)"
          "name" => "Deutsch"
        ]
        7 => array:3 [
          "locale" => "el_GR"
          "title" => "Ελληνικά(el_GR)"
          "name" => "Ελληνικά"
        ]
        8 => array:3 [
          "locale" => "en_US"
          "title" => "English(en_US)"
          "name" => "English"
        ]
        9 => array:3 [
          "locale" => "es_ES"
          "title" => "Español(es_ES)"
          "name" => "Español"
        ]
        10 => array:3 [
          "locale" => "fi_FI"
          "title" => "Suomi(fi_FI)"
          "name" => "Suomi"
        ]
        11 => array:3 [
          "locale" => "fr_FR"
          "title" => "Français(fr_FR)"
          "name" => "Français"
        ]
        12 => array:3 [
          "locale" => "he_IL"
          "title" => "עִברִית(he_IL)"
          "name" => "עִברִית"
        ]
        13 => array:3 [
          "locale" => "hu_HU"
          "title" => "Magyar(hu_HU)"
          "name" => "Magyar"
        ]
        14 => array:3 [
          "locale" => "id_ID"
          "title" => "Bahasa Indonesia(id_ID)"
          "name" => "Bahasa Indonesia"
        ]
        15 => array:3 [
          "locale" => "it_IT"
          "title" => "Italiano(it_IT)"
          "name" => "Italiano"
        ]
        16 => array:3 [
          "locale" => "ko_KR"
          "title" => "한국어(ko_KR)"
          "name" => "한국어"
        ]
        17 => array:3 [
          "locale" => "lt_LT"
          "title" => "Lietuvių(lt_LT)"
          "name" => "Lietuvių"
        ]
        18 => array:3 [
          "locale" => "nl_NL"
          "title" => "Nederlands(nl_NL)"
          "name" => "Nederlands"
        ]
        19 => array:3 [
          "locale" => "pl_PL"
          "title" => "Polski(pl_PL)"
          "name" => "Polski"
        ]
        20 => array:3 [
          "locale" => "pt_BR"
          "title" => "Português (Brasil)(pt_BR)"
          "name" => "Português (Brasil)"
        ]
        21 => array:3 [
          "locale" => "pt_PT"
          "title" => "Português(pt_PT)"
          "name" => "Português"
        ]
        22 => array:3 [
          "locale" => "ro_RO"
          "title" => "Română(ro_RO)"
          "name" => "Română"
        ]
        23 => array:3 [
          "locale" => "ru_RU"
          "title" => "Русский(ru_RU)"
          "name" => "Русский"
        ]
        24 => array:3 [
          "locale" => "sr_RS"
          "title" => "Српски(sr_RS)"
          "name" => "Српски"
        ]
        25 => array:3 [
          "locale" => "tr_TR"
          "title" => "Türkçe(tr_TR)"
          "name" => "Türkçe"
        ]
        26 => array:3 [
          "locale" => "uk_UA"
          "title" => "Українська(uk_UA)"
          "name" => "Українська"
        ]
        27 => array:3 [
          "locale" => "vi_VN"
          "title" => "Tiếng Việt(vi_VN)"
          "name" => "Tiếng Việt"
        ]
        28 => array:3 [
          "locale" => "zh_CN"
          "title" => "简体中文(zh_CN)"
          "name" => "简体中文"
        ]
        29 => array:3 [
          "locale" => "zh_TW"
          "title" => "正體中文(zh_TW)"
          "name" => "正體中文"
        ]
      ]
      "currentLang" => "pl_PL"
      "countryCode" => "TW"
    ]
    
  3. array:12 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "meta_description" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_meta_description"
      ]
      "opengraph" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_opengraph"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_head"
      ]
      "js" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_js"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "body" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_body"
      ]
      "content_before" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_before"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
      "breadcrumbs" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_breadcrumbs"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content_after" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_after"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
    {
        if ($useBlocks && isset($blocks[$name])) {
            $template = $blocks[$name][0];
            $block = $blocks[$name][1];
        } elseif (isset($this->blocks[$name])) {
            $template = $this->blocks[$name][0];
            $block = $this->blocks[$name][1];
        } else {
            $template = null;
            $block = null;
        }
 
        // avoid RCEs when sandbox is enabled
        if (null !== $template && !$template instanceof self) {
            throw new \LogicException('A block must be a method on a \Twig\Template instance.');
        }
 
        if (null !== $template) {
            try {
                $template->$block($context, $blocks);
            } catch (Error $e) {
                if (!$e->getSourceContext()) {
                    $e->setSourceContext($template->getSourceContext());
                }
 
                // this is mostly useful for \Twig\Error\LoaderError exceptions
                // see \Twig\Error\LoaderError
                if (-1 === $e->getTemplateLine()) {
                    $e->guess();
                }
 
                throw $e;
            } catch (\Exception $e) {
                $e = new RuntimeError(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $template->getSourceContext(), $e);
                $e->guess();
 
                throw $e;
            }
        } elseif (false !== $parent = $this->getParent($context)) {
            $parent->displayBlock($name, $context, array_merge($this->blocks, $blocks), false, $templateContext ?? $this);
Arguments
  1. array:10 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
      "theme_color" => "css/huraga-green.css"
      "company" => array:17 [
        "www" => "https://foss.it360.site/"
        "name" => "IT360"
        "email" => "admin@it360.pl"
        "tel" => "+123 456 12345"
        "signature" => "FOSSBilling.org - Client Management, Invoice and Support Software"
        "logo_url" => "https://foss.it360.site/themes/huraga/assets/img/logo.svg"
        "logo_url_dark" => "https://foss.it360.site/themes/huraga/assets/img/logo_white.svg"
        "favicon_url" => "https://foss.it360.site/themes/huraga/assets/favicon.ico"
        "address_1" => "Demo address line 1"
        "address_2" => "Demo address line 2"
        "address_3" => "Demo address line 3"
        "account_number" => ""
        "number" => ""
        "note" => ""
        "privacy_policy" => """
          Ac dapibus. Rhoncus integer sit aliquam a! Natoque? Lacus porttitor rhoncus, aliquam porttitor in risus turpis adipiscing! Integer, mus mattis sed enim ac velit proin est et ut, amet eros! Hac augue et vel ac sit duis facilisis purus tincidunt, porttitor eu a penatibus rhoncus platea et mauris rhoncus magnis rhoncus, montes? Et porttitor, urna, dolor, dapibus elementum porttitor aliquam.\n
          \n
          Cras risus? Turpis, mus tincidunt vel dolor lectus pulvinar aliquam nascetur parturient nunc proin aenean tortor, augue aenean ac penatibus vut arcu. Augue, aenean dapibus in nec. In tempor turpis dictumst cursus, nec eros, elit non, ut integer magna. Augue placerat magnis facilisis platea ridiculus tincidunt et ut porttitor! Cursus odio, aliquet purus tristique vel tempor urna, vut enim.\n
          \n
          Porta habitasse scelerisque elementum adipiscing elit pulvinar? Cursus! Turpis! Massa ac elementum a, facilisis eu, sed ac porta massa sociis nascetur rhoncus sed, scelerisque habitasse aliquam? Velit adipiscing turpis, risus ut duis non integer rhoncus, placerat eu adipiscing, hac? Integer cursus porttitor rhoncus turpis lundium nisi, velit? Arcu tincidunt turpis, nunc integer turpis! Ridiculus enim natoque in, eros odio.\n
          \n
          Scelerisque tempor dolor magnis natoque cras nascetur lorem, augue habitasse ac ut mid rhoncus? Montes tristique arcu, nisi integer? Augue? Adipiscing tempor parturient elementum nunc? Amet mid aliquam penatibus. Aliquam proin, parturient vel parturient dictumst? A porttitor rhoncus, a sit egestas massa tincidunt! Nunc purus. Hac ac! Enim placerat augue cursus augue sociis cum cras, pulvinar placerat nec platea.\n
          \n
          Penatibus et duis, urna. Massa cum porttitor elit porta, natoque etiam et turpis placerat lacus etiam scelerisque nunc, egestas, urna non tincidunt cursus odio urna tempor dictumst dignissim habitasse. Mus non et, nisi purus, pulvinar natoque in vel nascetur. Porttitor phasellus sed aenean eu quis? Nec vel, dignissim magna placerat turpis, ridiculus cum est auctor, sagittis, sit scelerisque duis.
          """
        "tos" => """
          Sit ridiculus nascetur porta purus tortor, augue natoque, pulvinar integer nisi mattis dignissim mus, elementum nascetur, augue etiam. Mus mus tortor? A mauris habitasse dictumst, scelerisque, dis nec pulvinar magnis velit, integer, nisi, aliquet, elit phasellus? Parturient odio purus tristique porttitor augue diam pulvinar magna ac lacus in. Augue tincidunt sociis ultrices parturient aliquet dapibus sit. Pulvinar mauris platea in amet penatibus augue ut non ridiculus, nunc lundium. Duis dapibus a mid proin pellentesque lundium vut mauris egestas dolor nec? Diam eu duis sociis. Dapibus porta! Proin, turpis nascetur et. Aenean tristique eu in elit dolor, montes sit nec, magna amet montes, hac diam ac, pellentesque duis sociis, est placerat? Montes ac, nunc aliquet ridiculus nisi? Dignissim. Et aliquet sed.\n
          \n
          Auctor mid, mauris placerat? Scelerisque amet a a facilisis porttitor aenean dolor, placerat dapibus, odio parturient scelerisque? In dis arcu nec mid ac in adipiscing ultricies, pulvinar purus dis. Nisi dis massa magnis, porta amet, scelerisque turpis etiam scelerisque porttitor ac dictumst, cras, enim? Placerat enim pulvinar turpis a cum! Aliquam? Urna ut facilisis diam diam lorem mattis ut, ac pid, sed pellentesque. Egestas nunc, lacus, tempor amet? Lacus, nunc dictumst, ac porttitor magna, nisi, montes scelerisque? Cum, rhoncus. Pid adipiscing porta dictumst porta amet dignissim purus, aliquet dolor non sagittis porta urna? Tortor egestas, ultricies elementum, placerat velit magnis lacus? Augue nunc? Ac et cras ut? Ac odio tortor lectus. Mattis adipiscing urna, scelerisque nec aenean adipiscing mid.
          """
        "vat_number" => ""
      ]
      "languages" => array:30 [
        0 => array:3 [
          "locale" => "ar_EG"
          "title" => "عربى(ar_EG)"
          "name" => "عربى"
        ]
        1 => array:3 [
          "locale" => "ar_SA"
          "title" => "العربية(ar_SA)"
          "name" => "العربية"
        ]
        2 => array:3 [
          "locale" => "bg_BG"
          "title" => "Български(bg_BG)"
          "name" => "Български"
        ]
        3 => array:3 [
          "locale" => "ca_ES"
          "title" => "ca_ES(ca_ES)"
          "name" => "ca_ES"
        ]
        4 => array:3 [
          "locale" => "cs_CZ"
          "title" => "Čeština(cs_CZ)"
          "name" => "Čeština"
        ]
        5 => array:3 [
          "locale" => "da_DK"
          "title" => "Dansk(da_DK)"
          "name" => "Dansk"
        ]
        6 => array:3 [
          "locale" => "de_DE"
          "title" => "Deutsch(de_DE)"
          "name" => "Deutsch"
        ]
        7 => array:3 [
          "locale" => "el_GR"
          "title" => "Ελληνικά(el_GR)"
          "name" => "Ελληνικά"
        ]
        8 => array:3 [
          "locale" => "en_US"
          "title" => "English(en_US)"
          "name" => "English"
        ]
        9 => array:3 [
          "locale" => "es_ES"
          "title" => "Español(es_ES)"
          "name" => "Español"
        ]
        10 => array:3 [
          "locale" => "fi_FI"
          "title" => "Suomi(fi_FI)"
          "name" => "Suomi"
        ]
        11 => array:3 [
          "locale" => "fr_FR"
          "title" => "Français(fr_FR)"
          "name" => "Français"
        ]
        12 => array:3 [
          "locale" => "he_IL"
          "title" => "עִברִית(he_IL)"
          "name" => "עִברִית"
        ]
        13 => array:3 [
          "locale" => "hu_HU"
          "title" => "Magyar(hu_HU)"
          "name" => "Magyar"
        ]
        14 => array:3 [
          "locale" => "id_ID"
          "title" => "Bahasa Indonesia(id_ID)"
          "name" => "Bahasa Indonesia"
        ]
        15 => array:3 [
          "locale" => "it_IT"
          "title" => "Italiano(it_IT)"
          "name" => "Italiano"
        ]
        16 => array:3 [
          "locale" => "ko_KR"
          "title" => "한국어(ko_KR)"
          "name" => "한국어"
        ]
        17 => array:3 [
          "locale" => "lt_LT"
          "title" => "Lietuvių(lt_LT)"
          "name" => "Lietuvių"
        ]
        18 => array:3 [
          "locale" => "nl_NL"
          "title" => "Nederlands(nl_NL)"
          "name" => "Nederlands"
        ]
        19 => array:3 [
          "locale" => "pl_PL"
          "title" => "Polski(pl_PL)"
          "name" => "Polski"
        ]
        20 => array:3 [
          "locale" => "pt_BR"
          "title" => "Português (Brasil)(pt_BR)"
          "name" => "Português (Brasil)"
        ]
        21 => array:3 [
          "locale" => "pt_PT"
          "title" => "Português(pt_PT)"
          "name" => "Português"
        ]
        22 => array:3 [
          "locale" => "ro_RO"
          "title" => "Română(ro_RO)"
          "name" => "Română"
        ]
        23 => array:3 [
          "locale" => "ru_RU"
          "title" => "Русский(ru_RU)"
          "name" => "Русский"
        ]
        24 => array:3 [
          "locale" => "sr_RS"
          "title" => "Српски(sr_RS)"
          "name" => "Српски"
        ]
        25 => array:3 [
          "locale" => "tr_TR"
          "title" => "Türkçe(tr_TR)"
          "name" => "Türkçe"
        ]
        26 => array:3 [
          "locale" => "uk_UA"
          "title" => "Українська(uk_UA)"
          "name" => "Українська"
        ]
        27 => array:3 [
          "locale" => "vi_VN"
          "title" => "Tiếng Việt(vi_VN)"
          "name" => "Tiếng Việt"
        ]
        28 => array:3 [
          "locale" => "zh_CN"
          "title" => "简体中文(zh_CN)"
          "name" => "简体中文"
        ]
        29 => array:3 [
          "locale" => "zh_TW"
          "title" => "正體中文(zh_TW)"
          "name" => "正體中文"
        ]
      ]
      "currentLang" => "pl_PL"
      "countryCode" => "TW"
    ]
    
  2. array:12 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "meta_description" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_meta_description"
      ]
      "opengraph" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_opengraph"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_head"
      ]
      "js" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_js"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "body" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_body"
      ]
      "content_before" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_before"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
      "breadcrumbs" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_breadcrumbs"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content_after" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_after"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/data/cache/b0/b0218a665b0927d012966dc5cc6e49a7.php
";
        // line 44
        if (twig_get_attribute($this->env, $this->source, ($context["guest"] ?? null), "extension_is_on", [0 => ["mod" => "cookieconsent"]], "method", false, false, false, 44)) {
            // line 45
            echo "    ";
            $__internal_compile_0 = null;
            try {
                $__internal_compile_0 =                 $this->loadTemplate("mod_cookieconsent_index.html.twig", "layout_default.html.twig", 45);
            } catch (LoaderError $e) {
                // ignore missing template
            }
            if ($__internal_compile_0) {
                $__internal_compile_0->display($context);
            }
        }
        // line 47
        echo "
";
        // line 48
        $this->displayBlock('body', $context, $blocks);
        // line 365
        echo "
";
        // line 366
        if ((twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "top_menu_order", [], "any", false, false, false, 366) || twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "side_menu_order", [], "any", false, false, false, 366))) {
            // line 367
            echo "<script src=\"";
            echo $this->extensions['Box_TwigExtensions']->twig_bb_client_link_filter("orderbutton/js", ["options" => "1", "width" => 600, "theme_color" => "green", "background_color" => "black", "background_opacity" => 50, "background_close" => 1, "bind_selector" => ".order-button", "border_radius" => 0, "loader" => 8]);
            echo "\"></script>
";
        }
        // line 369
        echo "
";
        // line 370
        if (twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "inject_javascript", [], "any", false, false, false, 370)) {
            // line 371
            echo "    ";
            echo twig_get_attribute($this->env, $this->source, ($context["settings"] ?? null), "inject_javascript", [], "any", false, false, false, 371);
            echo "
Arguments
  1. "body"
    
  2. array:6 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
      "theme_color" => "css/huraga-green.css"
    ]
    
  3. array:12 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "meta_description" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_meta_description"
      ]
      "opengraph" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_opengraph"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_head"
      ]
      "js" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_js"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "body" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_body"
      ]
      "content_before" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_before"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
      "breadcrumbs" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_breadcrumbs"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content_after" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_after"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
        } else {
            ob_start(function () { return ''; });
        }
        try {
            $this->display($context);
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = [])
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
            // this is mostly useful for \Twig\Error\LoaderError exceptions
            // see \Twig\Error\LoaderError
            if (-1 === $e->getTemplateLine()) {
                $e->guess();
            }
 
            throw $e;
        } catch (\Exception $e) {
            $e = new RuntimeError(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
            $e->guess();
 
            throw $e;
        }
    }
 
Arguments
  1. array:6 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
      "theme_color" => "css/huraga-green.css"
    ]
    
  2. array:12 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "meta_description" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_meta_description"
      ]
      "opengraph" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_opengraph"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_head"
      ]
      "js" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_js"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "body" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_body"
      ]
      "content_before" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_before"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
      "breadcrumbs" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_breadcrumbs"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content_after" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_after"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
    {
        return $this;
    }
 
    /**
     * Returns all blocks.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @return array An array of blocks
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = [])
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        if ($this->env->isDebug()) {
            ob_start();
        } else {
            ob_start(function () { return ''; });
        }
        try {
            $this->display($context);
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
Arguments
  1. array:5 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
    ]
    
  2. array:12 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "meta_description" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_meta_description"
      ]
      "opengraph" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_opengraph"
      ]
      "head" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_head"
      ]
      "js" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_js"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "body" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_body"
      ]
      "content_before" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_before"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
      "breadcrumbs" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_breadcrumbs"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content_after" => array:2 [
        0 => __TwigTemplate_d919bc6f7c6e0422d53b4e4d84e5f915 {#112}
        1 => "block_content_after"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/data/cache/29/29124df73375fe7bd340468fb7b8b838.php
        $this->source = $this->getSourceContext();
 
        $this->blocks = [
            'meta_title' => [$this, 'block_meta_title'],
            'body_class' => [$this, 'block_body_class'],
            'breadcrumb' => [$this, 'block_breadcrumb'],
            'content' => [$this, 'block_content'],
        ];
    }
 
    protected function doGetParent(array $context)
    {
        // line 1
        return $this->loadTemplate(((twig_get_attribute($this->env, $this->source, ($context["request"] ?? null), "ajax", [], "any", false, false, false, 1)) ? ("layout_blank.html.twig") : ("layout_default.html.twig")), "mod_kb_index.html.twig", 1);
    }
 
    protected function doDisplay(array $context, array $blocks = [])
    {
        $macros = $this->macros;
        $this->getParent($context)->display($context, array_merge($this->blocks, $blocks));
    }
 
    // line 3
    public function block_meta_title($context, array $blocks = [])
    {
        $macros = $this->macros;
        echo twig_escape_filter($this->env, __trans("Knowledge base"), "html", null, true);
    }
 
    // line 5
    public function block_body_class($context, array $blocks = [])
    {
        $macros = $this->macros;
        echo "kb-index";
    }
 
    // line 6
    public function block_breadcrumb($context, array $blocks = [])
    {
        $macros = $this->macros;
Arguments
  1. array:5 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
    ]
    
  2. array:4 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
        } else {
            ob_start(function () { return ''; });
        }
        try {
            $this->display($context);
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = [])
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
            // this is mostly useful for \Twig\Error\LoaderError exceptions
            // see \Twig\Error\LoaderError
            if (-1 === $e->getTemplateLine()) {
                $e->guess();
            }
 
            throw $e;
        } catch (\Exception $e) {
            $e = new RuntimeError(sprintf('An exception has been thrown during the rendering of a template ("%s").', $e->getMessage()), -1, $this->getSourceContext(), $e);
            $e->guess();
 
            throw $e;
        }
    }
 
Arguments
  1. array:5 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
    ]
    
  2. array:4 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
    {
        return $this;
    }
 
    /**
     * Returns all blocks.
     *
     * This method is for internal use only and should never be called
     * directly.
     *
     * @return array An array of blocks
     */
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = [])
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        if ($this->env->isDebug()) {
            ob_start();
        } else {
            ob_start(function () { return ''; });
        }
        try {
            $this->display($context);
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
Arguments
  1. array:5 [
      "CSRFToken" => "d41d8cd98f00b204e9800998ecf8427e"
      "request" => array:1 [
        "_url" => "/kb"
      ]
      "guest" => Api_Handler {#105}
      "current_theme" => "huraga"
      "settings" => array:52 [
        "CSRFToken" => "508364ddeda54ced3959f360bb111bfe"
        "color_scheme" => "green"
        "show_page_header" => "1"
        "show_company_logo" => "0"
        "show_company_name" => "1"
        "show_client_details" => "1"
        "sidebar_balance_enabled" => "1"
        "top_menu_dashboard" => "1"
        "top_menu_order" => "1"
        "top_menu_signout" => "1"
        "login_page_show_logo" => "1"
        "login_page_logo_url" => ""
        "show_password_reset_link" => "1"
        "show_signup_link" => "1"
        "login_page_show_remember_me" => "1"
        "show_breadcrumb" => "0"
        "hide_dashboard_breadcrumb" => "0"
        "require_login" => "1"
        "showcase_enabled" => "0"
        "showcase_size" => "3"
        "showcase_text" => ""
        "showcase_button_title" => ""
        "showcase_button_url" => ""
        "side_menu_dashboard" => "1"
        "side_menu_order" => "1"
        "side_menu_services" => "1"
        "side_menu_invoices" => "1"
        "side_menu_emails" => "1"
        "side_menu_payments" => "1"
        "side_menu_kb" => "1"
        "sidebar_note_enabled" => "0"
        "sidebar_note_title" => ""
        "sidebar_note_content" => ""
        "meta_title" => ""
        "meta_description" => "Members area"
        "meta_keywords" => "members area"
        "meta_robots" => "index, follow"
        "meta_author" => "FOSSBilling"
        "footer_enabled" => "1"
        "footer_to_top_enabled" => "1"
        "footer_signature" => ""
        "footer_link_1_title" => ""
        "footer_link_1_page" => ""
        "footer_link_2_title" => ""
        "footer_link_2_page" => ""
        "footer_link_3_title" => ""
        "footer_link_3_page" => ""
        "footer_link_4_title" => ""
        "footer_link_4_page" => ""
        "footer_link_5_title" => ""
        "footer_link_5_page" => ""
        "inject_javascript" => ""
      ]
    ]
    
  2. array:4 [
      "meta_title" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_meta_title"
      ]
      "body_class" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_body_class"
      ]
      "breadcrumb" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_breadcrumb"
      ]
      "content" => array:2 [
        0 => __TwigTemplate_44fb5343d8a4b5351c56b2867266bd9f {#111}
        1 => "block_content"
      ]
    ]
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/Template.php
    public function getBlocks()
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = [])
    {
        $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks, $blocks));
    }
 
    public function render(array $context)
    {
        $level = ob_get_level();
        if ($this->env->isDebug()) {
            ob_start();
        } else {
            ob_start(function () { return ''; });
        }
        try {
            $this->display($context);
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    protected function displayWithErrorHandling(array $context, array $blocks = [])
    {
        try {
            $this->doDisplay($context, $blocks);
        } catch (Error $e) {
            if (!$e->getSourceContext()) {
                $e->setSourceContext($this->getSourceContext());
            }
 
Arguments
  1. []
    
/home/kk/web/foss.it360.site/public_html/vendor/twig/twig/src/TemplateWrapper.php
    private $env;
    private $template;
 
    /**
     * This method is for internal use only and should never be called
     * directly (use Twig\Environment::load() instead).
     *
     * @internal
     */
    public function __construct(Environment $env, Template $template)
    {
        $this->env = $env;
        $this->template = $template;
    }
 
    public function render(array $context = []): string
    {
        // using func_get_args() allows to not expose the blocks argument
        // as it should only be used by internal code
        return $this->template->render($context, \func_get_args()[1] ?? []);
    }
 
    public function display(array $context = [])
    {
        // using func_get_args() allows to not expose the blocks argument
        // as it should only be used by internal code
        $this->template->display($context, \func_get_args()[1] ?? []);
    }
 
    public function hasBlock(string $name, array $context = []): bool
    {
        return $this->template->hasBlock($name, $context);
    }
 
    /**
     * @return string[] An array of defined template block names
     */
    public function getBlockNames(array $context = []): array
    {
        return $this->template->getBlockNames($context);
Arguments
  1. []
    
  2. []
    
/home/kk/web/foss.it360.site/public_html/library/Box/AppClient.php
    }
 
    /**
     * @param string $fileName
     */
    public function render($fileName, $variableArray = [], $ext = 'html.twig')
    {
        try {
            $template = $this->getTwig()->load($fileName . '.' . $ext);
        } catch (Twig\Error\LoaderError $e) {
            error_log($e->getMessage());
            http_response_code(404);
            throw new \Box_Exception('Page not found', null, 404);
        }
 
        if ($fileName . '.' . $ext == 'mod_page_sitemap.xml') {
            header('Content-Type: application/xml');
        }
 
        return $template->render($variableArray);
    }
 
    protected function getTwig()
    {
        $service = $this->di['mod_service']('theme');
        $code = $service->getCurrentClientAreaThemeCode();
        $theme = $service->getTheme($code);
        $settings = $service->getThemeSettings($theme);
 
        $loader = new Box_TwigLoader(
            [
                'mods' => PATH_MODS,
                'theme' => PATH_THEMES . DIRECTORY_SEPARATOR . $code,
                'type' => 'client',
            ]
        );
 
        $twig = $this->di['twig'];
        $twig->setLoader($loader);
 
Arguments
  1. []
    
/home/kk/web/foss.it360.site/public_html/modules/Kb/Controller/Client.php
    public function setDi(\Pimple\Container $di): void
    {
        $this->di = $di;
    }
 
    public function getDi(): ?\Pimple\Container
    {
        return $this->di;
    }
 
    public function register(\Box_App &$app)
    {
        $app->get('/kb', 'get_kb', [], static::class);
        $app->get('/kb/:category', 'get_kb_category', ['category' => '[a-z0-9-]+'], static::class);
        $app->get('/kb/:category/:slug', 'get_kb_article', ['category' => '[a-z0-9-]+', 'slug' => '[a-z0-9-]+'], static::class);
    }
 
    public function get_kb(\Box_App $app)
    {
        return $app->render('mod_kb_index');
    }
 
    public function get_kb_category(\Box_App $app, $category)
    {
        $api = $this->di['api_guest'];
        $data = ['slug' => $category];
        $model = $api->kb_category_get($data);
 
        return $app->render('mod_kb_category', ['category' => $model]);
    }
 
    public function get_kb_article(\Box_App $app, $category, $slug)
    {
        $api = $this->di['api_guest'];
        $data = ['slug' => $slug];
        $article = $api->kb_article_get($data);
 
        return $app->render('mod_kb_article', ['article' => $article]);
    }
}
Arguments
  1. "mod_kb_index"
    
[internal]
Arguments
  1. Box_AppClient {#53}
    
/home/kk/web/foss.it360.site/public_html/library/Box/App.php
 
    protected function executeShared($classname, $methodName, $params)
    {
        $class = new $classname();
        if ($class instanceof InjectionAwareInterface) {
            $class->setDi($this->di);
        }
        $reflection = new ReflectionMethod(get_class($class), $methodName);
        $args = [];
        $args[] = $this; // first param always app instance
 
        foreach ($reflection->getParameters() as $param) {
            if (isset($params[$param->name])) {
                $args[$param->name] = $params[$param->name];
            } elseif ($param->isDefaultValueAvailable()) {
                $args[$param->name] = $param->getDefaultValue();
            }
        }
 
        return $reflection->invokeArgs($class, $args);
    }
 
    protected function execute($methodName, $params, $classname = null)
    {
        $return = $this->run_filter($this->before_filters, $methodName);
        if (!is_null($return)) {
            return $return;
        }
 
        $reflection = new ReflectionMethod(get_class($this), $methodName);
        $args = [];
 
        foreach ($reflection->getParameters() as $param) {
            if (isset($params[$param->name])) {
                $args[$param->name] = $params[$param->name];
            } elseif ($param->isDefaultValueAvailable()) {
                $args[$param->name] = $param->getDefaultValue();
            }
        }
 
Arguments
  1. Box\Mod\Kb\Controller\Client {#77}
    
  2. array:1 [
      0 => Box_AppClient {#53}
    ]
    
/home/kk/web/foss.it360.site/public_html/library/Box/App.php
            if ($this->checkAdminPrefix() && $this->checkAllowedURLs() && $this->checkAllowedIPs()) {
                // Set response code to 503.
                header('HTTP/1.0 503 Service Unavailable');
 
                if ('api' == $this->mod) {
                    $exc = new \Box_Exception('The system is undergoing maintenance. Please try again later', [], 503);
 
                    return (new \Box\Mod\Api\Controller\Client())->renderJson(null, $exc);
                } else {
                    return $this->render('mod_system_maintenance');
                }
            }
        }
 
        $sharedCount = count($this->shared);
        for ($i = 0; $i < $sharedCount; ++$i) {
            $mapping = $this->shared[$i];
            $url = new Box_UrlHelper($mapping[0], $mapping[1], $mapping[3], $this->url);
            if ($url->match) {
                return $this->executeShared($mapping[4], $mapping[2], $url->params);
            }
        }
 
        // this class mappings
        $mappingsCount = count($this->mappings);
        for ($i = 0; $i < $mappingsCount; ++$i) {
            $mapping = $this->mappings[$i];
            $url = new Box_UrlHelper($mapping[0], $mapping[1], $mapping[3], $this->url);
            if ($url->match) {
                return $this->execute($mapping[2], $url->params);
            }
        }
 
        $e = new \Box_Exception('Page :url not found', [':url' => $this->url], 404);
 
        return $this->show404($e);
    }
}
 
Arguments
  1. "Box\Mod\Kb\Controller\Client"
    
  2. "get_kb"
    
  3. []
    
/home/kk/web/foss.it360.site/public_html/library/Box/App.php
    protected function run_filter($arr_filter, $methodName)
    {
        if (isset($arr_filter[$methodName])) {
            $counted = count($arr_filter[$methodName]);
            for ($i = 0; $i < $counted; ++$i) {
                $return = call_user_func([$this, $arr_filter[$methodName][$i]]);
 
                if (!is_null($return)) {
                    return $return;
                }
            }
        }
    }
 
    public function run()
    {
        $this->registerModule();
        $this->init();
 
        return $this->processRequest();
    }
 
    /**
     * @param string $path
     */
    public function redirect($path)
    {
        $location = $this->di['url']->link($path);
        header("Location: $location");
        exit;
    }
 
    /**
     * @param string $fileName
     */
    public function render($fileName, $variableArray = [])
    {
        echo 'Rendering ' . $fileName;
    }
 
/home/kk/web/foss.it360.site/public_html/index.php
$app->setDi($di);
 
// If HTTP error code has been passed, handle it.
if (!is_null($http_err_code)) {
    switch ($http_err_code) {
        case '404':
            $e = new Box_Exception('Page :url not found', [':url' => $url], 404);
            echo $app->show404($e);
            break;
        default:
            $http_err_code = intval($http_err_code);
            http_response_code($http_err_code);
            $e = new Box_Exception('HTTP Error :err_code occurred while attempting to load :url', [':err_code' => $http_err_code, ':url' => $url], $http_err_code);
            echo $app->render('error', ['exception' => $e]);
    }
    exit;
}
 
// If no HTTP error passed, run the app.
echo $app->run();
exit;
 

Environment & details:

Key Value
PHP Version
"8.1.32"
Error code
0
Key Value
_url
"/kb"
empty
empty
empty
empty
Key Value
TEMP
"/home/kk/tmp"
TMPDIR
"/home/kk/tmp"
TMP
"/home/kk/tmp"
PATH
"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
USER
"kk"
HOME
"/home/kk"
SCRIPT_NAME
"/index.php"
REQUEST_URI
"/kb"
QUERY_STRING
"_url=/kb"
REQUEST_METHOD
"GET"
SERVER_PROTOCOL
"HTTP/1.0"
GATEWAY_INTERFACE
"CGI/1.1"
REDIRECT_QUERY_STRING
"_url=/kb"
REDIRECT_URL
"/kb"
REMOTE_PORT
"42006"
SCRIPT_FILENAME
"/home/kk/web/foss.it360.site/public_html/index.php"
SERVER_ADMIN
"info@foss.it360.site"
CONTEXT_DOCUMENT_ROOT
"/home/kk/web/foss.it360.site/public_html"
CONTEXT_PREFIX
""
REQUEST_SCHEME
"https"
DOCUMENT_ROOT
"/home/kk/web/foss.it360.site/public_html"
REMOTE_ADDR
"216.73.216.174"
SERVER_PORT
"443"
SERVER_ADDR
"141.95.226.117"
SERVER_NAME
"foss.it360.site"
SERVER_SOFTWARE
"Apache/2.4.63 (Ubuntu) mod_fcgid/2.3.9 OpenSSL/1.1.1f"
SERVER_SIGNATURE
""
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
HTTP_ACCEPT
"*/*"
HTTP_CONNECTION
"close"
HTTP_X_FORWARDED_FOR
"216.73.216.174"
HTTP_HOST
"foss.it360.site"
proxy-nokeepalive
"1"
SSL_TLS_SNI
"foss.it360.site"
HTTPS
"on"
HTTP_AUTHORIZATION
""
REDIRECT_STATUS
"200"
REDIRECT_SSL_TLS_SNI
"foss.it360.site"
REDIRECT_HTTPS
"on"
REDIRECT_HTTP_AUTHORIZATION
""
FCGI_ROLE
"RESPONDER"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1765328914.2122
REQUEST_TIME
1765328914
empty
0. Whoops\Handler\PrettyPageHandler