1<!DOCTYPE html> 2<html lang="de" dir="ltr" class="mdui-theme-light"> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="MobileOptimized" content="width" /> 6 <meta name="HandheldFriendly" content="true" /> 7 <meta name="mobile-web-app-capable" content="yes" /> 8 <meta name="copyright" content="Hafen Hamburg Marketing e.V." /> 9 <meta name="revisit-after" content="1 day" /> 10 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 11 12 <title>Port of Hamburg | Mitglieder</title> 13 14 15 <link rel="stylesheet" href="/site/hhm/css/font-awesome5/css/all.css"> 16 <link rel="stylesheet" href="/site/hhm/css/font-awesome5/css/regular.css"> 17 <link rel="stylesheet" href="/site/hhm/css/font-awesome5/css/v4-shims.css"> 18 19 <link rel="stylesheet" href="/site/hhm/css/odometer.css?v1.1"> 20 21 <link rel="stylesheet" href="/site/hhm/css/w3.css?v1.1"> 22 <link rel="stylesheet" href="/site/hhm/css/w3-colors.css"> 23 <link rel="stylesheet" href="/site/hhm/css/w3-theme-hhm.css"> 24 <link rel="stylesheet" href="/site/hhm/css/style.css?v2.2"> 25 26 <link rel="stylesheet" href="/site/hhm/css/mdui.css?517937732"> 27 <style> 28 @font-face { 29 font-display: swap; 30 font-family: 'Material Icons'; 31 font-style: normal; 32 font-weight: 400; 33 src: url('/site/hhm/fonts/material-icons-v143-latin-regular.woff2') format('woff2'); 34 } 35 :root { 36 --mdui-color-primary-light: 204, 5, 2; 37 --mdui-color-primary-dark: 204, 5, 2; 38 --mdui-color-surface-container: 255, 255, 255; 39 } 40 html { 41 interpolate-size: allow-keywords; 42 } 43 </style> 44 45 46 47
47<script src="/site/templates/js/libs/jquery-3.4.1.min.js"></script>
47 48 <link rel="stylesheet" href="/site/templates/w3/chosen/chosen.min.css"> 49
49<script src="/site/templates/w3/chosen/chosen.jquery.min.js"></script>
49 50
50<script defer src='/site/templates/js/libs/easing.jquery.js'></script>
50 51 <link type="text/css" rel="stylesheet" href="/site/templates/js/lightgallery/css/lightgallery-bundle.css" /> 52
52<script src="/site/templates/js/lightgallery/lightgallery.min.js"></script>
52 53
53<script src="/site/templates/js/lightgallery/plugins/zoom/lg-zoom.min.js"></script>
53 54
54<script src="/site/templates/js/lightgallery/plugins/thumbnail/lg-thumbnail.min.js"></script>
54 55 <link rel="stylesheet" href="/site/templates/js/justifiedgallery/justifiedGallery.min.css?v1.1" /> 56
56<script defer src="/site/templates/js/justifiedgallery/jquery.justifiedGallery.min.js"></script>
56 57 <link rel="stylesheet" type="text/css" href="/site/templates/js/datatables.min.css?v1.1"/> 58
58<script defer type="text/javascript" src="/site/templates/js/datatables.min.js"></script>
58 59
59<script src="/site/templates/js/listjs/list.min.js?v2"></script>
59 60 <link href='/site/templates/page_builder/page_builder.css?1357597483' rel='stylesheet' /> 61 <link href="/site/templates/css/filter.css?1448427012" rel="stylesheet" /> 62
62<script src="/site/templates/js/libs/lightbox.js?v2"></script>
62 63
63<script src="/site/templates/js/site.js?v2"></script>
63 64 <link rel="stylesheet" href="/site/templates/css/lightbox.css?1048079425"> 65 66 67 68
68<script type='text/javascript' src='/wire/modules/Jquery/JqueryCore/dev/JqueryCore.js?v=3.6.4'></script>
68 69
69<script type='text/javascript' src='/wire/modules/Jquery/JqueryCore/dev/jquery-migrate-quiet-3.4.0.min.js'></script>
69 70
70<script type='text/javascript' src='/site/modules/LoginRegisterPro/LoginRegisterPro.js?v=1730844724'></script>
70 71 <link rel='stylesheet' href='/site/modules/LoginRegisterPro/LoginRegisterPro.css?v=1730844723'> 72
72<script src="/site/hhm/js/map/geolib.min.js"></script>
72 73 74
74<script src="/site/hhm/js/map/maplibre-5.6.1/maplibre-gl.js"></script>
74 75 <link rel="stylesheet" href="/site/hhm/js/map/maplibre-5.6.1/maplibre-gl.css"> 76 77
77<script src="/orca/custom-elements/orcagallery.js?1075043376"></script>
77 78
78<script src="/orca/custom-elements/orcamap.js?718863655"></script>
78 79
79<script src="/orca/custom-elements/orcamapmarker.js"></script>
79 80
80<script src="/orca/custom-elements/orcaaccordion.js"></script>
80 81 82
82<script src="/site/hhm/js/mdui.global.hhm.js?v2.1.5"></script>
82 83
83<script> 84 //mdui.setColorScheme('#cc0502', {}); 85 </script>
85 86 87
87<script src="/site/hhm/js/w3.js"></script>
87 88
88<script src="/site/hhm/js/htmx.min.js"></script>
88 89 90 <!--
90<script src="/site/hhm/js/aos.js"></script>
90 --> 91
91<script src="/site/hhm/js/odometer.js"></script>
91 92 93
93<script type="module" src="/custom-elements/image-gallery.js?571075153"></script>
93 94 95
95<script type="module" src="/custom-elements/content-slider.js?814246671"></script>
95 96 <link rel="stylesheet" type="text/css" href="/custom-elements/content-slider.css?1242268054"/> 97 98 <link rel="stylesheet" type="text/css" href="/site/hhm/css/slick.css"/> 99 <link rel="stylesheet" type="text/css" href="/site/hhm/css/slick-theme.css"/> 100 101 <!-- <link rel="stylesheet" href="/site/hhm/css/aos.css?1923175777"/> --> 102 <link rel="stylesheet" href="/orca/orca.css?614804689"> 103 <link rel="stylesheet" href="/site/hhm/css/main.css?1841719430"/> 104 <link rel="stylesheet" href="/site/hhm/css/pb2.css?2147382052"/> 105 106 <style> 107 @media (prefers-reduced-motion: no-preference) { 108 @supports (animation-timeline: view()) { 109 [data-aos] { 110 /* 111 animation-timeline: view(); 112 animation-range: entry 0% cover 1%; 113 animation-fill-mode: both; 114 animation-timing-function: ease-out; 115 animation-duration: 1ms; 116 } 117 118 [data-aos="fade-up"] { animation-name: aos-fade-up; } 119 [data-aos="fade-down"] { animation-name: aos-fade-down; } 120 [data-aos="fade-left"] { animation-name: aos-fade-left; } 121 [data-aos="fade-right"] { animation-name: aos-fade-right; } 122 [data-aos="fade-in"], 123 [data-aos="fade"] { animation-name: aos-fade; } 124 [data-aos="zoom-in"] { animation-name: aos-zoom-in; } 125 [data-aos="zoom-out"] { animation-name: aos-zoom-out; } 126 127 [data-aos="flip-up"] { animation-name: aos-flip-up; } 128 [data-aos="flip-down"] { animation-name: aos-flip-down; } 129 [data-aos="flip-left"] { animation-name: aos-flip-left; } 130 [data-aos="flip-right"] { animation-name: aos-flip-right; } 131 */ 132 } 133 } 134 135 @keyframes aos-fade { from { opacity: 0 } to { opacity: 1 } } 136 @keyframes aos-fade-up { from { opacity: 0; translate: 0 240px } to { opacity: 1; translate: 0 0 } } 137 @keyframes aos-fade-down { from { opacity: 0; translate: 0 -240px } to { opacity: 1; translate: 0 0 } } 138 @keyframes aos-fade-left { from { opacity: 0; translate: 240px 0 } to { opacity: 1; translate: 0 0 } } 139 @keyframes aos-fade-right { from { opacity: 0; translate: -240px 0 } to { opacity: 1; translate: 0 0 } } 140 @keyframes aos-zoom-in { from { opacity: 0; scale: 0.92 } to { opacity: 1; scale: 1 } } 141 @keyframes aos-zoom-out { from { opacity: 0; scale: 1.08 } to { opacity: 1; scale: 1 } } 142 @keyframes aos-flip-up { from { opacity: 0; transform: perspective(2500px) rotateX(-100deg) } to { opacity: 1; transform: perspective(2500px) rotateX(0) } } 143 @keyframes aos-flip-down { from { opacity: 0; transform: perspective(2500px) rotateX( 100deg) } to { opacity: 1; transform: perspective(2500px) rotateX(0) } } 144 @keyframes aos-flip-left { from { opacity: 0; transform: perspective(2500px) rotateY(-100deg) } to { opacity: 1; transform: perspective(2500px) rotateY(0) } } 145 @keyframes aos-flip-right { from { opacity: 0; transform: perspective(2500px) rotateY( 100deg) } to { opacity: 1; transform: perspective(2500px) rotateY(0) } } 146 </style> 147 148</head> 149<body id="page-337089"> 150 <!-- Header --> 151 <section class="header"> 152 <div class="container" style="display: flex; justify-content: left; align-items: flex-start; padding: 8px 16px;"> 153 <div class="hide-lg" style="position:absolute;top:0;left:0;"><a href="/" alt="Startseite"><img src="/site/templates/images/header/logo.png" width="100" alt=">Hafen Hamburg"></a></div> 154 <div class="hide-lg" style="width:90px"> </div> 155 <img src="/site/hhm/images/layout/language.png" alt="Sprache"> 156 <div> 157 <ul class="langswitch nav" style="cursor:pointer"> 158 <li> 159 <span>Deutsch</span> 160 <ul class="hidden"> 161 <li style="position: relative;
161min-width:200px"> 162 <a style="padding-block:4px;color:var(--hhm-mid-gray)!important;" href="/de/mitglieder/?" title="default">Deutsch <span class="in-user-lang">(Deutsch)</span></a> 163 <a style="padding-block:4px;color:var(--hhm-mid-gray)!important;" href="/cn/mitglieder/?" title="cn">æ±è¯ <span class="in-user-lang">(Chinesisch)</span></a> 164 <a style="padding-block:4px;color:var(--hhm-mid-gray)!important;" href="/en/members/?" title="en">English <span class="in-user-lang">(Englisch)</span></a> 165 </li> 166 </ul> 167 </li> 168 </ul> 169 </div> 170 <div class="hide-lg"> 171 <div style="position: absolute; right: 50px; top: 0; display: flex;"> 172 <div style="height: 48px;display:flex;align-items:center;cursor:pointer;" onclick="searchDialog.open=true"><mdui-icon style="font-size: 32px" name="search"></mdui-icon></div> 173 </div> 174 </div> 175 <div class="hide-lg" style="margin-left:auto;cursor:pointer;" onclick="toggleMobileMenu()"><span style="font-size: 1.5em;padding-left: 8px;margin-top:-8px;display:inline-block;">â°</span></div> 176 <div class="hide-sm" style="width:45px"></div> 177 <a href="/de/hamburger-hafen/gezeiten/"><img class="hide-sm" src="/site/hhm/images/layout/pegel.png" alt="Pegel"></a> 178 <a href="/de/hamburger-hafen/gezeiten/"><div class="hide-sm" style="color:var(--hhm-mid-gray);"> +<span id="current-tide"></span>m</div></a> 179 <div class="hide-sm" style="width:40px"></div> 180 <a href="/de/alle-schiffe/erwartete-schiffe/"><img class="hide-sm" src="/site/hhm/images/layout/vessel.png" alt="Schiffe"></a> 181 <a href="/de/alle-schiffe/erwartete-schiffe/"><div class="hide-sm" style="color:var(--hhm-mid-gray);"> 34 erwartete Schiffe </div></a> 182 </div> 183 </section> 184 185 <!-- Menu --> 186 <section class="menu menu-full hide-sm"> 187 <div class="container" style="display: flex; justify-content: left; align-items: flex-start; padding: 0;"> 188 <ul class="nav"> 189 <li><span>Aktuelles</span> 190<ul class="hidden"> 191 <li><span>News & Events</span> 192<ul class="hidden"> 193 <li><a href="/de/aktuelles/news/">News</a> </li> 194 <li><a href="/de/aktuelles/mediathek/">Mediathek</a> </li> 195 <li><a href="/de/events/">Veranstaltungen</a> </li> 196</ul> 197 </li> 198 <li><span>Magazine & Statistiken</span> 199<ul class="hidden"> 200 <li><a href="/de/port-of-hamburg-magazine/">Port of Hamburg Magazine</a> </li> 201 <li><a href="/de/aktuelles/statistiken/">Statistiken</a> </li> 202</ul> 203 </li> 204</ul> 205 </li> 206 <li><span>Hafen</span> 207<ul class="hidden"> 208 <li><span>Hamburg</span> 209<ul class="hidden"> 210 <li><a href="/de/hamburger-hafen/hamburger-hafen/">Hamburg, Dein Hafen!</a> </li> 211 <li><a href="/de/hafenplan/">Hafenplan</a> </li> 212 <li><a href="/de/hamburger-hafen/gezeiten/">Gezeiten</a> </li> 213 <li><a href="/de/hamburger-hafen/terminals/">Terminals</a> </li> 214 <li><a href="/de/jobs-karriere/">Jobs & Karriere</a> </li> 215</ul> 216 </li> 217 <li><span>Metropolregion</span> 218<ul class="hidden"> 219 <li><a href="/de/hamburger-hafen/partnerhaefen/">Häfen der Region & Partnerhäfen</a> </li> 220 <li><a href="/de/hamburger-hafen/nok/">Nord-Ostsee-Kanal</a> </li> 221 <li><a href="/de/metropolregion/">Metropolregion</a> </li> 222</ul> 223 </li> 224</ul> 225 </li> 226 <li><span>Schiffe</span> 227<ul class="hidden"> 228 <li><span>Schiffe & Ankunftszeiten</span> 229<ul class="hidden"> 230 <li><a href="/de/alle-schiffe/">Schiffe im Ãberblick</a> </li> 231 <li><a href="/de/alle-schiffe/erwartete-schiffe/">Erwartete Schiffe</a> </li> 232 <li><a href="/de/alle-schiffe/kreuzfahrtsegelliste/">Kreuzfahrtsegelliste</a> </li> 233</ul> 234 </li> 235 <li><span>Specials</span> 236<ul class="hidden"> 237 <li><a href="/de/alle-schiffe/schiffsspecials/">Schiffsspecials</a> </li> 238</ul> 239 </li> 240</ul> 241 </li> 242 <li><span>Destinationen</span> 243<ul class="hidden"> 244 <li><span>Liniendienste</span> 245<ul class="hidden"> 246 <li><a href="/de/destinationen/linien-und-feederdienste/">Linien- & Feederdienste</a> </li> 247 <li><a href="/de/linerservices/">Linerservices</a> </li> 248</ul> 249 </li> 250 <li><span>Länderspecials</span> 251<ul class="hidden"> 252 <li><a href="/de/destinationen/amerikas/">Die "Amerikas" - Transatlantikhandel über Hamburg</a> </li> 253 <li><a href="/de/destinationen/china/">China â wichtiger Handelspartner Deutschlands</a> </li> 254 <li><a href="/de/destinationen/indien/">Indien â eine Volkswirtschaft im Wachstum</a> </li> 255</ul> 256 </li> 257</ul> 258 </li> 259 <li><span>Hinterland</span> 260<ul class="hidden"> 261 <li><span>Verkehrsträger</span> 262<ul class="hidden"> 263 <li><a href="/de/intermodal/">Intermodal</a> </li> 264 <li><a href="/de/hinterland/bahn/">Eisenbahn</a> </li> 265 <li><a href="/de/hinterland/binnenschiff/">Binnenschiff</a> </li> 266 <li><a href="/de/wasserstrassen/">BiSchi Online</a> </li> 267</ul> 268 </li> 269 <li><span>Specials</span> 270<ul class="hidden"> 271 <li><a href="/de/hinterland/gleise-mit-geschichte/">Gleise mit Geschichte</a> </li> 272 <li><a href="/de/hinterland/bcf-glueckauf/">âBCF Glückauf"</a> </li> 273</ul> 274 </li> 275</ul> 276 </li> 277 <li><span>Erlebnis</span> 278<ul class="hidden"> 279 <li><span>Hafen erleben</span> 280<ul class="hidden"> 281 <li><a href="/de/erlebnis/hafen-charterfahrten/">Hafen- & Charterfahrten</a> </li> 282 <li><a href="/de/erlebnis/poi/">Sehenswürdigkeiten</a> </li> 283 <li><a href="/de/erlebnis/geschichte/">Geschichte</a> </li> 284 <li><a href="/de/events/hafengeburtstag/">837. HAFENGEBURTSTAG HAMBURG 2026</a> </li> 285 <li><a href="/de/erlebnis/webcam-teufelsbrueck/">Webcam Teufelsbrück</a> </li> 286 <li><a href="/de/erlebnis/neuhof/">Webcam Neuhof</a> </li> 287</ul> 288 </li> 289 <li><span>Kreuzfahrt</span> 290<ul class="hidden"> 291 <li><a href="/de/erlebnis/kreuzfahrt/">Heimathafen der Kreuzschifffahrt</a> </li> 292 <li><a href="/de/erlebnis/queen-mary-2_1/">âQueen Mary 2â</a> </li> 293</ul> 294 </li> 295</ul> 296 </li> 297 <li><span>Kontakte</span> 298<ul class="hidden"> 299 <li><span>Hafen Hamburg Marketing</span> 300<ul class="hidden"> 301 <li><a href="/de/hafen-hamburg-marketing/ueber-uns/">Ãber uns</a> </li> 302 <li><a href="/de/hafen-hamburg-marketing/werden-sie-mitglied/">Werden Sie Mitglied</a> </li> 303 <li><a href="/de/hafen-hamburg-marketing/mitglieder/">Mitglieder</a> </li> 304 <li><a href="/de/mitglieder/login/">Mitgliederbereich</a> </li> 305 <li><a href="/de/hafen-hamburg-marketing/ueber-uns/#in-page-projekte">Förderprojekte</a> </li> 306 <li><a href="/de/hafen-hamburg-marketing/ueber-uns/#in-page-marktentwicklung">Marktentwicklung</a> </li> 307 <li><a href="/de/hafen-hamburg-marketing/ansprechpartner/">Ansprechpartner</a> </li> 308 <li><a href="/de/hafen-hamburg-marketing/repraesentanzen/">Repräsentanzen</a> </li> 309</ul> 310 </li> 311 <li><span>Hafen- und Logistikkontakte</span> 312<ul class="hidden"> 313 <li><a href="/de/kontakte/struktur-und-aufgabenverteilung/">Wichtige Akteure im Hafen</a> </li> 314 <li><a href="/de/hafenbranchenbuch/">Hafenbranchenbuch</a> </li> 315 <li><a href="/de/wasserschutzpolizei/">Wasserschutzpolizei</a> </li> 316</ul> 317 </li> 318</ul> 319 </li> 320</ul> 321 <div style="position: absolute; right: 0; top: 0; display: flex;"> 322 <div style="height: 68px;display:flex;align-items:center;padding-right:16px;cursor:pointer;" onclick="searchDialog.open=true"><mdui-icon style="font-size: 42px" name="search"></mdui-icon></div> 323 <a href="/" alt="Startseite"><img src="/site/templates/images/header/logo.png" width="150" alt=">Hafen Hamburg"></a> 324 </div> 325 </div> 326 </section> 327 328 <!-- Content --> 329 330 <div id="content"> 331 332<style> 333 a.btn { 334 padding: 4px 8px; 335 background-color: var(--hhm-blue); 336 color: white; 337 border-radius: 8px; 338 margin: 2px; 339 display: inline-block; 340 transition: background-color .3s; 341 } 342 a.btn:hover { 343 background-color: var(--hhm-light-blue); 344 } 345 #editmodal { 346 position:fixed; 347 inset: 5%; 348 box-shadow: 0 0 250px rgba(0,0,0,.9); 349 background: white; 350 display: none; 351 z-index: 999; 352 } 353 #editmodal-close { 354 position: absolute; 355 top: 15px; 356 right: 15px; 357 background:white; 358 color: #666; 359 border: 1px solid #333; 360 border-radius:50%; 361 font-weight: bold; 362 font-family: monospace; 363 cursor:pointer; 364 line-height: 1.1em; 365 text-align: center; 366 width: 25px; 367 height: 25px; 368 user-select: none; 369 } 370</style> 371
372<script> 373 function editmodal(e) { 374 const editmodal = document.querySelector("#editmodal"); 375 const href = e.getAttribute("href"); 376 const ifr = document.querySelector("#editmodal iframe"); 377 ifr.src = href; 378 editmodal.style.display = 'block'; 379 } 380 function editmodal_close() { 381 const editmodal = document.querySelector("#editmodal"); 382 const ifr = document.querySelector("#editmodal iframe"); 383 ifr.src = ''; 384 editmodal.style.display = 'none'; 385 } 386</script>
386 387 388 389<link rel="stylesheet" href="/site/templates/js/select/select2.min.css">
390<script src="/site/templates/js/select/select2.min.js"></script>
vendor: 1 bytes, line 390
390
391<script src="/site/templates/js/editor.select2.js"></script>
vendor: 1 bytes, line 391
391
392<script src="/site/templates/js/htmx2.min.js"></script>
392 393
394<script> 395var i18n_german = { 396 "sEmptyTable": "Keine Daten in der Tabelle vorhanden", 397 "sInfo": "_START_ bis _END_ von _TOTAL_ Einträgen", 398 "sInfoEmpty": "Keine Daten vorhanden", 399 "sInfoFiltered": "(gefiltert von _MAX_ Einträgen)", 400 "sInfoPostFix": "", 401 "sInfoThousands": ".", 402 "sLengthMenu": "_MENU_ Einträge anzeigen", 403 "sLoadingRecords": "Wird geladen ..", 404 "sProcessing": "Bitte warten ..", 405 "sSearch": "Suchen", 406 "sZeroRecords": "Keine Einträge vorhanden", 407 "oPaginate": { 408 "sFirst": "Erste", 409 "sPrevious": "Zurück", 410 "sNext": "Nächste", 411 "sLast": "Letzte" 412 }, 413 "oAria": { 414 "sSortAscending": ": aktivieren, um Spalte aufsteigend zu sortieren", 415 "sSortDescending": ": aktivieren, um Spalte absteigend zu sortieren" 416 }, 417 "select": { 418 "rows": { 419 "_": "%d Zeilen ausgewählt", 420 "0": "", 421 "1": "1 Zeile ausgewählt" 422 } 423 }, 424 "buttons": { 425 "print": "Drucken", 426 "colvis": "Spalten", 427 "copy": "Kopieren", 428 "copyTitle": "In Zwischenablage kopieren", 429 "copyKeys": "Taste <i>ctrl</i> oder <i>\u2318</i> + <i>C</i> um Tabelle<br>in Zwischenspeicher zu kopieren.<br><br>Um abzubrechen die Nachricht anklicken oder Escape drücken.", 430 "copySuccess": { 431 "_": "%d Zeilen kopiert", 432 "1": "1 Zeile kopiert" 433 }, 434 "pageLength": { 435 "-1": "Zeige alle Zeilen", 436 "_": "Zeige %d Zeilen" 437 } 438 }, 439 processing: "Verarbeiten...", 440 search: "Suchen :", 441 lengthMenu: "_MENU_ Elemente", 442 info: "_START_ bis _END_ von _TOTAL_ Elementen", 443 infoEmpty: "0 Elemente", 444 infoFiltered: "(gefiltert aus _MAX_ Elementen)", 445 infoPostFix: "", 446 loadingRecords: "Laden...", 447 zeroRecords: "Nichts gefunden", 448 emptyTable: "Leer", 449 paginate: { 450 first: "Anfang", 451 previous: "Zurück", 452 next: "Weiter", 453 last: "Ende" 454 }, 455 aria: { 456 sortAscending: ": aufsteigend sortieren", 457 sortDescending: ": absteigend sortieren" 458 } 459}; 460 461var i18n_german_editor = { 462 create: { 463 button: "Neu", 464 title: "Neuen Eintrag erstellen", 465 submit: "Erstellen" 466 }, 467 edit: { 468 button: "Bearbeiten", 469 title: "Eintrag bearbeiten", 470 submit: "Aktualisieren"
471 }, 472 remove: { 473 button: "Löschen", 474 title: "Löschen", 475 submit: "Löschen", 476 confirm: { 477 _: "Sind Sie sicher, dass Sie %d Einträge löschen wollen?", 478 1: "Sind Sie sicher, dass Sie diesen Eintrag löschen wollen?" 479 } 480 }, 481 error: { 482 system: "Fehler. Bitte kontaktieren Sie den Systemadministrator." 483 }, 484 datetime: { 485 previous: 'Zurück', 486 next: 'Weiter', 487 months: [ 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'Novembee', 'Dezember' ], 488 weekdays: [ 'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ] 489 } 490}; 491 492function deletePage(pid, table, row) { 493 var r = confirm("Soll dieser Eintrag wirklich gelöscht werden?"); 494 if (r == true) { 495 var r = new XMLHttpRequest(); 496 r.open("POST", "/de/mitglieder/delete/"+pid+"/", true); 497 r.onreadystatechange = function () { 498 if (r.readyState != 4 || r.status != 200) return; 499 if(r.responseText == 'error') { 500 alert("Etwas ist schiefgelaufen. Bitte versuchen Sie es später noc
500h einnmal."); 501 } else { 502 eval(table+'.row(\'#'+row+'\').remove()'); 503 eval(table+'.draw()'); 504 } 505 }; 506 r.send(); 507 } 508} 509 510function create_UUID(){ 511 var dt = new Date().getTime(); 512 var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { 513 var r = (dt + Math.random()*16)%16 | 0; 514 dt = Math.floor(dt/16); 515 return (c=='x' ? r :(r&0x3|0x8)).toString(16); 516 }); 517 return uuid; 518} 519 520function flip(elem) { 521 elem = document.getElementById(elem); 522 if(elem.style.marginLeft == '-100%') { 523 elem.style.marginLeft = 0; 524 } else { 525 elem.style.marginLeft = '-100%'; 526 } 527} 528 529//window.addEventListener("focus", reloadWindow); 530 531//function reloadWindow() {window.location.reload()}; 532 533</script>
533 534 535<section class="w3-content" id="content"> 536 <h1 style="margin-top: 0px; margin-bottom: 15px;">Mitgliederbereich</h1> 537 538<div class='LoginRegisterPro'><link rel='stylesheet' type='text/css' href='/site/modules/LoginRegisterPro/LoginRegisterPro.css?v=1730844723' />
538<script>let _pw={config:{"LoginRegisterPro":{"devAlert":"log"}}};if(typeof ProcessWire == 'undefined'){var ProcessWire=_pw;}else{for(let _pwk in _pw.config) ProcessWire.config[_pwk]=_pw.config[_pwk];}_pw=null;</script>
538<script>if(typeof jQuery === 'undefined') document.write('<scr' + 'ipt src="/wire/modules/Jquery/JqueryCore/dev/JqueryCore.js?v=3.6.4"></scr' + 'ipt>');</script>
538<script>if(typeof jQuery !== 'undefined'){ProcessWire.$=jQuery; jQuery(document).ready(function(){LoginRegisterPro.preflight()})}</script>
538<script src='/wire/modules/Jquery/JqueryCore/dev/jquery-migrate-quiet-3.4.0.min.js'></script>
538<script src='/site/modules/LoginRegisterPro/LoginRegisterPro.js?v=1730844724'></script>
538<script>LoginRegisterPro.construct({"debug":false,"faUrl":"\/wire\/templates-admin\/styles\/font-awesome\/css\/font-awesome.min.css"})</script>
538<noscript><p>Error: Javascript not detected and this form requires it. Please enable Javascript in your browser before using this form.</p></noscript><form class="LoginForm InputfieldForm" name="login" method="post" action="https://www.hafen-hamburg.de/de/mitglieder/?login=1" data-colspacing="1"><h2>Login</h2><div class='Inputfields'><div class='Inputfield Inputfield_login_name InputfieldEmail collapsed9 InputfieldStateRequired' id='wrap_login_name'><label class='InputfieldHeader' for='login_name'>Email</label><div class='InputfieldContent '><input id="login_name" name="login_name" class="LoginRegisterProLoginName required InputfieldMaxWidth" type="email" maxlength="250" required="required" /></div></div><div class='Inputfield Inputfield_login_pass InputfieldText collapsed9 InputfieldStateRequired' id='wrap_login_pass'><label class='InputfieldHeader' for='login_pass'>Password</label><div class='InputfieldContent '><input class="LoginRegisterProLoginPass required InputfieldMaxWidth" id="login_pass" name="login_pass" type="password" maxlength="2048" required="required" /></div></div><div class='Inputfield Inputfield_login_submit InputfieldSubmit' id='wrap_Inputfield_login_submit'><div class='InputfieldContent '><button class="ui-button ui-widget ui-state-default ui-corner-all" id="Inputfield_login_submit" name="login_submit" value="Login" type="submit"><span class='ui-button-text'>Login</span></button><input type='hidden' name='TOKEN1344153564X1790240334' value='LLBcyhD8yz1AzyQDnBWOtFph16DVmumv' class='_post_token' /></div></div></div><input type='hidden' name='TOKEN1344153564X1790240334' value='LLBcyhD8yz1AzyQDnBWOtFph16DVmumv' class='_post_token' /><input type='hidden' name='pwlrp' value='login' /><input type='hidden' name='_InputfieldForm' value='login' /><input type='hidden' name='TOKEN1344153564X1790240334' value='LLBcyhD8yz1AzyQDnBWOtFph16DVmumv' class='_post_token' /></form></div>
538<script>LoginRegisterPro.init()</script>
538 539</section> 540
541<script>history.pushState({}, "", "/de/mitglieder/");</script>
541 542 543 544<div id="editmodal"> 545 <iframe width="100%" height="100%" style="frame-border:0;width:100%;height:100%"></iframe> 546 <div id="editmodal-close" onclick="editmodal_close()">x</div> 547</div> 548 549</div> 550 551 <!-- Footer --> 552 553 <footer style="margin-top: 70px; background-color: var(--hhm-blue);color: var(--body-bg-color); padding-bottom: 80px"> 554 <img src="/site/templates/images/tmp/Hamburg_Bug_NEU_CMYK.png" alt="Bug" style="height: 60px; margin-top: -35px; margin-left: -20px;"> 555 556 <div style="width: 100%; padding:0; margin-bottom: 40px;text-align: center;"> 557 <p style="text-transform: uppercase; letter-spacing: 2px"> 558 <span style="font-weight: 700">Deutschland:</span> 559 <a href="/de/hafen-hamburg-marketing/repraesentanzen/deutschland-west/" title="West">West</a> 560 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/deutschland-ost/" title="Ost">Ost</a> 561 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/deutschland-sued-schweiz/" title="Süd">Süd</a> 562 563 <span style="font-weight: 700">Weltweit:</span> 564 <a href="/de/hafen-hamburg-marketing/repraesentanzen/budapest/" title="Budapest">Budapest</a> 565 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/hhr-dubai/" title="Dubai">Dubai</a> 566 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/mumbai/" title="Mumbai">Mumbai</a> 567 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/prag/" title="Prag">Prag</a> 568 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/shanghai/" title="Shanghai">Shanghai</a> 569 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/warschau/" title="Warschau">Warschau</a> 570 - <a href="/de/hafen-hamburg-marketing/repraesentanzen/wien/" title="Wien">Wien</a> 571 </p> 572 <p> 573 <a href="/de/kontakt/" title="Kontakt Zentrale Hamburg">Kontakt Zentrale Hamburg</a> 574 <a style="padding-left: 30px" href="/de/hafen-hamburg-marketing/ueber-uns/" title="© Hafen Hamburg Marketing e.V. 2024">© Hafen Hamburg Marketing e.V. 2024</a> 575 <a style="padding-left: 30px" href="/de/datenschutzerklaerung/" title="Datenschutzerklärung">Datenschutzerklärung</a> 576 <a style="padding-left: 30px" href="/de/impressum/" title="Impressum">Impressum</a> 577 </p> 578 <p> 579 580 <a style="padding-right: 30px; padding-left: 30px;" href="https://www.hafen-hamburg.de/de/kontakt-formular" title="Email"><i class="fas fa-at"></i></a> 581 <a style="padding-right: 30px;" href="https://www.facebook.com/hafenhamburg" alt="facebook" target="_blank" rel="noopener noreferrer" title="Facebook"><i class="fab fa-facebook-f"></i></a> 582 <a style="padding-right: 30px;" href="https://www.instagram.com/portofhamburg/" alt="instagram" target="_blank" rel="noopener noreferrer" title="Instagram"><i class="fab fa-instagram"></i></a> 583 <a style="padding-right: 30px;" href="https://www.linkedin.com/company/port-of-hamburg-marketing" alt="linkedin" target="_blank" rel="noopener noreferrer" title="LinkedIn"><i class="fab fa-linkedin"></i></a> 584 <a style="padding-right: 30px;" href="/rss" alt="list_news" title="RSS"><i class="fas fa-rss" aria-hidden="true"></i></a> 585 </p> 586 </div> 587 </footer> 588 589 <section class="menu for-mobile hide-lg" style="position:fixed;top:0;left:100vw;bottom:0;width:100vw;z-index:999999;overflow:scroll;"> 590 <ul class="nav" style="text-align: right"> 591 <li style="cursor:pointer;width:100%;" onclick="toggleMobileMenu()"><span>â°</span></li> 592 </ul> 593 <div class="mobile-menu2" style="font-size:0.75em;"> 594 <style> 595 /* ===== Base Navigation Styling ===== */ 596 section.menu.for-mobile { 597 background: var(--body-bg-color); 598 color: var(--hhm-mid-gray); 599 } 600 .mobile-menu2 ul.nav2 { 601 list-style: none; 602 padding: 0; 603 margin: 0; 604 background: var(--body-bg-color); 605 color: var(--hhm-mid-gray); 606 width: 95vw; 607 border-radius: 6px; 608 overflow: hidden; 609 } 610 611 .mobile-menu2 .nav2 > li { 612 border-bottom: 1px solid rgba(255, 255, 255, 0.1); 613 } 614 615 /* ===== Menu items ===== */ 616 .mobile-menu2 .nav2 li > span, 617 .mobile-menu2 .nav2 li > a { 618 display: block; 619 justify-content: start; 620 align-items: center; 621 padding: 6px 24px; 622 cursor: pointer; 623 color: var(--hhm-mid-gray); 624 text-decoration: none; 625 transition: background 0.3s; 626 } 627 628 .mobile-menu2 .nav2 li > span:hover, 629 .mobile-menu2 .nav2 li > a:hover, 630 .mobile-menu2 li.current { 631 background: var(--body-bg-color); 632 color: var(--hhm-blue); 633 } 634 635 /* ===== Submenus ===== */ 636 .mobile-menu2 ul.nav2 ul { 637 background: var(--body-bg-color); 638 list-style: none; 639 margin: 0; 640 padding: 0; 641 max-height: 0; 642 overflow: hidden; 643 transition: max-height 0.4s ease-out; 644 } 645 646 /* Visible submenu */
647 .mobile-menu2 ul.nav2 ul.open { 648 max-height: 800px; 649 transition: max-height 0.4s ease-in; 650 } 651 652 .mobile-menu2 .nav2 ul li { 653 padding-left: 32px; 654 } 655 656 /* Links inside submenus */ 657 .mobile-menu2 .nav2 ul a { 658 font-size: 0.95em; 659 padding-left: 28px; 660 display: block; 661 border: 1px solid #f2f2f2; 662 border-left: 2px solid var(--hhm-light-blue); 663 } 664 665 .mobile-menu2 .nav2 ul li.current a { 666 background-color: var(--hhm-lighter-blue); 667 } 668 669 /* Expand/collapse indicators */ 670 .mobile-menu2 .nav2 li > span::before { 671 content: "â¯"; 672 font-size: 0.8em; 673 transition: transform 0.3s; 674 transform: rotate(90deg); 675 display:inline-block; 676 width:24px; 677 height:24px; 678 text-align:center; 679 } 680 681 .mobile-menu2 .nav2 li.open > span::before { 682 transform: rotate(270deg); 683 } 684 685 section.menu ul a:before { 686 content: ''; 687 display:inline-block; 688 padding-left:16px; 689 } 690 691 /* ===== Optional: Responsive tweak ===== */ 692 @media (max-width: 600px) { 693 .mobile-menu2 ul.nav2 { 694 width: 100%; 695 } 696 } 697 </style>
698<script> 699document.addEventListener('DOMContentLoaded', () => { 700 document.querySelectorAll('.nav2 li > span').forEach(span => { 701 span.addEventListener('click', () => { 702 const parentLi = span.parentElement; 703 const submenu = parentLi.querySelector('ul'); 704 705 if (!submenu) return; 706 707 // Find all sibling submenus at the same level 708 const siblingSubmenus = parentLi.parentElement.querySelectorAll(':scope > li > ul.open'); 709 710 // Close all sibling submenus 711 siblingSubmenus.forEach(sibling => { 712 if (sibling !== submenu) { 713 sibling.classList.remove('open'); 714 sibling.parentElement.classList.remove('open'); 715 } 716 }); 717 718 // Toggle the clicked submenu 719 submenu.classList.toggle('open'); 720 parentLi.classList.toggle('open'); 721 }); 722 }); 723}); 724</script>
724 725 726 <ul class="nav2"> 727 <li><span> Aktuelles</span> 728<ul class="hidden"> 729 <li><span> News & Events</span> 730<ul class="hidden"> 731 <li><a href="/de/aktuelles/news/">→ News</a> </li> 732 <li><a href="/de/aktuelles/mediathek/">→ Mediathek</a> </li> 733 <li><a href="/de/events/">→ Veranstaltungen</a> </li> 734</ul> 735 </li> 736 <li><span> Magazine & Statistiken</span> 737<ul class="hidden"> 738 <li><a href="/de/port-of-hamburg-magazine/">→ Port of Hamburg Magazine</a> </li> 739 <li><a href="/de/aktuelles/statistiken/">→ Statistiken</a> </li> 740</ul> 741 </li> 742</ul> 743 </li> 744 <li><span> Hafen</span> 745<ul class="hidden"> 746 <li><span> Hamburg</span> 747<ul class="hidden"> 748 <li><a href="/de/hamburger-hafen/hamburger-hafen/">→ Hamburg, Dein Hafen!</a> </li> 749 <li><a href="/de/hafenplan/">→ Hafenplan</a> </li> 750 <li><a href="/de/hamburger-hafen/gezeiten/">→ Gezeiten</a> </li> 751 <li><a href="/de/hamburger-hafen/terminals/">→ Terminals</a> </li> 752 <li><a href="/de/jobs-karriere/">→ Jobs & Karriere</a> </li> 753</ul> 754 </li> 755 <li><span> Metropolregion</span> 756<ul class="hidden"> 757 <li><a href="/de/hamburger-hafen/partnerhaefen/">→ Häfen der Region & Partnerhäfen</a> </li> 758 <li><a href="/de/hamburger-hafen/nok/">→ Nord-Ostsee-Kanal</a> </li> 759 <li><a href="/de/metropolregion/">→ Metropolregion</a> </li> 760</ul> 761 </li> 762</ul> 763 </li> 764 <li><span> Schiffe</span> 765<ul class="hidden"> 766 <li><span> Schiffe & Ankunftszeiten</span> 767<ul class="hidden"> 768 <li><a href="/de/alle-schiffe/">→ Schiffe im Ãberblick</a> </li> 769 <li><a href="/de/alle-schiffe/erwartete-schiffe/">→ Erwartete Schiffe</a> </li> 770 <li><a href="/de/alle-schiffe/kreuzfahrtsegelliste/">→ Kreuzfahrtsegelliste</a> </li> 771</ul> 772 </li> 773 <li><span> Specials</span> 774<ul class="hidden"> 775 <li><a href="/de/alle-schiffe/schiffsspecials/">→ Schiffsspecials</a> </li> 776</ul> 777 </li> 778</ul> 779 </li> 780 <li><span> Destinationen</span> 781<ul class="hidden"> 782 <li><span> Liniendienste</span> 783<ul class="hidden"> 784 <li><a href="/de/destinationen/linien-und-feederdienste/">→ Linien- & Feederdienste</a> </li> 785 <li><a href="/de/linerservices/">→ Linerservices</a> </li> 786</ul> 787 </li> 788 <li><span> Länderspecials</span> 789<ul class="hidden"> 790 <li><a href="/de/destinationen/amerikas/">→ Die "Amerikas" - Transatlantikhandel über Hamburg</a> </li> 791 <li><a href="/de/destinationen/china/">→ China â wichtiger Handelspartner Deutschlands</a> </li> 792 <li><a href="/de/destinationen/indien/">→ Indien â eine Volkswirtschaft im Wachstum</a> </li> 793</ul> 794 </li> 795</ul> 796 </li> 797 <li><span> Hinterland</span> 798<ul class="hidden"> 799 <li><span> Verkehrsträger</span> 800<ul class="hidden"> 801 <li><a href="/de/intermodal/">→ Intermodal</a> </li> 802 <li><a href="/de/hinterland/bahn/">→ Eisenbahn</a> </li> 803 <li><a href="/de/hinterland/binnenschiff/">→ Binnenschiff</a> </li> 804 <li><a href="/de/wasserstrassen/">→ BiSchi Online</a> </li> 805</ul> 806 </li> 807 <li><span> Specials</span> 808<ul class="hidden"> 809 <li><a href="/de/hinterland/gleise-mit-geschichte/">→ Gleise mit Geschichte</a> </li> 810 <li><a href="/de/hinterland/bcf-glueckauf/">→ âBCF Glückauf"</a> </li> 811</ul> 812 </li> 813</ul> 814 </li> 815 <li><span> Erlebnis</span> 816<ul class="hidden"> 817 <li><span> Hafen erleben</span> 818<ul class="hidden"> 819 <li><a href="/de/erlebnis/hafen-charterfahrten/">→ Hafen- & Charterfahrten</a> </li> 820 <li><a href="/de/erlebnis/poi/">→ Sehenswürdigkeiten</a> </li> 821 <li><a href="/de/erlebnis/geschichte/">→ Geschichte</a> </li> 822 <li><a href="/de/events/hafengeburtstag/">→ 837. HAFENGEBURTSTAG HAMBURG 2026</a> </li> 823 <li><a href="/de/erlebnis/webcam-teufelsbrueck/">→ Webcam Teufelsbrück</a> </li> 824 <li><a href="/de/erlebnis/neuhof/">→ Webcam Neuhof</a> </li> 825</ul> 826 </li> 827 <li><span> Kreuzfahrt</span> 828<ul class="hidden"> 829 <li><a href="/de/erlebnis/kreuzfahrt/">→ Heimathafen der Kreuzschifffahrt</a> </li> 830 <li><a href="/de/erlebnis/queen-mary-2_1/">→ âQueen Mary 2â</a> </li> 831</ul> 832 </li> 833</ul> 834 </li> 835 <li><span> Kontakte</span> 836<ul class="hidden"> 837 <li><span> Hafen Hamburg Marketing</span> 838<ul class="hidden"> 839 <li><a href="/de/hafen-hamburg-marketing/ueber-uns/">→ Ãber uns</a> </li> 840 <li><a href="/de/hafen-hamburg-marketing/werden-sie-mitglied/">→ Werden Sie Mitglied</a> </li> 841 <li><a href="/de/hafen-hamburg-marketing/mitglieder/">→ Mitglieder</a> </li> 842 <li><a href="/de/mitglieder/login/">→ Mitgliederbereich</a> </li> 843 <li><a href="/de/hafen-hamburg-marketing/ueber-uns/#in-page-projekte">→ Förderprojekte</a> </li> 844 <li><a href="/de/hafen-hamburg-marketing/ueber-uns/#in-page-marktentwicklung">→ Marktentwicklung</a> </li> 845 <li><a href="/de/hafen-hamburg-marketing/ansprechpartner/">→ Ansprechpartner</a> </li> 846 <li><a href="/de/hafen-hamburg-marketing/repraesentanzen/">→ Repräsentanzen</a> </li> 847</ul> 848 </li> 849 <li><span> Hafen- und Logistikkontakte</span> 850<ul class="hidden"> 851 <li><a href="/de/kontakte/struktur-und-aufgabenverteilung/">→ Wichtige Akteure im Hafen</a> </li> 852 <li><a href="/de/hafenbranchenbuch/">→ Hafenbranchenbuch</a> </li> 853 <li><a href="/de/wasserschutzpolizei/">→ Wasserschutzpolizei</a> </li> 854</ul> 855 </li> 856</ul> 857 </li> 858</ul> 859 </div> 860 </section> 861 862 <mdui-dialog close-on-esc close-on-overlay-click fullscreen style="--shape-corner:--mdui-shape-corner-extra-small;" class="mdui-theme-dark search-dialog"> 863 <div id="site-search-container"> 864 <div style="display: flex;align-items: center;justify-content: center;"> 865 <input class="mdui-theme-light" type="text" placeholder="Suche" id="site-search"> 866 <mdui-button id="site-search-button" onclick="doSiteSearch(document.getElementById('site-search').value)" style="--mdui-color-on-primary-container:white;--shape-corner:--mdui-shape-corner-extra-small;"><span style="color:white">Suchen</span></mdui-button>
866 867 </div> 868 <div style="margin-top:16px"> 869 <mdui-checkbox data-id="100" class="search-tmpl" checked>Seite</mdui-checkbox> 870 <mdui-checkbox data-id="88" class="search-tmpl" checked>News</mdui-checkbox> 871 <mdui-checkbox data-id="90" class="search-tmpl" checked>Media</mdui-checkbox> 872 <mdui-checkbox data-id="68" class="search-tmpl" checked>Adresse</mdui-checkbox> 873 <mdui-checkbox data-id="86" class="search-tmpl" checked>Schiff</mdui-checkbox> 874 <mdui-checkbox data-id="72" class="search-tmpl" checked>Kontakt</mdui-checkbox> 875 <mdui-checkbox data-id="67" class="search-tmpl" checked>Event</mdui-checkbox> 876 </div> 877 </div> 878 <div style="position:absolute:top:20px;right:20px;"><mdui-button onclick="searchDialog.open=false" style="--shape-corner:--mdui-shape-corner-extra-small;" class="close">X</mdui-button></div> 879 </mdui-dialog> 880 881
881<script> 882 const searchDialog = document.querySelector(".search-dialog"); 883 function toggleMobileMenu() { 884 let el = document.querySelector("section.for-mobile"); 885 let left = parseInt(el.style.left); 886 if(left > 0) { 887 el.style.left = '0'; 888 } else { 889 el.style.left = '100vw'; 890 } 891 } 892 </script>
892 893 894 <style> 895 section.for-mobile { 896 transition: left 0.5s ease-out; 897 } 898 .mobile-menu ul.nav { 899 display: flex; 900 flex-direction: column; 901 } 902 section.for-mobile ul.nav > li > ul, section.menu ul.nav > li > ul > li, 903 section.for-mobile ul.nav li:hover { background-color: transparent; } 904 .mobile-menu ul.nav li ul.hidden { display: none; } 905 .mobile-menu ul.nav > li > ul { position: relative; top: initial; left: initial; flex-direction: column; } 906 .mobile-menu ul.nav span { pointer-events: none; } 907 908 nav li, nav a, .menu-item { 909 cursor: pointer; 910 } 911 </style> 912 913
913<script> 914 let nav = document.querySelectorAll(".menu-full ul.nav > li"); 915 nav.forEach((item) => { 916 item.addEventListener("mouseenter", () => { 917 item.querySelector("ul")?.classList.remove("hidden"); 918 item.querySelector("ul")?.classList.add("mobile-show"); 919 }); 920 item.addEventListener("mouseleave", () => { 921 item.querySelector("ul")?.classList.add("hidden"); 922 item.querySelector("ul")?.classList.remove("mobile-show"); 923 }); 924 }) 925 926 nav = document.querySelectorAll(".menu-full ul.nav > li"); 927 nav.forEach((item) => { 928 item.addEventListener('touchstart', function(e) { 929 if (e.target.closest("ul.nav > li > ul")) { 930 return; 931 } 932 933 const submenu = item.querySelector("ul"); 934 if (submenu) { 935 e.preventDefault(); 936 submenu.classList.toggle("hidden"); 937 submenu.classList.toggle("mobile-show"); 938 } 939 }, { passive: false }); 940 }); 941 942 let mobileNav = document.querySelectorAll(".menu.for-mobile ul.nav li"); 943 mobileNav.forEach((item) => { 944 item.addEventListener("click", (e) => { 945 e.stopPropagation(); 946 e.target.querySelector('ul')?.classList.toggle("hidden"); 947 e.target.querySelector('ul')?.classList.toggle("mobile-show"); 948 }); 949 }) 950 951 let langNav = document.querySelectorAll("ul.langswitch.nav li"); 952 langNav.forEach((item) => { 953 item.addEventListener("click", (e) => { 954 e.target.parentElement.querySelector('ul')?.classList.toggle("hidden"); 955 }); 956 }) 957 958 window.addEventListener("scroll", () => { 959 let relMovs = document.querySelectorAll(".relative-movement"); 960 relMovs.forEach((relMov) => { 961 relMov.style.bottom = (window.scrollY / 5) + 'px'; 962 }); 963 let parallaxes = document.querySelectorAll(".parallax"); 964 parallaxes.forEach((parallax) => { 965 let div = parallax.querySelector("div"); 966 let h2 = parallax.querySelector("h2"); 967 let posY = parallax.offsetTop - window.scrollY - 50; 968 if(posY < -20) posY = -20; 969 let opScale = 1 - ((posY+20) / 1000); 970 div.style.bottom = `${posY}px`; 971 h2.style.opacity = opScale; 972 h2.style.transform = `scale(${opScale})`; 973 }); 974 }); 975 976 const isReduced = window.matchMedia(`(prefers-reduced-motion: reduce)`) === true || window.matchMedia(`(prefers-reduced-motion: reduce)`).matches === true; 977 978 /* 979 if(screen.width > 1023) { 980 AOS.init({ 981 offset: 100, 982 duration: 400, 983 easing: 'ease-in-out', 984 delay: 50, 985 startEvent: 'load', 986 disable: 'mobile', 987 disableMutationObserver: false, 988 }); 989 document.addEventListener("DOMContentLoaded", ()=>{ 990 window.setTimeout(()=>{ 991 AOS.refresh(); 992 }, 500); 993 }); 994 } 995 */ 996 997 document.addEventListener("DOMContentLoaded", ()=>{ 998 var xhrPegel = new XMLHttpRequest(); 999 xhrPegel.onload = function () { 1000 if (xhrPegel.status >= 200 && xhrPegel.status < 300) { 1001 let data = JSON.parse(xhrPegel.response); 1002 let now = new Date(); 1003 for(var i=0;i<data.length;i++) { 1004 var d = Date.parse(data[i].timestamp); 1005 d = new Date(d); 1006 if(d.getMinutes() == now.getMinutes() && d.getHours() == now.getHours()) { 1007 document.getElementById('current-tide').innerHTML = data[i].value / 100; 1008 //document.getElementById('current-tide-mobile').innerHTML = data[i].value / 100; 1009 break; 1010 } 1011 } 1012 } else { 1013 console.log('Pegel Pegel request failed!'); 1014 } 1015 }; 1016 xhrPegel.open('GET', 'https://www.pegelonline.wsv.de/webservices/rest-api/v2/stations/HAMBURG%20ST.%20PAULI/W/measurements.json?start=P1D'); 1017 xhrPegel.send(); 1018 }); 1019 1020 function toggleMenu(menu) { 1021 let menuEl = document.querySelector(".menu." + menu); 1022 if(menuEl) { 1023 let boundingRect = menuEl.getBoundingClientRect(); 1024 let offsetY = menuEl.offsetHeight; 1025 let offscreenMenu = document.querySelector(".menu." + menu + " .offscreen"); 1026 if(parseInt(offscreenMenu.style.left) == '0') { 1027 offscreenMenu.style.top = offsetY + 'px'; 1028 offscreenMenu.style.left = '100vw'; 1029 } else { 1030 offscreenMenu.style.top = offsetY + 'px'; 1031 offscreenMenu.style.left = '0'; 1032 } 1033 } 1034 } 1035 1036 if (document.getElementById("site-search")) { 1037 document.getElementById("site-search").addEventListener("keyup", (event) => { 1038 if (event.key === 'Enter') { 1039 doSiteSearch(document.getElementById("site-search").value); 1040 } 1041 }); 1042 } 1043 1044 function doSiteSearch(value) { 1045 if (value != "" && value.length > 2) { 1046 let tmpls = document.querySelectorAll(".search-tmpl"); 1047 let selTmpls = [];
1048 [...tmpls].forEach(tmpl => { 1049 if(tmpl.checked) selTmpls.push(tmpl.getAttribute('data-id')); 1050 }); 1051 window.location = "/de/search/?q=" + value + "&tmpl=" + selTmpls.join(','); 1052 } 1053 } 1054 1055 function resetFilter(e) { 1056 const form = e.parentNode.parentNode.parentNode.parentNode.parentNode; 1057 form.reset(); 1058 const labels = form.querySelectorAll(".pb_filter_integer_value"); 1059 for(let i=0;i<labels.length;i++) { 1060 labels[i].innerHTML = labels[i].parentNode.parentNode.nextSibling.value; 1061 } 1062 htmx.trigger(form,"submit"); 1063 } 1064 </script>
1064 1065 1066
1066<script type="text/javascript" src="/site/hhm/js/slick.min.js"></script>
1066 1067 1068 1069 1070
1070<script> 1071 let current = document.querySelector('ul.nav2 li.current'); 1072 if(current && current.parentElement) { 1073 let ul = current.parentElement; 1074 while(!ul.classList.contains("nav2")) { 1075 ul.classList.add("open"); 1076 ul = ul.parentElement.parentElement; 1077 } 1078 } 1079 </script>
1079 1080</body> 1081</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.