Twig \ Error \ RuntimeError
An exception has been thrown during the rendering of a template ("SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null") in "mod_orderbutton_product_configuration.html.twig" at line 44.
Previous exceptions
  • SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null (0)
  • SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null (23000)
Twig\Error\RuntimeError thrown with message "An exception has been thrown during the rendering of a template ("SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null") in "mod_orderbutton_product_configuration.html.twig" at line 44." Stacktrace: #55 Twig\Error\RuntimeError in /home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Orderbutton/html_client/mod_orderbutton_product_configuration.html.twig:44 #54 Box\Mod\Order\Controller\Client:get_configure_product_by_slug in [internal]:0 #53 RedBeanPHP\RedException\SQL in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:206 #52 Box\Mod\Order\Controller\Client:get_configure_product_by_slug in [internal]:0 #51 PDOException in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:181 #50 PDOStatement:execute in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:181 #49 RedBeanPHP\Driver\RPDO:runQuery in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:543 #48 RedBeanPHP\Driver\RPDO:GetAll in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:602 #47 RedBeanPHP\Driver\RPDO:GetOne in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Adapter/DBAdapter.php:199 #46 RedBeanPHP\Adapter\DBAdapter:getCell in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/QueryWriter/AQueryWriter.php:846 #45 RedBeanPHP\QueryWriter\AQueryWriter:insertRecord in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/QueryWriter/AQueryWriter.php:977 #44 RedBeanPHP\QueryWriter\AQueryWriter:updateRecord in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Repository/Frozen.php:87 #43 RedBeanPHP\Repository\Frozen:storeBean in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Repository.php:523 #42 RedBeanPHP\Repository:store in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/OODB.php:385 #41 RedBeanPHP\OODB:store in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php:696 #40 RedBeanPHP\Facade:store in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/Database.php:53 #39 Box_Database:store in /home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Cart/Service.php:83 #38 Box\Mod\Cart\Service:getSessionCart in /home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Cart/Api/Guest.php:72 #37 Box\Mod\Cart\Api\Guest:get_currency in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Api/Handler.php:108 #36 Api_Handler:__call in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/TwigExtensions.php:135 #35 Box_TwigExtensions:twig_money_convert in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/16/16574d1a5cd62679d64eefaba4aa94a9.php:163 #34 __TwigTemplate_63fb7ba422211635f5cd0a27f40d5215:{closure} in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php:2106 #33 Twig\Extension\CoreExtension:captureOutput in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/16/16574d1a5cd62679d64eefaba4aa94a9.php:98 #32 __TwigTemplate_63fb7ba422211635f5cd0a27f40d5215:doDisplay in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:402 #31 Twig\Template:yield in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:358 #30 Twig\Template:display in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:373 #29 Twig\Template:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/TemplateWrapper.php:51 #28 Twig\TemplateWrapper:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php:1520 #27 Twig\Extension\CoreExtension:include in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/e2/e23ba441f6e7c02cee625cd85f335f99.php:89 #26 __TwigTemplate_1032c29a5a0263cab23221b23e3a2758:block_body in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:446 #25 Twig\Template:yieldBlock in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/1e/1ec5125fb16cc3e6c17173b17fff6b90.php:138 #24 __TwigTemplate_538d2e117f801cb6d6812fc0dcde62ab:doDisplay in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:402 #23 Twig\Template:yield in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/e2/e23ba441f6e7c02cee625cd85f335f99.php:54 #22 __TwigTemplate_1032c29a5a0263cab23221b23e3a2758:doDisplay in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:402 #21 Twig\Template:yield in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:358 #20 Twig\Template:display in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:373 #19 Twig\Template:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/TemplateWrapper.php:51 #18 Twig\TemplateWrapper:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php:1520 #17 Twig\Extension\CoreExtension:include in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/8d/8d91e55d173888ab252efdc1ba86455b.php:137 #16 __TwigTemplate_cfe3c6287c61664649537f13fca125ed:block_content in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:446 #15 Twig\Template:yieldBlock in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/07/07c2847d4614b1ffd33adb2d3a316822.php:569 #14 __TwigTemplate_c9bac1cf52dad65e56861ea735391f71:block_body in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:446 #13 Twig\Template:yieldBlock in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/07/07c2847d4614b1ffd33adb2d3a316822.php:148 #12 __TwigTemplate_c9bac1cf52dad65e56861ea735391f71:doDisplay in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:402 #11 Twig\Template:yield in /home/wowzahos/domains/app.wowzahosting.com/public_html/data/8d/8d91e55d173888ab252efdc1ba86455b.php:59 #10 __TwigTemplate_cfe3c6287c61664649537f13fca125ed:doDisplay in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:402 #9 Twig\Template:yield in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:358 #8 Twig\Template:display in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php:373 #7 Twig\Template:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/TemplateWrapper.php:51 #6 Twig\TemplateWrapper:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/AppClient.php:97 #5 Box_AppClient:render in /home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Order/Controller/Client.php:51 #4 Box\Mod\Order\Controller\Client:get_configure_product_by_slug in [internal]:0 #3 ReflectionMethod:invokeArgs in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/App.php:187 #2 Box_App:executeShared in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/App.php:316 #1 Box_App:processRequest in /home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/App.php:129 #0 Box_App:run in /home/wowzahos/domains/app.wowzahosting.com/public_html/index.php:89
Stack frames (56)
55
Twig\Error\RuntimeError
/modules/Orderbutton/html_client/mod_orderbutton_product_configuration.html.twig:44
54
Box\Mod\Order\Controller\Client get_configure_product_by_slug
[internal]:0
53
RedBeanPHP\RedException\SQL
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:206
52
Box\Mod\Order\Controller\Client get_configure_product_by_slug
[internal]:0
51
PDOException
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:181
50
PDOStatement execute
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:181
49
RedBeanPHP\Driver\RPDO runQuery
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:543
48
RedBeanPHP\Driver\RPDO GetAll
/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php:602
47
RedBeanPHP\Driver\RPDO GetOne
/vendor/gabordemooij/redbean/RedBeanPHP/Adapter/DBAdapter.php:199
46
RedBeanPHP\Adapter\DBAdapter getCell
/vendor/gabordemooij/redbean/RedBeanPHP/QueryWriter/AQueryWriter.php:846
45
RedBeanPHP\QueryWriter\AQueryWriter insertRecord
/vendor/gabordemooij/redbean/RedBeanPHP/QueryWriter/AQueryWriter.php:977
44
RedBeanPHP\QueryWriter\AQueryWriter updateRecord
/vendor/gabordemooij/redbean/RedBeanPHP/Repository/Frozen.php:87
43
RedBeanPHP\Repository\Frozen storeBean
/vendor/gabordemooij/redbean/RedBeanPHP/Repository.php:523
42
RedBeanPHP\Repository store
/vendor/gabordemooij/redbean/RedBeanPHP/OODB.php:385
41
RedBeanPHP\OODB store
/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php:696
40
RedBeanPHP\Facade store
/library/Box/Database.php:53
39
Box_Database store
/modules/Cart/Service.php:83
38
Box\Mod\Cart\Service getSessionCart
/modules/Cart/Api/Guest.php:72
37
Box\Mod\Cart\Api\Guest get_currency
/library/Api/Handler.php:108
36
Api_Handler __call
/library/Box/TwigExtensions.php:135
35
Box_TwigExtensions twig_money_convert
/data/16/16574d1a5cd62679d64eefaba4aa94a9.php:163
34
__TwigTemplate_63fb7ba422211635f5cd0a27f40d5215 {closure}
/vendor/twig/twig/src/Extension/CoreExtension.php:2106
33
Twig\Extension\CoreExtension captureOutput
/data/16/16574d1a5cd62679d64eefaba4aa94a9.php:98
32
__TwigTemplate_63fb7ba422211635f5cd0a27f40d5215 doDisplay
/vendor/twig/twig/src/Template.php:402
31
Twig\Template yield
/vendor/twig/twig/src/Template.php:358
30
Twig\Template display
/vendor/twig/twig/src/Template.php:373
29
Twig\Template render
/vendor/twig/twig/src/TemplateWrapper.php:51
28
Twig\TemplateWrapper render
/vendor/twig/twig/src/Extension/CoreExtension.php:1520
27
Twig\Extension\CoreExtension include
/data/e2/e23ba441f6e7c02cee625cd85f335f99.php:89
26
__TwigTemplate_1032c29a5a0263cab23221b23e3a2758 block_body
/vendor/twig/twig/src/Template.php:446
25
Twig\Template yieldBlock
/data/1e/1ec5125fb16cc3e6c17173b17fff6b90.php:138
24
__TwigTemplate_538d2e117f801cb6d6812fc0dcde62ab doDisplay
/vendor/twig/twig/src/Template.php:402
23
Twig\Template yield
/data/e2/e23ba441f6e7c02cee625cd85f335f99.php:54
22
__TwigTemplate_1032c29a5a0263cab23221b23e3a2758 doDisplay
/vendor/twig/twig/src/Template.php:402
21
Twig\Template yield
/vendor/twig/twig/src/Template.php:358
20
Twig\Template display
/vendor/twig/twig/src/Template.php:373
19
Twig\Template render
/vendor/twig/twig/src/TemplateWrapper.php:51
18
Twig\TemplateWrapper render
/vendor/twig/twig/src/Extension/CoreExtension.php:1520
17
Twig\Extension\CoreExtension include
/data/8d/8d91e55d173888ab252efdc1ba86455b.php:137
16
__TwigTemplate_cfe3c6287c61664649537f13fca125ed block_content
/vendor/twig/twig/src/Template.php:446
15
Twig\Template yieldBlock
/data/07/07c2847d4614b1ffd33adb2d3a316822.php:569
14
__TwigTemplate_c9bac1cf52dad65e56861ea735391f71 block_body
/vendor/twig/twig/src/Template.php:446
13
Twig\Template yieldBlock
/data/07/07c2847d4614b1ffd33adb2d3a316822.php:148
12
__TwigTemplate_c9bac1cf52dad65e56861ea735391f71 doDisplay
/vendor/twig/twig/src/Template.php:402
11
Twig\Template yield
/data/8d/8d91e55d173888ab252efdc1ba86455b.php:59
10
__TwigTemplate_cfe3c6287c61664649537f13fca125ed doDisplay
/vendor/twig/twig/src/Template.php:402
9
Twig\Template yield
/vendor/twig/twig/src/Template.php:358
8
Twig\Template display
/vendor/twig/twig/src/Template.php:373
7
Twig\Template render
/vendor/twig/twig/src/TemplateWrapper.php:51
6
Twig\TemplateWrapper render
/library/Box/AppClient.php:97
5
Box_AppClient render
/modules/Order/Controller/Client.php:51
4
Box\Mod\Order\Controller\Client get_configure_product_by_slug
[internal]:0
3
ReflectionMethod invokeArgs
/library/Box/App.php:187
2
Box_App executeShared
/library/Box/App.php:316
1
Box_App processRequest
/library/Box/App.php:129
0
Box_App run
/index.php:89
/home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Orderbutton/html_client/mod_orderbutton_product_configuration.html.twig
 
                            <hr>
 
                            <h5 class="mt-4 mb-1"><strong>{{ 'Billing'|trans }}</strong></h5>
 
                            <div class="row">
                                <div class="col-12 col-md-4 col-xl-3">
                                    {% if product.pricing.type == 'recurrent' %}
                                    <span>{{ 'Billing cycle'|trans }}</span>
                                    {% else %}
                                    <span>{{ 'One-time payment'|trans }}</span>
                                    {% endif %}
                                </div>
                                <div class="col">
                                    {% if product.pricing.type == 'recurrent' %}
                                    {% set periods = guest.system_periods %}
                                    <select class="form-select" name="period" id="period-selector">
                                        {% for code,prices in product.pricing.recurrent %}
                                            {% if prices.enabled %}
                                                <option value="{{code}}" data-bb-price="{{ prices.price | money_convert }}" name="period">{{ prices.price | money_convert }} ({{ periods[code] }})</option>
                                            {% endif %}
                                        {% endfor %}
                                    </select>
                                    {% elseif product.pricing.type == 'free' %}
                                    <span class="badge bg-success">{{ 0 | money_convert }}</span>
                                    {% else %}
                                    <span class="badge bg-success">{{ product.pricing.once.price | money_convert }}</span>
                                    {% endif %}
                                </div>
                            </div>
                            {# TODO: This does not seem to be implemented on the back-end
                            {% if product.allow_quantity_select %}
                            <div class="row mt-3">
                                <div class="col-12 col-md-4 col-xl-3">
                                    <span>{{ 'Quantity'|trans }}</span>
                                </div>
                                <div class="col">
                                    <input type="number" name="quantity" value="1" min="1" class="form-control w-50" style="max-width: 120px; text-align: center;">
                                </div>
                            </div>
Arguments
  1. "An exception has been thrown during the rendering of a template ("SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null") in "mod_orderbutton_product_configuration.html.twig" at line 44."
    
[internal]
/home/wowzahos/domains/app.wowzahosting.com/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[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null"
    
Exception message: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null
[internal]
/home/wowzahos/domains/app.wowzahosting.com/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[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null"
    
Exception message: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'id' cannot be null
/home/wowzahos/domains/app.wowzahosting.com/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/wowzahos/domains/app.wowzahosting.com/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 );
 
        $result_array = $this->resultArray;
        $this->resultArray = null;
        return $result_array;
    }
 
    /**
     * @see Driver::GetAssocRow
     */
    public function GetAssocRow( $sql, $bindings = array() )
    {
        $this->runQuery( $sql, $bindings, array(
                'fetchStyle' => \PDO::FETCH_ASSOC
            )
        );
        $result_array = $this->resultArray;
        $this->resultArray = null;
        return $result_array;
    }
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Driver/RPDO.php
                    'fetchStyle' => \PDO::FETCH_COLUMN
                )
            );
            $result_array = $this->resultArray;
            $this->resultArray = null;
 
            if ( empty( $result_array ) || !is_array( $result_array ) ) {
                return array();
            }
        }
 
        return $result_array;
    }
 
    /**
     * @see Driver::GetOne
     */
    public function GetOne( $sql, $bindings = array() )
    {
        $arr = $this->GetAll( $sql, $bindings );
 
        if ( empty( $arr[0] ) || !is_array( $arr[0] ) ) {
            return NULL;
        }
 
        return reset( $arr[0] );
    }
 
    /**
     * Alias for getOne().
     * Backward compatibility.
     *
     * @param string $sql      SQL
     * @param array  $bindings bindings
     *
     * @return string|NULL
     */
    public function GetCell( $sql, $bindings = array() )
    {
        return $this->GetOne( $sql, $bindings );
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Adapter/DBAdapter.php
     * @see Adapter::getAssocRow
     */
    public function getAssocRow($sql, $bindings = array())
    {
        $this->sql = $sql;
        $this->signal( 'sql_exec', $this );
 
        return $this->db->GetAssocRow( $sql, $bindings );
    }
 
    /**
     * @see Adapter::getCell
     */
    public function getCell( $sql, $bindings = array(), $noSignal = NULL )
    {
        $this->sql = $sql;
 
        if ( !$noSignal ) $this->signal( 'sql_exec', $this );
 
        return $this->db->GetOne( $sql, $bindings );
    }
 
    /**
     * @see Adapter::getCursor
     */
    public function getCursor( $sql, $bindings = array() )
    {
        return $this->db->GetCursor( $sql, $bindings );
    }
 
    /**
     * @see Adapter::getInsertID
     */
    public function getInsertID()
    {
        return $this->db->getInsertID();
    }
 
    /**
     * @see Adapter::getAffectedRows
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/QueryWriter/AQueryWriter.php
 
        if ( count( $insertvalues ) > 0 && is_array( $insertvalues[0] ) && count( $insertvalues[0] ) > 0 ) {
 
            $insertSlots = array();
            foreach ( $insertcolumns as $k => $v ) {
                $insertcolumns[$k] = $this->esc( $v );
 
                if (isset(self::$sqlFilters['w'][$type][$v])) {
                    $insertSlots[] = self::$sqlFilters['w'][$type][$v];
                } else {
                    $insertSlots[] = '?';
                }
            }
 
            $insertSQL = "INSERT INTO $table ( id, " . implode( ',', $insertcolumns ) . " ) VALUES
            ( $default, " . implode( ',', $insertSlots ) . " ) $suffix";
 
            $ids = array();
            foreach ( $insertvalues as $i => $insertvalue ) {
                $ids[] = $this->adapter->getCell( $insertSQL, $insertvalue, $i );
            }
 
            $result = count( $ids ) === 1 ? array_pop( $ids ) : $ids;
        } else {
            $result = $this->adapter->getCell( "INSERT INTO $table (id) VALUES($default) $suffix" );
        }
 
        if ( $suffix ) return $result;
 
        $last_id = $this->adapter->getInsertID();
 
        return $last_id;
    }
 
    /**
     * Checks table name or column name.
     *
     * @param string $table table string
     *
     * @return string
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/QueryWriter/AQueryWriter.php
        $this->adapter->exec( sprintf( $this->getDDLTemplate('addColumn', $beanType, $column ), $table, $column, $type ) );
    }
 
    /**
     * @see QueryWriter::updateRecord
     */
    public function updateRecord( $type, $updatevalues, $id = NULL )
    {
        $table = $type;
 
        if ( !$id ) {
            $insertcolumns = $insertvalues = array();
 
            foreach ( $updatevalues as $pair ) {
                $insertcolumns[] = $pair['property'];
                $insertvalues[]  = $pair['value'];
            }
 
            //Otherwise psql returns string while MySQL/SQLite return numeric causing problems with additions (array_diff)
            return (string) $this->insertRecord( $table, $insertcolumns, array( $insertvalues ) );
        }
 
        if ( $id && !count( $updatevalues ) ) {
            return $id;
        }
 
        $table = $this->esc( $table );
        $sql   = "UPDATE $table SET ";
 
        $p = $v = array();
 
        foreach ( $updatevalues as $uv ) {
 
            if ( isset( self::$sqlFilters['w'][$type][$uv['property']] ) ) {
                $p[] = " {$this->esc( $uv["property"] )} = ". self::$sqlFilters['w'][$type][$uv['property']];
            } else {
                $p[] = " {$this->esc( $uv["property"] )} = ? ";
            }
 
            $v[] = $uv['value'];
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Repository/Frozen.php
        if ( $bean->getMeta( 'changed' ) ) {
 
            list( $properties, $table ) = $bean->getPropertiesAndType();
            $id = $properties['id'];
            unset($properties['id']);
            $updateValues = array();
            $k1 = 'property';
            $k2 = 'value';
 
            $partial = ( $this->partialBeans === TRUE || ( is_array( $this->partialBeans ) && in_array( $table, $this->partialBeans ) ) );
            if ( $partial ) {
                $mask = $bean->getMeta( 'changelist' );
                $bean->setMeta( 'changelist', array() );
            }
 
            foreach( $properties as $key => $value ) {
                if ( $partial && !in_array( $key, $mask ) ) continue;
                $updateValues[] = array( $k1 => $key, $k2 => $value );
            }
            $bean->id = $this->writer->updateRecord( $table, $updateValues, $id );
            $bean->setMeta( 'changed', FALSE );
        }
        $bean->setMeta( 'tainted', FALSE );
    }
 
    /**
     * Part of the store() functionality.
     * Handles all new additions after the bean has been saved.
     * Stores addition bean in own-list, extracts the id and
     * adds a foreign key. Also adds a constraint in case the type is
     * in the dependent list.
     *
     * Note that this method raises a custom exception if the bean
     * is not an instance of OODBBean. Therefore it does not use
     * a type hint. This allows the user to take action in case
     * invalid objects are passed in the list.
     *
     * @param OODBBean $bean         bean to process
     * @param array    $ownAdditions list of addition beans in own-list
     *
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Repository.php
     * represent the value as an integer a string will be returned. We use
     * explicit casts instead of functions to preserve performance
     * (0.13 vs 0.28 for 10000 iterations on Core i3).
     *
     * @param OODBBean|SimpleModel|SimpleModelInterface $bean bean to store
     *
     * @return integer|string
     */
    public function store( $bean )
    {
        $processLists = $this->hasListsOrObjects( $bean );
        if ( !$processLists && !$bean->getMeta( 'tainted' ) ) {
            return $bean->getID(); //bail out!
        }
        $this->oodb->signal( 'update', $bean );
        $processLists = $this->hasListsOrObjects( $bean ); //check again, might have changed by model!
        if ( $processLists ) {
            $this->storeBeanWithLists( $bean );
        } else {
            $this->storeBean( $bean );
        }
        $this->oodb->signal( 'after_update', $bean );
 
        return ( (string) $bean->id === (string) (int) $bean->id ) ? (int) $bean->id : (string) $bean->id;
    }
 
    /**
     * Returns an array of beans. Pass a type and a series of ids and
     * this method will bring you the corresponding beans.
     *
     * important note: Because this method loads beans using the load()
     * function (but faster) it will return empty beans with ID 0 for
     * every bean that could not be located. The resulting beans will have the
     * passed IDs as their keys.
     *
     * @param string $type type of beans
     * @param array  $ids  ids to load
     *
     * @return array
     */
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/OODB.php
     * with this bean and RedBean runs in fluid mode the schema
     * will be altered to store the bean correctly.
     * If the database schema is not compatible with this bean and
     * RedBean runs in frozen mode it will throw an exception.
     * This function returns the primary key ID of the inserted
     * bean.
     *
     * The return value is an integer if possible. If it is not possible to
     * represent the value as an integer a string will be returned. We use
     * explicit casts instead of functions to preserve performance
     * (0.13 vs 0.28 for 10000 iterations on Core i3).
     *
     * @param OODBBean|SimpleModel|SimpleModelInterface $bean bean to store
     *
     * @return integer|string
     */
    public function store( $bean )
    {
        $bean = $this->unboxIfNeeded( $bean );
        $id = $this->repository->store( $bean );
        if ( self::$autoClearHistoryAfterStore ) {
                $bean->clearHistory();
        }
        return $id;
    }
 
    /**
     * Loads a bean from the object database.
     * It searches for a OODBBean Bean Object in the
     * database. It does not matter how this bean has been stored.
     * RedBean uses the primary key ID $id and the string $type
     * to find the bean. The $type specifies what kind of bean you
     * are looking for; this is the same type as used with the
     * dispense() function. If RedBean finds the bean it will return
     * the OODB Bean object; if it cannot find the bean
     * RedBean will return a new bean of type $type and with
     * primary key ID 0. In the latter case it acts basically the
     * same as dispense().
     *
     * Important note:
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/gabordemooij/redbean/RedBeanPHP/Facade.php
     * We then set the title of the bean to 'my post' and we
     * store the bean. The store() method will return the primary
     * key ID $id assigned by the database. We can now use this
     * ID to load the bean from the database again and delete it.
     *
     * If the second parameter is set to TRUE and
     * Hybrid mode is allowed (default OFF for novice), then RedBeanPHP
     * will automatically temporarily switch to fluid mode to attempt to store the
     * bean in case of an SQLException.
     *
     * @param OODBBean|SimpleModel|SimpleModelInterface $bean             bean to store
     * @param boolean              $unfreezeIfNeeded retries in fluid mode in hybrid mode
     *
     * @return integer|string
     */
    public static function store( $bean, $unfreezeIfNeeded = FALSE )
    {
        $result = NULL;
        try {
            $result = self::$redbean->store( $bean );
        } catch (SQLException $exception) {
            $wasFrozen = self::$redbean->isFrozen();
            if ( !self::$allowHybridMode || !$unfreezeIfNeeded ) throw $exception;
            self::freeze( FALSE );
            $result = self::$redbean->store( $bean );
            self::freeze( $wasFrozen );
        }
        return $result;
    }
 
    /**
     * Toggles fluid or frozen mode. In fluid mode the database
     * structure is adjusted to accommodate your objects. In frozen mode
     * this is not the case.
     *
     * You can also pass an array containing a selection of frozen types.
     * Let's call this chilly mode, it's just like fluid mode except that
     * certain types (i.e. tables) aren't touched.
     *
     * @param boolean|string[] $tf mode of operation (TRUE means frozen)
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/Database.php
    public function dispense($modelName)
    {
        $type = $this->_getTypeFromModelName($modelName);
        $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 = [])
    {
        return $this->orm->getAll($sql, $values);
    }
 
    public function getCell($sql, $values = [])
    {
        return $this->orm->getCell($sql, $values);
    }
 
    public function getRow($sql, $values = [])
    {
        return $this->orm->getRow($sql, $values);
    }
 
    public function getAssoc($sql, $values = [])
    {
        return $this->orm->getAssoc($sql, $values);
/home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Cart/Service.php
 
        if ($cart instanceof \Model_Cart) {
            return $cart;
        }
 
        $cc = $this->di['mod_service']('currency');
 
        if ($this->di['session']->get('client_id')) {
            $client_id = $this->di['session']->get('client_id');
            $currency = $cc->getCurrencyByClientId($client_id);
        } else {
            $currency = $cc->getDefault();
        }
 
        $cart = $this->di['db']->dispense('Cart');
        $cart->session_id = $sessionID;
        $cart->currency_id = $currency->id;
        $cart->created_at = date('Y-m-d H:i:s');
        $cart->updated_at = date('Y-m-d H:i:s');
        $this->di['db']->store($cart);
 
        return $cart;
    }
 
    public function addItem(\Model_Cart $cart, \Model_Product $product, array $data)
    {
        $event_params = [...$data, 'cart_id' => $cart->id, 'product_id' => $product->id];
        $this->di['events_manager']->fire(['event' => 'onBeforeProductAddedToCart', 'params' => $event_params]);
 
        $productService = $product->getService();
 
        if ($this->isRecurrentPricing($product)) {
            $required = [
                'period' => 'Period parameter not passed',
            ];
            $this->di['validator']->checkRequiredParamsForArray($required, $data);
 
            if (!$this->isPeriodEnabledForProduct($product, $data['period'])) {
                throw new \FOSSBilling\InformationException('Selected billing period is invalid');
            }
/home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Cart/Api/Guest.php
        $this->di['validator']->checkRequiredParamsForArray($required, $data);
 
        $currencyService = $this->di['mod_service']('currency');
        $currency = $currencyService->getByCode($data['currency']);
        if (!$currency instanceof \Model_Currency) {
            throw new \FOSSBilling\Exception('Currency not found');
        }
        $cart = $this->getService()->getSessionCart();
 
        return $this->getService()->changeCartCurrency($cart, $currency);
    }
 
    /**
     * Retrieve information about currently selected shopping cart currency.
     *
     * @return array Currency details
     */
    public function get_currency()
    {
        $cart = $this->getService()->getSessionCart();
 
        $currencyService = $this->di['mod_service']('currency');
        $currency = $this->di['db']->load('Currency', $cart->currency_id);
        if (!$currency instanceof \Model_Currency) {
            $currency = $currencyService->getDefault();
        }
 
        return $currencyService->toApiArray($currency);
    }
 
    /**
     * Apply Promo code to shopping cart.
     *
     * @return bool
     */
    public function apply_promo($data)
    {
        $required = [
            'promocode' => 'Promo code not passed',
        ];
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Api/Handler.php
        }
 
        $bb_mod = $this->di['mod']($mod);
 
        $api->setDi($this->di);
        $api->setMod($bb_mod);
        $api->setIdentity($this->identity);
        $api->setIp($this->di['request']->getClientIp());
        if ($bb_mod->hasService()) {
            $api->setService($this->di['mod_service']($mod));
        }
 
        if (!method_exists($api, $method_name) || !is_callable([$api, $method_name])) {
            $reflector = new ReflectionClass($api);
            if (!$reflector->hasMethod('__call')) {
                throw new FOSSBilling\Exception(':type API call :method does not exist in module :module', [':type' => ucfirst($this->type), ':method' => $method_name, ':module' => $mod], 740);
            }
        }
 
        return $api->{$method_name}($arguments);
    }
}
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/TwigExtensions.php
 
    public function twig_bb_admin_link_filter($link, ?array $params = null)
    {
        return $this->di['url']->adminLink($link, $params);
    }
 
    public function twig_period_title(Twig\Environment $env, $period)
    {
        $globals = $env->getGlobals();
        $api_guest = $globals['guest'];
 
        return $api_guest->system_period_title(['code' => $period]);
    }
 
    public function twig_money_convert(Twig\Environment $env, $price, ?string $currency = null)
    {
        $globals = $env->getGlobals();
        $api_guest = $globals['guest'];
        if (is_null($currency)) {
            $c = $api_guest->cart_get_currency();
            $currency = $c['code'];
        }
 
        return $api_guest->currency_format(['price' => $price, 'code' => $currency, 'convert' => true]);
    }
 
    public function money_convert_without_currency(Twig\Environment $env, $price, ?string $currency = null)
    {
        $globals = $env->getGlobals();
        $api_guest = $globals['guest'];
        if (is_null($currency)) {
            $c = $api_guest->cart_get_currency();
            $currency = $c['code'];
        }
 
        return $api_guest->currency_format(['price' => $price, 'code' => $currency, 'convert' => true, 'without_currency' => true]);
    }
 
    public function twig_money(Twig\Environment $env, $price, $currency = null)
    {
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/16/16574d1a5cd62679d64eefaba4aa94a9.php
                // line 39
                if ((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "pricing", [], "any", false, false, false, 39), "type", [], "any", false, false, false, 39) == "recurrent")) {
                    // line 40
                    yield "                                    ";
                    $context["periods"] = CoreExtension::getAttribute($this->env, $this->source, ($context["guest"] ?? null), "system_periods", [], "any", false, false, false, 40);
                    // line 41
                    yield "                                    <select class=\"form-select\" name=\"period\" id=\"period-selector\">
                                        ";
                    // line 42
                    $context['_parent'] = $context;
                    $context['_seq'] = CoreExtension::ensureTraversable(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "pricing", [], "any", false, false, false, 42), "recurrent", [], "any", false, false, false, 42));
                    foreach ($context['_seq'] as $context["code"] => $context["prices"]) {
                        // line 43
                        yield "                                            ";
                        if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, $context["prices"], "enabled", [], "any", false, false, false, 43)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
                            // line 44
                            yield "                                                <option value=\"";
                            yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($context["code"], "html", null, true);
                            yield "\" data-bb-price=\"";
                            yield $this->extensions['Box_TwigExtensions']->twig_money_convert($this->env, CoreExtension::getAttribute($this->env, $this->source, $context["prices"], "price", [], "any", false, false, false, 44));
                            yield "\" name=\"period\">";
                            yield $this->extensions['Box_TwigExtensions']->twig_money_convert($this->env, CoreExtension::getAttribute($this->env, $this->source, $context["prices"], "price", [], "any", false, false, false, 44));
                            yield " (";
                            yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((($_v0 = ($context["periods"] ?? null)) && is_array($_v0) || $_v0 instanceof ArrayAccess ? ($_v0[$context["code"]] ?? null) : null), "html", null, true);
                            yield ")</option>
                                            ";
                        }
                        // line 46
                        yield "                                        ";
                    }
                    $_parent = $context['_parent'];
                    unset($context['_seq'], $context['code'], $context['prices'], $context['_parent']);
                    $context = array_intersect_key($context, $_parent) + $_parent;
                    // line 47
                    yield "                                    </select>
                                    ";
                } elseif ((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source,                 // line 48
($context["product"] ?? null), "pricing", [], "any", false, false, false, 48), "type", [], "any", false, false, false, 48) == "free")) {
                    // line 49
                    yield "                                    <span class=\"badge bg-success\">";
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php
            return;
        }
 
        if ($env->hasExtension(SandboxExtension::class) && $env->getExtension(SandboxExtension::class)->isSandboxed()) {
            throw new RuntimeError(\sprintf('The callable passed to the "%s" %s must be a Closure in sandbox mode.', $thing, $type));
        }
 
        trigger_deprecation('twig/twig', '3.15', 'Passing a callable that is not a PHP \Closure as an argument to the "%s" %s is deprecated.', $thing, $type);
    }
 
    /**
     * @internal to be removed in Twig 4
     */
    public static function captureOutput(iterable $body): string
    {
        $level = ob_get_level();
        ob_start();
 
        try {
            foreach ($body as $data) {
                echo $data;
            }
        } catch (\Throwable $e) {
            while (ob_get_level() > $level) {
                ob_end_clean();
            }
 
            throw $e;
        }
 
        return ob_get_clean();
    }
 
    /**
     * @internal
     */
    public static function parseParentFunction(Parser $parser, Node $fakeNode, $args, int $line): AbstractExpression
    {
        if (!$blockName = $parser->peekBlockStack()) {
            throw new SyntaxError('Calling the "parent" function outside of a block is forbidden.', $line, $parser->getStream()->getSourceContext());
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/16/16574d1a5cd62679d64eefaba4aa94a9.php
            // line 16
            yield $this->extensions['Box_TwigExtensions']->twig_bb_client_link_filter("api/guest/cart/add_item");
            yield "\" data-api-msg=\"";
            yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(__trans("Product was added to shopping cart"), "html", null, true);
            yield "\"
                    data-api-redirect=\"";
            // line 17
            yield $this->extensions['Box_TwigExtensions']->twig_bb_client_link_filter("order", ["checkout" => 1]);
            yield "\" + \"";
            if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["request"] ?? null), "show_custom_form_values", [], "any", false, false, false, 17)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
                yield "&show_custom_form_values=1";
            }
            yield "\">
                    <input type=\"hidden\" name=\"CSRFToken\" value=\"";
            // line 18
            yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(($context["CSRFToken"] ?? null), "html", null, true);
            yield "\"/>
                    ";
            // line 19
            $context["product_details"] = ('' === $tmp = \Twig\Extension\CoreExtension::captureOutput((function () use (&$context, $macros, $blocks) {
                // line 20
                yield "                        <div class=\"well\">
                            <h3>";
                // line 21
                yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "title", [], "any", false, false, false, 21), "html", null, true);
                yield "</h3>
                            ";
                // line 22
                if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "description", [], "any", false, false, false, 22)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
                    // line 23
                    yield "                                ";
                    yield $this->extensions['Box_TwigExtensions']->twig_markdown_filter($this->env, CoreExtension::getAttribute($this->env, $this->source, ($context["product"] ?? null), "description", [], "any", false, false, false, 23));
                    yield "
                            ";
                }
                // line 25
                yield "
                            <hr>
 
                            <h5 class=\"mt-4 mb-1\"><strong>";
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function yield(array $context, array $blocks = []): iterable
    {
        $context += $this->env->getGlobals();
        $blocks = array_merge($this->blocks, $blocks);
 
        try {
            yield from $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 (\Throwable $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;
        }
    }
 
/home/wowzahos/domains/app.wowzahosting.com/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(): array
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = []): void
    {
        foreach ($this->yield($context, $blocks) as $data) {
            echo $data;
        }
    }
 
    public function render(array $context): string
    {
        if (!$this->useYield) {
            $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();
                }
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
    }
 
    public function display(array $context, array $blocks = []): void
    {
        foreach ($this->yield($context, $blocks) as $data) {
            echo $data;
        }
    }
 
    public function render(array $context): string
    {
        if (!$this->useYield) {
            $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();
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/TemplateWrapper.php
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function stream(array $context = []): iterable
    {
        yield from $this->template->yield($context);
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function streamBlock(string $name, array $context = []): iterable
    {
        yield from $this->template->yieldBlock($name, $context);
    }
 
    public function render(array $context = []): string
    {
        return $this->template->render($context);
    }
 
    /**
     * @return void
     */
    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
     */
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php
            }
        }
 
        try {
            $loaded = null;
            try {
                $loaded = $env->resolveTemplate($template);
            } catch (LoaderError $e) {
                if (!$ignoreMissing) {
                    throw $e;
                }
 
                return '';
            }
 
            if ($isSandboxed) {
                $loaded->unwrap()->checkSecurity();
            }
 
            return $loaded->render($variables);
        } finally {
            if ($isSandboxed && !$alreadySandboxed) {
                $sandbox->disableSandbox();
            }
        }
    }
 
    /**
     * Returns a template content without rendering it.
     *
     * @param string $name          The template name
     * @param bool   $ignoreMissing Whether to ignore missing templates or not
     *
     * @internal
     */
    public static function source(Environment $env, $name, $ignoreMissing = false): string
    {
        $loader = $env->getLoader();
        try {
            return $loader->getSourceContext($name)->getCode();
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/e2/e23ba441f6e7c02cee625cd85f335f99.php
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_body(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
        // line 7
        yield "<div class=\"row\">
    <div class=\"col-md-12\">
        <div class=\"card border-0\" id=\"orderbutton\" style=\"margin-bottom: 0\">
            <div class=\"card-body p-1\">
                <div id=\"orderManager\" class=\"accordion\">
 
                    ";
        // line 13
        yield Twig\Extension\CoreExtension::include($this->env, $context, "mod_orderbutton_choose_product.html.twig");
        yield "
 
                    ";
        // line 15
        yield Twig\Extension\CoreExtension::include($this->env, $context, "mod_orderbutton_product_configuration.html.twig");
        yield "
 
                    ";
        // line 17
        if ((($tmp =  !($context["client"] ?? null)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
            // line 18
            yield "                        ";
            yield Twig\Extension\CoreExtension::include($this->env, $context, "mod_orderbutton_client.html.twig");
            yield "
                    ";
        }
        // line 20
        yield "
                    ";
        // line 21
        yield Twig\Extension\CoreExtension::include($this->env, $context, "mod_orderbutton_checkout.html.twig");
        yield "
 
                    <div class=\"accordion-item\">
                        <h2 class=\"accordion-header\">
/home/wowzahos/domains/app.wowzahosting.com/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 {
                yield from $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 (\Throwable $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 ($parent = $this->getParent($context)) {
            yield from $parent->unwrap()->yieldBlock($name, $context, array_merge($this->blocks, $blocks), false, $templateContext ?? $this);
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/1e/1ec5125fb16cc3e6c17173b17fff6b90.php
        yield "
    ";
        // line 26
        yield $this->env->getFunction('encore_entry_script_tags')->getCallable()("huraga");
        yield "
    ";
        // line 27
        yield from $this->unwrap()->yieldBlock('head', $context, $blocks);
        // line 28
        yield "    ";
        yield from $this->unwrap()->yieldBlock('js', $context, $blocks);
        // line 29
        yield "</head>
<body class=\"";
        // line 30
        yield from $this->unwrap()->yieldBlock('body_class', $context, $blocks);
        yield "\">
    ";
        // line 31
        yield from $this->unwrap()->yieldBlock('body', $context, $blocks);
        // line 32
        yield "    <div aria-live=\"polite\" aria-atomic=\"true\" class=\"position-relative\">
        <div class=\"toast-container position-fixed bottom-0 end-0 p-3\" style=\"z-index: 1070;\"></div>
    </div>
    ";
        // line 35
        yield Twig\Extension\CoreExtension::include($this->env, $context, "partial_pending_messages.html.twig", [], true, true);
        yield "
</body>
</html>
";
        yield from [];
    }
 
    // line 5
    /**
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_meta_title(array $context, array $blocks = []): iterable
    {
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function yield(array $context, array $blocks = []): iterable
    {
        $context += $this->env->getGlobals();
        $blocks = array_merge($this->blocks, $blocks);
 
        try {
            yield from $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 (\Throwable $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;
        }
    }
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/e2/e23ba441f6e7c02cee625cd85f335f99.php
            'js' => [$this, 'block_js'],
        ];
    }
 
    protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
    {
        // line 1
        return "layout_public.html.twig";
    }
 
    protected function doDisplay(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
        // line 2
        $context["loader_nr"] = ((CoreExtension::getAttribute($this->env, $this->source, ($context["request"] ?? null), "loader", [], "any", true, true, false, 2)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, ($context["request"] ?? null), "loader", [], "any", false, false, false, 2), "8")) : ("8"));
        // line 3
        $context["loader_url"] = (("img/assets/loaders/loader" . ($context["loader_nr"] ?? null)) . ".gif");
        // line 1
        $this->parent = $this->load("layout_public.html.twig", 1);
        yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));
    }
 
    // line 4
    /**
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_meta_title(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
        yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(__trans("Order"), "html", null, true);
        yield from [];
    }
 
    // line 6
    /**
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_body(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function yield(array $context, array $blocks = []): iterable
    {
        $context += $this->env->getGlobals();
        $blocks = array_merge($this->blocks, $blocks);
 
        try {
            yield from $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 (\Throwable $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;
        }
    }
 
/home/wowzahos/domains/app.wowzahosting.com/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(): array
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = []): void
    {
        foreach ($this->yield($context, $blocks) as $data) {
            echo $data;
        }
    }
 
    public function render(array $context): string
    {
        if (!$this->useYield) {
            $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();
                }
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
    }
 
    public function display(array $context, array $blocks = []): void
    {
        foreach ($this->yield($context, $blocks) as $data) {
            echo $data;
        }
    }
 
    public function render(array $context): string
    {
        if (!$this->useYield) {
            $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();
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/TemplateWrapper.php
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function stream(array $context = []): iterable
    {
        yield from $this->template->yield($context);
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function streamBlock(string $name, array $context = []): iterable
    {
        yield from $this->template->yieldBlock($name, $context);
    }
 
    public function render(array $context = []): string
    {
        return $this->template->render($context);
    }
 
    /**
     * @return void
     */
    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
     */
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php
            }
        }
 
        try {
            $loaded = null;
            try {
                $loaded = $env->resolveTemplate($template);
            } catch (LoaderError $e) {
                if (!$ignoreMissing) {
                    throw $e;
                }
 
                return '';
            }
 
            if ($isSandboxed) {
                $loaded->unwrap()->checkSecurity();
            }
 
            return $loaded->render($variables);
        } finally {
            if ($isSandboxed && !$alreadySandboxed) {
                $sandbox->disableSandbox();
            }
        }
    }
 
    /**
     * Returns a template content without rendering it.
     *
     * @param string $name          The template name
     * @param bool   $ignoreMissing Whether to ignore missing templates or not
     *
     * @internal
     */
    public static function source(Environment $env, $name, $ignoreMissing = false): string
    {
        $loader = $env->getLoader();
        try {
            return $loader->getSourceContext($name)->getCode();
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/8d/8d91e55d173888ab252efdc1ba86455b.php
        <div class=\"col-md-12\">
            <div class=\"card mb-4\">
                <div class=\"card-header py-3 py-3\">
                    <div class=\"d-flex justify-content-between align-items-center\">
                        <div class=\"w-100\">
                            <h1 class=\"mb-1\">";
        // line 23
        yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(__trans("Products"), "html", null, true);
        yield "</h1>
                            ";
        // line 24
        yield Twig\Extension\CoreExtension::include($this->env, $context, "mod_orderbutton_currency.html.twig");
        yield "
                        </div>
                    </div>
                </div>
                <div class=\"card-body overflow-hidden\">
                    ";
        // line 29
        yield Twig\Extension\CoreExtension::include($this->env, $context, "mod_orderbutton_index.html.twig");
        yield "
                </div>
            </div>
        </div>
    </div>
";
        yield from [];
    }
 
    // line 36
    /**
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_sidebar2(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
        // line 37
        yield "    ";
        yield Twig\Extension\CoreExtension::include($this->env, $context, "partial_currency.html.twig");
        yield "
/home/wowzahos/domains/app.wowzahosting.com/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 {
                yield from $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 (\Throwable $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 ($parent = $this->getParent($context)) {
            yield from $parent->unwrap()->yieldBlock($name, $context, array_merge($this->blocks, $blocks), false, $templateContext ?? $this);
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/07/07c2847d4614b1ffd33adb2d3a316822.php
                    <section role=\"main\">
                        ";
        // line 162
        yield from $this->unwrap()->yieldBlock('content_before', $context, $blocks);
        // line 163
        yield "                        <div class=\"content-block\" role=\"main\">
                            ";
        // line 164
        if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["settings"] ?? null), "show_breadcrumb", [], "any", false, false, false, 164)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
            // line 165
            yield "                                ";
            yield from $this->unwrap()->yieldBlock('breadcrumbs', $context, $blocks);
            // line 176
            yield "                            ";
        }
        // line 177
        yield "
                            ";
        // line 178
        yield from $this->unwrap()->yieldBlock('content', $context, $blocks);
        // line 179
        yield "
                            ";
        // line 180
        yield Twig\Extension\CoreExtension::include($this->env, $context, "partial_message.html.twig");
        yield "
 
                            ";
        // line 182
        yield from $this->unwrap()->yieldBlock('content_after', $context, $blocks);
        // line 183
        yield "                        </div>
                    </section>
                    <div id=\"push\"></div>
                </div>
 
                ";
        // line 188
        if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["settings"] ?? null), "footer_enabled", [], "any", false, false, false, 188)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
            // line 189
/home/wowzahos/domains/app.wowzahosting.com/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 {
                yield from $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 (\Throwable $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 ($parent = $this->getParent($context)) {
            yield from $parent->unwrap()->yieldBlock($name, $context, array_merge($this->blocks, $blocks), false, $templateContext ?? $this);
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/07/07c2847d4614b1ffd33adb2d3a316822.php
        yield $this->extensions['FOSSBilling\TwigExtensions\DebugBar']->renderHead();
        yield "
 
    ";
        // line 28
        yield from $this->unwrap()->yieldBlock('head', $context, $blocks);
        // line 29
        yield "    ";
        yield from $this->unwrap()->yieldBlock('js', $context, $blocks);
        // line 30
        yield "</head>
 
<body class=\"";
        // line 32
        yield from $this->unwrap()->yieldBlock('body_class', $context, $blocks);
        yield "\">
 
";
        // line 34
        yield from $this->unwrap()->yieldBlock('body', $context, $blocks);
        // line 266
        yield "
    ";
        // line 267
        if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["settings"] ?? null), "inject_javascript", [], "any", false, false, false, 267)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
            // line 268
            yield "        ";
            yield CoreExtension::getAttribute($this->env, $this->source, ($context["settings"] ?? null), "inject_javascript", [], "any", false, false, false, 268);
            yield "
    ";
        }
        // line 270
        yield "    ";
        yield Twig\Extension\CoreExtension::include($this->env, $context, "partial_pending_messages.html.twig", [], true, true);
        yield "
    ";
        // line 271
        if ((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["guest"] ?? null), "extension_is_on", [["mod" => "cookieconsent"]], "method", false, false, false, 271)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) {
            // line 272
            yield "        ";
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function yield(array $context, array $blocks = []): iterable
    {
        $context += $this->env->getGlobals();
        $blocks = array_merge($this->blocks, $blocks);
 
        try {
            yield from $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 (\Throwable $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;
        }
    }
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/data/8d/8d91e55d173888ab252efdc1ba86455b.php
        ];
    }
 
    protected function doGetParent(array $context): bool|string|Template|TemplateWrapper
    {
        // line 1
        return $this->load((((($tmp = CoreExtension::getAttribute($this->env, $this->source, ($context["request"] ?? null), "ajax", [], "any", false, false, false, 1)) && $tmp instanceof Markup ? (string) $tmp : $tmp)) ? ("layout_blank.html.twig") : ("layout_default.html.twig")), 1);
    }
 
    protected function doDisplay(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
        // line 3
        $macros["mf"] = $this->macros["mf"] = $this->load("macro_functions.html.twig", 3)->unwrap();
        // line 7
        $context["loader_nr"] = ((CoreExtension::getAttribute($this->env, $this->source, ($context["request"] ?? null), "loader", [], "any", true, true, false, 7)) ? (Twig\Extension\CoreExtension::default(CoreExtension::getAttribute($this->env, $this->source, ($context["request"] ?? null), "loader", [], "any", false, false, false, 7), "8")) : ("8"));
        // line 8
        $context["loader_url"] = (("img/assets/loaders/loader" . ($context["loader_nr"] ?? null)) . ".gif");
        // line 1
        yield from $this->getParent($context)->unwrap()->yield($context, array_merge($this->blocks, $blocks));
    }
 
    // line 5
    /**
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_meta_title(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
        yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(__trans("Order"), "html", null, true);
        yield from [];
    }
 
    // line 10
    /**
     * @return iterable<null|scalar|\Stringable>
     */
    public function block_body_class(array $context, array $blocks = []): iterable
    {
        $macros = $this->macros;
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function yield(array $context, array $blocks = []): iterable
    {
        $context += $this->env->getGlobals();
        $blocks = array_merge($this->blocks, $blocks);
 
        try {
            yield from $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 (\Throwable $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;
        }
    }
 
/home/wowzahos/domains/app.wowzahosting.com/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(): array
    {
        return $this->blocks;
    }
 
    public function display(array $context, array $blocks = []): void
    {
        foreach ($this->yield($context, $blocks) as $data) {
            echo $data;
        }
    }
 
    public function render(array $context): string
    {
        if (!$this->useYield) {
            $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();
                }
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/Template.php
    }
 
    public function display(array $context, array $blocks = []): void
    {
        foreach ($this->yield($context, $blocks) as $data) {
            echo $data;
        }
    }
 
    public function render(array $context): string
    {
        if (!$this->useYield) {
            $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();
        }
 
        $content = '';
        foreach ($this->yield($context) as $data) {
            $content .= $data;
        }
 
        return $content;
    }
 
    /**
/home/wowzahos/domains/app.wowzahosting.com/public_html/vendor/twig/twig/src/TemplateWrapper.php
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function stream(array $context = []): iterable
    {
        yield from $this->template->yield($context);
    }
 
    /**
     * @return iterable<scalar|\Stringable|null>
     */
    public function streamBlock(string $name, array $context = []): iterable
    {
        yield from $this->template->yieldBlock($name, $context);
    }
 
    public function render(array $context = []): string
    {
        return $this->template->render($context);
    }
 
    /**
     * @return void
     */
    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
     */
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/AppClient.php
 
    /**
     * @param string $fileName
     */
    public function render($fileName, $variableArray = [], $ext = 'html.twig'): string
    {
        try {
            $template = $this->getTwig()->load(Path::changeExtension($fileName, $ext));
        } catch (Twig\Error\LoaderError $e) {
            $this->di['logger']->setChannel('routing')->info($e->getMessage());
            http_response_code(404);
 
            throw new FOSSBilling\InformationException('Page not found', null, 404);
        }
 
        if ("{$fileName}.{$ext}" == 'mod_page_sitemap.xml') {
            header('Content-Type: application/xml');
        }
 
        return $template->render($variableArray);
    }
 
    protected function getTwig(): Twig\Environment
    {
        $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::join(PATH_THEMES, $code),
                'type' => 'client',
            ]
        );
 
        $twig = $this->di['twig'];
        $twig->setLoader($loader);
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/modules/Order/Controller/Client.php
        $app->get('/order/:id', 'get_configure_product', ['id' => '[0-9]+'], static::class);
        $app->get('/order/:slug', 'get_configure_product_by_slug', ['slug' => '[a-z0-9-]+'], static::class);
        $app->get('/order/service/manage/:id', 'get_order', ['id' => '[0-9]+'], static::class);
    }
 
    public function get_products(\Box_App $app)
    {
        return $app->render('mod_order_index');
    }
 
    public function get_configure_product_by_slug(\Box_App $app, $slug)
    {
        $api = $this->di['api_guest'];
        $product = $api->product_get(['slug' => $slug]);
        $tpl = 'mod_service' . $product['type'] . '_order';
        if ($api->system_template_exists(['file' => $tpl . '.html.twig'])) {
            return $app->render($tpl, ['product' => $product]);
        }
 
        return $app->render('mod_order_product', ['product' => $product]);
    }
 
    public function get_configure_product(\Box_App $app, $id)
    {
        $api = $this->di['api_guest'];
        $product = $api->product_get(['id' => $id]);
        $tpl = 'mod_service' . $product['type'] . '_order';
        if ($api->system_template_exists(['file' => $tpl . '.html.twig'])) {
            return $app->render($tpl, ['product' => $product]);
        }
 
        return $app->render('mod_order_product', ['product' => $product]);
    }
 
    public function get_orders(\Box_App $app)
    {
        $this->di['is_client_logged'];
 
        return $app->render('mod_order_list');
    }
[internal]
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/App.php
    {
        $this->debugBar['time']->startMeasure('executeShared', 'Reflecting module controller (shared mapping)');
        $class = new $classname();
        if ($class instanceof InjectionAwareInterface) {
            $class->setDi($this->di);
        }
        $reflection = new ReflectionMethod($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();
            }
        }
        $this->debugBar['time']->stopMeasure('executeShared');
 
        return $reflection->invokeArgs($class, $args);
    }
 
    protected function execute($methodName, $params, $classname = null): string
    {
        $this->debugBar['time']->startMeasure('execute', 'Reflecting module controller');
 
        $reflection = new ReflectionMethod(static::class, $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();
            }
        }
 
        $this->debugBar['time']->stopMeasure('execute');
 
        return $reflection->invokeArgs($this, $args);
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/App.php
                    $exc = new FOSSBilling\InformationException('The system is undergoing maintenance. Please try again later', [], 503);
                    $apiController = new Box\Mod\Api\Controller\Client();
                    $apiController->setDi($this->di);
 
                    return $apiController->renderJson(null, $exc);
                } else {
                    return $this->render('mod_system_maintenance');
                }
            }
        }
 
        $this->debugBar['time']->startMeasure('sharedMapping', 'Checking shared mappings');
        $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) {
                $this->debugBar['time']->stopMeasure('sharedMapping');
 
                return $this->executeShared($mapping[4], $mapping[2], $url->params);
            }
        }
        $this->debugBar['time']->stopMeasure('sharedMapping');
 
        // this class mappings
        $this->debugBar['time']->startMeasure('mapping', 'Checking 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) {
                $this->debugBar['time']->stopMeasure('mapping');
 
                return $this->execute($mapping[2], $url->params);
            }
        }
        $this->debugBar['time']->stopMeasure('mapping');
 
        $e = new FOSSBilling\InformationException('Page :url not found', [':url' => $this->url], 404);
 
