From 7eb52885ca2f4ae775f11877af54905c0598feaa Mon Sep 17 00:00:00 2001 From: Romain Lebbadi-Breteau <romain@lebbadi.fr> Date: Sun, 5 Feb 2023 03:14:03 -0500 Subject: [PATCH] 50/50 --- composer.json | 1 + composer.lock | 167 +- config/bundles.php | 1 + index.html | 2125 ++++++++++++++++++++++++++ migrations/Version20230205081040.php | 34 + package-lock.json | 117 +- src/Controller/ApiController.php | 51 +- src/DataFixtures/AppFixtures.php | 38 + src/Entity/Transaction.php | 40 +- symfony.lock | 12 + templates/connection.html.twig | 5 + 11 files changed, 2465 insertions(+), 126 deletions(-) create mode 100644 index.html create mode 100644 migrations/Version20230205081040.php create mode 100644 src/DataFixtures/AppFixtures.php diff --git a/composer.json b/composer.json index 59aebf6..2c786a7 100644 --- a/composer.json +++ b/composer.json @@ -94,6 +94,7 @@ } }, "require-dev": { + "doctrine/doctrine-fixtures-bundle": "^3.4", "phpunit/phpunit": "^10.0", "symfony/browser-kit": "6.2.*", "symfony/css-selector": "6.2.*", diff --git a/composer.lock b/composer.lock index 13a1c8d..470ec5f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "b9e86b465dd4c65506f17eb22cbd594a", + "content-hash": "a659557a21bfc78b323050b349489fa1", "packages": [ { "name": "doctrine/annotations", @@ -7593,6 +7593,171 @@ } ], "packages-dev": [ + { + "name": "doctrine/data-fixtures", + "version": "1.6.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/data-fixtures.git", + "reference": "c27821d038e64f1bfc852a94064d65d2a75ad01f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/c27821d038e64f1bfc852a94064d65d2a75ad01f", + "reference": "c27821d038e64f1bfc852a94064d65d2a75ad01f", + "shasum": "" + }, + "require": { + "doctrine/persistence": "^1.3.3|^2.0|^3.0", + "php": "^7.2 || ^8.0" + }, + "conflict": { + "doctrine/dbal": "<2.13", + "doctrine/orm": "<2.12", + "doctrine/phpcr-odm": "<1.3.0" + }, + "require-dev": { + "doctrine/coding-standard": "^10.0", + "doctrine/dbal": "^2.13 || ^3.0", + "doctrine/deprecations": "^1.0", + "doctrine/mongodb-odm": "^1.3.0 || ^2.0.0", + "doctrine/orm": "^2.12", + "ext-sqlite3": "*", + "phpstan/phpstan": "^1.5", + "phpunit/phpunit": "^8.5 || ^9.5", + "symfony/cache": "^5.0 || ^6.0", + "vimeo/psalm": "^4.10" + }, + "suggest": { + "alcaeus/mongo-php-adapter": "For using MongoDB ODM 1.3 with PHP 7 (deprecated)", + "doctrine/mongodb-odm": "For loading MongoDB ODM fixtures", + "doctrine/orm": "For loading ORM fixtures", + "doctrine/phpcr-odm": "For loading PHPCR ODM fixtures" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\DataFixtures\\": "lib/Doctrine/Common/DataFixtures" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Data Fixtures for all Doctrine Object Managers", + "homepage": "https://www.doctrine-project.org", + "keywords": [ + "database" + ], + "support": { + "issues": "https://github.com/doctrine/data-fixtures/issues", + "source": "https://github.com/doctrine/data-fixtures/tree/1.6.3" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdata-fixtures", + "type": "tidelift" + } + ], + "time": "2023-01-07T15:10:22+00:00" + }, + { + "name": "doctrine/doctrine-fixtures-bundle", + "version": "3.4.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/DoctrineFixturesBundle.git", + "reference": "601988c5b46dbd20a0f886f967210aba378a6fd5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/601988c5b46dbd20a0f886f967210aba378a6fd5", + "reference": "601988c5b46dbd20a0f886f967210aba378a6fd5", + "shasum": "" + }, + "require": { + "doctrine/data-fixtures": "^1.3", + "doctrine/doctrine-bundle": "^1.11|^2.0", + "doctrine/orm": "^2.6.0", + "doctrine/persistence": "^1.3.7|^2.0|^3.0", + "php": "^7.1 || ^8.0", + "symfony/config": "^3.4|^4.3|^5.0|^6.0", + "symfony/console": "^3.4|^4.3|^5.0|^6.0", + "symfony/dependency-injection": "^3.4.47|^4.3|^5.0|^6.0", + "symfony/doctrine-bridge": "^3.4|^4.1|^5.0|^6.0", + "symfony/http-kernel": "^3.4|^4.3|^5.0|^6.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpstan/phpstan": "^1.4.10", + "phpunit/phpunit": "^7.5.20 || ^8.5.26 || ^9.5.20", + "symfony/phpunit-bridge": "^6.0.8", + "vimeo/psalm": "^4.22" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Doctrine\\Bundle\\FixturesBundle\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Doctrine Project", + "homepage": "https://www.doctrine-project.org" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony DoctrineFixturesBundle", + "homepage": "https://www.doctrine-project.org", + "keywords": [ + "Fixture", + "persistence" + ], + "support": { + "issues": "https://github.com/doctrine/DoctrineFixturesBundle/issues", + "source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/3.4.2" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdoctrine-fixtures-bundle", + "type": "tidelift" + } + ], + "time": "2022-04-28T17:58:29+00:00" + }, { "name": "masterminds/html5", "version": "2.7.6", diff --git a/config/bundles.php b/config/bundles.php index e944e66..cf0ea26 100644 --- a/config/bundles.php +++ b/config/bundles.php @@ -14,4 +14,5 @@ return [ Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle::class => ['all' => true], Symfony\WebpackEncoreBundle\WebpackEncoreBundle::class => ['all' => true], Symfony\UX\React\ReactBundle::class => ['all' => true], + Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true], ]; diff --git a/index.html b/index.html new file mode 100644 index 0000000..714c1a7 --- /dev/null +++ b/index.html @@ -0,0 +1,2125 @@ +1<!-- Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46) (500 Internal Server Error) --> +<!DOCTYPE html> +<html lang="en"> + <head> + <meta charset="UTF-8" /> + <meta name="robots" content="noindex,nofollow" /> + <meta name="viewport" content="width=device-width,initial-scale=1" /> + <title>Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46) (500 Internal Server Error)</title> + <link rel="icon" type="image/png" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAgCAYAAAABtRhCAAADVUlEQVRIx82XX0jTURTHLYPyqZdefQx66CEo80+aYpoIkqzUikz6Z5klQoWUWYRIJYEUGpQ+lIr9U5dOTLdCtkmWZis3rbnC5fw/neYW002307mX/cZvP3/7o1PwwOdh95x7vnf39zvnd29AgBer2xO6DclAXiMqZAqxIiNIN/IYSUS2BPhjmGATchUxI+ADWiRhpWK7HKuHFVBFdmU5YvnI4grFGCaReF/EBH4KsZlGgj2JBTuCYBWRIYF8YoEOJ6wBt/gEs7mBbyOjQXruPLSdOgPCiEiPSUUHDoL8Ug5IUo9B/d5wrt+G7OAKNrODPuVdB6vRCIzN6SdBlpW9RIgk/1FeAXabzRlrUPVCS/JhbmwudztnGeeH9AyXBIwtmM3wLinZJZHifjHw2V+NBoRh+9ixQrbgbnaSIcl7cGea6hoXQbNe7za241oeO5Z0p42M4BV2EqP2D50wo+6HzvwC6C4sApNOR8cmOrtcnhtj2kYRyC9eBvXzKrBZrXSs72kFd1t3MoKVbMekQkEnSNKOO8fac3LpmK6l1TlGtsxmsdKFsecPYgwxst0cwROMYDXboSotg0WLBRqjY51jLYcENElXwW2XJKPydvoI2GN9T8rBtrAArYIUruBJXkFheCQYlCpQP6uk5dAQFQNaUROMSGVQFxLmkoQsxDJrhLbTZ+nvVsERME9MgPJRKV/58AsyomTSzE813WLFvWK++qI0xSfQl8k8Pg46sYRuv5t6dS+4RqxDwaa4BGjYH+NTQvKScIp9+YL/hoZh3jDtLRHtt2C3g6bmhX+CpsFBWg7ilDSPgj0lD2ncr5ev/BP8VvyAJhqVyZeUhPOrEhEFxgEtjft846Z/guQTNT89Q5P9flMLoth4F7808wKtWWKzAwNQHxrh/1vaid2F+XpYTSbQf1XA2McOmOpROnvpvMEA4tSjq1cW0sws2gCYxswY6TKkvzYnJq1NHZLnRU4BX+4U0uburvusu8Kv8iHY7qefkM4IFngJHEOUXmLEPgiGsI8YnlZILit3vSSLRTQe/MPIZva5pshNIEmyFQlCvruJKXPkCEfmePzkphXHdzZNQdoRI9KPlBAxlj/I8U97ERPS5bjGbWDFbEdqHVe5caTBeZZx2H/IMvzeN15yoQAAAABJRU5ErkJggg=="> + <style>/* This file is based on WebProfilerBundle/Resources/views/Profiler/profiler.css.twig. + If you make any change in this file, verify the same change is needed in the other file. */ +:root { + --font-sans-serif: Helvetica, Arial, sans-serif; + --page-background: #f9f9f9; + --color-text: #222; + /* when updating any of these colors, do the same in toolbar.css.twig */ + --color-success: #4f805d; + --color-warning: #a46a1f; + --color-error: #b0413e; + --color-muted: #999; + --tab-background: #fff; + --tab-color: #444; + --tab-active-background: #666; + --tab-active-color: #fafafa; + --tab-disabled-background: #f5f5f5; + --tab-disabled-color: #999; + --metric-value-background: #fff; + --metric-value-color: inherit; + --metric-unit-color: #999; + --metric-label-background: #e0e0e0; + --metric-label-color: inherit; + --table-border: #e0e0e0; + --table-background: #fff; + --table-header: #e0e0e0; + --trace-selected-background: #F7E5A1; + --tree-active-background: #F7E5A1; + --exception-title-color: var(--base-2); + --shadow: 0px 0px 1px rgba(128, 128, 128, .2); + --border: 1px solid #e0e0e0; + --background-error: var(--color-error); + --highlight-comment: #969896; + --highlight-default: #222222; + --highlight-keyword: #a71d5d; + --highlight-string: #183691; + --base-0: #fff; + --base-1: #f5f5f5; + --base-2: #e0e0e0; + --base-3: #ccc; + --base-4: #666; + --base-5: #444; + --base-6: #222; +} + +.theme-dark { + --page-background: #36393e; + --color-text: #e0e0e0; + --color-muted: #777; + --color-error: #d43934; + --tab-background: #555; + --tab-color: #ccc; + --tab-active-background: #888; + --tab-active-color: #fafafa; + --tab-disabled-background: var(--page-background); + --tab-disabled-color: #777; + --metric-value-background: #555; + --metric-value-color: inherit; + --metric-unit-color: #999; + --metric-label-background: #777; + --metric-label-color: #e0e0e0; + --trace-selected-background: #71663acc; + --table-border: #444; + --table-background: #333; + --table-header: #555; + --info-background: rgba(79, 148, 195, 0.5); + --tree-active-background: var(--metric-label-background); + --exception-title-color: var(--base-2); + --shadow: 0px 0px 1px rgba(32, 32, 32, .2); + --border: 1px solid #666; + --background-error: #b0413e; + --highlight-comment: #dedede; + --highlight-default: var(--base-6); + --highlight-keyword: #ff413c; + --highlight-string: #70a6fd; + --base-0: #2e3136; + --base-1: #444; + --base-2: #666; + --base-3: #666; + --base-4: #666; + --base-5: #e0e0e0; + --base-6: #f5f5f5; + --card-label-background: var(--tab-active-background); + --card-label-color: var(--tab-active-color); +} + +html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0} + +html { + /* always display the vertical scrollbar to avoid jumps when toggling contents */ + overflow-y: scroll; +} +body { background-color: var(--page-background); color: var(--base-6); font: 14px/1.4 Helvetica, Arial, sans-serif; padding-bottom: 45px; } + +a { cursor: pointer; text-decoration: none; } +a:hover { text-decoration: underline; } +abbr[title] { border-bottom: none; cursor: help; text-decoration: none; } + +code, pre { font: 13px/1.5 Consolas, Monaco, Menlo, "Ubuntu Mono", "Liberation Mono", monospace; } + +table, tr, th, td { background: var(--base-0); border-collapse: collapse; vertical-align: top; } +table { background: var(--base-0); border: var(--border); box-shadow: 0px 0px 1px rgba(128, 128, 128, .2); margin: 1em 0; width: 100%; } +table th, table td { border: solid var(--base-2); border-width: 1px 0; padding: 8px 10px; } +table th { background-color: var(--base-2); font-weight: bold; text-align: left; } + +.m-t-5 { margin-top: 5px; } +.hidden-xs-down { display: none; } +.block { display: block; } +.full-width { width: 100%; } +.hidden { display: none; } +.prewrap { white-space: pre-wrap; } +.nowrap { white-space: nowrap; } +.newline { display: block; } +.break-long-words { word-wrap: break-word; overflow-wrap: break-word; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; min-width: 0; } +.text-small { font-size: 12px !important; } +.text-muted { color: #999; } +.text-bold { font-weight: bold; } +.empty { border: 4px dashed var(--base-2); color: #999; margin: 1em 0; padding: .5em 2em; } + +.status-success { background: rgba(94, 151, 110, 0.3); } +.status-warning { background: rgba(240, 181, 24, 0.3); } +.status-error { background: rgba(176, 65, 62, 0.2); } +.status-success td, .status-warning td, .status-error td { background: transparent; } +tr.status-error td, tr.status-warning td { border-bottom: 1px solid var(--base-2); border-top: 1px solid var(--base-2); } +.status-warning .colored { color: #A46A1F; } +.status-error .colored { color: var(--color-error); } + +.sf-toggle { cursor: pointer; position: relative; } +.sf-toggle-content { -moz-transition: display .25s ease; -webkit-transition: display .25s ease; transition: display .25s ease; } +.sf-toggle-content.sf-toggle-hidden { display: none; } +.sf-toggle-content.sf-toggle-visible { display: block; } +thead.sf-toggle-content.sf-toggle-visible, tbody.sf-toggle-content.sf-toggle-visible { display: table-row-group; } +.sf-toggle-off .icon-close, .sf-toggle-on .icon-open { display: none; } +.sf-toggle-off .icon-open, .sf-toggle-on .icon-close { display: block; } + +.tab-navigation { margin: 0 0 1em 0; padding: 0; } +.tab-navigation li { background: var(--tab-background); border: 1px solid var(--table-border); color: var(--tab-color); cursor: pointer; display: inline-block; font-size: 16px; margin: 0 0 0 -1px; padding: .5em .75em; z-index: 1; } +.tab-navigation li .badge { background-color: var(--base-1); color: var(--base-4); display: inline-block; font-size: 14px; font-weight: bold; margin-left: 8px; min-width: 10px; padding: 1px 6px; text-align: center; white-space: nowrap; } +.tab-navigation li.disabled { background: var(--tab-disabled-background); color: var(--tab-disabled-color); } +.tab-navigation li.active { background: var(--tab-active-background); color: var(--tab-active-color); z-index: 1100; } +.tab-navigation li.active .badge { background-color: var(--base-5); color: var(--base-2); } +.tab-content > *:first-child { margin-top: 0; } +.tab-navigation li .badge.status-warning { background: var(--color-warning); color: #FFF; } +.tab-navigation li .badge.status-error { background: var(--background-error); color: #FFF; } +.sf-tabs .tab:not(:first-child) { display: none; } + +[data-filters] { position: relative; } +[data-filtered] { cursor: pointer; } +[data-filtered]:after { content: '\00a0\25BE'; } +[data-filtered]:hover .filter-list li { display: inline-flex; } +[class*="filter-hidden-"] { display: none; } +.filter-list { position: absolute; border: var(--border); box-shadow: var(--shadow); margin: 0; padding: 0; display: flex; flex-direction: column; } +.filter-list :after { content: ''; } +.filter-list li { + background: var(--tab-disabled-background); + border-bottom: var(--border); + color: var(--tab-disabled-color); + display: none; + list-style: none; + margin: 0; + padding: 5px 10px; + text-align: left; + font-weight: normal; +} +.filter-list li.active { + background: var(--tab-background); + color: var(--tab-color); +} +.filter-list li.last-active { + background: var(--tab-active-background); + color: var(--tab-active-color); +} + +.filter-list-level li { cursor: s-resize; } +.filter-list-level li.active { cursor: n-resize; } +.filter-list-level li.last-active { cursor: default; } +.filter-list-level li.last-active:before { content: '\2714\00a0'; } +.filter-list-choice li:before { content: '\2714\00a0'; color: transparent; } +.filter-list-choice li.active:before { color: unset; } + +.container { max-width: 1024px; margin: 0 auto; padding: 0 15px; } +.container::after { content: ""; display: table; clear: both; } + +header { background-color: #222; color: rgba(255, 255, 255, 0.75); font-size: 13px; height: 33px; line-height: 33px; padding: 0; } +header .container { display: flex; justify-content: space-between; } +.logo { flex: 1; font-size: 13px; font-weight: normal; margin: 0; padding: 0; } +.logo svg { height: 18px; width: 18px; opacity: .8; vertical-align: -5px; } + +.help-link { margin-left: 15px; } +.help-link a { color: inherit; } +.help-link .icon svg { height: 15px; width: 15px; opacity: .7; vertical-align: -2px; } +.help-link a:hover { color: #EEE; text-decoration: none; } +.help-link a:hover svg { opacity: .9; } + +.exception-summary { background: var(--background-error); border-bottom: 2px solid rgba(0, 0, 0, 0.1); border-top: 1px solid rgba(0, 0, 0, .3); flex: 0 0 auto; margin-bottom: 15px; } +.exception-metadata { background: rgba(0, 0, 0, 0.1); padding: 7px 0; } +.exception-metadata .container { display: flex; flex-direction: row; justify-content: space-between; } +.exception-metadata h2, .exception-metadata h2 > a { color: rgba(255, 255, 255, 0.8); font-size: 13px; font-weight: 400; margin: 0; } +.exception-http small { font-size: 13px; opacity: .7; } +.exception-hierarchy { flex: 1; } +.exception-hierarchy .icon { margin: 0 3px; opacity: .7; } +.exception-hierarchy .icon svg { height: 13px; width: 13px; vertical-align: -2px; } + +.exception-without-message .exception-message-wrapper { display: none; } +.exception-message-wrapper .container { display: flex; align-items: flex-start; min-height: 70px; padding: 10px 15px 8px; } +.exception-message { flex-grow: 1; } +.exception-message, .exception-message a { color: #FFF; font-size: 21px; font-weight: 400; margin: 0; } +.exception-message.long { font-size: 18px; } +.exception-message a { border-bottom: 1px solid rgba(255, 255, 255, 0.5); font-size: inherit; text-decoration: none; } +.exception-message a:hover { border-bottom-color: #ffffff; } + +.exception-illustration { flex-basis: 111px; flex-shrink: 0; height: 66px; margin-left: 15px; opacity: .7; } + +.trace + .trace { margin-top: 30px; } +.trace-head { background-color: var(--base-2); padding: 10px; position: relative; } +.trace-head .trace-class { color: var(--base-6); font-size: 18px; font-weight: bold; line-height: 1.3; margin: 0; position: relative; } +.trace-head .trace-namespace { color: #999; display: block; font-size: 13px; } +.trace-head .icon { position: absolute; right: 0; top: 0; } +.trace-head .icon svg { fill: var(--base-5); height: 24px; width: 24px; } + +.trace-details { background: var(--base-0); border: var(--border); box-shadow: 0px 0px 1px rgba(128, 128, 128, .2); margin: 1em 0; table-layout: fixed; } + +.trace-message { font-size: 14px; font-weight: normal; margin: .5em 0 0; } + +.trace-line { position: relative; padding-top: 8px; padding-bottom: 8px; } +.trace-line + .trace-line { border-top: var(--border); } +.trace-line:hover { background: var(--base-1); } +.trace-line a { color: var(--base-6); } +.trace-line .icon { opacity: .4; position: absolute; left: 10px; } +.trace-line .icon svg { fill: var(--base-5); height: 16px; width: 16px; } +.trace-line .icon.icon-copy { left: auto; top: auto; padding-left: 5px; display: none } +.trace-line:hover .icon.icon-copy:not(.hidden) { display: inline-block } +.trace-line-header { padding-left: 36px; padding-right: 10px; } + +.trace-file-path, .trace-file-path a { color: var(--base-6); font-size: 13px; } +.trace-class { color: var(--color-error); } +.trace-type { padding: 0 2px; } +.trace-method { color: var(--color-error); font-weight: bold; } +.trace-arguments { color: #777; font-weight: normal; padding-left: 2px; } + +.trace-code { background: var(--base-0); font-size: 12px; margin: 10px 10px 2px 10px; padding: 10px; overflow-x: auto; white-space: nowrap; } +.trace-code ol { margin: 0; float: left; } +.trace-code li { color: #969896; margin: 0; padding-left: 10px; float: left; width: 100%; } +.trace-code li + li { margin-top: 5px; } +.trace-code li.selected { background: var(--trace-selected-background); margin-top: 2px; } +.trace-code li code { color: var(--base-6); white-space: nowrap; } + +.trace-as-text .stacktrace { line-height: 1.8; margin: 0 0 15px; white-space: pre-wrap; } + +@media (min-width: 575px) { + .hidden-xs-down { display: initial; } + .help-link { margin-left: 30px; } +}</style> + <style>.sf-reset .traces { + padding-bottom: 14px; +} +.sf-reset .traces li { + font-size: 12px; + color: #868686; + padding: 5px 4px; + list-style-type: decimal; + margin-left: 20px; +} +.sf-reset #logs .traces li.error { + font-style: normal; + color: #AA3333; + background: #f9ecec; +} +.sf-reset #logs .traces li.warning { + font-style: normal; + background: #ffcc00; +} +/* fix for Opera not liking empty <li> */ +.sf-reset .traces li:after { + content: "\00A0"; +} +.sf-reset .trace { + border: 1px solid #D3D3D3; + padding: 10px; + overflow: auto; + margin: 10px 0 20px; +} +.sf-reset .block-exception { + -moz-border-radius: 16px; + -webkit-border-radius: 16px; + border-radius: 16px; + margin-bottom: 20px; + background-color: #f6f6f6; + border: 1px solid #dfdfdf; + padding: 30px 28px; + word-wrap: break-word; + overflow: hidden; +} +.sf-reset .block-exception div { + color: #313131; + font-size: 10px; +} +.sf-reset .block-exception-detected .illustration-exception, +.sf-reset .block-exception-detected .text-exception { + float: left; +} +.sf-reset .block-exception-detected .illustration-exception { + width: 152px; +} +.sf-reset .block-exception-detected .text-exception { + width: 670px; + padding: 30px 44px 24px 46px; + position: relative; +} +.sf-reset .text-exception .open-quote, +.sf-reset .text-exception .close-quote { + font-family: Arial, Helvetica, sans-serif; + position: absolute; + color: #C9C9C9; + font-size: 8em; +} +.sf-reset .open-quote { + top: 0; + left: 0; +} +.sf-reset .close-quote { + bottom: -0.5em; + right: 50px; +} +.sf-reset .block-exception p { + font-family: Arial, Helvetica, sans-serif; +} +.sf-reset .block-exception p a, +.sf-reset .block-exception p a:hover { + color: #565656; +} +.sf-reset .logs h2 { + float: left; + width: 654px; +} +.sf-reset .error-count, .sf-reset .support { + float: right; + width: 170px; + text-align: right; +} +.sf-reset .error-count span { + display: inline-block; + background-color: #aacd4e; + -moz-border-radius: 6px; + -webkit-border-radius: 6px; + border-radius: 6px; + padding: 4px; + color: white; + margin-right: 2px; + font-size: 11px; + font-weight: bold; +} + +.sf-reset .support a { + display: inline-block; + -moz-border-radius: 6px; + -webkit-border-radius: 6px; + border-radius: 6px; + padding: 4px; + color: #000000; + margin-right: 2px; + font-size: 11px; + font-weight: bold; +} + +.sf-reset .toggle { + vertical-align: middle; +} +.sf-reset .linked ul, +.sf-reset .linked li { + display: inline; +} +.sf-reset #output-content { + color: #000; + font-size: 12px; +} +.sf-reset #traces-text pre { + white-space: pre; + font-size: 12px; + font-family: monospace; +}</style> + </head> + <body> + <script> + document.body.classList.add( + localStorage.getItem('symfony/profiler/theme') || (matchMedia('(prefers-color-scheme: dark)').matches ? 'theme-dark' : 'theme-light') + ); + </script> + + <header> + <div class="container"> + <h1 class="logo"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#FFF" d="M12 .9C5.8.9.9 5.8.9 12a11 11 0 1 0 22.2 0A11 11 0 0 0 12 .9zm6.5 6c-.6 0-.9-.3-.9-.8 0-.2 0-.4.2-.6l.2-.4c0-.3-.5-.4-.6-.4-1.8.1-2.3 2.5-2.7 4.4l-.2 1c1 .2 1.8 0 2.2-.3.6-.4-.2-.7-.1-1.2.1-.3.5-.5.7-.6.5 0 .7.5.7.9 0 .7-1 1.8-3 1.8l-.6-.1-.6 2.4c-.4 1.6-.8 3.8-2.4 5.7-1.4 1.7-2.9 1.9-3.5 1.9-1.2 0-1.9-.6-2-1.5 0-.8.7-1.3 1.2-1.3.6 0 1.1.5 1.1 1s-.2.6-.4.6c-.1.1-.3.2-.3.4 0 .1.1.3.4.3.5 0 .8-.3 1.1-.5 1.2-.9 1.6-2.7 2.2-5.7l.1-.7.7-3.2c-.8-.6-1.3-1.4-2.4-1.7-.6-.1-1.1.1-1.5.5-.4.5-.2 1.1.2 1.5l.7.6c.7.8 1.2 1.6 1 2.5-.3 1.5-2 2.6-4 1.9-1.8-.6-2-1.8-1.8-2.5.2-.6.6-.7 1.1-.6.5.2.6.7.6 1.2l-.1.3c-.2.1-.3.3-.3.4-.1.4.4.6.7.7.7.3 1.6-.2 1.8-.8a1 1 0 0 0-.4-1.1l-.7-.8c-.4-.4-1.1-1.4-.7-2.6.1-.5.4-.9.7-1.3a4 4 0 0 1 2.8-.6c1.2.4 1.8 1.1 2.6 1.8.5-1.2 1-2.4 1.8-3.5.9-.9 1.9-1.6 3.1-1.7 1.3.2 2.2.7 2.2 1.6 0 .4-.2 1.1-.9 1.1z"/></svg> Symfony Exception</h1> + + <div class="help-link"> + <a href="https://symfony.com/doc/6.2.6/index.html"> + <span class="icon"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path fill="#FFF" d="M1703 478q40 57 18 129l-275 906q-19 64-76.5 107.5T1247 1664H324q-77 0-148.5-53.5T76 1479q-24-67-2-127 0-4 3-27t4-37q1-8-3-21.5t-3-19.5q2-11 8-21t16.5-23.5T116 1179q23-38 45-91.5t30-91.5q3-10 .5-30t-.5-28q3-11 17-28t17-23q21-36 42-92t25-90q1-9-2.5-32t.5-28q4-13 22-30.5t22-22.5q19-26 42.5-84.5T404 411q1-8-3-25.5t-2-26.5q2-8 9-18t18-23 17-21q8-12 16.5-30.5t15-35 16-36 19.5-32 26.5-23.5 36-11.5T620 134l-1 3q38-9 51-9h761q74 0 114 56t18 130l-274 906q-36 119-71.5 153.5T1089 1408H220q-27 0-38 15-11 16-1 43 24 70 144 70h923q29 0 56-15.5t35-41.5l300-987q7-22 5-57 38 15 59 43zm-1064 2q-4 13 2 22.5t20 9.5h608q13 0 25.5-9.5T1311 480l21-64q4-13-2-22.5t-20-9.5H702q-13 0-25.5 9.5T660 416zm-83 256q-4 13 2 22.5t20 9.5h608q13 0 25.5-9.5T1228 736l21-64q4-13-2-22.5t-20-9.5H619q-13 0-25.5 9.5T577 672z"/></svg></span> + <span class="hidden-xs-down">Symfony</span> Docs + </a> + </div> + </div> + </header> + + <div class="exception-summary "> + <div class="exception-metadata"> + <div class="container"> + <h2 class="exception-hierarchy"> + <a href="#trace-box-1"><abbr title="ErrorException">ErrorException</abbr></a> + </h2> + <h2 class="exception-http"> + HTTP 500 <small>Internal Server Error</small> + </h2> + </div> + </div> + + <div class="exception-message-wrapper"> + <div class="container"> + <h1 class="break-long-words exception-message">Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46)</h1> + + <div class="exception-illustration hidden-xs-down"> + <svg viewBox="0 0 136 81" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.4"><path d="M92.4 20.4a23.2 23.2 0 0 1 9 1.9 23.7 23.7 0 0 1 5.2 3 24.3 24.3 0 0 1 3.4 3.4 24.8 24.8 0 0 1 5 9.4c.5 1.7.8 3.4 1 5.2v14.5h.4l.5.2a7.4 7.4 0 0 0 2.5.2l.2-.2.6-.8.8-1.3-.2-.1a5.5 5.5 0 0 1-.8-.3 5.6 5.6 0 0 1-2.3-1.8 5.7 5.7 0 0 1-.9-1.6 6.5 6.5 0 0 1-.2-2.8 7.3 7.3 0 0 1 .5-2l.3-.3.8-.9.3-.3c.2-.2.5-.3.8-.3H120.7c.2 0 .3-.1.4 0h.4l.2.1.3.2.2-.4.3-.4.1-.1 1.2-1 .3-.2.4-.1.4-.1h.3l1.5.1.4.1.8.5.1.2 1 1.1v.2H129.4l.4-.2 1.4-.5h1.1c.3 0 .7.2 1 .4.2 0 .3.2.5.3l.2.2.5.3.4.6.1.3.4 1.4.1.4v.6a7.8 7.8 0 0 1-.1.6 9.9 9.9 0 0 1-.8 2.4 7.8 7.8 0 0 1-3 3.3 6.4 6.4 0 0 1-1 .5 6.1 6.1 0 0 1-.6.2l-.7.1h-.1a23.4 23.4 0 0 1-.2 1.7 14.3 14.3 0 0 1-.6 2.1l-.8 2a9.2 9.2 0 0 1-.4.6l-.7 1a9.1 9.1 0 0 1-2.3 2.2c-.9.5-2 .6-3 .7l-1.4.1h-.5l-.4.1a15.8 15.8 0 0 1-2.8-.1v4.2a9.7 9.7 0 0 1-.7 3.5 9.6 9.6 0 0 1-1.7 2.8 9.3 9.3 0 0 1-3 2.3 9 9 0 0 1-5.4.7 9 9 0 0 1-3-1 9.4 9.4 0 0 1-2.7-2.5 10 10 0 0 1-1 1.2 9.3 9.3 0 0 1-2 1.3 9 9 0 0 1-2.4 1 9 9 0 0 1-6.5-1.1A9.4 9.4 0 0 1 85 77V77a10.9 10.9 0 0 1-.6.6 9.3 9.3 0 0 1-2.7 2 9 9 0 0 1-6 .8 9 9 0 0 1-2.4-1 9.3 9.3 0 0 1-2.3-1.7 9.6 9.6 0 0 1-1.8-2.8 9.7 9.7 0 0 1-.8-3.7v-4a18.5 18.5 0 0 1-2.9.2l-1.2-.1c-1.9-.3-3.7-1-5.1-2.2a8.2 8.2 0 0 1-1.1-1 10.2 10.2 0 0 1-.9-1.2 15.3 15.3 0 0 1-.7-1.3 20.8 20.8 0 0 1-1.9-6.2v-.2a6.5 6.5 0 0 1-1-.3 6.1 6.1 0 0 1-.6-.3 6.6 6.6 0 0 1-.9-.6 8.2 8.2 0 0 1-2.7-3.7 10 10 0 0 1-.3-1 10.3 10.3 0 0 1-.3-1.9V47v-.4l.1-.4.6-1.4.1-.2a2 2 0 0 1 .8-.8l.3-.2.3-.2a3.2 3.2 0 0 1 1.8-.5h.4l.3.2 1.4.6.2.2.4.3.3.4.7-.7.2-.2.4-.2.6-.2h2.1l.4.2.4.2.3.2.8 1 .2-.1h.1v-.1H63l1.1.1h.3l.8.5.3.4.7 1 .2.3.1.5a11 11 0 0 1 .2 1.5c0 .8 0 1.6-.3 2.3a6 6 0 0 1-.5 1.2 5.5 5.5 0 0 1-3.3 2.5 12.3 12.3 0 0 0 1.4 3h.1l.2.1 1 .2h1.5l.5-.2H67.8l.5-.2h.1V44v-.4a26.7 26.7 0 0 1 .3-2.3 24.7 24.7 0 0 1 5.7-12.5 24.2 24.2 0 0 1 3.5-3.3 23.7 23.7 0 0 1 4.9-3 23.2 23.2 0 0 1 5.6-1.7 23.7 23.7 0 0 1 4-.3zm-.3 2a21.2 21.2 0 0 0-8 1.7 21.6 21.6 0 0 0-4.8 2.7 22.2 22.2 0 0 0-3.2 3 22.7 22.7 0 0 0-5 9.2 23.4 23.4 0 0 0-.7 4.9v15.7l-.5.1a34.3 34.3 0 0 1-1.5.3h-.2l-.4.1h-.4l-.9.2a10 10 0 0 1-1.9 0c-.5 0-1-.2-1.5-.4a1.8 1.8 0 0 1-.3-.2 2 2 0 0 1-.3-.3 5.2 5.2 0 0 1-.1-.2 9 9 0 0 1-.6-.9 13.8 13.8 0 0 1-1-2 14.3 14.3 0 0 1-.6-2 14 14 0 0 1-.1-.8v-.2h.3a12.8 12.8 0 0 0 1.4-.2 4.4 4.4 0 0 0 .3 0 3.6 3.6 0 0 0 1.1-.7 3.4 3.4 0 0 0 1.2-1.7l.2-1.2a5.1 5.1 0 0 0 0-.8 7.2 7.2 0 0 0-.1-.8l-.7-1-1.2-.2-1 .7-.1 1.3a5 5 0 0 1 .1.4v.6a1 1 0 0 1 0 .3c-.1.3-.4.4-.7.5l-1.2.4v-.7A9.9 9.9 0 0 1 60 49l.3-.6v-.2l.1-.1v-1.6l-1-1.2h-1.5l-1 1.1v.4a5.3 5.3 0 0 0-.2.6 5.5 5.5 0 0 0 0 .5c0 .7 0 1.4.3 2 0 .4.2.8.4 1.2L57 51a9.5 9.5 0 0 1-1.1-.5h-.2a2 2 0 0 1-.4-.3c-.4-.4-.5-1-.6-1.6a5.6 5.6 0 0 1 0-.5v-.5-.5l-.6-1.5-1.4-.6-.9.3s-.2 0-.3.2a2 2 0 0 1-.1 0l-.6 1.4v.7a8.5 8.5 0 0 0 .5 2c.4 1.1 1 2.1 2 2.8a4.7 4.7 0 0 0 2.1.9h1a22.8 22.8 0 0 0 .1 1 18.1 18.1 0 0 0 .8 3.8 18.2 18.2 0 0 0 1.6 3.7l1 1.3c1 1 2.3 1.6 3.7 2a11.7 11.7 0 0 0 4.8 0h.4l.5-.2.5-.1.6-.2v6.6a8 8 0 0 0 .1 1.3 7.5 7.5 0 0 0 2.4 4.3 7.2 7.2 0 0 0 2.3 1.3 7 7 0 0 0 7-1.1 7.5 7.5 0 0 0 2-2.6A7.7 7.7 0 0 0 85 72V71a8.2 8.2 0 0 0 .2 1.3c0 .7.3 1.4.6 2a7.5 7.5 0 0 0 1.7 2.3 7.3 7.3 0 0 0 2.2 1.4 7.1 7.1 0 0 0 4.6.2 7.2 7.2 0 0 0 2.4-1.2 7.5 7.5 0 0 0 2.1-2.7 7.8 7.8 0 0 0 .7-2.4V71a9.3 9.3 0 0 0 .1.6 7.6 7.6 0 0 0 .6 2.5 7.5 7.5 0 0 0 2.4 3 7.1 7.1 0 0 0 7 .8 7.3 7.3 0 0 0 2.3-1.5 7.5 7.5 0 0 0 1.6-2.3 7.6 7.6 0 0 0 .5-2l.1-1.1v-6.7l.4.1a12.2 12.2 0 0 0 2 .5 11.1 11.1 0 0 0 2.5 0h.8l1.2-.1a9.5 9.5 0 0 0 1.4-.2l.9-.3a3.5 3.5 0 0 0 .6-.4l1.2-1.4a12.2 12.2 0 0 0 .8-1.2c0-.3.2-.5.3-.7a15.9 15.9 0 0 0 .7-2l.3-1.6v-1.3l.2-.9V54.6a15.5 15.5 0 0 0 1.8 0 4.5 4.5 0 0 0 1.4-.5 5.7 5.7 0 0 0 2.5-3.2 7.6 7.6 0 0 0 .4-1.5v-.3l-.4-1.4a5.2 5.2 0 0 1-.2-.1l-.4-.4a3.8 3.8 0 0 0-.2 0 1.4 1.4 0 0 0-.5-.2l-1.4.4-.7 1.3v.7a5.7 5.7 0 0 1-.1.8l-.7 1.4a1.9 1.9 0 0 1-.5.3h-.3a9.6 9.6 0 0 1-.8.3 8.8 8.8 0 0 1-.6 0l.2-.4.2-.5.2-.3v-.4l.1-.2V50l.1-1 .1-.6v-.6a4.8 4.8 0 0 0 0-.8v-.2l-1-1.1-1.5-.2-1.1 1-.2 1.4v.1l.2.4.2.3v.4l.1 1.1v.3l.1.5v.8a9.6 9.6 0 0 1-.8-.3l-.2-.1h-.3l-.8-.1h-.2a1.6 1.6 0 0 1-.2-.2.9.9 0 0 1-.2-.2 1 1 0 0 1-.1-.5l.2-.9v-1.2l-.9-.8h-1.2l-.8.9v.3a4.8 4.8 0 0 0-.3 2l.3.9a3.5 3.5 0 0 0 1.2 1.6l1 .5.8.2 1.4.1h.4l.2.1a12.1 12.1 0 0 1-1 2.6 13.2 13.2 0 0 1-.8 1.5 9.5 9.5 0 0 1-1 1.2l-.2.3a1.7 1.7 0 0 1-.4.3 2.4 2.4 0 0 1-.7.2h-2.5a7.8 7.8 0 0 1-.6-.2l-.7-.2h-.2a14.8 14.8 0 0 1-.6-.2 23.4 23.4 0 0 1-.4-.1l-.4-.1-.3-.1V43.9a34.6 34.6 0 0 0 0-.6 23.6 23.6 0 0 0-.4-3 22.7 22.7 0 0 0-1.5-4.7 22.6 22.6 0 0 0-4.6-6.7 21.9 21.9 0 0 0-6.9-4.7 21.2 21.2 0 0 0-8.1-1.8H92zm9.1 33.7l.3.1a1 1 0 0 1 .6.8v.4a8.4 8.4 0 0 1 0 .5 8.8 8.8 0 0 1-1.6 4.2l-1 1.3A10 10 0 0 1 95 66c-1.3.3-2.7.4-4 .3a10.4 10.4 0 0 1-2.7-.8 10 10 0 0 1-3.6-2.5 9.3 9.3 0 0 1-.8-1 9 9 0 0 1-.7-1.2 8.6 8.6 0 0 1-.8-3.4V57a1 1 0 0 1 .3-.6 1 1 0 0 1 1.3-.2 1 1 0 0 1 .4.8v.4a6.5 6.5 0 0 0 .5 2.2 7 7 0 0 0 2.1 2.8l1 .6c2.6 1.6 6 1.6 8.5 0a8 8 0 0 0 1.1-.6 7.6 7.6 0 0 0 1.2-1.2 7 7 0 0 0 1-1.7 6.5 6.5 0 0 0 .4-2.5 1 1 0 0 1 .7-1h.4zM30.7 43.7c-15.5 1-28.5-6-30.1-16.4C-1.2 15.7 11.6 4 29 1.3 46.6-1.7 62.3 5.5 64 17.1c1.6 10.4-8.7 21-23.7 25a31.2 31.2 0 0 0 0 .9v.3a19 19 0 0 0 .1 1l.1.4.1.9a4.7 4.7 0 0 0 .5 1l.7 1a9.2 9.2 0 0 0 1.2 1l1.5.8.6.8-.7.6-1.1.3a11.2 11.2 0 0 1-2.6.4 8.6 8.6 0 0 1-3-.5 8.5 8.5 0 0 1-1-.4 11.2 11.2 0 0 1-1.8-1.2 13.3 13.3 0 0 1-1-1 18 18 0 0 1-.7-.6l-.4-.4a23.4 23.4 0 0 1-1.3-1.8l-.1-.1-.3-.5V45l-.3-.6v-.7zM83.1 36c3.6 0 6.5 3.2 6.5 7.1 0 4-3 7.2-6.5 7.2S76.7 47 76.7 43 79.6 36 83 36zm18 0c3.6 0 6.5 3.2 6.5 7.1 0 4-2.9 7.2-6.4 7.2S94.7 47 94.7 43s3-7.1 6.5-7.1zm-18 6.1c2 0 3.5 1.6 3.5 3.6S85 49.2 83 49.2s-3.4-1.6-3.4-3.6S81.2 42 83 42zm17.9 0c1.9 0 3.4 1.6 3.4 3.6s-1.5 3.6-3.4 3.6c-2 0-3.5-1.6-3.5-3.6S99.1 42 101 42zM17 28c-.3 1.6-1.8 5-5.2 5.8-2.5.6-4.1-.8-4.5-2.6-.4-1.9.7-3.5 2.1-4.5A3.5 3.5 0 0 1 8 24.6c-.4-2 .8-3.7 3.2-4.2 1.9-.5 3.1.2 3.4 1.5.3 1.1-.5 2.2-1.8 2.5-.9.3-1.6 0-1.7-.6a1.4 1.4 0 0 1 0-.7s.3.2 1 0c.7-.1 1-.7.9-1.2-.2-.6-1-.8-1.8-.6-1 .2-2 1-1.7 2.6.3 1 .9 1.6 1.5 1.8l.7-.2c1-.2 1.5 0 1.6.5 0 .4-.2 1-1.2 1.2a3.3 3.3 0 0 1-1.5 0c-.9.7-1.6 1.9-1.3 3.2.3 1.3 1.3 2.2 3 1.8 2.5-.7 3.8-3.7 4.2-5-.3-.5-.6-1-.7-1.6-.1-.5.1-1 .9-1.2.4 0 .7.2.8.8a2.8 2.8 0 0 1 0 1l.7 1c.6-2 1.4-4 1.7-4 .6-.2 1.5.6 1.5.6-.8.7-1.7 2.4-2.3 4.2.8.6 1.6 1 2.1 1 .5-.1.8-.6 1-1.2-.3-2.2 1-4.3 2.3-4.6.7-.2 1.3.2 1.4.8.1.5 0 1.3-.9 1.7-.2-1-.6-1.3-1-1.3-.4.1-.7 1.4-.4 2.8.2 1 .7 1.5 1.3 1.4.8-.2 1.3-1.2 1.7-2.1-.3-2.1.9-4.2 2.2-4.5.7-.2 1.2.1 1.4 1 .4 1.4-1 2.8-2.2 3.4.3.7.7 1 1.3.9 1-.3 1.6-1.5 2-2.5l-.5-3v-.3s1.6-.3 1.8.6v.1c.2-.6.7-1.2 1.3-1.4.8-.1 1.5.6 1.7 1.6.5 2.2-.5 4.4-1.8 4.7H33a31.9 31.9 0 0 0 1 5.2c-.4.1-1.8.4-2-.4l-.5-5.6c-.5 1-1.3 2.2-2.5 2.4-1 .3-1.6-.3-2-1.1-.5 1-1.3 2.1-2.4 2.4-.8.2-1.5-.1-2-1-.3.8-.9 1.5-1.5 1.7-.7.1-1.5-.3-2.4-1-.3.8-.4 1.6-.4 2.2 0 0-.7 0-.8-.4-.1-.5 0-1.5.3-2.7a10.3 10.3 0 0 1-.7-.8zm38.2-17.8l.2.9c.5 1.9.4 4.4.8 6.4 0 .6-.4 3-1.4 3.3-.2 0-.3 0-.4-.4-.1-.7 0-1.6-.3-2.6-.2-1.1-.8-1.6-1.5-1.5-.8.2-1.3 1-1.6 2l-.1-.5c-.2-1-1.8-.6-1.8-.6a6.2 6.2 0 0 1 .4 1.3l.2 1c-.2.5-.6 1-1.2 1l-.2.1a7 7 0 0 0-.1-.8c-.3-1.1-1-2-1.6-1.8a.7.7 0 0 0-.4.3c-1.3.3-2.4 2-2.1 3.9-.2.9-.6 1.7-1 1.9-.5 0-.8-.5-1.1-1.8l-.1-1.2a4 4 0 0 0 0-1.7c0-.4-.4-.7-.8-.6-.7.2-.9 1.7-.5 3.8-.2 1-.6 2-1.3 2-.4.2-.8-.2-1-1l-.2-3c1.2-.5 2-1 1.8-1.7-.1-.5-.8-.7-.8-.7s0 .7-1 1.2l-.2-1.4c-.1-.6-.4-1-1.7-.6l.4 1 .2 1.5h-1v.8c0 .3.4.3 1 .2 0 1.3 0 2.7.2 3.6.3 1.4 1.2 2 2 1.7 1-.2 1.6-1.3 2-2.3.3 1.2 1 2 1.9 1.7.7-.2 1.2-1.1 1.6-2.2.4.8 1.1 1.1 2 1 1.2-.4 1.7-1.6 1.8-2.8h.2c.6-.2 1-.6 1.3-1 0 .8 0 1.5.2 2.1.1.5.3.7.6.6.5-.1 1-.9 1-.9a4 4 0 0 1-.3-1c-.3-1.3.3-3.6 1-3.7.2 0 .3.2.5.7v.8l.2 1.5v.7c.2.7.7 1.3 1.5 1 1.3-.2 2-2.6 2.1-3.9.3.2.6.2 1 .1-.6-2.2 0-6.1-.3-7.9-.1-.4-1-.5-1.7-.5h-.4zm-21.5 12c.4 0 .7.3 1 1.1.2 1.3-.3 2.6-.9 2.8-.2 0-.7 0-1-1.2v-.4c0-1.3.4-2 1-2.2zm-5.2 1c.3 0 .6.2.6.5.2.6-.3 1.3-1.2 2-.3-1.4.1-2.3.6-2.5zm18-.4c-.5.2-1-.4-1.2-1.2-.2-1 0-2.1.7-2.5v.5c.2.7.6 1.5 1.3 1.9 0 .7-.2 1.2-.7 1.3zm10-1.6c0 .5.4.7 1 .6.8-.2 1-1 .8-1.6 0-.5-.4-1-1-.8-.5.1-1 .9-.8 1.8zm-14.3-5.5c0-.4-.5-.7-1-.5-.8.2-1 1-.9 1.5.2.6.5 1 1 .8.5 0 1.1-1 1-1.8z" fill="#fff" fill-opacity=".6"/></svg> </div> + </div> + </div> +</div> + +<div class="container"> + <div class="sf-tabs"> + <div class="tab"> + <h3 class="tab-title"> + Exception + </h3> + + <div class="tab-content"> + <div class="trace trace-as-html" id="trace-box-1"> + <div class="trace-details"> + <div class="trace-head"> + <div class="sf-toggle" data-toggle-selector="#trace-html-1" data-toggle-initial="display"> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1344 800v64q0 14-9 23t-23 9H480q-14 0-23-9t-9-23v-64q0-14 9-23t23-9h832q14 0 23 9t9 23zm128 448V416q0-66-47-113t-113-47H480q-66 0-113 47t-47 113v832q0 66 47 113t113 47h832q66 0 113-47t47-113zm128-832v832q0 119-84.5 203.5T1312 1536H480q-119 0-203.5-84.5T192 1248V416q0-119 84.5-203.5T480 128h832q119 0 203.5 84.5T1600 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1344 800v64q0 14-9 23t-23 9H960v352q0 14-9 23t-23 9h-64q-14 0-23-9t-9-23V896H480q-14 0-23-9t-9-23v-64q0-14 9-23t23-9h352V416q0-14 9-23t23-9h64q14 0 23 9t9 23v352h352q14 0 23 9t9 23zm128 448V416q0-66-47-113t-113-47H480q-66 0-113 47t-47 113v832q0 66 47 113t113 47h832q66 0 113-47t47-113zm128-832v832q0 119-84.5 203.5T1312 1536H480q-119 0-203.5-84.5T192 1248V416q0-119 84.5-203.5T480 128h832q119 0 203.5 84.5T1600 416z"/></svg></span> + <h3 class="trace-class"> + ErrorException </h3> + </div> + </div> + + <div id="trace-html-1" class="sf-toggle-content"> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-0" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/http-foundation/Session/SessionUtils.php&line=52#line52"> + vendor/symfony/http-foundation/Session/<strong>SessionUtils.php</strong> + </a> + (line 52) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/http-foundation/Session/SessionUtils.php:52"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-0" class="trace-code sf-toggle-content"> + <ol start="47"><li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">null </span><span style="color: var(--highlight-keyword)">=== </span><span style="color: var(--highlight-default)">$sessionCookie</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">null</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">header_remove</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-string)">'Set-Cookie'</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> foreach (</span><span style="color: var(--highlight-default)">$otherCookies </span><span style="color: var(--highlight-keyword)">as </span><span style="color: var(--highlight-default)">$h</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">header</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$h</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">false</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">$sessionCookie</span><span style="color: var(--highlight-keyword)">;</span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-1" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/http-kernel/EventListener/AbstractSessionListener.php&line=148#line148"> + vendor/symfony/http-kernel/EventListener/<strong>AbstractSessionListener.php</strong> + </a> + <span class="trace-type">::</span> + <span class="trace-method">popSessionCookie</span> + (line 148) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/http-kernel/EventListener/AbstractSessionListener.php:148"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-1" class="trace-code sf-toggle-content"> + <ol start="143"><li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$sessionCookieSecure </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$sessionOptions</span><span style="color: var(--highlight-keyword)">[</span><span style="color: var(--highlight-string)">'cookie_secure'</span><span style="color: var(--highlight-keyword)">] ?? </span><span style="color: var(--highlight-default)">false</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$sessionCookieHttpOnly </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$sessionOptions</span><span style="color: var(--highlight-keyword)">[</span><span style="color: var(--highlight-string)">'cookie_httponly'</span><span style="color: var(--highlight-keyword)">] ?? </span><span style="color: var(--highlight-default)">true</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$sessionCookieSameSite </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$sessionOptions</span><span style="color: var(--highlight-keyword)">[</span><span style="color: var(--highlight-string)">'cookie_samesite'</span><span style="color: var(--highlight-keyword)">] ?? </span><span style="color: var(--highlight-default)">Cookie</span><span style="color: var(--highlight-keyword)">::</span><span style="color: var(--highlight-default)">SAMESITE_LAX</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$sessionUseCookies </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$sessionOptions</span><span style="color: var(--highlight-keyword)">[</span><span style="color: var(--highlight-string)">'use_cookies'</span><span style="color: var(--highlight-keyword)">] ?? </span><span style="color: var(--highlight-default)">true</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">SessionUtils</span><span style="color: var(--highlight-keyword)">::</span><span style="color: var(--highlight-default)">popSessionCookie</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$sessionName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$sessionId</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$sessionUseCookies</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$request </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">getRequest</span><span style="color: var(--highlight-keyword)">();</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$requestSessionCookieId </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">cookies</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">get</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$sessionName</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-2" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/event-dispatcher/Debug/WrappedListener.php&line=115#line115"> + vendor/symfony/event-dispatcher/Debug/<strong>WrappedListener.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">onKernelResponse</span> + (line 115) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/event-dispatcher/Debug/WrappedListener.php:115"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-2" class="trace-code sf-toggle-content"> + <ol start="110"><li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">called </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">true</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">priority </span><span style="color: var(--highlight-keyword)">??= </span><span style="color: var(--highlight-default)">$dispatcher</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">getListenerPriority</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">listener</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$e </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">stopwatch</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">start</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">name</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-string)">'event_listener'</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> (</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">optimizedListener </span><span style="color: var(--highlight-keyword)">?? </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">listener</span><span style="color: var(--highlight-keyword)">)(</span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$dispatcher</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$e</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">isStarted</span><span style="color: var(--highlight-keyword)">()) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$e</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">stop</span><span style="color: var(--highlight-keyword)">();</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-3" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/event-dispatcher/EventDispatcher.php&line=206#line206"> + vendor/symfony/event-dispatcher/<strong>EventDispatcher.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">__invoke</span> + (line 206) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/event-dispatcher/EventDispatcher.php:206"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-3" class="trace-code sf-toggle-content"> + <ol start="201"><li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> foreach (</span><span style="color: var(--highlight-default)">$listeners </span><span style="color: var(--highlight-keyword)">as </span><span style="color: var(--highlight-default)">$listener</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$stoppable </span><span style="color: var(--highlight-keyword)">&& </span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">isPropagationStopped</span><span style="color: var(--highlight-keyword)">()) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> break;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$listener</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-comment)">/**</span></code></li> +<li><code><span style="color: var(--highlight-comment)"> * Sorts the internal list of listeners for the given event by priority.</span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-4" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/event-dispatcher/EventDispatcher.php&line=56#line56"> + vendor/symfony/event-dispatcher/<strong>EventDispatcher.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">callListeners</span> + (line 56) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/event-dispatcher/EventDispatcher.php:56"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-4" class="trace-code sf-toggle-content"> + <ol start="51"><li><code><span style="color: var(--highlight-keyword)"> } else {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$listeners </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">getListeners</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$listeners</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">callListeners</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$listeners</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-5" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php&line=127#line127"> + vendor/symfony/event-dispatcher/Debug/<strong>TraceableEventDispatcher.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">dispatch</span> + (line 127) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:127"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-5" class="trace-code sf-toggle-content"> + <ol start="122"><li><code><span style="color: var(--highlight-keyword)"> try {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">beforeDispatch</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> try {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$e </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">stopwatch</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">start</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-string)">'section'</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> try {</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">dispatcher</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">dispatch</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$eventName</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> } finally {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$e</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">isStarted</span><span style="color: var(--highlight-keyword)">()) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$e</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">stop</span><span style="color: var(--highlight-keyword)">();</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-6" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/http-kernel/HttpKernel.php&line=196#line196"> + vendor/symfony/http-kernel/<strong>HttpKernel.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">dispatch</span> + (line 196) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/http-kernel/HttpKernel.php:196"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-6" class="trace-code sf-toggle-content"> + <ol start="191"><li><code><span style="color: var(--highlight-comment)"> */</span></code></li> +<li><code><span style="color: var(--highlight-comment)"> </span><span style="color: var(--highlight-keyword)">private function </span><span style="color: var(--highlight-default)">filterResponse</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">Response $response</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">Request $request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">int $type</span><span style="color: var(--highlight-keyword)">): </span><span style="color: var(--highlight-default)">Response</span></code></li> +<li><code><span style="color: var(--highlight-default)"> </span><span style="color: var(--highlight-keyword)">{</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$event </span><span style="color: var(--highlight-keyword)">= new </span><span style="color: var(--highlight-default)">ResponseEvent</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$type</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$response</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">dispatcher</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">dispatch</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">KernelEvents</span><span style="color: var(--highlight-keyword)">::</span><span style="color: var(--highlight-default)">RESPONSE</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">finishRequest</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$type</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">$event</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">getResponse</span><span style="color: var(--highlight-keyword)">();</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-7" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/http-kernel/HttpKernel.php&line=184#line184"> + vendor/symfony/http-kernel/<strong>HttpKernel.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">filterResponse</span> + (line 184) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/http-kernel/HttpKernel.php:184"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-7" class="trace-code sf-toggle-content"> + <ol start="179"><li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> throw new </span><span style="color: var(--highlight-default)">ControllerDoesNotReturnResponseException</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$msg</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$controller</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">__FILE__</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">__LINE__ </span><span style="color: var(--highlight-keyword)">- </span><span style="color: var(--highlight-default)">17</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">filterResponse</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$response</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$type</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-comment)">/**</span></code></li> +<li><code><span style="color: var(--highlight-comment)"> * Filters a response object.</span></code></li> +<li><code><span style="color: var(--highlight-comment)"> *</span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-8" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/http-kernel/HttpKernel.php&line=74#line74"> + vendor/symfony/http-kernel/<strong>HttpKernel.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">handleRaw</span> + (line 74) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/http-kernel/HttpKernel.php:74"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-8" class="trace-code sf-toggle-content"> + <ol start="69"><li><code><span style="color: var(--highlight-default)"> </span><span style="color: var(--highlight-keyword)">{</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">headers</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">set</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-string)">'X-Php-Ob-Level'</span><span style="color: var(--highlight-keyword)">, (string) </span><span style="color: var(--highlight-default)">ob_get_level</span><span style="color: var(--highlight-keyword)">());</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">requestStack</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">push</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> try {</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">handleRaw</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$type</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> } catch (</span><span style="color: var(--highlight-default)">\Throwable $e</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$e </span><span style="color: var(--highlight-keyword)">instanceof </span><span style="color: var(--highlight-default)">\Error </span><span style="color: var(--highlight-keyword)">&& !</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">handleAllThrowables</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> throw </span><span style="color: var(--highlight-default)">$e</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-9" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/http-kernel/Kernel.php&line=184#line184"> + vendor/symfony/http-kernel/<strong>Kernel.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">handle</span> + (line 184) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/http-kernel/Kernel.php:184"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-9" class="trace-code sf-toggle-content"> + <ol start="179"><li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">boot</span><span style="color: var(--highlight-keyword)">();</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> ++</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">requestStackSize</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">resetServices </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">true</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> try {</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> return </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">getHttpKernel</span><span style="color: var(--highlight-keyword)">()-></span><span style="color: var(--highlight-default)">handle</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$type</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$catch</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> } finally {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> --</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">requestStackSize</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-10" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php&line=35#line35"> + vendor/symfony/runtime/Runner/Symfony/<strong>HttpKernelRunner.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">handle</span> + (line 35) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-10" class="trace-code sf-toggle-content"> + <ol start="30"><li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">request </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$request</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> public function </span><span style="color: var(--highlight-default)">run</span><span style="color: var(--highlight-keyword)">(): </span><span style="color: var(--highlight-default)">int</span></code></li> +<li><code><span style="color: var(--highlight-default)"> </span><span style="color: var(--highlight-keyword)">{</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$response </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">kernel</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">handle</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">request</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$response</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">send</span><span style="color: var(--highlight-keyword)">();</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> if (</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">kernel </span><span style="color: var(--highlight-keyword)">instanceof </span><span style="color: var(--highlight-default)">TerminableInterface</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">kernel</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">terminate</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$this</span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">request</span><span style="color: var(--highlight-keyword)">, </span><span style="color: var(--highlight-default)">$response</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> }</span></code></li></ol> </div> </div> + <div class="trace-line trace-from-vendor"> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-11" data-toggle-initial=""> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=vendor/autoload_runtime.php&line=29#line29"> + vendor/<strong>autoload_runtime.php</strong> + </a> + <span class="trace-type">-></span> + <span class="trace-method">run</span> + (line 29) + <span class="icon icon-copy hidden" data-clipboard-text="vendor/autoload_runtime.php:29"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-11" class="trace-code sf-toggle-content"> + <ol start="24"><li><code><span style="color: var(--highlight-keyword)"></span><span style="color: var(--highlight-default)">$app </span><span style="color: var(--highlight-keyword)">= </span><span style="color: var(--highlight-default)">$app</span><span style="color: var(--highlight-keyword)">(...</span><span style="color: var(--highlight-default)">$args</span><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)">exit(</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> </span><span style="color: var(--highlight-default)">$runtime</span></code></li> +<li><code><span style="color: var(--highlight-default)"> </span><span style="color: var(--highlight-keyword)">-></span><span style="color: var(--highlight-default)">getRunner</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$app</span><span style="color: var(--highlight-keyword)">)</span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)"> -></span><span style="color: var(--highlight-default)">run</span><span style="color: var(--highlight-keyword)">()</span></code></li> +<li><code><span style="color: var(--highlight-keyword)">);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + <div class="trace-line "> + <div class="trace-line-header break-long-words sf-toggle" data-toggle-selector="#trace-html-1-12" data-toggle-initial="display"> + <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1408 960V832q0-26-19-45t-45-19h-320V448q0-26-19-45t-45-19H832q-26 0-45 19t-19 45v320H448q-26 0-45 19t-19 45v128q0 26 19 45t45 19h320v320q0 26 19 45t45 19h128q26 0 45-19t19-45v-320h320q26 0 45-19t19-45zm256-544v960q0 119-84.5 203.5T1376 1664H416q-119 0-203.5-84.5T128 1376V416q0-119 84.5-203.5T416 128h960q119 0 203.5 84.5T1664 416z"/></svg></span> + + <span class="trace-class"><abbr title=""></abbr></span><span class="trace-method">require_once</span><span class="trace-arguments">('/var/www/html/vendor/autoload_runtime.php')</span> + <span class="block trace-file-path"> + in + <a href="http://localhost:8080/_profiler/open?file=public/index.php&line=5#line5"> + public/<strong>index.php</strong> + </a> + (line 5) + <span class="icon icon-copy hidden" data-clipboard-text="public/index.php:5"> + <svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 0 24 24" width="24"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg> </span> + </span> + </div> + <div id="trace-html-1-12" class="trace-code sf-toggle-content"> + <ol start="1"><li><code><span style="color: var(--highlight-default)"><?php</span></code></li> +<li><code><span style="color: var(--highlight-default)"></span></code></li> +<li><code><span style="color: var(--highlight-default)"></span><span style="color: var(--highlight-keyword)">use </span><span style="color: var(--highlight-default)">App\Kernel</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li class="selected"><code><span style="color: var(--highlight-keyword)">require_once </span><span style="color: var(--highlight-default)">dirname</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">__DIR__</span><span style="color: var(--highlight-keyword)">).</span><span style="color: var(--highlight-string)">'/vendor/autoload_runtime.php'</span><span style="color: var(--highlight-keyword)">;</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li> +<li><code><span style="color: var(--highlight-keyword)">return function (array </span><span style="color: var(--highlight-default)">$context</span><span style="color: var(--highlight-keyword)">) {</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"> return new </span><span style="color: var(--highlight-default)">Kernel</span><span style="color: var(--highlight-keyword)">(</span><span style="color: var(--highlight-default)">$context</span><span style="color: var(--highlight-keyword)">[</span><span style="color: var(--highlight-string)">'APP_ENV'</span><span style="color: var(--highlight-keyword)">], (bool) </span><span style="color: var(--highlight-default)">$context</span><span style="color: var(--highlight-keyword)">[</span><span style="color: var(--highlight-string)">'APP_DEBUG'</span><span style="color: var(--highlight-keyword)">]);</span></code></li> +<li><code><span style="color: var(--highlight-keyword)">};</span></code></li> +<li><code><span style="color: var(--highlight-keyword)"></span></code></li></ol> </div> </div> + </div> + </div> +</div> </div> + </div> + + <div class="tab "> + <h3 class="tab-title"> + Logs + <span class="badge status-error">1</span> </h3> + + <div class="tab-content"> + <table class="logs" data-filter-level="Emergency,Alert,Critical,Error,Warning,Notice,Info,Debug" data-filters> + <thead> + <tr> + <th data-filter="level">Level</th> + <th data-filter="channel">Channel</th> <th class="full-width">Message</th> + </tr> + </thead> + + <tbody> + <tr class="status-normal" data-filter-level="info" data-filter-channel="request"> + <td class="text-small nowrap"> + <span class="colored text-bold">INFO</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + request </td> + <td> + Matched route "api_transaction_list". <pre class="text-muted prewrap m-t-5">{ + "route": "api_transaction_list", + "route_parameters": { + "_route": "api_transaction_list", + "_controller": "App\\Controller\\ApiController::list" + }, + "request_uri": "http://localhost:8080/api/transaction", + "method": "GET" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="security"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + security </td> + <td> + Checking for authenticator support. <pre class="text-muted prewrap m-t-5">{ + "firewall_name": "main", + "authenticators": 1 +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="security"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + security </td> + <td> + Checking support on authenticator. <pre class="text-muted prewrap m-t-5">{ + "firewall_name": "main", + "authenticator": "Symfony\\Component\\Security\\Http\\Authenticator\\FormLoginAuthenticator" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="security"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + security </td> + <td> + Authenticator does not support the request. <pre class="text-muted prewrap m-t-5">{ + "firewall_name": "main", + "authenticator": "Symfony\\Component\\Security\\Http\\Authenticator\\FormLoginAuthenticator" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\ControllerListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\ParamConverterListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\HttpCacheListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\TemplateListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="security"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + security </td> + <td> + Read existing security token from the session. <pre class="text-muted prewrap m-t-5">{ + "key": "_security_main", + "token_class": "Symfony\\Component\\Security\\Core\\Authentication\\Token\\UsernamePasswordToken" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="info" data-filter-channel="doctrine"> + <td class="text-small nowrap"> + <span class="colored text-bold">INFO</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + doctrine </td> + <td> + Connecting with parameters {params} <pre class="text-muted prewrap m-t-5">{ + "params": { + "url": "<redacted>", + "driver": "pdo_pgsql", + "host": "database", + "port": 5432, + "user": "app", + "password": "<redacted>", + "driverOptions": [], + "defaultTableOptions": [], + "dbname": "app", + "serverVersion": "15", + "charset": "utf8" + } +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="doctrine"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + doctrine </td> + <td> + Executing statement: SELECT t0.id AS id_1, t0.name AS name_2, t0.password AS password_3 FROM "user" t0 WHERE t0.id = ? (parameters: {params}, types: {types}) <pre class="text-muted prewrap m-t-5">{ + "sql": "SELECT t0.id AS id_1, t0.name AS name_2, t0.password AS password_3 FROM \"user\" t0 WHERE t0.id = ?", + "params": { + "1": 1 + }, + "types": { + "1": 1 + } +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="security"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + security </td> + <td> + User was reloaded from a user provider. <pre class="text-muted prewrap m-t-5">{ + "provider": "Symfony\\Bridge\\Doctrine\\Security\\User\\EntityUserProvider", + "username": "romain" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "debug.security.authorization.vote" to listener "Symfony\Bundle\SecurityBundle\EventListener\VoteListener::onVoterVote". <pre class="text-muted prewrap m-t-5">{ + "event": "debug.security.authorization.vote", + "listener": "Symfony\\Bundle\\SecurityBundle\\EventListener\\VoteListener::onVoterVote" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\SecurityListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\IsGrantedListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\IsGrantedListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="doctrine"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + doctrine </td> + <td> + Executing statement: SELECT t0.id AS id_1, t0.amount AS amount_2, t0.description AS description_3, t0.type AS type_4, t0.category AS category_5, t0.date AS date_6, t0.person_id AS person_id_7 FROM transaction t0 WHERE t0.person_id = ? (parameters: {params}, types: {types}) <pre class="text-muted prewrap m-t-5">{ + "sql": "SELECT t0.id AS id_1, t0.amount AS amount_2, t0.description AS description_3, t0.type AS type_4, t0.category AS category_5, t0.date AS date_6, t0.person_id AS person_id_7 FROM transaction t0 WHERE t0.person_id = ?", + "params": { + "1": 1 + }, + "types": { + "1": 1 + } +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="security"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + security </td> + <td> + Stored the security token in the session. <pre class="text-muted prewrap m-t-5">{ + "key": "_security_main" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\Security\Http\Firewall\ContextListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\Security\\Http\\Firewall\\ContextListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ResponseListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ResponseListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\WebLink\EventListener\AddLinkHeaderListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\WebLink\\EventListener\\AddLinkHeaderListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\HttpCacheListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ProfilerListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::removeCspHeader". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::removeCspHeader" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Bundle\WebProfilerBundle\EventListener\WebDebugToolbarListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Bundle\\WebProfilerBundle\\EventListener\\WebDebugToolbarListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\DisallowRobotsIndexingListener::onResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DisallowRobotsIndexingListener::onResponse" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.response" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelResponse". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.response", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelResponse" +}</pre> + </td> + </tr> + <tr class="status-error" data-filter-level="critical" data-filter-channel="request"> + <td class="text-small nowrap"> + <span class="colored text-bold">CRITICAL</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + request </td> + <td> + Uncaught PHP Exception ErrorException: "Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46)" at /var/www/html/vendor/symfony/http-foundation/Session/SessionUtils.php line 52 <pre class="text-muted prewrap m-t-5">{ + "exception": { + "xdebug_message": "<tr><th align='left' bgcolor='#f57900' colspan=\"5\"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> ErrorException: Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46) in /var/www/html/vendor/symfony/http-foundation/Session/SessionUtils.php on line <i>52</i></th></tr>\n<tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>\n<tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>\n<tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0001</td><td bgcolor='#eeeeec' align='right'>351952</td><td bgcolor='#eeeeec'>{main}( )</td><td title='/var/www/html/public/index.php' bgcolor='#eeeeec'>.../index.php<b>:</b>0</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0002</td><td bgcolor='#eeeeec' align='right'>352384</td><td bgcolor='#eeeeec'>require_once( <font color='#00bb00'>'/var/www/html/vendor/autoload_runtime.php</font> )</td><td title='/var/www/html/public/index.php' bgcolor='#eeeeec'>.../index.php<b>:</b>5</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>3</td><td bgcolor='#eeeeec' align='center'>0.0046</td><td bgcolor='#eeeeec' align='right'>424624</td><td bgcolor='#eeeeec'>Symfony\\Component\\Runtime\\Runner\\Symfony\\HttpKernelRunner->run( )</td><td title='/var/www/html/vendor/autoload_runtime.php' bgcolor='#eeeeec'>.../autoload_runtime.php<b>:</b>29</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>4</td><td bgcolor='#eeeeec' align='center'>0.0046</td><td bgcolor='#eeeeec' align='right'>424624</td><td bgcolor='#eeeeec'>Symfony\\Component\\HttpKernel\\Kernel->handle( <span>$request = </span><span>class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { protected $parameters = [...] }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { protected $parameters = [...] }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { protected $parameters = [...] }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { protected $headers = [...]; protected $cacheControl = [...] }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { protected $storage = class Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage { ... }; private string $flashName = &#39;flashes&#39;; private string $attributeName = &#39;attributes&#39;; private array $data = [...]; private int $usageIndex = 1; private ?Closure $usageReporter = class Closure { ... } }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }</span>, <span>$type = </span>???, <span>$catch = </span>??? )</td><td title='/var/www/html/vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php' bgcolor='#eeeeec'>.../HttpKernelRunner.php<b>:</b>35</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>5</td><td bgcolor='#eeeeec' align='center'>0.0226</td><td bgcolor='#eeeeec' align='right'>582392</td><td bgcolor='#eeeeec'>Symfony\\Component\\HttpKernel\\HttpKernel->handle( <span>$request = </span><span>class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { protected $parameters = [...] }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { protected $parameters = [...] }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { protected $parameters = [...] }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { protected $headers = [...]; protected $cacheControl = [...] }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { protected $storage = class Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage { ... }; private string $flashName = &#39;flashes&#39;; private string $attributeName = &#39;attributes&#39;; private array $data = [...]; private int $usageIndex = 1; private ?Closure $usageReporter = class Closure { ... } }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }</span>, <span>$type = </span><span>1</span>, <span>$catch = </span><span>TRUE</span> )</td><td title='/var/www/html/vendor/symfony/http-kernel/Kernel.php' bgcolor='#eeeeec'>.../Kernel.php<b>:</b>184</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>6</td><td bgcolor='#eeeeec' align='center'>0.0227</td><td bgcolor='#eeeeec' align='right'>582864</td><td bgcolor='#eeeeec'>Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw( <span>$request = </span><span>class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { protected $parameters = [...] }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { protected $parameters = [...] }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { protected $parameters = [...] }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { protected $headers = [...]; protected $cacheControl = [...] }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { protected $storage = class Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage { ... }; private string $flashName = &#39;flashes&#39;; private string $attributeName = &#39;attributes&#39;; private array $data = [...]; private int $usageIndex = 1; private ?Closure $usageReporter = class Closure { ... } }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }</span>, <span>$type = </span><span>1</span> )</td><td title='/var/www/html/vendor/symfony/http-kernel/HttpKernel.php' bgcolor='#eeeeec'>.../HttpKernel.php<b>:</b>74</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>7</td><td bgcolor='#eeeeec' align='center'>0.0979</td><td bgcolor='#eeeeec' align='right'>1074168</td><td bgcolor='#eeeeec'>Symfony\\Component\\HttpKernel\\HttpKernel->filterResponse( <span>$response = </span><span>class Symfony\\Component\\HttpFoundation\\Response { public $headers = class Symfony\\Component\\HttpFoundation\\ResponseHeaderBag { protected $headers = [...]; protected $cacheControl = [...]; protected $computedCacheControl = [...]; protected $cookies = [...]; protected $headerNames = [...] }; protected $content = &#39;&#39;; protected $version = &#39;1.1&#39;; protected $statusCode = 200; protected $statusText = &#39;OK&#39;; protected $charset = &#39;UTF-8&#39; }</span>, <span>$request = </span><span>class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { protected $parameters = [...] }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { protected $parameters = [...] }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { protected $parameters = [...] }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { protected $parameters = [...] }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { protected $headers = [...]; protected $cacheControl = [...] }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { protected $storage = class Symfony\\Component\\HttpFoundation\\Session\\Storage\\NativeSessionStorage { ... }; private string $flashName = &#39;flashes&#39;; private string $attributeName = &#39;attributes&#39;; private array $data = [...]; private int $usageIndex = 1; private ?Closure $usageReporter = class Closure { ... } }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }</span>, <span>$type = </span><span>1</span> )</td><td title='/var/www/html/vendor/symfony/http-kernel/HttpKernel.php' bgcolor='#eeeeec'>.../HttpKernel.php<b>:</b>184</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>8</td><td bgcolor='#eeeeec' align='center'>0.0980</td><td bgcolor='#eeeeec' align='right'>1074296</td><td bgcolor='#eeeeec'>Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher->dispatch( <span>$event = </span><span>class Symfony\\Component\\HttpKernel\\Event\\ResponseEvent { private bool ${Symfony\\Contracts\\EventDispatcher\\Event}propagationStopped = FALSE; private Symfony\\Component\\HttpKernel\\HttpKernelInterface ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}kernel = class Symfony\\Component\\HttpKernel\\HttpKernel { protected $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; protected $resolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableControllerResolver { ... }; protected $requestStack = class Symfony\\Component\\HttpFoundation\\RequestStack { ... }; private Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolverInterface $argumentResolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableArgumentResolver { ... }; private bool $handleAllThrowables = TRUE }; private Symfony\\Component\\HttpFoundation\\Request ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}request = class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { ... }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { ... }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { ... }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { ... }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { ... }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }; private ?int ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}requestType = 1; private Symfony\\Component\\HttpFoundation\\Response $response = class Symfony\\Component\\HttpFoundation\\Response { public $headers = class Symfony\\Component\\HttpFoundation\\ResponseHeaderBag { ... }; protected $content = &#39;&#39;; protected $version = &#39;1.1&#39;; protected $statusCode = 200; protected $statusText = &#39;OK&#39;; protected $charset = &#39;UTF-8&#39; } }</span>, <span>$eventName = </span><span>&#39;kernel.response&#39;</span> )</td><td title='/var/www/html/vendor/symfony/http-kernel/HttpKernel.php' bgcolor='#eeeeec'>.../HttpKernel.php<b>:</b>196</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>9</td><td bgcolor='#eeeeec' align='center'>0.1062</td><td bgcolor='#eeeeec' align='right'>1326216</td><td bgcolor='#eeeeec'>Symfony\\Component\\EventDispatcher\\EventDispatcher->dispatch( <span>$event = </span><span>class Symfony\\Component\\HttpKernel\\Event\\ResponseEvent { private bool ${Symfony\\Contracts\\EventDispatcher\\Event}propagationStopped = FALSE; private Symfony\\Component\\HttpKernel\\HttpKernelInterface ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}kernel = class Symfony\\Component\\HttpKernel\\HttpKernel { protected $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; protected $resolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableControllerResolver { ... }; protected $requestStack = class Symfony\\Component\\HttpFoundation\\RequestStack { ... }; private Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolverInterface $argumentResolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableArgumentResolver { ... }; private bool $handleAllThrowables = TRUE }; private Symfony\\Component\\HttpFoundation\\Request ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}request = class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { ... }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { ... }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { ... }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { ... }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { ... }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }; private ?int ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}requestType = 1; private Symfony\\Component\\HttpFoundation\\Response $response = class Symfony\\Component\\HttpFoundation\\Response { public $headers = class Symfony\\Component\\HttpFoundation\\ResponseHeaderBag { ... }; protected $content = &#39;&#39;; protected $version = &#39;1.1&#39;; protected $statusCode = 200; protected $statusText = &#39;OK&#39;; protected $charset = &#39;UTF-8&#39; } }</span>, <span>$eventName = </span><span>&#39;kernel.response&#39;</span> )</td><td title='/var/www/html/vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php' bgcolor='#eeeeec'>.../TraceableEventDispatcher.php<b>:</b>127</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>10</td><td bgcolor='#eeeeec' align='center'>0.1063</td><td bgcolor='#eeeeec' align='right'>1327008</td><td bgcolor='#eeeeec'>Symfony\\Component\\EventDispatcher\\EventDispatcher->callListeners( <span>$listeners = </span><span>[0 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\Security\\\\Http\\\\Firewall\\\\ContextListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\Security\\\\Http\\\\Firewall\\\\ContextListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\Security\\\\Http\\\\Firewall\\\\ContextListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = 0 }, 1 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ResponseListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ResponseListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ResponseListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = 0 }, 2 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\WebLink\\\\EventListener\\\\AddLinkHeaderListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\WebLink\\\\EventListener\\\\AddLinkHeaderListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\WebLink\\\\EventListener\\\\AddLinkHeaderListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = 0 }, 3 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\DataCollector\\\\RequestDataCollector&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\DataCollector\\\\RequestDataCollector::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\DataCollector\\\\RequestDataCollector::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = 0 }, 4 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Sensio\\\\Bundle\\\\FrameworkExtraBundle\\\\EventListener\\\\HttpCacheListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Sensio\\\\Bundle\\\\FrameworkExtraBundle\\\\EventListener\\\\HttpCacheListener::onKernelResponse&#39;; private string $callableRef = &#39;Sensio\\\\Bundle\\\\FrameworkExtraBundle\\\\EventListener\\\\HttpCacheListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = 0 }, 5 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\CacheAttributeListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\CacheAttributeListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\CacheAttributeListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = -10 }, 6 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ProfilerListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ProfilerListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ProfilerListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = -100 }, 7 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ErrorListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ErrorListener::removeCspHeader&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\ErrorListener::removeCspHeader&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = -128 }, 8 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Bundle\\\\WebProfilerBundle\\\\EventListener\\\\WebDebugToolbarListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Bundle\\\\WebProfilerBundle\\\\EventListener\\\\WebDebugToolbarListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Bundle\\\\WebProfilerBundle\\\\EventListener\\\\WebDebugToolbarListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = -128 }, 9 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\DisallowRobotsIndexingListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\DisallowRobotsIndexingListener::onResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\DisallowRobotsIndexingListener::onResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = -255 }, 10 =&gt; class Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener { private object|array|string $listener = [...]; private ?Closure $optimizedListener = class Closure { ... }; private string $name = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\SessionListener&#39;; private bool $called = TRUE; private bool $stoppedPropagation = FALSE; private Symfony\\Component\\Stopwatch\\Stopwatch $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { ... }; private ?Symfony\\Component\\EventDispatcher\\EventDispatcherInterface $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; private string $pretty = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\SessionListener::onKernelResponse&#39;; private string $callableRef = &#39;Symfony\\\\Component\\\\HttpKernel\\\\EventListener\\\\SessionListener::onKernelResponse&#39;; private Symfony\\Component\\VarDumper\\Caster\\ClassStub|string $stub = *uninitialized*; private ?int $priority = -1000 }]</span>, <span>$eventName = </span><span>&#39;kernel.response&#39;</span>, <span>$event = </span><span>class Symfony\\Component\\HttpKernel\\Event\\ResponseEvent { private bool ${Symfony\\Contracts\\EventDispatcher\\Event}propagationStopped = FALSE; private Symfony\\Component\\HttpKernel\\HttpKernelInterface ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}kernel = class Symfony\\Component\\HttpKernel\\HttpKernel { protected $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; protected $resolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableControllerResolver { ... }; protected $requestStack = class Symfony\\Component\\HttpFoundation\\RequestStack { ... }; private Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolverInterface $argumentResolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableArgumentResolver { ... }; private bool $handleAllThrowables = TRUE }; private Symfony\\Component\\HttpFoundation\\Request ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}request = class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { ... }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { ... }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { ... }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { ... }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { ... }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }; private ?int ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}requestType = 1; private Symfony\\Component\\HttpFoundation\\Response $response = class Symfony\\Component\\HttpFoundation\\Response { public $headers = class Symfony\\Component\\HttpFoundation\\ResponseHeaderBag { ... }; protected $content = &#39;&#39;; protected $version = &#39;1.1&#39;; protected $statusCode = 200; protected $statusText = &#39;OK&#39;; protected $charset = &#39;UTF-8&#39; } }</span> )</td><td title='/var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php' bgcolor='#eeeeec'>.../EventDispatcher.php<b>:</b>56</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>11</td><td bgcolor='#eeeeec' align='center'>0.1112</td><td bgcolor='#eeeeec' align='right'>1445352</td><td bgcolor='#eeeeec'>Symfony\\Component\\EventDispatcher\\Debug\\WrappedListener->__invoke( <span>$event = </span><span>class Symfony\\Component\\HttpKernel\\Event\\ResponseEvent { private bool ${Symfony\\Contracts\\EventDispatcher\\Event}propagationStopped = FALSE; private Symfony\\Component\\HttpKernel\\HttpKernelInterface ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}kernel = class Symfony\\Component\\HttpKernel\\HttpKernel { protected $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; protected $resolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableControllerResolver { ... }; protected $requestStack = class Symfony\\Component\\HttpFoundation\\RequestStack { ... }; private Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolverInterface $argumentResolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableArgumentResolver { ... }; private bool $handleAllThrowables = TRUE }; private Symfony\\Component\\HttpFoundation\\Request ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}request = class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { ... }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { ... }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { ... }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { ... }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { ... }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }; private ?int ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}requestType = 1; private Symfony\\Component\\HttpFoundation\\Response $response = class Symfony\\Component\\HttpFoundation\\Response { public $headers = class Symfony\\Component\\HttpFoundation\\ResponseHeaderBag { ... }; protected $content = &#39;&#39;; protected $version = &#39;1.1&#39;; protected $statusCode = 200; protected $statusText = &#39;OK&#39;; protected $charset = &#39;UTF-8&#39; } }</span>, <span>$eventName = </span><span>&#39;kernel.response&#39;</span>, <span>$dispatcher = </span><span>class Symfony\\Component\\EventDispatcher\\EventDispatcher { private array $listeners = [&#39;kernel.controller&#39; =&gt; [...], &#39;Symfony\\Component\\Security\\Http\\Event\\CheckPassportEvent&#39; =&gt; [...], &#39;kernel.response&#39; =&gt; [...], &#39;kernel.exception&#39; =&gt; [...], &#39;kernel.request&#39; =&gt; [...], &#39;kernel.finish_request&#39; =&gt; [...], &#39;kernel.controller_arguments&#39; =&gt; [...], &#39;console.error&#39; =&gt; [...], &#39;console.terminate&#39; =&gt; [...], &#39;Symfony\\Component\\Mailer\\Event\\MessageEvent&#39; =&gt; [...], &#39;console.command&#39; =&gt; [...], &#39;Symfony\\Component\\Messenger\\Event\\WorkerMessageFailedEvent&#39; =&gt; [...], &#39;Symfony\\Component\\Messenger\\Event\\WorkerStartedEvent&#39; =&gt; [...], &#39;Symfony\\Component\\Messenger\\Event\\WorkerRunningEvent&#39; =&gt; [...], &#39;Symfony\\Component\\Notifier\\Event\\MessageEvent&#39; =&gt; [...], &#39;kernel.terminate&#39; =&gt; [...], &#39;Symfony\\Component\\Messenger\\Event\\WorkerMessageHandledEvent&#39; =&gt; [...], &#39;kernel.view&#39; =&gt; [...], &#39;Symfony\\Component\\Security\\Http\\Event\\LoginSuccessEvent&#39; =&gt; [...], &#39;debug.security.authorization.vote&#39; =&gt; [...], &#39;Symfony\\Component\\Security\\Http\\Event\\LogoutEvent&#39; =&gt; [...]]; private array $sorted = []; private array $optimized = [&#39;kernel.response&#39; =&gt; [...]] }</span> )</td><td title='/var/www/html/vendor/symfony/event-dispatcher/EventDispatcher.php' bgcolor='#eeeeec'>.../EventDispatcher.php<b>:</b>206</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>12</td><td bgcolor='#eeeeec' align='center'>0.1112</td><td bgcolor='#eeeeec' align='right'>1445352</td><td bgcolor='#eeeeec'>Symfony\\Component\\HttpKernel\\EventListener\\AbstractSessionListener->onKernelResponse( <span>$event = </span><span>class Symfony\\Component\\HttpKernel\\Event\\ResponseEvent { private bool ${Symfony\\Contracts\\EventDispatcher\\Event}propagationStopped = FALSE; private Symfony\\Component\\HttpKernel\\HttpKernelInterface ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}kernel = class Symfony\\Component\\HttpKernel\\HttpKernel { protected $dispatcher = class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { ... }; protected $resolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableControllerResolver { ... }; protected $requestStack = class Symfony\\Component\\HttpFoundation\\RequestStack { ... }; private Symfony\\Component\\HttpKernel\\Controller\\ArgumentResolverInterface $argumentResolver = class Symfony\\Component\\HttpKernel\\Controller\\TraceableArgumentResolver { ... }; private bool $handleAllThrowables = TRUE }; private Symfony\\Component\\HttpFoundation\\Request ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}request = class Symfony\\Component\\HttpFoundation\\Request { public $attributes = class Symfony\\Component\\HttpFoundation\\ParameterBag { ... }; public $request = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $query = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $server = class Symfony\\Component\\HttpFoundation\\ServerBag { ... }; public $files = class Symfony\\Component\\HttpFoundation\\FileBag { ... }; public $cookies = class Symfony\\Component\\HttpFoundation\\InputBag { ... }; public $headers = class Symfony\\Component\\HttpFoundation\\HeaderBag { ... }; protected $content = &#39;&#39;; protected $languages = NULL; protected $charsets = NULL; protected $encodings = NULL; protected $acceptableContentTypes = NULL; protected $pathInfo = &#39;/api/transaction&#39;; protected $requestUri = &#39;/api/transaction&#39;; protected $baseUrl = &#39;&#39;; protected $basePath = NULL; protected $method = &#39;GET&#39;; protected $format = NULL; protected $session = class Symfony\\Component\\HttpFoundation\\Session\\Session { ... }; protected $locale = NULL; protected $defaultLocale = &#39;en&#39;; private ?string $preferredFormat = NULL; private bool $isHostValid = TRUE; private bool $isForwardedValid = TRUE; private bool $isSafeContentPreferred = *uninitialized* }; private ?int ${Symfony\\Component\\HttpKernel\\Event\\KernelEvent}requestType = 1; private Symfony\\Component\\HttpFoundation\\Response $response = class Symfony\\Component\\HttpFoundation\\Response { public $headers = class Symfony\\Component\\HttpFoundation\\ResponseHeaderBag { ... }; protected $content = &#39;&#39;; protected $version = &#39;1.1&#39;; protected $statusCode = 200; protected $statusText = &#39;OK&#39;; protected $charset = &#39;UTF-8&#39; } }</span>, <span>&#39;kernel.response&#39;</span>, <span>class Symfony\\Component\\HttpKernel\\Debug\\TraceableEventDispatcher { protected $logger = class Symfony\\Bridge\\Monolog\\Logger { protected string $name = &#39;event&#39;; protected array $handlers = [...]; protected array $processors = [...]; protected bool $microsecondTimestamps = TRUE; protected DateTimeZone $timezone = class DateTimeZone { ... }; protected ?Closure $exceptionHandler = NULL; private int ${Monolog\\Logger}logDepth = 0; private bool ${Monolog\\Logger}detectCycles = TRUE }; protected $stopwatch = class Symfony\\Component\\Stopwatch\\Stopwatch { private bool $morePrecision = TRUE; private array $sections = [...]; private array $activeSections = [...] }; private ?SplObjectStorage ${Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher}callStack = class SplObjectStorage { }; private Symfony\\Component\\EventDispatcher\\EventDispatcherInterface ${Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher}dispatcher = class Symfony\\Component\\EventDispatcher\\EventDispatcher { private array $listeners = [...]; private array $sorted = [...]; private array $optimized = [...] }; private array ${Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher}wrappedListeners = [&#39;kernel.response&#39; =&gt; [...]]; private array ${Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher}orphanedEvents = []; private ?Symfony\\Component\\HttpFoundation\\RequestStack ${Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher}requestStack = class Symfony\\Component\\HttpFoundation\\RequestStack { private array $requests = [...] }; private string ${Symfony\\Component\\EventDispatcher\\Debug\\TraceableEventDispatcher}currentRequestHash = &#39;00000000000000040000000000000000&#39; }</span> )</td><td title='/var/www/html/vendor/symfony/event-dispatcher/Debug/WrappedListener.php' bgcolor='#eeeeec'>.../WrappedListener.php<b>:</b>115</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>13</td><td bgcolor='#eeeeec' align='center'>0.1115</td><td bgcolor='#eeeeec' align='right'>1446000</td><td bgcolor='#eeeeec'>Symfony\\Component\\HttpFoundation\\Session\\SessionUtils::popSessionCookie( <span>$sessionName = </span><span>&#39;PHPSESSID&#39;</span>, <span>$sessionId = </span><span>&#39;6bec990fdebeb9b033b5a55d480e5835&#39;</span> )</td><td title='/var/www/html/vendor/symfony/http-kernel/EventListener/AbstractSessionListener.php' bgcolor='#eeeeec'>.../AbstractSessionListener.php<b>:</b>148</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>14</td><td bgcolor='#eeeeec' align='center'>0.1115</td><td bgcolor='#eeeeec' align='right'>1446816</td><td bgcolor='#eeeeec'><a href='http://www.php.net/function.header-remove' target='_new'>header_remove</a>( <span>$name = </span><span>&#39;Set-Cookie&#39;</span> )</td><td title='/var/www/html/vendor/symfony/http-foundation/Session/SessionUtils.php' bgcolor='#eeeeec'>.../SessionUtils.php<b>:</b>52</td></tr>\n<tr><td bgcolor='#eeeeec' align='center'>15</td><td bgcolor='#eeeeec' align='center'>0.1115</td><td bgcolor='#eeeeec' align='right'>1447008</td><td bgcolor='#eeeeec'>Symfony\\Component\\ErrorHandler\\ErrorHandler->handleError( <span>$type = </span><span>2</span>, <span>$message = </span><span>&#39;Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46)&#39;</span>, <span>$file = </span><span>&#39;/var/www/html/vendor/symfony/http-foundation/Session/SessionUtils.php&#39;</span>, <span>$line = </span><span>52</span> )</td><td title='/var/www/html/vendor/symfony/http-foundation/Session/SessionUtils.php' bgcolor='#eeeeec'>.../SessionUtils.php<b>:</b>52</td></tr>\n" + } +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\DebugHandlersListener::configure" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ValidateRequestListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ValidateRequestListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\SessionListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\SessionListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::setDefaultLocale". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::setDefaultLocale" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\RouterListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleAwareListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\LocaleAwareListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::configureLogoutUrlGenerator". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::configureLogoutUrlGenerator" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.request" to listener "Symfony\Bundle\SecurityBundle\Debug\TraceableFirewallListener::onKernelRequest". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.request", + "listener": "Symfony\\Bundle\\SecurityBundle\\Debug\\TraceableFirewallListener::onKernelRequest" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Symfony\\Bundle\\FrameworkBundle\\DataCollector\\RouterDataCollector::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Symfony\\Component\\HttpKernel\\DataCollector\\RequestDataCollector::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\ControllerListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\ParamConverterListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\HttpCacheListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\TemplateListener::onKernelController". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\TemplateListener::onKernelController" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Symfony\Component\Security\Http\EventListener\IsGrantedAttributeListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Symfony\\Component\\Security\\Http\\EventListener\\IsGrantedAttributeListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\CacheAttributeListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\CacheAttributeListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Symfony\Component\HttpKernel\EventListener\ErrorListener::onControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Symfony\\Component\\HttpKernel\\EventListener\\ErrorListener::onControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\SecurityListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + <tr class="status-normal" data-filter-level="debug" data-filter-channel="event"> + <td class="text-small nowrap"> + <span class="colored text-bold">DEBUG</span> + <span class="text-muted newline">07:08:55</span> + </td> + <td class="text-small text-bold nowrap"> + event </td> + <td> + Notified event "kernel.controller_arguments" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\IsGrantedListener::onKernelControllerArguments". <pre class="text-muted prewrap m-t-5">{ + "event": "kernel.controller_arguments", + "listener": "Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\IsGrantedListener::onKernelControllerArguments" +}</pre> + </td> + </tr> + </tbody> +</table> </div> + </div> + + <div class="tab"> + <h3 class="tab-title"> + Stack Trace + </h3> + + <div class="tab-content"> + <table class="trace trace-as-text"> + <thead class="trace-head"> + <tr> + <th class="sf-toggle" data-toggle-selector="#trace-text-1" data-toggle-initial="display"> + <div class="trace-class"> + ErrorException <span class="icon icon-close"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1344 800v64q0 14-9 23t-23 9H480q-14 0-23-9t-9-23v-64q0-14 9-23t23-9h832q14 0 23 9t9 23zm128 448V416q0-66-47-113t-113-47H480q-66 0-113 47t-47 113v832q0 66 47 113t113 47h832q66 0 113-47t47-113zm128-832v832q0 119-84.5 203.5T1312 1536H480q-119 0-203.5-84.5T192 1248V416q0-119 84.5-203.5T480 128h832q119 0 203.5 84.5T1600 416z"/></svg></span> + <span class="icon icon-open"><svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1344 800v64q0 14-9 23t-23 9H960v352q0 14-9 23t-23 9h-64q-14 0-23-9t-9-23V896H480q-14 0-23-9t-9-23v-64q0-14 9-23t23-9h352V416q0-14 9-23t23-9h64q14 0 23 9t9 23v352h352q14 0 23 9t9 23zm128 448V416q0-66-47-113t-113-47H480q-66 0-113 47t-47 113v832q0 66 47 113t113 47h832q66 0 113-47t47-113zm128-832v832q0 119-84.5 203.5T1312 1536H480q-119 0-203.5-84.5T192 1248V416q0-119 84.5-203.5T480 128h832q119 0 203.5 84.5T1600 416z"/></svg></span> + </div> + </th> + </tr> + </thead> + + <tbody id="trace-text-1"> + <tr> + <td> + <pre class="stacktrace"> +ErrorException: +Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46) + + at vendor/symfony/http-foundation/Session/SessionUtils.php:52 + at Symfony\Component\HttpFoundation\Session\SessionUtils::popSessionCookie('PHPSESSID', '6bec990fdebeb9b033b5a55d480e5835') + (vendor/symfony/http-kernel/EventListener/AbstractSessionListener.php:148) + at Symfony\Component\HttpKernel\EventListener\AbstractSessionListener->onKernelResponse(object(ResponseEvent), 'kernel.response', object(TraceableEventDispatcher)) + (vendor/symfony/event-dispatcher/Debug/WrappedListener.php:115) + at Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke(object(ResponseEvent), 'kernel.response', object(TraceableEventDispatcher)) + (vendor/symfony/event-dispatcher/EventDispatcher.php:206) + at Symfony\Component\EventDispatcher\EventDispatcher->callListeners(array(object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener), object(WrappedListener)), 'kernel.response', object(ResponseEvent)) + (vendor/symfony/event-dispatcher/EventDispatcher.php:56) + at Symfony\Component\EventDispatcher\EventDispatcher->dispatch(object(ResponseEvent), 'kernel.response') + (vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:127) + at Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher->dispatch(object(ResponseEvent), 'kernel.response') + (vendor/symfony/http-kernel/HttpKernel.php:196) + at Symfony\Component\HttpKernel\HttpKernel->filterResponse(object(Response), object(Request), 1) + (vendor/symfony/http-kernel/HttpKernel.php:184) + at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1) + (vendor/symfony/http-kernel/HttpKernel.php:74) + at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true) + (vendor/symfony/http-kernel/Kernel.php:184) + at Symfony\Component\HttpKernel\Kernel->handle(object(Request)) + (vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35) + at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run() + (vendor/autoload_runtime.php:29) + at require_once('/var/www/html/vendor/autoload_runtime.php') + (public/index.php:5) </pre> + </td> + </tr> + </tbody> +</table> </div> + </div> + + </div> +</div> + <script> + /* This file is based on WebProfilerBundle/Resources/views/Profiler/base_js.html.twig. + If you make any change in this file, verify the same change is needed in the other file. */ +/*<![CDATA[*/ +if (typeof Sfjs === 'undefined') { + Sfjs = (function() { + "use strict"; + + if ('classList' in document.documentElement) { + var hasClass = function (el, cssClass) { return el.classList.contains(cssClass); }; + var removeClass = function(el, cssClass) { el.classList.remove(cssClass); }; + var addClass = function(el, cssClass) { el.classList.add(cssClass); }; + var toggleClass = function(el, cssClass) { el.classList.toggle(cssClass); }; + } else { + var hasClass = function (el, cssClass) { return el.className.match(new RegExp('\\b' + cssClass + '\\b')); }; + var removeClass = function(el, cssClass) { el.className = el.className.replace(new RegExp('\\b' + cssClass + '\\b'), ' '); }; + var addClass = function(el, cssClass) { if (!hasClass(el, cssClass)) { el.className += " " + cssClass; } }; + var toggleClass = function(el, cssClass) { hasClass(el, cssClass) ? removeClass(el, cssClass) : addClass(el, cssClass); }; + } + + var addEventListener; + + var el = document.createElement('div'); + if (!('addEventListener' in el)) { + addEventListener = function (element, eventName, callback) { + element.attachEvent('on' + eventName, callback); + }; + } else { + addEventListener = function (element, eventName, callback) { + element.addEventListener(eventName, callback, false); + }; + } + + if (navigator.clipboard) { + document.querySelectorAll('[data-clipboard-text]').forEach(function(element) { + removeClass(element, 'hidden'); + element.addEventListener('click', function() { + navigator.clipboard.writeText(element.getAttribute('data-clipboard-text')); + }) + }); + } + + return { + addEventListener: addEventListener, + + createTabs: function() { + var tabGroups = document.querySelectorAll('.sf-tabs:not([data-processed=true])'); + + /* create the tab navigation for each group of tabs */ + for (var i = 0; i < tabGroups.length; i++) { + var tabs = tabGroups[i].querySelectorAll(':scope > .tab'); + var tabNavigation = document.createElement('ul'); + tabNavigation.className = 'tab-navigation'; + + var selectedTabId = 'tab-' + i + '-0'; /* select the first tab by default */ + for (var j = 0; j < tabs.length; j++) { + var tabId = 'tab-' + i + '-' + j; + var tabTitle = tabs[j].querySelector('.tab-title').innerHTML; + + var tabNavigationItem = document.createElement('li'); + tabNavigationItem.setAttribute('data-tab-id', tabId); + if (hasClass(tabs[j], 'active')) { selectedTabId = tabId; } + if (hasClass(tabs[j], 'disabled')) { addClass(tabNavigationItem, 'disabled'); } + tabNavigationItem.innerHTML = tabTitle; + tabNavigation.appendChild(tabNavigationItem); + + var tabContent = tabs[j].querySelector('.tab-content'); + tabContent.parentElement.setAttribute('id', tabId); + } + + tabGroups[i].insertBefore(tabNavigation, tabGroups[i].firstChild); + addClass(document.querySelector('[data-tab-id="' + selectedTabId + '"]'), 'active'); + } + + /* display the active tab and add the 'click' event listeners */ + for (i = 0; i < tabGroups.length; i++) { + tabNavigation = tabGroups[i].querySelectorAll(':scope >.tab-navigation li'); + + for (j = 0; j < tabNavigation.length; j++) { + tabId = tabNavigation[j].getAttribute('data-tab-id'); + document.getElementById(tabId).querySelector('.tab-title').className = 'hidden'; + + if (hasClass(tabNavigation[j], 'active')) { + document.getElementById(tabId).className = 'block'; + } else { + document.getElementById(tabId).className = 'hidden'; + } + + tabNavigation[j].addEventListener('click', function(e) { + var activeTab = e.target || e.srcElement; + + /* needed because when the tab contains HTML contents, user can click */ + /* on any of those elements instead of their parent '<li>' element */ + while (activeTab.tagName.toLowerCase() !== 'li') { + activeTab = activeTab.parentNode; + } + + /* get the full list of tabs through the parent of the active tab element */ + var tabNavigation = activeTab.parentNode.children; + for (var k = 0; k < tabNavigation.length; k++) { + var tabId = tabNavigation[k].getAttribute('data-tab-id'); + document.getElementById(tabId).className = 'hidden'; + removeClass(tabNavigation[k], 'active'); + } + + addClass(activeTab, 'active'); + var activeTabId = activeTab.getAttribute('data-tab-id'); + document.getElementById(activeTabId).className = 'block'; + }); + } + + tabGroups[i].setAttribute('data-processed', 'true'); + } + }, + + createToggles: function() { + var toggles = document.querySelectorAll('.sf-toggle:not([data-processed=true])'); + + for (var i = 0; i < toggles.length; i++) { + var elementSelector = toggles[i].getAttribute('data-toggle-selector'); + var element = document.querySelector(elementSelector); + + addClass(element, 'sf-toggle-content'); + + if (toggles[i].hasAttribute('data-toggle-initial') && toggles[i].getAttribute('data-toggle-initial') == 'display') { + addClass(toggles[i], 'sf-toggle-on'); + addClass(element, 'sf-toggle-visible'); + } else { + addClass(toggles[i], 'sf-toggle-off'); + addClass(element, 'sf-toggle-hidden'); + } + + addEventListener(toggles[i], 'click', function(e) { + e.preventDefault(); + + if ('' !== window.getSelection().toString()) { + /* Don't do anything on text selection */ + return; + } + + var toggle = e.target || e.srcElement; + + /* needed because when the toggle contains HTML contents, user can click */ + /* on any of those elements instead of their parent '.sf-toggle' element */ + while (!hasClass(toggle, 'sf-toggle')) { + toggle = toggle.parentNode; + } + + var element = document.querySelector(toggle.getAttribute('data-toggle-selector')); + + toggleClass(toggle, 'sf-toggle-on'); + toggleClass(toggle, 'sf-toggle-off'); + toggleClass(element, 'sf-toggle-hidden'); + toggleClass(element, 'sf-toggle-visible'); + + /* the toggle doesn't change its contents when clicking on it */ + if (!toggle.hasAttribute('data-toggle-alt-content')) { + return; + } + + if (!toggle.hasAttribute('data-toggle-original-content')) { + toggle.setAttribute('data-toggle-original-content', toggle.innerHTML); + } + + var currentContent = toggle.innerHTML; + var originalContent = toggle.getAttribute('data-toggle-original-content'); + var altContent = toggle.getAttribute('data-toggle-alt-content'); + toggle.innerHTML = currentContent !== altContent ? altContent : originalContent; + }); + + /* Prevents from disallowing clicks on links inside toggles */ + var toggleLinks = toggles[i].querySelectorAll('a'); + for (var j = 0; j < toggleLinks.length; j++) { + addEventListener(toggleLinks[j], 'click', function(e) { + e.stopPropagation(); + }); + } + + /* Prevents from disallowing clicks on "copy to clipboard" elements inside toggles */ + var copyToClipboardElements = toggles[i].querySelectorAll('span[data-clipboard-text]'); + for (var k = 0; k < copyToClipboardElements.length; k++) { + addEventListener(copyToClipboardElements[k], 'click', function(e) { + e.stopPropagation(); + }); + } + + toggles[i].setAttribute('data-processed', 'true'); + } + }, + + createFilters: function() { + document.querySelectorAll('[data-filters] [data-filter]').forEach(function (filter) { + var filters = filter.closest('[data-filters]'), + type = 'choice', + name = filter.dataset.filter, + ucName = name.charAt(0).toUpperCase()+name.slice(1), + list = document.createElement('ul'), + values = filters.dataset['filter'+ucName] || filters.querySelectorAll('[data-filter-'+name+']'), + labels = {}, + defaults = null, + indexed = {}, + processed = {}; + if (typeof values === 'string') { + type = 'level'; + labels = values.split(','); + values = values.toLowerCase().split(','); + defaults = values.length - 1; + } + addClass(list, 'filter-list'); + addClass(list, 'filter-list-'+type); + values.forEach(function (value, i) { + if (value instanceof HTMLElement) { + value = value.dataset['filter'+ucName]; + } + if (value in processed) { + return; + } + var option = document.createElement('li'), + label = i in labels ? labels[i] : value, + active = false, + matches; + if ('' === label) { + option.innerHTML = '<em>(none)</em>'; + } else { + option.innerText = label; + } + option.dataset.filter = value; + option.setAttribute('title', 1 === (matches = filters.querySelectorAll('[data-filter-'+name+'="'+value+'"]').length) ? 'Matches 1 row' : 'Matches '+matches+' rows'); + indexed[value] = i; + list.appendChild(option); + addEventListener(option, 'click', function () { + if ('choice' === type) { + filters.querySelectorAll('[data-filter-'+name+']').forEach(function (row) { + if (option.dataset.filter === row.dataset['filter'+ucName]) { + toggleClass(row, 'filter-hidden-'+name); + } + }); + toggleClass(option, 'active'); + } else if ('level' === type) { + if (i === this.parentNode.querySelectorAll('.active').length - 1) { + return; + } + this.parentNode.querySelectorAll('li').forEach(function (currentOption, j) { + if (j <= i) { + addClass(currentOption, 'active'); + if (i === j) { + addClass(currentOption, 'last-active'); + } else { + removeClass(currentOption, 'last-active'); + } + } else { + removeClass(currentOption, 'active'); + removeClass(currentOption, 'last-active'); + } + }); + filters.querySelectorAll('[data-filter-'+name+']').forEach(function (row) { + if (i < indexed[row.dataset['filter'+ucName]]) { + addClass(row, 'filter-hidden-'+name); + } else { + removeClass(row, 'filter-hidden-'+name); + } + }); + } + }); + if ('choice' === type) { + active = null === defaults || 0 <= defaults.indexOf(value); + } else if ('level' === type) { + active = i <= defaults; + if (active && i === defaults) { + addClass(option, 'last-active'); + } + } + if (active) { + addClass(option, 'active'); + } else { + filters.querySelectorAll('[data-filter-'+name+'="'+value+'"]').forEach(function (row) { + toggleClass(row, 'filter-hidden-'+name); + }); + } + processed[value] = true; + }); + + if (1 < list.childNodes.length) { + filter.appendChild(list); + filter.dataset.filtered = ''; + } + }); + } + }; + })(); + + Sfjs.addEventListener(document, 'DOMContentLoaded', function() { + Sfjs.createTabs(); + Sfjs.createToggles(); + Sfjs.createFilters(); + }); +} +/*]]>*/ </script> + </body> +</html> +<!-- Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/src/Controller/ApiController.php:46) (500 Internal Server Error) --> \ No newline at end of file diff --git a/migrations/Version20230205081040.php b/migrations/Version20230205081040.php new file mode 100644 index 0000000..93eb923 --- /dev/null +++ b/migrations/Version20230205081040.php @@ -0,0 +1,34 @@ +<?php + +declare(strict_types=1); + +namespace DoctrineMigrations; + +use Doctrine\DBAL\Schema\Schema; +use Doctrine\Migrations\AbstractMigration; + +/** + * Auto-generated Migration: Please modify to your needs! + */ +final class Version20230205081040 extends AbstractMigration +{ + public function getDescription(): string + { + return ''; + } + + public function up(Schema $schema): void + { + // this up() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE transaction ADD expense BOOLEAN NOT NULL'); + $this->addSql('ALTER TABLE transaction RENAME COLUMN type TO location'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('CREATE SCHEMA public'); + $this->addSql('ALTER TABLE transaction DROP expense'); + $this->addSql('ALTER TABLE transaction RENAME COLUMN location TO type'); + } +} diff --git a/package-lock.json b/package-lock.json index d03d0b9..3b7ac26 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1969,8 +1969,15 @@ } }, "node_modules/@symfony/ux-react": { - "resolved": "vendor/symfony/ux-react/assets", - "link": true + "version": "1.0.0", + "resolved": "file:vendor/symfony/ux-react/assets", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@hotwired/stimulus": "^3.0.0", + "react": "^18.0", + "react-dom": "^18.0" + } }, "node_modules/@symfony/webpack-encore": { "version": "4.2.0", @@ -2400,12 +2407,6 @@ "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==", "dev": true }, - "node_modules/@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", - "dev": true - }, "node_modules/@types/qs": { "version": "6.9.7", "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", @@ -2418,38 +2419,12 @@ "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", "dev": true }, - "node_modules/@types/react": { - "version": "18.0.27", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", - "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", - "dev": true, - "dependencies": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "node_modules/@types/react-dom": { - "version": "18.0.10", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", - "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, "node_modules/@types/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", "dev": true }, - "node_modules/@types/scheduler": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", - "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", - "dev": true - }, "node_modules/@types/serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", @@ -3805,12 +3780,6 @@ "node": ">=8.0.0" } }, - "node_modules/csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", - "dev": true - }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -8205,24 +8174,6 @@ "engines": { "node": ">=12" } - }, - "vendor/symfony/ux-react/assets": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "devDependencies": { - "@hotwired/stimulus": "^3.0.0", - "@types/react": "^18.0", - "@types/react-dom": "^18.0", - "@types/webpack-env": "^1.16", - "react": "^18.0", - "react-dom": "^18.0" - }, - "peerDependencies": { - "@hotwired/stimulus": "^3.0.0", - "react": "^18.0", - "react-dom": "^18.0" - } } }, "dependencies": { @@ -9594,15 +9545,9 @@ } }, "@symfony/ux-react": { - "version": "file:vendor/symfony/ux-react/assets", - "requires": { - "@hotwired/stimulus": "^3.0.0", - "@types/react": "^18.0", - "@types/react-dom": "^18.0", - "@types/webpack-env": "^1.16", - "react": "^18.0", - "react-dom": "^18.0" - } + "version": "1.0.0", + "dev": true, + "requires": {} }, "@symfony/webpack-encore": { "version": "4.2.0", @@ -9867,12 +9812,6 @@ "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==", "dev": true }, - "@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", - "dev": true - }, "@types/qs": { "version": "6.9.7", "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", @@ -9885,38 +9824,12 @@ "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", "dev": true }, - "@types/react": { - "version": "18.0.27", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", - "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", - "dev": true, - "requires": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } - }, - "@types/react-dom": { - "version": "18.0.10", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", - "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", - "dev": true, - "requires": { - "@types/react": "*" - } - }, "@types/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", "dev": true }, - "@types/scheduler": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", - "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", - "dev": true - }, "@types/serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", @@ -10956,12 +10869,6 @@ "css-tree": "^1.1.2" } }, - "csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", - "dev": true - }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", diff --git a/src/Controller/ApiController.php b/src/Controller/ApiController.php index 2d2cf93..18691d2 100644 --- a/src/Controller/ApiController.php +++ b/src/Controller/ApiController.php @@ -13,10 +13,12 @@ use Doctrine\Common\Annotations\AnnotationReader; use Symfony\Component\Serializer\Mapping\Factory\ClassMetadataFactory; use Symfony\Component\Serializer\Mapping\Loader\AnnotationLoader; use App\Entity\Transaction; +use App\Entity\User; use Doctrine\Persistence\ManagerRegistry; use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\Serializer\Normalizer\DateTimeNormalizer; -// #[IsGranted('ROLE_USER')] +#[IsGranted('ROLE_USER')] class ApiController extends AbstractController { private Serializer $serializer; @@ -26,7 +28,7 @@ class ApiController extends AbstractController $classMetadataFactory = new ClassMetadataFactory(new AnnotationLoader(new AnnotationReader())); $encoders = [new JsonEncoder()]; - $normalizers = [new ObjectNormalizer($classMetadataFactory)]; + $normalizers = [new DateTimeNormalizer([DateTimeNormalizer::FORMAT_KEY => "Y-m-d"]), new ObjectNormalizer($classMetadataFactory)]; $this->serializer = new Serializer($normalizers, $encoders); } @@ -34,12 +36,10 @@ class ApiController extends AbstractController #[Route('/api/transaction', name: 'api_transaction_list', methods: ['GET'])] public function list(): Response { - // $user = $this->getUser(); - $user = new \App\Entity\User(); - $transaction = new Transaction(); - $transaction->setAmount(500); - $transaction->setDescription("yolo"); - $user->addTransaction($transaction); + /** + * @var User + */ + $user = $this->getUser(); $transactions = $user->getTransactions(); return new Response($this->serializer->serialize($transactions, "json"), 200, ["Content-Type" => "application/json"]); @@ -49,8 +49,10 @@ class ApiController extends AbstractController public function create(Request $request, ManagerRegistry $doctrine): Response { $entityManager = $doctrine->getManager(); - // $user = $this->getUser(); - $user = new \App\Entity\User(); + /** + * @var User + */ + $user = $this->getUser(); try { $transaction = $this->serializer->deserialize($request->getContent(), Transaction::class, "json"); } catch (\Exception $error) { @@ -61,4 +63,33 @@ class ApiController extends AbstractController $entityManager->flush(); return new Response(); } + + #[Route('/api/transaction/{id}', name: 'api_transaction_delete', methods: ['DELETE'])] + public function delete(Transaction $transaction, ManagerRegistry $doctrine) + { + /** + * @var User + */ + $user = $this->getUser(); + if (!$user->getTransactions()->contains($transaction)) throw $this->createNotFoundException(); + $entityManager = $doctrine->getManager(); + + $entityManager->remove($transaction); + $entityManager->flush(); + } + + #[Route('/api/transaction/{id}', name: 'api_transaction_update', methods: ['PATCH'])] + public function update(Request $request, Transaction $transaction, ManagerRegistry $doctrine) + { + /** + * @var User + */ + $user = $this->getUser(); + if (!$user->getTransactions()->contains($transaction)) throw $this->createNotFoundException(); + $entityManager = $doctrine->getManager(); + + $this->serializer->deserialize($request->getContent(), Transaction::class, "json", ["object_to_populate" => $transaction]); + + $doctrine->getManager()->flush(); + } } diff --git a/src/DataFixtures/AppFixtures.php b/src/DataFixtures/AppFixtures.php new file mode 100644 index 0000000..4c06c8f --- /dev/null +++ b/src/DataFixtures/AppFixtures.php @@ -0,0 +1,38 @@ +<?php + +namespace App\DataFixtures; + +use App\Entity\Transaction; +use App\Entity\User; +use Doctrine\Bundle\FixturesBundle\Fixture; +use Doctrine\Persistence\ObjectManager; +use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface; + +class AppFixtures extends Fixture +{ + private UserPasswordHasherInterface $passwordHasher; + + public function __construct(UserPasswordHasherInterface $passwordHasher) + { + $this->passwordHasher = $passwordHasher; + } + + public function load(ObjectManager $manager): void + { + $user = new User(); + $user->setName("admin"); + $user->setPassword($this->passwordHasher->hashPassword($user, "password")); + $manager->persist($user); + + $transaction = new Transaction(); + $transaction->setLocation("Metro Cote des Neiges"); + $transaction->setDescription("Epicerie"); + $transaction->setAmount(10); + $transaction->setCategory("groceries"); + $manager->persist($transaction); + $user->addTransaction($transaction); + + + $manager->flush(); + } +} diff --git a/src/Entity/Transaction.php b/src/Entity/Transaction.php index 622f279..0fce989 100644 --- a/src/Entity/Transaction.php +++ b/src/Entity/Transaction.php @@ -21,8 +21,8 @@ class Transaction #[ORM\Column(length: 255)] private ?string $description = null; - #[ORM\Column(length: 255)] - private ?string $type = null; + #[ORM\Column] + private ?bool $expense = true; #[ORM\ManyToOne(inversedBy: 'transactions')] #[ORM\JoinColumn(nullable: false)] @@ -35,19 +35,27 @@ class Transaction #[ORM\Column(type: Types::DATE_MUTABLE)] private ?\DateTimeInterface $date = null; + #[ORM\Column(length: 255)] + private ?string $location = null; + + public function __construct() + { + $this->setDate(new \DateTime()); + } + public function getId(): ?int { return $this->id; } - public function getAmount(): ?int + public function getAmount(): ?float { - return $this->amount; + return $this->amount / 100; } - public function setAmount(int $amount): self + public function setAmount(float $amount): self { - $this->amount = $amount; + $this->amount = $amount * 100; return $this; } @@ -64,14 +72,14 @@ class Transaction return $this; } - public function getType(): ?string + public function isExpense(): ?bool { - return $this->type; + return $this->expense; } - public function setType(string $type): self + public function setExpense(bool $expense): self { - $this->type = $type; + $this->expense = $expense; return $this; } @@ -111,4 +119,16 @@ class Transaction return $this; } + + public function getLocation(): ?string + { + return $this->location; + } + + public function setLocation(string $location): self + { + $this->location = $location; + + return $this; + } } diff --git a/symfony.lock b/symfony.lock index a56d39f..194af4a 100644 --- a/symfony.lock +++ b/symfony.lock @@ -22,6 +22,18 @@ "src/Repository/.gitignore" ] }, + "doctrine/doctrine-fixtures-bundle": { + "version": "3.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "3.0", + "ref": "1f5514cfa15b947298df4d771e694e578d4c204d" + }, + "files": [ + "src/DataFixtures/AppFixtures.php" + ] + }, "doctrine/doctrine-migrations-bundle": { "version": "3.2", "recipe": { diff --git a/templates/connection.html.twig b/templates/connection.html.twig index 3ff8e74..783067d 100644 --- a/templates/connection.html.twig +++ b/templates/connection.html.twig @@ -6,6 +6,11 @@ {{ encore_entry_script_tags('connection') }} {% endblock %} +{% block stylesheets %} + {{ parent() }} + {{ encore_entry_link_tags('connection') }} +{% endblock %} + {% block body %} <div class="container" id="container"> <div class="form-container sign-up-container"> -- GitLab