Messages
All2
Ordered list of dispatched messages across all your buses
"App\Core\Application\Command\User\SaveUserUtmCookies\SaveUserUtmCookiesCommand" |
|
|---|---|
| Caller | In Handler.php line |
| Bus | command.bus |
| Message | App\Core\Application\Command\User\SaveUserUtmCookies\SaveUserUtmCookiesCommand {#5615 -request: Symfony\Component\HttpFoundation\Request {#10 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#13 #parameters: [ "_stopwatch_token" => "f01980" "_route" => "ddd_site.index" "uri" => "asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "domain" => "dev-4.sksp.site" "_controller" => [ "App\Core\Ports\Http\Tilda\TildaPageAction" "__invoke" ] "_route_params" => [ "uri" => "asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "domain" => "dev-4.sksp.site" ] "_firewall_context" => "security.firewall.map.context.user" ] } +request: Symfony\Component\HttpFoundation\InputBag {#11 #parameters: [] } +query: Symfony\Component\HttpFoundation\InputBag {#12 #parameters: [] } +server: Symfony\Component\HttpFoundation\ServerBag {#16 #parameters: [ "DOCUMENT_ROOT" => "/app/public" "REMOTE_ADDR" => "172.27.0.1" "REMOTE_PORT" => "47794" "SERVER_SOFTWARE" => "PHP 8.2.31 Development Server" "SERVER_PROTOCOL" => "HTTP/1.1" "SERVER_NAME" => "0.0.0.0" "SERVER_PORT" => "443" "REQUEST_URI" => "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "REQUEST_METHOD" => "GET" "SCRIPT_NAME" => "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "SCRIPT_FILENAME" => "public/index.php" "PHP_SELF" => "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "HTTP_HOST" => "dev-4.sksp.site" "HTTP_X_REAL_IP" => "74.7.242.56" "HTTP_X_FORWARDED_FOR" => "74.7.242.56" "HTTP_X_FORWARDED_HOST" => "dev-4.sksp.site" "HTTP_X_FORWARDED_PORT" => "443" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CONNECTION" => "close" "HTTP_X_OPENAI_HOST_HASH" => "421566074" "HTTP_FROM" => "gptbot(at)openai.com" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.4; +https://openai.com/gptbot)" "HTTP_REFERER" => "https://dev-4.sksp.site/asset/admin/css/bucket-ico-fonts.css" "HTTP_ACCEPT" => "*/*" "HTTP_ACCEPT_ENCODING" => "gzip, br, deflate" "REQUEST_TIME_FLOAT" => 1783363201.8268 "REQUEST_TIME" => 1783363201 "argv" => [] "argc" => 0 "LOCAL_USE_PROXY" => "0" "LOCAL_PORTS_OFFSET" => "2709" "LOCAL_APP_HTTP_BIND_PORT" => "10790" "SYMFONY_DOTENV_VARS" => "LOCAL_USE_PROXY,LOCAL_PORTS_OFFSET,LOCAL_APP_HTTP_BIND_PORT" "TINKOFF_ACQUIRING_TAX" => "none" "OPENPANEL_CLIENT_SECRET" => "local" "AMO_REDIRECT" => "https://lvh.me/amo/callback" "RABBITMQ_PASSWORD" => "guest" "STORAGE_SELECTEL_S3_PUBLIC_ENDPOINT" => "http://s3.dev-4.sksp.site/" "DATABASE_URL" => "mysql://skillspace:skillspace@mysql:3306/skillspace?serverVersion=8.0.37&charset=utf8mb4" "KAFKA_HOST" => "kafka" "GQL_COMMERCE_BILLING_URL" => "http://commerce-billing:3110/graphql" "APP_TRUSTED_PROXIES" => "127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16" "SCHOOL_REGISTER_RATE_LIMIT_REQUIRE_REDIS" => "0" "GATEWAY_INTERNAL_AUTH_SECRET" => "local-gateway-internal-secret" "HOSTNAME" => "4f8cf7037cec" "PHP_VERSION" => "8.2.31" "REDIS_STANDALONE_DSN" => "redis://redis:6379" "STORAGE_BACKUP_SELECTEL_S3_REGION" => "ru-1" "PHP_INI_DIR" => "/usr/local/etc/php" "GPG_KEYS" => "39B641343D8C104B2B146DC3F9C39DC0B9698544 E60913E4DF209907D8E30D96659A97C9CF2A795A 1198C0117593497A5EC5C199286AF1F9897469DC" "SCHOOL_REGISTER_RATE_LIMIT_ENFORCE" => "0" "TINKOFF_STUDENT_ACQUIRING_TERMINAL_KEY" => "local" "SCHOOL_REGISTER_DISABLE_PHONES" => "1" "BACKUP_MONGO_NAME" => "local" "PHP_LDFLAGS" => "-Wl,-O1 -pie" "YANDEX_CAPTCHA_KEY" => "local" "REDIS_MASTER_NAME" => "" "SCHOOL_REGISTER_LOGGER" => "0" "PWD" => "/app" "BOT_DETECTION_ENCRYPTION_KEY" => "12345678901234567890123456789012" "MANDARIN_WEBHOOK_IPS" => "127.0.0.1" "AMO_SECRET" => "local" "ROISTAT_KEY" => "local" "OPENPANEL_API_URL" => "https://lvh.me/local/openpanel" "OPENPANEL_CLIENT_ID" => "local" "STORAGE_SELECTEL_S3_REGION" => "us-east-1" "YANDEX_KASS_SHOP_ID" => "local" "SMSRU_API_ID" => "local" "RABBITMQ_URL" => "amqp://guest:guest@rabbitmq:5672/%2f" "LOCAL_DEV_NAME" => "dev-4-c206f0" "FRONTEND_LOCALHOST" => "" "KINESCOPE_PROJECT_OUR" => "local" "BACKUP_FTP_DB_LIMIT_COUNT" => "10" "TINKOFF_STUDENT_ACQUIRING_SECRET_KEY" => "local" "MESSENGER_ASYNC_TRANSPORT_DSN" => "doctrine://default?queue_name=monolith-messenger-async-db" "RABBITMQ_PORT" => "5672" "ALBATO_CREATE_SCHOOL_BASE" => "https://lvh.me/local/albato/base" "HOME" => "/root" "VERIFYMAIL_API_KEY" => "local" "SENTRY_DSN" => "" "REDIS_CONNECTION_PASSWORD" => "" "SCHOOL_APPROVEMENT_DISABLED" => "1" "STORAGE_SELECTEL_S3_AUTH_SECRET" => "minioadmin123" "BACKUP_FTP_DB_PATH" => "/tmp" "AMO_ENABLE" => "0" "VAR_DUMPER_SERVER" => "tcp://0.0.0.0:9912" "AMO_DOMAIN" => "local" "LOCAL_ANALYTICS_TIMEOUT" => "1" "APP_ENV" => "dev" "APP_DEBUG" => true "STORAGE_BACKUP_SELECTEL_S3_AUTH_KEY" => "local" "OPENAPI_REQUEST_LOGGER" => "0" "PHP_SHA256" => "95eae411d594fe6f6e5678b76645dc13ae47d3c0a5325c1d969b58dea56ee45a" "STORAGE_BACKUP_SELECTEL_S3_VERSION" => "latest" "HTTPS_BIND_PORT" => "3152" "BACKUP_MONGO_PATH" => "/tmp" "RABBITMQ_USER" => "guest" "MAIL_DISABLE_SEND" => "0" "LOCAL_WEBHOOKS_TIMEOUT" => "1" "COOKIE_HTTP_HOST" => ".lvh.me" "PHPIZE_DEPS" => "autoconf \t\tdpkg-dev \t\tfile \t\tg++ \t\tgcc \t\tlibc-dev \t\tmake \t\tpkg-config \t\tre2c" "LOCAL_DEV_PROTOCOL" => "https" "BACKUP_FTP_USER" => "local" "BACKUP_FTP_PASS" => "local" "KINESCOPE_ACCESS_TOKEN" => "local" "PHP_URL" => "https://www.php.net/distributions/php-8.2.31.tar.xz" "LOCAL_ANALYTICS_URL" => "http://mailpit:8025/" "FRONT_CDN_ENABLE" => "Y" "KAFKA_USER" => "" "OPENID_MOSRU_API_GET_AUTHORIZATION_URL" => "https://lvh.me/local/openid/authorize" "STORAGE_BACKUP_SELECTEL_S3_BUCKET" => "local" "RABBITMQ_HOST" => "rabbitmq" "STORAGE_SELECTEL_S3_AUTH_KEY" => "minioadmin" "LOCAL_DEV_PROJECT_NAME" => "skillspace-dev-4-c206f0" "OPENID_MOSRU_API_PASSWORD" => "local" "STORAGE_SELECTEL_S3_ENDPOINT" => "http://minio:9000/" "ALBATO_CREATE_SCHOOL_FULL" => "https://lvh.me/local/albato/full" "SHLVL" => "0" "COMPOSER_ALLOW_SUPERUSER" => "1" "LOCK_DSN" => "redis://redis:6379" "EDITOR_INTERNAL_HTTP_URL" => "http://editor-service:3033/" "RED_SMS_API_KEY" => "local" "TINKOFF_STUDENT_ACQUIRING_TAX" => "none" "KINESCOPE_PROJECT_SCHOOLS" => "local" "FRONT_CDN_URL" => "https://cdna.skillspace.ru" "STORAGE_SELECTEL_S3_BUCKET" => "skillspace" "PHP_CFLAGS" => "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" "TINKOFF_ACQUIRING_SECRET_KEY" => "local" "AMO_INTEGRATION_ID" => "local" "REDIS_CONNECTION_MODE" => "standalone" "COMPOSER_CACHE_DIR" => "/tmp/composer-cache" "CONSUMER_PROCESS_PREFIX" => "skillspace-dev-4-c206f0" "IDENTITY_ACCESS_BASE_URL" => "http://identity-access:3100/" "OPENID_MOSRU_API_CLIENT_ID" => "local" "MESSENGER_TRANSPORT_RABBIT_DSN" => "amqp://guest:guest@rabbitmq:5672/%2f" "IDENTITY_ACCESS_JWT_SECRET" => "local-identity-access-jwt-secret-please-change" "MAIL_ENABLE_SEND_EMAIL" => "1" "YANDEX_KASS_SECRET" => "local" "LOCAL_WEBHOOKS_URL" => "http://mailpit:8025/" "STORAGE_BACKUP_SELECTEL_S3_AUTH_SECRET" => "local" "APP_PROTOCOL" => "https" "TINKOFF_ACQUIRING_TERMINAL_KEY" => "local" "LOCAL_DEV_HOST" => "dev-4.sksp.site" "KAFKA_PASSWORD" => "" "MAILER_DSN" => "smtp://mailpit:1025" "PATH" => "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" "SMTPBZ_HOST" => "mailpit" "STORAGE_SELECTEL_S3_VERSION" => "latest" "OPENAPI_ENABLED" => "1" "STORAGE_BACKUP_SELECTEL_S3_ENDPOINT" => "https://s3.selcdn.ru" "APP_HOST" => "dev-4.sksp.site" "SMTPBZ_ACCESS_TOKEN" => "local" "REDIS_SLAVES_CONNECTION" => "[]" "PHP_ASC_URL" => "https://www.php.net/distributions/php-8.2.31.tar.xz.asc" "BACKUP_FTP_HOST" => "localhost" "HTTP_BIND_PORT" => "2789" "SCHOOL_REGISTER_TEMP_MAIL_CHECK" => "0" "IDENTITY_ACCESS_INTERNAL_AUTH_SECRET" => "local-monolith-identity-internal-secret" "OPENID_MOSRU_API_REDIRECT_AUTHORIZATION_URL" => "https://lvh.me/local/openid/callback" "PHP_CPPFLAGS" => "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" "OLDPWD" => "/app" "SCHOOL_REGISTER_DISABLE_EMAILS" => "1" "APP_SECRET" => "local-monolith-secret" "HTTPS" => "on" "REQUEST_SCHEME" => "https" ] } +files: Symfony\Component\HttpFoundation\FileBag {#15 #parameters: [] } +cookies: Symfony\Component\HttpFoundation\InputBag {#14 #parameters: [] } +headers: Symfony\Component\HttpFoundation\HeaderBag {#17 #headers: [ "host" => [ "dev-4.sksp.site" ] "x-real-ip" => [ "74.7.242.56" ] "x-forwarded-for" => [ "74.7.242.56" ] "x-forwarded-host" => [ "dev-4.sksp.site" ] "x-forwarded-port" => [ "443" ] "x-forwarded-proto" => [ "https" ] "connection" => [ "close" ] "x-openai-host-hash" => [ "421566074" ] "from" => [ "gptbot(at)openai.com" ] "user-agent" => [ "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.4; +https://openai.com/gptbot)" ] "referer" => [ "https://dev-4.sksp.site/asset/admin/css/bucket-ico-fonts.css" ] "accept" => [ "*/*" ] "accept-encoding" => [ "gzip, br, deflate" ] "bind-port" => [ "2789" ] "x-php-ob-level" => [ "0" ] ] #cacheControl: [] } #content: "" #languages: null #charsets: null #encodings: null #acceptableContentTypes: [ "*/*" ] #pathInfo: "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" #requestUri: "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" #baseUrl: "" #basePath: "" #method: "GET" #format: null #session: Symfony\Component\HttpFoundation\Session\Session {#6906 #storage: Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage {#6907 #bags: [ "attributes" => Symfony\Component\HttpFoundation\Session\SessionBagProxy {#6910 -bag: Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag {#6909 -name: "attributes" -storageKey: "_sf2_attributes" #attributes: [] } -data: &1 [] -usageIndex: &2 0 -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#6905 returnType: "void" this: Symfony\Component\HttpKernel\EventListener\SessionListener {#2131 …} } } "flashes" => Symfony\Component\HttpFoundation\Session\SessionBagProxy {#6912 -bag: Symfony\Component\HttpFoundation\Session\Flash\FlashBag {#6911 -name: "flashes" -flashes: [] -storageKey: "_symfony_flashes" } -data: &1 [] -usageIndex: &2 0 -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#6905} } ] #started: false #closed: false #saveHandler: Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy {#6908 #wrapper: false #saveHandlerName: "files" #handler: Symfony\Component\HttpFoundation\Session\Storage\Handler\StrictSessionHandler {#6902 -sessionName: ? string -prefetchId: ? string -prefetchData: ? string -newSessionId: null -igbinaryEmptyData: ? string -handler: SessionHandler {#6903} -doDestroy: ? bool } } #metadataBag: Symfony\Component\HttpFoundation\Session\Storage\MetadataBag {#6904 -name: "__metadata" -storageKey: "_sf2_meta" #meta: [ "c" => 0 "u" => 0 "l" => 0 ] -lastUsed: ? int -updateThreshold: 0 -cookieLifetime: 31536000 } } -flashName: "flashes" -attributeName: "attributes" -data: &1 [] -usageIndex: &2 0 -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#6905} } #locale: null #defaultLocale: "ru" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: ? bool -trustedValuesCache: [ "2\x0074.7.242.56\x00172.27.0.1\x00" => [ "74.7.242.56" ] "4\x00dev-4.sksp.site\x00\x00" => [ "dev-4.sksp.site" ] "32\x00\x00\x00" => [] "8\x00https\x00\x00" => [ "https" ] "16\x00443\x00\x00" => [ "0.0.0.0:443" ] ] -isIisRewrite: false format: "html" } -response: Symfony\Component\HttpFoundation\Response {#5617 +headers: Symfony\Component\HttpFoundation\ResponseHeaderBag {#5618 #headers: [ "cache-control" => [ "no-cache, private" ] "date" => [ "Mon, 06 Jul 2026 18:40:01 GMT" ] "content-type" => [ "text/html; charset=UTF-8" ] "x-debug-token" => [ "205266" ] "x-debug-token-link" => [ "https://dev-4.sksp.site/_profiler/205266" ] "x-robots-tag" => [ "noindex" ] ] #cacheControl: [] #computedCacheControl: [ "no-cache" => true "private" => true ] #cookies: [] #headerNames: [ "cache-control" => "Cache-Control" "date" => "Date" "content-type" => "Content-Type" "x-debug-token" => "X-Debug-Token" "x-debug-token-link" => "X-Debug-Token-Link" "x-robots-tag" => "X-Robots-Tag" ] } #content: """ <!DOCTYPE html>\n <html lang="ru">\n <head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <title>Главная — Skillspace Local Dev</title>\n <meta name="robots" content="noindex,nofollow">\n </head>\n <body style="margin:0;font-family:Inter,Arial,sans-serif;line-height:1.55;background:linear-gradient(180deg,#f4f7fb 0%,#eef2ff 100%);color:#0f172a;">\n <!-- skillspace-dev-tilda-fallback -->\n <main style="max-width:1080px;margin:0 auto;padding:40px 20px 56px;">\n <section style="background:#ffffff;border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:32px;box-shadow:0 20px 60px rgba(15,23,42,.08);">\n <div style="display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:13px;font-weight:700;letter-spacing:.02em;">DEV ONLY · Tilda fallback</div>\n <h1 style="margin:16px 0 10px;font-size:36px;line-height:1.15;">Главная</h1>\n <p style="margin:0 0 20px;font-size:17px;color:#334155;max-width:760px;">Tilda API refresh для локального запуска отключён, поэтому вместо внешней страницы показывается аккуратная dev-заглушка. Это нормально только для <strong>dev</strong>. Пароль у dev-аккаунтов совпадает с логином/email.</p>\n <div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px;">\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Dev школа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-school</div>\n <a href="https://dev-school.dev-4.sksp.site" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-school.dev-4.sksp.site</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Владелец школы:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-owner@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Платформа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">Admin</div>\n <a href="https://dev-4.sksp.site/admin-old/login" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-4.sksp.site/admin-old/login</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Админ:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">admin@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Student smoke test</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-student@skillspace.local</div>\n <div style="font-size:14px;color:#475569;">Студент:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-student@skillspace.local</div>\n <div style="margin-top:8px;font-size:14px;color:#475569;">Курс: Dev Demo Course</div>\n </article>\n </div>\n <div style="display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;">\n <a href="https://dev-4.sksp.site" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#111827;color:#fff;text-decoration:none;font-weight:700;cursor:pointer;">Открыть платформу</a>\n <a href="https://dev-4.sksp.site/_profiler/" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#fff;color:#111827;text-decoration:none;font-weight:700;border:1px solid #cbd5e1;cursor:pointer;">Открыть profiler</a>\n </div>\n </section>\n </main>\n \n <div class="sf-toolbar sf-display-none" role="region" aria-label="Symfony Web Debug Toolbar" data-frankenphp-hot-reload-preserve> <div id="sfwdt205266"> <!-- START of Symfony Web Debug Toolbar --><div id="sfMiniToolbar-205266" class="sf-minitoolbar" data-no-turbolink data-turbo="false"> <button type="button" title="Show Symfony toolbar" id="sfToolbarMiniToggler-205266" accesskey="D" aria-expanded="false" aria-controls="sfToolbarMainContent-205266"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" 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> </button></div><div id="sfToolbarClearer-205266" class="sf-toolbar-clearer"></div><div id="sfToolbarMainContent-205266" class="sf-toolbarreset notranslate clear-fix" data-no-turbolink data-turbo="false"> <div class="sf-toolbar-block sf-toolbar-block-request sf-toolbar-status-normal " > <a href="https://dev-4.sksp.site/_profiler/205266?panel=request"> <div class="sf-toolbar-icon"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" 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> <span class="sf-toolbar-value sf-toolbar-ajax-request-counter"> Loading… </span> </div> </a> <div class="sf-toolbar-info"> <div class="sf-toolbar-info-piece"> <b>Loading the web debug toolbar…</b> </div> <div class="sf-toolbar-info-piece"> Attempt #<span id="sfLoadCounter-205266"></span> </div> <div class="sf-toolbar-info-piece"> <b> <button class="sf-cancel-button" type="button" id="sfLoadCancel-205266" title="Cancel loading">Cancel</button> </b> </div> </div></div> <button class="hide-button" type="button" id="sfToolbarHideButton-205266" title="Close Toolbar" accesskey="D" aria-expanded="true" aria-controls="sfToolbarMainContent-205266"> <svg xmlns="http://www.w3.org/2000/svg" data-icon-name="icon-tabler-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <line x1="18" y1="6" x2="6" y2="18"></line> <line x1="6" y1="6" x2="18" y2="18"></line></svg> </button></div><!-- END of Symfony Web Debug Toolbar --> </div> <style nonce="fa4c52e6ccdfa020bf1175211b5e489c"> .sf-toolbarreset { --sf-toolbar-font-family-system: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --sf-toolbar-font-family-monospace: "Ubuntu Mono", "JetBrains Mono", ui-monospace, "Roboto Mono", SFMono-Regular, Menlo, Monaco, Consolas,"Liberation Mono", "Courier New", monospace; --sf-toolbar-white: #fff; --sf-toolbar-black: #000; --sf-toolbar-gray-50: #fafafa; --sf-toolbar-gray-100: #f5f5f5; --sf-toolbar-gray-200: #e5e5e5; --sf-toolbar-gray-300: #d4d4d4; --sf-toolbar-gray-400: #a3a3a3; --sf-toolbar-gray-500: #737373; --sf-toolbar-gray-600: #525252; --sf-toolbar-gray-700: #404040; --sf-toolbar-gray-800: #262626; --sf-toolbar-gray-900: #171717; --sf-toolbar-red-50: #FEFBFC; --sf-toolbar-red-100: #FCE9ED; --sf-toolbar-red-200: #F5B8C5; --sf-toolbar-red-300: #EF869C; --sf-toolbar-red-400: #E85574; --sf-toolbar-red-500: #E1244B; --sf-toolbar-red-600: #B41939; --sf-toolbar-red-700: #83122A; --sf-toolbar-red-800: #510B1A; --sf-toolbar-red-900: #20040A; --sf-toolbar-yellow-50: #fef7e1; --sf-toolbar-yellow-100: #fef2cd; --sf-toolbar-yellow-200: #fde496; --sf-toolbar-yellow-300: #fcd55f; --sf-toolbar-yellow-400: #fbc728; --sf-toolbar-yellow-500: #e6af05; --sf-toolbar-yellow-600: #af8503; --sf-toolbar-yellow-700: #785b02; --sf-toolbar-yellow-800: #413101; --sf-toolbar-yellow-900: #0a0800; --sf-toolbar-green-50: #eff5f5; --sf-toolbar-green-100: #deeaea; --sf-toolbar-green-200: #bbd5d5; --sf-toolbar-green-300: #99bfbf; --sf-toolbar-green-400: #76a9a9; --sf-toolbar-green-500: #598e8e; --sf-toolbar-green-600: #436c6c; --sf-toolbar-green-700: #2e4949; --sf-toolbar-green-800: #182727; --sf-toolbar-green-900: #030404;}.sf-minitoolbar { --sf-toolbar-gray-800: #262626; background-color: var(--sf-toolbar-gray-800); border-top-left-radius: 4px; bottom: 0; box-sizing: border-box; display: none; height: 36px; padding: 6px; position: fixed; right: 0; z-index: 99999;}.sf-minitoolbar button { background-color: transparent; padding: 0; border: none;}.sf-minitoolbar svg,.sf-minitoolbar img { --sf-toolbar-gray-200: #e5e5e5; color: var(--sf-toolbar-gray-200); max-height: 24px; max-width: 24px; display: inline;}.sf-toolbar-clearer { clear: both; height: 36px;}.sf-display-none { display: none;}.sf-toolbarreset *:not(svg rect) { box-sizing: content-box; vertical-align: baseline; letter-spacing: normal; width: auto;}.sf-toolbarreset { background-color: var(--sf-toolbar-gray-800); bottom: 0; box-shadow: inset 0 1px 0 var(--sf-toolbar-black), 0 -1px 0 rgba(0, 0, 0, 0.5); color: var(--sf-toolbar-gray-200); font: 11px var(--sf-toolbar-font-family-system); left: 0; margin: 0; padding: 0 36px 0 0; position: fixed; right: 0; text-align: left; text-transform: none; z-index: 99999; direction: ltr; /* neutralize the aliasing defined by external CSS styles */ -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: auto;}.sf-toolbarreset abbr { border: dashed var(--sf-toolbar-gray-500); border-width: 0 0 1px;}.sf-toolbarreset svg,.sf-toolbarreset img { height: 20px; width: 20px; display: inline-block;}.sf-toolbarreset .sf-cancel-button { color: var(--sf-toolbar-gray-700);}.sf-toolbarreset .hide-button { background: var(--sf-toolbar-gray-800); color: var(--sf-toolbar-gray-300); display: block; position: absolute; top: 2px; right: 0; width: 36px; height: 34px; cursor: pointer; text-align: center; border: none; margin: 0; padding: 0;}.sf-toolbarreset .hide-button:hover { background: var(--sf-toolbar-gray-700);}.sf-toolbarreset .hide-button svg { max-height: 18px; margin-top: 1px;}.sf-toolbar-block { cursor: default; display: block; float: left; height: 36px; margin-right: 0; position: relative; white-space: nowrap; max-width: 15%;}.sf-toolbar-block > a,.sf-toolbar-block > a:hover { display: block; text-decoration: none; background-color: transparent; color: inherit;}.sf-toolbar-block span { display: inline-block;}.sf-toolbar-block .sf-toolbar-value { color: var(--sf-toolbar-gray-100); font-size: 13px; line-height: 36px; padding: 0;}.sf-toolbar-block .sf-toolbar-label,.sf-toolbar-block .sf-toolbar-class-separator { color: var(--sf-toolbar-gray-400); font-size: 12px; margin-left: 2px;}.sf-toolbar-block .sf-toolbar-info { border-collapse: collapse; display: table; z-index: 100000;}.sf-toolbar-block hr { border-top: 1px solid var(--sf-toolbar-gray-500); margin: 4px 0; padding-top: 4px;}.sf-toolbar-block .sf-toolbar-info-piece { /* this 'border-bottom' trick is needed because 'margin-bottom' doesn't work for table rows */ border-bottom: solid transparent 3px; display: table-row;}.sf-toolbar-block .sf-toolbar-info-piece-additional,.sf-toolbar-block .sf-toolbar-info-piece-additional-detail { display: none;}.sf-toolbar-block .sf-toolbar-info-group { margin-bottom: 4px; padding-bottom: 2px; border-bottom: 1px solid #333333;}.sf-toolbar-block .sf-toolbar-info-group:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-status { border-radius: 4px; padding: 2px 5px; margin-bottom: 0;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-status + .sf-toolbar-status { margin-left: 4px;}.sf-toolbar-block .sf-toolbar-info-piece:last-child { margin-bottom: 0;}div.sf-toolbar .sf-toolbar-block .sf-toolbar-info-piece a { color: #99CDD8; text-decoration: underline;}div.sf-toolbar .sf-toolbar-block a:hover { text-decoration: none;}.sf-toolbar-block .sf-toolbar-info-piece b { color: var(--sf-toolbar-gray-400); display: table-cell; font-size: 11px; padding: 4px 8px 4px 0;}.sf-toolbar-block:not(.sf-toolbar-block-dump) .sf-toolbar-info-piece span { color: var(--sf-toolbar-gray-100);}.sf-toolbar-block .sf-toolbar-info-piece span { font-size: 12px;}div.sf-toolbar .sf-toolbar-block .sf-toolbar-info-piece.sf-toolbar-info-php-ext a { text-decoration: none;}.sf-toolbar-block .sf-toolbar-info { background-color: var(--sf-toolbar-gray-700); border-radius: 4px; border-bottom-left-radius: 0; bottom: 36px; color: var(--sf-toolbar-gray-100); display: none; padding: 9px 0; position: absolute;}.sf-toolbar-block.sf-toolbar-block-right .sf-toolbar-info { border-bottom-left-radius: 4px; border-bottom-right-radius: 0;}.sf-toolbar-block .sf-toolbar-info:empty { visibility: hidden;}.sf-toolbar-block .sf-toolbar-status { display: inline-block; color: var(--sf-toolbar-white); background-color: var(--sf-toolbar-gray-600); padding: 3px 6px; margin: 0 4px; min-width: 15px; min-height: 13px; text-align: center;}.sf-toolbar-block .sf-toolbar-status.sf-toolbar-status-green,.sf-toolbar-block .sf-toolbar-info .sf-toolbar-status.sf-toolbar-status-green { background-color: #059669; color: var(--white);}.sf-toolbar-block .sf-toolbar-status.sf-toolbar-status-red,.sf-toolbar-block .sf-toolbar-info .sf-toolbar-status.sf-toolbar-status-red { background-color: var(--sf-toolbar-red-500); color: var(--sf-toolbar-red-50);}.sf-toolbar-block .sf-toolbar-status.sf-toolbar-status-yellow,.sf-toolbar-block .sf-toolbar-info .sf-toolbar-status.sf-toolbar-status-yellow { background-color: var(--sf-toolbar-yellow-300); color: var(--sf-toolbar-yellow-800);}.sf-toolbar-block.sf-toolbar-status-green::before,.sf-toolbar-block.sf-toolbar-status-red::before,.sf-toolbar-block.sf-toolbar-status-yellow::before { background: var(--sf-toolbar-yellow-400); border-radius: 6px; content: ''; position: absolute; bottom: 1px; left: 0; width: 98%; height: 3px; z-index: 10005;}.sf-toolbar-block.sf-toolbar-status-red::before { background: var(--sf-toolbar-red-400);}.sf-toolbar-block.sf-toolbar-status-green::before { background: var(--sf-toolbar-green-400);}.sf-toolbar-block-request.sf-toolbar-block.sf-toolbar-status-green::before,.sf-toolbar-block-request.sf-toolbar-block.sf-toolbar-status-red::before,.sf-toolbar-block-request.sf-toolbar-block.sf-toolbar-status-yellow::before { display: none;}.sf-toolbar-block-request .sf-toolbar-status { border-radius: 6px; color: #fff; display: inline-block; flex-shrink: 0; font-size: 13px; font-weight: 500; padding: 4px 8px;}.sf-toolbar-block-request .sf-toolbar-info-piece a { background-color: transparent; text-decoration: none;}.sf-toolbar-block-request .sf-toolbar-info-piece a:hover { text-decoration: underline;}.sf-toolbar-block-request .sf-toolbar-redirection-status { font-weight: normal; padding: 2px 4px; line-height: 18px;}.sf-toolbar-block.sf-toolbar-block-request .sf-toolbar-redirection-status.sf-toolbar-status-yellow { background-color: var(--sf-toolbar-yellow-300); border-radius: 4px; color: var(--sf-toolbar-yellow-800); padding: 1px 4px;}.sf-toolbar-block.sf-toolbar-block-request .sf-toolbar-info-piece .sf-toolbar-redirection-method { background: transparent; color: var(--sf-toolbar-gray-300); border: 1px solid var(--sf-toolbar-gray-400); padding: 1px 4px;}.sf-toolbar-block-request .sf-toolbar-info-piece span.sf-toolbar-redirection-method { font-size: 12px; height: 17px; line-height: 17px; margin-right: 5px;}.sf-toolbar-block-request .sf-toolbar-request-icon svg { stroke-width: 3px;}.sf-toolbar-block-ajax .sf-toolbar-icon { cursor: pointer;}.sf-toolbar-status-green .sf-toolbar-label,.sf-toolbar-status-yellow .sf-toolbar-label,.sf-toolbar-status-red .sf-toolbar-label { color: var(--sf-toolbar-white);}.sf-toolbar-block-config svg path,.sf-toolbar-block-config svg .sf-svg-path { fill: var(--sf-toolbar-white);}.sf-toolbar-block .sf-toolbar-icon { color: var(--sf-toolbar-gray-300); align-items: center; display: flex; height: 36px; padding: 0 7px; overflow: hidden; text-overflow: ellipsis;}.sf-toolbar-block:hover .sf-toolbar-icon { border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; box-shadow: 1px 0 0 var(--sf-toolbar-black), inset 0 -1px 0 var(--sf-toolbar-black);}.sf-toolbar-block.sf-toolbar-block-right:hover .sf-toolbar-icon { box-shadow: -1px 0 0 var(--sf-toolbar-black), inset 0 -1px 0 var(--sf-toolbar-black);}.sf-toolbar-block-request .sf-toolbar-icon { padding-left: 0; padding-right: 0;}.sf-toolbar-block .sf-toolbar-icon img,.sf-toolbar-block .sf-toolbar-icon svg { border-width: 0;}.sf-toolbar-block .sf-toolbar-icon img + span,.sf-toolbar-block .sf-toolbar-icon svg + span { margin-left: 4px;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-value,.sf-toolbar-block.sf-toolbar-block-sf-cli .sf-toolbar-value { margin-left: 5px;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-label,.sf-toolbar-block.sf-toolbar-block-sf-cli .sf-toolbar-label { margin-left: 0;}.sf-toolbar-block:hover,.sf-toolbar-block.hover { position: relative;}.sf-toolbar-block:hover .sf-toolbar-icon,.sf-toolbar-block.hover .sf-toolbar-icon { background-color: var(--sf-toolbar-gray-700); position: relative; z-index: 10002;}.sf-toolbar-block-ajax.hover .sf-toolbar-info { z-index: 10001;}.sf-toolbar-block:hover .sf-toolbar-info,.sf-toolbar-block.hover .sf-toolbar-info { display: block; padding: 10px; max-width: 525px; max-height: 480px; word-wrap: break-word; overflow: hidden; overflow-y: auto;}.sf-toolbar-info-piece b.sf-toolbar-ajax-info { color: var(--sf-toolbar-gray-100);}.sf-toolbar-ajax-requests { border: 1px solid var(--sf-toolbar-gray-500); font-variant: tabular-nums; margin: 5px 0 0; width: 100%;}.sf-toolbar-ajax-requests td { background-color: var(--sf-toolbar-gray-700); border: 1px solid var(--sf-toolbar-gray-500); color: var(--sf-toolbar-gray-100); font-size: 12px; padding: 4px; vertical-align: middle;}.sf-toolbar-ajax-requests thead { border: 0;}.sf-toolbar-ajax-requests th { background-color: var(--sf-toolbar-gray-800); border: 1px solid var(--sf-toolbar-gray-500); color: var(--sf-toolbar-gray-200); font-size: 11px; padding: 4px;}.sf-ajax-request-url { max-width: 250px; line-height: 9px; overflow: hidden; text-overflow: ellipsis;}.sf-toolbar-ajax-requests .sf-ajax-request-url a { text-decoration: none;}.sf-toolbar-ajax-requests .sf-ajax-request-url a:hover { text-decoration: underline;}.sf-ajax-request-duration { text-align: right;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-ajax-requests .sf-toolbar-status { font-size: 11px; padding: 1px 3px;}.sf-ajax-request-loading { animation: sf-blink .5s ease-in-out infinite;}@keyframes sf-blink { 0% { background: var(--sf-toolbar-gray-800); } 50% { background: var(--sf-toolbar-gray-700); } 100% { background: var(--sf-toolbar-gray-800); }}.sf-toolbar-block.sf-toolbar-block-dump .sf-toolbar-info { max-width: none; width: 100%; position: fixed; box-sizing: border-box; left: 0;}.sf-toolbar-block-dump pre.sf-dump { background-color: var(--sf-toolbar-gray-800); border-color: var(--sf-toolbar-gray-500); border-radius: 0; margin: 6px 0 12px 0;}.sf-toolbar-block-dump pre.sf-dump:last-child { margin-bottom: 0;}.sf-toolbar-block-dump pre.sf-dump .sf-dump-search-wrapper { margin-bottom: 5px;}.sf-toolbar-block-dump pre.sf-dump span.sf-dump-search-count { color: #333; font-size: 12px;}.sf-toolbar-block-dump .sf-toolbar-info-piece { display: block;}.sf-toolbar-block-dump .sf-toolbar-info-piece .sf-toolbar-file-line { color: var(--sf-toolbar-gray-400); margin-left: 4px;}.sf-toolbar-block-dump .sf-toolbar-info img { display: none;}.sf-toolbar-block-serializer .detailed-metrics { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 15px; margin-top: 15px;}/* Responsive Design */.sf-toolbar-icon .sf-toolbar-label,.sf-toolbar-icon .sf-toolbar-value { display: none;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-label,.sf-cli .sf-toolbar-icon .sf-toolbar-label { display: inline-block;}/* Legacy Design - these styles are maintained to make old panels look a bit better on the new toolbar */.sf-toolbar-block .sf-toolbar-info-piece-additional-detail { color: var(--sf-toolbar-gray-400); font-size: 12px;}.sf-toolbar-status-green .sf-toolbar-info-piece-additional-detail,.sf-toolbar-status-yellow .sf-toolbar-info-piece-additional-detail,.sf-toolbar-status-red .sf-toolbar-info-piece-additional-detail { color: var(--sf-toolbar-white);}@media (min-width: 768px) { .sf-toolbar-icon .sf-toolbar-label, .sf-toolbar-icon .sf-toolbar-value { display: inline; } .sf-toolbar-block-time .sf-toolbar-icon svg, .sf-toolbar-block-memory .sf-toolbar-icon svg { display: none; } .sf-toolbar-block-time .sf-toolbar-icon svg + span, .sf-toolbar-block-memory .sf-toolbar-icon svg + span { margin-left: 0; } .sf-toolbar-block .sf-toolbar-icon { padding: 0 10px; } .sf-toolbar-block-time .sf-toolbar-icon { padding-right: 5px; } .sf-toolbar-block-memory .sf-toolbar-icon { padding-left: 5px; } .sf-toolbar-block-request .sf-toolbar-icon { display: flex; align-items: center; padding-left: 0; padding-right: 0; } .sf-toolbar-block-request .sf-toolbar-label { margin-left: 4px; margin-right: 1px; } .sf-toolbar-block-request .sf-toolbar-status + .sf-toolbar-request-icon { display: inline-flex; margin-left: 5px; } .sf-toolbar-block-request .sf-toolbar-icon .sf-toolbar-request-icon + .sf-toolbar-label { margin-left: 0; } .sf-toolbar-block-request .sf-toolbar-label + .sf-toolbar-value { margin-right: 5px; } .sf-toolbar-block-request:hover .sf-toolbar-info { max-width: none; } .sf-toolbar-block .sf-toolbar-info-piece b { font-size: 12px; } .sf-toolbar-block .sf-toolbar-info-piece span { font-size: 13px; } .sf-toolbar-block-right { float: right; margin-left: 0; margin-right: 0; } .sf-toolbarreset .sf-toolbar-block.sf-toolbar-block-right:not(.sf-toolbar-block-sf-cli) .sf-toolbar-info { border-bottom-left-radius: 4px; border-bottom-right-radius: 0; }}@media (min-width: 1024px) { .sf-toolbar-block .sf-toolbar-info-piece-additional, .sf-toolbar-block .sf-toolbar-info-piece-additional-detail { display: inline; } .sf-toolbar-block .sf-toolbar-info-piece-additional:empty, .sf-toolbar-block .sf-toolbar-info-piece-additional-detail:empty { display: none; }}/***** Error Toolbar *****/.sf-error-toolbar .sf-toolbarreset { background: var(--sf-toolbar-gray-800); color: var(--sf-toolbar-gray-100); font: 13px/36px var(--sf-toolbar-font-family-system); height: 36px; padding: 0 15px; text-align: left;}.sf-error-toolbar .sf-toolbarreset svg { height: auto;}.sf-error-toolbar .sf-toolbarreset a { color: #99cdd8; margin-left: 5px; text-decoration: underline;}.sf-error-toolbar .sf-toolbarreset a:hover { text-decoration: none;}.sf-error-toolbar .sf-toolbarreset .sf-toolbar-icon { float: left; padding: 5px 0; margin-right: 10px;}.sf-full-stack { left: 0px; font-size: 12px;}/***** Media query print: Do not print the Toolbar. *****/@media print { .sf-toolbar { display: none !important; }} </style> <script nonce="1a3ee8a1b54612e2270e95796d725d76">/*<![CDATA[*/ if (typeof Sfjs === 'undefined' || typeof Sfjs.loadToolbar === '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 noop = function() {}; var profilerStorageKey = 'symfony/profiler/'; 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); }; } var request = function(url, onSuccess, onError, payload, options, tries) { var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); options = options || {}; options.retry = options.retry || false; tries = tries || 1; /* this delays for 125, 375, 625, 875, and 1000, ... */ var delay = tries < 5 ? (tries - 0.5) * 250 : 1000; xhr.open(options.method || 'GET', url, true); xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); xhr.onreadystatechange = function(state) { if (4 !== xhr.readyState) { return null; } if (xhr.status == 404 && options.retry && !options.stop) { setTimeout(function() { if (options.stop) { return; } request(url, onSuccess, onError, payload, options, tries + 1); }, delay); return null; } if (200 === xhr.status) { (onSuccess || noop)(xhr); } else { (onError || noop)(xhr); } }; if (options.onSend) { options.onSend(tries); } xhr.send(payload || ''); }; var getPreference = function(name) { if (!window.localStorage) { return null; } return localStorage.getItem(profilerStorageKey + name); }; var setPreference = function(name, value) { if (!window.localStorage) { return null; } localStorage.setItem(profilerStorageKey + name, value); }; var requestStack = []; var extractHeaders = function(xhr, stackElement) { /* Here we avoid to call xhr.getResponseHeader in order to */ /* prevent polluting the console with CORS security errors */ var allHeaders = xhr.getAllResponseHeaders(); var ret; if (ret = allHeaders.match(/^x-debug-token:\s+(.*)$/im)) { stackElement.profile = ret[1]; } if (ret = allHeaders.match(/^x-debug-token-link:\s+(.*)$/im)) { stackElement.profilerUrl = ret[1]; } if (ret = allHeaders.match(/^Symfony-Debug-Toolbar-Replace:\s+(.*)$/im)) { stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === ret[1]; } }; var successStreak = 4; var pendingRequests = 0; var renderAjaxRequests = function() { var requestCounter = document.querySelector('.sf-toolbar-ajax-request-counter'); if (!requestCounter) { return; } requestCounter.textContent = requestStack.length; var infoSpan = document.querySelector(".sf-toolbar-ajax-info"); if (infoSpan) { infoSpan.textContent = requestStack.length + ' AJAX request' + (requestStack.length !== 1 ? 's' : ''); } var ajaxToolbarPanel = document.querySelector('.sf-toolbar-block-ajax'); if (requestStack.length) { ajaxToolbarPanel.style.display = 'block'; } else { ajaxToolbarPanel.style.display = 'none'; } if (pendingRequests > 0) { addClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else if (successStreak < 4) { addClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else { removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); removeClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); } }; var startAjaxRequest = function(index) { var tbody = document.querySelector('.sf-toolbar-ajax-request-list'); if (!tbody) { return; } var nbOfAjaxRequest = tbody.rows.length; if (nbOfAjaxRequest >= 100) { tbody.deleteRow(0); } var request = requestStack[index]; pendingRequests++; var row = document.createElement('tr'); request.DOMNode = row; var requestNumberCell = document.createElement('td'); requestNumberCell.textContent = index + 1; row.appendChild(requestNumberCell); var profilerCell = document.createElement('td'); profilerCell.textContent = 'n/a'; row.appendChild(profilerCell); var methodCell = document.createElement('td'); methodCell.textContent = request.method; row.appendChild(methodCell); var typeCell = document.createElement('td'); typeCell.textContent = request.type; row.appendChild(typeCell); var statusCodeCell = document.createElement('td'); var statusCode = document.createElement('span'); statusCode.textContent = 'n/a'; statusCodeCell.appendChild(statusCode); row.appendChild(statusCodeCell); var pathCell = document.createElement('td'); pathCell.className = 'sf-ajax-request-url'; if ('GET' === request.method) { var pathLink = document.createElement('a'); pathLink.setAttribute('href', request.url); pathLink.textContent = request.url; pathCell.appendChild(pathLink); } else { pathCell.textContent = request.url; } pathCell.setAttribute('title', request.url); row.appendChild(pathCell); var durationCell = document.createElement('td'); durationCell.className = 'sf-ajax-request-duration'; durationCell.textContent = 'n/a'; row.appendChild(durationCell); request.liveDurationHandle = setInterval(function() { durationCell.textContent = (new Date() - request.start) + ' ms'; }, 100); row.className = 'sf-ajax-request sf-ajax-request-loading'; tbody.insertBefore(row, null); var toolbarInfo = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); toolbarInfo.scrollTop = toolbarInfo.scrollHeight; renderAjaxRequests(); }; var finishAjaxRequest = function(index) { var request = requestStack[index]; clearInterval(request.liveDurationHandle); if (!request.DOMNode) { return; } if (request.toolbarReplace && !request.toolbarReplaceFinished && request.profile) { /* Flag as complete because finishAjaxRequest can be called multiple times. */ request.toolbarReplaceFinished = true; /* Search up through the DOM to find the toolbar's container ID. */ for (var elem = request.DOMNode; elem && elem !== document; elem = elem.parentNode) { if (elem.id.match(/^sfwdt/)) { Sfjs.loadToolbar(elem.id.replace(/^sfwdt/, ''), request.profile); break; } } } if (pendingRequests > 0) { pendingRequests--; } var row = request.DOMNode; /* Unpack the children from the row */ var profilerCell = row.children[1]; var methodCell = row.children[2]; var statusCodeCell = row.children[4]; var statusCodeElem = statusCodeCell.children[0]; var durationCell = row.children[6]; if (request.error) { row.className = 'sf-ajax-request sf-ajax-request-error'; methodCell.className = 'sf-ajax-request-error'; successStreak = 0; } else { row.className = 'sf-ajax-request sf-ajax-request-ok'; successStreak++; } if (request.statusCode) { if (request.statusCode < 300) { statusCodeElem.setAttribute('class', 'sf-toolbar-status'); } else if (request.statusCode < 400) { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-yellow'); } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } statusCodeElem.textContent = request.statusCode; } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } if (request.duration) { durationCell.textContent = request.duration + ' ms'; } if (request.profilerUrl) { profilerCell.textContent = ''; var profilerLink = document.createElement('a'); profilerLink.setAttribute('href', request.profilerUrl); profilerLink.textContent = request.profile; profilerCell.appendChild(profilerLink); } renderAjaxRequests(); }; if (window.fetch && window.fetch.polyfill === undefined) { var oldFetch = window.fetch; window.fetch = function () { var promise = oldFetch.apply(this, arguments); var url = arguments[0]; var params = arguments[1]; var paramType = Object.prototype.toString.call(arguments[0]); if (paramType === '[object Request]') { url = arguments[0].url; params = { method: arguments[0].method, credentials: arguments[0].credentials, headers: arguments[0].headers, mode: arguments[0].mode, redirect: arguments[0].redirect }; } else { url = String(url); } if (!url.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var method = 'GET'; if (params && params.method !== undefined) { method = params.method; } var stackElement = { error: false, url: url, method: method, type: 'fetch', start: new Date() }; var idx = requestStack.push(stackElement) - 1; promise.then(function (r) { stackElement.duration = new Date() - stackElement.start; stackElement.error = r.status < 200 || r.status >= 400; stackElement.statusCode = r.status; stackElement.profile = r.headers.get('x-debug-token'); stackElement.profilerUrl = r.headers.get('x-debug-token-link'); stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === r.headers.get('Symfony-Debug-Toolbar-Replace'); finishAjaxRequest(idx); }, function (e){ stackElement.error = true; finishAjaxRequest(idx); }); startAjaxRequest(idx); } return promise; }; } if (window.XMLHttpRequest && XMLHttpRequest.prototype.addEventListener) { var proxied = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, async, user, pass) { var self = this; /* prevent logging AJAX calls to static and inline files, like templates */ var path = url; if (url.slice(0, 1) === '/') { if (0 === url.indexOf('')) { path = url.slice(0); } } else if (0 === url.indexOf('https\u003A\/\/dev\u002D4.sksp.site')) { path = url.slice(23); } if (!path.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var stackElement = { error: false, url: url, method: method, type: 'xhr', start: new Date() }; var idx = requestStack.push(stackElement) - 1; this.addEventListener('readystatechange', function() { if (self.readyState == 4) { stackElement.duration = new Date() - stackElement.start; stackElement.error = self.status < 200 || self.status >= 400; stackElement.statusCode = self.status; extractHeaders(self, stackElement); finishAjaxRequest(idx); } }, false); startAjaxRequest(idx); } proxied.apply(this, Array.prototype.slice.call(arguments)); }; } return { hasClass: hasClass, removeClass: removeClass, addClass: addClass, toggleClass: toggleClass, getPreference: getPreference, setPreference: setPreference, addEventListener: addEventListener, request: request, renderAjaxRequests: renderAjaxRequests, getSfwdt: function(token) { return document.getElementById('sfwdt' + token); }, load: function(selector, url, onSuccess, onError, options) { var el = document.getElementById(selector); if (el && el.getAttribute('data-sfurl') !== url) { request( url, function(xhr) { el.innerHTML = xhr.responseText; el.setAttribute('data-sfurl', url); removeClass(el, 'loading'); var pending = pendingRequests; for (var i = 0; i < requestStack.length; i++) { startAjaxRequest(i); if (requestStack[i].duration || requestStack[i].error) { finishAjaxRequest(i); } } /* Revert the pending state in case there was a start called without a finish above. */ pendingRequests = pending; (onSuccess || noop)(xhr, el); }, function(xhr) { (onError || noop)(xhr, el); }, '', options ); } return this; }, showToolbar: function(token) { var sfwdt = this.getSfwdt(token); removeClass(sfwdt.parentNode, 'sf-display-none'); if (getPreference('toolbar/displayState') == 'none') { document.getElementById('sfToolbarMainContent-' + token).style.display = 'none'; document.getElementById('sfToolbarClearer-' + token).style.display = 'none'; document.getElementById('sfMiniToolbar-' + token).style.display = 'block'; } else { document.getElementById('sfToolbarMainContent-' + token).style.display = 'block'; document.getElementById('sfToolbarClearer-' + token).style.display = 'block'; document.getElementById('sfMiniToolbar-' + token).style.display = 'none'; } }, hideToolbar: function(token) { var sfwdt = this.getSfwdt(token); addClass(sfwdt.parentNode, 'sf-display-none'); }, initToolbar: function(token) { this.showToolbar(token); var hideButton = document.getElementById('sfToolbarHideButton-' + token); var hideButtonSvg = hideButton.querySelector('svg'); hideButtonSvg.setAttribute('aria-hidden', 'true'); hideButtonSvg.setAttribute('focusable', 'false'); addEventListener(hideButton, 'click', function (event) { event.preventDefault(); var p = this.parentNode; p.style.display = 'none'; (p.previousElementSibling || p.previousSibling).style.display = 'none'; document.getElementById('sfMiniToolbar-' + token).style.display = 'block'; setPreference('toolbar/displayState', 'none'); }); var showButton = document.getElementById('sfToolbarMiniToggler-' + token); var showButtonSvg = showButton.querySelector('svg'); showButtonSvg.setAttribute('aria-hidden', 'true'); showButtonSvg.setAttribute('focusable', 'false'); addEventListener(showButton, 'click', function (event) { event.preventDefault(); var elem = this.parentNode; if (elem.style.display == 'none') { document.getElementById('sfToolbarMainContent-' + token).style.display = 'none'; document.getElementById('sfToolbarClearer-' + token).style.display = 'none'; elem.style.display = 'block'; } else { document.getElementById('sfToolbarMainContent-' + token).style.display = 'block'; document.getElementById('sfToolbarClearer-' + token).style.display = 'block'; elem.style.display = 'none' } setPreference('toolbar/displayState', 'block'); }); }, loadToolbar: function(token, newToken) { var that = this; var triesCounter = document.getElementById('sfLoadCounter-' + token); var options = { retry: true, onSend: function (count) { if (count === 3) { that.initToolbar(token); } if (triesCounter) { triesCounter.textContent = count; } }, }; var cancelButton = document.getElementById('sfLoadCancel-' + token); if (cancelButton) { addEventListener(cancelButton, 'click', function (event) { event.preventDefault(); options.stop = true; that.hideToolbar(token); }); } newToken = (newToken || token); this.load( 'sfwdt' + token, 'https\u003A\/\/dev\u002D4.sksp.site\/_wdt\/xxxxxx'.replace(/xxxxxx/, newToken), function(xhr, el) { var toolbarContent = document.getElementById('sfToolbarMainContent-' + newToken); /* Do nothing in the edge case where the toolbar has already been replaced with a new one */ if (!toolbarContent) { return; } /* Replace the ID, it has to match the new token */ toolbarContent.parentElement.id = 'sfwdt' + newToken; /* Evaluate in global scope scripts embedded inside the toolbar */ var i, scripts = [].slice.call(el.querySelectorAll('script')); for (i = 0; i < scripts.length; ++i) { if (scripts[i].firstChild) { eval.call({}, scripts[i].firstChild.nodeValue); } } el.style.display = -1 !== xhr.responseText.indexOf('sf-toolbarreset') ? 'block' : 'none'; if (el.style.display == 'none') { return; } that.initToolbar(newToken); /* Handle toolbar-info position */ var toolbarBlocks = [].slice.call(el.querySelectorAll('.sf-toolbar-block')); for (i = 0; i < toolbarBlocks.length; ++i) { toolbarBlocks[i].onmouseover = function () { var toolbarInfo = this.querySelectorAll('.sf-toolbar-info')[0]; var pageWidth = document.body.clientWidth; var elementWidth = toolbarInfo.offsetWidth; var leftValue = (elementWidth + this.offsetLeft) - pageWidth; var rightValue = (elementWidth + (pageWidth - this.offsetLeft)) - pageWidth; /* Reset right and left value, useful on window resize */ toolbarInfo.style.right = ''; toolbarInfo.style.left = ''; if (elementWidth > pageWidth) { toolbarInfo.style.left = 0; } else if (leftValue > 0 && rightValue > 0) { toolbarInfo.style.right = (rightValue * -1) + 'px'; } else if (leftValue < 0) { toolbarInfo.style.left = 0; } else { toolbarInfo.style.right = '0px'; } }; } renderAjaxRequests(); addEventListener(document.querySelector('.sf-toolbar-ajax-clear'), 'click', function() { requestStack = []; renderAjaxRequests(); successStreak = 4; document.querySelector('.sf-toolbar-ajax-request-list').innerHTML = ''; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax'), 'mouseenter', function (event) { var elem = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); elem.scrollTop = elem.scrollHeight; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax > .sf-toolbar-icon'), 'click', function (event) { event.preventDefault(); toggleClass(this.parentNode, 'hover'); }); var dumpInfo = document.querySelector('.sf-toolbar-block-dump .sf-toolbar-info'); if (null !== dumpInfo) { addEventListener(dumpInfo, 'sfbeforedumpcollapse', function () { dumpInfo.style.minHeight = dumpInfo.getBoundingClientRect().height+'px'; }); addEventListener(dumpInfo, 'mouseleave', function () { dumpInfo.style.minHeight = ''; }); } }, function(xhr) { if (xhr.status !== 0 && !options.stop) { var sfwdt = that.getSfwdt(token); sfwdt.innerHTML = '\ <div class="sf-toolbarreset notranslate">\ <div class="sf-toolbar-icon"><svg width="26" height="28" xmlns="http://www.w3.org/2000/svg" version="1.1" x="0px" y="0px" viewBox="0 0 26 28" enable-background="new 0 0 26 28" xml:space="preserve"><path fill="#FFFFFF" d="M13 0C5.8 0 0 5.8 0 13c0 7.2 5.8 13 13 13c7.2 0 13-5.8 13-13C26 5.8 20.2 0 13 0z M20 7.5 c-0.6 0-1-0.3-1-0.9c0-0.2 0-0.4 0.2-0.6c0.1-0.3 0.2-0.3 0.2-0.4c0-0.3-0.5-0.4-0.7-0.4c-2 0.1-2.5 2.7-2.9 4.8l-0.2 1.1 c1.1 0.2 1.9 0 2.4-0.3c0.6-0.4-0.2-0.8-0.1-1.3C18 9.2 18.4 9 18.7 8.9c0.5 0 0.8 0.5 0.8 1c0 0.8-1.1 2-3.3 1.9 c-0.3 0-0.5 0-0.7-0.1L15 14.1c-0.4 1.7-0.9 4.1-2.6 6.2c-1.5 1.8-3.1 2.1-3.8 2.1c-1.3 0-2.1-0.6-2.2-1.6c0-0.9 0.8-1.4 1.3-1.4 c0.7 0 1.2 0.5 1.2 1.1c0 0.5-0.2 0.6-0.4 0.7c-0.1 0.1-0.3 0.2-0.3 0.4c0 0.1 0.1 0.3 0.4 0.3c0.5 0 0.9-0.3 1.2-0.5 c1.3-1 1.7-2.9 2.4-6.2l0.1-0.8c0.2-1.1 0.5-2.3 0.8-3.5c-0.9-0.7-1.4-1.5-2.6-1.8c-0.8-0.2-1.3 0-1.7 0.4C8.4 10 8.6 10.7 9 11.1 l0.7 0.7c0.8 0.9 1.3 1.7 1.1 2.7c-0.3 1.6-2.1 2.8-4.3 2.1c-1.9-0.6-2.2-1.9-2-2.7c0.2-0.6 0.7-0.8 1.2-0.6 c0.5 0.2 0.7 0.8 0.6 1.3c0 0.1 0 0.1-0.1 0.3C6 15 5.9 15.2 5.9 15.3c-0.1 0.4 0.4 0.7 0.8 0.8c0.8 0.3 1.7-0.2 1.9-0.9 c0.2-0.6-0.2-1.1-0.4-1.2l-0.8-0.9c-0.4-0.4-1.2-1.5-0.8-2.8c0.2-0.5 0.5-1 0.9-1.4c1-0.7 2-0.8 3-0.6c1.3 0.4 1.9 1.2 2.8 1.9 c0.5-1.3 1.1-2.6 2-3.8c0.9-1 2-1.7 3.3-1.8C20 4.8 21 5.4 21 6.3C21 6.7 20.8 7.5 20 7.5z"/></svg></div>\ An error occurred while loading the web debug toolbar. <a href="https\u003A\/\/dev\u002D4.sksp.site\/_profiler\/' + newToken + '">Open the web profiler.</a>\ </div>\ '; sfwdt.parentElement.setAttribute('class', 'sf-toolbar sf-error-toolbar'); } }, options ); return this; }, toggle: function(selector, elOn, elOff) { var tmp = elOn.style.display, el = document.getElementById(selector); elOn.style.display = elOff.style.display; elOff.style.display = tmp; if (el) { el.style.display = 'none' === tmp ? 'none' : 'block'; } return this; }, }; })(); } Sfjs.loadToolbar('205266'); /*]]>*/</script></div>\n </body>\n </html> """ #version: "1.1" #statusCode: 200 #statusText: "OK" #charset: "UTF-8" -sentHeaders: ? array } } |
| Envelope stamps when dispatching | No items |
| Envelope stamps after dispatch |
Symfony\Component\Messenger\Stamp\BusNameStamp {#5647 -busName: "command.bus" } Symfony\Component\Messenger\Stamp\HandledStamp {#6497 -result: null -handlerName: "App\Core\Application\Command\User\SaveUserUtmCookies\SaveUserUtmCookiesCommandHandler::__invoke" } |
"App\Core\Application\Command\External\Tilda\GetPage\GetPageCommand" |
|
|---|---|
| Caller | In Handler.php line |
| Bus | command.bus |
| Message | App\Core\Application\Command\External\Tilda\GetPage\GetPageCommand {#6498 -type: "url" -pageId: null -url: "asset/admin/bucket-ico-fonts/bucket-ico-font.svg" -removeFaviconIcon: false -faveIcon: null } |
| Envelope stamps when dispatching | No items |
| Envelope stamps after dispatch |
Symfony\Component\Messenger\Stamp\BusNameStamp {#6493 -busName: "command.bus" } Symfony\Component\Messenger\Stamp\HandledStamp {#6646 -result: """ <!DOCTYPE html>\n <html lang="ru">\n <head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <title>Главная — Skillspace Local Dev</title>\n <meta name="robots" content="noindex,nofollow">\n </head>\n <body style="margin:0;font-family:Inter,Arial,sans-serif;line-height:1.55;background:linear-gradient(180deg,#f4f7fb 0%,#eef2ff 100%);color:#0f172a;">\n <!-- skillspace-dev-tilda-fallback -->\n <main style="max-width:1080px;margin:0 auto;padding:40px 20px 56px;">\n <section style="background:#ffffff;border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:32px;box-shadow:0 20px 60px rgba(15,23,42,.08);">\n <div style="display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:13px;font-weight:700;letter-spacing:.02em;">DEV ONLY · Tilda fallback</div>\n <h1 style="margin:16px 0 10px;font-size:36px;line-height:1.15;">Главная</h1>\n <p style="margin:0 0 20px;font-size:17px;color:#334155;max-width:760px;">Tilda API refresh для локального запуска отключён, поэтому вместо внешней страницы показывается аккуратная dev-заглушка. Это нормально только для <strong>dev</strong>. Пароль у dev-аккаунтов совпадает с логином/email.</p>\n <div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px;">\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Dev школа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-school</div>\n <a href="https://dev-school.dev-4.sksp.site" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-school.dev-4.sksp.site</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Владелец школы:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-owner@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Платформа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">Admin</div>\n <a href="https://dev-4.sksp.site/admin-old/login" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-4.sksp.site/admin-old/login</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Админ:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">admin@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Student smoke test</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-student@skillspace.local</div>\n <div style="font-size:14px;color:#475569;">Студент:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-student@skillspace.local</div>\n <div style="margin-top:8px;font-size:14px;color:#475569;">Курс: Dev Demo Course</div>\n </article>\n </div>\n <div style="display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;">\n <a href="https://dev-4.sksp.site" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#111827;color:#fff;text-decoration:none;font-weight:700;cursor:pointer;">Открыть платформу</a>\n <a href="https://dev-4.sksp.site/_profiler/" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#fff;color:#111827;text-decoration:none;font-weight:700;border:1px solid #cbd5e1;cursor:pointer;">Открыть profiler</a>\n </div>\n </section>\n </main>\n </body>\n </html> """ -handlerName: "App\Core\Application\Command\External\Tilda\GetPage\GetPageCommandHandler::__invoke" } |
command.bus2
Ordered list of messages dispatched on the command.bus bus
"App\Core\Application\Command\User\SaveUserUtmCookies\SaveUserUtmCookiesCommand" |
|
|---|---|
| Caller | In Handler.php line |
| Message | App\Core\Application\Command\User\SaveUserUtmCookies\SaveUserUtmCookiesCommand {#5615 -request: Symfony\Component\HttpFoundation\Request {#10 +attributes: Symfony\Component\HttpFoundation\ParameterBag {#13 #parameters: [ "_stopwatch_token" => "f01980" "_route" => "ddd_site.index" "uri" => "asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "domain" => "dev-4.sksp.site" "_controller" => [ "App\Core\Ports\Http\Tilda\TildaPageAction" "__invoke" ] "_route_params" => [ "uri" => "asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "domain" => "dev-4.sksp.site" ] "_firewall_context" => "security.firewall.map.context.user" ] } +request: Symfony\Component\HttpFoundation\InputBag {#11 #parameters: [] } +query: Symfony\Component\HttpFoundation\InputBag {#12 #parameters: [] } +server: Symfony\Component\HttpFoundation\ServerBag {#16 #parameters: [ "DOCUMENT_ROOT" => "/app/public" "REMOTE_ADDR" => "172.27.0.1" "REMOTE_PORT" => "47794" "SERVER_SOFTWARE" => "PHP 8.2.31 Development Server" "SERVER_PROTOCOL" => "HTTP/1.1" "SERVER_NAME" => "0.0.0.0" "SERVER_PORT" => "443" "REQUEST_URI" => "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "REQUEST_METHOD" => "GET" "SCRIPT_NAME" => "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "SCRIPT_FILENAME" => "public/index.php" "PHP_SELF" => "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" "HTTP_HOST" => "dev-4.sksp.site" "HTTP_X_REAL_IP" => "74.7.242.56" "HTTP_X_FORWARDED_FOR" => "74.7.242.56" "HTTP_X_FORWARDED_HOST" => "dev-4.sksp.site" "HTTP_X_FORWARDED_PORT" => "443" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CONNECTION" => "close" "HTTP_X_OPENAI_HOST_HASH" => "421566074" "HTTP_FROM" => "gptbot(at)openai.com" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.4; +https://openai.com/gptbot)" "HTTP_REFERER" => "https://dev-4.sksp.site/asset/admin/css/bucket-ico-fonts.css" "HTTP_ACCEPT" => "*/*" "HTTP_ACCEPT_ENCODING" => "gzip, br, deflate" "REQUEST_TIME_FLOAT" => 1783363201.8268 "REQUEST_TIME" => 1783363201 "argv" => [] "argc" => 0 "LOCAL_USE_PROXY" => "0" "LOCAL_PORTS_OFFSET" => "2709" "LOCAL_APP_HTTP_BIND_PORT" => "10790" "SYMFONY_DOTENV_VARS" => "LOCAL_USE_PROXY,LOCAL_PORTS_OFFSET,LOCAL_APP_HTTP_BIND_PORT" "TINKOFF_ACQUIRING_TAX" => "none" "OPENPANEL_CLIENT_SECRET" => "local" "AMO_REDIRECT" => "https://lvh.me/amo/callback" "RABBITMQ_PASSWORD" => "guest" "STORAGE_SELECTEL_S3_PUBLIC_ENDPOINT" => "http://s3.dev-4.sksp.site/" "DATABASE_URL" => "mysql://skillspace:skillspace@mysql:3306/skillspace?serverVersion=8.0.37&charset=utf8mb4" "KAFKA_HOST" => "kafka" "GQL_COMMERCE_BILLING_URL" => "http://commerce-billing:3110/graphql" "APP_TRUSTED_PROXIES" => "127.0.0.1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16" "SCHOOL_REGISTER_RATE_LIMIT_REQUIRE_REDIS" => "0" "GATEWAY_INTERNAL_AUTH_SECRET" => "local-gateway-internal-secret" "HOSTNAME" => "4f8cf7037cec" "PHP_VERSION" => "8.2.31" "REDIS_STANDALONE_DSN" => "redis://redis:6379" "STORAGE_BACKUP_SELECTEL_S3_REGION" => "ru-1" "PHP_INI_DIR" => "/usr/local/etc/php" "GPG_KEYS" => "39B641343D8C104B2B146DC3F9C39DC0B9698544 E60913E4DF209907D8E30D96659A97C9CF2A795A 1198C0117593497A5EC5C199286AF1F9897469DC" "SCHOOL_REGISTER_RATE_LIMIT_ENFORCE" => "0" "TINKOFF_STUDENT_ACQUIRING_TERMINAL_KEY" => "local" "SCHOOL_REGISTER_DISABLE_PHONES" => "1" "BACKUP_MONGO_NAME" => "local" "PHP_LDFLAGS" => "-Wl,-O1 -pie" "YANDEX_CAPTCHA_KEY" => "local" "REDIS_MASTER_NAME" => "" "SCHOOL_REGISTER_LOGGER" => "0" "PWD" => "/app" "BOT_DETECTION_ENCRYPTION_KEY" => "12345678901234567890123456789012" "MANDARIN_WEBHOOK_IPS" => "127.0.0.1" "AMO_SECRET" => "local" "ROISTAT_KEY" => "local" "OPENPANEL_API_URL" => "https://lvh.me/local/openpanel" "OPENPANEL_CLIENT_ID" => "local" "STORAGE_SELECTEL_S3_REGION" => "us-east-1" "YANDEX_KASS_SHOP_ID" => "local" "SMSRU_API_ID" => "local" "RABBITMQ_URL" => "amqp://guest:guest@rabbitmq:5672/%2f" "LOCAL_DEV_NAME" => "dev-4-c206f0" "FRONTEND_LOCALHOST" => "" "KINESCOPE_PROJECT_OUR" => "local" "BACKUP_FTP_DB_LIMIT_COUNT" => "10" "TINKOFF_STUDENT_ACQUIRING_SECRET_KEY" => "local" "MESSENGER_ASYNC_TRANSPORT_DSN" => "doctrine://default?queue_name=monolith-messenger-async-db" "RABBITMQ_PORT" => "5672" "ALBATO_CREATE_SCHOOL_BASE" => "https://lvh.me/local/albato/base" "HOME" => "/root" "VERIFYMAIL_API_KEY" => "local" "SENTRY_DSN" => "" "REDIS_CONNECTION_PASSWORD" => "" "SCHOOL_APPROVEMENT_DISABLED" => "1" "STORAGE_SELECTEL_S3_AUTH_SECRET" => "minioadmin123" "BACKUP_FTP_DB_PATH" => "/tmp" "AMO_ENABLE" => "0" "VAR_DUMPER_SERVER" => "tcp://0.0.0.0:9912" "AMO_DOMAIN" => "local" "LOCAL_ANALYTICS_TIMEOUT" => "1" "APP_ENV" => "dev" "APP_DEBUG" => true "STORAGE_BACKUP_SELECTEL_S3_AUTH_KEY" => "local" "OPENAPI_REQUEST_LOGGER" => "0" "PHP_SHA256" => "95eae411d594fe6f6e5678b76645dc13ae47d3c0a5325c1d969b58dea56ee45a" "STORAGE_BACKUP_SELECTEL_S3_VERSION" => "latest" "HTTPS_BIND_PORT" => "3152" "BACKUP_MONGO_PATH" => "/tmp" "RABBITMQ_USER" => "guest" "MAIL_DISABLE_SEND" => "0" "LOCAL_WEBHOOKS_TIMEOUT" => "1" "COOKIE_HTTP_HOST" => ".lvh.me" "PHPIZE_DEPS" => "autoconf \t\tdpkg-dev \t\tfile \t\tg++ \t\tgcc \t\tlibc-dev \t\tmake \t\tpkg-config \t\tre2c" "LOCAL_DEV_PROTOCOL" => "https" "BACKUP_FTP_USER" => "local" "BACKUP_FTP_PASS" => "local" "KINESCOPE_ACCESS_TOKEN" => "local" "PHP_URL" => "https://www.php.net/distributions/php-8.2.31.tar.xz" "LOCAL_ANALYTICS_URL" => "http://mailpit:8025/" "FRONT_CDN_ENABLE" => "Y" "KAFKA_USER" => "" "OPENID_MOSRU_API_GET_AUTHORIZATION_URL" => "https://lvh.me/local/openid/authorize" "STORAGE_BACKUP_SELECTEL_S3_BUCKET" => "local" "RABBITMQ_HOST" => "rabbitmq" "STORAGE_SELECTEL_S3_AUTH_KEY" => "minioadmin" "LOCAL_DEV_PROJECT_NAME" => "skillspace-dev-4-c206f0" "OPENID_MOSRU_API_PASSWORD" => "local" "STORAGE_SELECTEL_S3_ENDPOINT" => "http://minio:9000/" "ALBATO_CREATE_SCHOOL_FULL" => "https://lvh.me/local/albato/full" "SHLVL" => "0" "COMPOSER_ALLOW_SUPERUSER" => "1" "LOCK_DSN" => "redis://redis:6379" "EDITOR_INTERNAL_HTTP_URL" => "http://editor-service:3033/" "RED_SMS_API_KEY" => "local" "TINKOFF_STUDENT_ACQUIRING_TAX" => "none" "KINESCOPE_PROJECT_SCHOOLS" => "local" "FRONT_CDN_URL" => "https://cdna.skillspace.ru" "STORAGE_SELECTEL_S3_BUCKET" => "skillspace" "PHP_CFLAGS" => "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" "TINKOFF_ACQUIRING_SECRET_KEY" => "local" "AMO_INTEGRATION_ID" => "local" "REDIS_CONNECTION_MODE" => "standalone" "COMPOSER_CACHE_DIR" => "/tmp/composer-cache" "CONSUMER_PROCESS_PREFIX" => "skillspace-dev-4-c206f0" "IDENTITY_ACCESS_BASE_URL" => "http://identity-access:3100/" "OPENID_MOSRU_API_CLIENT_ID" => "local" "MESSENGER_TRANSPORT_RABBIT_DSN" => "amqp://guest:guest@rabbitmq:5672/%2f" "IDENTITY_ACCESS_JWT_SECRET" => "local-identity-access-jwt-secret-please-change" "MAIL_ENABLE_SEND_EMAIL" => "1" "YANDEX_KASS_SECRET" => "local" "LOCAL_WEBHOOKS_URL" => "http://mailpit:8025/" "STORAGE_BACKUP_SELECTEL_S3_AUTH_SECRET" => "local" "APP_PROTOCOL" => "https" "TINKOFF_ACQUIRING_TERMINAL_KEY" => "local" "LOCAL_DEV_HOST" => "dev-4.sksp.site" "KAFKA_PASSWORD" => "" "MAILER_DSN" => "smtp://mailpit:1025" "PATH" => "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" "SMTPBZ_HOST" => "mailpit" "STORAGE_SELECTEL_S3_VERSION" => "latest" "OPENAPI_ENABLED" => "1" "STORAGE_BACKUP_SELECTEL_S3_ENDPOINT" => "https://s3.selcdn.ru" "APP_HOST" => "dev-4.sksp.site" "SMTPBZ_ACCESS_TOKEN" => "local" "REDIS_SLAVES_CONNECTION" => "[]" "PHP_ASC_URL" => "https://www.php.net/distributions/php-8.2.31.tar.xz.asc" "BACKUP_FTP_HOST" => "localhost" "HTTP_BIND_PORT" => "2789" "SCHOOL_REGISTER_TEMP_MAIL_CHECK" => "0" "IDENTITY_ACCESS_INTERNAL_AUTH_SECRET" => "local-monolith-identity-internal-secret" "OPENID_MOSRU_API_REDIRECT_AUTHORIZATION_URL" => "https://lvh.me/local/openid/callback" "PHP_CPPFLAGS" => "-fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" "OLDPWD" => "/app" "SCHOOL_REGISTER_DISABLE_EMAILS" => "1" "APP_SECRET" => "local-monolith-secret" "HTTPS" => "on" "REQUEST_SCHEME" => "https" ] } +files: Symfony\Component\HttpFoundation\FileBag {#15 #parameters: [] } +cookies: Symfony\Component\HttpFoundation\InputBag {#14 #parameters: [] } +headers: Symfony\Component\HttpFoundation\HeaderBag {#17 #headers: [ "host" => [ "dev-4.sksp.site" ] "x-real-ip" => [ "74.7.242.56" ] "x-forwarded-for" => [ "74.7.242.56" ] "x-forwarded-host" => [ "dev-4.sksp.site" ] "x-forwarded-port" => [ "443" ] "x-forwarded-proto" => [ "https" ] "connection" => [ "close" ] "x-openai-host-hash" => [ "421566074" ] "from" => [ "gptbot(at)openai.com" ] "user-agent" => [ "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.4; +https://openai.com/gptbot)" ] "referer" => [ "https://dev-4.sksp.site/asset/admin/css/bucket-ico-fonts.css" ] "accept" => [ "*/*" ] "accept-encoding" => [ "gzip, br, deflate" ] "bind-port" => [ "2789" ] "x-php-ob-level" => [ "0" ] ] #cacheControl: [] } #content: "" #languages: null #charsets: null #encodings: null #acceptableContentTypes: [ "*/*" ] #pathInfo: "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" #requestUri: "/asset/admin/bucket-ico-fonts/bucket-ico-font.svg" #baseUrl: "" #basePath: "" #method: "GET" #format: null #session: Symfony\Component\HttpFoundation\Session\Session {#6906 #storage: Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage {#6907 #bags: [ "attributes" => Symfony\Component\HttpFoundation\Session\SessionBagProxy {#6910 -bag: Symfony\Component\HttpFoundation\Session\Attribute\AttributeBag {#6909 -name: "attributes" -storageKey: "_sf2_attributes" #attributes: [] } -data: &1 [] -usageIndex: &2 0 -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#6905 returnType: "void" this: Symfony\Component\HttpKernel\EventListener\SessionListener {#2131 …} } } "flashes" => Symfony\Component\HttpFoundation\Session\SessionBagProxy {#6912 -bag: Symfony\Component\HttpFoundation\Session\Flash\FlashBag {#6911 -name: "flashes" -flashes: [] -storageKey: "_symfony_flashes" } -data: &1 [] -usageIndex: &2 0 -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#6905} } ] #started: false #closed: false #saveHandler: Symfony\Component\HttpFoundation\Session\Storage\Proxy\SessionHandlerProxy {#6908 #wrapper: false #saveHandlerName: "files" #handler: Symfony\Component\HttpFoundation\Session\Storage\Handler\StrictSessionHandler {#6902 -sessionName: ? string -prefetchId: ? string -prefetchData: ? string -newSessionId: null -igbinaryEmptyData: ? string -handler: SessionHandler {#6903} -doDestroy: ? bool } } #metadataBag: Symfony\Component\HttpFoundation\Session\Storage\MetadataBag {#6904 -name: "__metadata" -storageKey: "_sf2_meta" #meta: [ "c" => 0 "u" => 0 "l" => 0 ] -lastUsed: ? int -updateThreshold: 0 -cookieLifetime: 31536000 } } -flashName: "flashes" -attributeName: "attributes" -data: &1 [] -usageIndex: &2 0 -usageReporter: Symfony\Component\HttpKernel\EventListener\SessionListener::onSessionUsage(): void {#6905} } #locale: null #defaultLocale: "ru" -preferredFormat: null -isHostValid: true -isForwardedValid: true -isSafeContentPreferred: ? bool -trustedValuesCache: [ "2\x0074.7.242.56\x00172.27.0.1\x00" => [ "74.7.242.56" ] "4\x00dev-4.sksp.site\x00\x00" => [ "dev-4.sksp.site" ] "32\x00\x00\x00" => [] "8\x00https\x00\x00" => [ "https" ] "16\x00443\x00\x00" => [ "0.0.0.0:443" ] ] -isIisRewrite: false format: "html" } -response: Symfony\Component\HttpFoundation\Response {#5617 +headers: Symfony\Component\HttpFoundation\ResponseHeaderBag {#5618 #headers: [ "cache-control" => [ "no-cache, private" ] "date" => [ "Mon, 06 Jul 2026 18:40:01 GMT" ] "content-type" => [ "text/html; charset=UTF-8" ] "x-debug-token" => [ "205266" ] "x-debug-token-link" => [ "https://dev-4.sksp.site/_profiler/205266" ] "x-robots-tag" => [ "noindex" ] ] #cacheControl: [] #computedCacheControl: [ "no-cache" => true "private" => true ] #cookies: [] #headerNames: [ "cache-control" => "Cache-Control" "date" => "Date" "content-type" => "Content-Type" "x-debug-token" => "X-Debug-Token" "x-debug-token-link" => "X-Debug-Token-Link" "x-robots-tag" => "X-Robots-Tag" ] } #content: """ <!DOCTYPE html>\n <html lang="ru">\n <head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <title>Главная — Skillspace Local Dev</title>\n <meta name="robots" content="noindex,nofollow">\n </head>\n <body style="margin:0;font-family:Inter,Arial,sans-serif;line-height:1.55;background:linear-gradient(180deg,#f4f7fb 0%,#eef2ff 100%);color:#0f172a;">\n <!-- skillspace-dev-tilda-fallback -->\n <main style="max-width:1080px;margin:0 auto;padding:40px 20px 56px;">\n <section style="background:#ffffff;border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:32px;box-shadow:0 20px 60px rgba(15,23,42,.08);">\n <div style="display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:13px;font-weight:700;letter-spacing:.02em;">DEV ONLY · Tilda fallback</div>\n <h1 style="margin:16px 0 10px;font-size:36px;line-height:1.15;">Главная</h1>\n <p style="margin:0 0 20px;font-size:17px;color:#334155;max-width:760px;">Tilda API refresh для локального запуска отключён, поэтому вместо внешней страницы показывается аккуратная dev-заглушка. Это нормально только для <strong>dev</strong>. Пароль у dev-аккаунтов совпадает с логином/email.</p>\n <div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px;">\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Dev школа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-school</div>\n <a href="https://dev-school.dev-4.sksp.site" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-school.dev-4.sksp.site</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Владелец школы:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-owner@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Платформа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">Admin</div>\n <a href="https://dev-4.sksp.site/admin-old/login" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-4.sksp.site/admin-old/login</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Админ:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">admin@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Student smoke test</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-student@skillspace.local</div>\n <div style="font-size:14px;color:#475569;">Студент:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-student@skillspace.local</div>\n <div style="margin-top:8px;font-size:14px;color:#475569;">Курс: Dev Demo Course</div>\n </article>\n </div>\n <div style="display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;">\n <a href="https://dev-4.sksp.site" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#111827;color:#fff;text-decoration:none;font-weight:700;cursor:pointer;">Открыть платформу</a>\n <a href="https://dev-4.sksp.site/_profiler/" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#fff;color:#111827;text-decoration:none;font-weight:700;border:1px solid #cbd5e1;cursor:pointer;">Открыть profiler</a>\n </div>\n </section>\n </main>\n \n <div class="sf-toolbar sf-display-none" role="region" aria-label="Symfony Web Debug Toolbar" data-frankenphp-hot-reload-preserve> <div id="sfwdt205266"> <!-- START of Symfony Web Debug Toolbar --><div id="sfMiniToolbar-205266" class="sf-minitoolbar" data-no-turbolink data-turbo="false"> <button type="button" title="Show Symfony toolbar" id="sfToolbarMiniToggler-205266" accesskey="D" aria-expanded="false" aria-controls="sfToolbarMainContent-205266"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" 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> </button></div><div id="sfToolbarClearer-205266" class="sf-toolbar-clearer"></div><div id="sfToolbarMainContent-205266" class="sf-toolbarreset notranslate clear-fix" data-no-turbolink data-turbo="false"> <div class="sf-toolbar-block sf-toolbar-block-request sf-toolbar-status-normal " > <a href="https://dev-4.sksp.site/_profiler/205266?panel=request"> <div class="sf-toolbar-icon"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="currentColor" 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> <span class="sf-toolbar-value sf-toolbar-ajax-request-counter"> Loading… </span> </div> </a> <div class="sf-toolbar-info"> <div class="sf-toolbar-info-piece"> <b>Loading the web debug toolbar…</b> </div> <div class="sf-toolbar-info-piece"> Attempt #<span id="sfLoadCounter-205266"></span> </div> <div class="sf-toolbar-info-piece"> <b> <button class="sf-cancel-button" type="button" id="sfLoadCancel-205266" title="Cancel loading">Cancel</button> </b> </div> </div></div> <button class="hide-button" type="button" id="sfToolbarHideButton-205266" title="Close Toolbar" accesskey="D" aria-expanded="true" aria-controls="sfToolbarMainContent-205266"> <svg xmlns="http://www.w3.org/2000/svg" data-icon-name="icon-tabler-x" width="24" height="24" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"> <path stroke="none" d="M0 0h24v24H0z" fill="none"></path> <line x1="18" y1="6" x2="6" y2="18"></line> <line x1="6" y1="6" x2="18" y2="18"></line></svg> </button></div><!-- END of Symfony Web Debug Toolbar --> </div> <style nonce="fa4c52e6ccdfa020bf1175211b5e489c"> .sf-toolbarreset { --sf-toolbar-font-family-system: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --sf-toolbar-font-family-monospace: "Ubuntu Mono", "JetBrains Mono", ui-monospace, "Roboto Mono", SFMono-Regular, Menlo, Monaco, Consolas,"Liberation Mono", "Courier New", monospace; --sf-toolbar-white: #fff; --sf-toolbar-black: #000; --sf-toolbar-gray-50: #fafafa; --sf-toolbar-gray-100: #f5f5f5; --sf-toolbar-gray-200: #e5e5e5; --sf-toolbar-gray-300: #d4d4d4; --sf-toolbar-gray-400: #a3a3a3; --sf-toolbar-gray-500: #737373; --sf-toolbar-gray-600: #525252; --sf-toolbar-gray-700: #404040; --sf-toolbar-gray-800: #262626; --sf-toolbar-gray-900: #171717; --sf-toolbar-red-50: #FEFBFC; --sf-toolbar-red-100: #FCE9ED; --sf-toolbar-red-200: #F5B8C5; --sf-toolbar-red-300: #EF869C; --sf-toolbar-red-400: #E85574; --sf-toolbar-red-500: #E1244B; --sf-toolbar-red-600: #B41939; --sf-toolbar-red-700: #83122A; --sf-toolbar-red-800: #510B1A; --sf-toolbar-red-900: #20040A; --sf-toolbar-yellow-50: #fef7e1; --sf-toolbar-yellow-100: #fef2cd; --sf-toolbar-yellow-200: #fde496; --sf-toolbar-yellow-300: #fcd55f; --sf-toolbar-yellow-400: #fbc728; --sf-toolbar-yellow-500: #e6af05; --sf-toolbar-yellow-600: #af8503; --sf-toolbar-yellow-700: #785b02; --sf-toolbar-yellow-800: #413101; --sf-toolbar-yellow-900: #0a0800; --sf-toolbar-green-50: #eff5f5; --sf-toolbar-green-100: #deeaea; --sf-toolbar-green-200: #bbd5d5; --sf-toolbar-green-300: #99bfbf; --sf-toolbar-green-400: #76a9a9; --sf-toolbar-green-500: #598e8e; --sf-toolbar-green-600: #436c6c; --sf-toolbar-green-700: #2e4949; --sf-toolbar-green-800: #182727; --sf-toolbar-green-900: #030404;}.sf-minitoolbar { --sf-toolbar-gray-800: #262626; background-color: var(--sf-toolbar-gray-800); border-top-left-radius: 4px; bottom: 0; box-sizing: border-box; display: none; height: 36px; padding: 6px; position: fixed; right: 0; z-index: 99999;}.sf-minitoolbar button { background-color: transparent; padding: 0; border: none;}.sf-minitoolbar svg,.sf-minitoolbar img { --sf-toolbar-gray-200: #e5e5e5; color: var(--sf-toolbar-gray-200); max-height: 24px; max-width: 24px; display: inline;}.sf-toolbar-clearer { clear: both; height: 36px;}.sf-display-none { display: none;}.sf-toolbarreset *:not(svg rect) { box-sizing: content-box; vertical-align: baseline; letter-spacing: normal; width: auto;}.sf-toolbarreset { background-color: var(--sf-toolbar-gray-800); bottom: 0; box-shadow: inset 0 1px 0 var(--sf-toolbar-black), 0 -1px 0 rgba(0, 0, 0, 0.5); color: var(--sf-toolbar-gray-200); font: 11px var(--sf-toolbar-font-family-system); left: 0; margin: 0; padding: 0 36px 0 0; position: fixed; right: 0; text-align: left; text-transform: none; z-index: 99999; direction: ltr; /* neutralize the aliasing defined by external CSS styles */ -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: auto;}.sf-toolbarreset abbr { border: dashed var(--sf-toolbar-gray-500); border-width: 0 0 1px;}.sf-toolbarreset svg,.sf-toolbarreset img { height: 20px; width: 20px; display: inline-block;}.sf-toolbarreset .sf-cancel-button { color: var(--sf-toolbar-gray-700);}.sf-toolbarreset .hide-button { background: var(--sf-toolbar-gray-800); color: var(--sf-toolbar-gray-300); display: block; position: absolute; top: 2px; right: 0; width: 36px; height: 34px; cursor: pointer; text-align: center; border: none; margin: 0; padding: 0;}.sf-toolbarreset .hide-button:hover { background: var(--sf-toolbar-gray-700);}.sf-toolbarreset .hide-button svg { max-height: 18px; margin-top: 1px;}.sf-toolbar-block { cursor: default; display: block; float: left; height: 36px; margin-right: 0; position: relative; white-space: nowrap; max-width: 15%;}.sf-toolbar-block > a,.sf-toolbar-block > a:hover { display: block; text-decoration: none; background-color: transparent; color: inherit;}.sf-toolbar-block span { display: inline-block;}.sf-toolbar-block .sf-toolbar-value { color: var(--sf-toolbar-gray-100); font-size: 13px; line-height: 36px; padding: 0;}.sf-toolbar-block .sf-toolbar-label,.sf-toolbar-block .sf-toolbar-class-separator { color: var(--sf-toolbar-gray-400); font-size: 12px; margin-left: 2px;}.sf-toolbar-block .sf-toolbar-info { border-collapse: collapse; display: table; z-index: 100000;}.sf-toolbar-block hr { border-top: 1px solid var(--sf-toolbar-gray-500); margin: 4px 0; padding-top: 4px;}.sf-toolbar-block .sf-toolbar-info-piece { /* this 'border-bottom' trick is needed because 'margin-bottom' doesn't work for table rows */ border-bottom: solid transparent 3px; display: table-row;}.sf-toolbar-block .sf-toolbar-info-piece-additional,.sf-toolbar-block .sf-toolbar-info-piece-additional-detail { display: none;}.sf-toolbar-block .sf-toolbar-info-group { margin-bottom: 4px; padding-bottom: 2px; border-bottom: 1px solid #333333;}.sf-toolbar-block .sf-toolbar-info-group:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-status { border-radius: 4px; padding: 2px 5px; margin-bottom: 0;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-status + .sf-toolbar-status { margin-left: 4px;}.sf-toolbar-block .sf-toolbar-info-piece:last-child { margin-bottom: 0;}div.sf-toolbar .sf-toolbar-block .sf-toolbar-info-piece a { color: #99CDD8; text-decoration: underline;}div.sf-toolbar .sf-toolbar-block a:hover { text-decoration: none;}.sf-toolbar-block .sf-toolbar-info-piece b { color: var(--sf-toolbar-gray-400); display: table-cell; font-size: 11px; padding: 4px 8px 4px 0;}.sf-toolbar-block:not(.sf-toolbar-block-dump) .sf-toolbar-info-piece span { color: var(--sf-toolbar-gray-100);}.sf-toolbar-block .sf-toolbar-info-piece span { font-size: 12px;}div.sf-toolbar .sf-toolbar-block .sf-toolbar-info-piece.sf-toolbar-info-php-ext a { text-decoration: none;}.sf-toolbar-block .sf-toolbar-info { background-color: var(--sf-toolbar-gray-700); border-radius: 4px; border-bottom-left-radius: 0; bottom: 36px; color: var(--sf-toolbar-gray-100); display: none; padding: 9px 0; position: absolute;}.sf-toolbar-block.sf-toolbar-block-right .sf-toolbar-info { border-bottom-left-radius: 4px; border-bottom-right-radius: 0;}.sf-toolbar-block .sf-toolbar-info:empty { visibility: hidden;}.sf-toolbar-block .sf-toolbar-status { display: inline-block; color: var(--sf-toolbar-white); background-color: var(--sf-toolbar-gray-600); padding: 3px 6px; margin: 0 4px; min-width: 15px; min-height: 13px; text-align: center;}.sf-toolbar-block .sf-toolbar-status.sf-toolbar-status-green,.sf-toolbar-block .sf-toolbar-info .sf-toolbar-status.sf-toolbar-status-green { background-color: #059669; color: var(--white);}.sf-toolbar-block .sf-toolbar-status.sf-toolbar-status-red,.sf-toolbar-block .sf-toolbar-info .sf-toolbar-status.sf-toolbar-status-red { background-color: var(--sf-toolbar-red-500); color: var(--sf-toolbar-red-50);}.sf-toolbar-block .sf-toolbar-status.sf-toolbar-status-yellow,.sf-toolbar-block .sf-toolbar-info .sf-toolbar-status.sf-toolbar-status-yellow { background-color: var(--sf-toolbar-yellow-300); color: var(--sf-toolbar-yellow-800);}.sf-toolbar-block.sf-toolbar-status-green::before,.sf-toolbar-block.sf-toolbar-status-red::before,.sf-toolbar-block.sf-toolbar-status-yellow::before { background: var(--sf-toolbar-yellow-400); border-radius: 6px; content: ''; position: absolute; bottom: 1px; left: 0; width: 98%; height: 3px; z-index: 10005;}.sf-toolbar-block.sf-toolbar-status-red::before { background: var(--sf-toolbar-red-400);}.sf-toolbar-block.sf-toolbar-status-green::before { background: var(--sf-toolbar-green-400);}.sf-toolbar-block-request.sf-toolbar-block.sf-toolbar-status-green::before,.sf-toolbar-block-request.sf-toolbar-block.sf-toolbar-status-red::before,.sf-toolbar-block-request.sf-toolbar-block.sf-toolbar-status-yellow::before { display: none;}.sf-toolbar-block-request .sf-toolbar-status { border-radius: 6px; color: #fff; display: inline-block; flex-shrink: 0; font-size: 13px; font-weight: 500; padding: 4px 8px;}.sf-toolbar-block-request .sf-toolbar-info-piece a { background-color: transparent; text-decoration: none;}.sf-toolbar-block-request .sf-toolbar-info-piece a:hover { text-decoration: underline;}.sf-toolbar-block-request .sf-toolbar-redirection-status { font-weight: normal; padding: 2px 4px; line-height: 18px;}.sf-toolbar-block.sf-toolbar-block-request .sf-toolbar-redirection-status.sf-toolbar-status-yellow { background-color: var(--sf-toolbar-yellow-300); border-radius: 4px; color: var(--sf-toolbar-yellow-800); padding: 1px 4px;}.sf-toolbar-block.sf-toolbar-block-request .sf-toolbar-info-piece .sf-toolbar-redirection-method { background: transparent; color: var(--sf-toolbar-gray-300); border: 1px solid var(--sf-toolbar-gray-400); padding: 1px 4px;}.sf-toolbar-block-request .sf-toolbar-info-piece span.sf-toolbar-redirection-method { font-size: 12px; height: 17px; line-height: 17px; margin-right: 5px;}.sf-toolbar-block-request .sf-toolbar-request-icon svg { stroke-width: 3px;}.sf-toolbar-block-ajax .sf-toolbar-icon { cursor: pointer;}.sf-toolbar-status-green .sf-toolbar-label,.sf-toolbar-status-yellow .sf-toolbar-label,.sf-toolbar-status-red .sf-toolbar-label { color: var(--sf-toolbar-white);}.sf-toolbar-block-config svg path,.sf-toolbar-block-config svg .sf-svg-path { fill: var(--sf-toolbar-white);}.sf-toolbar-block .sf-toolbar-icon { color: var(--sf-toolbar-gray-300); align-items: center; display: flex; height: 36px; padding: 0 7px; overflow: hidden; text-overflow: ellipsis;}.sf-toolbar-block:hover .sf-toolbar-icon { border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; box-shadow: 1px 0 0 var(--sf-toolbar-black), inset 0 -1px 0 var(--sf-toolbar-black);}.sf-toolbar-block.sf-toolbar-block-right:hover .sf-toolbar-icon { box-shadow: -1px 0 0 var(--sf-toolbar-black), inset 0 -1px 0 var(--sf-toolbar-black);}.sf-toolbar-block-request .sf-toolbar-icon { padding-left: 0; padding-right: 0;}.sf-toolbar-block .sf-toolbar-icon img,.sf-toolbar-block .sf-toolbar-icon svg { border-width: 0;}.sf-toolbar-block .sf-toolbar-icon img + span,.sf-toolbar-block .sf-toolbar-icon svg + span { margin-left: 4px;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-value,.sf-toolbar-block.sf-toolbar-block-sf-cli .sf-toolbar-value { margin-left: 5px;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-label,.sf-toolbar-block.sf-toolbar-block-sf-cli .sf-toolbar-label { margin-left: 0;}.sf-toolbar-block:hover,.sf-toolbar-block.hover { position: relative;}.sf-toolbar-block:hover .sf-toolbar-icon,.sf-toolbar-block.hover .sf-toolbar-icon { background-color: var(--sf-toolbar-gray-700); position: relative; z-index: 10002;}.sf-toolbar-block-ajax.hover .sf-toolbar-info { z-index: 10001;}.sf-toolbar-block:hover .sf-toolbar-info,.sf-toolbar-block.hover .sf-toolbar-info { display: block; padding: 10px; max-width: 525px; max-height: 480px; word-wrap: break-word; overflow: hidden; overflow-y: auto;}.sf-toolbar-info-piece b.sf-toolbar-ajax-info { color: var(--sf-toolbar-gray-100);}.sf-toolbar-ajax-requests { border: 1px solid var(--sf-toolbar-gray-500); font-variant: tabular-nums; margin: 5px 0 0; width: 100%;}.sf-toolbar-ajax-requests td { background-color: var(--sf-toolbar-gray-700); border: 1px solid var(--sf-toolbar-gray-500); color: var(--sf-toolbar-gray-100); font-size: 12px; padding: 4px; vertical-align: middle;}.sf-toolbar-ajax-requests thead { border: 0;}.sf-toolbar-ajax-requests th { background-color: var(--sf-toolbar-gray-800); border: 1px solid var(--sf-toolbar-gray-500); color: var(--sf-toolbar-gray-200); font-size: 11px; padding: 4px;}.sf-ajax-request-url { max-width: 250px; line-height: 9px; overflow: hidden; text-overflow: ellipsis;}.sf-toolbar-ajax-requests .sf-ajax-request-url a { text-decoration: none;}.sf-toolbar-ajax-requests .sf-ajax-request-url a:hover { text-decoration: underline;}.sf-ajax-request-duration { text-align: right;}.sf-toolbar-block .sf-toolbar-info-piece .sf-toolbar-ajax-requests .sf-toolbar-status { font-size: 11px; padding: 1px 3px;}.sf-ajax-request-loading { animation: sf-blink .5s ease-in-out infinite;}@keyframes sf-blink { 0% { background: var(--sf-toolbar-gray-800); } 50% { background: var(--sf-toolbar-gray-700); } 100% { background: var(--sf-toolbar-gray-800); }}.sf-toolbar-block.sf-toolbar-block-dump .sf-toolbar-info { max-width: none; width: 100%; position: fixed; box-sizing: border-box; left: 0;}.sf-toolbar-block-dump pre.sf-dump { background-color: var(--sf-toolbar-gray-800); border-color: var(--sf-toolbar-gray-500); border-radius: 0; margin: 6px 0 12px 0;}.sf-toolbar-block-dump pre.sf-dump:last-child { margin-bottom: 0;}.sf-toolbar-block-dump pre.sf-dump .sf-dump-search-wrapper { margin-bottom: 5px;}.sf-toolbar-block-dump pre.sf-dump span.sf-dump-search-count { color: #333; font-size: 12px;}.sf-toolbar-block-dump .sf-toolbar-info-piece { display: block;}.sf-toolbar-block-dump .sf-toolbar-info-piece .sf-toolbar-file-line { color: var(--sf-toolbar-gray-400); margin-left: 4px;}.sf-toolbar-block-dump .sf-toolbar-info img { display: none;}.sf-toolbar-block-serializer .detailed-metrics { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 15px; margin-top: 15px;}/* Responsive Design */.sf-toolbar-icon .sf-toolbar-label,.sf-toolbar-icon .sf-toolbar-value { display: none;}.sf-toolbar-block-config .sf-toolbar-icon .sf-toolbar-label,.sf-cli .sf-toolbar-icon .sf-toolbar-label { display: inline-block;}/* Legacy Design - these styles are maintained to make old panels look a bit better on the new toolbar */.sf-toolbar-block .sf-toolbar-info-piece-additional-detail { color: var(--sf-toolbar-gray-400); font-size: 12px;}.sf-toolbar-status-green .sf-toolbar-info-piece-additional-detail,.sf-toolbar-status-yellow .sf-toolbar-info-piece-additional-detail,.sf-toolbar-status-red .sf-toolbar-info-piece-additional-detail { color: var(--sf-toolbar-white);}@media (min-width: 768px) { .sf-toolbar-icon .sf-toolbar-label, .sf-toolbar-icon .sf-toolbar-value { display: inline; } .sf-toolbar-block-time .sf-toolbar-icon svg, .sf-toolbar-block-memory .sf-toolbar-icon svg { display: none; } .sf-toolbar-block-time .sf-toolbar-icon svg + span, .sf-toolbar-block-memory .sf-toolbar-icon svg + span { margin-left: 0; } .sf-toolbar-block .sf-toolbar-icon { padding: 0 10px; } .sf-toolbar-block-time .sf-toolbar-icon { padding-right: 5px; } .sf-toolbar-block-memory .sf-toolbar-icon { padding-left: 5px; } .sf-toolbar-block-request .sf-toolbar-icon { display: flex; align-items: center; padding-left: 0; padding-right: 0; } .sf-toolbar-block-request .sf-toolbar-label { margin-left: 4px; margin-right: 1px; } .sf-toolbar-block-request .sf-toolbar-status + .sf-toolbar-request-icon { display: inline-flex; margin-left: 5px; } .sf-toolbar-block-request .sf-toolbar-icon .sf-toolbar-request-icon + .sf-toolbar-label { margin-left: 0; } .sf-toolbar-block-request .sf-toolbar-label + .sf-toolbar-value { margin-right: 5px; } .sf-toolbar-block-request:hover .sf-toolbar-info { max-width: none; } .sf-toolbar-block .sf-toolbar-info-piece b { font-size: 12px; } .sf-toolbar-block .sf-toolbar-info-piece span { font-size: 13px; } .sf-toolbar-block-right { float: right; margin-left: 0; margin-right: 0; } .sf-toolbarreset .sf-toolbar-block.sf-toolbar-block-right:not(.sf-toolbar-block-sf-cli) .sf-toolbar-info { border-bottom-left-radius: 4px; border-bottom-right-radius: 0; }}@media (min-width: 1024px) { .sf-toolbar-block .sf-toolbar-info-piece-additional, .sf-toolbar-block .sf-toolbar-info-piece-additional-detail { display: inline; } .sf-toolbar-block .sf-toolbar-info-piece-additional:empty, .sf-toolbar-block .sf-toolbar-info-piece-additional-detail:empty { display: none; }}/***** Error Toolbar *****/.sf-error-toolbar .sf-toolbarreset { background: var(--sf-toolbar-gray-800); color: var(--sf-toolbar-gray-100); font: 13px/36px var(--sf-toolbar-font-family-system); height: 36px; padding: 0 15px; text-align: left;}.sf-error-toolbar .sf-toolbarreset svg { height: auto;}.sf-error-toolbar .sf-toolbarreset a { color: #99cdd8; margin-left: 5px; text-decoration: underline;}.sf-error-toolbar .sf-toolbarreset a:hover { text-decoration: none;}.sf-error-toolbar .sf-toolbarreset .sf-toolbar-icon { float: left; padding: 5px 0; margin-right: 10px;}.sf-full-stack { left: 0px; font-size: 12px;}/***** Media query print: Do not print the Toolbar. *****/@media print { .sf-toolbar { display: none !important; }} </style> <script nonce="1a3ee8a1b54612e2270e95796d725d76">/*<![CDATA[*/ if (typeof Sfjs === 'undefined' || typeof Sfjs.loadToolbar === '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 noop = function() {}; var profilerStorageKey = 'symfony/profiler/'; 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); }; } var request = function(url, onSuccess, onError, payload, options, tries) { var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); options = options || {}; options.retry = options.retry || false; tries = tries || 1; /* this delays for 125, 375, 625, 875, and 1000, ... */ var delay = tries < 5 ? (tries - 0.5) * 250 : 1000; xhr.open(options.method || 'GET', url, true); xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); xhr.onreadystatechange = function(state) { if (4 !== xhr.readyState) { return null; } if (xhr.status == 404 && options.retry && !options.stop) { setTimeout(function() { if (options.stop) { return; } request(url, onSuccess, onError, payload, options, tries + 1); }, delay); return null; } if (200 === xhr.status) { (onSuccess || noop)(xhr); } else { (onError || noop)(xhr); } }; if (options.onSend) { options.onSend(tries); } xhr.send(payload || ''); }; var getPreference = function(name) { if (!window.localStorage) { return null; } return localStorage.getItem(profilerStorageKey + name); }; var setPreference = function(name, value) { if (!window.localStorage) { return null; } localStorage.setItem(profilerStorageKey + name, value); }; var requestStack = []; var extractHeaders = function(xhr, stackElement) { /* Here we avoid to call xhr.getResponseHeader in order to */ /* prevent polluting the console with CORS security errors */ var allHeaders = xhr.getAllResponseHeaders(); var ret; if (ret = allHeaders.match(/^x-debug-token:\s+(.*)$/im)) { stackElement.profile = ret[1]; } if (ret = allHeaders.match(/^x-debug-token-link:\s+(.*)$/im)) { stackElement.profilerUrl = ret[1]; } if (ret = allHeaders.match(/^Symfony-Debug-Toolbar-Replace:\s+(.*)$/im)) { stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === ret[1]; } }; var successStreak = 4; var pendingRequests = 0; var renderAjaxRequests = function() { var requestCounter = document.querySelector('.sf-toolbar-ajax-request-counter'); if (!requestCounter) { return; } requestCounter.textContent = requestStack.length; var infoSpan = document.querySelector(".sf-toolbar-ajax-info"); if (infoSpan) { infoSpan.textContent = requestStack.length + ' AJAX request' + (requestStack.length !== 1 ? 's' : ''); } var ajaxToolbarPanel = document.querySelector('.sf-toolbar-block-ajax'); if (requestStack.length) { ajaxToolbarPanel.style.display = 'block'; } else { ajaxToolbarPanel.style.display = 'none'; } if (pendingRequests > 0) { addClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else if (successStreak < 4) { addClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); } else { removeClass(ajaxToolbarPanel, 'sf-ajax-request-loading'); removeClass(ajaxToolbarPanel, 'sf-toolbar-status-red'); } }; var startAjaxRequest = function(index) { var tbody = document.querySelector('.sf-toolbar-ajax-request-list'); if (!tbody) { return; } var nbOfAjaxRequest = tbody.rows.length; if (nbOfAjaxRequest >= 100) { tbody.deleteRow(0); } var request = requestStack[index]; pendingRequests++; var row = document.createElement('tr'); request.DOMNode = row; var requestNumberCell = document.createElement('td'); requestNumberCell.textContent = index + 1; row.appendChild(requestNumberCell); var profilerCell = document.createElement('td'); profilerCell.textContent = 'n/a'; row.appendChild(profilerCell); var methodCell = document.createElement('td'); methodCell.textContent = request.method; row.appendChild(methodCell); var typeCell = document.createElement('td'); typeCell.textContent = request.type; row.appendChild(typeCell); var statusCodeCell = document.createElement('td'); var statusCode = document.createElement('span'); statusCode.textContent = 'n/a'; statusCodeCell.appendChild(statusCode); row.appendChild(statusCodeCell); var pathCell = document.createElement('td'); pathCell.className = 'sf-ajax-request-url'; if ('GET' === request.method) { var pathLink = document.createElement('a'); pathLink.setAttribute('href', request.url); pathLink.textContent = request.url; pathCell.appendChild(pathLink); } else { pathCell.textContent = request.url; } pathCell.setAttribute('title', request.url); row.appendChild(pathCell); var durationCell = document.createElement('td'); durationCell.className = 'sf-ajax-request-duration'; durationCell.textContent = 'n/a'; row.appendChild(durationCell); request.liveDurationHandle = setInterval(function() { durationCell.textContent = (new Date() - request.start) + ' ms'; }, 100); row.className = 'sf-ajax-request sf-ajax-request-loading'; tbody.insertBefore(row, null); var toolbarInfo = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); toolbarInfo.scrollTop = toolbarInfo.scrollHeight; renderAjaxRequests(); }; var finishAjaxRequest = function(index) { var request = requestStack[index]; clearInterval(request.liveDurationHandle); if (!request.DOMNode) { return; } if (request.toolbarReplace && !request.toolbarReplaceFinished && request.profile) { /* Flag as complete because finishAjaxRequest can be called multiple times. */ request.toolbarReplaceFinished = true; /* Search up through the DOM to find the toolbar's container ID. */ for (var elem = request.DOMNode; elem && elem !== document; elem = elem.parentNode) { if (elem.id.match(/^sfwdt/)) { Sfjs.loadToolbar(elem.id.replace(/^sfwdt/, ''), request.profile); break; } } } if (pendingRequests > 0) { pendingRequests--; } var row = request.DOMNode; /* Unpack the children from the row */ var profilerCell = row.children[1]; var methodCell = row.children[2]; var statusCodeCell = row.children[4]; var statusCodeElem = statusCodeCell.children[0]; var durationCell = row.children[6]; if (request.error) { row.className = 'sf-ajax-request sf-ajax-request-error'; methodCell.className = 'sf-ajax-request-error'; successStreak = 0; } else { row.className = 'sf-ajax-request sf-ajax-request-ok'; successStreak++; } if (request.statusCode) { if (request.statusCode < 300) { statusCodeElem.setAttribute('class', 'sf-toolbar-status'); } else if (request.statusCode < 400) { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-yellow'); } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } statusCodeElem.textContent = request.statusCode; } else { statusCodeElem.setAttribute('class', 'sf-toolbar-status sf-toolbar-status-red'); } if (request.duration) { durationCell.textContent = request.duration + ' ms'; } if (request.profilerUrl) { profilerCell.textContent = ''; var profilerLink = document.createElement('a'); profilerLink.setAttribute('href', request.profilerUrl); profilerLink.textContent = request.profile; profilerCell.appendChild(profilerLink); } renderAjaxRequests(); }; if (window.fetch && window.fetch.polyfill === undefined) { var oldFetch = window.fetch; window.fetch = function () { var promise = oldFetch.apply(this, arguments); var url = arguments[0]; var params = arguments[1]; var paramType = Object.prototype.toString.call(arguments[0]); if (paramType === '[object Request]') { url = arguments[0].url; params = { method: arguments[0].method, credentials: arguments[0].credentials, headers: arguments[0].headers, mode: arguments[0].mode, redirect: arguments[0].redirect }; } else { url = String(url); } if (!url.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var method = 'GET'; if (params && params.method !== undefined) { method = params.method; } var stackElement = { error: false, url: url, method: method, type: 'fetch', start: new Date() }; var idx = requestStack.push(stackElement) - 1; promise.then(function (r) { stackElement.duration = new Date() - stackElement.start; stackElement.error = r.status < 200 || r.status >= 400; stackElement.statusCode = r.status; stackElement.profile = r.headers.get('x-debug-token'); stackElement.profilerUrl = r.headers.get('x-debug-token-link'); stackElement.toolbarReplaceFinished = false; stackElement.toolbarReplace = '1' === r.headers.get('Symfony-Debug-Toolbar-Replace'); finishAjaxRequest(idx); }, function (e){ stackElement.error = true; finishAjaxRequest(idx); }); startAjaxRequest(idx); } return promise; }; } if (window.XMLHttpRequest && XMLHttpRequest.prototype.addEventListener) { var proxied = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, async, user, pass) { var self = this; /* prevent logging AJAX calls to static and inline files, like templates */ var path = url; if (url.slice(0, 1) === '/') { if (0 === url.indexOf('')) { path = url.slice(0); } } else if (0 === url.indexOf('https\u003A\/\/dev\u002D4.sksp.site')) { path = url.slice(23); } if (!path.match(new RegExp("^\/((index|app(_[\\w]+)?)\\.php\/)?_wdt"))) { var stackElement = { error: false, url: url, method: method, type: 'xhr', start: new Date() }; var idx = requestStack.push(stackElement) - 1; this.addEventListener('readystatechange', function() { if (self.readyState == 4) { stackElement.duration = new Date() - stackElement.start; stackElement.error = self.status < 200 || self.status >= 400; stackElement.statusCode = self.status; extractHeaders(self, stackElement); finishAjaxRequest(idx); } }, false); startAjaxRequest(idx); } proxied.apply(this, Array.prototype.slice.call(arguments)); }; } return { hasClass: hasClass, removeClass: removeClass, addClass: addClass, toggleClass: toggleClass, getPreference: getPreference, setPreference: setPreference, addEventListener: addEventListener, request: request, renderAjaxRequests: renderAjaxRequests, getSfwdt: function(token) { return document.getElementById('sfwdt' + token); }, load: function(selector, url, onSuccess, onError, options) { var el = document.getElementById(selector); if (el && el.getAttribute('data-sfurl') !== url) { request( url, function(xhr) { el.innerHTML = xhr.responseText; el.setAttribute('data-sfurl', url); removeClass(el, 'loading'); var pending = pendingRequests; for (var i = 0; i < requestStack.length; i++) { startAjaxRequest(i); if (requestStack[i].duration || requestStack[i].error) { finishAjaxRequest(i); } } /* Revert the pending state in case there was a start called without a finish above. */ pendingRequests = pending; (onSuccess || noop)(xhr, el); }, function(xhr) { (onError || noop)(xhr, el); }, '', options ); } return this; }, showToolbar: function(token) { var sfwdt = this.getSfwdt(token); removeClass(sfwdt.parentNode, 'sf-display-none'); if (getPreference('toolbar/displayState') == 'none') { document.getElementById('sfToolbarMainContent-' + token).style.display = 'none'; document.getElementById('sfToolbarClearer-' + token).style.display = 'none'; document.getElementById('sfMiniToolbar-' + token).style.display = 'block'; } else { document.getElementById('sfToolbarMainContent-' + token).style.display = 'block'; document.getElementById('sfToolbarClearer-' + token).style.display = 'block'; document.getElementById('sfMiniToolbar-' + token).style.display = 'none'; } }, hideToolbar: function(token) { var sfwdt = this.getSfwdt(token); addClass(sfwdt.parentNode, 'sf-display-none'); }, initToolbar: function(token) { this.showToolbar(token); var hideButton = document.getElementById('sfToolbarHideButton-' + token); var hideButtonSvg = hideButton.querySelector('svg'); hideButtonSvg.setAttribute('aria-hidden', 'true'); hideButtonSvg.setAttribute('focusable', 'false'); addEventListener(hideButton, 'click', function (event) { event.preventDefault(); var p = this.parentNode; p.style.display = 'none'; (p.previousElementSibling || p.previousSibling).style.display = 'none'; document.getElementById('sfMiniToolbar-' + token).style.display = 'block'; setPreference('toolbar/displayState', 'none'); }); var showButton = document.getElementById('sfToolbarMiniToggler-' + token); var showButtonSvg = showButton.querySelector('svg'); showButtonSvg.setAttribute('aria-hidden', 'true'); showButtonSvg.setAttribute('focusable', 'false'); addEventListener(showButton, 'click', function (event) { event.preventDefault(); var elem = this.parentNode; if (elem.style.display == 'none') { document.getElementById('sfToolbarMainContent-' + token).style.display = 'none'; document.getElementById('sfToolbarClearer-' + token).style.display = 'none'; elem.style.display = 'block'; } else { document.getElementById('sfToolbarMainContent-' + token).style.display = 'block'; document.getElementById('sfToolbarClearer-' + token).style.display = 'block'; elem.style.display = 'none' } setPreference('toolbar/displayState', 'block'); }); }, loadToolbar: function(token, newToken) { var that = this; var triesCounter = document.getElementById('sfLoadCounter-' + token); var options = { retry: true, onSend: function (count) { if (count === 3) { that.initToolbar(token); } if (triesCounter) { triesCounter.textContent = count; } }, }; var cancelButton = document.getElementById('sfLoadCancel-' + token); if (cancelButton) { addEventListener(cancelButton, 'click', function (event) { event.preventDefault(); options.stop = true; that.hideToolbar(token); }); } newToken = (newToken || token); this.load( 'sfwdt' + token, 'https\u003A\/\/dev\u002D4.sksp.site\/_wdt\/xxxxxx'.replace(/xxxxxx/, newToken), function(xhr, el) { var toolbarContent = document.getElementById('sfToolbarMainContent-' + newToken); /* Do nothing in the edge case where the toolbar has already been replaced with a new one */ if (!toolbarContent) { return; } /* Replace the ID, it has to match the new token */ toolbarContent.parentElement.id = 'sfwdt' + newToken; /* Evaluate in global scope scripts embedded inside the toolbar */ var i, scripts = [].slice.call(el.querySelectorAll('script')); for (i = 0; i < scripts.length; ++i) { if (scripts[i].firstChild) { eval.call({}, scripts[i].firstChild.nodeValue); } } el.style.display = -1 !== xhr.responseText.indexOf('sf-toolbarreset') ? 'block' : 'none'; if (el.style.display == 'none') { return; } that.initToolbar(newToken); /* Handle toolbar-info position */ var toolbarBlocks = [].slice.call(el.querySelectorAll('.sf-toolbar-block')); for (i = 0; i < toolbarBlocks.length; ++i) { toolbarBlocks[i].onmouseover = function () { var toolbarInfo = this.querySelectorAll('.sf-toolbar-info')[0]; var pageWidth = document.body.clientWidth; var elementWidth = toolbarInfo.offsetWidth; var leftValue = (elementWidth + this.offsetLeft) - pageWidth; var rightValue = (elementWidth + (pageWidth - this.offsetLeft)) - pageWidth; /* Reset right and left value, useful on window resize */ toolbarInfo.style.right = ''; toolbarInfo.style.left = ''; if (elementWidth > pageWidth) { toolbarInfo.style.left = 0; } else if (leftValue > 0 && rightValue > 0) { toolbarInfo.style.right = (rightValue * -1) + 'px'; } else if (leftValue < 0) { toolbarInfo.style.left = 0; } else { toolbarInfo.style.right = '0px'; } }; } renderAjaxRequests(); addEventListener(document.querySelector('.sf-toolbar-ajax-clear'), 'click', function() { requestStack = []; renderAjaxRequests(); successStreak = 4; document.querySelector('.sf-toolbar-ajax-request-list').innerHTML = ''; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax'), 'mouseenter', function (event) { var elem = document.querySelector('.sf-toolbar-block-ajax .sf-toolbar-info'); elem.scrollTop = elem.scrollHeight; }); addEventListener(document.querySelector('.sf-toolbar-block-ajax > .sf-toolbar-icon'), 'click', function (event) { event.preventDefault(); toggleClass(this.parentNode, 'hover'); }); var dumpInfo = document.querySelector('.sf-toolbar-block-dump .sf-toolbar-info'); if (null !== dumpInfo) { addEventListener(dumpInfo, 'sfbeforedumpcollapse', function () { dumpInfo.style.minHeight = dumpInfo.getBoundingClientRect().height+'px'; }); addEventListener(dumpInfo, 'mouseleave', function () { dumpInfo.style.minHeight = ''; }); } }, function(xhr) { if (xhr.status !== 0 && !options.stop) { var sfwdt = that.getSfwdt(token); sfwdt.innerHTML = '\ <div class="sf-toolbarreset notranslate">\ <div class="sf-toolbar-icon"><svg width="26" height="28" xmlns="http://www.w3.org/2000/svg" version="1.1" x="0px" y="0px" viewBox="0 0 26 28" enable-background="new 0 0 26 28" xml:space="preserve"><path fill="#FFFFFF" d="M13 0C5.8 0 0 5.8 0 13c0 7.2 5.8 13 13 13c7.2 0 13-5.8 13-13C26 5.8 20.2 0 13 0z M20 7.5 c-0.6 0-1-0.3-1-0.9c0-0.2 0-0.4 0.2-0.6c0.1-0.3 0.2-0.3 0.2-0.4c0-0.3-0.5-0.4-0.7-0.4c-2 0.1-2.5 2.7-2.9 4.8l-0.2 1.1 c1.1 0.2 1.9 0 2.4-0.3c0.6-0.4-0.2-0.8-0.1-1.3C18 9.2 18.4 9 18.7 8.9c0.5 0 0.8 0.5 0.8 1c0 0.8-1.1 2-3.3 1.9 c-0.3 0-0.5 0-0.7-0.1L15 14.1c-0.4 1.7-0.9 4.1-2.6 6.2c-1.5 1.8-3.1 2.1-3.8 2.1c-1.3 0-2.1-0.6-2.2-1.6c0-0.9 0.8-1.4 1.3-1.4 c0.7 0 1.2 0.5 1.2 1.1c0 0.5-0.2 0.6-0.4 0.7c-0.1 0.1-0.3 0.2-0.3 0.4c0 0.1 0.1 0.3 0.4 0.3c0.5 0 0.9-0.3 1.2-0.5 c1.3-1 1.7-2.9 2.4-6.2l0.1-0.8c0.2-1.1 0.5-2.3 0.8-3.5c-0.9-0.7-1.4-1.5-2.6-1.8c-0.8-0.2-1.3 0-1.7 0.4C8.4 10 8.6 10.7 9 11.1 l0.7 0.7c0.8 0.9 1.3 1.7 1.1 2.7c-0.3 1.6-2.1 2.8-4.3 2.1c-1.9-0.6-2.2-1.9-2-2.7c0.2-0.6 0.7-0.8 1.2-0.6 c0.5 0.2 0.7 0.8 0.6 1.3c0 0.1 0 0.1-0.1 0.3C6 15 5.9 15.2 5.9 15.3c-0.1 0.4 0.4 0.7 0.8 0.8c0.8 0.3 1.7-0.2 1.9-0.9 c0.2-0.6-0.2-1.1-0.4-1.2l-0.8-0.9c-0.4-0.4-1.2-1.5-0.8-2.8c0.2-0.5 0.5-1 0.9-1.4c1-0.7 2-0.8 3-0.6c1.3 0.4 1.9 1.2 2.8 1.9 c0.5-1.3 1.1-2.6 2-3.8c0.9-1 2-1.7 3.3-1.8C20 4.8 21 5.4 21 6.3C21 6.7 20.8 7.5 20 7.5z"/></svg></div>\ An error occurred while loading the web debug toolbar. <a href="https\u003A\/\/dev\u002D4.sksp.site\/_profiler\/' + newToken + '">Open the web profiler.</a>\ </div>\ '; sfwdt.parentElement.setAttribute('class', 'sf-toolbar sf-error-toolbar'); } }, options ); return this; }, toggle: function(selector, elOn, elOff) { var tmp = elOn.style.display, el = document.getElementById(selector); elOn.style.display = elOff.style.display; elOff.style.display = tmp; if (el) { el.style.display = 'none' === tmp ? 'none' : 'block'; } return this; }, }; })(); } Sfjs.loadToolbar('205266'); /*]]>*/</script></div>\n </body>\n </html> """ #version: "1.1" #statusCode: 200 #statusText: "OK" #charset: "UTF-8" -sentHeaders: ? array } } |
| Envelope stamps when dispatching | No items |
| Envelope stamps after dispatch |
Symfony\Component\Messenger\Stamp\BusNameStamp {#5647 -busName: "command.bus" } Symfony\Component\Messenger\Stamp\HandledStamp {#6497 -result: null -handlerName: "App\Core\Application\Command\User\SaveUserUtmCookies\SaveUserUtmCookiesCommandHandler::__invoke" } |
"App\Core\Application\Command\External\Tilda\GetPage\GetPageCommand" |
|
|---|---|
| Caller | In Handler.php line |
| Message | App\Core\Application\Command\External\Tilda\GetPage\GetPageCommand {#6498 -type: "url" -pageId: null -url: "asset/admin/bucket-ico-fonts/bucket-ico-font.svg" -removeFaviconIcon: false -faveIcon: null } |
| Envelope stamps when dispatching | No items |
| Envelope stamps after dispatch |
Symfony\Component\Messenger\Stamp\BusNameStamp {#6493 -busName: "command.bus" } Symfony\Component\Messenger\Stamp\HandledStamp {#6646 -result: """ <!DOCTYPE html>\n <html lang="ru">\n <head>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1">\n <title>Главная — Skillspace Local Dev</title>\n <meta name="robots" content="noindex,nofollow">\n </head>\n <body style="margin:0;font-family:Inter,Arial,sans-serif;line-height:1.55;background:linear-gradient(180deg,#f4f7fb 0%,#eef2ff 100%);color:#0f172a;">\n <!-- skillspace-dev-tilda-fallback -->\n <main style="max-width:1080px;margin:0 auto;padding:40px 20px 56px;">\n <section style="background:#ffffff;border:1px solid rgba(148,163,184,.22);border-radius:24px;padding:32px;box-shadow:0 20px 60px rgba(15,23,42,.08);">\n <div style="display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:13px;font-weight:700;letter-spacing:.02em;">DEV ONLY · Tilda fallback</div>\n <h1 style="margin:16px 0 10px;font-size:36px;line-height:1.15;">Главная</h1>\n <p style="margin:0 0 20px;font-size:17px;color:#334155;max-width:760px;">Tilda API refresh для локального запуска отключён, поэтому вместо внешней страницы показывается аккуратная dev-заглушка. Это нормально только для <strong>dev</strong>. Пароль у dev-аккаунтов совпадает с логином/email.</p>\n <div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px;">\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Dev школа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-school</div>\n <a href="https://dev-school.dev-4.sksp.site" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-school.dev-4.sksp.site</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Владелец школы:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-owner@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Платформа</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">Admin</div>\n <a href="https://dev-4.sksp.site/admin-old/login" style="color:#2563eb;text-decoration:none;word-break:break-all;">https://dev-4.sksp.site/admin-old/login</a>\n <div style="margin-top:12px;font-size:14px;color:#475569;">Админ:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">admin@skillspace.local</div>\n </article>\n <article style="padding:18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0;">\n <div style="font-size:13px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.04em;">Student smoke test</div>\n <div style="margin:10px 0 6px;font-size:22px;font-weight:700;">dev-student@skillspace.local</div>\n <div style="font-size:14px;color:#475569;">Студент:</div>\n <div style="margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#0f172a;">dev-student@skillspace.local</div>\n <div style="margin-top:8px;font-size:14px;color:#475569;">Курс: Dev Demo Course</div>\n </article>\n </div>\n <div style="display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;">\n <a href="https://dev-4.sksp.site" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#111827;color:#fff;text-decoration:none;font-weight:700;cursor:pointer;">Открыть платформу</a>\n <a href="https://dev-4.sksp.site/_profiler/" style="display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;background:#fff;color:#111827;text-decoration:none;font-weight:700;border:1px solid #cbd5e1;cursor:pointer;">Открыть profiler</a>\n </div>\n </section>\n </main>\n </body>\n </html> """ -handlerName: "App\Core\Application\Command\External\Tilda\GetPage\GetPageCommandHandler::__invoke" } |
query.bus0
Ordered list of messages dispatched on the query.bus bus
mailer.bus0
Ordered list of messages dispatched on the mailer.bus bus
default.bus0
Ordered list of messages dispatched on the default.bus bus
event.bus0
Ordered list of messages dispatched on the event.bus bus