/home/wowzahos/domains/app.wowzahosting.com/public_html/library/Box/App.php
    public function delete(string $url, string $methodName, ?array $conditions = [], ?string $class = null): void
    {
        $this->event('delete', $url, $methodName, $conditions, $class);
    }
 
    public function run(): string
    {
        $this->debugBar['time']->startMeasure('registerModule', 'Registering module routes');
        $this->registerModule();
        $this->debugBar['time']->stopMeasure('registerModule');
 
        $this->debugBar['time']->startMeasure('init', 'Initializing the app');
        $this->init();
        $this->debugBar['time']->stopMeasure('init');
 
        $this->debugBar['time']->startMeasure('checkperm', 'Checking access to module');
        $this->checkPermission();
        $this->debugBar['time']->stopMeasure('checkperm');
 
        return $this->processRequest();
    }
 
    /**
     * @param string $path
     */
    public function redirect($path): never
    {
        $location = $this->di['url']->link($path);
        header("Location: $location");
        exit;
    }
 
    public function render($fileName, $variableArray = []): string
    {
        return 'Rendering ' . $fileName;
    }
 
    public function sendFile($filename, $contentType, $path): false|int
    {
        header("Content-type: $contentType");
/home/wowzahos/domains/app.wowzahosting.com/public_html/index.php
 
// If HTTP error code has been passed, handle it.
if (!is_null($http_err_code)) {
    switch ($http_err_code) {
        case '404':
            $e = new FOSSBilling\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 FOSSBilling\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.3.27"
Error code
0
Instance ID
"e086f6af-ec56-43df-9336-7bd0493ea3c2"
Key Value
_url
"/order/owncast-hosting-platinum-plan"
empty
empty
empty
empty
Key Value
PATH
"/usr/local/bin:/bin:/usr/bin"
HTTP_ACCEPT
"*/*"
HTTP_ACCEPT_ENCODING
"gzip, br, zstd, deflate"
HTTP_HOST
"app.wowzahosting.com"
HTTP_USER_AGENT
"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"
DOCUMENT_ROOT
"/home/wowzahos/domains/app.wowzahosting.com/public_html"
REMOTE_ADDR
"216.73.216.118"
REMOTE_PORT
"45782"
SERVER_ADDR
"162.220.165.240"
SERVER_NAME
"app.wowzahosting.com"
SERVER_ADMIN
"webmaster@wowzahosting.com"
SERVER_PORT
"443"
REQUEST_SCHEME
"https"
REQUEST_URI
"/order/owncast-hosting-platinum-plan"
REDIRECT_URL
"/order/owncast-hosting-platinum-plan"
REDIRECT_REQUEST_METHOD
"GET"
HTTPS
"on"
HTTP_AUTHORIZATION
""
REDIRECT_STATUS
"200"
X_SPDY
"HTTP2"
SSL_PROTOCOL
"TLSv1.3"
SSL_CIPHER
"TLS_AES_256_GCM_SHA384"
SSL_CIPHER_USEKEYSIZE
"256"
SSL_CIPHER_ALGKEYSIZE
"256"
SCRIPT_FILENAME
"/home/wowzahos/domains/app.wowzahosting.com/public_html/index.php"
QUERY_STRING
""
SCRIPT_URI
"https://app.wowzahosting.com/order/owncast-hosting-platinum-plan"
SCRIPT_URL
"/order/owncast-hosting-platinum-plan"
SCRIPT_NAME
"/index.php"
SERVER_PROTOCOL
"HTTP/1.1"
SERVER_SOFTWARE
"LiteSpeed"
REQUEST_METHOD
"GET"
X-LSCACHE
"on"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1764093265.6975
REQUEST_TIME
1764093265
empty
0. Whoops\Handler\PrettyPageHandler