Messages
Ordered list of dispatched messages across all your buses
"Contao\CoreBundle\Messenger\Message\SearchIndexMessage" |
|
|---|---|
| Caller | In SearchIndexListener.php line |
| Bus | messenger.bus.default |
| Message | Contao\CoreBundle\Messenger\Message\SearchIndexMessage {#12075 -document: Contao\CoreBundle\Search\Document {#12069 -originalDocument: null -jsonLds: null -uri: Nyholm\Psr7\Uri {#12151 -scheme: "https" -userInfo: "" -host: "devmonotomic-gb.bn-automation.de" -port: null -path: "/es/inicio.html" -query: "" -fragment: "" } -statusCode: 200 -headers: [ "cache-control" => [ "no-cache, no-store, private" ] "date" => [ "Sat, 10 Jan 2026 02:04:18 GMT" ] "content-type" => [ "text/html; charset=UTF-8" ] "x-cache-debug" => [ "1" ] "x-content-type-options" => [ "nosniff" ] "referrer-policy" => [ "no-referrer-when-downgrade, strict-origin-when-cross-origin" ] "permissions-policy" => [ "interest-cohort=()" ] "strict-transport-security" => [ "max-age=31536000" ] "pragma" => [ "no-cache" ] "expires" => [ "-1" ] "link" => [ "<https://devmonotomic-gb.bn-automation.de/hofff-contao-consent/status.js?banner=1&pageId=197>; rel="preload"; as="script"; nopush,</bundles/hofffcontaoconsentcore/consent-manager.3247aa8f.js>; rel="preload"; as="script"; nopush" ] "x-cache-tags" => [ "contao.db.tl_article.504,contao.db.tl_content.1175,contao.db.tl_article.505,contao.db.tl_content.1176,contao.db.tl_content.1177,contao.db.tl_article.506,contao.db.tl_content.1179,contao.db.tl_content.2124,contao.db.tl_content.2125,contao.db.tl_content.2126,contao.db.tl_article.1416,contao.db.tl_content.1181,contao.db.tl_article.507,contao.db.tl_content.1183,contao.db.tl_content.1184,contao.db.tl_content.1185,contao.db.tl_content.1186,contao.db.tl_content.1187,contao.db.tl_module.3,contao.db.tl_module.20,contao.db.tl_module.28,contao.db.tl_page.202,contao.db.tl_page.203,contao.db.tl_page.204,contao.db.tl_page.198,contao.db.tl_page.211,contao.db.tl_page.212,contao.db.tl_page.213,contao.db.tl_page.214,contao.db.tl_page.215,contao.db.tl_page.216,contao.db.tl_page.210,contao.db.tl_page.218,contao.db.tl_page.219,contao.db.tl_page.220,contao.db.tl_page.221,contao.db.tl_page.222,contao.db.tl_page.217,contao.db.tl_page.224,contao.db.tl_page.225,contao.db.tl_page.226,contao.db.tl_page.227,contao.db.tl_page.223,contao.db.tl_page.209,contao.db.tl_page.230,contao.db.tl_page.231,contao.db.tl_page.232,contao.db.tl_page.233,contao.db.tl_page.234,contao.db.tl_page.235,contao.db.tl_page.236,contao.db.tl_page.229,contao.db.tl_page.238,contao.db.tl_page.239,contao.db.tl_page.240,contao.db.tl_page.241,contao.db.tl_page.242,contao.db.tl_page.243,contao.db.tl_page.237,contao.db.tl_page.247,contao.db.tl_page.245,contao.db.tl_page.246,contao.db.tl_page.244,contao.db.tl_page.249,contao.db.tl_page.250,contao.db.tl_page.251,contao.db.tl_page.248,contao.db.tl_page.253,contao.db.tl_page.254,contao.db.tl_page.255,contao.db.tl_page.256,contao.db.tl_page.257,contao.db.tl_page.258,contao.db.tl_page.252,contao.db.tl_page.259,contao.db.tl_page.228,contao.db.tl_page.261,contao.db.tl_page.262,contao.db.tl_page.274,contao.db.tl_page.275,contao.db.tl_page.276,contao.db.tl_page.277,contao.db.tl_page.260,contao.db.tl_page.754,contao.db.tl_page.755,contao.db.tl_page.756,contao.db.tl_page.757,contao.db.tl_page.769,contao.db.tl_page.758,contao.db.tl_page.759,contao.db.tl_page.278,contao.db.tl_page.288,contao.db.tl_page.289,contao.db.tl_page.290,contao.db.tl_page.291,contao.db.tl_page.292,contao.db.tl_page.287,contao.db.tl_page.294,contao.db.tl_page.296,contao.db.tl_page.302,contao.db.tl_page.284,contao.db.tl_module.17,contao.db.tl_module.37,contao.db.tl_module.26,contao.db.tl_module.15,contao.db.tl_form_field.134,contao.db.tl_form.16,contao.db.tl_module.21,contao.db.tl_module.2,contao.db.tl_module.18,contao.db.tl_module.1,contao.db.tl_page.197,contao.db.tl_module.4,contao.db.tl_page.196" ] "x-frame-options" => [ "SAMEORIGIN" ] "x-xss-protection" => [ "1; mode=block" ] "x-debug-token" => [ "8be478" ] "x-debug-token-link" => [ "https://devmonotomic-gb.bn-automation.de/_profiler/8be478" ] "x-robots-tag" => [ "noindex" ] ] -body: """ \n <!-- TEMPLATE START: templates/fe_page.html5 -->\n <!DOCTYPE html>\n <html lang="es">\n <head>\n \n <meta charset="UTF-8">\n <title>Inicio - BN Automation AG</title>\n <base href="https://devmonotomic-gb.bn-automation.de/">\n \n <meta name="robots" content="index,follow">\n <meta name="description" content="">\n <meta name="generator" content="Contao Open Source CMS">\n \n \n <meta name="viewport" content="width=device-width, initial-scale=1">\n <link rel="stylesheet" href="/assets/contao/css/layout.min.css?v=e03c59c9"><link rel="stylesheet" href="/assets/contao/css/responsive.min.css?v=e03c59c9"><link rel="stylesheet" href="/bundles/contaommenu/mmenu/mmenu.css?v=5e72e791"><link rel="stylesheet" href="/assets/colorbox/css/colorbox.min.css?v=83af8d5b"><link rel="stylesheet" href="/files/themes/bna/css/font-awesome.min.css?v=549210b4"><link rel="stylesheet" href="/files/themes/bna/css/flexslider.css?v=ebc69c12"><link rel="stylesheet" href="/files/themes/bna/css/main.css?v=790e4f55"><link rel="stylesheet" href="/files/themes/bna/css/responsive.css?v=d11f8027"><link rel="stylesheet" href="/files/themes/bna/css/smartphone.css?v=2e85d66a"><link rel="stylesheet" href="/assets/css/files_themes_bna_imports.scss.css?v=3f67f63d"> <script src="/assets/jquery/js/jquery.min.js?v=2e868dd8"></script><script src="/bundles/contaommenu/mmenu/mmenu.js?v=5e72e791"></script><!-- Google Tag Manager -->\n <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer','GTM-TC7KKFR');</script>\n <!-- End Google Tag Manager --><script src="https://devmonotomic-gb.bn-automation.de/hofff-contao-consent/status.js?banner=1&pageId=197"></script><script src="/bundles/hofffcontaoconsentcore/consent-manager.3247aa8f.js"></script><script src="/bundles/hofffcontaoconsentgoogletagmanager/script.js?v=760782e2"></script>\n <!-- TEMPLATE START: vendor/terminal42/contao-changelanguage/contao/templates/block_alternate_links.html5 -->\n <link rel="alternate" hreflang="de" href="https://devmonotomic-gb.bn-automation.de/de/startseite.html">\n <link rel="alternate" hreflang="x-default" href="https://devmonotomic-gb.bn-automation.de/de/startseite.html">\n <link rel="alternate" hreflang="en" href="https://devmonotomic-gb.bn-automation.de/en/home.html">\n <link rel="alternate" hreflang="es" href="https://devmonotomic-gb.bn-automation.de/es/inicio.html">\n \n <!-- TEMPLATE END: vendor/terminal42/contao-changelanguage/contao/templates/block_alternate_links.html5 -->\n <link type="text/css" rel="stylesheet" href="https://fast.fonts.net/cssapi/bc57cc8d-0f71-4688-9d14-7919812b3649.css"/>\n <link rel="icon" type="image/png" href="/favicon.png">\n \n </head>\n <body id="top" class="">\n \n \n <div id="fixed_menu">\n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <div class="header">\n \t<div class="inside">\n \t\t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <div id="topbuttons">\n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <div id="search">\n \t<a id="search-button">\n \t\t \n \t\t \n \t\tBusca \n \t</a>\n \t\n \t \n \t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/forms/form_wrapper.html5 -->\n \n <!-- indexer::stop -->\n <div class="mod_form block" id="search-input">\n \n \n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/forms/form_inline.html5 -->\n <form action="/es/buscar.html" method="get" enctype="application/x-www-form-urlencoded">\n <div class="formbody">\n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/forms/form_text.html5 -->\n \n <div class="widget widget-text">\n \n \n <input type="text" name="keywords" id="ctrl_134" class="text" value="">\n </div>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/forms/form_text.html5 -->\n </div>\n </form>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/forms/form_inline.html5 -->\n \n </div>\n <!-- indexer::continue -->\n \n <script>\n document.currentScript.previousElementSibling.querySelector('form')?.addEventListener('submit', e => {\n // Prevent double form submission\n if (e.submitter) {\n setTimeout(() => e.submitter.disabled = true);\n setTimeout(() => e.submitter.disabled = false, 30000);\n }\n });\n </script>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/forms/form_wrapper.html5 -->\n \n </div>\n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n \n <!-- TEMPLATE START: vendor/terminal42/contao-changelanguage/contao/templates/mod_changelanguage.html5 -->\n \n <!-- indexer::stop -->\n <nav class="mod_changelanguage block">\n \n \n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/navigation/nav_default.html5 -->\n \n <ul class="level_1">\n <li class="lang-de"><a href="/de/startseite.html" title="Startseite" class="lang-de" hreflang="de" aria-label="Go to current page in alemán">DE</a></li>\n <li class="lang-en"><a href="/en/home.html" title="Home" class="lang-en" hreflang="en" aria-label="Go to current page in inglés">EN</a></li>\n <li class="lang-es active"><strong class="lang-es active" aria-current="page">ES</strong></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/navigation/nav_default.html5 -->\n \n </nav>\n <!-- indexer::continue -->\n <!-- TEMPLATE END: vendor/terminal42/contao-changelanguage/contao/templates/mod_changelanguage.html5 -->\n \n <img src="files/themes/bna/images/EU_TMWWDG.png" class="eu-logo" alt="EU Logo" width="500">\n </div>\n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n \t\t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_navigation.html5 -->\n \n <!-- indexer::stop -->\n <nav class="mod_navigation block" id="navi">\n \n \n <a href="/es/inicio.html#skipNavigation2" class="invisible">Saltar navegación</a>\n \n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/navigation/nav_default.html5 -->\n \n <ul class="level_1">\n <li class="sibling"><a href="/es/empresa.html" title="Empresa" class="sibling">Empresa</a></li>\n <li class="sibling"><a href="/es/sectores.html" title="Sectores" class="sibling">Sectores</a></li>\n <li class="sibling"><a href="/es/productos-y-soluciones.html" title="Productos y soluciones" class="sibling">Productos y soluciones</a></li>\n <li class="sibling"><a href="/es/servicios.html" title="Servicios" class="sibling">Servicios</a></li>\n <li class="sibling"><a href="/es/carrera.html" title="Carrera" class="sibling">Carrera</a></li>\n <li class="sibling"><a href="/es/inversores.html" title="Inversores" class="sibling">Inversores</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/navigation/nav_default.html5 -->\n \n <span id="skipNavigation2" class="invisible"></span>\n \n </nav>\n <!-- indexer::continue -->\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_navigation.html5 -->\n \n \t\t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <a id="m-navi-icon" href="#m-navi" onclick="return false;"><i class="fa fa-bars"></i></a>\n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n \t\t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <a id="logo" href="#">BN Automation AG</a>\n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n \t</div>\n </div>\n <div class="custom">\n \t<div id="breadcrumb" class="">\n \t <div class="inside">\n \t\t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_breadcrumb.html5 -->\n \n <!-- indexer::stop -->\n <nav class="mod_breadcrumb block" aria-label="Breadcrumb">\n \n \n <ul>\n <li><a href="/es/inicio.html" title="BN Automation AG">BN Automation AG - Español</a></li>\n <li class="active" aria-current="page">Inicio</li>\n </ul>\n \n </nav>\n <!-- indexer::continue -->\n \n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_breadcrumb.html5 -->\n \n \t </div>\n \t</div>\n </div>\n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n </div>\n \n <div id="wrapper">\n \n \n <div class="custom">\n </div>\n \n \n \n <div id="container">\n \n <main id="main">\n <div class="inside">\n \n <!-- TEMPLATE START: templates/mod_article.html5 -->\n <div class="mod_article block" id="banner">\n \t<div class="inside">\n \t \t\n \t \n <!-- TEMPLATE START: vendor/esit/bnaheader/Resources/contao/templates/ce_bna_header.html5 -->\n <div class="ce_bna_header ce_bnaheader block" id="bna_header" >\n <div class="bna_header_content">\n \n <h2>DESARROLLAMOS Y FABRICAMOS SOLUCIONES PARA LOS <span class="bna_gelb">ÁMBITOS BÁSICOS DE LA VIDA<br></span></h2>\n \n <!-- TEMPLATE START: vendor/esit/bnaheader/Resources/contao/templates/ce_bna_header_links.html5 -->\n <ul class="bna_header_menu">\n <li class="wasser">\n <a href="/es/sectores/agua.html">Agua</a>\n </li>\n <li class="energie">\n <a href="/es/sectores/energia.html">Energía</a>\n </li>\n <li class="industrie">\n <a href="/es/sectores/industria.html">Industria</a>\n </li>\n </ul>\n <!-- TEMPLATE END: vendor/esit/bnaheader/Resources/contao/templates/ce_bna_header_links.html5 -->\n \n \n </div>\n \n \n <!-- TEMPLATE START: vendor/esit/bnaheader/Resources/contao/templates/ce_bna_header_slider.html5 -->\n <div class="bna_header_slider">\n <ul class="slides">\n <li>\n <img src="/assets/images/m/header-branchen-08-d2ndp8q2w50a6vy.jpg" />\n </li>\n <li>\n <img src="/assets/images/a/header_branchen_03-9pxw368zzcvjr46.jpg" />\n </li>\n <li>\n <img src="/assets/images/s/header_branchen_04-x14911azcj0za2x.jpg" />\n </li>\n <li>\n <img src="/assets/images/1/header_branchen_06-xecezz50hp22s04.jpg" />\n </li>\n <li>\n <img src="/assets/images/q/header-automatisierung-sps-fernwirktechnik-qy9nrvrnnz03h9n.jpg" />\n </li>\n <li>\n <img src="/assets/images/b/header-datasolutions-beratung-konzeption-jwz4tvjf3fast26.jpg" />\n </li>\n <li>\n <img src="/assets/images/t/header-datasolutions-produktions-fabrikleitsysteme-qwbz18hzw1mmtgd.jpg" />\n </li>\n <li>\n <img src="/assets/images/d/header-service-bereitschaft-ymd78ffscb0ff80.jpg" />\n </li>\n </ul>\n </div>\n <!-- TEMPLATE END: vendor/esit/bnaheader/Resources/contao/templates/ce_bna_header_slider.html5 -->\n \n </div>\n <!-- TEMPLATE END: vendor/esit/bnaheader/Resources/contao/templates/ce_bna_header.html5 -->\n \t\n \t \t</div>\n </div>\n <!-- TEMPLATE END: templates/mod_article.html5 -->\n \n <!-- TEMPLATE START: templates/mod_article.html5 -->\n <div class="mod_article teaser block" id="article-505">\n \t<div class="inside">\n \t \t\n \t \n \n \n <div class="grid1 content-image"> \n <figure>\n <img src="/assets/images/x/unternehmen-schild-2445pq0wtf44s2r.jpg" alt width="380" height="254">\n \n \n \n </figure>\n </div>\n \n \n \n \n \n \n <div class="grid2 content-text"> \n <h1>Bienvenidos a BN Automation AG</h1>\n \n \n \n \n <div class="rte">\n <p class="bna_einleitung">Somos especialistas en automatización de procesos, soluciones de datos y tecnología de la información y una de las empresas líderes de ingeniería de nuestro sector.</p>\n <p>Con nuestros conocimientos en procesos industriales y una amplia gama de prestaciones, ayudamos a nuestros clientes del sector industrial y del sector de servicios públicos a encontrar respuestas a los desafíos económicos, técnicos y ecológicos. Nos consideramos una empresa prestadora de servicios y como tal nos sentimos comprometidos en lograr un único objetivo: trabajar de una forma que garantice el éxito a nuestros clientes.</p>\n </div>\n \n </div>\n \n \n \n \t\n \t \t</div>\n </div>\n <!-- TEMPLATE END: templates/mod_article.html5 -->\n \n <!-- TEMPLATE START: templates/mod_article.html5 -->\n <div class="mod_article block" id="article-506">\n \t<div class="inside">\n \t \t\n \t \n \n \n \n <h2 class="grid3 content-headline">Referencias seleccionadas</h2>\n \n \n \n \n \n <!-- TEMPLATE START: templates/ce_eyepekachel.html5 -->\n \n \t<div class="ce_kachel_content ce_kachel block">\n \t\n \t\n \t \t\n \t <div class="teaser grid1" style="background-image: url('assets/images/5/4.2.2-DAF_Brasil-dv9z09vjsr1q2n3.jpg');">\n \t <div class="info">\n \t \t <h3>INDUSTRIA DEL AUTOMÓVIL</h3>\n \t \t \t <p class="date">DAF Caminhões, Ponta Grossa, Brasil, Planta de pegado para ventanas de camiones</p>\n \t \t </div>\n \t </div>\n \t\n \t \t <div class="content grid2">\n \t <p><p>La empresa neerlandesa DAF Trucks N.V., una filial de la sociedad norteamericana PACCAR Inc., es un fabricante de vehículos industriales medianos y pesados que opera a escala mundial. En el municipio brasilero de Ponta Grossa situado en el Estado federado de Paraná, DAF ha construido una nueva fábrica de montaje para el mercado sudamericano. BNA suministró el Sistema de Electrotecnia, Medición, Control y Regulación (EMSR) para la planta automática de pegado de parabrisas y ventanas laterales y traseras para la planta de producción de camiones. Además del cuadro de distribución y del sistema de manejo y visualización de la planta a través de panel táctil, BNA suministró también una unidad de control de seguridad.</p></p>\n \t </div>\n \t \t\n \t</div>\n \n \n <!-- TEMPLATE END: templates/ce_eyepekachel.html5 -->\n \n <!-- TEMPLATE START: templates/ce_eyepekachel.html5 -->\n \n \t<div class="ce_kachel_content ce_kachel block">\n \t\n \t\n \t \t\n \t <div class="teaser grid1" style="background-image: url('assets/images/9/4.3.6-Getraenkewerk-Agrozumos-ahpbzxn4536sve9.jpg');">\n \t <div class="info">\n \t \t <h3>FABRICANTE DE BEBIDAS AGROZUMOS</h3>\n \t \t \t <p class="date">Agrozumos SA, Lekunberri, España, Sistema de Gestión de Energía y Datos Operacionales</p>\n \t \t </div>\n \t </div>\n \t\n \t \t <div class="content grid2">\n \t <p><p>Agrozumos, una empresa del grupo Richard Hartinger, produce 180 millones de unidades de zumos de fruta por año para cadenas de distribución internacionales y exporta a diversos países de la UE. BNA suministró el Sistema de Gestión de Energía y Datos Operacionales para Agrozumos. Los servicios prestados incluyeron la integración de los datos de contadores de energía, registradores y máquinas, el suministro del Sistema de Gestión de Datos Operacionales, la implementación de un sistema de informes y los informes según ISO 50001, así como la instalación de un entorno de servidor redundante, totalmente virtualizado.</p></p>\n \t </div>\n \t \t\n \t</div>\n \n \n <!-- TEMPLATE END: templates/ce_eyepekachel.html5 -->\n \n <!-- TEMPLATE START: templates/ce_eyepekachel.html5 -->\n \n \t<div class="ce_kachel_content ce_kachel block">\n \t\n \t\n \t \t\n \t <div class="teaser grid1" style="background-image: url('assets/images/1/2.3.2-WW-Dondelange-vsy3r0wmah72mqm.jpg');">\n \t <div class="info">\n \t \t <h3>CENTRAL ABASTECEDORA DE AGUA, DONDELANGE</h3>\n \t \t \t <p class="date">Syndicat des Eaux du Sud, Luxemburgo, Planta de ultrafiltración de 3 x 200 m³/h</p>\n \t \t </div>\n \t </div>\n \t\n \t \t <div class="content grid2">\n \t <p><p>El "Syndicat des Eaux du Sud" (SES) en Luxemburgo suministra agua potable a 23 ciudades y municipios. En 2012, SES amplió la central de agua de Dondelange, instalando una planta de ultrafiltración de tres vías con una capacidad total de 600 m³/h. BNA suministró los cuadros de distribución y el sistema de control y de mando para la nueva planta y reformó la planta existente sin interrupción del funcionamiento.</p></p>\n \t </div>\n \t \t\n \t</div>\n \n \n <!-- TEMPLATE END: templates/ce_eyepekachel.html5 -->\n \t\n \t \t</div>\n </div>\n <!-- TEMPLATE END: templates/mod_article.html5 -->\n \n <!-- TEMPLATE START: templates/mod_article.html5 -->\n <div class="mod_article block" id="article-1416">\n \t<div class="inside">\n \t \t\n \t \n \n \n \n <h2 class="grid3 clearfix content-headline">Productos y soluciones</h2>\n \n \n \n \n \t\n \t \t</div>\n </div>\n <!-- TEMPLATE END: templates/mod_article.html5 -->\n \n <!-- TEMPLATE START: templates/mod_article.html5 -->\n <div class="mod_article flexslider block" id="slider">\n \t<div class="inside">\n \t \t\n \t \n \n \n <div class="content-text media media--left"> \n <figure>\n <img src="/assets/images/n/slider-produkte-loesungen-01-2y5bd67ec56r5py.jpg" alt width="600" height="380">\n \n \n \n </figure>\n \n \n <div class="rte">\n <h3>MIGRACIÓN POR EL ESPECIALISTA</h3>\n <p class="bna_einleitung">La modernización del sistema eléctrico y de automatización de una planta supone un gran desafío.</p>\n <p>¿Están trabajando todavía con sistemas como Contronic P, Teleperm M, Siemens ASX/LSX o SIMATIC S5 y están planificando implementar una tecnología nueva? ¡Entonces pónganse en contacto con nosotros! Disponemos de conceptos de migración probados que permiten conservar los conocimientos técnicos de la planta, aprovechando a la vez el potencial de la nueva tecnología.</p>\n <p class="more"><a title="Migración" href="/es/productos-y-soluciones/bn-automatizacion/migracion.html">Más detalles</a></p>\n </div>\n \n </div>\n \n \n \n \n \n \n <div class="content-text media media--left"> \n <figure>\n <img src="/assets/images/s/slider-produkte-loesungen-02-9mtqnqyprkbpq9s.jpg" alt width="600" height="380">\n \n \n \n </figure>\n \n \n <div class="rte">\n <h3>ASÍ LOS DATOS SE CONVIERTEN EN INFORMACIÓN</h3>\n <p class="bna_einleitung">Las fábricas digitalizadas, la producción "ajustada" y procesos empresariales óptimos exigen sistemas de información modernos.</p>\n <p>Nuestros especialistas se encargan de integrar sus datos a nivel horizontal y vertical. Esto permite analizar los datos de energía, de consumo y de producción, generando índices y optimizando a la vez la gestión de mantenimiento o controlando en tiempo real la producción con ayuda de un sistema de gestión de fábrica o de ejecución de manufactura (MES).</p>\n <p class="more"><a title="BN DataSolutions" href="/es/productos-y-soluciones/bn-datasolutions.html">Más detalles</a></p>\n </div>\n \n </div>\n \n \n \n \n \n \n <div class="content-text media media--left"> \n <figure>\n <img src="/assets/images/j/slider-produkte-loesungen-03-gc9p2xczcfxfvwn.jpg" alt width="600" height="400">\n \n \n \n </figure>\n \n \n <div class="rte">\n <h3>UN SOFTWARE, MUCHAS APLICACIONES</h3>\n <p class="bna_einleitung">Las soluciones de software de BNA construyen un puente entre el nivel de control de procesos y el nivel de gestión empresarial. Son la base ideal para un sistema de ejecución de manufactura (MES), de recogida de datos operacionales (BDE) o de mantenimiento.</p>\n <p>Ya se trate de archivar datos de proceso, de crear protocolos según las especificaciones de la Asociación Técnica Alemana de Aguas Residuales (ATV), de analizar la eficiencia general de los equipos (OEE) o de generar informes de energía mensuales – el software TIBS de BNA permite poner los datos más diversos en común en una plataforma central, con el fin de poner a la disposición del cliente exactamente los datos que éste precisa.</p>\n <p class="more"><a title="BN Software" href="/es/productos-y-soluciones/bn-software.html">Más detalles</a></p>\n </div>\n \n </div>\n \n \n \n \n \n \n <div class="content-text media media--left"> \n <figure>\n <img src="/assets/images/e/slider-produkte-loesungen-04-qj0ckdgy974s6ce.jpg" alt width="600" height="380">\n \n \n \n </figure>\n \n \n <div class="rte">\n <h3>SEGURIDAD INFORMÁTICA PARA EMPRESAS</h3>\n <p class="bna_einleitung">La Ley de seguridad informática obliga los operadores de Infraestructuras Críticas a proteger la capacidad de funcionamiento de los sistemas de información esenciales.</p>\n <p>Esto afecta a muchas empresas del sector de abastecimiento y eliminación de residuos. Como miembro de la alianza a favor de la ciberseguridad y del grupo de trabajo de DWA/ DVGW (Asociación Alemana del Agua, Aguas Residuales y Residuos/ Asociación Alemana del Sector de Gas y Agua), estamos familiarizados con las recomendaciones del sector y ofrecemos un amplio asesoramiento.</p>\n <p class="more"><a title="BN Tecnología de información" href="/es/productos-y-soluciones/bn-tecnologia-de-informacion.html">Más detalles</a></p>\n </div>\n \n </div>\n \n \n \n \n \n \n <div class="content-text media media--left"> \n <figure>\n <img src="/assets/images/r/slider-produkte-loesungen-05-wwqphbxj2s5wym0.jpg" alt width="600" height="380">\n \n \n \n </figure>\n \n \n <div class="rte">\n <h3>NUESTROS SERVICIOS PROTEGEN SUS INVERSIONES</h3>\n <p class="bna_einleitung">En el área de Servicios son las personas las que deciden. Por lo tanto, nuestras múltiples prestaciones de mantenimiento y servicio están bajo la responsabilidad de un equipo de mantenimiento bien preparado.</p>\n <p>Con conocimientos especializados en todos los niveles de una solución de automatización, servicio de disponibilidad 24x7, tiempo de respuesta garantizado o gestión de piezas de recambio, nos ajustamos totalmente a sus necesidades individuales en el caso de mantenimientos preventivos o cuando haya fallado una de sus plantas.</p>\n <p class="more"><a title="Servicios" href="/es/servicios.html">Más detalles</a></p>\n </div>\n \n </div>\n \n \n \n \t\n \t \t</div>\n </div>\n <!-- TEMPLATE END: templates/mod_article.html5 -->\n </div>\n </main>\n \n \n \n </div>\n \n \n <footer id="footer">\n <div class="inside">\n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n \n \n \n \t<a id="footer-logo" href="http://www.bn-automation.com/es/">\n \t\tBN Automation AG\n \t</a>\n \t<p id="footer-adresse">\n \t\tBN Automation AG<br>\n \t\tGewerbepark “Am Wald” 5a<br>\n \t\t98693 Ilmenau – Alemania<br>\n \t</p>\n \t<p id="footer-kontakt">\n \t\tTeléfono: +49 3677 855-0<br>\n \t\tFax: +49 3677 855-599<br>\n \t\t<a href="mailto:info@bn-automation.de">info@bn-automation.de</a><br>\n \t</p>\n \t\n \t\n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_customnav.html5 -->\n \n <!-- indexer::stop -->\n <nav class="mod_customnav block" id="footernavi">\n \n \n <a href="/es/inicio.html#skipNavigation20" class="invisible">Saltar navegación</a>\n \n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/navigation/nav_default.html5 -->\n \n <ul class="level_1">\n <li><a href="/es/terminos-y-condiciones.html" title="Términos y condiciones">Términos y condiciones</a></li>\n <li><a href="/es/contacto.html" title="Contacto">Contacto</a></li>\n <li><a href="/es/como-llegar.html" title="Cómo llegar">Cómo llegar</a></li>\n <li><a href="/es/mapa-del-sitio.html" title="Mapa del sitio">Mapa del sitio</a></li>\n <li><a href="/es/pie-de-imprenta.html" title="Pie de imprenta">Pie de imprenta</a></li>\n <li><a href="/es/declaracion-de-proteccion-de-datos.html" title="Declaración de protección de datos">Declaración de protección de datos</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/navigation/nav_default.html5 -->\n \n <span id="skipNavigation20" class="invisible"></span>\n \n </nav>\n <!-- indexer::continue -->\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_customnav.html5 -->\n \n \t\n \n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <div class="bna-social-icons">\n \t<a href="https://instagram.com/bnautomationag" target="_blank" rel="noopener noreferrer">\n \t\t<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg>\n \t</a>\n \t<a href="https://www.facebook.com/BN-Automation-AG-141223772981995/" target="_blank" rel="noopener noreferrer">\n \t\t\t<svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="facebook-square" class="svg-inline--fa bna-facebook" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="#FFFFFF" d="M400 32H48A48 48 0 0 0 0 80v352a48 48 0 0 0 48 48h137.25V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14 0 55.52 4.84 55.52 4.84v61h-31.27c-30.81 0-40.42 19.12-40.42 38.73V256h68.78l-11 71.69h-57.78V480H400a48 48 0 0 0 48-48V80a48 48 0 0 0-48-48z"></path></svg>\n \t</a>\n \t<a href="https://www.youtube.com/channel/UCCLtXa7nbbMRLeAbv7RB5JQ" target="_blank" rel="noopener noreferrer">\n \t\t<svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="youtube" class="svg-inline--fa bna-youtube" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="#FFFFFF" d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"></path></svg>\n \t</a>\n \t<!--<a href="https://www.xing.com/companies/bnautomationag" target="_blank" rel="noopener noreferrer">\n \t\t\t{{file::svg_icon_xing.html5}}\n \t</a>-->\n \t<a href="https://de.linkedin.com/company/bn-automation-ag" target="_blank" rel="noopener noreferrer">\n \t<svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="youtube" class="svg-inline--fa bna-youtube" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 250 250"><path d="M250 18.02v213.96c0 9.928-8.033 18.02-17.857 18.02H17.799C7.975 250 0 241.908 0 231.98V18.02C0 8.092 7.975 0 17.799 0h214.344C241.967 0 250 8.092 250 18.02ZM78.52 57.199c0-11.835-9.661-21.484-21.484-21.484-11.893 0-21.484 9.649-21.484 21.484s9.591 21.484 21.484 21.484S78.52 69.08 78.52 57.199Zm-2.906 157.087V94.983H38.505v119.303h37.109Zm138.835-65.406c0-32.134-6.975-56.862-44.468-56.862-18.032 0-30.134 9.882-35.098 19.252h-.512V94.982h-35.54v119.303h37.051v-59.036c0-15.578 2.953-30.645 22.263-30.645 18.973 0 19.252 17.811 19.252 31.645v58.036h37.051v-65.406Z" fill="#fff"/></svg>\n \t</a>\n \n </div>\n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/modules/mod_html.html5 -->\n \n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/mod_mmenu.html5 -->\n \n <!-- indexer::stop -->\n <nav class="mod_mmenu m-navi" id="m-navi">\n \n \n \n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_1">\n <li class="submenu sibling"><a href="/es/empresa.html" title="Empresa" class="submenu sibling" aria-haspopup="true">Empresa</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_2">\n <li><a href="/es/empresa/emplazamiento.html" title="Emplazamiento">Emplazamiento</a></li>\n <li><a href="/es/empresa/direccion.html" title="Dirección">Dirección</a></li>\n <li><a href="/es/empresa/socios-y-certificaciones.html" title="Socios y certificaciones">Socios y certificaciones</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu sibling"><a href="/es/sectores.html" title="Sectores" class="submenu sibling" aria-haspopup="true">Sectores</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_2">\n <li class="submenu wasser"><a href="/es/sectores/agua.html" title="Agua" class="submenu wasser" aria-haspopup="true">Agua</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/sectores/agua/aguas-residuales-municipales.html" title="Aguas residuales municipales">Aguas residuales municipales</a></li>\n <li><a href="/es/sectores/agua/aguas-residuales-industriales.html" title="Aguas residuales industriales">Aguas residuales industriales</a></li>\n <li><a href="/es/sectores/agua/agua-potable-municipal.html" title="Agua potable municipal">Agua potable municipal</a></li>\n <li><a href="/es/sectores/agua/agua-de-proceso-y-agua-ultrapura.html" title="Agua de proceso y Agua ultrapura">Agua de proceso y Agua ultrapura</a></li>\n <li><a href="/es/sectores/agua/piscinas.html" title="Piscinas">Piscinas</a></li>\n <li><a href="/es/sectores/agua/presas.html" title="Presas">Presas</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu energie"><a href="/es/sectores/energia.html" title="Energía" class="submenu energie" aria-haspopup="true">Energía</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/sectores/energia/centrales-electricas-con-turbinas-de-gas-y-de-vapor.html" title="Centrales eléctricas con turbinas de gas y de vapor">Centrales eléctricas con turbinas de gas y de vapor</a></li>\n <li><a href="/es/sectores/energia/centrales-termicas-de-calefaccion-y-plantas-de-cogeneracion.html" title="Centrales térmicas de calefacción y Plantas de cogeneración">Centrales térmicas de calefacción y Plantas de cogeneración</a></li>\n <li><a href="/es/sectores/energia/plantas-de-biogas.html" title="Plantas de biogás">Plantas de biogás</a></li>\n <li><a href="/es/sectores/energia/calor-y-frio.html" title="Calor y Frío">Calor y Frío</a></li>\n <li><a href="/es/sectores/energia/infraestructura-industrial.html" title="Infraestructura industrial">Infraestructura industrial</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu industrie"><a href="/es/sectores/industria.html" title="Industria" class="submenu industrie" aria-haspopup="true">Industria</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/sectores/industria/automatizacion-de-procesos.html" title="Automatización de procesos">Automatización de procesos</a></li>\n <li><a href="/es/sectores/industria/automatizacion-de-fabricas.html" title="Automatización de fábricas">Automatización de fábricas</a></li>\n <li><a href="/es/sectores/industria/gestion-de-datos-operacionales-y-sistemas-de-gestion-de-fabrica.html" title="Gestión de Datos Operacionales y Sistemas de Gestión de Fábrica">Gestión de Datos Operacionales y Sistemas de Gestión de Fábrica</a></li>\n <li><a href="/es/sectores/industria/infraestructura-industrial.html" title="Infraestructura industrial">Infraestructura industrial</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu sibling"><a href="/es/productos-y-soluciones.html" title="Productos y soluciones" class="submenu sibling" aria-haspopup="true">Productos y soluciones</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_2">\n <li class="submenu"><a href="/es/productos-y-soluciones/bn-automatizacion.html" title="BN Automatización" class="submenu" aria-haspopup="true">BN Automatización</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/asesoramiento-ingenieria-basica-e-ingenieria-de-detalle.html" title="Asesoramiento, Ingeniería básica e Ingeniería de detalle">Asesoramiento, Ingeniería básica e Ingeniería de detalle</a></li>\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/instrumentacion-de-procesos.html" title="Instrumentación de procesos">Instrumentación de procesos</a></li>\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/plc-y-scada.html" title="PLC y SCADA">PLC y SCADA</a></li>\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/ingenieria-de-control-de-procesos.html" title="Ingeniería de control de procesos">Ingeniería de control de procesos</a></li>\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/telecontrol.html" title="Telecontrol">Telecontrol</a></li>\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/seguridad.html" title="Seguridad">Seguridad</a></li>\n <li><a href="/es/productos-y-soluciones/bn-automatizacion/migracion.html" title="Migración">Migración</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu"><a href="/es/productos-y-soluciones/bn-datasolutions.html" title="BN DataSolutions" class="submenu" aria-haspopup="true">BN DataSolutions</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/productos-y-soluciones/bn-datasolutions/asesoramiento-y-concepcion.html" title="Asesoramiento y concepción">Asesoramiento y concepción</a></li>\n <li><a href="/es/productos-y-soluciones/bn-datasolutions/gestion-de-energia.html" title="Gestión de energía">Gestión de energía</a></li>\n <li><a href="/es/productos-y-soluciones/bn-datasolutions/gestion-de-datos-operacionales.html" title="Gestión de Datos Operacionales">Gestión de Datos Operacionales</a></li>\n <li><a href="/es/productos-y-soluciones/bn-datasolutions/gestion-de-mantenimiento.html" title="Gestión de Mantenimiento">Gestión de Mantenimiento</a></li>\n <li><a href="/es/productos-y-soluciones/bn-datasolutions/sistemas-de-ejecucion-de-manufactura.html" title="Sistemas de Ejecución de Manufactura">Sistemas de Ejecución de Manufactura</a></li>\n <li><a href="/es/productos-y-soluciones/bn-datasolutions/sistemas-de-gestion-de-produccion-y-de-fabrica.html" title="Sistemas de Gestión de Producción y de Fábrica">Sistemas de Gestión de Producción y de Fábrica</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu"><a href="/es/productos-y-soluciones/bn-software.html" title="BN Software" class="submenu" aria-haspopup="true">BN Software</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/productos-y-soluciones/bn-software/anexio-r.html" title="anexio®">anexio®</a></li>\n <li><a href="/es/productos-y-soluciones/bn-software/tibs-sistema-tecnico-de-informacion-y-operacion.html" title="TIBS – Sistema Técnico de Información y Operación">TIBS – Sistema Técnico de Información y Operación</a></li>\n <li><a href="/es/productos-y-soluciones/bn-software/anexio-mantenimiento.html" title="anexio® Mantenimiento">anexio® Mantenimiento</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu"><a href="/es/productos-y-soluciones/bn-electrotecnia.html" title="BN Electrotecnia" class="submenu" aria-haspopup="true">BN Electrotecnia</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/productos-y-soluciones/bn-electrotecnia/configuracion-electrica.html" title="Configuración eléctrica">Configuración eléctrica</a></li>\n <li><a href="/es/productos-y-soluciones/bn-electrotecnia/construccion-de-cuadros-de-distribucion.html" title="Construcción de cuadros de distribución">Construcción de cuadros de distribución</a></li>\n <li><a href="/es/productos-y-soluciones/bn-electrotecnia/direccion-de-obras-y-montajes.html" title="Dirección de obras y montajes">Dirección de obras y montajes</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu"><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion.html" title="BN Tecnología de información" class="submenu" aria-haspopup="true">BN Tecnología de información</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion/infraestructura-de-ti.html" title="Infraestructura de TI">Infraestructura de TI</a></li>\n <li><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion/seguridad-de-ti.html" title="Seguridad de TI">Seguridad de TI</a></li>\n <li><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion/soluciones-de-comunicacion.html" title="Soluciones de comunicación">Soluciones de comunicación</a></li>\n <li><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion/servicio-y-soporte-de-ti.html" title="Servicio y soporte de TI">Servicio y soporte de TI</a></li>\n <li><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion/socios-y-productos.html" title="Socios y productos">Socios y productos</a></li>\n <li><a href="/es/productos-y-soluciones/bn-tecnologia-de-informacion/referencias.html" title="Referencias">Referencias</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li><a href="/es/productos-y-soluciones/bn-formacion-y-entrenamiento.html" title="BN Formación y entrenamiento">BN Formación y entrenamiento</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu sibling"><a href="/es/servicios.html" title="Servicios" class="submenu sibling" aria-haspopup="true">Servicios</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_2">\n <li><a href="/es/servicios/gestion-de-ciclo-de-vida.html" title="Gestión de ciclo de vida">Gestión de ciclo de vida</a></li>\n <li><a href="/es/servicios/mantenimiento-y-servicio-tecnico.html" title="Mantenimiento y servicio técnico">Mantenimiento y servicio técnico</a></li>\n <li><a href="/es/servicios/disponibilidad-24x7.html" title="Disponibilidad 24x7">Disponibilidad 24x7</a></li>\n <li><a href="/es/servicios/mantenimiento-remoto.html" title="Mantenimiento remoto">Mantenimiento remoto</a></li>\n <li><a href="/es/servicios/transferencia-de-datos.html" title="Transferencia de datos">Transferencia de datos</a></li>\n <li><a href="/es/servicios/contacto.html" title="Contacto">Contacto</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu sibling"><a href="/es/carrera.html" title="Carrera" class="submenu sibling" aria-haspopup="true">Carrera</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_2">\n <li><a href="/es/carrera/puestos-de-trabajo.html" title="Puestos de trabajo">Puestos de trabajo</a></li>\n <li><a href="/es/carrera/ofertas-para-alumnos-h-m-d.html" title="Ofertas para alumnos (h/m/d)">Ofertas para alumnos (h/m/d)</a></li>\n <li><a href="/es/carrera/ofertas-para-estudiantes-de-escuela-superior-h-m-d.html" title="Ofertas para estudiantes de escuela superior (h/m/d)">Ofertas para estudiantes de escuela superior (h/m/d)</a></li>\n <li><a href="/es/carrera/el-proceso-de-solicitud.html" title="El proceso de solicitud">El proceso de solicitud</a></li>\n <li class="submenu"><a href="/es/carrera/mas-sobre-nosotros.html" title="Más sobre nosotros" class="submenu" aria-haspopup="true">Más sobre nosotros</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/carrera/mas-sobre-nosotros/vivir-y-trabajar-en-ilmenau-y-bergheim.html" title="Vivir y trabajar en Ilmenau y Bergheim">Vivir y trabajar en Ilmenau y Bergheim</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li><a href="/es/carrera/bna-como-empleador.html" title="BNA como empleador">BNA como empleador</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li class="submenu sibling"><a href="/es/inversores.html" title="Inversores" class="submenu sibling" aria-haspopup="true">Inversores</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_2">\n <li class="submenu"><a href="/es/inversores/accion-y-empresa.html" title="Acción y Empresa" class="submenu" aria-haspopup="true">Acción y Empresa</a>\n <!-- TEMPLATE START: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n <ul class="level_3">\n <li><a href="/es/inversores/accion-y-empresa/la-empresa.html" title="La Empresa">La Empresa</a></li>\n <li><a href="/es/inversores/accion-y-empresa/la-accion.html" title="La acción">La acción</a></li>\n <li><a href="/es/inversores/accion-y-empresa/los-accionistas.html" title="Los accionistas">Los accionistas</a></li>\n <li><a href="/es/inversores/accion-y-empresa/los-dividendos.html" title="Los dividendos">Los dividendos</a></li>\n <li><a href="/es/inversores/accion-y-empresa/el-consejo-de-vigilancia.html" title="El Consejo de Vigilancia">El Consejo de Vigilancia</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n <li><a href="/es/inversores/estados-financieros.html" title="Estados financieros">Estados financieros</a></li>\n <li><a href="/es/inversores/comprar-y-vender.html" title="Comprar y vender">Comprar y vender</a></li>\n <li><a href="/es/inversores/contacto.html" title="Contacto">Contacto</a></li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n </li>\n </ul>\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/nav_mmenu.html5 -->\n \n </nav>\n <!-- indexer::continue -->\n \n <!-- TEMPLATE END: vendor/dklemmt/contao_dk_mmenu/contao/templates/mod_mmenu.html5 -->\n </div>\n </footer>\n \n </div>\n \n \n \n <!-- TEMPLATE START: templates/j_accordion.html5 -->\n \r\n <script src="/assets/jquery-ui/js/jquery-ui.min.js?v=1.13.2"></script>\r\n <script>\r\n jQuery(function($) {\r\n $(document).accordion({\r\n // Put custom options here\r\n heightStyle: 'content',\r\n header: '.toggler',\r\n collapsible: true,\r\n active: false, // Accordion immer geschlossen - eyepe.de 2014-11-13\r\n create: function(event, ui) {\r\n ui.header.addClass('active');\r\n $('.toggler').attr('tabindex', 0);\r\n },\r\n activate: function(event, ui) {\r\n ui.newHeader.addClass('active');\r\n ui.oldHeader.removeClass('active');\r\n $('.toggler').attr('tabindex', 0);\r\n }\r\n });\r\n });\r\n </script>\r\n \n <!-- TEMPLATE END: templates/j_accordion.html5 -->\n \n <!-- TEMPLATE START: vendor/contao/core-bundle/contao/templates/jquery/j_colorbox.html5 -->\n \n <script src="/assets/colorbox/js/colorbox.min.js?v=1.6.4.2"></script>\n <script>\n jQuery(function($) {\n $('a[data-lightbox]').map(function() {\n $(this).colorbox({\n // Put custom options here\n loop: false,\n rel: $(this).attr('data-lightbox'),\n maxWidth: '95%',\n maxHeight: '95%'\n });\n });\n });\n </script>\n \n <!-- TEMPLATE END: vendor/contao/core-bundle/contao/templates/jquery/j_colorbox.html5 -->\n \n <!-- TEMPLATE START: templates/j_toggle_element.html5 -->\n <script>\n $(function() {\n \tif ($('.ce_kachel_content').length > 1) {\n \t\tvar timeout = 200;\n \t\t$('.ce_kachel_content').each(function(i) { $(this).attr('id', i+1); });\n \t\tfunction predev(a, b) {\n \t\t if ($('#'+a).hasClass('active')) {\n \t\t \tsetTimeout(function() {\n \t\t\t if (a%3 === 0) $('#'+(a-1)+',#'+(a-2)).insertBefore('#'+a);\n \t\t\t else if ((a+1)%3 === 0) $('#'+(a-1)).insertBefore('#'+a);\n \t }, (b?timeout:0));\n \t\t } else {\n \t\t\tif (a%3 === 0) $('#'+(a-1)+',#'+(a-2)).insertAfter('#'+a);\n \t\t\telse if ((a+1)%3 === 0) $('#'+(a-1)).insertAfter('#'+a);\n \t\t }\n \t\t}\n \t\tfunction sorting() {\n \t\t $('.ce_kachel_content').sort(function (a, b) {\n \t\t return parseInt(a.id) > parseInt(b.id);\n \t\t }).each(function () {\n \t\t var elem = $(this);\n \t\t elem.remove();\n \t\t $(elem).appendTo($('.ce_kachel_content').parent());\n \t\t }); \n \t\t}\n \t var $window = $(window);\n \t function getwidth() { sorting();\n \t var windowsize = $window.width();\n \t\t if (windowsize > 760) {\n \t\t\t$('.ce_kachel_content').unbind("click").removeClass('active').click(function() {\n \t\t\t cek_id = parseInt($(this).attr('id'));\n \t\t\t actives = $(this).siblings('.active'); console.log(actives);\n \t\t\t if (actives.length) predev(actives.attr('id'), 0);\n \t\t\t //if(cek_id%4 !== 0 && cek_id !== 1) predev(cek_id, 1);\n \t\t\t if(cek_id%3 !== 1) predev(cek_id, 1);\n \t\t\t $(this).toggleClass('active').siblings().removeClass('active');\n \t\t\t});\n \t\t } else {\n \t\t\t$('.ce_kachel_content').unbind("click").removeClass('active').click(function() {\n \t $(this).toggleClass('active').siblings().removeClass('active');\n \t\t\t});\n \t\t }\n \t }\n \t getwidth();\n \t $(window).resize(getwidth);\n \t} else {\n \t\t$('.ce_kachel_content').unbind("click").removeClass('active').click(function() {\n \t\t\t$(this).toggleClass('active');\n \t\t});\n \t}\n });\n </script>\n <!-- TEMPLATE END: templates/j_toggle_element.html5 -->\n \n <!-- TEMPLATE START: vendor/hofff/contao-consent-google-tag-manager/src/Resources/contao/templates/hofff_consent_google_tag_manager.html5 -->\n <script type="application/json" id="hofff-consent-google-tag-manager">\n {"script":null}</script>\n \n <!-- TEMPLATE END: vendor/hofff/contao-consent-google-tag-manager/src/Resources/contao/templates/hofff_consent_google_tag_manager.html5 -->\n \n <!-- TEMPLATE START: templates/mmenu_default.html5 -->\n <script>\n document.addEventListener(\n "DOMContentLoaded", function () {\n const menu = document.querySelector('#m-navi');\n if (null !== menu && 0 === menu.querySelectorAll('li.active').length) {\n const trails = menu.querySelectorAll('li.trail');\n if (0 < trails.length) {\n trails.item(trails.length - 1).classList.add('active');\n }\n }\n new Mmenu('#m-navi', {"navbar":{"title":"Menu"},"offCanvas":{"position":"left"},"theme":"light"}, {"classNames":{"selected":"active"},"offCanvas":{"page":{"selector":"#wrapper"}}});\n \n // blocker = Menü schließen Element\n const blocker = document.querySelector('.mm-blocker');\n \n // Verhindere, dass Link geklickt werden kann -> lädt Seite sonst neu \n if (blocker) {\n blocker.addEventListener('click', function(event) {\n event.preventDefault();\n })\n }\n }\n );\n </script>\n \n <!-- TEMPLATE END: templates/mmenu_default.html5 -->\n \n <script src="files/themes/bna/js/jquery.flexslider-min.js"></script>\n <script src="files/themes/bna/js/highcharts.js"></script>\n \n <script>\n $('#search-button').on('click',function() {\n $('#search-input').toggleClass('active'); // add the class to the element that's clicked.\n });\n </script>\n \n <script>\n $( ".ce_kachel_white" ).on('click',function() {\n $( this ).toggleClass( "active" ).siblings().removeClass('active');\n });\n </script>\n \n <script type="text/javascript">\n \t$(window).on('load',function() {\n \t $('.gallery-slider').flexslider({\n \t animation: "slide"\n \t });\n \t});\n </script>\n \n <script type="text/javascript">\n \t$(window).on('load',function() {\n \t $('#slider').flexslider({\n \t \tselector: ".inside > .content-text",\n \t \tmaxItems: 0, \n \t animation: "slide",\n \t slideshowSpeed: 7000,\n \t animationSpeed: 700,\n \t keyboard: false\n \t });\n \t});\n </script>\n \n <script>\n \t// Can also be used with $(document).ready()\n \t$(window).on('load',function() {\n \t $('.bna_header_slider').flexslider({\n \t\t slideshowSpeed: 6000, //Integer: Set the speed of the slideshow cycling, in milliseconds\n \t\t animationSpeed: 700, //Integer: Set the speed of animations, in milliseconds\n \t\t animation: "fade",\n \t\t keyboard: false, //Boolean: Allow slider navigating via keyboard left/right keys\n \t\t controlNav: false, //Boolean: Create navigation for paging control of each clide? Note: Leave true for manualControls usage\n \t\t directionNav: false //Boolean: Create navigation for previous/next navigation? (true/false)\n \t });\n \t});\n </script>\n <script>\n $(document).on("scroll",function(){\n if($(document).scrollTop()>20)\n {\n $("body").addClass("small");\n $("#breadcrumb").addClass("small");\n } \n else\n {\n $("body").removeClass("small");\n $("#breadcrumb").removeClass("small");\n }\n });\n </script>\n <script type="application/ld+json">\n {\n "@context": "https:\/\/schema.org",\n "@graph": [\n {\n "@type": "WebPage"\n },\n {\n "@id": "#\/schema\/image\/d88ca667-d863-11e4-9e35-485b39158971",\n "@type": "ImageObject",\n "contentUrl": "\/assets\/images\/x\/unternehmen-schild-2445pq0wtf44s2r.jpg"\n },\n {\n "@id": "#\/schema\/image\/b8ee1c97-cd81-11e4-aa6f-485b39158971",\n "@type": "ImageObject",\n "contentUrl": "\/assets\/images\/n\/slider-produkte-loesungen-01-2y5bd67ec56r5py.jpg"\n },\n {\n "@id": "#\/schema\/image\/b8ee1c8b-cd81-11e4-aa6f-485b39158971",\n "@type": "ImageObject",\n "contentUrl": "\/assets\/images\/s\/slider-produkte-loesungen-02-9mtqnqyprkbpq9s.jpg"\n },\n {\n "@id": "#\/schema\/image\/b8ee1c82-cd81-11e4-aa6f-485b39158971",\n "@type": "ImageObject",\n "contentUrl": "\/assets\/images\/j\/slider-produkte-loesungen-03-gc9p2xczcfxfvwn.jpg"\n },\n {\n "@id": "#\/schema\/image\/b8ee1c77-cd81-11e4-aa6f-485b39158971",\n "@type": "ImageObject",\n "contentUrl": "\/assets\/images\/e\/slider-produkte-loesungen-04-qj0ckdgy974s6ce.jpg"\n },\n {\n "@id": "#\/schema\/image\/b8ee1c6e-cd81-11e4-aa6f-485b39158971",\n "@type": "ImageObject",\n "contentUrl": "\/assets\/images\/r\/slider-produkte-loesungen-05-wwqphbxj2s5wym0.jpg"\n },\n {\n "@type": "BreadcrumbList",\n "itemListElement": [\n {\n "@type": "ListItem",\n "item": {\n "@id": "\/es\/inicio.html",\n "name": "BN Automation AG - Español"\n },\n "position": 1\n },\n {\n "@type": "ListItem",\n "item": {\n "@id": "\/es\/inicio.html",\n "name": "Inicio"\n },\n "position": 2\n }\n ]\n }\n ]\n }\n </script>\n <script type="application/ld+json">\n {\n "@context": "https:\/\/schema.contao.org",\n "@graph": [\n {\n "@type": "Page",\n "fePreview": false,\n "groups": [],\n "noSearch": false,\n "pageId": 197,\n "protected": false,\n "title": "Inicio"\n }\n ]\n }\n </script>\n <div id="sfwdt8be478" class="sf-toolbar sf-display-none" role="region" aria-label="Symfony Web Debug Toolbar"> <!-- START of Symfony Web Debug Toolbar --><div id="sfMiniToolbar-8be478" class="sf-minitoolbar" data-no-turbolink data-turbo="false"> <button type="button" title="Show Symfony toolbar" id="sfToolbarMiniToggler-8be478" accesskey="D" aria-expanded="false" aria-controls="sfToolbarMainContent-8be478"> <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-8be478" class="sf-toolbar-clearer"></div><div id="sfToolbarMainContent-8be478" 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://devmonotomic-gb.bn-automation.de/_profiler/8be478?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-8be478"></span> </div> <div class="sf-toolbar-info-piece"> <b> <button class="sf-cancel-button" type="button" id="sfLoadCancel-8be478" title="Cancel loading">Cancel</button> </b> </div> </div></div> <button class="hide-button" type="button" id="sfToolbarHideButton-8be478" title="Close Toolbar" accesskey="D" aria-expanded="true" aria-controls="sfToolbarMainContent-8be478"> <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="d69dbfd3637761f429d67d72db15dbd5"> .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="7bdcd8da0d445438acc06f32bc801ecf">/*<![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; } } } 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\/\/devmonotomic\u002Dgb.bn\u002Dautomation.de')) { path = url.slice(40); } 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, '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, '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\/\/devmonotomic\u002Dgb.bn\u002Dautomation.de\/_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\/\/devmonotomic\u002Dgb.bn\u002Dautomation.de\/_profiler\/' + newToken + '">Open the web profiler.</a>\ </div>\ '; sfwdt.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('8be478');/*]]>*/</script>\n </body>\n </html>\n <!-- TEMPLATE END: templates/fe_page.html5 -->\n """ } -action: "delete" } |
| Envelope stamps when dispatching | No items |
| Envelope stamps after dispatch |
Symfony\Component\Messenger\Stamp\BusNameStamp {#12071 -busName: "messenger.bus.default" } Symfony\Component\Messenger\Stamp\SentStamp {#12172 -senderClass: "Symfony\Component\Messenger\Bridge\Doctrine\Transport\DoctrineTransport" -senderAlias: "contao_prio_low" } Symfony\Component\Messenger\Stamp\TransportMessageIdStamp {#12198 -id: "81949" } |