{"id":1588,"date":"2025-03-09T14:56:26","date_gmt":"2025-03-09T14:56:26","guid":{"rendered":"https:\/\/msbliefert.eu\/?page_id=1588"},"modified":"2026-06-04T06:21:46","modified_gmt":"2026-06-04T06:21:46","slug":"magdeburg-start","status":"publish","type":"page","link":"https:\/\/msbliefert.eu\/magdeburg-start\/","title":{"rendered":"Magdeburg"},"content":{"rendered":"\n<h2 class=\"wp-block-heading has-text-align-center has-gray-color has-text-color has-link-color has-large-font-size wp-elements-a57fa790b6446b72a31cb92eee1f32f5\"><strong>Elbe-Pegel<\/strong><\/h2>\n\n\n<div id=\"pegel-widget-magdeburg-reverse\" style=\"all: initial; display: block; font-family: sans-serif;\">\r\n    <style>\r\n        .pegel-box {\r\n            max-width: 650px;\r\n            margin: 10px auto;\r\n            padding: 15px;\r\n            background: #fff;\r\n            border-radius: 12px;\r\n            box-shadow: 0 4px 15px rgba(0,0,0,0.1);\r\n            border: 1px solid #eee;\r\n        }\r\n        .pegel-header { text-align: center; margin-bottom: 10px; }\r\n        .pegel-title { font-size: 18px; font-weight: bold; color: #333; }\r\n        .pegel-main { display: flex; align-items: center; justify-content: center; gap: 15px; margin-top: 5px; }\r\n        .pegel-num { font-size: 36px; font-weight: 900; color: #004488; }\r\n        .pegel-arrow { font-size: 32px; }\r\n        .up { color: #27ae60; } .down { color: #e74c3c; } .stable { color: #95a5a6; }\r\n        .pegel-info { text-align: center; font-size: 11px; color: #888; margin-bottom: 15px; }\r\n\r\n        .chart-scroll-container {\r\n            width: 100%;\r\n            overflow-x: auto;\r\n            -webkit-overflow-scrolling: touch;\r\n            border: 1px solid #f0f0f0;\r\n            border-radius: 8px;\r\n        }\r\n        .chart-inner-canvas {\r\n            min-width: 800px;\r\n            height: 300px;\r\n            position: relative;\r\n        }\r\n    <\/style>\r\n\r\n    <div class=\"pegel-box\">\r\n        <div class=\"pegel-header\">\r\n            <div class=\"pegel-title\">Magdeburg Strombr\u00fccke<\/div>\r\n            <div class=\"pegel-main\">\r\n                <span id=\"p-wert-rev\" class=\"pegel-num\">--<\/span>\r\n                <span id=\"p-pfeil-rev\" class=\"pegel-arrow\"><\/span>\r\n            <\/div>\r\n            <div id=\"p-zeit-rev\" class=\"pegel-info\">Lade Daten...<\/div>\r\n        <\/div>\r\n        \r\n        <div class=\"chart-scroll-container\">\r\n            <div class=\"chart-inner-canvas\">\r\n                <canvas id=\"pegelChartReverse\"><\/canvas>\r\n            <\/div>\r\n        <\/div>\r\n        <div style=\"font-size: 9px; color: #bbb; text-align: center; margin-top: 5px;\">\r\n            \u2190 Links: Aktuell | Rechts: Vergangenheit \u2192\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\r\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chartjs-plugin-annotation@3.0.1\"><\/script>\r\n\r\n    <script>\r\n    (function() {\r\n        const uuid = \"593647aa-9fea-43ec-a7d6-6476a76ae868\";\r\n        const url = `https:\/\/www.pegelonline.wsv.de\/webservices\/rest-api\/v2\/stations\/${uuid}\/W\/measurements.json?start=P3D`;\r\n\r\n        async function update() {\r\n            try {\r\n                const r = await fetch(url);\r\n                const rawData = await r.json();\r\n                if (!rawData || rawData.length === 0) return;\r\n\r\n                \/\/ 1. Header-Daten (bevor wir die Liste umdrehen)\r\n                const curr = rawData[rawData.length - 1];\r\n                const prev = rawData[Math.max(0, rawData.length - 13)];\r\n                const diff = curr.value - prev.value;\r\n                \r\n                document.getElementById('p-wert-rev').innerText = curr.value + \" cm\";\r\n                const arrow = document.getElementById('p-pfeil-rev');\r\n                arrow.innerHTML = diff > 0 ? \"\u2191\" : (diff < 0 ? \"\u2193\" : \"\u2192\");\r\n                arrow.className = \"pegel-arrow \" + (diff > 0 ? \"up\" : (diff < 0 ? \"down\" : \"stable\"));\r\n                document.getElementById('p-zeit-rev').innerText = \"Stand: \" + new Date(curr.timestamp).toLocaleString('de-DE');\r\n\r\n                \/\/ 2. Daten f\u00fcr das Diagramm UMDREHEN\r\n                const data = [...rawData].reverse();\r\n\r\n                new Chart(document.getElementById('pegelChartReverse'), {\r\n                    type: 'line',\r\n                    data: {\r\n                        labels: data.map(d => new Date(d.timestamp)),\r\n                        datasets: [{\r\n                            data: data.map(d => d.value),\r\n                            borderColor: '#004488',\r\n                            backgroundColor: 'rgba(0, 68, 136, 0.05)',\r\n                            fill: true,\r\n                            pointRadius: 0,\r\n                            borderWidth: 2,\r\n                            tension: 0.1\r\n                        }]\r\n                    },\r\n                    options: {\r\n                        responsive: true,\r\n                        maintainAspectRatio: false,\r\n                        plugins: {\r\n                            legend: { display: false },\r\n                            annotation: {\r\n                                annotations: {\r\n                                    q1: { type: 'line', yMin: 47, yMax: 47, borderColor: 'orange', borderDash: [5,5], label: { display: true, content: '47', position: 'end', font: {size: 10} }},\r\n                                    q2: { type: 'line', yMin: 157, yMax: 157, borderColor: 'gold', borderDash: [5,5], label: { display: true, content: '157', position: 'end', font: {size: 10} }},\r\n                                    q3: { type: 'line', yMin: 747, yMax: 747, borderColor: 'red', borderDash: [5,5], label: { display: true, content: '747', position: 'end', font: {size: 10} }}\r\n                                }\r\n                            }\r\n                        },\r\n                        scales: {\r\n                            x: {\r\n                                grid: {\r\n                                    color: (ctx) => {\r\n                                        const date = new Date(data[ctx.index]?.timestamp);\r\n                                        return (date.getHours() === 0 && date.getMinutes() === 0) ? '#bbb' : '#f0f0f0';\r\n                                    },\r\n                                    lineWidth: (ctx) => {\r\n                                        const date = new Date(data[ctx.index]?.timestamp);\r\n                                        return (date.getHours() === 0 && date.getMinutes() === 0) ? 2 : 1;\r\n                                    }\r\n                                },\r\n                                ticks: {\r\n                                    maxRotation: 0,\r\n                                    autoSkip: false,\r\n                                    callback: function(val, index) {\r\n                                        const date = new Date(data[index].timestamp);\r\n                                        const h = date.getHours();\r\n                                        const m = date.getMinutes();\r\n                                        if (m === 0 && h % 6 === 0) {\r\n                                            const tStr = h.toString().padStart(2, '0') + ':00';\r\n                                            \/\/ Datum zeigen wir hier bei 00:00 Uhr an\r\n                                            if (h === 0) {\r\n                                                return [date.toLocaleDateString('de-DE', {day:'2-digit', month:'2-digit'}), tStr];\r\n                                            }\r\n                                            return tStr;\r\n                                        }\r\n                                        return null;\r\n                                    },\r\n                                    font: { size: 10 }\r\n                                }\r\n                            }\r\n                        }\r\n                    }\r\n                });\r\n\r\n                \/\/ Da aktuell jetzt links ist, scrollen wir beim Start nach GANZ LINKS\r\n                const scrollContainer = document.querySelector('.chart-scroll-container');\r\n                scrollContainer.scrollLeft = 0;\r\n\r\n            } catch (e) { console.error(\"Fehler:\", e); }\r\n        }\r\n        setTimeout(update, 300);\r\n    })();\r\n    <\/script>\r\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading has-gray-color has-text-color has-link-color wp-elements-9b5af5f4005d33e17c3b7bb6d6c63cff\">Wetter<\/h2>\n\n\n\n<div class=\"mein-rahmen\" style=\"display: flex; justify-content: center;\">\n\n<iframe src=\"https:\/\/www.yr.no\/en\/content\/2-2874545\/card.html?mode=light\" style=\"width: 100%; height: 372px; border: 0; border-radius: 8px;\" title=\"Heute\"><\/iframe>\n<\/div>\n\n\n\n<div class=\"mein-rahmen\" style=\"display: flex; justify-content: center;\">\n<iframe src=\"https:\/\/www.yr.no\/en\/content\/2-2874545\/meteogram.svg?mode=light\" style=\"width: 782px; height: 391px; border: 0; border-radius: 8px;\" title=\"Meteogramm\"><\/iframe>\n<\/div>\n\n\n\n<div class=\"mein-rahmen\" style=\"display: flex; justify-content: center;\">\n<iframe src=\"https:\/\/www.yr.no\/en\/content\/2-2874545\/table.html?mode=light\" style=\"width: 100%; height: 506px; border: 0; border-radius: 8px;\" title=\"Die n\u00e4chsten Tage\"><\/iframe>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading has-gray-color has-text-color has-link-color wp-elements-9c80ecb3c8323665cce2e0f0e521642e\">Handball<\/h2>\n\n\n\n<h2 class=\"wp-block-heading has-blue-background-color has-background has-medium-font-size\">Spielplan<\/h2>\n\n\n<script>\r\n(function(e,t,n,r,i,s,o){e[i]=e[i]||function(){(e[i].q=e[i].q||[]).push(arguments)}, e[i].l=1*new Date;s=t.createElement(n),o=t.getElementsByTagName(n)[0];s.async=1; s.src=r;o.parentNode.insertBefore(s,o)})(window,document,\"script\", 'https:\/\/www.handball.net\/widgets\/embed\/v1.js',\"_hb\");\r\n<\/script>\r\n<div id='handball-spielplan'  style=\"zoom:60%;\"><\/div>\r\n<script>\r\n_hb({\r\nwidget: 'spielplan',\r\nteamId: 'sr.competitor.3982-132716',\r\ncontainer: 'handball-spielplan'\r\n})\r\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading has-blue-background-color has-background has-medium-font-size\">Tabelle<\/h2>\n\n\n<script>\r\n(function(e,t,n,r,i,s,o){e[i]=e[i]||function(){(e[i].q=e[i].q||[]).push(arguments)}, e[i].l=1*new Date;s=t.createElement(n),o=t.getElementsByTagName(n)[0];s.async=1; s.src=r;o.parentNode.insertBefore(s,o)})(window,document,\"script\", 'https:\/\/www.handball.net\/widgets\/embed\/v1.js',\"_hb\");\r\n<\/script>\r\n<div id='handball-tabelle'  style=\"zoom:60%;\"><\/div>\r\n<script>\r\n_hb({\r\nwidget: 'tabelle',\r\nteamId: 'sr.competitor.3982-132716',\r\ncontainer: 'handball-tabelle'\r\n})\r\n<\/script>\r\n<style>\r\n  \/* Erste Spalte (Platzierung) *\/\r\n  #handball-tabelle table td:nth-child(1),\r\n  #handball-tabelle table th:nth-child(1) {\r\n    width: 8% !important;\r\n    min-width: 30px !important;\r\n  }\r\n\r\n  \/* Zweite Spalte (Logo\/Verein kurz) *\/\r\n  #handball-tabelle table td:nth-child(2),\r\n  #handball-tabelle table th:nth-child(2) {\r\n    width: 6% !important;\r\n    min-width: 20px !important;\r\n  }\r\n\t\r\n\t \/* Dritte Spalte (Logo\/Verein kurz) *\/\r\n  #handball-tabelle table td:nth-child(3),\r\n  #handball-tabelle table th:nth-child(3) {\r\n    width: 40% !important;\r\n    min-width: 110px !important;\r\n  }\r\n\t\r\n\t \/* Vierte Spalte (Logo\/Verein kurz) *\/\r\n  #handball-tabelle table td:nth-child(4),\r\n  #handball-tabelle table th:nth-child(4) {\r\n    width: 8% !important;\r\n    min-width: 30px !important;\r\n  }\r\n\t\r\n\t\t \/* F\u00fcnfte Spalte (Logo\/Verein kurz) *\/\r\n  #handball-tabelle table td:nth-child(5),\r\n  #handball-tabelle table th:nth-child(5) {\r\n    width: 20% !important;\r\n    min-width: 60px !important;\r\n  }\r\n<\/style>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button has-custom-width wp-block-button__width-100\"><a class=\"wp-block-button__link has-dark-blue-color has-blue-background-color has-text-color has-background has-link-color wp-element-button\" href=\"https:\/\/www.sport.de\/handball\/ehf-champions-league\/ro268502\/gruppe-b\/ergebnisse-und-tabelle\/\">Championsleague<\/a><\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading has-gray-color has-text-color has-link-color wp-elements-c9e4ba6038433cc3945cc70038f53c78\">Galopprennen<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\" style=\"text-decoration:underline\"><strong>Die Renntermine 2026 sind:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-getwid-table\"><table><tbody><tr><td style=\"border-color:#68c5f9;text-align:center\">18.04.26<\/td><td style=\"border-color:#68c5f9\">Aufgalopp<\/td><\/tr><tr><td style=\"border-color:#68c5f9;text-align:center\">14.05.26<\/td><td style=\"border-color:#68c5f9\">Himmelfahrtsrenntag<\/td><\/tr><tr><td style=\"border-color:#68c5f9;text-align:center\">20.06.26<\/td><td style=\"border-color:#68c5f9\">Jubil\u00e4umsrenntag<\/td><\/tr><tr><td style=\"border-color:#68c5f9;text-align:center\">12.09.26<\/td><td style=\"border-color:#68c5f9\">BBAG-Auktionsrenntag<\/td><\/tr><tr><td style=\"border-color:#68c5f9;text-align:center\">17.10.26<\/td><td style=\"border-color:#68c5f9\">Traberrenntag<\/td><\/tr><\/tbody><\/table><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-gray-color has-text-color has-link-color wp-elements-bac3dd3021dfc423f10947520d75e205\">Billiard &#8211; Karambol<\/h2>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<iframe width='100%' height='800px' src='https:\/\/billard-union.net\/sb_spielplan.php?p=10-10-2025\/2026-155-0'><\/iframe>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Elbe-Pegel Wetter Handball Spielplan Tabelle Galopprennen Die Renntermine 2026 sind: Billiard &#8211; Karambol<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-1588","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/pages\/1588","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/comments?post=1588"}],"version-history":[{"count":76,"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/pages\/1588\/revisions"}],"predecessor-version":[{"id":3568,"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/pages\/1588\/revisions\/3568"}],"wp:attachment":[{"href":"https:\/\/msbliefert.eu\/wp-json\/wp\/v2\/media?parent=1588"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}