1 2 3 4 5 6<!DOCTYPE html> 7<html lang="de"> 8 <head> 9 10 11 <meta charset="UTF-8"> 12 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 13 <!-- Mindoo --> 14 <meta name="google-site-verification" content="45D9j6agLQlEFYHSF-Jb7IqI_tZK_PFjuT4FxBIJyFQ" /> 15 16 <link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon.png"> 17 <meta name="apple-mobile-web-app-title" content="Durmersheim"> 18 <meta name="apple-mobile-web-app-capable" content="yes"> 19 20 <link rel="icon" type="image/png" sizes="32x32" href="favicon-32x32.png"> 21 <link rel="icon" type="image/png" sizes="16x16" href="favicon-16x16.png"> 22 <link rel="icon" type="image/png" href="android-chrome-192x192.png" sizes="192x192"> 23 <link rel="icon" type="image/png" href="android-chrome-512x512.png" sizes="512x512"> 24 <link rel="manifest" href="site.webmanifest"> 25 <link rel="mask-icon" href="safari-pinned-tab.svg" color="#5bbad5"> 26 <link rel="shortcut icon" href="favicon.ico"> 27 <meta name="msapplication-config" content="browserconfig.xml"> 28 <meta name="msapplication-TileColor" content="#da532c"> 29 <meta name="theme-color" content="#ffffff"> 30 31 <!-- 32 Dealing with a Browser having javascript disabled: 33 - Hide the any element flagged with 'jsonly' class with css 34 - if JavaScript is not blocked, disable any stylesheet with a title of 'noscript' 35 --> 36 <!-- 37 <style title="noscript">.jsonly { 38 visibility:hidden; 39 } 40 .jsonly:before { 41 content: "Diese Seite setzt voraus, dass in Ihrem Browser JavaScript aktiviert ist." 42 } 43 </style> 44
44<script type="text/javascript"> 45 for(var i=0; i<document.styleSheets.length; i++) { 46 if (document.styleSheets[i].title == 'noscript') { 47 document.styleSheets[i].disabled = true; 48 } 49 else { 50 document.styleSheets[i].disabled = false; 51 } 52 } 53 </script>
53 54 <noscript> 55 Diese Seite setzt voraus, dass in Ihrem Browser JavaScript aktiviert ist. 56 </noscript> 57 --> 58 59 60 <title>Durmersheim</title> 61 62 <meta name="description" content="Internet-Präsenz der Gemeinde Durmersheim" /> 63 <meta name="keywords" content="" /> 64 <meta name="robots" content="index,follow" /> 65 <meta name="generator" content="Mindoo CMS, Mindoo GmbH"> 66 <meta name="language" content="Deutsch"> 67 68 <link href="/utils/bootstrap/3.3.0/css/bootstrap.min.css?bust=201907311430_202608282118" rel="stylesheet"> 69 <link href="/utils/font-awesome/4.2.0/css/font-awesome.min.css?bust=201907311430_202608282118" rel="stylesheet"> 70 71 <!-- link href="/utils/fancytree/2.18.0/skin-win8/ui.fancytree.min.css" rel="stylesheet" type="text/css" --> 72 <link href="/utils/fancytree/2.18.0/skin-bootstrap/ui.fancytree.css?bust=201907311430_202608282118" rel="stylesheet" type="text/css"> 73 74 <link href="/utils/magnific/1.1.0/magnific-popup.css?bust=201907311430_202608282118" rel="stylesheet" type="text/css"> 75 76 <link href="/utils/bxslider/4.1.2/jquery.bxslider.css" rel="stylesheet"> 77 <link href="/vds/cms_durmersheim.nsf/web/base.css?bust=201907311430_202608282118" rel="stylesheet"> 78 79 80 <link href="/vds/cms_durmersheim.nsf/web/theme/theme.css" rel="stylesheet"> 81 82 83 <style> 84 85 86 87 88 89 </style> 90 91
91<script type="text/javascript"> 92 document.write('<meta name="viewport" content="width=device-width, maximum-scale=1.0, minimum-scale=1.0, initial-scale=1">'); 93 </script>
93 94 95 96 97 98 99 100 101 <!-- use modernizr because e.g. asyncquence relies on Function.bind, 102 which is not supported by old mobile safari versions --> 103
103<script type="text/javascript" src="/utils/modernizr/2.8.3/modernizr-latest.js?bust=201907311430_202608282118"></script>
103 104 105 106 107 <!-- matomo tracking --> 108
108<script type="text/javascript"> 109 var _paq = window._paq = window._paq || []; 110 // Call disableCookies before calling trackPageView 111_paq.push(['disableCookies']); 112 /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ 113 _paq.push(['trackPageView']); 114 _paq.push(['enableLinkTracking']); 115 (function() { 116 var u="https://mtm.duerrschnabel.com/"; 117 _paq.push(['setTrackerUrl', u+'matomo.php']); 118 _paq.push(['setSiteId', '8']); 119 var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 120 g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); 121 })(); 122 </script>
122 123 124 125 126 127 128
128<script type="text/javascript"> 129 // Console-polyfill. MIT license. 130 // https://github.com/paulmillr/console-polyfill 131 // Make it safe to do console.log() always. 132 (function(con) { 133 'use strict'; 134 var prop, method; 135 var empty = {}; 136 var dummy = function() {}; 137 var properties = 'memory'.split(','); 138 var methods = ('assert,clear,count,debug,dir,dirxml,error,exception,group,' + 139 'groupCollapsed,groupEnd,info,log,markTimeline,profile,profiles,profileEnd,' + 140 'show,table,time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn').split(','); 141 while (prop = properties.pop()) con[prop] = con[prop] || empty; 142 while (method = methods.pop()) con[method] = con[method] || dummy; 143 })(this.console = this.console || {}); // Using `this` for web workers. 144 145 // simple error extraction method 146 window.errorToString = function(err) { 147 if (!err) { 148 return undefined; 149 } 150 151 var sType = $.type(err); 152 if (sType==='string') { 153 return err; 154 } 155 else if (sType==='object') { 156 if (err.hasOwnProperty('readyState')) { 157 if (err.hasOwnProperty('responseJSON')) { 158 return this.errorToString(err.responseJSON); 159 } 160 else if (err.hasOwnProperty('responseText')) { 161 return this.errorToString(err.responseText); 162 } 163 } 164 var arrErrTxts=[]; 165 166 if (err.msg) { 167 arrErrTxts.push(this.errorToString(err.msg)); 168 } 169 if (err.message) { 170 arrErrTxts.push(this.errorToString(err.message)); 171 } 172 if (err.error && !$.isFunction(err.error)) { 173 arrErrTxts.push(this.errorToString(err.error)); 174 } 175 176 if (err.status === 0) { 177 arrErrTxts.push('Nicht verbunden.\nBitte überprüfen Sie ihre Netzwerkverbindung.'); 178 } else if (err.status == 404) { 179 arrErrTxts.push('Seite wurde nicht gefunden [404].'); 180 } else if (err.status == 500) { 181 arrErrTxts.push('Interner Server-Fehler [500].'); 182 } else if (err.statusText === 'parsererror') { 183 arrErrTxts.push('Fehler bei Verarbeitung der Rückgabe.'); 184 } else if (err.statusText === 'timeout') { 185 arrErrTxts.push('Zeitüberschreitung.'); 186 } else if (err.statusText === 'abort') { 187 arrErrTxts.push('Ajax request wurde abgebrochen.'); 188 } 189 190 if (arrErrTxts.length>0) { 191 return arrErrTxts.join(' '); 192 } 193 else { 194 return JSON.stringify(err); 195 } 196 } 197 else if (sType==='array') { 198 return JSON.stringify(err); 199 } 200 else { 201 return ''+err; 202 } 203 }; 204 </script>
204 205
205<script src="/utils/urijs/1.14.1/URI.js?bust=201907311430_202608282118"></script>
205 206 207
207<script src="/utils/requirejs/2.1.10/require.min.js?bust=201907311430_202608282118"></script>
207 208
208<script type="text/javascript"> 209 (function() { 210 var requireCfg = { 211 baseUrl: '/vds/cms_durmersheim.nsf/web', 212 paths: { 213 cms : '/vds/cms_durmersheim.nsf/web', 214 global : '/vds/cms_durmersheim.nsf/ui/global/js/global', 215 jquery: '/utils/jquery/2.1.0/jquery.min', 216 jqueryui: '/utils/jquery-ui/1.11.4/jquery-ui.min', 217 bootstrap: '/utils/bootstrap/3.3.0/js/bootstrap', 218 megamenu: '/utils/megamenu/20150720/js/jquery-accessibleMegaMenu', 219 asynquence: '/utils/asynquence/0.5.2-g/asq.src', 220 i18n: '/utils/requirejs-plugins/1.0.0/i18n', 221 text: '/utils/requirejs-plugins/1.0.0/text', 222 domReady: '/utils/requirejs-plugins/1.0.0/domReady', 223 throttledebounce: '/utils/throttle-debounce/1.1/jquery.ba-throttle-debounce', 224 historyjs: '/utils/historyjs/1.8.0/bundled/html4+html5/jquery.history', 225 lazyload: '/utils/lazyload/1.9.3/jquery.lazyload.min', 226 imagesloaded: '/utils/imagesloaded/3.1.8/imagesloaded.pkgd.min', 227 loadmask: '/utils/loadmask/0.4.0/jquery.loadmask.min', 228 urijs: '/utils/urijs/1.14.1', 229 footable: '/utils/footable/2.0.1.5/dist/footable.min', 230 moment: '/utils/moment/2.9.0/moment-with-locales.min', 231 underscore: '/utils/underscore/1.7.0/underscore-min', 232 bootbox: '/utils/bootbox/4.2.0/bootbox.min', 233 appear: '/utils/appear/0.3.4/jquery.appear', 234 fancytree: '/utils/fancytree/2.18.0/jquery.fancytree-all.min', 235 magnific: '/utils/magnific/1.1.0/jquery.magnific-popup.min', 236 underscore: '/utils/underscore/1.7.0/underscore-min', 237 bootstrapwizard: '/utils/bootstrap-wizard/1.0/jquery.bootstrap.wizard', 238 jqbootstrapvalidation: '/utils/jqBootstrapValidation/1.3.7/jqBootstrapValidation-1.3.7', 239 jqbootstrapvalidation_ext: '/vds/cms_durmersheim.nsf/ui/global/js/global/utils/jqbootstrapvalidation_ext', 240 bootbox: '/utils/bootbox/4.2.0/bootbox.min', 241 select2: '/utils/select2/3.5.2/select2.min', 242 select2_de: '/utils/select2/3.5.2/select2_locale_de', 243 datepicker: '/utils/bootstrap-datepicker/1.3.0/js/bootstrap-datepicker', 244 datepicker_de: '/utils/bootstrap-datepicker/1.3.0/js/locales/bootstrap-datepicker.de', 245 'jquery.ui.widget': '/utils/jquery-file-upload/9.7.0/js/vendor/jquery.ui.widget', 246 'jquery.iframe-transport': '/utils/jquery-file-upload/9.7.0/js/jquery.iframe-transport', 247 'jquery.fileupload': '/utils/jquery-file-upload/9.7.0/js/jquery.fileupload', 248 'jquery.fileupload-process': '/utils/jquery-file-upload/9.7.0/js/jquery.fileupload-process', 249 'jquery.fileupload-validate': '/utils/jquery-file-upload/9.7.0/js/jquery.fileupload-validate', 250 'iframeSizer': '/vds/cms_durmersheim.nsf/web/iframeSizer.min' 251 252 }, 253 waitSeconds : 60, 254 shim : { 255 bootstrap : { 256 deps: ['jquery'] 257 }, 258 bootbox : { 259 deps: ['bootstrap'] 260 }, 261 megamenu : { 262 deps: ['jquery'] 263 }, 264 throttledebounce : { 265 deps: ['jquery'] 266 }, 267 historyjs : { 268 deps: ['jquery'] 269 }, 270 lazyload : { 271 deps: ['jquery'] 272 }, 273 imagesloaded: { 274 deps: ['jquery'] 275 }, 276 loadmask: { 277 deps: ['jquery'] 278 }, 279 appear: { 280 deps: ['jquery'] 281 }, 282 jqueryui : { 283 deps: ['jquery'] 284 }, 285 fancytree: { 286 deps: ['jqueryui'] 287 }, 288 magnific: { 289 deps: ['jquery'] 290 }, 291 bootstrapwizard: { 292 deps: ['jquery','bootstrap'] 293 }, 294 jqbootstrapvalidation: { 295 deps: ['jquery'] 296 }, 297 jqbootstrapvalidation_ext: { 298 deps: ['jquery','jqbootstrapvalidation'] 299 }, 300 bootbox : { 301 deps: ['bootstrap'] 302 }, 303 select2: { 304 deps: ['jquery'] 305 }, 306 select2_de: { 307 deps: ['select2'] 308 }, 309 datepicker_de : { 310 deps: ['datepicker'] 311 }, 312 datepicker : { 313 deps: ['jqueryui','bootstrap'], 314 exports: '$.fn.datepicker', 315 init: function () { 316 var bootstrapDatepicker=this.$.fn.datepicker.noConflict(); 317 318 this.$.fn.datepicker.dates=bootstrapDatepicker.dates; 319 this.$.fn.bootstrapDatepicker = bootstrapDatepicker; 320 321 return bootstrapDatepicker; 322 } 323 }, 324 'jquery.ui.widget' : { 325 deps: ['jquery'] 326 }, 327 'jquery.iframe-transport' : { 328 deps: ['jquery'] 329 }, 330 'jquery.fileupload' : { 331 deps: ['jquery.ui.widget','bootstrap','jquery.iframe-transport'] 332 }, 333 'jquery.fileupload-process' : { 334 deps: ['jquery.fileupload'] 335 }, 336 'jquery.fileupload-validate' : { 337 deps: ['jquery.fileupload-process'] 338 } 339 340 }, 341 i18n: { 342 locale: "de" 343 }, 344 urlArgs: "bust=201907311430_202608282118" 345 }; 346 347 requirejs.config(requireCfg); 348 })(); 349</script>
349 350 351 352
352<script src="/utils/jquery/2.1.0/jquery.min.js?bust=201907311430_202608282118"></script>
352 353
353<script src="/utils/throttle-debounce/1.1/jquery.ba-throttle-debounce.js?bust=201907311430_202608282118"></script>
353 354 <!-- script src="/utils/bootstrap/3.3.0/js/bootstrap.min.js?bust=201907311430_202608282118"></script--> 355 356
356<script src="/utils/bxslider/4.1.2/jquery.bxslider.js"></script>
356 357 358 359 360 361<link href="/vds/cms_durmersheim.nsf/web/article.css?bust=201710131407_202608282118" rel="stylesheet"> 362 363<style> 364.rs-container { 365 /* min-width: 370px; */ 366} 367.rs-container { 368 display: flex; 369 flex-direction: column; 370 align-items: flex-end; 371} 372 373.bootbox.modal { 374 z-index: 10000; 375} 376.bootbox.modal .modal-dialog { 377 top: 50%; 378 transform: translateY(-50%); 379 -webkit-transform: translateY(-50%); 380 -ms-transform: translateY(-50%); 381 -o-transform: translateY(-50%); 382} 383</style> 384 385 386 </head> 387 <body class=""> 388 <div class="-header-measure"></div> 389 390 <div class="body-loader"><div class="lds-roller"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div></div> 391 <!-- noscript 392 <div class="jsonly"> 393 --> 394 <div class="header-background bg_color-service" > 395 396 397 </div> 398 399 <div class="main-banner " style="display:none;"> 400 401 402 403 404 405 406 407 408 </div> 409 410 411 <div class="navbar-background" > 412 <div class="main-nav-logo visible-sm visible-xs" title=" "></div> 413 </div> 414 415 416 417 418 419 420 421 422<div id="bnr-0-7413681531274203" class="action-bar-container header"> 423 <div class="action-bar main"> 424 425 <div class="group reader"> 426 <div class="rs-container rs_skip rs_preserve rs_href" style="opacity:0.15; cursor: pointer"> 427 <a title="Diese Seite vorlesen lassen" class="reader-action" 428 data-rs-href="//app-eu.readspeaker.com/cgi-bin/rsent?customerid=11429&lang=de&&readclass=read-title,read-body&url=" 429 data-rs-id="xp_bnr-0-7413681531274203"> 430 <img src="Vorlesen.svg" alt="Lautsprecher"/> 431 </a> 432 </div> 433 </div> 434 435 436 <ul class="group links"> 437 <li><a href="Kontaktformular.html" title="Anfrage senden">Kontakt</a></li> 438 <li><a href="https://durmersheim.ris-portal.de/web/stellenportal/home" target="_blank" title="weitere Informationen">Karriere</a></li> 439 <li><a href="news-feed.xml" target="_blank" title="RSS-Feeds abonnieren">RSS-Feed</a></li> 440 <li><a href="Barrierefreiheit.html" title="Erklärungen zur Barrierefreiheit">Barrierefreiheit</a></li> 441 </ul> 442 443 444 <ul role="menubar" class="group actions"> 445 <div class="dropdown hide-on-high-contrast"> 446 <button role="menuitem" class="btn dropdown-toggle contrast action icon" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> 447 <span class="caret"></span> 448 </button> 449 <ul class="dropdown-menu dropdown-menu-right"> 450 <li><a class="action contrast high" href="#" title="Kontrast ändern">hoher Kontrast</a></li> 451 <li><a class="action contrast normal" href="#" title="Kontrast ändern">normaler Kontrast</a></li> 452 </ul> 453
453<script type="text/javascript"> 454 require(['jquery'], function($) { 455 $('#bnr-0-7413681531274203 .action.contrast.high').on('click', function() { 456 $('body').addClass('high-contrast'); 457 458 document.cookie = "highContrastMode=true; path=/"; 459 }); 460 $('#bnr-0-7413681531274203 .action.contrast.normal').on('click', function() { 461 $('body').removeClass('high-contrast'); 462 463 document.cookie = "highContrastMode=false; path=/"; 464 }); 465 466 467 }); 468 </script>
468 469 </div> 470 <div class="dropdown"> 471 <button role="menuitem" class="btn dropdown-toggle fontsize action icon" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> 472 <span class="caret"></span> 473 </button> 474 <div class="dropdown-menu dropdown-menu-right"> 475 <div class="info"> 476 <p> 477 Verwenden Sie die Tastaturbefehle, um die SchriftgröÃe zu verändern: 478 </p> 479 <p> 480 <span class="keyboard-shortcuts"> 481 <span class="keyboard-shortcut"><span class="keyboard-key">STRG</span><span class="keyboard-key">+</span></span> 482 <span class="keyboard-shortcut"><span class="keyboard-key">STRG</span><span class="keyboard-key">-</span></span> 483 <span class="keyboard-shortcut visible-mac"><span class="keyboard-key">COMMAND</span><span class="keyboard-key">+</span></span> 484 <span class="keyboard-shortcut visible-mac"><span class="keyboard-key">COMMAND</span><span class="keyboard-key">-</span></span> 485 </span> 486 </p> 487 </div> 488
488<script type="text/javascript"> 489 require(['jquery'], function($) { 490 if (navigator.platform.toUpperCase().indexOf('MAC')>=0) { 491 $('#bnr-0-7413681531274203 .keyboard-shortcut:not(.visible-mac)').hide(); 492 $('#bnr-0-7413681531274203 .keyboard-shortcut.visible-mac').show(); 493 } 494 else { 495 $('#bnr-0-7413681531274203 .keyboard-shortcut:not(.visible-mac)').show(); 496 $('#bnr-0-7413681531274203 .keyboard-shortcut.visible-mac').hide(); 497 } 498 }); 499 </script>
499 500 </div> 501 </div> 502 <!-- div class="dropdown"> 503 <button role="menuitem" class="btn dropdown-toggle language action icon" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true"> 504 <span class="caret"></span> 505 </button> 506 </div --> 507 </ul> 508 509 510 <div class="group search"> 511 <div class="dropdown searchfield visible-xs"> 512 <a class="dropdown-toggle" href="#" data-toggle="dropdown" title="Stichwort-Suche" aria-haspopup="true" aria-expanded="true"><label></label></a> 513 <div class="dropdown-menu dropdown-menu-right"> 514 <form role="search" class="searchForm"> 515 <input type="text" class="form-control" placeholder="Ihr Suchbegriff..." style="width:200px;"> 516 </form> 517 </div> 518 </div> 519 <div class="input-group searchfield hidden-xs"> 520 <label for="bnr-0-7413681531274203-searchfield" class="input-group-addon"><span class="title">Stichwort-Suche</span></label> 521 <input id="bnr-0-7413681531274203-searchfield" type="text" class="form-control" placeholder="Ihr Suchbegriff..." /> 522 </div> 523 </div> 524 525 526 </div> 527</div> 528 529 530 <nav class="container-fluid navbar navbar-default navbar-static-top header" role="navigation"> 531 <div class="container-fluid"> 532 <!-- Brand and toggle get grouped for better mobile display --> 533 <div class="navbar-header"> 534 535 <a href="#" onClick="" id="topnavbar-collapse-btn" type="button" class="loading button navbar-toggle collapsed" data-toggle="collapse" data-target="#topnavbar-collapse"> 536 <span class="sr-only">Navigation umschalten</span> 537 <span class="icon-bar toggle-expand"></span> 538 <span class="icon-bar toggle-expand"></span> 539 <span class="icon-bar toggle-expand"></span> 540 <i class="fa fa-remove fa-lg toggle-collapse" style="display:none"></i> 541 </a> 542 543 544 545 546 </div> 547 548 549 <div id="topnavbar-mini" class="mini-nav-container" style="display:none"> 550 <nav class="nav navbar-nav navbar-right mini"> 551 <!-- sm breakpoint to switch to mini-nav --> 552 <ul class="mini-nav visible-xs visible-sm mini tree" id="mininavtree"> 553 <ul id="treeData" style="display: none;"> 554 555 <li id="service" class="folder section navsection-service"> 556 <span><div class="node-title-container"> 557 <div class="node-title">Rathaus & Bürgerservice</div> 558 <div class="node-image"> 559 560 <img class="color" alt="Rathaus & Bürgerservice" src=""> 561 562 563 </div> 564 </div></span> 565 <ul> 566 567 568 569 570 <li id="abfallentsorgung" title="Abfallentsorgung" class="navsection-service"><span><a href="rathaus_abfallentsorgung.html">Abfallentsorgung</a></span> 571 572 573 574 575 <li id="buergermeister" title="Bürgermeister" class="navsection-service"><span><a href="rathaus_buergermeister.html">Bürgermeister</a></span> 576 577 578 579 580 <li id="gaz" title="Gemeindeanzeiger" class="navsection-service"><span><a href="rathaus_gaonline_artikelliste.html">Gemeindeanzeiger</a></span> 581 582 583 584 585 <li id="gremium_ausschuesse" title="Gemeinderat" class="folder navsection-service"><span>Gemeinderat</span> 586 <ul> 587 588 589 590 591 592 <li id="gemeinderat" title="Gremien und Ausschüsse" class="navsection-service"><span><a href="rathaus_gemeinderat.html">Gremien und Ausschüsse</a></span> 593 594 595 596 597 <li id="ris" title="Ratsinformationssystem" class="navsection-service"><span><a href="rathaus_gremium_ris.html">Ratsinformationssystem</a></span> 598 599 600 601 602 603 </ul> 604 605 606 607 608 609 610 611 <li id="bekanntmachungen" title="Ãffentliche Bekanntmachungen" class="navsection-service"><span><a href="rathaus_rathaus_bekanntmachungen.html">Ãffentliche Bekanntmachungen</a></span> 612 613 614 615 616 <li id="oeffnungszeiten" title="Ãffnungszeiten" class="navsection-service"><span><a href="rathaus_oeffnungszeiten.html">Ãffnungszeiten</a></span> 617 618 619 620 621 <li id="ortsrecht" title="Ortsrecht / Satzungen" class="navsection-service"><span><a href="rathaus_ortsrecht.html">Ortsrecht / Satzungen</a></span> 622 623 624 625 626 <li id="rathaus" title="Rathaus" class="folder navsection-service"><span>Rathaus</span> 627 <ul> 628 629 630 631 632 633 <li id="rathaus_rathaus_ansprechpartner" title="Ansprechpartner A-Z" class="navsection-service"><span><a href="rathaus_rathaus_ansprechpartner.html">Ansprechpartner A-Z</a></span> 634 635 636 637 638 <li id="ausschreibungen" title="Ausschreibungen" class="navsection-service"><span><a href="rathaus_rathaus_ausschreibungen.html">Ausschreibungen</a></span> 639 640 641 642 643 <li id="formulare" title="Formulare" class="navsection-service"><span><a href="rathaus_rathaus_formulare.html">Formulare</a></span> 644 645 646 647 648 <li id="rentenberatung" title="Rentenberatung" class="navsection-service"><span><a href="rathaus_rathaus_rentenberatung.html">Rentenberatung</a></span> 649 650 651 652 653 <li id="wegweiser" title="Wo erledige ich was?" class="navsection-service"><span><a href="rathaus_rathaus_wegweiser.html">Wo erledige ich was?</a></span> 654 655 656 657 658 659 </ul> 660 661 662 663 664 665 666
667 <li id="schadensmeldung" title="Schadensmeldung" class="navsection-service"><span><a href="rathaus_schadensmeldung.html">Schadensmeldung</a></span> 668 669 670 671 672 <li id="stellenangebote" title="Stellenangebote" class="navsection-service"><span><a href="https://durmersheim.ris-portal.de/web/stellenportal/home">Stellenangebote</a></span> 673 674 675 676 677 <li id="steuern_gebuehren" title="Steuern & Gebühren" class="navsection-service"><span><a href="rathaus_steuern.html">Steuern & Gebühren</a></span> 678 679 680 681 682 <li id="termintool" title="Termin vereinbaren" class="navsection-service"><span><a href="rathaus_termin-tool.html">Termin vereinbaren</a></span> 683 684 685 686 687 <li id="veranstaltungskalender" title="Veranstaltungskalender" class="navsection-service"><span><a href="rathaus_veranstaltungskalender.html">Veranstaltungskalender</a></span> 688 689 690 691 692 <li id="wahlen" title="Wahlen" class="navsection-service"><span><a href="rathaus_wahlen.html">Wahlen</a></span> 693 694 695 696 697 <li id="rufnummern" title="Wichtige Rufnummern/Störungsmeldungen" class="navsection-service"><span><a href="rathaus_rufnummern.html">Wichtige Rufnummern/Störungsmeldungen</a></span> 698 699 700 701 702 703 704 </ul> 705 706 <li id="leben" class="folder section navsection-leben"> 707 <span><div class="node-title-container"> 708 <div class="node-title">Leben & Gemeinde</div> 709 <div class="node-image"> 710 711 <img class="color" alt="Leben & Gemeinde" src=""> 712 713 714 </div> 715 </div></span> 716 <ul> 717 718 719 720 721 <li id="Adventsmarkt" title="Durmersheimer Adventsmarkt 2026" class="navsection-leben"><span><a href="adventsmarkt.html">Durmersheimer Adventsmarkt 2026</a></span> 722 723 724 725 726 <li id="agenda" title="Agenda 21" class="navsection-leben"><span><a href="leben_agenda.html">Agenda 21</a></span> 727 728 729 730 731 <li id="Daten_Fakten" title="Daten & Fakten" class="navsection-leben"><span><a href="leben_daten.html">Daten & Fakten</a></span> 732 733 734 735 736 <li id="fluechtlinge" title="Flüchtlingsbegleitung und -unterbringung" class="navsection-leben"><span><a href="leben_fluechtlingsbegleitung.html">Flüchtlingsbegleitung und -unterbringung</a></span> 737 738 739 740 741 <li id="freibad" title="Freibad" class="navsection-leben"><span><a href="leben_freibad.html">Freibad</a></span> 742 743 744 745 746 <li id="feuerwehr" title="Freiwillige Feuerwehr" class="navsection-leben"><span><a href="leben_feuerwehr.html">Freiwillige Feuerwehr</a></span> 747 748 749 750 751 <li id="Freizeit" title="Freizeit" class="folder navsection-leben"><span>Freizeit</span> 752 <ul> 753 754 755 756 757 758 <li id="Campingplatz" title="Campingplatz" class="navsection-leben"><span><a href="leben_campingplatz.html">Campingplatz</a></span> 759 760 761 762 763 <li id="Kleingärten" title="Kleingärten" class="navsection-leben"><span><a href="leben_kleingaerten.html">Kleingärten</a></span> 764 765 766 767 768 <li id="natur" title="Natur" class="navsection-leben"><span><a href="leben_natur.html">Natur</a></span> 769 770 771 772 773 <li id="vermietungen" title="Vermietungen" class="navsection-leben"><span><a href="leben_vermietungen.html">Vermietungen</a></span> 774 775 776 777 778 779 </ul> 780 781 782 783 784 785 786 787 <li id="friedhof" title="Friedhöfe" class="navsection-leben"><span><a href="leben_friedhof_neu.html">Friedhöfe</a></span> 788 789 790 791 792 <li id="historisches" title="Historisches" class="folder navsection-leben"><span>Historisches</span> 793 <ul> 794 795 796 797 798 799 <li id="bäretriewergedicht" title="Bäretriewergedicht" class="navsection-leben"><span><a href="leben_historisches_baeretriewergedicht.html">Bäretriewergedicht</a></span> 800 801 802 803 804 <li id="bickesheim" title="Bickesheim" class="navsection-leben"><span><a href="leben_historisches_bickesheim.html">Bickesheim</a></span> 805 806 807 808 809 <li id="durmersheim" title="Durmersheim" class="navsection-leben"><span><a href="leben_historisches_durmersheim.html">Durmersheim</a></span> 810 811 812 813 814 <li id="zeittafel" title="Durmersheim â Zeittafel" class="navsection-leben"><span><a href="leben_historisches_durmersheim_zeittafel.html">Durmersheim â Zeittafel</a></span> 815 816 817 818 819 <li id="heimatmuseum" title="Heimatmuseum" class="navsection-leben"><span><a href="leben_heimatmuseum.html">Heimatmuseum</a></span> 820 821 822 823 824 <li id="würmersheim" title="Würmersheim" class="navsection-leben"><span><a href="leben_historisches_würmersheim.html">
824Würmersheim</a></span> 825 826 827 828 829 <li id="wuermersheim" title="Würmersheim â Zeittafel" class="navsection-leben"><span><a href="leben_historisches_wuermersheim_zeittafel.html">Würmersheim â Zeittafel</a></span> 830 831 832 833 834 835 </ul> 836 837 838 839 840 841 842 843 <li id="imagefilm" title="Imagefilm" class="navsection-leben"><span><a href="leben_imagefilm.html">Imagefilm</a></span> 844 845 846 847 848 <li id="kirche" title="Kirchen" class="navsection-leben"><span><a href="leben_kirche_.html">Kirchen</a></span> 849 850 851 852 853 <li id="landkreis" title="Landkreis" class="navsection-leben"><span><a href="leben_landkreis.html">Landkreis</a></span> 854 855 856 857 858 <li id="Natur" title="Natur und Umwelt" class="folder navsection-leben"><span>Natur und Umwelt</span> 859 <ul> 860 861 862 863 864 865 <li id="hochwasser" title="Hochwasser" class="navsection-leben"><span><a href="leben_hochwasser.html">Hochwasser</a></span> 866 867 868 869 870 <li id="AMKL" title="Aktionsplan für Mobilität, Klima- und Lärmschutz " class="navsection-leben"><span><a href="leben_amkl.html">Aktionsplan für Mobilität, Klima- und Lärmschutz </a></span> 871 872 873 874 875 <li id="Ortsmitten" title="Ortsmitten-Qualitätserfassung" class="navsection-leben"><span><a href="leben_ortsmitten.html">Ortsmitten-Qualitätserfassung</a></span> 876 877 878 879 880 <li id="klima" title="Klimaschutz" class="navsection-leben"><span><a href="leben_klimaschutz.html">Klimaschutz</a></span> 881 882 883 884 885 <li id="natur" title="Natur" class="navsection-leben"><span><a href="leben_natur.html">Natur</a></span> 886 887 888 889 890 <li id="wald" title="Wald" class="navsection-leben"><span><a href="leben_wald.html">Wald</a></span> 891 892 893 894 895 <li id="brennholzbestellung" title="Brennholzbestellung" class="navsection-leben"><span><a href="leben_brennholzbestellung_inaktiv.html">Brennholzbestellung</a></span> 896 897 898 899 900 <li id="windenergie" title="Windenergie" class="navsection-leben"><span><a href="leben_windenergie.html">Windenergie</a></span> 901 902 903 904 905 906 </ul> 907 908 909 910 911 912 913 914 <li id="pamina" title="Pamina Rheinpark" class="navsection-leben"><span><a href="leben_pamina.html">Pamina Rheinpark</a></span> 915 916 917 918 919 <li id="vereine" title="Vereine" class="folder navsection-leben"><span>Vereine</span> 920 <ul> 921 922 923 924 925 926 <li id="vereine" title="Vereine" class="navsection-leben"><span><a href="leben_vereine.html">Vereine</a></span> 927 928 929 930 931 932 </ul> 933 934 935 936 937 938 939 940 <li id="spielplaetze" title="Spielplätze" class="navsection-leben"><span><a href="leben_spielplaetze.html">Spielplätze</a></span> 941 942 943 944 945 <li id="staedtepartnerschaften" title="Städtepartnerschaften" class="navsection-leben"><span><a href="leben_staedtepartnerschaften.html">Städtepartnerschaften</a></span> 946 947 948 949 950 951 952 </ul> 953 954 <li id="familien_senioren" class="folder section navsection-familien_senioren"> 955 <span><div class="node-title-container"> 956 <div class="node-title">Bildung & Soziales</div> 957 <div class="node-image"> 958 959 <img class="color" alt="Bildung & Soziales" src=""> 960 961 962 </div> 963 </div></span> 964 <ul> 965 966 967 968 969 <li id="familien_senioren" title="Familien- und Seniorenbüro" class="folder navsection-familien_senioren"><span>Familien- und Seniorenbüro</span> 970 <ul> 971 972 973 974 975 976 <li id="familienbuero" title="Familienbüro" class="navsection-familien_senioren"><span><a href="familien_familienbuero.html">Familienbüro</a></span> 977 978 979 980 981 <li id="seniorenbuero" title="Seniorenbüro" class="navsection-familien_senioren"><span><a href="familien_seniorenhilfe.html">Seniorenbüro</a></span> 982 983 984 985 986 <li id="familien_seniorenbüro" title="Ãber uns" class="navsection-familien_senioren"><span><a href="familien_familien_seniorenbuero.html">Ãber uns</a></span> 987 988 989 990 991 992 </ul> 993 994 995 996 997 998 999 1000 <li id="ferienbetreuung" title="Ferienbetreuung" class="navsection-familien_senioren"><span><a href="familien_ferienbetreuung.html">Ferienbetreuung</a></span> 1001 1002 1003 1004 1005 <li id="ferienspass" title="FerienspaÃ" class="navsection-familien_senioren"><span><a href="familien_ferienspass_Anmeldung.html">
1005FerienspaÃ</a></span> 1006 1007 1008 1009 1010 <li id="horte" title="Horte" class="navsection-familien_senioren"><span><a href="familien_horte.html">Horte</a></span> 1011 1012 1013 1014 1015 <li id="familien_jugendhaus" title="Jugendhaus" class="navsection-familien_senioren"><span><a href="familien_jugendhaus.html">Jugendhaus</a></span> 1016 1017 1018 1019 1020 <li id="Kindertagespflege" title="Kinderbetreuung U3 - Kindertagespflege" class="navsection-familien_senioren"><span><a href="familien_kindertagespflege.html">Kinderbetreuung U3 - Kindertagespflege</a></span> 1021 1022 1023 1024 1025 <li id="kindertagesstaetten" title="Kindertagesstätten" class="folder navsection-familien_senioren"><span>Kindertagesstätten</span> 1026 <ul> 1027 1028 1029 1030 1031 1032 <li id="kindertagesstaetten_info" title="Allgemeines und Anmeldung" class="navsection-familien_senioren"><span><a href="familien_kindertagesstaetten_info2.html">Allgemeines und Anmeldung</a></span> 1033 1034 1035 1036 1037 <li id="villakunterbunt" title="Villa Kunterbunt" class="navsection-familien_senioren"><span><a href="familien_kindergaerten_villakunterbunt.html">Villa Kunterbunt</a></span> 1038 1039 1040 1041 1042 <li id="villaregenbogen" title="Villa Regenbogen" class="navsection-familien_senioren"><span><a href="familien_kindergaerten_villaregenbogen.html">Villa Regenbogen</a></span> 1043 1044 1045 1046 1047 <li id="villasonnenschein" title="Villa Sonnenschein" class="navsection-familien_senioren"><span><a href="familien_kindergaerten_villasonnenschein.html">Villa Sonnenschein</a></span> 1048 1049 1050 1051 1052 <li id="kindergartenwald" title="Waldkindergarten Villa WildWuchs" class="navsection-familien_senioren"><span><a href="familien_kindergaerten_waldkindergarten.html">Waldkindergarten Villa WildWuchs</a></span> 1053 1054 1055 1056 1057 <li id="stbernhard" title="St. Bernhard" class="navsection-familien_senioren"><span><a href="familien_kindergaerten_stbernhard.html">St. Bernhard</a></span> 1058 1059 1060 1061 1062 <li id="stlioba" title="St. Lioba" class="navsection-familien_senioren"><span><a href=" familien_kindergaerten_stlioba.html">St. Lioba</a></span> 1063 1064 1065 1066 1067 <li id="kindergartenstthomas" title="St. Thomas" class="navsection-familien_senioren"><span><a href="familien_kindergaerten_kindergartenstthomas.html">St. Thomas</a></span> 1068 1069 1070 1071 1072 1073 </ul> 1074 1075 1076 1077 1078 1079 1080 1081 <li id="mensa" title="Mensa" class="navsection-familien_senioren"><span><a href="familien_mensa.html">Mensa</a></span> 1082 1083 1084 1085 1086 <li id="Bücherei" title="Ãffentliche Bücherei" class="navsection-familien_senioren"><span><a href="familien_buecherei.html">Ãffentliche Bücherei</a></span> 1087 1088 1089 1090 1091 <li id="schulen" title="Schulen" class="folder navsection-familien_senioren"><span>Schulen</span> 1092 <ul> 1093 1094 1095 1096 1097 1098 <li id="grundschulefriedrichschule" title="Grundschule Friedrichschule" class="navsection-familien_senioren"><span><a href="familien_schule_grundschulefriedrichschule.html">Grundschule Friedrichschule</a></span> 1099 1100 1101 1102 1103 <li id="grundschulewürmersheim" title="Grundschule Würmersheim" class="navsection-familien_senioren"><span><a href="familien_schule_grundschulewürmersheim.html">Grundschule Würmersheim</a></span> 1104 1105 1106 1107 1108 <li id="hardtschuledurmersheimauamrhein" title="Hardtschule Durmersheim" class="navsection-familien_senioren"><span><a href="familien_schule_hardtschuledurmersheimauamrhein.html">Hardtschule Durmersheim</a></span> 1109 1110 1111 1112 1113 <li id="realschuledurmersheim" title="Realschule Durmersheim" class="navsection-familien_senioren"><span><a href="familien_schule_realschuledurmersheim.html">Realschule Durmersheim</a></span> 1114 1115 1116 1117 1118 <li id="Wilhelm-Hausenstein-Gymnasium" title="Wilhelm-Hausenstein-Gymnasium" class="navsection-familien_senioren"><span><a href="familien_schule_wilhelm-hausenstein-gymnasium.html">Wilhelm-Hausenstein-Gymnasium</a></span> 1119 1120 1121 1122 1123 1124 </ul> 1125 1126 1127 1128 1129 1130 1131 1132 <li id="VHS" title="Volkshochschule" class="navsection-familien_senioren"><span><a href="familien_schule_volkshochschule.html">Volkshochschule</a></span> 1133 1134 1135 1136 1137 1138 1139 </ul> 1140 1141 <li id="gewerbe_bauen" class="folder section navsection-gewerbe_bauen"> 1142 <span><div class="node-title-container"> 1143 <div class="node-title">Gewerbe & Bauen</div> 1144 <div class="node-image"> 1145 1146 <img class="color" alt="Gewerbe & Bauen" src=""> 1147 1148 1149 </div> 1150 </div></span> 1151 <ul> 1152 1153 1154 1155 1156 <li id="Bebauungsplaene" title="Bebauungspläne" class="folder navsection-gewerbe_bauen"><span>Bebauungspläne</span> 1157 <ul> 1158 1159 1160 1161 1162 1163 <li id="Bebauungsplanverfahren" title="Bebauungsplanverfahren" class="navsection-gewerbe_bauen"><span><a href="bebauungsplanverfahren.html">Bebauungsplanverfahren</a></span> 1164 1165 1166 1167 1168 <li id="rechtskr_BPläne" title="Rechtskräftige Bebauungspläne" class="navsection-gewerbe_bauen"><span><a href="gewerbe_rechtskr_BPläne.html">Rechtskräftige Bebauungspläne</a></span> 1169 1170 1171 1172 1173 1174 </ul> 1175 1176 1177 1178 1179 1180 1181 1182 <li id="Gemeindeentwicklungskonzept" title="Gemeindeentwicklungskonzept" class="navsection-gewerbe_bauen"><span><a href="gewerbe_gemeindeentwicklungskonzept.html">Gemeindeentwicklungskonzept</a></span> 1183 1184 1185 1186 1187 <li id="bauen_gewerbe" title="Gewerbe und Bauen" class="navsection-gewerbe_bauen"><span><a href="gewerbe_gewerbe_bauen.html">Gewerbe und Bauen</a></span> 1188 1189 1190 1191 1192 <li id="gewerbebauplaetze" title="Gewerbebauplätze" class="navsection-gewerbe_bauen"><span><a href="gewerbe_gewerbebauplaetze.html">
1192Gewerbebauplätze</a></span> 1193 1194 1195 1196 1197 <li id="GAA" title="Gutachterausschuss" class="navsection-gewerbe_bauen"><span><a href="gewerbe_GAA.html">Gutachterausschuss</a></span> 1198 1199 1200 1201 1202 <li id="innenstadt" title="Innenstadt" class="navsection-gewerbe_bauen"><span><a href="gewerbe_innenstadt.html">Innenstadt</a></span> 1203 1204 1205 1206 1207 <li id="Wärmeplanung" title="Kommunale Wärmeplanung" class="navsection-gewerbe_bauen"><span><a href="gewerbe_waermeplanung.html">Kommunale Wärmeplanung</a></span> 1208 1209 1210 1211 1212 <li id="öffentliche Auslegung" title="Ãffentliche Auslegungen" class="navsection-gewerbe_bauen"><span><a href="gewerbe_auslegungen2.html">Ãffentliche Auslegungen</a></span> 1213 1214 1215 1216 1217 <li id="bauausschreibungen" title="Ãffentliche Ausschreibungen / vergebene Aufträge" class="folder navsection-gewerbe_bauen"><span>Ãffentliche Ausschreibungen / vergebene Aufträge</span> 1218 <ul> 1219 1220 1221 1222 1223 1224 <li id="öffentliche Ausschreibung" title="Ãffentliche Ausschreibungen (VOB, VgV, UVgO, VOF) " class="navsection-gewerbe_bauen"><span><a href="gewerbe_öff_ausschreibung.html">Ãffentliche Ausschreibungen (VOB, VgV, UVgO, VOF) </a></span> 1225 1226 1227 1228 1229 <li id="beschränkte Ausschreibungen" title="Beschränkte Ausschreibungen (VOB, UVgO, VOF)" class="navsection-gewerbe_bauen"><span><a href="gewerbe_beschränkte_ausschreibung.html">Beschränkte Ausschreibungen (VOB, UVgO, VOF)</a></span> 1230 1231 1232 1233 1234 <li id="vergebene Aufträge" title="Bekanntmachung vergebener Aufträge" class="navsection-gewerbe_bauen"><span><a href="gewerbe_vergebene_ausschreibung.html">Bekanntmachung vergebener Aufträge</a></span> 1235 1236 1237 1238 1239 1240 </ul> 1241 1242 1243 1244 1245 1246 1247 1248 <li id="gewerbeverein" title="Ãrtlicher Gewerbeverein (ISG)" class="navsection-gewerbe_bauen"><span><a href="gewerbe_gewerbeverein.html">Ãrtlicher Gewerbeverein (ISG)</a></span> 1249 1250 1251 1252 1253 <li id="Städtebauliche Erneuerung "Speyerer StraÃe"" title="Städtebauliche Erneuerung "Speyerer StraÃe"" class="navsection-gewerbe_bauen"><span><a href="gewerbe_sanierungsgebiet.html">Städtebauliche Erneuerung "Speyerer StraÃe"</a></span> 1254 1255 1256 1257 1258 <li id="unternehmen" title="Unternehmen A-Z" class="navsection-gewerbe_bauen"><span><a href="gewerbe_unternehmen.html">Unternehmen A-Z</a></span> 1259 1260 1261 1262 1263 <li id="wohnbauplaetze" title="Wohnbauplätze" class="folder navsection-gewerbe_bauen"><span>Wohnbauplätze</span> 1264 <ul> 1265 1266 1267 1268 1269 1270 <li id="westendstraÃe" title="WestendstraÃe" class="navsection-gewerbe_bauen"><span><a href="gewerbe_westendstrasse.html">WestendstraÃe</a></span> 1271 1272 1273 1274 1275 1276 </ul> 1277 1278 1279 1280 1281 </ul> 1282 1283<li class="dummy-node"> 1284</ul> 1285 </ul> 1286 </nav> 1287 </div> 1288 1289 1290 1291 <!-- Collect the nav links, forms, and other content for toggling --> 1292 <div class="collapse navbar-collapse" id="topnavbar-collapse"> 1293 <!-- sm breakpoint to switch to mini-nav --> 1294 <nav class="nav navbar-nav mega hidden-xs hidden-sm bg_color-navigation-navbar"> 1295 <!-- sm breakpoint to switch to mini-nav --> 1296 <ul class="nav-menu fade-in visible-xs visible-sm visible-md visible-lg"> 1297 <li class="main-nav-logo" title=" "></li> 1298 1299 1300 <li class="nav-item" data-navSection="service"> 1301 <a href="#"> 1302 1303 1304 <span class="section-title">Rathaus &<br>Bürgerservice</span> <span class="nav-toggle-indicator"></span> 1305 1306 1307 1308 </a> 1309 <span class="nav-item-description"><ul><li>Bürgerservice</li><li>Verwaltung</li><li>Gemeinderat</li><li>Gemeindeanzeiger</li></ul></span> 1310 <div class="sub-nav section-1 col-1 navsection-service" data-sub-nav-idx="1"> 1311 <div class="sub-nav-scrollpane"> 1312 <div class="section-header"> 1313 <span class="header-body"> 1314 <span class="header-icon"> 1315 <img alt="Anker" src="Anker-Symbol.svg" /> 1316 </span> 1317 <span class="header-title">Rathaus & Bürgerservice</span> 1318 <span class="sub-nav-mask"></span> 1319 </span> 1320 </div><ul class="sub-nav-group" data-navLevel="1"> 1321 <li><div class="sub-nav-item " data-navId="abfallentsorgung"><a href="rathaus_abfallentsorgung.html">Abfallentsorgung</a></div></li><li><div class="sub-nav-item " data-navId="buergermeister"><a href="rathaus_buergermeister.html">Bürgermeister</a></div></li><li><div class="sub-nav-item " data-navId="gaz"><a href="rathaus_gaonline_artikelliste.html">Gemeindeanzeiger</a></div></li><li><div class="sub-nav-item " data-navId="gremium_ausschuesse"><a class="is-parent-nav-item" href="#">Gemeinderat</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="bekanntmachungen"><a href="rathaus_rathaus_bekanntmachungen.html">Ãffentliche Bekanntmachungen</a></div></li><li><div class="sub-nav-item " data-navId="oeffnungszeiten"><a href="rathaus_oeffnungszeiten.html">Ãffnungszeiten</a></div></li><li><div class="sub-nav-item " data-navId="ortsrecht"><a href="rathaus_ortsrecht.html">Ortsrecht / Satzungen</a></div></li><li><div class="sub-nav-item " data-navId="rathaus"><a class="is-parent-nav-item" href="#">Rathaus</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="schadensmeldung"><a href="rathaus_schadensmeldung.html">Schadensmeldung</a></div></li><li><div class="sub-nav-item " data-navId="stellenangebote"><a href="https://durmersheim.ris-portal.de/web/stellenportal/home">Stellenangebote</a></div></li><li><div class="sub-nav-item " data-navId="steuern_gebuehren"><a href="rathaus_steuern.html">Steuern & Gebühren</a></div></li><li><div class="sub-nav-item " data-navId="termintool"><a href="rathaus_termin-tool.html">Termin vereinbaren</a></div></li><li><div class="sub-nav-item " data-navId="veranstaltungskalender"><a href="rathaus_veranstaltungskalender.html">Veranstaltungskalender</a></div></li><li><div class="sub-nav-item " data-navId="wahlen"><a href="rathaus_wahlen.html">Wahlen</a></div></li><li><div class="sub-nav-item " data-navId="rufnummern"><a href="rathaus_rufnummern.html">Wichtige Rufnummern/Störungsmeldungen</a></div></li> 1322 </ul><ul class="sub-nav-group" data-navLevel="2"> 1323 <li><div class="sub-nav-item gremium_ausschuesse " data-navId="gemeinderat"><a href="rathaus_gemeinderat.html">Gremien und Ausschüsse</a></div></li><li><div class="sub-nav-item gremium_ausschuesse " data-navId="ris"><a href="rathaus_gremium_ris.html">Ratsinformationssystem</a></div></li><li><div class="sub-nav-item rathaus " data-navId="rathaus_rathaus_ansprechpartner"><a href="rathaus_rathaus_ansprechpartner.html">Ansprechpartner A-Z</a></div></li><li><div class="sub-nav-item rathaus " data-navId="ausschreibungen"><a href="rathaus_rathaus_ausschreibungen.html">Ausschreibungen</a></div></li><li><div class="sub-nav-item rathaus " data-navId="formulare"><a href="rathaus_rathaus_formulare.html">Formulare</a></div></li><li><div class="sub-nav-item rathaus " data-navId="rentenberatung"><a href="rathaus_rathaus_rentenberatung.html">Rentenberatung</a></div></li><li><div class="sub-nav-item rathaus " data-navId="wegweiser"><a href="rathaus_rathaus_wegweiser.html">Wo erledige ich was?</a></div></li> 1324 </ul> 1325 <div class="sub-nav-mask"></div> 1326 </div> 1327 </div> 1328 1329 </li> 1330 <li class="nav-separator"></li> 1331 1332 <li class="nav-item" data-navSection="leben"> 1333 <a href="#"> 1334 1335 1336 <span class="section-title">Leben &<br>Gemeinde</span> <span class="nav-toggle-indicator"></span> 1337 1338 1339 1340 </a> 1341 <span class="nav-item-description"><ul><li>Vereine</li><li>Freibad</li><li>
1341Spielplätze</li><li>Institutionen</li></ul></span> 1342 <div class="sub-nav section-2 col-1 navsection-leben" data-sub-nav-idx="2"> 1343 <div class="sub-nav-scrollpane"> 1344 <div class="section-header"> 1345 <span class="header-body"> 1346 <span class="header-icon"> 1347 <img alt="Anker" src="Anker-Symbol.svg" /> 1348 </span> 1349 <span class="header-title">Leben & Gemeinde</span> 1350 <span class="sub-nav-mask"></span> 1351 </span> 1352 </div><ul class="sub-nav-group" data-navLevel="1"> 1353 <li><div class="sub-nav-item " data-navId="Adventsmarkt"><a href="adventsmarkt.html">Durmersheimer Adventsmarkt 2026</a></div></li><li><div class="sub-nav-item " data-navId="agenda"><a href="leben_agenda.html">Agenda 21</a></div></li><li><div class="sub-nav-item " data-navId="Daten_Fakten"><a href="leben_daten.html">Daten & Fakten</a></div></li><li><div class="sub-nav-item " data-navId="fluechtlinge"><a href="leben_fluechtlingsbegleitung.html">Flüchtlingsbegleitung und -unterbringung</a></div></li><li><div class="sub-nav-item " data-navId="freibad"><a href="leben_freibad.html">Freibad</a></div></li><li><div class="sub-nav-item " data-navId="feuerwehr"><a href="leben_feuerwehr.html">Freiwillige Feuerwehr</a></div></li><li><div class="sub-nav-item " data-navId="Freizeit"><a class="is-parent-nav-item" href="#">Freizeit</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="friedhof"><a href="leben_friedhof_neu.html">Friedhöfe</a></div></li><li><div class="sub-nav-item " data-navId="historisches"><a class="is-parent-nav-item" href="#">Historisches</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="imagefilm"><a href="leben_imagefilm.html">Imagefilm</a></div></li><li><div class="sub-nav-item " data-navId="kirche"><a href="leben_kirche_.html">Kirchen</a></div></li><li><div class="sub-nav-item " data-navId="landkreis"><a href="leben_landkreis.html">Landkreis</a></div></li><li><div class="sub-nav-item " data-navId="Natur"><a class="is-parent-nav-item" href="#">Natur und Umwelt</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="pamina"><a href="leben_pamina.html">Pamina Rheinpark</a></div></li><li><div class="sub-nav-item " data-navId="vereine"><a class="is-parent-nav-item" href="#">Vereine</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="spielplaetze"><a href="leben_spielplaetze.html">Spielplätze</a></div></li><li><div class="sub-nav-item " data-navId="staedtepartnerschaften"><a href="leben_staedtepartnerschaften.html">Städtepartnerschaften</a></div></li> 1354 </ul><ul class="sub-nav-group" data-navLevel="2"> 1355 <li><div class="sub-nav-item Freizeit " data-navId="Campingplatz"><a href="leben_campingplatz.html">Campingplatz</a></div></li><li><div class="sub-nav-item Freizeit " data-navId="Kleingärten"><a href="leben_kleingaerten.html">Kleingärten</a></div></li><li><div class="sub-nav-item Freizeit " data-navId="natur"><a href="leben_natur.html">Natur</a></div></li><li><div class="sub-nav-item Freizeit " data-navId="vermietungen"><a href="leben_vermietungen.html">Vermietungen</a></div></li><li><div class="sub-nav-item historisches " data-navId="bäretriewergedicht"><a href="leben_historisches_baeretriewergedicht.html">Bäretriewergedicht</a></div></li><li><div class="sub-nav-item historisches " data-navId="bickesheim"><a href="leben_historisches_bickesheim.html">Bickesheim</a></div></li><li><div class="sub-nav-item historisches " data-navId="durmersheim"><a href="leben_historisches_durmersheim.html">Durmersheim</a></div></li><li><div class="sub-nav-item historisches " data-navId="zeittafel"><a href="leben_historisches_durmersheim_zeittafel.html">Durmersheim â Zeittafel</a></div></li><li><div class="sub-nav-item historisches " data-navId="heimatmuseum"><a href="leben_heimatmuseum.html">Heimatmuseum</a></div></li><li><div class="sub-nav-item historisches " data-navId="würmersheim"><a href="leben_historisches_würmersheim.html">Würmersheim</a></div></li><li><div class="sub-nav-item historisches " data-navId="wuermersheim"><a href="leben_historisches_wuermersheim_zeittafel.html">
1355Würmersheim â Zeittafel</a></div></li><li><div class="sub-nav-item Natur " data-navId="hochwasser"><a href="leben_hochwasser.html">Hochwasser</a></div></li><li><div class="sub-nav-item Natur " data-navId="AMKL"><a href="leben_amkl.html">Aktionsplan für Mobilität, Klima- und Lärmschutz </a></div></li><li><div class="sub-nav-item Natur " data-navId="Ortsmitten"><a href="leben_ortsmitten.html">Ortsmitten-Qualitätserfassung</a></div></li><li><div class="sub-nav-item Natur " data-navId="klima"><a href="leben_klimaschutz.html">Klimaschutz</a></div></li><li><div class="sub-nav-item Natur " data-navId="natur"><a href="leben_natur.html">Natur</a></div></li><li><div class="sub-nav-item Natur " data-navId="wald"><a href="leben_wald.html">Wald</a></div></li><li><div class="sub-nav-item Natur " data-navId="brennholzbestellung"><a href="leben_brennholzbestellung_inaktiv.html">Brennholzbestellung</a></div></li><li><div class="sub-nav-item Natur " data-navId="windenergie"><a href="leben_windenergie.html">Windenergie</a></div></li><li><div class="sub-nav-item vereine " data-navId="vereine"><a href="leben_vereine.html">Vereine</a></div></li> 1356 </ul> 1357 <div class="sub-nav-mask"></div> 1358 </div> 1359 </div> 1360 1361 </li> 1362 <li class="nav-separator"></li> 1363 1364 <li class="nav-item" data-navSection="familien_senioren"> 1365 <a href="#"> 1366 1367 1368 <span class="section-title">Bildung &<br>Soziales</span> <span class="nav-toggle-indicator"></span> 1369 1370 1371 1372 </a> 1373 <span class="nav-item-description"><ul><li>Kindertagesstätten</li><li>Schulen</li><li>Betreuungsangebote</li><li>Senioren</li></ul></span> 1374 <div class="sub-nav section-3 col-1 navsection-familien_senioren" data-sub-nav-idx="3"> 1375 <div class="sub-nav-scrollpane"> 1376 <div class="section-header"> 1377 <span class="header-body"> 1378 <span class="header-icon"> 1379 <img alt="Anker" src="Anker-Symbol.svg" /> 1380 </span> 1381 <span class="header-title">Bildung & Soziales</span> 1382 <span class="sub-nav-mask"></span> 1383 </span> 1384 </div><ul class="sub-nav-group" data-navLevel="1"> 1385 <li><div class="sub-nav-item " data-navId="familien_senioren"><a class="is-parent-nav-item" href="#">Familien- und Seniorenbüro</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="ferienbetreuung"><a href="familien_ferienbetreuung.html">Ferienbetreuung</a></div></li><li><div class="sub-nav-item " data-navId="ferienspass"><a href="familien_ferienspass_Anmeldung.html">FerienspaÃ</a></div></li><li><div class="sub-nav-item " data-navId="horte"><a href="familien_horte.html">Horte</a></div></li><li><div class="sub-nav-item " data-navId="familien_jugendhaus"><a href="familien_jugendhaus.html">Jugendhaus</a></div></li><li><div class="sub-nav-item " data-navId="Kindertagespflege"><a href="familien_kindertagespflege.html">Kinderbetreuung U3 - Kindertagespflege</a></div></li><li><div class="sub-nav-item " data-navId="kindertagesstaetten"><a class="is-parent-nav-item" href="#">Kindertagesstätten</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="mensa"><a href="familien_mensa.html">Mensa</a></div></li><li><div class="sub-nav-item " data-navId="Bücherei"><a href="familien_buecherei.html">Ãffentliche Bücherei</a></div></li><li><div class="sub-nav-item " data-navId="schulen"><a class="is-parent-nav-item" href="#">Schulen</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="VHS"><a href="familien_schule_volkshochschule.html">Volkshochschule</a></div></li> 1386 </ul><ul class="sub-nav-group" data-navLevel="2"> 1387 <li><div class="sub-nav-item familien_senioren " data-navId="familienbuero"><a href="familien_familienbuero.html">Familienbüro</a></div></li><li><div class="sub-nav-item familien_senioren " data-navId="seniorenbuero"><a href="familien_seniorenhilfe.html">Seniorenbüro</a></div></li><li><div class="sub-nav-item familien_senioren " data-navId="familien_seniorenbüro"><a href="familien_familien_seniorenbuero.html">Ãber uns</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="kindertagesstaetten_info"><a href="familien_kindertagesstaetten_info2.html">Allgemeines und Anmeldung</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="villakunterbunt"><a href="familien_kindergaerten_villakunterbunt.html">Villa Kunterbunt</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="villaregenbogen"><a href="familien_kindergaerten_villaregenbogen.html">Villa Regenbogen</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="villasonnenschein"><a href="familien_kindergaerten_villasonnenschein.html">Villa Sonnenschein</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="kindergartenwald"><a href="familien_kindergaerten_waldkindergarten.html">Waldkindergarten Villa WildWuchs</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="stbernhard"><a href="familien_kindergaerten_stbernhard.html">St. Bernhard</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="stlioba"><a href=" familien_kindergaerten_stlioba.html">St. Lioba</a></div></li><li><div class="sub-nav-item kindertagesstaetten " data-navId="kindergartenstthomas"><a href="familien_kindergaerten_kindergartenstthomas.html">St. Thomas</a></div></li><li><div class="sub-nav-item schulen " data-navId="grundschulefriedrichschule"><a href="familien_schule_grundschulefriedrichschule.html">Grundschule Friedrichschule</a></div></li><li><div class="sub-nav-item schulen " data-navId="grundschulewürmersheim"><a href="familien_schule_grundschulewürmersheim.html">Grundschule Würmersheim</a></div></li><li><div class="sub-nav-item schulen " data-navId="hardtschuledurmersheimauamrhein"><a href="familien_schule_hardtschuledurmersheimauamrhein.html">
1387Hardtschule Durmersheim</a></div></li><li><div class="sub-nav-item schulen " data-navId="realschuledurmersheim"><a href="familien_schule_realschuledurmersheim.html">Realschule Durmersheim</a></div></li><li><div class="sub-nav-item schulen " data-navId="Wilhelm-Hausenstein-Gymnasium"><a href="familien_schule_wilhelm-hausenstein-gymnasium.html">Wilhelm-Hausenstein-Gymnasium</a></div></li> 1388 </ul> 1389 <div class="sub-nav-mask"></div> 1390 </div> 1391 </div> 1392 1393 </li> 1394 <li class="nav-separator"></li> 1395 1396 <li class="nav-item" data-navSection="gewerbe_bauen"> 1397 <a href="#"> 1398 1399 1400 <span class="section-title">Gewerbe &<br>Bauen</span> <span class="nav-toggle-indicator"></span> 1401 1402 1403 1404 </a> 1405 <span class="nav-item-description"><ul><li>Gewerbe</li><li>Gewerbeverein</li><li>Bauplätze</li><li>Ausschreibungen</li></ul></span> 1406 <div class="sub-nav section-4 col-1 navsection-gewerbe_bauen" data-sub-nav-idx="4"> 1407 <div class="sub-nav-scrollpane"> 1408 <div class="section-header"> 1409 <span class="header-body"> 1410 <span class="header-icon"> 1411 <img alt="Anker" src="Anker-Symbol.svg" /> 1412 </span> 1413 <span class="header-title">Gewerbe & Bauen</span> 1414 <span class="sub-nav-mask"></span> 1415 </span> 1416 </div><ul class="sub-nav-group" data-navLevel="1"> 1417 <li><div class="sub-nav-item " data-navId="Bebauungsplaene"><a class="is-parent-nav-item" href="#">Bebauungspläne</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="Gemeindeentwicklungskonzept"><a href="gewerbe_gemeindeentwicklungskonzept.html">Gemeindeentwicklungskonzept</a></div></li><li><div class="sub-nav-item " data-navId="bauen_gewerbe"><a href="gewerbe_gewerbe_bauen.html">Gewerbe und Bauen</a></div></li><li><div class="sub-nav-item " data-navId="gewerbebauplaetze"><a href="gewerbe_gewerbebauplaetze.html">
1417Gewerbebauplätze</a></div></li><li><div class="sub-nav-item " data-navId="GAA"><a href="gewerbe_GAA.html">Gutachterausschuss</a></div></li><li><div class="sub-nav-item " data-navId="innenstadt"><a href="gewerbe_innenstadt.html">Innenstadt</a></div></li><li><div class="sub-nav-item " data-navId="Wärmeplanung"><a href="gewerbe_waermeplanung.html">Kommunale Wärmeplanung</a></div></li><li><div class="sub-nav-item " data-navId="öffentliche Auslegung"><a href="gewerbe_auslegungen2.html">Ãffentliche Auslegungen</a></div></li><li><div class="sub-nav-item " data-navId="bauausschreibungen"><a class="is-parent-nav-item" href="#">Ãffentliche Ausschreibungen / vergebene Aufträge</a><span class="parent-indicator" ></span></div></li><li><div class="sub-nav-item " data-navId="gewerbeverein"><a href="gewerbe_gewerbeverein.html">Ãrtlicher Gewerbeverein (ISG)</a></div></li><li><div class="sub-nav-item " data-navId="Städtebauliche Erneuerung "Speyerer StraÃe""><a href="gewerbe_sanierungsgebiet.html">Städtebauliche Erneuerung "Speyerer StraÃe"</a></div></li><li><div class="sub-nav-item " data-navId="unternehmen"><a href="gewerbe_unternehmen.html">Unternehmen A-Z</a></div></li><li><div class="sub-nav-item " data-navId="wohnbauplaetze"><a class="is-parent-nav-item" href="#">Wohnbauplätze</a><span class="parent-indicator" ></span></div></li> 1418 </ul><ul class="sub-nav-group" data-navLevel="2"> 1419 <li><div class="sub-nav-item Bebauungsplaene " data-navId="Bebauungsplanverfahren"><a href="bebauungsplanverfahren.html">Bebauungsplanverfahren</a></div></li><li><div class="sub-nav-item Bebauungsplaene " data-navId="rechtskr_BPläne"><a href="gewerbe_rechtskr_BPläne.html">Rechtskräftige Bebauungspläne</a></div></li><li><div class="sub-nav-item bauausschreibungen " data-navId="öffentliche Ausschreibung"><a href="gewerbe_öff_ausschreibung.html">Ãffentliche Ausschreibungen (VOB, VgV, UVgO, VOF) </a></div></li><li><div class="sub-nav-item bauausschreibungen " data-navId="beschränkte Ausschreibungen"><a href="gewerbe_beschränkte_ausschreibung.html">Beschränkte Ausschreibungen (VOB, UVgO, VOF)</a></div></li><li><div class="sub-nav-item bauausschreibungen " data-navId="vergebene Aufträge"><a href="gewerbe_vergebene_ausschreibung.html">Bekanntmachung vergebener Aufträge</a></div></li><li><div class="sub-nav-item wohnbauplaetze " data-navId="westendstraÃe"><a href="gewerbe_westendstrasse.html">WestendstraÃe</a></div></li> 1420 </ul> 1421 <div class="sub-nav-mask"></div> 1422 </div> 1423 </div> 1424 1425 </li> 1426 <li class="nav-separator"></li> 1427 1428 </ul> 1429 </nav> 1430 </div><!-- /.navbar-collapse --> 1431 1432 </div><!-- /.container-fluid --> 1433 </nav> 1434 1435 1436 <div class="body-content main navsection-service "> 1437 1438 1439 1440 1441 <div class="content-banner " style=""> 1442 1443 1444 1445 1446 1447 1448 1449<div id="bnr-0-012777916111522902" class="banner-container "> 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462<style type="text/css"> 1463 #ci-0-2995573538298354.compound.image-container .image { 1464 width: 33.33333333333333%; 1465 } 1466</style> 1467<div id="ci-0-2995573538298354" class="compound image-container "> 1468 1469 <div class="compound image "> 1470 <div class="rs_preserve image-container image-container-idx-0 " style="max-width: 100;"> 1471 <div class="image " style="position:relative"> 1472 1473 <a class="lnk-navigate-to" title="" href="index.html" > 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 <img src="Banner_Sommer_Kirche-skaliert.png?scaledimage=true&width=700&height=400" data-image="Banner_Sommer_Kirche-skaliert.png" class="img-responsive anchor-image" alt="Kirche Maria Bickesheim" /> 1484 1485 </a> 1486 1487 </div> 1488 1489 1490 1491 1492</div> 1493 </div> 1494 1495 <div class="compound image "> 1496 <div class="rs_preserve image-container image-container-idx-1 " style="max-width: 100;"> 1497 <div class="image " style="position:relative"> 1498 1499 <a class="lnk-navigate-to" title="" href="index.html" > 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 <img src="Rathaus_skaliert.png?scaledimage=true&width=700&height=400" data-image="Rathaus_skaliert.png" class="img-responsive anchor-image" alt="Luftbild von Durmersheim" /> 1510 1511 </a> 1512 1513 </div> 1514 1515 1516 1517 1518</div> 1519 </div> 1520 1521 <div class="compound image eol"> 1522 <div class="rs_preserve image-container image-container-idx-2 " style="max-width: 100;"> 1523 <div class="image " style="position:relative"> 1524 1525 <a class="lnk-navigate-to" title="" href="index.html" > 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 <img src="Luftbild Durmersheim_skaliert.png?scaledimage=true&width=700&height=400" data-image="Luftbild Durmersheim_skaliert.png" class="img-responsive anchor-image" alt="Freibad" /> 1536 1537 </a> 1538 1539 </div> 1540 1541 1542 1543 1544</div> 1545 </div> 1546 1547 <div class="compound-image-overlay"> 1548 1549 </div> 1550</div> 1551
1552<div class="banner-controls-container"></div> 1553<div class="banner-overlay"> 1554 1555 1556 1557<ul class="action-nav-bar vertical"> 1558 1559 1560 <li class="action-nav-item "> 1561 <div class="rs_preserve image-container image-container-idx-0 " style=""> 1562 <div class="image " style="position:relative"> 1563 1564 <a class="lnk-navigate-to" title="Leitet zur Rubrik Aktuelles weiter" href="index.html" > 1565 1566 1567 1568 1569 1570 1571 1572 <img src="Schnellzugriff_aktuelles.svg?scaledimage=true&width=600&height=400" data-image="Schnellzugriff_aktuelles.svg" class="img-responsive anchor-image" alt="Informationssymbol" /> 1573 1574 </a> 1575 1576 </div> 1577 1578 1579 1580 1581 <h4 class="image-subtitle placeholder"> 1582 Aktuelles 1583 </h4> 1584 <h4 class="image-subtitle"> 1585 Aktuelles 1586 </h4> 1587 1588</div> 1589 </li> 1590 1591 <li class="action-nav-item "> 1592 <div class="rs_preserve image-container image-container-idx-1 " style=""> 1593 <div class="image " style="position:relative"> 1594 1595 <a class="lnk-navigate-to" title="Leitet zur Rubrik Schnell gefunden weiter" href="rathaus_schnellgefunden.html" > 1596 1597 1598 1599 1600 1601 1602 1603 <img src="Schnellzugriff_schnellgefunden.svg?scaledimage=true&width=600&height=400" data-image="Schnellzugriff_schnellgefunden.svg" class="img-responsive anchor-image" alt="Lupe" /> 1604 1605 </a> 1606 1607 </div> 1608 1609 1610 1611 1612 <h4 class="image-subtitle placeholder"> 1613 Schnell gefunden 1614 </h4> 1615 <h4 class="image-subtitle"> 1616 Schnell gefunden 1617 </h4> 1618 1619</div> 1620 </li> 1621 1622 <li class="action-nav-item "> 1623 <div class="rs_preserve image-container image-container-idx-2 " style=""> 1624 <div class="image " style="position:relative"> 1625 1626 <a class="lnk-navigate-to" title="Leitet zur Rubrik Service weiter" href="rathaus_rathaus_wegweiser.html" > 1627 1628 1629 1630 1631 1632 1633 1634 <img src="Schnellzugriff_Service.svg?scaledimage=true&width=600&height=400" data-image="Schnellzugriff_Service.svg" class="img-responsive anchor-image" alt="Wegweiser" /> 1635 1636 </a> 1637 1638 </div> 1639 1640 1641 1642 1643 <h4 class="image-subtitle placeholder"> 1644 Wo erledige ich was? 1645 </h4> 1646 <h4 class="image-subtitle"> 1647 Wo erledige ich was? 1648 </h4> 1649 1650</div> 1651 </li> 1652 1653 <li class="action-nav-item last"> 1654 <div class="rs_preserve image-container image-container-idx-3 " style=""> 1655 <div class="image " style="position:relative"> 1656 1657 <a class="lnk-navigate-to" title="Leitet zum Termin-Tool weiter" href="rathaus_termin-tool.html" > 1658 1659 1660 1661 1662 1663 1664 1665 <img src="Termin-Tool_Logo.svg?scaledimage=true&width=600&height=400" data-image="Termin-Tool_Logo.svg" class="img-responsive anchor-image" alt="Planer-Symbol" /> 1666 1667 </a> 1668 1669 </div> 1670 1671 1672 1673 1674 <h4 class="image-subtitle placeholder"> 1675 Termin vereinbaren 1676 </h4> 1677 <h4 class="image-subtitle"> 1678 Termin vereinbaren 1679 </h4> 1680 1681</div> 1682 </li> 1683 1684 1685</ul> 1686 1687</div> 1688 1689</div> 1690
1691<script type="text/javascript"> 1692 $(function() { 1693 var $slideShows=$('#bnr-0-012777916111522902.banner-container'), 1694 $bannerControlAnchor=$('.banner-controls-container.main'), 1695 i, 1696 imgSizes=[480,768,992,1200,1600,1920,2560,3840]; 1697 1698 function slideAboutToShow(slideShow, slide) { 1699 var $slideShow=$(slideShow); 1700 1701 if ($slideShow.is(':visible')) { 1702 var slideShowWidth=$slideShow.width(), 1703 slideShowHeight=$slideShow.height(), 1704 lazyImages=$(slide).find('img.lazy'), 1705 j; 1706 1707 for (j=0;j<imgSizes.length;j++) { 1708 if (slideShowWidth<imgSizes[j]) { 1709 slideShowWidth=imgSizes[j]; 1710 break; 1711 } 1712 } 1713 1714 if (lazyImages.length>0) { 1715 lazyImages.each(function(idx, img) { 1716 var $img=$(img), 1717 retinaFactor=$img.attr('data-image-retina-factor') || '1', 1718 ratio=$img.attr('data-image-ratio') || 1, 1719 imgWidth=$img.attr('data-image-width'), 1720 width=slideShowWidth, 1721 height=slideShowHeight; 1722 1723 if ($.type(ratio) === 'string') { 1724 try { 1725 ratio=parseFloat(ratio); 1726 } 1727 catch (e) { 1728 ratio=1; 1729 } 1730 } 1731 1732 if (height) { 1733 // if there is a height of the container, force the image to be this high 1734 width=Math.ceil(height*ratio); 1735 } 1736 else { 1737 if (imgWidth && imgWidth<width) { 1738 width=imgWidth; 1739 } 1740 1741 height=width/ratio; 1742 } 1743 1744 $(img).removeClass('lazy'); 1745 $(img).attr("src", $(img).attr('data-original') + '?scaledimage=true&width='+width+'&height='+height+'&factor='+retinaFactor); 1746 }); 1747 } 1748 } 1749 }; 1750 1751 function createSlideShow(slideShow, interval, easing) { 1752 var $slideShow=$(slideShow), 1753 slides=$slideShow.children('.banner-image-container'), 1754 $controlsContainer=($bannerControlAnchor && $bannerControlAnchor.length>0) ? $bannerControlAnchor : $slideShow.children('.banner-controls-container'), 1755 slideCount=slides.length, 1756 oldIndex=0,i,$ctrl; 1757 1758 for (i=0;i<slideCount;i++) { 1759 $ctrl=$('<div class="banner-control"></div>'); 1760 1761 $ctrl.attr('data-slide-idx', i); 1762 1763 $ctrl.on('click', function() { 1764 transitionSlides($(this).attr('data-slide-idx'), true, 100); 1765 }); 1766 1767 $ctrl.appendTo($controlsContainer); 1768 } 1769 1770 if (slideCount>1) { 1771 function transitionSlides(newIndex, singleTransition, easingOverride) { 1772 var $newSlide=$(slides[newIndex]), 1773 $oldSlide=slides.filter('.active'); 1774 1775 if (!$newSlide.is('.active')) { 1776 $oldSlide.removeClass('active').fadeOut(easing || easingOverride || 1000); 1777 1778 oldIndex=newIndex; 1779 1780 slideAboutToShow(slideShow, slides[newIndex]); 1781 1782 $controlsContainer.children('.banner-control').removeClass('active').filter('[data-slide-idx="' + newIndex + '"]').addClass('active'); 1783 1784 $newSlide.addClass('active').fadeIn(easing || easingOverride || 1000, function() { 1785 if (!singleTransition) { 1786 window.setTimeout(function() { 1787 if (newIndex>=slideCount-1) { 1788 transitionSlides(0); 1789 } 1790 else { 1791 transitionSlides(newIndex+1); 1792 } 1793 }, interval || 5000); 1794 } 1795 }); 1796 } 1797 else if (!singleTransition) { 1798 window.setTimeout(function() { 1799 if (newIndex>=slideCount-1) { 1800 transitionSlides(0); 1801 } 1802 else { 1803 transitionSlides(newIndex+1); 1804 } 1805 }, interval || 5000); 1806 } 1807 }; 1808 1809 slideAboutToShow(slideShow, slides[oldIndex]); 1810 1811 transitionSlides(oldIndex); 1812 } 1813 else if (slideCount>0) { 1814 slideAboutToShow(slideShow, slides[0]); 1815 } 1816 1817 $controlsContainer[(slideCount>0) ? 'show':'hide'](); 1818 }; 1819 1820 $slideShows.each(function(idx, slideShow) { 1821 createSlideShow(slideShow, 6000, 2000); 1822 }); 1823 }); 1824</script>
1824 1825 1826 1827 </div> 1828 1829 1830 1831 <div class="container-fluid body-content top-content"> 1832 1833 </div> 1834 1835 1836 <div class="container-fluid pagecontent-area-with-navi"> 1837 1838 <div class="row"> 1839 <div class="row-same-height"> 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 <div class="col-lg-8 col-md-7 col-sm-6 col-sm-height col-top maincontent-col"> 1853 <div class="content-container "> 1854 1855 <div class="rs_skip breadcrump-container"> 1856 Sie sind hier: 1857 1858 <span class="section-display service">Gemeinde</span> 1859 1860 </div> 1861 1862 1863 1864 1865 1866 1867 1868 1869 <div class="content_body read-body"> 1870 1871<div class="rs-container"> 1872 <div id="xp_bnr-0-7413681531274203" class="rs_preserve rs_skip rs_addtools rs_splitbutton rs_exp"></div> 1873</div> 1874<div class="article-list"> 1875 1876 1877 1878 1879 1880 <div class="article-container"> 1881 1882 1883 1884<div class="article layout-simple embedded-article"> 1885 1886 <div class="body"> 1887 1888 1889 1890 1891 1892 <h2 class="section-color-underline">Kontaktformular Durmersheim</h2> 1893 1894 1895 </div> 1896 1897 1898</div> 1899 1900 </div> 1901 1902 1903 1904 <div class="article-container"> 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 <link rel="stylesheet" href="/utils/select2/3.5.2/select2.css"> 1927 <link rel="stylesheet" href="/utils/select2-bootstrap/1.4.1/select2-bootstrap.css"> 1928 1929 <link href="/vds/cms_durmersheim.nsf/web/forms.css?bust=201908021549_202608282118" rel="stylesheet"> 1930 1931 <style></style> 1932 1933<style type="text/css"> 1934 .select2-container { 1935 width:100%; 1936 } 1937 @media(max-width:767px) { /* XS */ 1938 .nextpanelbuttoncol { 1939 text-align:left; 1940 width: 100%; 1941 } 1942 .prevpanelbuttoncol { 1943 text-align:left; 1944 width: 100%; 1945 } 1946 } 1947 @media(max-width:991px) { /* XS MD */ 1948 .nextpanelbuttoncol > .btn { 1949 width: 100%; 1950 } 1951 .prevpanelbuttoncol > .btn { 1952 width: 100%; 1953 } 1954 } 1955 @media(min-width:992px) { /* MD or higher */ 1956 .changebuttoncol { 1957 text-align:right; 1958 } 1959 .nextpanelbuttoncol { 1960 text-align:right; 1961 } 1962 .prevpanelbuttoncol { 1963 text-align:left; 1964 } 1965 } 1966 @media(min-width:1200px) { /* MD or higher */ 1967 .changebuttoncol { 1968 text-align:right; 1969 } 1970 .nextpanelbuttoncol { 1971 text-align:right; 1972 } 1973 .prevpanelbuttoncol { 1974 text-align:right; 1975 } 1976 } 1977 1978 .wizard .legend { 1979 font-size: 80%; 1980 margin-bottom: 25px; 1981 padding-left: 15px; 1982 padding-right: 15px; 1983 } 1984</style> 1985 1986<link rel="stylesheet" href="/utils/jquery-file-upload/9.7.0/css/jquery.fileupload.css"> 1987 1988<style> 1989 .select2-results.nav-pills > li { 1990 clear: both; 1991 } 1992 .contact-form .sub-headline { 1993 font-weight: bold; 1994 } 1995 .wizard-content .form-page-content { 1996 margin-top: 0px !important; 1997 /* restore the margins from bootstrap-row */ 1998 margin-left: -15px !important; 1999 margin-right: -15px !important; 2000 } 2001</style> 2002 2003 2004 2005 2006 <div class="form_container"> 2007 2008 2009 <div id="durmersheim_contact_wizard" class="wizard "> 2010 <div class="tab-content wizard-content"> 2011 2012 2013 2014 2015 2016 2017 2018 2019 <div class="form-page " id="tab_contact_form_page"> 2020 <div class="row"> 2021 2022 </div> 2023 <div class="row form-page-content"> 2024 <div class="col-md-12 col-sm-12"> 2025 <form id="contact_form_page" class="form-horizontal" method="POST" enctype="multipart/form-data"> 2026 2027 <div class="contact-form"> 2028 <form id="form_contact_fields" class="form-horizontal" method="POST" enctype="multipart/form-data"> 2029 <div class="form-group"> 2030 <label for="contact_fields_salutation_mrs" class="control-label col-lg-2 col-md-3 col-sm-3">Anrede*</label> 2031 <label for="contact_fields_salutation_mr" style="display:none" class="control-label">Anrede*</label> 2032 <div class="col-lg-3 col-md-9 col-sm-9 controls"> 2033 <label class="radio-inline"> 2034 <input type="radio" name="salutation" id="contact_fields_salutation_mrs" value="mrs" required> Frau 2035 </label> 2036 <label class="radio-inline"> 2037 <input type="radio" name="salutation" id="contact_fields_salutation_mr" value="mr" required> Herr 2038 </label> 2039 <div class="help-block" style="white-space:nowrap"></div> 2040 </div> 2041 </div> 2042 <div class="form-group"> 2043 <label for="contact_fields_firstname" class="control-label col-lg-2 col-md-3 col-sm-12">Vorname*</label> 2044 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2045 <input type="text" class="form-control" name="firstname" id="contact_fields_firstname" required autocomplete="billing given-name"> 2046 </div>
2047 </div> 2048 <div class="form-group"> 2049 <label for="contact_fields_lastname" class="control-label col-lg-2 col-md-3 col-sm-12">Nachname*</label> 2050 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2051 <input type="text" class="form-control" name="lastname" id="contact_fields_lastname" required autocomplete="billing family-name"> 2052 </div> 2053 </div> 2054 <div class="form-group"> 2055 <label for="contact_fields_street" class="control-label col-lg-2 col-md-3 col-sm-12">StraÃe, Nr.</label> 2056 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2057 <input type="text" class="form-control" name="street" id="contact_fields_street" autocomplete="billing street-address"> 2058 </div> 2059 </div> 2060 <div class="form-group form-span"> 2061 <label for="contact_fields_zip" class="control-label col-lg-2 col-md-3 col-sm-12">PLZ</label> 2062 <div class="col-lg-3 col-md-3 col-sm-12 controls"> 2063 <input type="text" class="form-control" name="zip" id="contact_fields_zip" autocomplete="billing postal-code"> 2064 </div> 2065 </div> 2066 <div class="form-group"> 2067 <label for="contact_fields_city" class="control-label col-lg-1 col-md-2 col-sm-12">Ort</label> 2068 <div class="col-lg-6 col-md-4 col-sm-12 controls"> 2069 <input type="text" class="form-control" name="city" id="contact_fields_city" autocomplete="billing city"> 2070 </div> 2071 </div> 2072 <div class="form-group form-span"> 2073 <label for="contact_fields_phone" class="control-label col-lg-2 col-md-3 col-sm-12">Telefon</label> 2074 <div class="col-lg-4 col-md-9 col-sm-12 controls"> 2075 <input type="text" class="form-control" name="phone" id="contact_fields_phone" autocomplete="billing tel"> 2076 </div> 2077 </div> 2078 <div class="form-group"> 2079 <label for="contact_fields_mobile" class="control-label col-lg-2 col-md-3 col-sm-12">Mobil</label> 2080 <div class="col-lg-4 col-md-9 col-sm-12 controls"> 2081 <input type="text" class="form-control" name="mobile" id="contact_fields_mobile" autocomplete="billing tel mobile"> 2082 </div> 2083 </div> 2084 <div class="form-group"> 2085 <label for="contact_fields_email" class="control-label col-lg-2 col-md-3 col-sm-12">Email*</label> 2086 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2087 <input type="email" class="form-control" name="email" id="contact_fields_email" data-validation-email-message="Keine gültige Email-Adresse." required autocomplete="billing email"> 2088 </div> 2089 </div> 2090 <div class="form-group"> 2091 <label for="contact_fields_message" class="control-label col-lg-2 col-md-3 col-sm-12">Ihre Mitteilung*</label> 2092 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2093 <textarea class="form-control" style="height: 300px" name="message" id="contact_fields_message" required></textarea> 2094 </div> 2095 </div> 2096 2097 <a href="info_datenschutz.html">Hier geht es zur Datenschutzerklärung der Gemeinde Durmersheim</a> 2098 2099 </form> 2100 </div> 2101 2102 </form> 2103 </div> 2104 </div> 2105</div> 2106 2107 2108 2109 <div class="row navbar" style="display:none"> 2110 <div class="navbar-inner"> 2111 <div class="container"> 2112 <ul> 2113 2114 2115 <li><a href="#tab_contact_form_page" data-toggle="tab">0</a></li> 2116 2117 2118 </ul> 2119 </div> 2120 </div> 2121 </div> 2122 2123 2124 <div class="legend row required-fields"> 2125 * <b>Pflichtfelder</b>, damit wir Sie bei wichtigen Rückfragen direkt kontaktieren können 2126 </div> 2127 2128 2129 2130 <div class="row auto-nav-row"> 2131 <div class="col-lg-5 col-md-12 col-sm-12 col-xs-12" style="display:none" > 2132 <button type="button" class="btn btn-default btn-cancel" id="durmersheim_contact_wizard_actions_cancel">abbrechen</button> 2133 </div> 2134 <div class="col-lg-5 col-md-12 col-sm-12 col-xs-12" style="display:none" > 2135 <div id="durmersheim_contact_wizard_actions_cancel_spacer"></div> 2136 </div> 2137 <div class="col-lg-3 col-md-6 col-sm-12 col-xs-12 prevpanelbuttoncol" style="display:none" > 2138 <button type="button" class="btn btn-default btn-back" id="durmersheim_contact_wizard_actions_prev"><i class="fa fa-angle-double-left"></i> Schritt zurück</button> 2139 </div> 2140 <div class="col-lg-3 col-md-6 col-sm-12 col-xs-12 prevpanelbuttoncol" style="display:none" > 2141 <div id="durmersheim_contact_wizard_actions_prev_spacer"></div> 2142 </div> 2143 <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12 nextpanelbuttoncol" style="display:none"> 2144 <button type="button" class="btn btn-success" id="durmersheim_contact_wizard_actions_next">Weiter <i class="fa fa-angle-double-right"></i></button> 2145 </div> 2146 <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12 nextpanelbuttoncol" style="display:none" > 2147 2148 <button type="button" class="btn btn-success" id="durmersheim_contact_wizard_actions_submit">Abschicken <i class="fa fa-angle-double-right"></i></button> 2149 2150 </div>
2151 </div> 2152 2153 2154 </div> 2155 </div> 2156 2157 </div> 2158 2159 2160 2161</div> 2162 2163 2164 2165 2166 <div class="article-container"> 2167 2168 2169 2170<div class="article layout-simple embedded-article"> 2171 2172 <div class="body"> 2173 2174 2175 2176 2177 2178 <h2 class="section-color-underline">Kontaktformular Würmersheim</h2> 2179 2180 2181 </div> 2182 2183 2184</div> 2185 2186 </div> 2187 2188 2189 2190 <div class="form-container"> 2191 2192 <div class="form-container"> 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 <link rel="stylesheet" href="/utils/select2/3.5.2/select2.css"> 2215 <link rel="stylesheet" href="/utils/select2-bootstrap/1.4.1/select2-bootstrap.css"> 2216 2217 <link href="/vds/cms_durmersheim.nsf/web/forms.css?bust=201908021549_202608282118" rel="stylesheet"> 2218 2219 <style></style> 2220 2221<style type="text/css"> 2222 .select2-container { 2223 width:100%; 2224 } 2225 @media(max-width:767px) { /* XS */ 2226 .nextpanelbuttoncol { 2227 text-align:left; 2228 width: 100%; 2229 } 2230 .prevpanelbuttoncol { 2231 text-align:left; 2232 width: 100%; 2233 } 2234 } 2235 @media(max-width:991px) { /* XS MD */ 2236 .nextpanelbuttoncol > .btn { 2237 width: 100%; 2238 } 2239 .prevpanelbuttoncol > .btn { 2240 width: 100%; 2241 } 2242 } 2243 @media(min-width:992px) { /* MD or higher */ 2244 .changebuttoncol { 2245 text-align:right; 2246 } 2247 .nextpanelbuttoncol { 2248 text-align:right; 2249 } 2250 .prevpanelbuttoncol { 2251 text-align:left; 2252 } 2253 } 2254 @media(min-width:1200px) { /* MD or higher */ 2255 .changebuttoncol { 2256 text-align:right; 2257 } 2258 .nextpanelbuttoncol { 2259 text-align:right; 2260 } 2261 .prevpanelbuttoncol { 2262 text-align:right; 2263 } 2264 } 2265 2266 .wizard .legend { 2267 font-size: 80%; 2268 margin-bottom: 25px; 2269 padding-left: 15px; 2270 padding-right: 15px; 2271 } 2272</style> 2273 2274<link rel="stylesheet" href="/utils/jquery-file-upload/9.7.0/css/jquery.fileupload.css"> 2275 2276<style> 2277 .select2-results.nav-pills > li { 2278 clear: both; 2279 } 2280 .contact-form .sub-headline { 2281 font-weight: bold; 2282 } 2283 .wizard-content .form-page-content { 2284 margin-top: 0px !important; 2285 /* restore the margins from bootstrap-row */ 2286 margin-left: -15px !important; 2287 margin-right: -15px !important; 2288 } 2289</style> 2290 2291 2292 2293 2294 <div class="form_container"> 2295 2296 2297 <div id="durmersheim_wuermersheim_contact_wizard" class="wizard "> 2298 <div class="tab-content wizard-content"> 2299 2300 2301 2302 2303 2304 2305 2306 2307 <div class="form-page " id="tab_wuermersheim_contact_form_page"> 2308 <div class="row"> 2309 2310 </div> 2311 <div class="row form-page-content"> 2312 <div class="col-md-12 col-sm-12"> 2313 <form id="wuermersheim_contact_form_page" class="form-horizontal" method="POST" enctype="multipart/form-data"> 2314 2315 <div class="contact-form"> 2316 <form id="wuermersheim_form_contact_fields" class="form-horizontal" method="POST" enctype="multipart/form-data"> 2317 <div class="form-group"> 2318 <label for="wuermersheim_contact_fields_salutation_mrs" class="control-label col-lg-2 col-md-3 col-sm-3">Anrede*</label> 2319 <label for="wuermersheim_contact_fields_salutation_mr" style="display:none" class="control-label">Anrede*</label> 2320 <div class="col-lg-3 col-md-9 col-sm-9 controls"> 2321 <label class="radio-inline"> 2322 <input type="radio" name="salutation" id="wuermersheim_contact_fields_salutation_mrs" value="mrs" required> Frau 2323 </label> 2324 <label class="radio-inline"> 2325 <input type="radio" name="salutation" id="wuermersheim_contact_fields_salutation_mr" value="mr" required> Herr 2326 </label> 2327 <div class="help-block" style="white-space:nowrap"></div> 2328 </div> 2329 </div> 2330 <div class="form-group"> 2331 <label for="wuermersheim_contact_fields_firstname" class="control-label col-lg-2 col-md-3 col-sm-12">Vorname*</label> 2332 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2333 <input type="text" class="form-control" name="firstname" id="wuermersheim_contact_fields_firstname" required autocomplete="billing given-name"> 2334 </div> 2335 </div> 2336 <div class="form-group"> 2337 <label for="wuermersheim_contact_fields_lastname" class="control-label col-lg-2 col-md-3 col-sm-12">Nachname*</label> 2338 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2339 <input type="text" class="form-control" name="lastname" id="wuermersheim_contact_fields_lastname" required autocomplete="billing family-name"> 2340 </div> 2341 </div> 2342 <div class="form-group"> 2343 <label for="wuermersheim_contact_fields_street" class="control-label col-lg-2 col-md-3 col-sm-12">StraÃe, Nr.</label> 2344 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2345 <input type="text" class="form-control" name="street" id="wuermersheim_contact_fields_street" autocomplete="billing street-address"> 2346 </div>
2347 </div> 2348 <div class="form-group form-span"> 2349 <label for="wuermersheim_contact_fields_zip" class="control-label col-lg-2 col-md-3 col-sm-12">PLZ</label> 2350 <div class="col-lg-3 col-md-3 col-sm-12 controls"> 2351 <input type="text" class="form-control" name="zip" id="wuermersheim_contact_fields_zip" autocomplete="billing postal-code"> 2352 </div> 2353 </div> 2354 <div class="form-group"> 2355 <label for="wuermersheim_contact_fields_city" class="control-label col-lg-1 col-md-2 col-sm-12">Ort</label> 2356 <div class="col-lg-6 col-md-4 col-sm-12 controls"> 2357 <input type="text" class="form-control" name="city" id="wuermersheim_contact_fields_city" autocomplete="billing city"> 2358 </div> 2359 </div> 2360 <div class="form-group form-span"> 2361 <label for="wuermersheim_contact_fields_phone" class="control-label col-lg-2 col-md-3 col-sm-12">Telefon</label> 2362 <div class="col-lg-4 col-md-9 col-sm-12 controls"> 2363 <input type="text" class="form-control" name="phone" id="wuermersheim_contact_fields_phone" autocomplete="billing tel"> 2364 </div> 2365 </div> 2366 <div class="form-group"> 2367 <label for="wuermersheim_contact_fields_mobile" class="control-label col-lg-2 col-md-3 col-sm-12">Mobil</label> 2368 <div class="col-lg-4 col-md-9 col-sm-12 controls"> 2369 <input type="text" class="form-control" name="mobile" id="wuermersheim_contact_fields_mobile" autocomplete="billing tel mobile"> 2370 </div> 2371 </div> 2372 <div class="form-group"> 2373 <label for="wuermersheim_contact_fields_email" class="control-label col-lg-2 col-md-3 col-sm-12">Email*</label> 2374 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2375 <input type="email" class="form-control" name="email" id="wuermersheim_contact_fields_email" data-validation-email-message="Keine gültige Email-Adresse." required autocomplete="billing email"> 2376 </div> 2377 </div> 2378 <div class="form-group"> 2379 <label for="wuermersheim_contact_fields_message" class="control-label col-lg-2 col-md-3 col-sm-12">Ihre Mitteilung*</label> 2380 <div class="col-lg-10 col-md-9 col-sm-12 controls"> 2381 <textarea class="form-control" style="height: 300px" name="message" id="wuermersheim_contact_fields_message" required></textarea> 2382 </div> 2383 </div> 2384 2385 <a href="info_datenschutz.html">Hier geht es zur Datenschutzerklärung der Gemeinde Durmersheim</a> 2386 2387 </form> 2388 </div> 2389 2390 </form> 2391 </div> 2392 </div> 2393</div> 2394 2395 2396 2397 <div class="row navbar" style="display:none"> 2398 <div class="navbar-inner"> 2399 <div class="container"> 2400 <ul> 2401 2402 2403 <li><a href="#tab_wuermersheim_contact_form_page" data-toggle="tab">0</a></li> 2404 2405 2406 </ul> 2407 </div> 2408 </div> 2409 </div> 2410 2411 2412 <div class="legend row required-fields"> 2413 * <b>Pflichtfelder</b>, damit wir Sie bei wichtigen Rückfragen direkt kontaktieren können 2414 </div> 2415 2416 2417 2418 <div class="row auto-nav-row"> 2419 <div class="col-lg-5 col-md-12 col-sm-12 col-xs-12" style="display:none" > 2420 <button type="button" class="btn btn-default btn-cancel" id="durmersheim_wuermersheim_contact_wizard_actions_cancel">abbrechen</button> 2421 </div> 2422 <div class="col-lg-5 col-md-12 col-sm-12 col-xs-12" style="display:none" > 2423 <div id="durmersheim_wuermersheim_contact_wizard_actions_cancel_spacer"></div> 2424 </div> 2425 <div class="col-lg-3 col-md-6 col-sm-12 col-xs-12 prevpanelbuttoncol" style="display:none" > 2426 <button type="button" class="btn btn-default btn-back" id="durmersheim_wuermersheim_contact_wizard_actions_prev"><i class="fa fa-angle-double-left"></i> Schritt zurück</button> 2427 </div> 2428 <div class="col-lg-3 col-md-6 col-sm-12 col-xs-12 prevpanelbuttoncol" style="display:none" > 2429 <div id="durmersheim_wuermersheim_contact_wizard_actions_prev_spacer"></div> 2430 </div> 2431 <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12 nextpanelbuttoncol" style="display:none"> 2432 <button type="button" class="btn btn-success" id="durmersheim_wuermersheim_contact_wizard_actions_next">Weiter <i class="fa fa-angle-double-right"></i></button> 2433 </div> 2434 <div class="col-lg-4 col-md-6 col-sm-12 col-xs-12 nextpanelbuttoncol" style="display:none" > 2435 2436 <button type="button" class="btn btn-success" id="durmersheim_wuermersheim_contact_wizard_actions_submit">Abschicken <i class="fa fa-angle-double-right"></i></button> 2437 2438 </div>
2439 </div> 2440 2441 2442 </div> 2443 </div> 2444 2445 </div> 2446 2447 2448 2449</div> 2450 2451
2452<script> 2453 require(['underscore','domReady','jquery', 'bootstrapwizard', 'jqbootstrapvalidation_ext'], function(_, domReady, jquery, bootstrapwizard, validations) { 2454 function formatSelector(selector) { 2455 if (selector && selector.length>0) { 2456 if (selector.indexOf('.')!==0 && selector.indexOf('#')!==0) { 2457 return '#'+selector; 2458 } 2459 return selector; 2460 } 2461 }; 2462 2463 function sequenceFn(firstFn, secondFn) { 2464 return function() { 2465 if (firstFn.apply(this, arguments)!==false) { 2466 return secondFn.apply(this, arguments); 2467 } 2468 return false; 2469 }; 2470 }; 2471 2472 var cfg= 2473(function() { 2474 var __queryParams=undefined, 2475 __ASQ,__loginutils; 2476 2477 return { 2478 beforeRedirect:function(data,redirectUrl,postData,$wizard) { 2479 if (redirectUrl && redirectUrl.length>0) { 2480 // let the wizard do a redirect 2481 return true; 2482 } 2483 else { 2484 var msg='Ihre Mitteilung ist bei uns eingegangen!'; 2485 2486 require(['bootbox'], function(bootbox) { 2487 bootbox.alert(msg); 2488 }, function (err) { 2489 alert(msg); 2490 }); 2491 2492 return false; 2493 } 2494 } 2495 }; 2496})() 2497; 2498 2499 2500 2501 2502 2503 2504 2505 if (!cfg['previousSelector']) { 2506 cfg['previousSelector']='#durmersheim_wuermersheim_contact_wizard_actions_prev'; 2507 } 2508 if (!cfg['nextSelector']) { 2509 cfg['nextSelector']='#durmersheim_wuermersheim_contact_wizard_actions_next'; 2510 } 2511 2512 2513 // install method to scroll to top on tab-change 2514 var scrollSelector=undefined; 2515 2516 2517 if (!scrollSelector) { 2518 scrollSelector='html, body'; 2519 } 2520 2521 2522 if (scrollSelector) { 2523 var scrollToTopFnc=function(tab) { 2524 // scrolling seems not a good solution - rather focus the first input 2525 var $page=$(tab.children('[data-toggle="tab"]').attr('href')), 2526 $fields=$page.find('input,select,textarea'), 2527 $field; 2528 2529 $fields.each(function(idx, field) { 2530 $field=$(field); 2531 2532 if ($field.is(':visible')) { 2533 $field.focus(); 2534 return false; 2535 } 2536 }); 2537 // $(scrollSelector).scrollTop(0); 2538 }; 2539 if (cfg['onTabShow']) { 2540 scrollToTopFnc=sequenceFn(cfg['onTabShow'], scrollToTopFnc); 2541 } 2542 2543 cfg['onTabShow']=scrollToTopFnc; 2544 } 2545 2546 // install progress selector if configured 2547 2548 var progressSelector=undefined; 2549 2550 2551 ; 2552 2553 if (progressSelector) { 2554 var progressFnc=function(progressSelector) { 2555 return function(tab, navigation, index) { 2556 var $total = navigation.find('li').length; 2557 var $current = index+1; 2558 var $percent = ($current/$total) * 100; 2559 2560 $(progressSelector).find('.progress-bar').css({width:$percent+'%'}); 2561 }; 2562 }(progressSelector); 2563 2564 if (cfg['onTabShow']) { 2565 progressFnc=sequenceFn(cfg['onTabShow'], progressFnc); 2566 } 2567 2568 cfg['onTabShow']=progressFnc; 2569 } 2570 2571 function showFieldError(field, errMsg) { 2572 var $field=$(field); 2573 $ctrlGroup=$field.closest('.control-group,.form-group'); 2574 $controls=$field.closest('.controls'); 2575 $helpBlock = $controls.find('.help-block').first(); 2576 2577 if (!$controls.length && !$helpBlock.length) { 2578 // fallback to standard help-block lookup 2579 $helpBlock = $ctrlGroup.find(".help-block").first(); 2580 } 2581 2582 if (!$field.is(':disabled')) { 2583 $ctrlGroup.removeClass('has-warning has-success').addClass('has-error'); 2584 2585 if ($helpBlock.length>0) { 2586 $helpBlock.html('<div role="alert">' + errMsg + '</div>'); 2587 } 2588 } 2589 }; 2590 2591 var validationFnc=function(tab, navigation, index) { 2592 var $page=$(tab.children('[data-toggle="tab"]').attr('href')), 2593 $fields=$page.find('input,select,textarea').not('[type=submit]'), 2594 $field=undefined, 2595 $ctrlGroup=undefined, 2596 $controls=undefined, 2597 $helpBlock=undefined, 2598 fieldName = undefined, 2599 hasErrors=false; 2600 2601 var errors = $fields.jqBootstrapValidation("collectErrors"); 2602 2603 $fields.each(function(idx, field) { 2604 $field=$(field); 2605 fieldName=$field.attr('name'); 2606 $ctrlGroup=$field.closest('.control-group,.form-group'); 2607 $controls=$field.closest('.controls'); 2608 $helpBlock = $controls.find('.help-block').first(); 2609 2610 if (!$controls.length && !$helpBlock.length) { 2611 // fallback to standard help-block lookup 2612 $helpBlock = $ctrlGroup.find(".help-block").first(); 2613 } 2614 2615 if (!$field.is(':disabled') && errors.hasOwnProperty(fieldName) && errors[fieldName].length>0) { 2616 $ctrlGroup.removeClass('has-warning has-success').addClass('has-error'); 2617 2618 if ($helpBlock.length>0) { 2619 $helpBlock.html('<div role="alert">
2619' + errors[fieldName].join('<br>') + '</div>'); 2620 } 2621 hasErrors=true; 2622 } 2623 else { 2624 $ctrlGroup.removeClass('has-warning has-error').addClass('has-success'); 2625 2626 if ($helpBlock.length>0) { 2627 $helpBlock.html($helpBlock.data("original-contents")); 2628 } 2629 } 2630 }); 2631 2632 return hasErrors!==true; 2633 }; 2634 2635 if (cfg['onNext']) { 2636 validationFnc=sequenceFn(cfg['onNext'], validationFnc); 2637 } 2638 2639 2640 var submitFnc=function(page, navigation, index) { 2641 var pages = navigation.find('li').length; 2642 2643 if (pages===index) { 2644 // validation of final page succeeded -> perform submit, if configured 2645 2646 var submitUrl='/api/notifications/sendsupportmail/legacy', 2647 reportErrorFn=function(msg) { 2648 msg='Beim Senden Ihrer Daten ist ein Fehler aufgetreten:<br><br>'+msg; 2649 2650 require(['bootbox'], function(bootbox) { 2651 bootbox.alert(msg); 2652 }, function (err) { 2653 if (success) { 2654 alert(msg); 2655 } 2656 }); 2657 }; 2658 2659 if (submitUrl.length>0) { 2660 var $allForms=$('#durmersheim_wuermersheim_contact_wizard form'), 2661 $form, 2662 $field, 2663 fieldId, 2664 formValues, 2665 i; 2666 values=[]; 2667 2668 $allForms.each(function(idx, form) { 2669 $form=$(form); 2670 2671 // read all form-values 2672 formValues=$form.serializeArray(); 2673 // and lookup all labels (note that for this to work, the names should be unique within the form) 2674 for (i=0;i<formValues.length;i++) { 2675 $form.find('[name="' + formValues[i].name+'"]').filter(function() { 2676 var $this=$(this); 2677 2678 if (this.id) { 2679 // identify the correct radio control or checkbox 2680 if (($this.attr('type')==='radio' || $this.attr('type')==='checkbox') 2681 && $this.attr('value') && $this.val()!==formValues[i].value) { 2682 return false; 2683 } 2684 2685 return true; 2686 } 2687 }).each(function(idx, field) { 2688 $field=$(field); 2689 2690 formValues[i].type=$field.attr('type'); 2691 formValues[i].displayname=$field.closest('.form-group').find('label[for="' + field.id + '"]').text(); 2692 }); 2693 } 2694 2695 values.push.apply(values, formValues); 2696 }); 2697 2698 var postData={ 2699 formid: 'durmersheim_wuermersheim_contact_wizard', 2700 data: values 2701 }; 2702 function performPost() { 2703 $.ajax({ 2704 url: '/vds/cms_durmersheim.nsf' + submitUrl, 2705 data: JSON.stringify(postData), 2706 contentType: 'text/plain; charset=UTF-8', 2707 type: 'POST' 2708 }) 2709 .done(function(data, textStatus, jqXHR) { 2710 if (data && data.success===true) { 2711 var redirectUrl = data.redirect || 'thankyou.html'; 2712 2713 function performRedirect() { 2714 if (redirectUrl && redirectUrl.length>0) { 2715 window.location.href=redirectUrl; 2716 } 2717 else if (data.msg) { 2718 // do something with the message 2719 } 2720 } 2721 2722 var beforeRedirectResult=!cfg['beforeRedirect'] ? true:cfg['beforeRedirect'](data, redirectUrl, postData, $('#durmersheim_wuermersheim_contact_wizard')); 2723 if (beforeRedirectResult) { 2724 if (beforeRedirectResult===true) { 2725 performRedirect(); 2726 } 2727 else { 2728 require(['asynquence'], function(ASQ) { 2729 if (ASQ.isSequence(beforeRedirectResult)) { 2730 beforeRedirectResult 2731 .then(function(done) { 2732 performRedirect(); 2733 }) 2734 .or(function(err) { 2735 var msg=window.errorToString(err) || 'Abbruch'; 2736 2737 reportErrorFn(msg); 2738 }); 2739 } 2740 else { 2741 // don't know what to make of it 2742 performRedirect(); 2743 } 2744 }); 2745 } 2746 } 2747 else if (beforeRedirectResult!==false) { 2748 performRedirect(); 2749 } 2750 } 2751 else { 2752 var msg=window.errorToString(data) || 'Unbekannter Fehler (' + textStatus + ')'; 2753 2754 var beforeReportErrorResult=!cfg['beforeReportError'] ? true:cfg['beforeReportError'](postData,submitUrl,$allForms,$('#durmersheim_wuermersheim_contact_wizard'),msg,jqXHR); 2755 if (beforeReportErrorResult) { 2756 reportErrorFn(msg); 2757 } 2758 } 2759 }) 2760 .fail(function(jqXHR, textStatus, err) { 2761 2762 function showCaptchaFieldError(msg) { 2763 var fieldFound=false; 2764 var captchaCls='cpt'; 2765 2766 $('#durmersheim_wuermersheim_contact_wizard form').each(function() { 2767 $(this).find('input,select,textarea').each(function() { 2768 var $field=$(this); 2769 2770 if ($field.hasClass(captchaCls)) { 2771 // this is a captcha field 2772 showFieldError($field, msg); 2773 2774 fieldFound=true; 2775 } 2776 }); 2777 }); 2778 2779 return fieldFound; 2780 } 2781 2782 var msg=window.errorToString(jqXHR || err) || 'Unbekannter Fehler (' + textStatus + ')'; 2783 2784 if (jqXHR && jqXHR.responseJSON && jqXHR.responseJSON.errorid) { 2785 if (jqXHR.responseJSON.errorid==='captcha-invalid') { 2786 msg = 'Ein Wert wurde nicht akzeptiert'; 2787 2788 showCaptchaFieldError('Aufgabe nicht korrekt gelöst'); 2789 } 2790 else if (jqXHR.responseJSON.errorid==='captcha-missing') { 2791 if (showCaptchaFieldError('Aufgabe nicht gelöst')) { 2792 msg = 'Ein Wert fehlt'; 2793 } 2794 } 2795 } 2796 2797 var beforeReportErrorResult=!cfg['beforeReportError'] ? true:cfg['beforeReportError'](postData,submitUrl,$allForms,$('#durmersheim_wuermersheim_contact_wizard'),msg,jqXHR); 2798 if (beforeReportErrorResult) { 2799 reportErrorFn(msg); 2800 } 2801 }); 2802 }; 2803 2804 var beforeSubmitResult=!cfg['beforeSubmit'] ? true:cfg['beforeSubmit'](postData,submitUrl,$allForms,$('#durmersheim_wuermersheim_contact_wizard')); 2805 if (beforeSubmitResult) { 2806 if (beforeSubmitResult===true) { 2807 performPost(); 2808 } 2809 else { 2810 require(['asynquence'], function(ASQ) { 2811 if (ASQ.isSequence(beforeSubmitResult)) { 2812 beforeSubmitResult 2813 .then(function(done, data) { 2814 if (data && data!==true) { 2815 postData=data; 2816 } 2817 performPost(); 2818 }) 2819 .or(function(err) { 2820 var msg=window.errorToString(err) || 'Abbruch'; 2821 2822 reportErrorFn(msg); 2823 }); 2824 } 2825 else {
2826 // don't know what to make of it 2827 performPost(); 2828 } 2829 }); 2830 } 2831 } 2832 else if (beforeSubmitResult!==false) { 2833 performPost(); 2834 } 2835 } 2836 } 2837 }; 2838 2839 // register submit, but debounce 2840 validationFnc=sequenceFn(validationFnc, _.debounce(function() { 2841 submitFnc.apply(this, arguments); 2842 }, 500)); 2843 2844 cfg['onNext']=validationFnc; 2845 2846 var submitSelector=undefined; 2847 2848 2849 if (!submitSelector) { 2850 submitSelector='#durmersheim_wuermersheim_contact_wizard_actions_submit'; 2851 } 2852 ; 2853 2854 if (submitSelector) { 2855 var submitHandler = function() { 2856 // delegate to next-button 2857 var $nextBtn=cfg['nextSelector'] ? $(cfg['nextSelector']) : undefined; 2858 2859 if ($nextBtn && $nextBtn.length>0) { 2860 $nextBtn.click(); 2861 } 2862 }; 2863 var submitText='Abschicken <i class="fa fa-angle-double-right"></i>'; 2864 2865 2866 submitText='Abschicken' + ' <i class="fa fa-angle-double-right"></i>'; 2867 2868 2869 var bindAndShowSubmitBtn=function(tab, navigation, index) { 2870 var steps = navigation.find('li').length, 2871 $submitBtn = $(submitSelector), 2872 $nextBtn = cfg['nextSelector'] ? $(cfg['nextSelector']) : undefined, 2873 $prevBtn = cfg['previousSelector'] ? $(cfg['previousSelector']) : undefined, 2874 $prevBtnSpacer = $('#durmersheim_wuermersheim_contact_wizard_actions_prev_spacer'), 2875 $cancelBtn = $('#durmersheim_wuermersheim_contact_wizard_actions_cancel'), 2876 $cancelBtnSpacer = $('#durmersheim_wuermersheim_contact_wizard_actions_cancel_spacer'), 2877 $progress = $('#durmersheim_wuermersheim_contact_wizard_progress'); 2878 2879 if ($progress && steps>
28791) { 2880 $progress.show(); 2881 } 2882 2883 $cancelBtnSpacer.parent().show(); 2884 /*if ($cancelBtn) { 2885 $cancelBtn.parent().show(); 2886 $cancelBtnSpacer.parent().hide(); 2887 } 2888 else { 2889 $cancelBtnSpacer.parent().show(); 2890 } 2891 */ 2892 2893 if ($prevBtn) { 2894 if (index===0) { 2895 $prevBtn.parent().hide(); 2896 $prevBtnSpacer.parent().show(); 2897 } 2898 else { 2899 $prevBtn.parent().show(); 2900 $prevBtnSpacer.parent().hide(); 2901 } 2902 } 2903 else { 2904 $prevBtnSpacer.parent().show(); 2905 } 2906 2907 if (index===steps-1) { 2908 $submitBtn.unbind('click', submitHandler); 2909 $submitBtn.on('click', submitHandler); 2910 2911 $submitBtn.html('<b>'+submitText+'</b>'); 2912 $submitBtn.parent().show(); 2913 2914 if ($nextBtn) { 2915 $nextBtn.parent().hide(); 2916 } 2917 } 2918 else { 2919 if ($nextBtn) { 2920 $nextBtn.html('Weiter zu <b>Schritt ' + (index+2) + '</b> <i class=\"fa fa-angle-double-right\"></i>'); 2921 $nextBtn.parent().show(); 2922 } 2923 2924 $submitBtn.unbind('click', submitHandler); 2925 $submitBtn.parent().hide(); 2926 } 2927 }; 2928 2929 if (cfg['onTabShow']) { 2930 bindAndShowSubmitBtn=sequenceFn(cfg['onTabShow'], bindAndShowSubmitBtn); 2931 } 2932 cfg['onTabShow']=bindAndShowSubmitBtn; 2933 } 2934 2935 function setupWizardFnc() { 2936 var $wizard=$('#durmersheim_wuermersheim_contact_wizard'); 2937 2938 return $wizard.bootstrapWizard(cfg); 2939 }; 2940 2941 function valueExists(value, validator) { 2942 if ((value || value.length) && !validator.negative) { 2943 return true; 2944 } 2945 return false; 2946 } 2947 function setupValidationFnc() { 2948 var defaultValidatorTypes={ 2949 regex: { message: 'Ungültiges Format.' }, 2950 number: { message: 'Zahl erwartet.' }, 2951 requiredifset: { 2952 name: 'requiredifset', 2953 includeEmpty: true, 2954 init: function ($this, name) { 2955 var sourceElementName = $this.data("validation" + name + "Source"), 2956 sourceElementValue = $this.data("validation" + name + "SourceValue"); 2957 2958 var result = {}; 2959 2960 if (sourceElementValue) { 2961 result.sourceElementValue=sourceElementValue; 2962 } 2963 // locate the source-field, if any 2964 if (sourceElementName) { 2965 var $form = $this.parents("form").first(); 2966 var $element = sourceElementName.indexOf('#')===0 ? $(sourceElementName).first() : $form.find("[name=\"" + sourceElementName + "\"]").first(); 2967 $element.bind("validation.validation", function () { 2968 $this.trigger("revalidate.validation", {submitting: true}); 2969 }); 2970 2971 if ($element.length === 0) { 2972 $.error("Can't find field '" + sourceElementName + "' switching the required-state for '" + $this.attr("name") + "' in '" + name + "' validator"); 2973 } 2974 else { 2975 result.sourceElement = $element; 2976 } 2977 } 2978 2979 result.message = this.message; 2980 if ($this.data("validation" + name + "Message")) { 2981 result.message = $this.data("validation" + name + "Message"); 2982 } 2983 return result; 2984 }, 2985 validate: function ($this, value, validator) { 2986 // verify current value only, if the source-element has a value 2987 if (validator.sourceElement) { 2988 var sourceVal = (!(validator.sourceElement.is(':radio') || validator.sourceElement.is(':checkbox')) || validator.sourceElement.is(':checked')) ? validator.sourceElement.val() : ''; 2989 2990 if (valueExists(sourceVal, validator) && (!validator.sourceElementValue || validator.sourceElementValue==sourceVal) ) { 2991 return !valueExists(value, validator); 2992 } 2993 else { 2994 return false; 2995 } 2996 } 2997 else { 2998 console.log('Error in requiredifset validation: missing source-element'); 2999 3000 return false; 3001 } 3002 }, 3003 message: 'Dies ist ein Pflichtfeld' 3004 } 3005 ,requiredifnotset: { 3006 name: 'requiredifnotset', 3007 includeEmpty: true, 3008 init: function ($this, name) { 3009 var sourceElementName = $this.data("validation" + name + "Source"); 3010 3011 var result = {}; 3012 3013 // locate the source-field, if any 3014 if (sourceElementName) { 3015 var $form = $this.parents("form").first(); 3016 var $element = sourceElementName.indexOf('#')===0 ? $(sourceElementName).first() : $form.find("[name=\"" + sourceElementName + "\"]").first(); 3017 $element.bind("validation.validation", function () { 3018 // $this.trigger("revalidate.validation", {submitting: true}); 3019 }); 3020 3021 if ($element.length === 0) { 3022 $.error("Can't find field '" + sourceElementName + "' switching the required-state for '" + $this.attr("name") + "' in '" + name + "' validator"); 3023 } 3024 else { 3025 result.sourceElement = $element; 3026 } 3027 } 3028 3029 result.message = this.message; 3030 if ($this.data("validation" + name + "Message")) { 3031 result.message = $this.data("validation" + name + "Message"); 3032 } 3033 return result; 3034 }, 3035 validate: function ($this, value, validator) { 3036 // verify current value only, if the source-element has no value 3037 if (validator.sourceElement) { 3038 var sourceVal = (!(validator.sourceElement.is(':radio') || validator.sourceElement.is(':checkbox')) || validator.sourceElement.is(':checked')) ? validator.sourceElement.val() : ''; 3039 3040 if (!valueExists(sourceVal, validator)) { 3041 return !valueExists(value, validator); 3042 } 3043 else { 3044 return false;
3045 } 3046 } 3047 else { 3048 console.log('Error in requiredifnotset validation: missing source-element'); 3049 3050 return false; 3051 } 3052 }, 3053 message: 'Dies ist ein Pflichtfeld' 3054 } 3055 }; 3056 3057 var customValidatorTypes=!cfg['customValidators'] ? {} : cfg['customValidators']($('#durmersheim_wuermersheim_contact_wizard')); 3058 3059 $.jqBootstrapValidation("override", { 3060 builtInValidators: { 3061 number: { message: 'Zahl erwartet.' }, 3062 passwordagain: { message: 'Passwörter stimmen nicht überein.' }, 3063 integer: { message: 'Keine Dezimalstellen erlaubt.' }, 3064 positive: { message: 'Positiver Wert erwartet.' }, 3065 positivenumber: { message: 'Positiver Wert erwartet.' }, 3066 negative: { message: 'Negativer Wert erwartet.' }, 3067 negativenumber: { message: 'Negativer Wert erwartet.' }, 3068 required: { message: 'Dies ist ein Pflichtfeld.' }, 3069 checkone: { message: 'Wählen Sie mindestens eine Option aus.' }, 3070 pattern: { message: 'Ungültiges Format.' }, 3071 regex: { message: 'Ungültiges Format.' } 3072 }, 3073 validatorTypes: _.extend(customValidatorTypes, defaultValidatorTypes) 3074 }); 3075 3076 var $validator=$('#durmersheim_wuermersheim_contact_wizard input,select,textarea').not('[type=submit]') 3077 3078 $validator.jqBootstrapValidation(); 3079 3080 return $validator; 3081 }; 3082 3083 function showWizardFnc() { 3084 var $wizard=$('#durmersheim_wuermersheim_contact_wizard'); 3085 3086 if ($wizard.hasClass('loading')) { 3087 $wizard.siblings('.wizard-load-mask').remove(); 3088 $wizard.removeClass('loading'); 3089 } 3090 $wizard.show(); 3091 }; 3092 3093 function setup() { 3094 setupWizardFnc(); 3095 setupValidationFnc(); 3096 3097 showWizardFnc(); 3098 }; 3099 3100 if (cfg['onInitialized']) { 3101 if (!cfg['onInitialized']({ 3102 setupWizard: setupWizardFnc, 3103 setupValidator: setupValidationFnc, 3104 showPage: function(id) { 3105 var $tab=$('#durmersheim_wuermersheim_contact_wizard').find('.nav li a[href="' + formatSelector(id) + '"]'); 3106 3107 if ($tab.attr('data-toggle')==='tab') { 3108 $tab.tab('show'); 3109 } 3110 }, 3111 showWizard: showWizardFnc 3112 })) { 3113 setup(); 3114 } 3115 } 3116 else { 3117 setup(); 3118 } 3119 }); 3120</script>
3120 3121 3122 3123 3124</div> 3125 3126 3127</div> 3128 3129 </div> 3130 3131 </div> 3132 </div> 3133 3134 3135 3136 <div class="col-lg-4 col-md-5 col-sm-6 col-sm-height col-top sidebar-col"> 3137 3138 <div class="sidebar-container"> 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150<div class="sidebar-entry border-color_blue"> 3151 3152 <div class="sidebar-separator-placeholder"> 3153 3154 </div> 3155 3156 3157<div class="infobox sidebar-content" id="sbquicknav"> 3158 <div class="header-container"> 3159 3160 <div class="header"><h1 class="headline sidebar-title" >Schnell gefunden</h1><div class="image-spacer"></div></div> 3161 3162 </div> 3163 <div class="content-container" style=""> 3164 3165 <div class="content multiline-ellipsis" style=""> 3166 3167 3168 3169 3170 3171 <ul class="quick-nav-bar horizontal table"> 3172 3173 3174 3175 3176 3177 3178 3179 <div class="row "> 3180 3181 3182 3183 3184 3185 <style> 3186 .qn-state--168714758 { 3187 3188 3189 color: ; 3190 3191 3192 background-color: ; 3193 3194 3195 } 3196 .qn-state--168714758:hover { 3197 3198 3199 color: ; 3200 3201 3202 background-color: ; 3203 3204 3205 } 3206 </style> 3207 3208 <li class="quick-nav-item qn-state--168714758"> 3209 <a class="link" href="rathaus_rathaus_bekanntmachungen.html" title="Amtliche Bekanntmachungen der Gemeinde Durmersheim"> 3210 3211 3212 3213 <span class="image-placeholder"></span> 3214 3215 3216 3217 <span class="title">Amtliche Bekanntmachungen</span> 3218 </a> 3219 </li> 3220 3221 3222 3223 3224 3225 </div> 3226 <div class="row "> 3227 3228 3229 3230 3231 3232 <style> 3233 .qn-state--275880612 { 3234 3235 3236 color: ; 3237 3238 3239 background-color: ; 3240 3241 3242 } 3243 .qn-state--275880612:hover { 3244 3245 3246 color: ; 3247 3248 3249 background-color: ; 3250 3251 3252 } 3253 </style> 3254 3255 <li class="quick-nav-item qn-state--275880612"> 3256 <a class="link" href="rathaus_rathaus_ansprechpartner.html" title="Alle Ansprechpartner im Rathaus Durmersheim"> 3257 3258 3259 3260 <span class="image-placeholder"></span> 3261 3262 3263 3264 <span class="title">Ansprechpartner A-Z</span> 3265 </a> 3266 </li> 3267 3268 3269 3270 3271 3272 </div> 3273 <div class="row "> 3274 3275 3276 3277 3278 3279 <style> 3280 .qn-state--1700354857 { 3281 3282 3283 color: ; 3284 3285 3286 background-color: ; 3287 3288 3289 } 3290 .qn-state--1700354857:hover { 3291 3292 3293 color: ; 3294 3295 3296 background-color: ; 3297 3298 3299 } 3300 </style> 3301 3302 <li class="quick-nav-item qn-state--1700354857"> 3303 <a class="link" href="rathaus_rathaus_formulare.html" title="Alle Formulare zum Download"> 3304 3305 3306 3307 <span class="image-placeholder"></span> 3308 3309 3310 3311 <span class="title">Formulare</span> 3312 </a> 3313 </li> 3314 3315 3316 3317 3318 3319 </div> 3320 <div class="row "> 3321 3322 3323 3324 3325 3326 <style> 3327 .qn-state-1254239841 { 3328 3329 3330 color: ; 3331 3332 3333 background-color: ; 3334 3335 3336 } 3337 .qn-state-1254239841:hover { 3338 3339 3340 color: ; 3341 3342 3343 background-color: ; 3344 3345 3346 } 3347 </style> 3348 3349 <li class="quick-nav-item qn-state-1254239841"> 3350 <a class="link" href="leben_freibad.html" title="Freibad"> 3351 3352 3353 3354 <span class="image-placeholder"></span> 3355 3356 3357 3358 <span class="title">Freibad</span> 3359 </a> 3360 </li> 3361 3362 3363 3364 3365 3366 </div> 3367 <div class="row "> 3368 3369 3370 3371 3372 3373 <style> 3374 .qn-state--911035475 { 3375 3376 3377 color: ; 3378 3379 3380 background-color: ; 3381 3382 3383 } 3384 .qn-state--911035475:hover { 3385 3386 3387 color: ; 3388 3389 3390 background-color: ; 3391 3392 3393 } 3394 </style> 3395 3396 <li class="quick-nav-item qn-state--911035475"> 3397 <a class="link" href="rathaus_gaonline_artikelliste.html" title="Gemeindeanzeiger Durmersheim online lesen"> 3398 3399 3400 3401 <span class="image-placeholder"></span> 3402 3403 3404 3405 <span class="title">Gemeindeanzeiger online</span> 3406 </a> 3407 </li> 3408 3409 3410 3411 3412 3413 </div> 3414 <div class="row "> 3415 3416 3417 3418 3419 3420 <style> 3421 .qn-state--1803162672 { 3422 3423 3424 color: ; 3425 3426 3427 background-color: ; 3428 3429 3430 } 3431 .qn-state--1803162672:hover { 3432 3433 3434 color: ; 3435 3436 3437 background-color: ; 3438 3439 3440 } 3441 </style> 3442 3443 <li class="quick-nav-item qn-state--1803162672"> 3444 <a class="link" href="rathaus_gemeinderat.html" title="Gemeinderat"> 3445 3446 3447 3448 <span class="image-placeholder"></span> 3449 3450 3451 3452 <span class="title">Gemeinderat</span> 3453 </a> 3454 </li> 3455 3456 3457 3458 3459 3460 </div> 3461 <div class="row "> 3462 3463 3464 3465 3466 3467 <style> 3468 .qn-state-2018878731 { 3469 3470 3471 color: ; 3472 3473 3474 background-color: ; 3475 3476 3477 } 3478 .qn-state-2018878731:hover { 3479 3480 3481 color: ; 3482 3483 3484 background-color: ; 3485 3486 3487 } 3488 </style> 3489 3490 <li class="quick-nav-item qn-state-2018878731"> 3491 <a class="link" href="https://durmersheim.ris-portal.de/" title="Ratsinformationssystem"> 3492 3493 3494 3495 <span class="image-placeholder"></span> 3496 3497 3498 3499 <span class="title">Ratsinformationssystem</span> 3500 </a> 3501 </li> 3502 3503 3504 3505 3506 3507 </div> 3508 <div class="row "> 3509 3510 3511 3512 3513 3514 <style> 3515 .qn-state-1434721574 { 3516 3517 3518 color: ; 3519 3520 3521 background-color: ; 3522 3523 3524 } 3525 .qn-state-1434721574:hover { 3526 3527 3528 color: ; 3529 3530 3531 background-color: ; 3532 3533 3534 } 3535 </style> 3536 3537 <li class="quick-nav-item qn-state-1434721574"> 3538 <a class="link" href="rathaus_sterbetafel.html" title="Sterbetafel"> 3539 3540 3541 3542 <span class="image-placeholder"></span> 3543 3544 3545 3546 <span class="title">Sterbetafel</span> 3547 </a> 3548 </li> 3549 3550 3551 3552 3553 3554 </div> 3555 <div class="row "> 3556 3557 3558 3559 3560 3561 <style> 3562 .qn-state-18650133 { 3563 3564 3565 color: ; 3566 3567 3568 background-color: ; 3569 3570 3571 } 3572 .qn-state-18650133:hover { 3573 3574 3575 color: ; 3576 3577 3578 background-color: ; 3579 3580 3581 } 3582 </style> 3583 3584 <li class="quick-nav-item qn-state-18650133"> 3585 <a class="link" href="rathaus_standesamt.html" title="Trautermine"> 3586 3587 3588 3589 <span class="image-placeholder"></span> 3590 3591 3592 3593 <span class="title">Trautermine</span> 3594 </a> 3595 </li> 3596 3597 3598 3599 3600 3601 </div> 3602 <div class="row "> 3603 3604 3605 3606 3607 3608 <style> 3609 .qn-state-1444297052 { 3610 3611 3612 color: ; 3613 3614 3615 background-color: ; 3616 3617 3618 } 3619 .qn-state-1444297052:hover { 3620 3621 3622 color: ; 3623 3624 3625 background-color: ; 3626 3627 3628 } 3629 </style> 3630 3631 <li class="quick-nav-item qn-state-1444297052"> 3632 <a class="link" href="rathaus_veranstaltungskalender.html" title="Veranstaltungen in Durmersheim finden"> 3633 3634 3635 3636 <span class="image-placeholder"></span> 3637 3638 3639 3640 <span class="title">Veranstaltungskalender</span> 3641 </a> 3642 </li> 3643 3644 3645 3646 3647 3648 </div> 3649 <div class="row "> 3650 3651 3652 3653 3654 3655 <style> 3656 .qn-state--2099546723 { 3657 3658 3659 color: ; 3660 3661 3662 background-color: ; 3663 3664 3665 } 3666 .qn-state--2099546723:hover { 3667 3668 3669 color: ; 3670 3671 3672 background-color: ; 3673 3674 3675 } 3676 </style> 3677 3678 <li class="quick-nav-item qn-state--2099546723"> 3679 <a class="link" href="https://www.durmersheim.de/web/leben_vermietungen.html" title="Vermietungen"> 3680 3681 3682 3683 <span class="image-placeholder"></span> 3684 3685 3686 3687 <span class="title">Vermietungen</span> 3688 </a> 3689 </li> 3690 3691 3692 3693 3694 3695 </div> 3696 <div class="row "> 3697 3698 3699 3700 3701 3702 <style> 3703 .qn-state--898145142 { 3704 3705 3706 color: ; 3707 3708 3709 background-color: ; 3710 3711 3712 } 3713 .qn-state--898145142:hover { 3714 3715 3716 color: ; 3717 3718 3719 background-color: ; 3720 3721 3722 } 3723 </style> 3724 3725 <li class="quick-nav-item qn-state--898145142"> 3726 <a class="link" href="rathaus_rathaus_wegweiser.html" title="Wegweiser durch die Ãmter"> 3727 3728 3729 3730 <span class="image-placeholder"></span> 3731 3732 3733 3734 <span class="title">Wo erledige ich was?</span> 3735 </a> 3736 </li> 3737 3738 3739 3740 3741 3742 </div> 3743 <div class="row "> 3744 3745 3746 3747 3748 3749 <style> 3750 .qn-state-52683752 { 3751 3752 3753 color: ; 3754 3755 3756 background-color: ; 3757 3758 3759 } 3760 .qn-state-52683752:hover { 3761 3762 3763 color: ; 3764 3765 3766 background-color: ; 3767 3768 3769 } 3770 </style> 3771 3772 <li class="quick-nav-item qn-state-52683752"> 3773 <a class="link" href="https://wohnsitzanmeldung.gov.de/" title="Wohnsitzanmeldung "> 3774 3775 3776 3777 <span class="image-placeholder"></span> 3778 3779 3780 3781 <span class="title">Wohnsitzanmeldung </span> 3782 </a> 3783 </li> 3784 3785 3786 3787 3788 </div> 3789 3790</ul> 3791 3792 3793 3794 3795 3796 </div> 3797 3798 <div class="link-container"> 3799 3800 <ul> 3801 3802 </ul> 3803 3804 </div> 3805 3806 3807 </div> 3808</div> 3809 3810</div> 3811 3812<div class="sidebar-separator"> 3813 3814</div> 3815 3816 3817 3818 3819 3820 3821 3822<div class="sidebar-entry border-color_yellow"> 3823 3824 <div class="sidebar-separator-placeholder"> 3825 3826 </div> 3827 3828 3829<div class="infobox sidebar-content" > 3830 <div class="header-container"> 3831 3832 <div class="header"><h1 class="headline sidebar-title" >Wetter</h1><div class="image-spacer"></div></div> 3833 3834 </div> 3835 <div class="content-container" style=""> 3836 3837 <div class="content multiline-ellipsis" style=""> 3838 3839 3840<div style="margin-left:auto;margin-right:auto" id="wcom-0183f174ad4f235be538b098c3293fb3" class="wcom-default w300x250" style="border: 0px; background-color: rgb(209, 225, 228); border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; color: rgb(0, 0, 0);"> 3841 <link rel="stylesheet" href="//static1.wetter.com/woys/5/css/w.css" media="all"> 3842 <div class="wcom-city">
3843 <a style="color: #000" href="https://www.wetter.com/deutschland/durmersheim/DE0002300.html" target="_blank" title="Durmersheim">Wetter Durmersheim</a> 3844 </div> 3845 <div id="wcom-0183f174ad4f235be538b098c3293fb3-weather"></div> 3846
3846<script type="text/javascript" src="//static1.wetter.com/woys/5/js/w.js"></script>
3846 3847
3847<script type="text/javascript"> 3848 _wcomWidget({id: 'wcom-0183f174ad4f235be538b098c3293fb3',location: 'DE0002300',format: '300x250',type: 'summary'}); 3849 3850 require(['jquery'], function($) { 3851 var $wEl=$('#wcom-0183f174ad4f235be538b098c3293fb3'); 3852 3853 $wEl.css({ 3854 'margin-left': 0, 3855 'margin-right': 0, 3856 'padding-left': '0!important', 3857 'transform-origin': 'left top' 3858 }); 3859 3860 function adjustWidth() { 3861 var availableWidth = $wEl.parent().innerWidth(), 3862 neededWidth = $wEl.outerWidth(); 3863 3864 if (neededWidth<availableWidth) { 3865 $wEl.css({ 3866 'transform': 'scale(1)' 3867 }); 3868 } 3869 else { 3870 $wEl.css({ 3871 'transform': 'scale(' + (availableWidth/neededWidth) + ')' 3872 }); 3873 } 3874 } 3875 3876 adjustWidth(); 3877 $(window).resize($.debounce(500, adjustWidth)); 3878 }); 3879 </script>
3879 3880</div> 3881 3882 3883 </div> 3884 3885 <div class="link-container"> 3886 3887 <ul> 3888 3889 </ul> 3890 3891 </div> 3892 3893 3894 </div> 3895</div> 3896 3897</div> 3898 3899<div class="sidebar-separator"> 3900 3901</div> 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 </div> 3914 3915 </div> 3916 3917 3918 </div> 3919 </div> 3920 <div class="row"> 3921 <div class="sidebar-action-bar"> 3922 3923 <div class="sidebar-action action-print"> 3924 3925 3926 <a target="_blank" href="/vds/cms_durmersheim.nsf/web/../api/durmersheim/pdfprint?path=Kontaktformular.html" title="Diese Seite als PDF herunterladen"></a> 3927 3928 3929 </div> 3930 <div class="sidebar-action action-contact"> 3931 <a href="Kontaktformular.html" title="Anfrage senden"></a> 3932 </div> 3933 <div class="sidebar-action action-to-top"> 3934 <a href="#top" title="nach oben"></a> 3935 </div> 3936 3937 </div> 3938 </div> 3939 3940 3941 </div> 3942 3943 </div> 3944 3945 <div class="container-fluid body-content bottom-content"> 3946 3947 </div> 3948 3949 3950 3951 <nav class="navbar navbar-default bottom-navbar sitemap-navbar visible-lg visible-md"> 3952 <div class="container-fluid body-content"> 3953 3954 3955 3956 3957<div class="sitemap sitemap-level-1000" > 3958 3959 3960 <div class="folder section navsection-service " role="group"> 3961 <span> 3962 <div class="node-title-container"> 3963 <h4 class="node-title">Rathaus & Bürgerservice</h4> 3964 </div> 3965 </span> 3966 <ul> 3967 3968 3969 3970 3971 3972 <li id="abfallentsorgung" title="Abfallentsorgung" class="navsection-service"><span><a role="link" href="rathaus_abfallentsorgung.html">Abfallentsorgung</a></span> 3973 3974 3975 3976 3977 3978 3979 <li id="buergermeister" title="Bürgermeister" class="navsection-service"><span><a role="link" href="rathaus_buergermeister.html">Bürgermeister</a></span> 3980 3981 3982 3983 3984 3985 3986 <li id="gaz" title="Gemeindeanzeiger" class="navsection-service"><span><a role="link" href="rathaus_gaonline_artikelliste.html">Gemeindeanzeiger</a></span> 3987 3988 3989 3990 3991 3992 3993 <li id="gremium_ausschuesse" title="Gemeinderat" class="folder navsection-service"><span>Gemeinderat</span> 3994 3995 <ul class="sitmap-list sitmap-list-level-2"> 3996 3997 3998 3999 4000 4001 4002 <li id="gemeinderat" title="Gremien und Ausschüsse" class="navsection-service"><span><a role="link" href="rathaus_gemeinderat.html">Gremien und Ausschüsse</a></span> 4003 4004 4005 4006 4007 4008 4009 <li id="ris" title="Ratsinformationssystem" class="navsection-service"><span><a role="link" href="rathaus_gremium_ris.html">Ratsinformationssystem</a></span> 4010 4011 4012 4013 4014 </ul> 4015 4016 4017 4018 4019 <li id="bekanntmachungen" title="Ãffentliche Bekanntmachungen" class="navsection-service"><span><a role="link" href="rathaus_rathaus_bekanntmachungen.html">Ãffentliche Bekanntmachungen</a></span> 4020 4021 4022 4023 4024 4025 4026 <li id="oeffnungszeiten" title="Ãffnungszeiten" class="navsection-service"><span><a role="link" href="rathaus_oeffnungszeiten.html">Ãffnungszeiten</a></span> 4027 4028 4029 4030 4031 4032 4033 <li id="ortsrecht" title="Ortsrecht / Satzungen" class="navsection-service"><span><a role="link" href="rathaus_ortsrecht.html">Ortsrecht / Satzungen</a></span> 4034 4035 4036 4037 4038 4039 4040 <li id="rathaus" title="Rathaus" class="folder navsection-service"><span>Rathaus</span> 4041 4042 <ul class="sitmap-list sitmap-list-level-2"> 4043 4044 4045 4046 4047 4048 4049 <li id="rathaus_rathaus_ansprechpartner" title="Ansprechpartner A-Z" class="navsection-service"><span><a role="link" href="rathaus_rathaus_ansprechpartner.html">Ansprechpartner A-Z</a></span> 4050 4051 4052 4053 4054 4055 4056 <li id="ausschreibungen" title="Ausschreibungen" class="navsection-service"><span><a role="link" href="rathaus_rathaus_ausschreibungen.html">Ausschreibungen</a></span> 4057 4058 4059 4060 4061 4062 4063 <li id="formulare" title="Formulare" class="navsection-service"><span><a role="link" href="rathaus_rathaus_formulare.html">Formulare</a></span> 4064 4065 4066 4067 4068 4069 4070 <li id="rentenberatung" title="Rentenberatung" class="navsection-service"><span><a role="link" href="rathaus_rathaus_rentenberatung.html">Rentenberatung</a></span> 4071 4072 4073 4074 4075 4076 4077 <li id="wegweiser" title="Wo erledige ich was?" class="navsection-service"><span><a role="link" href="rathaus_rathaus_wegweiser.html">Wo erledige ich was?</a></span> 4078 4079 4080 4081 4082 </ul> 4083 4084 4085 4086
4087 <li id="schadensmeldung" title="Schadensmeldung" class="navsection-service"><span><a role="link" href="rathaus_schadensmeldung.html">Schadensmeldung</a></span> 4088 4089 4090 4091 4092 4093 4094 <li id="stellenangebote" title="Stellenangebote" class="navsection-service"><span><a role="link" href="https://durmersheim.ris-portal.de/web/stellenportal/home">Stellenangebote</a></span> 4095 4096 4097 4098 4099 4100 4101 <li id="steuern_gebuehren" title="Steuern & Gebühren" class="navsection-service"><span><a role="link" href="rathaus_steuern.html">Steuern & Gebühren</a></span> 4102 4103 4104 4105 4106 4107 4108 <li id="termintool" title="Termin vereinbaren" class="navsection-service"><span><a role="link" href="rathaus_termin-tool.html">Termin vereinbaren</a></span> 4109 4110 4111 4112 4113 4114 4115 <li id="veranstaltungskalender" title="Veranstaltungskalender" class="navsection-service"><span><a role="link" href="rathaus_veranstaltungskalender.html">Veranstaltungskalender</a></span> 4116 4117 4118 4119 4120 4121 4122 <li id="wahlen" title="Wahlen" class="navsection-service"><span><a role="link" href="rathaus_wahlen.html">Wahlen</a></span> 4123 4124 4125 4126 4127 4128 4129 <li id="rufnummern" title="Wichtige Rufnummern/Störungsmeldungen" class="navsection-service"><span><a role="link" href="rathaus_rufnummern.html">Wichtige Rufnummern/Störungsmeldungen</a></span> 4130 4131 4132 4133 4134 4135 4136 4137 </ul> 4138 </div> 4139 4140 <div class="folder section navsection-leben " role="group"> 4141 <span> 4142 <div class="node-title-container"> 4143 <h4 class="node-title">Leben & Gemeinde</h4> 4144 </div> 4145 </span> 4146 <ul> 4147 4148 4149 4150 4151 4152 <li id="Adventsmarkt" title="Durmersheimer Adventsmarkt 2026" class="navsection-leben"><span><a role="link" href="adventsmarkt.html">Durmersheimer Adventsmarkt 2026</a></span> 4153 4154 4155 4156 4157 4158 4159 <li id="agenda" title="Agenda 21" class="navsection-leben"><span><a role="link" href="leben_agenda.html">Agenda 21</a></span> 4160 4161 4162 4163 4164 4165 4166 <li id="Daten_Fakten" title="Daten & Fakten" class="navsection-leben"><span><a role="link" href="leben_daten.html">Daten & Fakten</a></span> 4167 4168 4169 4170 4171 4172 4173 <li id="fluechtlinge" title="Flüchtlingsbegleitung und -unterbringung" class="navsection-leben"><span><a role="link" href="leben_fluechtlingsbegleitung.html">Flüchtlingsbegleitung und -unterbringung</a></span> 4174 4175 4176 4177 4178 4179 4180 <li id="freibad" title="Freibad" class="navsection-leben"><span><a role="link" href="leben_freibad.html">Freibad</a></span> 4181 4182 4183 4184 4185 4186 4187 <li id="feuerwehr" title="Freiwillige Feuerwehr" class="navsection-leben"><span><a role="link" href="leben_feuerwehr.html">Freiwillige Feuerwehr</a></span> 4188 4189 4190 4191 4192 4193 4194 <li id="Freizeit" title="Freizeit" class="folder navsection-leben"><span>Freizeit</span> 4195 4196 <ul class="sitmap-list sitmap-list-level-2"> 4197 4198 4199 4200 4201 4202 4203 <li id="Campingplatz" title="Campingplatz" class="navsection-leben"><span><a role="link" href="leben_campingplatz.html">Campingplatz</a></span> 4204 4205 4206 4207 4208 4209 4210 <li id="Kleingärten" title="Kleingärten" class="navsection-leben"><span><a role="link" href="leben_kleingaerten.html">Kleingärten</a></span> 4211 4212 4213 4214 4215 4216 4217 <li id="natur" title="Natur" class="navsection-leben"><span><a role="link" href="leben_natur.html">Natur</a></span> 4218 4219 4220 4221 4222 4223 4224 <li id="vermietungen" title="Vermietungen" class="navsection-leben"><span><a role="link" href="leben_vermietungen.html">Vermietungen</a></span> 4225 4226 4227 4228 4229 </ul> 4230 4231 4232 4233 4234 <li id="friedhof" title="Friedhöfe" class="navsection-leben"><span><a role="link" href="leben_friedhof_neu.html">Friedhöfe</a></span> 4235 4236 4237 4238 4239 4240 4241 <li id="historisches" title="Historisches" class="folder navsection-leben"><span>Historisches</span> 4242 4243 <ul class="sitmap-list sitmap-list-level-2"> 4244 4245 4246 4247 4248 4249 4250 <li id="bäretriewergedicht" title="Bäretriewergedicht" class="navsection-leben"><span><a role="link" href="leben_historisches_baeretriewergedicht.html">Bäretriewergedicht</a></span> 4251 4252 4253 4254 4255 4256 4257 <li id="bickesheim" title="Bickesheim" class="navsection-leben"><span><a role="link" href="leben_historisches_bickesheim.html">Bickesheim</a></span> 4258 4259 4260 4261 4262 4263 4264 <li id="durmersheim" title="Durmersheim" class="navsection-leben"><span><a role="link" href="leben_historisches_durmersheim.html">Durmersheim</a></span> 4265 4266 4267 4268 4269 4270 4271 <li id="zeittafel" title="Durmersheim â Zeittafel" class="navsection-leben"><span><a role="link" href="leben_historisches_durmersheim_zeittafel.html">Durmersheim â Zeittafel</a></span> 4272 4273 4274 4275 4276 4277 4278 <li id="heimatmuseum" title="Heimatmuseum" class="navsection-leben"><span><a role="link" href="leben_heimatmuseum.html">Heimatmuseum</a></span> 4279 4280 4281 4282 4283 4284 4285 <li id="würmersheim" title="Würmersheim" class="navsection-leben"><span><a role="link" href="leben_historisches_würmersheim.html">
4285Würmersheim</a></span> 4286 4287 4288 4289 4290 4291 4292 <li id="wuermersheim" title="Würmersheim â Zeittafel" class="navsection-leben"><span><a role="link" href="leben_historisches_wuermersheim_zeittafel.html">Würmersheim â Zeittafel</a></span> 4293 4294 4295 4296 4297 </ul> 4298 4299 4300 4301 4302 <li id="imagefilm" title="Imagefilm" class="navsection-leben"><span><a role="link" href="leben_imagefilm.html">Imagefilm</a></span> 4303 4304 4305 4306 4307 4308 4309 <li id="kirche" title="Kirchen" class="navsection-leben"><span><a role="link" href="leben_kirche_.html">Kirchen</a></span> 4310 4311 4312 4313 4314 4315 4316 <li id="landkreis" title="Landkreis" class="navsection-leben"><span><a role="link" href="leben_landkreis.html">Landkreis</a></span> 4317 4318 4319 4320 4321 4322 4323 <li id="Natur" title="Natur und Umwelt" class="folder navsection-leben"><span><a role="link" href="leben_natur.html">Natur und Umwelt</a></span> 4324 4325 <ul class="sitmap-list sitmap-list-level-2"> 4326 4327 4328 4329 4330 4331 4332 <li id="hochwasser" title="Hochwasser" class="navsection-leben"><span><a role="link" href="leben_hochwasser.html">Hochwasser</a></span> 4333 4334 4335 4336 4337 4338 4339 <li id="AMKL" title="Aktionsplan für Mobilität, Klima- und Lärmschutz " class="navsection-leben"><span><a role="link" href="leben_amkl.html">Aktionsplan für Mobilität, Klima- und Lärmschutz </a></span> 4340 4341 4342 4343 4344 4345 4346 <li id="Ortsmitten" title="Ortsmitten-Qualitätserfassung" class="navsection-leben"><span><a role="link" href="leben_ortsmitten.html">Ortsmitten-Qualitätserfassung</a></span> 4347 4348 4349 4350 4351 4352 4353 <li id="klima" title="Klimaschutz" class="navsection-leben"><span><a role="link" href="leben_klimaschutz.html">Klimaschutz</a></span> 4354 4355 4356 4357 4358 4359 4360 <li id="natur" title="Natur" class="navsection-leben"><span><a role="link" href="leben_natur.html">Natur</a></span> 4361 4362 4363 4364 4365 4366 4367 <li id="wald" title="Wald" class="navsection-leben"><span><a role="link" href="leben_wald.html">Wald</a></span> 4368 4369 4370 4371 4372 4373 4374 <li id="brennholzbestellung" title="Brennholzbestellung" class="navsection-leben"><span><a role="link" href="leben_brennholzbestellung_inaktiv.html">Brennholzbestellung</a></span> 4375 4376 4377 4378 4379 4380 4381 <li id="windenergie" title="Windenergie" class="navsection-leben"><span><a role="link" href="leben_windenergie.html">Windenergie</a></span> 4382 4383 4384 4385 4386 </ul> 4387 4388 4389 4390 4391 <li id="pamina" title="Pamina Rheinpark" class="navsection-leben"><span><a role="link" href="leben_pamina.html">Pamina Rheinpark</a></span> 4392 4393 4394 4395 4396 4397 4398 <li id="vereine" title="Vereine" class="folder navsection-leben"><span>Vereine</span> 4399 4400 <ul class="sitmap-list sitmap-list-level-2"> 4401 4402 4403 4404 4405 4406 4407 <li id="vereine" title="Vereine" class="navsection-leben"><span><a role="link" href="leben_vereine.html">Vereine</a></span> 4408 4409 4410 4411 4412 </ul> 4413 4414 4415 4416 4417 <li id="spielplaetze" title="Spielplätze" class="navsection-leben"><span><a role="link" href="leben_spielplaetze.html">Spielplätze</a></span> 4418 4419 4420 4421 4422 4423 4424 <li id="staedtepartnerschaften" title="Städtepartnerschaften" class="navsection-leben"><span><a role="link" href="leben_staedtepartnerschaften.html">Städtepartnerschaften</a></span> 4425 4426 4427 4428 4429 4430 4431 4432 </ul> 4433 </div> 4434 4435 <div class="folder section navsection-familien_senioren " role="group"> 4436 <span> 4437 <div class="node-title-container"> 4438 <h4 class="node-title">Bildung & Soziales</h4> 4439 </div> 4440 </span> 4441 <ul> 4442 4443 4444 4445 4446 4447 <li id="familien_senioren" title="Familien- und Seniorenbüro" class="folder navsection-familien_senioren"><span>Familien- und Seniorenbüro</span> 4448 4449 <ul class="sitmap-list sitmap-list-level-2"> 4450 4451 4452 4453 4454 4455 4456 <li id="familienbuero" title="Familienbüro" class="navsection-familien_senioren"><span><a role="link" href="familien_familienbuero.html">Familienbüro</a></span> 4457 4458 4459 4460 4461 4462 4463 <li id="seniorenbuero" title="Seniorenbüro" class="navsection-familien_senioren"><span><a role="link" href="familien_seniorenhilfe.html">Seniorenbüro</a></span> 4464 4465 4466 4467 4468 4469 4470 <li id="familien_seniorenbüro" title="Ãber uns" class="navsection-familien_senioren"><span><a role="link" href="familien_familien_seniorenbuero.html">Ãber uns</a></span> 4471 4472 4473 4474 4475 </ul> 4476 4477 4478 4479 4480 <li id="ferienbetreuung" title="Ferienbetreuung" class="navsection-familien_senioren"><span><a role="link" href="familien_ferienbetreuung.html">Ferienbetreuung</a></span> 4481 4482 4483 4484 4485 4486 4487 <li id="ferienspass" title="FerienspaÃ" class="navsection-familien_senioren"><span><a role="link" href="familien_ferienspass_Anmeldung.html">
4487FerienspaÃ</a></span> 4488 4489 4490 4491 4492 4493 4494 <li id="horte" title="Horte" class="navsection-familien_senioren"><span><a role="link" href="familien_horte.html">Horte</a></span> 4495 4496 4497 4498 4499 4500 4501 <li id="familien_jugendhaus" title="Jugendhaus" class="navsection-familien_senioren"><span><a role="link" href="familien_jugendhaus.html">Jugendhaus</a></span> 4502 4503 4504 4505 4506 4507 4508 <li id="Kindertagespflege" title="Kinderbetreuung U3 - Kindertagespflege" class="navsection-familien_senioren"><span><a role="link" href="familien_kindertagespflege.html">Kinderbetreuung U3 - Kindertagespflege</a></span> 4509 4510 4511 4512 4513 4514 4515 <li id="kindertagesstaetten" title="Kindertagesstätten" class="folder navsection-familien_senioren"><span>Kindertagesstätten</span> 4516 4517 <ul class="sitmap-list sitmap-list-level-2"> 4518 4519 4520 4521 4522 4523 4524 <li id="kindertagesstaetten_info" title="Allgemeines und Anmeldung" class="navsection-familien_senioren"><span><a role="link" href="familien_kindertagesstaetten_info2.html">Allgemeines und Anmeldung</a></span> 4525 4526 4527 4528 4529 4530 4531 <li id="villakunterbunt" title="Villa Kunterbunt" class="navsection-familien_senioren"><span><a role="link" href="familien_kindergaerten_villakunterbunt.html">Villa Kunterbunt</a></span> 4532 4533 4534 4535 4536 4537 4538 <li id="villaregenbogen" title="Villa Regenbogen" class="navsection-familien_senioren"><span><a role="link" href="familien_kindergaerten_villaregenbogen.html">Villa Regenbogen</a></span> 4539 4540 4541 4542 4543 4544 4545 <li id="villasonnenschein" title="Villa Sonnenschein" class="navsection-familien_senioren"><span><a role="link" href="familien_kindergaerten_villasonnenschein.html">Villa Sonnenschein</a></span> 4546 4547 4548 4549 4550 4551 4552 <li id="kindergartenwald" title="Waldkindergarten Villa WildWuchs" class="navsection-familien_senioren"><span><a role="link" href="familien_kindergaerten_waldkindergarten.html">Waldkindergarten Villa WildWuchs</a></span> 4553 4554 4555 4556 4557 4558 4559 <li id="stbernhard" title="St. Bernhard" class="navsection-familien_senioren"><span><a role="link" href="familien_kindergaerten_stbernhard.html">St. Bernhard</a></span> 4560 4561 4562 4563 4564 4565 4566 <li id="stlioba" title="St. Lioba" class="navsection-familien_senioren"><span><a role="link" href=" familien_kindergaerten_stlioba.html">St. Lioba</a></span> 4567 4568 4569 4570 4571 4572 4573 <li id="kindergartenstthomas" title="St. Thomas" class="navsection-familien_senioren"><span><a role="link" href="familien_kindergaerten_kindergartenstthomas.html">St. Thomas</a></span> 4574 4575 4576 4577 4578 </ul> 4579 4580 4581 4582 4583 <li id="mensa" title="Mensa" class="navsection-familien_senioren"><span><a role="link" href="familien_mensa.html">Mensa</a></span> 4584 4585 4586 4587 4588 4589 4590 <li id="Bücherei" title="Ãffentliche Bücherei" class="navsection-familien_senioren"><span><a role="link" href="familien_buecherei.html">Ãffentliche Bücherei</a></span> 4591 4592 4593 4594 4595 4596 4597 <li id="schulen" title="Schulen" class="folder navsection-familien_senioren"><span>Schulen</span> 4598 4599 <ul class="sitmap-list sitmap-list-level-2"> 4600 4601 4602 4603 4604 4605 4606 <li id="grundschulefriedrichschule" title="Grundschule Friedrichschule" class="navsection-familien_senioren"><span><a role="link" href="familien_schule_grundschulefriedrichschule.html">Grundschule Friedrichschule</a></span> 4607 4608 4609 4610 4611 4612 4613 <li id="grundschulewürmersheim" title="Grundschule Würmersheim" class="navsection-familien_senioren"><span><a role="link" href="familien_schule_grundschulewürmersheim.html">Grundschule Würmersheim</a></span> 4614 4615 4616 4617 4618 4619 4620 <li id="hardtschuledurmersheimauamrhein" title="Hardtschule Durmersheim" class="navsection-familien_senioren"><span><a role="link" href="familien_schule_hardtschuledurmersheimauamrhein.html">Hardtschule Durmersheim</a></span> 4621 4622 4623 4624 4625 4626 4627 <li id="realschuledurmersheim" title="Realschule Durmersheim" class="navsection-familien_senioren"><span><a role="link" href="familien_schule_realschuledurmersheim.html">Realschule Durmersheim</a></span> 4628 4629 4630 4631 4632 4633 4634 <li id="Wilhelm-Hausenstein-Gymnasium" title="Wilhelm-Hausenstein-Gymnasium" class="navsection-familien_senioren"><span><a role="link" href="familien_schule_wilhelm-hausenstein-gymnasium.html">Wilhelm-Hausenstein-Gymnasium</a></span> 4635 4636 4637 4638 4639 </ul> 4640 4641 4642 4643 4644 <li id="VHS" title="Volkshochschule" class="navsection-familien_senioren"><span><a role="link" href="familien_schule_volkshochschule.html">Volkshochschule</a></span> 4645 4646 4647 4648 4649 4650 4651 4652 </ul> 4653 </div> 4654 4655 <div class="folder section navsection-gewerbe_bauen " role="group"> 4656 <span> 4657 <div class="node-title-container"> 4658 <h4 class="node-title">Gewerbe & Bauen</h4> 4659 </div> 4660 </span> 4661 <ul> 4662 4663 4664 4665 4666 4667 <li id="Bebauungsplaene" title="Bebauungspläne" class="folder navsection-gewerbe_bauen"><span><a role="link" href="bebauungsplaene.html">Bebauungspläne</a></span> 4668 4669 <ul class="sitmap-list sitmap-list-level-2"> 4670 4671 4672 4673 4674 4675 4676 <li id="Bebauungsplanverfahren" title="Bebauungsplanverfahren" class="navsection-gewerbe_bauen"><span><a role="link" href="bebauungsplanverfahren.html">Bebauungsplanverfahren</a></span> 4677 4678 4679 4680 4681 4682 4683 <li id="rechtskr_BPläne" title="Rechtskräftige Bebauungspläne" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_rechtskr_BPläne.html">Rechtskräftige Bebauungspläne</a></span> 4684 4685 4686 4687 4688 </ul> 4689 4690 4691 4692 4693 <li id="Gemeindeentwicklungskonzept" title="Gemeindeentwicklungskonzept" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_gemeindeentwicklungskonzept.html">Gemeindeentwicklungskonzept</a></span> 4694 4695 4696 4697 4698 4699 4700 <li id="bauen_gewerbe" title="Gewerbe und Bauen" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_gewerbe_bauen.html">Gewerbe und Bauen</a></span> 4701 4702 4703 4704 4705 4706 4707 <li id="gewerbebauplaetze" title="Gewerbebauplätze" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_gewerbebauplaetze.html">
4707Gewerbebauplätze</a></span> 4708 4709 4710 4711 4712 4713 4714 <li id="GAA" title="Gutachterausschuss" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_GAA.html">Gutachterausschuss</a></span> 4715 4716 4717 4718 4719 4720 4721 <li id="innenstadt" title="Innenstadt" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_innenstadt.html">Innenstadt</a></span> 4722 4723 4724 4725 4726 4727 4728 <li id="Wärmeplanung" title="Kommunale Wärmeplanung" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_waermeplanung.html">Kommunale Wärmeplanung</a></span> 4729 4730 4731 4732 4733 4734 4735 <li id="öffentliche Auslegung" title="Ãffentliche Auslegungen" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_auslegungen2.html">Ãffentliche Auslegungen</a></span> 4736 4737 4738 4739 4740 4741 4742 <li id="bauausschreibungen" title="Ãffentliche Ausschreibungen / vergebene Aufträge" class="folder navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_bauausschreibungen.html">Ãffentliche Ausschreibungen / vergebene Aufträge</a></span> 4743 4744 <ul class="sitmap-list sitmap-list-level-2"> 4745 4746 4747 4748 4749 4750 4751 <li id="öffentliche Ausschreibung" title="Ãffentliche Ausschreibungen (VOB, VgV, UVgO, VOF) " class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_öff_ausschreibung.html">Ãffentliche Ausschreibungen (VOB, VgV, UVgO, VOF) </a></span> 4752 4753 4754 4755 4756 4757 4758 <li id="beschränkte Ausschreibungen" title="Beschränkte Ausschreibungen (VOB, UVgO, VOF)" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_beschränkte_ausschreibung.html">Beschränkte Ausschreibungen (VOB, UVgO, VOF)</a></span> 4759 4760 4761 4762 4763 4764 4765 <li id="vergebene Aufträge" title="Bekanntmachung vergebener Aufträge" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_vergebene_ausschreibung.html">Bekanntmachung vergebener Aufträge</a></span> 4766 4767 4768 4769 4770 </ul> 4771 4772 4773 4774 4775 <li id="gewerbeverein" title="Ãrtlicher Gewerbeverein (ISG)" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_gewerbeverein.html">Ãrtlicher Gewerbeverein (ISG)</a></span> 4776 4777 4778 4779 4780 4781 4782 <li id="Städtebauliche Erneuerung "Speyerer StraÃe"" title="Städtebauliche Erneuerung "Speyerer StraÃe"" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_sanierungsgebiet.html">Städtebauliche Erneuerung "Speyerer StraÃe"</a></span> 4783 4784 4785 4786 4787 4788 4789 <li id="unternehmen" title="Unternehmen A-Z" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_unternehmen.html">Unternehmen A-Z</a></span> 4790 4791 4792 4793 4794 4795 4796 <li id="wohnbauplaetze" title="Wohnbauplätze" class="folder navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_wohnbauplaetze.html">Wohnbauplätze</a></span> 4797 4798 <ul class="sitmap-list sitmap-list-level-2"> 4799 4800 4801 4802 4803 4804 4805 <li id="westendstraÃe" title="WestendstraÃe" class="navsection-gewerbe_bauen"><span><a role="link" href="gewerbe_westendstrasse.html">WestendstraÃe</a></span> 4806 4807 4808 4809 4810 4811 4812 </ul> 4813 4814 4815 4816 4817 </ul> 4818 </div> 4819 4820 4821</div> 4822 4823 4824 </div> 4825 </nav> 4826 4827 4828 <div class="footer-background bg_color-service"> 4829 4830 <nav class="navbar navbar-default bottom-navbar footer"> 4831 <div class="container-fluid body-content"> 4832 4833 <div class="footer-text"> 4834 4835 4836 4837<div class="footer-address"> 4838 <div class="row"> 4839 4840 4841 4842 4843 4844 4845 4846 4847 <div class="col-lg-2 col-md-2 col-sm-2 col-xs-12 col-sm-height col-top"> 4848 4849 <address class="address-block"> 4850 <h4 class="address-line footer-subtitle name">Gemeinde Durmersheim</h4> 4851 <span class="address-line street">Rathausplatz 1</span> 4852 <span class="address-line"><span class="zip">76448</span> <span class="city">Durmersheim</span></span> 4853 <span class="address-line phone">Telefon 07245 920 - 0</span> 4854 <span class="address-line fax"></span> 4855 4856 4857 <span class="address-line">[email protected]</span> 4858 <span class="address-line"><a class="email" href="mailto:[email protected]" class="email">E-Mail schreiben</a></span> 4859 4860 4861 </address> 4862 </div> 4863 4864 4865 <div class="col-lg-2 col-md-2 col-sm-2 col-xs-12 col-sm-height col-top"> 4866 4867 4868 </div> 4869 4870 4871 4872 4873 <div class="col-lg-2 col-md-2 col-sm-2 col-xs-12 col-sm-height col-top"> 4874 4875 <div class="media-links container-fluid"> 4876 <h4 class="row">RSS-Feed abonnieren:</h4> 4877 <div class="row"> 4878 <div class="col-md-6 col-xs-12"> 4879 4880 <div class="rs_preserve image-container image-container-idx- rss" style=""> 4881 <div class="image " style="position:relative"> 4882 4883 <a class="lnk-navigate-to" title="zum RSS-Abo" href="news-feed.xml" target="_blank"> 4884 4885 4886 4887 4888 4889 4890 4891 <img src="RSS.svg?scaledimage=true&width=600" data-image="RSS.svg" class="img-responsive anchor-image" alt="RSS-Feed abonnieren" /> 4892 4893 </a> 4894 4895 </div> 4896 4897 4898 4899 4900 <h4 class="image-subtitle placeholder"> 4901 RSS-Feed abonnieren 4902 </h4> 4903 <h4 class="image-subtitle"> 4904 RSS-Feed abonnieren 4905 </h4> 4906 4907</div> 4908 4909 </div> 4910 <div class="col-md-6 col-xs-12"> 4911 4912 <div class="rs_preserve image-container image-container-idx- 115" style=""> 4913 <div class="image " style="position:relative"> 4914 4915 4916 4917 4918 4919 4920 4921 <img src="115.svg?scaledimage=true&width=600" data-image="115.svg" class="img-responsive " alt="Behördenrufnummer 115" /> 4922 4923 </div> 4924 4925 4926 4927 4928</div> 4929 4930 </div> 4931 </div> 4932 <div class="row"> 4933 <a class="ga lnk-navigate-to" href="ga.html" title="weitere Informationen zum Gemeindeanzeiger Abonnement">Gemeindeanzeiger abonnieren</a> 4934 </div> 4935 <div class="row"> 4936 <a class="115 lnk-navigate-to" href="115.html" title="weitere Informationen zur Behördenrufnummer">Behördenrufnummer 115</a> 4937 </div> 4938</div> 4939 </div> 4940 4941 4942 </div> 4943</div> 4944 4945 4946 </div> 4947 4948 4949 <div class="footer-links"> 4950 <a href="Kontaktformular.html" title="Anfrage senden">Kontakt</a><span class="spacer"></span> 4951 <a href="info_impressum.html">Impressum</a><span class="spacer"></span> 4952 <a href="sitemap.html">Sitemap</a> 4953 <span class="spacer"></span><a href="info_datenschutz.html">Datenschutzerklärung</a> 4954 <span class="spacer"></span><a href="barrierefreiheit.html">Erklärung zur Barrierefreiheit</a> 4955 </div> 4956 4957 </div> 4958 </nav> 4959 4960 </div> 4961 4962 4963 <div class="device-xs visible-xs breakpointindicator"></div> 4964 <div class="device-sm visible-sm breakpointindicator"></div> 4965 <div class="device-md visible-md breakpointindicator"></div> 4966 <div class="device-lg visible-lg breakpointindicator"></div> 4967 4968 4969
4969<script type="text/javascript"> 4970 window.addEventListener('load', function () { 4971 require(['jquery'], function($) { 4972 // compute ellipsis text on each resize 4973 function computeTextToFitInElement(targetEl, text) { 4974 var $targetEl=$(targetEl), 4975 availWidth=$targetEl.innerWidth(), 4976 availHeight=$targetEl.innerHeight(); 4977 4978 if (targetEl.scrollHeight > availHeight && ((targetEl.scrollHeight - availHeight)>3)) { 4979 var $el=$('<div style="position:absolute;overflow:hidden;visibility:hidden" />'), 4980 el=$el.get(0), 4981 currText = text, 4982 neededHeight, count=0, hasDots; 4983 4984 $el.width(availWidth); 4985 $el.height(availHeight); 4986 4987 $el.appendTo(targetEl); 4988 4989 $el.text(currText); 4990 4991 while ((neededHeight=el.scrollHeight) > availHeight && currText.length>3) { 4992 currText = currText.substring(0, Math.min(currText.length-1, 300)); 4993 $el.text(currText + '...'); 4994 hasDots = true; 4995 } 4996 4997 $el.remove(); 4998 4999 return currText + (hasDots ? '...' : ''); 5000 } 5001 } 5002 function computeMultilineEllipsis() { 5003 $('.multiline-ellipsis').each(function(idx, el) { 5004 var $el=$(el), 5005 text; 5006 5007 if ($el.css('overflow')!=='hidden' || $el.css('overflow-y')!=='hidden') { 5008 return; 5009 } 5010 5011 if ($el.data('originalHtml')) { 5012 // use the formerly saved original text 5013 $el.html($el.data('originalHtml')); 5014 5015 text = $el.text(); 5016 } 5017 else { 5018 text = $el.text(); 5019 5020 $el.data('originalHtml', $el.html()); 5021 } 5022 5023 var truncatedText = computeTextToFitInElement(el, text); 5024 if (truncatedText) { 5025 $el.text(truncatedText); 5026 } 5027 }); 5028 } 5029 computeMultilineEllipsis(); 5030 $(window).resize($.debounce(500, computeMultilineEllipsis)); 5031}); 5032 require(['jquery', 'magnific'], function($) { 5033 // zoom on images with lightense-class 5034 var images=$('.lightense img'); 5035 5036 if (images.length>0) { 5037 $('.lightense').append($('<div style="position:absolute; bottom: -2px; right: -2px"><div class="magnifying-glass"></div></div>')); 5038 5039 $.extend(true, $.magnificPopup.defaults, { 5040 tClose: 'SchlieÃen (Esc)', 5041 tLoading: 'Lade Bild...', 5042 image: { 5043 tError: '<a href="%url%">Das Bild</a> konnte nicht geladen werden.' 5044 }, 5045 gallery: { 5046 tPrev: 'Vorgänger (linke Pfeil-Taste)', 5047 tNext: 'Nachfolger (rechte Pfeil-Taste)', 5048 tCounter: '%curr% von %total%' 5049 }, 5050 ajax: { 5051 tError: '<a href="%url%">Der Inhalt</a> konnte nicht geladen werden.' 5052 } 5053 }); 5054 5055 $('.lightense img').each(function(idx, img) { 5056 var $img=$(img); 5057 5058 if ($img.attr('data-image')) { 5059 $img.attr('data-mfp-src', $img.attr('data-image')); 5060 } 5061 5062 var isHover=function(e) { 5063 if (e.parentElement) { 5064 var hoverList = e.parentElement.querySelectorAll(':hover'); 5065 5066 for(var i=0; i < hoverList.length; i++ ) { 5067 if (hoverList[i]===e) { 5068 return true; 5069 } 5070 } 5071 } 5072 }; 5073 5074 5075 5076 $img.magnificPopup({ 5077 type: 'image', 5078 key: 'lightense', 5079 disableOn: (function(disabled) { 5080 return function() { 5081 return !disabled; 5082 }; 5083 })($img.is('.anchor-image')), 5084 closeOnContentClick: true, 5085 closeOnBgClick: true, 5086 closeBtnInside: true, 5087 enableEscapeKey: true 5088 }); 5089 5090 $img.closest('.lightense').find('.magnifying-glass').on('click', (function(imgSrc) { 5091 return function() { 5092 $.magnificPopup.open({ 5093 items: { 5094 src: imgSrc 5095 }, 5096 type: 'image', 5097 key: 'lightense', 5098 closeOnContentClick: true, 5099 closeOnBgClick: true, 5100 closeBtnInside: true, 5101 enableEscapeKey: true 5102 }, 0); 5103 } 5104 })($img.attr('data-image') || $img.src || $img.href)); 5105 }); 5106 } 5107}); 5108 5109 $('.main-nav-logo').css('cursor', 'pointer'); 5110 $('.main-nav-logo').on('click', function() { 5111 location.href='index.html'; 5112 }); 5113 }, false); 5114 </script>
5114 5115 5116
5116<script type="text/javascript"> 5117 require(['cms/search_handler.js', 'underscore', 'moment'], function(handler, _, moment) { 5118 var searchCntTpl=[ 5119 '<div class="searchcol" style="display:none">', 5120 '<div class="searchResultHeader" style="display:table;width:100%;height:5%">', 5121 '<div class="table">', 5122 '<div class="searchTitle" style="display:table-cell;width:100%"></div>', 5123 '<div style="display:table-cell;text-align:right;">', 5124 '<button type="button" class="btn btn-default btn-endsearch">zurück</button>', 5125 '</div>', 5126 '</div>', 5127 '<div class="search-summary">', 5128 '<div>Ihr Suchbegriff:</div>', 5129 '<input type="text" class="form-control searchfield_2">', 5130 '<div class="search-start-container">', 5131 '<button type="button" class="btn btn-default btn-startsearch">...und los!</button>', 5132 '</div>', 5133 '<span>Ihre Suchergebniss für â</span><span class="term_display"></span><span>â (</span><span class="result_count">0</span><span> Treffer):</span>', 5134 '</div>', 5135 '</div>', 5136 '<div class="searchResultList" style="height:95%;overflow:auto;-webkit-overflow-scrolling:touch;"></div>', 5137 '</div>' 5138 ]; 5139 5140 var hrefList={}, 5141 hrefPathList={}, 5142 acceptedPagesById={}, 5143 pathMappings=[]; 5144 hrefList['index.html']=true;hrefList['rathaus_abfallentsorgung.html']=true;hrefList['rathaus_buergermeister.html']=true;hrefList['rathaus_gaonline_artikelliste.html']=true;hrefList['rathaus_gemeinderat.html']=true;hrefList['rathaus_gremium_ris.html']=true;hrefList['rathaus_rathaus_bekanntmachungen.html']=true;hrefList['rathaus_oeffnungszeiten.html']=true;hrefList['rathaus_ortsrecht.html']=true;hrefList['rathaus_rathaus_ansprechpartner.html']=true;hrefList['rathaus_rathaus_ausschreibungen.html']=true;hrefList['rathaus_rathaus_formulare.html']=true;hrefList['rathaus_rathaus_rentenberatung.html']=true;hrefList['rathaus_rathaus_wegweiser.html']=true;hrefList['rathaus_schadensmeldung.html']=true;hrefList['https:\/\/durmersheim.ris\-portal.de\/web\/stellenportal\/home']=true;hrefList['rathaus_steuern.html']=true;hrefList['rathaus_termin\-tool.html']=true;hrefList['rathaus_veranstaltungskalender.html']=true;hrefList['rathaus_wahlen.html']=true;hrefList['rathaus_rufnummern.html']=true;hrefList['index.html']=true;hrefList['adventsmarkt.html']=true;hrefList['leben_agenda.html']=true;hrefList['leben_daten.html']=true;hrefList['leben_fluechtlingsbegleitung.html']=true;hrefList['leben_freibad.html']=true;hrefList['leben_feuerwehr.html']=true;hrefList['leben_campingplatz.html']=true;hrefList['leben_kleingaerten.html']=true;hrefList['leben_natur.html']=true;hrefList['leben_vermietungen.html']=true;hrefList['leben_friedhof_neu.html']=true;hrefList['leben_historisches_baeretriewergedicht.html']=true;hrefList['leben_historisches_bickesheim.html']=true;hrefList['leben_historisches_durmersheim.html']=true;hrefList['leben_historisches_durmersheim_zeittafel.html']=true;hrefList['leben_heimatmuseum.html']=true;hrefList['leben_historisches_würmersheim.html']=true;hrefList['leben_historisches_wuermersheim_zeittafel.html']=true;hrefList['leben_imagefilm.html']=true;hrefList['leben_kirche_.html']=true;hrefList['leben_landkreis.html']=true;hrefList['leben_natur.html']=true;hrefList['leben_hochwasser.html']=true;hrefList['leben_amkl.html']=true;hrefList['leben_ortsmitten.html']=true;hrefList['leben_klimaschutz.html']=true;hrefList['leben_natur.html']=true;hrefList['leben_wald.html']=true;hrefList['leben_brennholzbestellung_inaktiv.html']=true;hrefList['leben_windenergie.html']=true;hrefList['leben_pamina.html']=true;hrefList['leben_vereine.html']=true;hrefList['leben_spielplaetze.html']=true;hrefList['leben_staedtepartnerschaften.html']=true;hrefList['index.html']=true;hrefList['familien_familienbuero.html']=true;hrefList['familien_seniorenhilfe.html']=true;hrefList['familien_familien_seniorenbuero.html']=true;hrefList['familien_ferienbetreuung.html']=true;hrefList['familien_ferienspass_Anmeldung.html']=true;hrefList['familien_horte.html']=true;hrefList['familien_jugendhaus.html']=true;hrefList['familien_kindertagespflege.html']=true;hrefList['familien_kindertagesstaetten_info2.html']=true;hrefList['familien_kindergaerten_villakunterbunt.html']=true;hrefList['familien_kindergaerten_villaregenbogen.html']=true;hrefList['familien_kindergaerten_villasonnenschein.html']=true;hrefList['familien_kindergaerten_waldkindergarten.html']=true;hrefList['familien_kindergaerten_stbernhard.html']=true;hrefList[' familien_kindergaerten_stlioba.html']=true;hrefList['familien_kindergaerten_kindergartenstthomas.html']=true;hrefList['familien_mensa.html']=true;hrefList['familien_buecherei.html']=true;hrefList['familien_schule_grundschulefriedrichschule.html']=true;hrefList['familien_schule_grundschulewürmersheim.html']=true;hrefList['familien_schule_hardtschuledurmersheimauamrhein.html']=true;hrefList['familien_schule_realschuledurmersheim.html']=true;hrefList['familien_schule_wilhelm\-hausenstein\-gymnasium.html']=true;hrefList['familien_schule_volkshochschule.html']=true;hrefList['index.html']=true;hrefList['bebauungsplaene.html']=true;hrefList['bebauungsplanverfahren.html']=true;hrefList['gewerbe_rechtskr_BPläne.html']=true;hrefList['gewerbe_gemeindeentwicklungskonzept.html']=true;hrefList['gewerbe_gewerbe_bauen.html']=true;hrefList['gewerbe_gewerbebauplaetze.html']=true;hrefList['gewerbe_GAA.html']=true;hrefList['gewerbe_innenstadt.html']=true;hrefList['gewerbe_waermeplanung.html']=true;hrefList['gewerbe_auslegungen2.html']=true;hrefList['gewerbe_bauausschreibungen.html']=true;hrefList['gewerbe_öff_ausschreibung.html']=true;hrefList['gewerbe_beschränkte_ausschreibung.html']=true;hrefList['gewerbe_vergebene_ausschreibung.html']=true;hrefList['gewerbe_gewerbeverein.html']=true;hrefList['gewerbe_sanierungsgebiet.html']=true;hrefList['gewerbe_unternehmen.html']=true;hrefList['gewerbe_wohnbauplaetze.html']=true;hrefList['gewerbe_westendstrasse.html']=true; 5145 5146 5147 5148 hrefPathList['/Inhalt/Aktuelle Meldungen/news']=true; 5149 5150 hrefPathList['/Allgemein']=true; 5151 5152 hrefPathList['/Inhalt/Rathaus_Buergerservice']=true; 5153 5154 5155 5156 5157 hrefList['\/Inhalt\/Rathaus_Buergerservice\/rathaus_sterbetafel.html']=true; 5158 5159 5160 5161 var mapping; 5162 5163 mapping={ 5164 formatter: function(_page, _options) { 5165 return (function() { 5166 return { 5167 path:'rathaus_veranstaltungskalender.html?mode=search&ftsearch=' + encodeURIComponent(_options.term + '*') 5168 } 5169})(); 5170 } 5171 }; 5172 5173 5174 mapping.match = new RegExp('\/Inhalt\/Rathaus_Buergerservice\/Veranstaltungen\/.*'); 5175 5176 5177 5178 pathMappings.push(mapping); 5179 5180 mapping={ 5181 formatter: function(_page, _options) { 5182 return (function() { 5183 return { 5184 path:'leben_vereine.html?mode=search&ftsearch=' + encodeURIComponent(_options.term) 5185 } 5186})(); 5187 } 5188 }; 5189 5190 5191 mapping.match = new RegExp('\/Inhalt\/Leben_Gemeinde\/Vereine\/.*'); 5192 5193 5194 5195 pathMappings.push(mapping); 5196 5197 mapping={ 5198 formatter: function(_page, _options) { 5199 return (function() { 5200 return { 5201 path:'rathaus_rathaus_wegweiser.html?mode=search&ftsearch=' + encodeURIComponent(_options.term) 5202 } 5203})(); 5204 } 5205 }; 5206 5207 5208 mapping.match = new RegExp('\/Inhalt\/Rathaus_Buergerservice\/Wegweiser\/.*'); 5209 5210 5211 5212 pathMappings.push(mapping); 5213 5214 mapping={ 5215 formatter: function(_page, _options) { 5216 return (function() { 5217 return { 5218 path:'gewerbe_unternehmen.html?mode=search&ftsearch=' + encodeURIComponent(_options.term) 5219 } 5220})(); 5221 } 5222 }; 5223 5224 5225 mapping.match = new RegExp('\/Inhalt\/Gewerbe_Bauen\/Firmen\/.*'); 5226 5227 5228 5229 pathMappings.push(mapping); 5230 5231 mapping={ 5232 formatter: function(_page, _options) { 5233 return (function() { 5234 var fileNameParts=_page.path.split('/'); 5235 5236 return { 5237 path:'news_page.html?article=' + encodeURIComponent(fileNameParts[fileNameParts.length-1]) 5238 } 5239})(); 5240 } 5241 }; 5242 5243 5244 mapping.match = new RegExp('\/Inhalt\/Aktuelle Meldungen\/news\/.*'); 5245 5246 5247 5248 pathMappings.push(mapping); 5249 5250 5251 5252 5253 function isPagePathAccepted(path) { 5254 var fileName=path, 5255 filePath='', 5256 slashPos=path.lastIndexOf('/'); 5257 if (hrefList[path]===true) 5258 return true; 5259 if (slashPos>-1) { 5260 fileName=path.substring(slashPos+1); 5261 filePath=path.substring(0, slashPos); 5262 } 5263 if (filePath.indexOf('/')!==0) { 5264 filePath = '/' + filePath; 5265 } 5266 return (hrefList[fileName]===true || hrefPathList[filePath]===true); 5267 }; 5268 5269 var _pageReducerMap=[], 5270 now=moment(); 5271 5272 handler.init({ 5273 basecontenturl: '/vds/cms_durmersheim.nsf/web/', 5274 pagesview: '/vds/cms_durmersheim.nsf/web/../api/cms/admin/views/webcontentflatbypath', 5275 search_container_tpl: searchCntTpl.join('\n'), 5276 initSearch:function(searchDef) { 5277 acceptedPagesById={}; 5278 _pageReducerMap={}; 5279 5280 }, 5281 mapPages:function(page, idx, allPages, searchDef) { 5282 if (pathMappings && pathMappings.length>0) { 5283 var pathMapping; 5284 5285 for (var i=0;i<pathMappings.length;i++) { 5286 pathMapping = pathMappings[i]; 5287 5288 if (pathMapping.match == page.path) { 5289 acceptedPagesById[page.id]=true; 5290 5291 return _.extend({}, page, pathMapping.formatter(page, searchDef)); 5292 } 5293 else if (pathMapping.match.test && pathMapping.match.test(page.path)) { 5294 acceptedPagesById[page.id]=true; 5295 5296 return _.extend({}, page, pathMapping.formatter(page, searchDef)); 5297 } 5298 } 5299 } 5300 return page; 5301 }, 5302 filterPages:function(page) { 5303 if (!_pageReducerMap[page.path]) { 5304 var isAccepted=acceptedPagesById[page.id]===true || isPagePathAccepted(page.path); 5305 5306 if (isAccepted) { 5307 if (page.activeuntil) { 5308 var m=moment(page.activeuntil, 'YYYY-MM-DD'); 5309 5310 if (m.isValid() && m.isAfter(now)) { 5311 _pageReducerMap[page.path]=true; 5312 } 5313 else { 5314 return false;
5315 } 5316 } 5317 else { 5318 _pageReducerMap[page.path]=true; 5319 } 5320 } 5321 } 5322 return isAccepted; 5323 }, 5324 processPagePath:function(path, embedded) { 5325 if (embedded) { 5326 return path+((path.indexOf('?')===-1) ? '?' : '&') + 'embedded=true'; 5327 } 5328 else { 5329 return path; 5330 } 5331 }, 5332 selectors: { 5333 search_input: '.searchfield input', 5334 content_container: '.maincontent-col .content-container', 5335 page_content: '.maincontent-col .content-container', 5336 search_btn_start: '#sizing-addon-search', 5337 search_btn_start_2: '.btn-startsearch', 5338 search_btn_stop: '.btn-endsearch', 5339 search_results: '.searchResultList', 5340 search_title: '.searchTitle', 5341 search_input_2: '.searchfield_2', 5342 search_term_display: '.term_display', 5343 search_result_count: '.result_count' 5344 } 5345 }); 5346 }); 5347 5348 require(['megamenu', 'fancytree', 'throttledebounce'], function(megamenu, fancytree, throttledebounce) { 5349 $('#topnavbar-collapse-btn').keydown(function(event) { 5350 if (event.which == 32) { 5351 $('#topnavbar-collapse').collapse('toggle'); 5352 event.preventDefault(); 5353 } 5354 }); 5355 5356 $('#topnavbar-collapse').on('show.bs.collapse', function () { 5357 $('#topnavbar-collapse-btn').children('.toggle-collapse').show(); 5358 $('#topnavbar-collapse-btn').children('.toggle-expand').hide(); 5359 5360 function revealElement(el) { 5361 var elOffset = el.offset(); 5362 var $window = $(window); 5363 var windowScrollBottom = $window.scrollTop() + $window.height(); 5364 var scrollToPos = -1; 5365 if (elOffset.top < $window.scrollTop()) // element is hidden in the top 5366 scrollToPos = elOffset.top; 5367 else if (elOffset.top + el.height() > windowScrollBottom) // element is hidden in the bottom 5368 scrollToPos = $window.scrollTop() + (elOffset.top + el.height() - windowScrollBottom); 5369 if (scrollToPos !== -1) { 5370 window.scrollTo(elOffset.x, scrollToPos); 5371 } 5372 } 5373 5374 $('#mininavtree').fancytree({ 5375 extensions: ['wide'], 5376 clickFolderMode: 0, 5377 toggleEffect: null, 5378 click: function(event, data){ 5379 var node = data.node; 5380 5381 node.setActive(true); 5382 5383 if (data.targetType!='expander') { 5384 node.toggleExpanded(); 5385 } 5386 }, 5387 activate: function(event, data){ 5388 revealElement($(data.node.li)); 5389 }, 5390 keydown: function(event, data) { 5391 var node = data.node; 5392 5393 if (event.which == 13) { 5394 $(node.li).find('a').each(function(idx,item) { 5395 if (item.href) { 5396 window.location.href=item.href; 5397 return false; 5398 } 5399 }); 5400 } 5401 } 5402 }); 5403 $('#topnavbar-mini').show(); 5404 $('#topnavbar-mini').focus(); 5405 }); 5406 $('#topnavbar-collapse').on('hide.bs.collapse', function () { 5407 $('#topnavbar-collapse-btn').children('.toggle-collapse').hide(); 5408 $('#topnavbar-collapse-btn').children('.toggle-expand').show(); 5409 5410 $('#topnavbar-mini').hide(); 5411 }); 5412 5413 $('nav.navbar-nav.mega').accessibleMegaMenu({ 5414 /* prefix for generated unique id attributes, which are required 5415 to indicate aria-owns, aria-controls and aria-labelledby */ 5416 uuidPrefix: 'accessible-megamenu', 5417 5418 /* css class used to define the megamenu styling */ 5419 menuClass: 'nav-menu', 5420 5421 /* css class for a top-level navigation item in the megamenu */ 5422 topNavItemClass: 'nav-item', 5423 5424 /* css class for a megamenu panel */ 5425 panelClass: 'sub-nav', 5426 5427 /* css class for a group of items within a megamenu panel */ 5428 panelGroupClass: 'sub-nav-group', 5429 5430 /* css class for the hover state */ 5431 hoverClass: 'hover', 5432 5433 /* css class for the focus state */ 5434 focusClass: 'focus', 5435 5436 /* css class for the open state */ 5437 openClass: 'open' 5438 }); 5439 5440 $('nav.navbar-nav.mega .nav-menu').removeClass('fade-in');// immediately show menu 5441 5442 $('#topnavbar-collapse-btn').removeClass('loading'); 5443 5444 waitForLayout(); 5445 $(window).resize($.debounce(500, containSubNavs)); 5446 5447 }); 5448 5449 // measure subnavs, and see if align-right is necessary 5450 function waitForLayout() { 5451 5452 if ($('.body-loader').is(':visible')) { 5453 setTimeout(waitForLayout, 100); 5454 } 5455 else { 5456 containSubNavs(); 5457 } 5458 5459 } 5460 5461 function containSubNavs() { 5462 var $subNavs=$('nav.navbar-nav.mega .sub-nav'), 5463 subNavCount=$subNavs.length; 5464 5465 $subNavs.each(function() { 5466 var $this=$(this), 5467 viewPortWidth=$(window).width() 5468 itemWidth=$this.width()+30; 5469 5470 if ($this.offset().left + itemWidth > viewPortWidth) { 5471 $this.addClass('align-right'); 5472 5473 // eventually take it back 5474 if ($this.offset().left < 0) { 5475 $this.removeClass('align-right'); 5476 } 5477 } 5478 else if ($this.is('.align-right'))Â { 5479 // verify current right-alignment 5480 $this.removeClass('align-right'); 5481 5482 if ($this.offset().left + itemWidth > viewPortWidth) { 5483 $this.addClass('align-right'); 5484 } 5485 } 5486 }); 5487 } 5488 5489 // handle showing/hiding and marking of nav-items 5490 // children are assigned by css-classes being formed of the "data-nav-id"-property of a parent 5491 // additionally the group-nav-uls have levels to determine how deep an item is nested (1-3) 5492 function openNavItem(item) { 5493 var $item=$(item),
5494 navLevel=$item.parents('ul').data('navlevel'), 5495 // finds all open items nested at the same or a deeper level 5496 $formerItem=$('.sub-nav-group > li > .sub-nav-item.open').filter(function(idx, item) { 5497 return $(item).parents('ul').data('navlevel')>=navLevel; 5498 }), 5499 $container=$item.parents('.sub-nav'), 5500 navId,i; 5501 5502 // make sure the sub-nav is wide enough for level 5503 // and that the sub-nav-groups are visible 5504 for (i=navLevel;i>0;i--) { 5505 $container.addClass('col-'+i); 5506 5507 $container.find('.sub-nav-group[data-navLevel="'+i + '"]').css('display', 'table-cell'); 5508 } 5509 5510 5511 // close these formerly open items 5512 $formerItem.each(function(idx, item) { 5513 var $item=$(item), 5514 navLevel=$item.parents('ul').data('navlevel'), 5515 navId=$item.data('navid'); 5516 5517 $item.removeClass('open'); 5518 5519 if (navId) { 5520 // hide the child-items 5521 var $parent=$('.sub-nav-group[data-navLevel="'+(navLevel+1) + '"] .sub-nav-item.' + navId).parent(); 5522 5523 $parent.attr('aria-hidden', true); 5524 $parent.hide(); 5525 } 5526 }); 5527 5528 // open the current item 5529 $item.addClass('open'); 5530 navId=$item.data('navid'); 5531 5532 if (navId) { 5533 // show the child-items 5534 var $children=$('.sub-nav-group[data-navLevel="'+(navLevel+1) + '"] .sub-nav-item.' + n
5534avId); 5535 5536 if ($children.length>0) { 5537 // if there are any children in the next level, reveal them: 5538 // make sure the sub-nav is wide enough for level 5539 // and that the sub-nav-groups are visible 5540 $container.addClass('col-'+(navLevel+1)); 5541 var $parent=$container.find('.sub-nav-group[data-navLevel="'+ (navLevel+1) + '"]').css('display', 'table-cell'); 5542 5543 $parent.attr('aria-hidden', false); 5544 $children.parent().show(); 5545 } 5546 } 5547 } 5548 5549 // open the nav-item currently hovering on 5550 $('.sub-nav-item a').hover(function(e) { 5551 openNavItem($(e.target).parents('.sub-nav-item')); 5552 }); 5553 // open the nav-item currently focusing 5554 $('.sub-nav-item a').focus(function(e) { 5555 openNavItem($(e.target).parents('.sub-nav-item')); 5556 }); 5557 // open the nav-item on click, if the item has an empty href (for touch devices) 5558 $('.sub-nav-item a[href="#"]').click(function(e) { 5559 e.preventDefault(); 5560 5561 openNavItem($(e.target).parents('.sub-nav-item')); 5562 }); 5563 </script>
5563 5564 5565 5566
5567<script> 5568 require(['underscore','domReady','jquery', 'bootstrapwizard', 'jqbootstrapvalidation_ext'], function(_, domReady, jquery, bootstrapwizard, validations) { 5569 function formatSelector(selector) { 5570 if (selector && selector.length>0) { 5571 if (selector.indexOf('.')!==0 && selector.indexOf('#')!==0) { 5572 return '#'+selector; 5573 } 5574 return selector; 5575 } 5576 }; 5577 5578 function sequenceFn(firstFn, secondFn) { 5579 return function() { 5580 if (firstFn.apply(this, arguments)!==false) { 5581 return secondFn.apply(this, arguments); 5582 } 5583 return false; 5584 }; 5585 }; 5586 5587 var cfg= 5588(function() { 5589 var __queryParams=undefined, 5590 __ASQ,__loginutils; 5591 5592 return { 5593 beforeRedirect:function(data,redirectUrl,postData,$wizard) { 5594 if (redirectUrl && redirectUrl.length>0) { 5595 // let the wizard do a redirect 5596 return true; 5597 } 5598 else { 5599 var msg='Ihre Mitteilung ist bei uns eingegangen!'; 5600 5601 require(['bootbox'], function(bootbox) { 5602 bootbox.alert(msg); 5603 }, function (err) { 5604 alert(msg); 5605 }); 5606 5607 return false; 5608 } 5609 } 5610 }; 5611})() 5612; 5613 5614 5615 5616 5617 5618 5619 5620 if (!cfg['previousSelector']) { 5621 cfg['previousSelector']='#durmersheim_contact_wizard_actions_prev'; 5622 } 5623 if (!cfg['nextSelector']) { 5624 cfg['nextSelector']='#durmersheim_contact_wizard_actions_next'; 5625 } 5626 5627 5628 // install method to scroll to top on tab-change 5629 var scrollSelector=undefined; 5630 5631 5632 if (!scrollSelector) { 5633 scrollSelector='html, body'; 5634 } 5635 5636 5637 if (scrollSelector) { 5638 var scrollToTopFnc=function(tab) { 5639 // scrolling seems not a good solution - rather focus the first input 5640 var $page=$(tab.children('[data-toggle="tab"]').attr('href')), 5641 $fields=$page.find('input,select,textarea'), 5642 $field; 5643 5644 $fields.each(function(idx, field) { 5645 $field=$(field); 5646 5647 if ($field.is(':visible')) { 5648 $field.focus(); 5649 return false; 5650 } 5651 }); 5652 // $(scrollSelector).scrollTop(0); 5653 }; 5654 if (cfg['onTabShow']) { 5655 scrollToTopFnc=sequenceFn(cfg['onTabShow'], scrollToTopFnc); 5656 } 5657 5658 cfg['onTabShow']=scrollToTopFnc; 5659 } 5660 5661 // install progress selector if configured 5662 5663 var progressSelector=undefined; 5664 5665 5666 ; 5667 5668 if (progressSelector) { 5669 var progressFnc=function(progressSelector) { 5670 return function(tab, navigation, index) { 5671 var $total = navigation.find('li').length; 5672 var $current = index+1; 5673 var $percent = ($current/$total) * 100; 5674 5675 $(progressSelector).find('.progress-bar').css({width:$percent+'%'}); 5676 }; 5677 }(progressSelector); 5678 5679 if (cfg['onTabShow']) { 5680 progressFnc=sequenceFn(cfg['onTabShow'], progressFnc); 5681 } 5682 5683 cfg['onTabShow']=progressFnc; 5684 } 5685 5686 function showFieldError(field, errMsg) { 5687 var $field=$(field); 5688 $ctrlGroup=$field.closest('.control-group,.form-group'); 5689 $controls=$field.closest('.controls'); 5690 $helpBlock = $controls.find('.help-block').first(); 5691 5692 if (!$controls.length && !$helpBlock.length) { 5693 // fallback to standard help-block lookup 5694 $helpBlock = $ctrlGroup.find(".help-block").first(); 5695 } 5696 5697 if (!$field.is(':disabled')) { 5698 $ctrlGroup.removeClass('has-warning has-success').addClass('has-error'); 5699 5700 if ($helpBlock.length>0) { 5701 $helpBlock.html('<div role="alert">' + errMsg + '</div>'); 5702 } 5703 } 5704 }; 5705 5706 var validationFnc=function(tab, navigation, index) { 5707 var $page=$(tab.children('[data-toggle="tab"]').attr('href')), 5708 $fields=$page.find('input,select,textarea').not('[type=submit]'), 5709 $field=undefined, 5710 $ctrlGroup=undefined, 5711 $controls=undefined, 5712 $helpBlock=undefined, 5713 fieldName = undefined, 5714 hasErrors=false; 5715 5716 var errors = $fields.jqBootstrapValidation("collectErrors"); 5717 5718 $fields.each(function(idx, field) { 5719 $field=$(field); 5720 fieldName=$field.attr('name'); 5721 $ctrlGroup=$field.closest('.control-group,.form-group'); 5722 $controls=$field.closest('.controls'); 5723 $helpBlock = $controls.find('.help-block').first(); 5724 5725 if (!$controls.length && !$helpBlock.length) { 5726 // fallback to standard help-block lookup 5727 $helpBlock = $ctrlGroup.find(".help-block").first(); 5728 } 5729 5730 if (!$field.is(':disabled') && errors.hasOwnProperty(fieldName) && errors[fieldName].length>0) { 5731 $ctrlGroup.removeClass('has-warning has-success').addClass('has-error'); 5732 5733 if ($helpBlock.length>0) { 5734 $helpBlock.html('<div role="alert">
5734' + errors[fieldName].join('<br>') + '</div>'); 5735 } 5736 hasErrors=true; 5737 } 5738 else { 5739 $ctrlGroup.removeClass('has-warning has-error').addClass('has-success'); 5740 5741 if ($helpBlock.length>0) { 5742 $helpBlock.html($helpBlock.data("original-contents")); 5743 } 5744 } 5745 }); 5746 5747 return hasErrors!==true; 5748 }; 5749 5750 if (cfg['onNext']) { 5751 validationFnc=sequenceFn(cfg['onNext'], validationFnc); 5752 } 5753 5754 5755 var submitFnc=function(page, navigation, index) { 5756 var pages = navigation.find('li').length; 5757 5758 if (pages===index) { 5759 // validation of final page succeeded -> perform submit, if configured 5760 5761 var submitUrl='/api/notifications/sendsupportmail/legacy', 5762 reportErrorFn=function(msg) { 5763 msg='Beim Senden Ihrer Daten ist ein Fehler aufgetreten:<br><br>'+msg; 5764 5765 require(['bootbox'], function(bootbox) { 5766 bootbox.alert(msg); 5767 }, function (err) { 5768 if (success) { 5769 alert(msg); 5770 } 5771 }); 5772 }; 5773 5774 if (submitUrl.length>0) { 5775 var $allForms=$('#durmersheim_contact_wizard form'), 5776 $form, 5777 $field, 5778 fieldId, 5779 formValues, 5780 i; 5781 values=[]; 5782 5783 $allForms.each(function(idx, form) { 5784 $form=$(form); 5785 5786 // read all form-values 5787 formValues=$form.serializeArray(); 5788 // and lookup all labels (note that for this to work, the names should be unique within the form) 5789 for (i=0;i<formValues.length;i++) { 5790 $form.find('[name="' + formValues[i].name+'"]').filter(function() { 5791 var $this=$(this); 5792 5793 if (this.id) { 5794 // identify the correct radio control or checkbox 5795 if (($this.attr('type')==='radio' || $this.attr('type')==='checkbox') 5796 && $this.attr('value') && $this.val()!==formValues[i].value) { 5797 return false; 5798 } 5799 5800 return true; 5801 } 5802 }).each(function(idx, field) { 5803 $field=$(field); 5804 5805 formValues[i].type=$field.attr('type'); 5806 formValues[i].displayname=$field.closest('.form-group').find('label[for="' + field.id + '"]').text(); 5807 }); 5808 } 5809 5810 values.push.apply(values, formValues); 5811 }); 5812 5813 var postData={ 5814 formid: 'durmersheim_contact_wizard', 5815 data: values 5816 }; 5817 function performPost() { 5818 $.ajax({ 5819 url: '/vds/cms_durmersheim.nsf' + submitUrl, 5820 data: JSON.stringify(postData), 5821 contentType: 'text/plain; charset=UTF-8', 5822 type: 'POST' 5823 }) 5824 .done(function(data, textStatus, jqXHR) { 5825 if (data && data.success===true) { 5826 var redirectUrl = data.redirect || ''; 5827 5828 function performRedirect() { 5829 if (redirectUrl && redirectUrl.length>0) { 5830 window.location.href=redirectUrl; 5831 } 5832 else if (data.msg) { 5833 // do something with the message 5834 } 5835 } 5836 5837 var beforeRedirectResult=!cfg['beforeRedirect'] ? true:cfg['beforeRedirect'](data, redirectUrl, postData, $('#durmersheim_contact_wizard')); 5838 if (beforeRedirectResult) { 5839 if (beforeRedirectResult===true) { 5840 performRedirect(); 5841 } 5842 else { 5843 require(['asynquence'], function(ASQ) { 5844 if (ASQ.isSequence(beforeRedirectResult)) { 5845 beforeRedirectResult 5846 .then(function(done) { 5847 performRedirect(); 5848 }) 5849 .or(function(err) { 5850 var msg=window.errorToString(err) || 'Abbruch'; 5851 5852 reportErrorFn(msg); 5853 }); 5854 } 5855 else { 5856 // don't know what to make of it 5857 performRedirect(); 5858 } 5859 }); 5860 } 5861 } 5862 else if (beforeRedirectResult!==false) { 5863 performRedirect(); 5864 } 5865 } 5866 else { 5867 var msg=window.errorToString(data) || 'Unbekannter Fehler (' + textStatus + ')'; 5868 5869 var beforeReportErrorResult=!cfg['beforeReportError'] ? true:cfg['beforeReportError'](postData,submitUrl,$allForms,$('#durmersheim_contact_wizard'),msg,jqXHR); 5870 if (beforeReportErrorResult) { 5871 reportErrorFn(msg); 5872 } 5873 } 5874 }) 5875 .fail(function(jqXHR, textStatus, err) { 5876 5877 function showCaptchaFieldError(msg) { 5878 var fieldFound=false; 5879 var captchaCls='cpt'; 5880 5881 $('#durmersheim_contact_wizard form').each(function() { 5882 $(this).find('input,select,textarea').each(function() { 5883 var $field=$(this); 5884 5885 if ($field.hasClass(captchaCls)) { 5886 // this is a captcha field 5887 showFieldError($field, msg); 5888 5889 fieldFound=true; 5890 } 5891 }); 5892 }); 5893 5894 return fieldFound; 5895 } 5896 5897 var msg=window.errorToString(jqXHR || err) || 'Unbekannter Fehler (' + textStatus + ')'; 5898 5899 if (jqXHR && jqXHR.responseJSON && jqXHR.responseJSON.errorid) { 5900 if (jqXHR.responseJSON.errorid==='captcha-invalid') { 5901 msg = 'Ein Wert wurde nicht akzeptiert'; 5902 5903 showCaptchaFieldError('Aufgabe nicht korrekt gelöst'); 5904 } 5905 else if (jqXHR.responseJSON.errorid==='captcha-missing') { 5906 if (showCaptchaFieldError('Aufgabe nicht gelöst')) { 5907 msg = 'Ein Wert fehlt'; 5908 } 5909 } 5910 } 5911 5912 var beforeReportErrorResult=!cfg['beforeReportError'] ? true:cfg['beforeReportError'](postData,submitUrl,$allForms,$('#durmersheim_contact_wizard'),msg,jqXHR); 5913 if (beforeReportErrorResult) { 5914 reportErrorFn(msg); 5915 } 5916 }); 5917 }; 5918 5919 var beforeSubmitResult=!cfg['beforeSubmit'] ? true:cfg['beforeSubmit'](postData,submitUrl,$allForms,$('#durmersheim_contact_wizard')); 5920 if (beforeSubmitResult) { 5921 if (beforeSubmitResult===true) { 5922 performPost(); 5923 } 5924 else { 5925 require(['asynquence'], function(ASQ) { 5926 if (ASQ.isSequence(beforeSubmitResult)) { 5927 beforeSubmitResult 5928 .then(function(done, data) { 5929 if (data && data!==true) { 5930 postData=data; 5931 } 5932 performPost(); 5933 }) 5934 .or(function(err) { 5935 var msg=window.errorToString(err) || 'Abbruch'; 5936 5937 reportErrorFn(msg); 5938 }); 5939 } 5940 else {
5941 // don't know what to make of it 5942 performPost(); 5943 } 5944 }); 5945 } 5946 } 5947 else if (beforeSubmitResult!==false) { 5948 performPost(); 5949 } 5950 } 5951 } 5952 }; 5953 5954 // register submit, but debounce 5955 validationFnc=sequenceFn(validationFnc, _.debounce(function() { 5956 submitFnc.apply(this, arguments); 5957 }, 500)); 5958 5959 cfg['onNext']=validationFnc; 5960 5961 var submitSelector=undefined; 5962 5963 5964 if (!submitSelector) { 5965 submitSelector='#durmersheim_contact_wizard_actions_submit'; 5966 } 5967 ; 5968 5969 if (submitSelector) { 5970 var submitHandler = function() { 5971 // delegate to next-button 5972 var $nextBtn=cfg['nextSelector'] ? $(cfg['nextSelector']) : undefined; 5973 5974 if ($nextBtn && $nextBtn.length>0) { 5975 $nextBtn.click(); 5976 } 5977 }; 5978 var submitText='Abschicken <i class="fa fa-angle-double-right"></i>'; 5979 5980 5981 submitText='Abschicken' + ' <i class="fa fa-angle-double-right"></i>'; 5982 5983 5984 var bindAndShowSubmitBtn=function(tab, navigation, index) { 5985 var steps = navigation.find('li').length, 5986 $submitBtn = $(submitSelector), 5987 $nextBtn = cfg['nextSelector'] ? $(cfg['nextSelector']) : undefined, 5988 $prevBtn = cfg['previousSelector'] ? $(cfg['previousSelector']) : undefined, 5989 $prevBtnSpacer = $('#durmersheim_contact_wizard_actions_prev_spacer'), 5990 $cancelBtn = $('#durmersheim_contact_wizard_actions_cancel'), 5991 $cancelBtnSpacer = $('#durmersheim_contact_wizard_actions_cancel_spacer'), 5992 $progress = $('#durmersheim_contact_wizard_progress'); 5993 5994 if ($progress && steps>
59941) { 5995 $progress.show(); 5996 } 5997 5998 $cancelBtnSpacer.parent().show(); 5999 /*if ($cancelBtn) { 6000 $cancelBtn.parent().show(); 6001 $cancelBtnSpacer.parent().hide(); 6002 } 6003 else { 6004 $cancelBtnSpacer.parent().show(); 6005 } 6006 */ 6007 6008 if ($prevBtn) { 6009 if (index===0) { 6010 $prevBtn.parent().hide(); 6011 $prevBtnSpacer.parent().show(); 6012 } 6013 else { 6014 $prevBtn.parent().show(); 6015 $prevBtnSpacer.parent().hide(); 6016 } 6017 } 6018 else { 6019 $prevBtnSpacer.parent().show(); 6020 } 6021 6022 if (index===steps-1) { 6023 $submitBtn.unbind('click', submitHandler); 6024 $submitBtn.on('click', submitHandler); 6025 6026 $submitBtn.html('<b>'+submitText+'</b>'); 6027 $submitBtn.parent().show(); 6028 6029 if ($nextBtn) { 6030 $nextBtn.parent().hide(); 6031 } 6032 } 6033 else { 6034 if ($nextBtn) { 6035 $nextBtn.html('Weiter zu <b>Schritt ' + (index+2) + '</b> <i class=\"fa fa-angle-double-right\"></i>'); 6036 $nextBtn.parent().show(); 6037 } 6038 6039 $submitBtn.unbind('click', submitHandler); 6040 $submitBtn.parent().hide(); 6041 } 6042 }; 6043 6044 if (cfg['onTabShow']) { 6045 bindAndShowSubmitBtn=sequenceFn(cfg['onTabShow'], bindAndShowSubmitBtn); 6046 } 6047 cfg['onTabShow']=bindAndShowSubmitBtn; 6048 } 6049 6050 function setupWizardFnc() { 6051 var $wizard=$('#durmersheim_contact_wizard'); 6052 6053 return $wizard.bootstrapWizard(cfg); 6054 }; 6055 6056 function valueExists(value, validator) { 6057 if ((value || value.length) && !validator.negative) { 6058 return true; 6059 } 6060 return false; 6061 } 6062 function setupValidationFnc() { 6063 var defaultValidatorTypes={ 6064 regex: { message: 'Ungültiges Format.' }, 6065 number: { message: 'Zahl erwartet.' }, 6066 requiredifset: { 6067 name: 'requiredifset', 6068 includeEmpty: true, 6069 init: function ($this, name) { 6070 var sourceElementName = $this.data("validation" + name + "Source"), 6071 sourceElementValue = $this.data("validation" + name + "SourceValue"); 6072 6073 var result = {}; 6074 6075 if (sourceElementValue) { 6076 result.sourceElementValue=sourceElementValue; 6077 } 6078 // locate the source-field, if any 6079 if (sourceElementName) { 6080 var $form = $this.parents("form").first(); 6081 var $element = sourceElementName.indexOf('#')===0 ? $(sourceElementName).first() : $form.find("[name=\"" + sourceElementName + "\"]").first(); 6082 $element.bind("validation.validation", function () { 6083 $this.trigger("revalidate.validation", {submitting: true}); 6084 }); 6085 6086 if ($element.length === 0) { 6087 $.error("Can't find field '" + sourceElementName + "' switching the required-state for '" + $this.attr("name") + "' in '" + name + "' validator"); 6088 } 6089 else { 6090 result.sourceElement = $element; 6091 } 6092 } 6093 6094 result.message = this.message; 6095 if ($this.data("validation" + name + "Message")) { 6096 result.message = $this.data("validation" + name + "Message"); 6097 } 6098 return result; 6099 }, 6100 validate: function ($this, value, validator) { 6101 // verify current value only, if the source-element has a value 6102 if (validator.sourceElement) { 6103 var sourceVal = (!(validator.sourceElement.is(':radio') || validator.sourceElement.is(':checkbox')) || validator.sourceElement.is(':checked')) ? validator.sourceElement.val() : ''; 6104 6105 if (valueExists(sourceVal, validator) && (!validator.sourceElementValue || validator.sourceElementValue==sourceVal) ) { 6106 return !valueExists(value, validator); 6107 } 6108 else { 6109 return false; 6110 } 6111 } 6112 else { 6113 console.log('Error in requiredifset validation: missing source-element'); 6114 6115 return false; 6116 } 6117 }, 6118 message: 'Dies ist ein Pflichtfeld' 6119 } 6120 ,requiredifnotset: { 6121 name: 'requiredifnotset', 6122 includeEmpty: true, 6123 init: function ($this, name) { 6124 var sourceElementName = $this.data("validation" + name + "Source"); 6125 6126 var result = {}; 6127 6128 // locate the source-field, if any 6129 if (sourceElementName) { 6130 var $form = $this.parents("form").first(); 6131 var $element = sourceElementName.indexOf('#')===0 ? $(sourceElementName).first() : $form.find("[name=\"" + sourceElementName + "\"]").first(); 6132 $element.bind("validation.validation", function () { 6133 // $this.trigger("revalidate.validation", {submitting: true}); 6134 }); 6135 6136 if ($element.length === 0) { 6137 $.error("Can't find field '" + sourceElementName + "' switching the required-state for '" + $this.attr("name") + "' in '" + name + "' validator"); 6138 } 6139 else { 6140 result.sourceElement = $element; 6141 } 6142 } 6143 6144 result.message = this.message; 6145 if ($this.data("validation" + name + "Message")) { 6146 result.message = $this.data("validation" + name + "Message"); 6147 } 6148 return result; 6149 }, 6150 validate: function ($this, value, validator) { 6151 // verify current value only, if the source-element has no value 6152 if (validator.sourceElement) { 6153 var sourceVal = (!(validator.sourceElement.is(':radio') || validator.sourceElement.is(':checkbox')) || validator.sourceElement.is(':checked')) ? validator.sourceElement.val() : ''; 6154 6155 if (!valueExists(sourceVal, validator)) { 6156 return !valueExists(value, validator); 6157 } 6158 else { 6159 return false;
6160 } 6161 } 6162 else { 6163 console.log('Error in requiredifnotset validation: missing source-element'); 6164 6165 return false; 6166 } 6167 }, 6168 message: 'Dies ist ein Pflichtfeld' 6169 } 6170 }; 6171 6172 var customValidatorTypes=!cfg['customValidators'] ? {} : cfg['customValidators']($('#durmersheim_contact_wizard')); 6173 6174 $.jqBootstrapValidation("override", { 6175 builtInValidators: { 6176 number: { message: 'Zahl erwartet.' }, 6177 passwordagain: { message: 'Passwörter stimmen nicht überein.' }, 6178 integer: { message: 'Keine Dezimalstellen erlaubt.' }, 6179 positive: { message: 'Positiver Wert erwartet.' }, 6180 positivenumber: { message: 'Positiver Wert erwartet.' }, 6181 negative: { message: 'Negativer Wert erwartet.' }, 6182 negativenumber: { message: 'Negativer Wert erwartet.' }, 6183 required: { message: 'Dies ist ein Pflichtfeld.' }, 6184 checkone: { message: 'Wählen Sie mindestens eine Option aus.' }, 6185 pattern: { message: 'Ungültiges Format.' }, 6186 regex: { message: 'Ungültiges Format.' } 6187 }, 6188 validatorTypes: _.extend(customValidatorTypes, defaultValidatorTypes) 6189 }); 6190 6191 var $validator=$('#durmersheim_contact_wizard input,select,textarea').not('[type=submit]') 6192 6193 $validator.jqBootstrapValidation(); 6194 6195 return $validator; 6196 }; 6197 6198 function showWizardFnc() { 6199 var $wizard=$('#durmersheim_contact_wizard'); 6200 6201 if ($wizard.hasClass('loading')) { 6202 $wizard.siblings('.wizard-load-mask').remove(); 6203 $wizard.removeClass('loading'); 6204 } 6205 $wizard.show(); 6206 }; 6207 6208 function setup() { 6209 setupWizardFnc(); 6210 setupValidationFnc(); 6211 6212 showWizardFnc(); 6213 }; 6214 6215 if (cfg['onInitialized']) { 6216 if (!cfg['onInitialized']({ 6217 setupWizard: setupWizardFnc, 6218 setupValidator: setupValidationFnc, 6219 showPage: function(id) { 6220 var $tab=$('#durmersheim_contact_wizard').find('.nav li a[href="' + formatSelector(id) + '"]'); 6221 6222 if ($tab.attr('data-toggle')==='tab') { 6223 $tab.tab('show'); 6224 } 6225 }, 6226 showWizard: showWizardFnc 6227 })) { 6228 setup(); 6229 } 6230 } 6231 else { 6232 setup(); 6233 } 6234 }); 6235</script>
6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265<style type="text/css"> 6266 .animated-shown { 6267 -moz-animation: cssShowAnimation 3s forwards; 6268 -webkit-animation: cssShowAnimation 3s forwards; 6269 animation: cssShowAnimation 3s forwards; 6270} 6271@keyframes cssShowAnimation { 6272 0% {opacity: 0;visibility:hidden;} 6273 70% {opacity: 0;visibility:hidden;} 6274 100% {opacity: 1;visibility:visible;} 6275} 6276@-webkit-keyframes cssShowAnimation { 6277 0% {opacity: 0;visibility:hidden;} 6278 70% {opacity: 0;visibility:hidden;} 6279 100% {opacity: 1;visibility:visible;} 6280} 6281 6282.cookie-banner { 6283 position: fixed; 6284 bottom: 0; 6285 left: 0; 6286 right: 0; 6287 min-height: 150px; 6288 overflow: hidden; 6289 border-top-left-radius: 8px; 6290 border-top-right-radius: 8px; 6291 background-color: rgba(0,0,0,0.75); 6292 z-index: 10000; 6293} 6294 6295.cookie-banner .info { 6296 padding-left: 16px; 6297 padding-right: 16px; 6298 color: #f5f5f5; 6299} 6300.cookie-banner .info * { 6301 color: #f5f5f5; 6302} 6303 6304.cookie-banner .info .msg { 6305 max-height: 33vh; 6306 overflow-x: hidden; 6307 overflow-y: auto; 6308} 6309 6310.tab-pane { 6311 margin: 16px; 6312 border-radius: 4px; 6313 6314 display: flex; 6315 flex-direction: column; 6316} 6317 6318.tab-pane .tab-bar { 6319 display: flex; 6320 flex-direction: row; 6321} 6322 6323.tab-pane .tab-bar .action-bar { 6324 align-self: center; 6325 margin-left: auto; 6326 justify-self: flex-end; 6327} 6328 6329.tab-pane .tab-bar .action-bar .action { 6330 background-color: #18a300; 6331 padding: 4px 8px; 6332 color: #f5f5f5; 6333 border-radius: 4px; 6334 min-width: 80px; 6335 cursor: pointer; 6336} 6337 6338.tab-pane .tab-bar .action-bar .action.cancel { 6339 min-width: initial; 6340 background-color: initial; 6341} 6342 6343.tab-pane .tab-title { 6344 background:#d9d9d9; 6345 display:inline-block; 6346 margin: 0;
6347 margin-top: 1px; 6348 border-top-left-radius: 8px; 6349 border-top-right-radius: 8px; 6350 padding:8px 16px; 6351 color:#777; 6352 cursor:pointer; 6353 font-weight:normal; 6354 transition:background .3s; 6355 -webkit-transition:background .3s; 6356} 6357 6358.tab-pane .tab-title:focus { 6359 text-decoration: underline; 6360 outline: none; 6361} 6362 6363.tab-pane .tab-title .tab-title-text { 6364 margin-left: 5px; 6365} 6366 6367.tab-pane .tab-title:hover{ 6368 background:#d9d9d9; 6369 color:#707070; 6370} 6371 6372.tab-pane input[type="radio"]{ 6373 display:none; 6374} 6375 6376.tab-pane .tab-content { 6377 display: flex; 6378 flex-direction: column; 6379 6380 max-height: 33vh; 6381 overflow-y: auto; 6382 overflow-x: hidden; 6383} 6384 6385.tab-pane .tab { 6386 /*visibility: hidden; 6387 opacity: 0; 6388 transition:opacity 1s; 6389 -webkit-transition:opacity 1s;*/ 6390 display: none; 6391 order: 1; 6392 6393 background:#e9e9e9; 6394 padding:12px; 6395 color:#444; 6396} 6397 6398.tab-content .tab .detail { 6399 display: block; 6400 padding-top: 8px; 6401 padding-bottom: 16px; 6402} 6403 6404.tab-content table.cookie-list { 6405 width: 100%; 6406} 6407 6408.tab-content table.cookie-list tr.cookie-item td.name { 6409 white-space: nowrap; 6410} 6411 6412.tab-content table .description { 6413 display: block; 6414 font-size: 75%; 6415} 6416 6417/* Tooltip container */ 6418.tab-content .tooltip-container { 6419 position: relative; 6420 display: inline-block; 6421 border-bottom: 1px dotted black; 6422} 6423 6424/* Tooltip text */ 6425.tab-content .tooltip-container .tooltip { 6426 visibility: hidden; 6427 min-width: 200px; 6428 max-width: 50vw; 6429 text-align: center; 6430 padding: 5px 0; 6431 color: #f5f5f5; 6432 background-color: rgba(0,0,0,0.75); 6433 border-radius: 4px; 6434 6435 /* Position the tooltip text */ 6436 position: absolute; 6437 z-index: 1; 6438 bottom: 125%; 6439 left: 50%; 6440 transform: translate(-50%, 0); 6441 6442 /* Fade in tooltip */ 6443 opacity: 0; 6444 transition: opacity 0.3s; 6445} 6446 6447/* Tooltip arrow */ 6448.tab-content .tooltip-container .tooltip::after { 6449 content: ""; 6450 position: absolute; 6451 top: 100%; 6452 left: 50%; 6453 transform: translate(-50%, 0); 6454 /* margin-left: -5px;*/ 6455 border-width: 5px; 6456 border-style: solid; 6457 border-color: rgba(0,0,0,0.75) transparent transparent transparent; 6458} 6459 6460/* align tooltip of first child to the left */ 6461.tab-content table.cookie-list tr.cookie-item td.tooltip-container:first-child .tooltip { 6462 left: 0; 6463 transform: initial; 6464} 6465 6466.tab-content table.cookie-list tr.cookie-item td.tooltip-container:first-child .tooltip::after { 6467 left: 0; 6468 transform: initial; 6469} 6470 6471/* align tooltip of last child to the right */ 6472.tab-content table.cookie-list tr.cookie-item td.tooltip-container:last-child .tooltip { 6473 left: initial; 6474 right: 0; 6475 transform: initial; 6476 6477} 6478 6479.tab-content table.cookie-list tr.cookie-item td.tooltip-container:last-child .tooltip::after { 6480 left: initial; 6481 transform: initial; 6482} 6483 6484.tab-content .tooltip-container a:hover { 6485 text-decoration: none; 6486} 6487 6488/* Show the tooltip text when you mouse over the tooltip container */ 6489.tab-content .tooltip-container:hover .tooltip { 6490 visibility: visible; 6491 opacity: 1; 6492} 6493 6494/* responsiveness */ 6495@media only screen and (max-width: 800px) { 6496 .tab-pane { 6497 flex-direction: row; 6498 } 6499 .tab-pane .tab-bar { 6500 flex-direction: column; 6501 } 6502 6503 .tab-pane .tab-bar .tab-title { 6504 border-top-right-radius: 0; 6505 border-bottom-left-radius: 8px; 6506 white-space: nowrap; 6507 } 6508 6509 .tab-pane .tab-bar .tab-title .selection { 6510 display: block; 6511 text-align: center; 6512 } 6513 6514 .tab-pane .tab-bar .action-bar { 6515 margin-top: 16px; 6516 } 6517 6518 .tab-pane .tab-content .tab { 6519 overflow-x: auto; 6520 } 6521 .tab-pane .tab-content .tab table { 6522 width: auto; 6523 min-width: 800px; 6524 } 6525} 6526 6527 #cb-0-47103200052158534 .tab-pane .tab-toggle[data-toggle-id="0"]:checked ~ .tab-content .tab[data-toggle-id="0"],#cb-0-47103200052158534 .tab-pane .tab-toggle[data-toggle-id="1"]:checked ~ .tab-content .tab[data-toggle-id="1"] { 6528 /*visibility: visible; 6529 opacity: 1;*/ 6530 display: block; 6531 order: 0; 6532 } 6533 6534 #cb-0-47103200052158534 .tab-pane .tab-toggle[data-toggle-id="0"]:checked ~ .tab-bar .tab-title[data-toggle-id="0"],#cb-0-47103200052158534 .tab-pane .tab-toggle[data-toggle-id="1"]:checked ~ .tab-bar .tab-title[data-toggle-id="1"] { 6535 background:#e9e9e9; 6536 margin-top:0px; 6537 color:#606060; 6538 cursor:default; 6539 } 6540</style> 6541 6542<div id="cb-0-47103200052158534" class="cookie-banner animated-shown"> 6543 <div class="info"> 6544 <h2 class="title">Diese Webseite verwendet Cookies</h2> 6545 <div class="msg">Wir verwenden Cookies, um Inhalte zu personalisieren und um die Zugriffe auf unsere Website zu analysieren.</div> 6546 </div> 6547 6548 <div class="group-tabs nav tab-pane"> 6549 6550 <input type="radio" name="cb-tabs-cb-0-47103200052158534" id="group-tab-toggle_necessary_cb-0-47103200052158534" data-group-id="necessary" data-toggle-id="0" class="tab-toggle" checked="checked" /> 6551 6552 <input type="radio" name="cb-tabs-cb-0-47103200052158534" id="group-tab-toggle_accessibility_cb-0-47103200052158534" data-group-id="accessibility" data-toggle-id="1" class="tab-toggle" /> 6553 6554 <div class="tab-bar" role="tablist"> 6555 6556 <label role="tab" class="tab-title" for="group-tab-toggle_necessary_cb-0-47103200052158534" data-toggle-id="0" tabindex="0"> 6557 <input class="tab-checkbox" data-group-id="necessary" type="checkbox" role="checkbox" name="groupselected" value="necessary" />
6557<span class="tab-title-text">Notwendig</span> 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 <span class="selection" data-group-id="necessary">(<span class="count">2</span>/<span class="total">3</span>)</span> 6604 </label> 6605 6606 <label role="tab" class="tab-title" for="group-tab-toggle_accessibility_cb-0-47103200052158534" data-toggle-id="1" tabindex="0"> 6607 <input class="tab-checkbox" data-group-id="accessibility" type="checkbox" role="checkbox" name="groupselected" value="accessibility" /><span class="tab-title-text">Bedienhilfen</span> 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 <span class="selection" data-group-id="accessibility">(<span class="count">0</span>/<span class="total">1</span>)</span> 6624 </label> 6625 6626 <div class="action-bar"> 6627 <a class="action save" title="Cookie-Einstellungen speichern" role="button">Speichern</a> 6628 <a class="action cancel" title="SchlieÃen" role="button">[x]</a> 6629 </div> 6630 </div> 6631 <div class="tab-content"> 6632 6633 <div class="group tab" data-toggle-id="0"> 6634 <span class="detail">Technisch notwendige Cookies</span> 6635 6636 6637 6638 6639 <table class="cookie-list"> 6640 <!-- colgroup> 6641 <col width="20%" /> 6642 <col style="width: 20%" /> 6643 <col style="width: 35%" /> 6644 <col style="width: 15%" /> 6645 <col style="width: 10%" /> 6646 </colgroup --> 6647 <thead> 6648 <tr> 6649 <th scope="col" class="cookie-col-name">Name</th> 6650 <th scope="col" class="cookie-col-provider">Anbieter</th> 6651 <th scope="col" class="cookie-col-purpose">Zweck</th> 6652 <th scope="col" class="cookie-col-expiry">Gültigkeit</th> 6653 <th scope="col" class="cookie-col-type">Typ</th> 6654 </tr> 6655 </thead> 6656 <tbody> 6657 6658 6659 <tr class="cookie-item"> 6660 <td class="name"> 6661 <label role="checkbox"> 6662 <input type="checkbox" class="cookie-checkbox" name="cb-tabs-cb-0-47103200052158534" data-group-id="necessary" data-cookie-id="md_devicePixelRatio" /> 6663 <a href="info_datenschutz.html#md_devicePixelRatio" title="zeigt weitere Informationen für dieses Cookie an" target="_blank">devicePixelRatio</a> 6664 6665 </label> 6666 </td> 6667 6668 6669 <td class="provider "><a href="http://www.durmersheim.de" target="_blank" title="weitere Informationen zum Anbieter">Gemeinde Durmersheim</a></td> 6670 <td class="purpose">Speichert einen Wert zur Bildschirmauflösung, um Bilder mit einer besseren Skalierung ausliefern zu können</td> 6671 <td class="expiry">Session</td> 6672 6673 6674 <td class="type tooltip-container">HTTP<span class="description tooltip">Werte werden lokal gespeichert und zum HTTP-Server geschickt</span></td> 6675 </tr> 6676 6677 6678 <tr class="cookie-item"> 6679 <td class="name"> 6680 <label role="checkbox"> 6681 <input type="checkbox" class="cookie-checkbox" name="cb-tabs-cb-0-47103200052158534" data-group-id="necessary" data-cookie-id="md_sessionid" disabled="disabled" checked="checked" /> 6682 <a href="info_datenschutz.html#md_sessionid" title="zeigt weitere Informationen für dieses Cookie an" target="_blank">SessionID</a> 6683 6684 </label> 6685 </td> 6686 6687 6688 <td class="provider "><a href="http://www.durmersheim.de" target="_blank" title="weitere Informationen zum Anbieter">Gemeinde Durmersheim</a></td> 6689 <td class="purpose">Behält die Zustände des Benutzers bei allen Seitenanfragen bei, solang die Session aktiv ist.</td> 6690 <td class="expiry">Session</td> 6691 6692 6693 <td class="type tooltip-container">HTTP<span class="description tooltip">Werte werden lokal gespeichert und zum HTTP-Server geschickt</span></td> 6694 </tr> 6695 6696 6697 <tr class="cookie-item"> 6698 <td class="name"> 6699 <label role="checkbox"> 6700 <input type="checkbox" class="cookie-checkbox" name="cb-tabs-cb-0-47103200052158534" data-group-id="necessary" data-cookie-id="md_acceptedcookieids" disabled="disabled" checked="checked" /> 6701 <a href="info_datenschutz.html#md_acceptedcookieids" title="zeigt weitere Informationen für dieses Cookie an" target="_blank">acceptedCookieIds</a> 6702 6703 </label> 6704 </td> 6705 6706 6707 <td class="provider "><a href="http://www.durmersheim.de" target="_blank" title="weitere Informationen zum Anbieter">Gemeinde Durmersheim</a></td> 6708 <td class="purpose">Speicherung der Cookie-Einstellungen</td> 6709 <td class="expiry">2 Monate</td> 6710 6711 6712 <td class="type tooltip-container">HTTP<span class="description tooltip">Werte werden lokal gespeichert und zum HTTP-Server geschickt</span></td> 6713 </tr> 6714 6715 </tbody> 6716 </table> 6717 6718 </div> 6719 6720 <div class="group tab" data-toggle-id="1"> 6721 <span class="detail">Cookies für Bedienhilfen</span> 6722 6723 6724 6725 6726 <table class="cookie-list"> 6727 <!-- colgroup> 6728 <col width="20%" /> 6729 <col style="width: 20%" /> 6730 <col style="width: 35%" /> 6731 <col style="width: 15%" /> 6732 <col style="width: 10%" /> 6733 </colgroup --> 6734 <thead> 6735 <tr> 6736 <th scope="col" class="cookie-col-name">Name</th>
6737 <th scope="col" class="cookie-col-provider">Anbieter</th> 6738 <th scope="col" class="cookie-col-purpose">Zweck</th> 6739 <th scope="col" class="cookie-col-expiry">Gültigkeit</th> 6740 <th scope="col" class="cookie-col-type">Typ</th> 6741 </tr> 6742 </thead> 6743 <tbody> 6744 6745 6746 <tr class="cookie-item"> 6747 <td class="name"> 6748 <label role="checkbox"> 6749 <input type="checkbox" class="cookie-checkbox" name="cb-tabs-cb-0-47103200052158534" data-group-id="accessibility" data-cookie-id="_rspkrLoadCore" /> 6750 <a href="info_datenschutz.html#readspeaker" title="zeigt weitere Informationen für dieses Cookie an" target="_blank">_rspkrLoadCore</a> 6751 6752 </label> 6753 </td> 6754 6755 6756 <td class="provider "><a href="http://www.durmersheim.de" target="_blank" title="weitere Informationen zum Anbieter">Gemeinde Durmersheim</a></td> 6757 <td class="purpose">Speichert die Zustimmung zur Verwendung der Vorlesefunktion.</td> 6758 <td class="expiry">Session</td> 6759 6760 6761 <td class="type tooltip-container">HTTP<span class="description tooltip">Werte werden lokal gespeichert und zum HTTP-Server geschickt</span></td> 6762 </tr> 6763 6764 </tbody> 6765 </table> 6766 6767 </div> 6768 6769 </div> 6770 </div> 6771 6772</div> 6773 6774 6775
6776<script type="text/javascript"> 6777(function() { 6778 var acceptedCookieMaxAge=60*60*24*14; /* expiry 2 weeks from now */ 6779 var cookieAPI=(function() { 6780 function encodeCookieName(name) { 6781 return encodeURIComponent(name).replace(/[\-\.\+\*]/g, "\\$&"); 6782 } 6783 6784 return { 6785 getCookie: function(name) { 6786 if (name) { 6787 return decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*" + encodeCookieName(name) + "\\s*\\=\\s*([^;]*).*$)|^.*$"), "$1")) || null; 6788 } 6789 }, 6790 setCookie: function (name, sValue, vEnd, sPath, sDomain, bSecure) { 6791 if (!name || /^(?:expires|max\-age|path|domain|secure)$/i.test(name)) { 6792 return false; 6793 } 6794 6795 var sExpires = ""; 6796 if (vEnd) { 6797 switch (vEnd.constructor) { 6798 case Number: 6799 sExpires = vEnd === Infinity ? "; expires=Fri, 31 Dec 9999 23:59:59 GMT" : "; max-age=" + vEnd; 6800 break; 6801 case String: 6802 sExpires = "; expires=" + vEnd; 6803 break; 6804 case Date: 6805 sExpires = "; expires=" + vEnd.toUTCString(); 6806 break; 6807 } 6808 } 6809 document.cookie = encodeURIComponent(name) + "=" + encodeURIComponent(sValue) + sExpires + (sDomain ? "; domain=" + sDomain : "") + (sPath ? "; path=" + sPath : "") + (bSecure ? "; secure" : ""); 6810 return true; 6811 }, 6812 removeCookie: function (name, sPath, sDomain) { 6813 if (!this.hasCookie(name)) { 6814 return false; 6815 } 6816 document.cookie = encodeURIComponent(name) + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT" + (sDomain ? "; domain=" + sDomain : "") + (sPath ? "; path=" + sPath : ""); 6817 6818 if (this.hasCookie(name)) { 6819 document.cookie = encodeURIComponent(name) + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; domain=" + (sPath ? "; path=" + sPath : ""); 6820 } 6821 6822 if (this.hasCookie(name)) { 6823 document.cookie = encodeURIComponent(name) + "=; expires=Thu, 01 Jan 1970 00:00:00 GMT; domain=; path=/"; 6824 } 6825 return true; 6826 }, 6827 hasCookie: function(name) { 6828 if (!name || /^(?:expires|max\-age|path|domain|secure)$/i.test(name)) { 6829 return false; 6830 } 6831 return (new RegExp("(?:^|;\\s*)" + encodeCookieName(name) + "\\s*\\=")).test(document.cookie); 6832 }, 6833 getCookieNames: function() { 6834 var names = document.cookie.replace(/((?:^|\s*;)[^\=]+)(?=;|$)|^\s*|\s*(?:\=[^;]*)?(?:\1|$)/g, "").split(/\s*(?:\=[^;]*)?;\s*/); 6835 for (var nLen = names.length, nIdx = 0; nIdx < nLen; nIdx++) { 6836 aKeys[nIdx] = decodeURIComponent(names[nIdx]); 6837 } 6838 return names; 6839 } 6840 }; 6841})(); 6842 6843 var _acceptedCookies=[], 6844 _cookiesById={}, 6845 _acceptedCookieIds={}; 6846 6847 6848 6849 6850 (function() { 6851 try { 6852 var cookieDef=JSON.parse('{\x22path\x22:\x22\/\x22,\x22provider\x22:\x22durmersheim\x22,\x22purpose\x22:\x22Speichert einen Wert zur Bildschirmauflösung, um Bilder mit einer besseren Skalierung ausliefern zu können\x22,\x22domain\x22:\x22www.durmersheim.de\x22,\x22name\x22:\x22devicePixelRatio\x22,\x22hrefJS\x22:\x22create_retina_cookie.js\x22,\x22id\x22:\x22md_devicePixelRatio\x22,\x22expiry\x22:\x22Session\x22,\x22href\x22:\x22info_datenschutz.html#md_devicePixelRatio\x22,\x22type\x22:\x22http\x22}'); 6853 _cookiesById[cookieDef.id]=cookieDef; 6854 if (cookieDef.default===true && !_acceptedCookieIds[cookieDef.id]) { 6855 _acceptedCookieIds[cookieDef.id]=cookieDef; 6856 _acceptedCookies.push(cookieDef); 6857 } 6858 } 6859 catch (e) { 6860 console.log('Error parsing cookie definition', e); 6861 } 6862 })(); 6863 6864 6865 6866 (function() { 6867 try { 6868 var cookieDef=JSON.parse('{\x22path\x22:\x22\/\x22,\x22default\x22:true,\x22provider\x22:\x22durmersheim\x22,\x22purpose\x22:\x22Behält die Zustände des Benutzers bei allen Seitenanfragen bei, solang die Session aktiv ist.\x22,\x22domain\x22:\x22www.durmersheim.de\x22,\x22name\x22:\x22SessionID\x22,\x22disabled\x22:true,\x22id\x22:\x22md_sessionid\x22,\x22expiry\x22:\x22Session\x22,\x22href\x22:\x22info_datenschutz.html#md_sessionid\x22,\x22type\x22:\x22http\x22}'); 6869 _cookiesById[cookieDef.id]=cookieDef; 6870 if (cookieDef.default===true && !_acceptedCookieIds[cookieDef.id]) { 6871 _acceptedCookieIds[cookieDef.id]=cookieDef; 6872 _acceptedCookies.push(cookieDef); 6873 } 6874 } 6875 catch (e) { 6876 console.log('Error parsing cookie definition', e); 6877 } 6878 })(); 6879 6880 6881 6882 (function() { 6883 try { 6884 var cookieDef=JSON.parse('{\x22path\x22:\x22\/\x22,\x22default\x22:true,\x22provider\x22:\x22durmersheim\x22,\x22purpose\x22:\x22Speicherung der Cookie\-Einstellungen\x22,\x22domain\x22:\x22www.durmersheim.de\x22,\x22name\x22:\x22acceptedCookieIds\x22,\x22disabled\x22:true,\x22id\x22:\x22md_acceptedcookieids\x22,\x22expiry\x22:\x222 Monate\x22,\x22href\x22:\x22info_datenschutz.html#md_acceptedcookieids\x22,\x22type\x22:\x22http\x22}'); 6885 _cookiesById[cookieDef.id]=cookieDef; 6886 if (cookieDef.default===true && !_acceptedCookieIds[cookieDef.id]) { 6887 _acceptedCookieIds[cookieDef.id]=cookieDef; 6888 _acceptedCookies.push(cookieDef); 6889 } 6890 } 6891 catch (e) { 6892 console.log('Error parsing cookie definition', e); 6893 } 6894 })(); 6895 6896 6897 6898 (function() { 6899 try { 6900 var cookieDef=JSON.parse('{\x22provider\x22:\x22durmersheim\x22,\x22purpose\x22:\x22Speichert die Zustimmung zur Verwendung der Vorlesefunktion.\x22,\x22domain\x22:\x22www.durmersheim.de\x22,\x22hint\x22:\x22Bei der Nutzung dieses Dienstes werden Ihre IP\-Adresse sowie die angezeigte Seite an readspeaker.com übertragen.\\nFalls Sie zustimmen, speichern wir Ihre Zustimmung in einem Cookie.\x22,\x22name\x22:\x22_rspkrLoadCore\x22,\x22hrefJS\x22:\x22load_read_speaker.js\x22,\x22id\x22:\x22_rspkrLoadCore\x22,\x22expiry\x22:\x22Session\x22,\x22href\x22:\x22info_datenschutz.html#readspeaker\x22,\x22type\x22:\x22http\x22}'); 6901 _cookiesById[cookieDef.id]=cookieDef; 6902 if (cookieDef.default===true && !_acceptedCookieIds[cookieDef.id]) { 6903 _acceptedCookieIds[cookieDef.id]=cookieDef; 6904 _acceptedCookies.push(cookieDef); 6905 } 6906 } 6907 catch (e) { 6908 console.log('Error parsing cookie definition', e); 6909 } 6910 })(); 6911 6912 6913 6914 6915 6916 6917
6918 var CookieConsent=(function() { 6919 function showCookieBanner(showBanner, activeGroupIdOrCookieId) { 6920 require(['jquery'], function($) { 6921 var $cookieBanner=$('#cb-0-47103200052158534'); 6922 6923 if (showBanner) { 6924 if (activeGroupIdOrCookieId) { 6925 var $group=$cookieBanner.find('.group-tabs .tab-toggle[data-group-id="' + activeGroupIdOrCookieId + '"]'); 6926 6927 if ($group.length===0) { 6928 if (_cookiesById[activeGroupIdOrCookieId]) { 6929 var $cookie = $cookieBanner.find('.cookie-list .cookie-item .cookie-checkbox[data-cookie-id="' + activeGroupIdOrCookieId + '"]'); 6930 6931 if ($cookie.length===1 && $cookie.is('[data-group-id]')) { 6932 var groupId=$cookie.attr("data-group-id") 6933 6934 $group=$cookieBanner.find('.group-tabs .tab-toggle[data-group-id="' + groupId + '"]'); 6935 } 6936 } 6937 } 6938 6939 $group.prop('checked', true).change(); 6940 } 6941 6942 if (!$cookieBanner.is('.animated-shown')) { 6943 $cookieBanner.show(); 6944 } 6945 } 6946 else { 6947 $cookieBanner.removeClass('animated-shown'); 6948 $cookieBanner.hide(); 6949 } 6950 }); 6951 } 6952 6953 function getCookie(cookie) { 6954 var cookieId=cookie; 6955 6956 if (!cookie) { 6957 return false; 6958 } 6959 6960 if (cookieId.hasOwnProperty('id') || cookieId.hasOwnProperty('name')) { 6961 cookieId = cookie.id || cookie.name; 6962 } 6963 6964 for (var id in _cookiesById) { 6965 if (_cookiesById.hasOwnProperty(id)) { 6966 if (_cookiesById[id].id === cookieId 6967 || _cookiesById[id].name === cookieId) { 6968 return _cookiesById[id]; 6969 } 6970 } 6971 } 6972 } 6973 6974 function getAllCookies(accepted) { 6975 var cookies=[], 6976 i; 6977 6978 for (var cookieId in _cookiesById) { 6979 if (_cookiesById.hasOwnProperty(cookieId)) { 6980 if (accepted===undefined 6981 || (accepted===true && _acceptedCookieIds[cookieId]) 6982 || (accepted===false && !_acceptedCookieIds[cookieId])) { 6983 cookies.push(_cookiesById[cookieId]); 6984 } 6985 } 6986 } 6987 6988 return cookies; 6989 } 6990 6991 function isAccepted(cookie) { 6992 var cookieId=cookie; 6993 6994 if (!cookie) { 6995 return false; 6996 } 6997 6998 if (cookieId.hasOwnProperty('id') || cookieId.hasOwnProperty('name')) { 6999 cookieId = cookie.id || cookie.name; 7000 } 7001 7002 if (_acceptedCookieIds[cookieId]) { 7003 return true; 7004 } 7005 7006 var acceptedCookies=getAllCookies(true), 7007 i; 7008 7009 for (i=0;i<acceptedCookies.length;i++) { 7010 if (acceptedCookies[i].id === cookieId 7011 || acceptedCookies[i].name === cookieId) { 7012 return true; 7013 } 7014 } 7015 7016 return false; 7017 } 7018 7019 function acceptCookie(cookie) { 7020 if (!cookie) { 7021 return false; 7022 } 7023 7024 if (!cookie.hasOwnProperty('id')) { 7025 cookie = getCookie(cookie); 7026 } 7027 7028 if (cookie) { 7029 require(['jquery'], function($) { 7030 var $cookieBanner=$('#cb-0-47103200052158534'); 7031 7032 var $cookie = $cookieBanner.find('.cookie-list .cookie-item .cookie-checkbox[data-cookie-id="' + cookie.id + '"]'); 7033 7034 if ($cookie.length===1) { 7035 $cookie.prop('checked', true).change(); 7036 7037 saveCookies(false); 7038 } 7039 }); 7040 } 7041 } 7042 7043 window.CookieConsent={ 7044 renew: function() { 7045 showCookieBanner(true); 7046 }, 7047 show: showCookieBanner, 7048 getCookie: getCookie, 7049 isAccepted: isAccepted, 7050 getAllCookies: getAllCookies, 7051 acceptCookie: acceptCookie 7052 }; 7053 7054 return window.CookieConsent; 7055 })(); 7056 7057 function saveCookies(hideBanner) { 7058 require(['jquery'], function($) { 7059 var $cookieBanner=$('#cb-0-47103200052158534'); 7060 7061 var acceptedCookies=[], 7062 acceptedCookieIds=[], 7063 newAcceptedCookiesById={}, 7064 removedCookies=[], 7065 removedCookiesById={}; 7066 7067 $cookieBanner.find('.cookie-checkbox').each(function() { 7068 var $this=$(this), 7069 cookieId=$this.attr('data-cookie-id'), 7070 cookieDef; 7071 7072 var cookieDef=cookieId ? _cookiesById[cookieId] : undefined; 7073 7074 if ($this.is(':checked')) { 7075 if (cookieId && !_acceptedCookieIds[cookieId]) { 7076 acceptedCookieIds.push(cookieId); 7077 acceptedCookies.push(cookieDef); 7078 7079 newAcceptedCookiesById[cookieId]=cookieDef; 7080 } 7081 } 7082 else if (cookieDef && _acceptedCookieIds[cookieId]) { 7083 removedCookies.push(cookieDef); 7084 removedCookiesById[cookieId]=cookieDef; 7085 } 7086 }); 7087 7088 var $body=$(document.body), 7089 i; 7090 7091 // if (acceptedCookies.length>0 || removedCookies.length>0) { 7092 if (acceptedCookies.length>0) { 7093 if (handleCookiesAcceptedFn(acceptedCookies)!==true) { 7094 return; 7095 } 7096 } 7097 7098 // restore all formerly accepted and not removed cookies 7099 var _fcid; 7100 for (_fcid in _acceptedCookieIds) { 7101 if (_acceptedCookieIds.hasOwnProperty(_fcid) && !removedCookiesById[_fcid] && !newAcceptedCookiesById[_fcid]) { 7102 acceptedCookieIds.push(_fcid); 7103 } 7104 } 7105 7106 7107 cookieAPI.setCookie('acceptedCookieIds', acceptedCookieIds.join('!!'), acceptedCookieMa
7107xAge, '\/', 'durmersheim.de'); 7108 7109 7110 for (var k=0;k<acceptedCookieIds.length;k++) { 7111 _fcid=acceptedCookieIds[k]; 7112 if (!_acceptedCookieIds.hasOwnProperty(_fcid)) { 7113 // modify the list of accepted ids 7114 _acceptedCookieIds[_fcid]=newAcceptedCookiesById[_fcid] || {id: _fcid}; 7115 } 7116 } 7117 7118 if (removedCookies.length>0) { 7119 var cookieDef; 7120 7121 for (i=0;i<removedCookies.length;i++) { 7122 try { 7123 cookieDef=removedCookies[i]; 7124 7125 if (cookieDef) { 7126 // clear unchecked cookies, that had been accepted previously 7127 cookieAPI.removeCookie(cookieDef.name, cookieDef.path, cookieDef.domain); 7128 7129 // modify the list of accepted ids 7130 delete _acceptedCookieIds[cookieDef.id]; 7131 7132 $body.trigger('cookieRemoved', cookieDef); 7133 } 7134 } 7135 catch (e) { 7136 console.log('Error handling removed cookie "' + cookieDef.name + "'", e); 7137 } 7138 } 7139 } 7140 // } 7141 7142 if (hideBanner===true) { 7143 CookieConsent.show(false); 7144 } 7145 }); 7146 } 7147 7148 require(['jquery'], function($) { 7149 var $cookieBanner=$('#cb-0-47103200052158534'); 7150 7151 function setGroupSelectionState(groupId, isSelected) {
7152 $cookieBanner.find('.cookie-checkbox[data-group-id="' + groupId + '"]').not('[disabled="disabled"]').prop('checked', isSelected); 7153 7154 updateGroupSelectionState(groupId); 7155 } 7156 7157 function updateGroupSelectionState(groupId) { 7158 var allCookieCheckboxes=$cookieBanner.find('.cookie-checkbox[data-group-id="' + groupId + '"]'), 7159 $tabCheckBox=$cookieBanner.find('.tab-checkbox[data-group-id="' + groupId + '"]'), 7160 $selectionCountDisplay=$cookieBanner.find('.selection[data-group-id="' + groupId + '"] .count'), 7161 checkedCount=0; 7162 7163 allCookieCheckboxes.each(function() { 7164 var $this=$(this); 7165 7166 if ($this.is(':checked')) { 7167 checkedCount++; 7168 } 7169 }); 7170 7171 $selectionCountDisplay.text(checkedCount); 7172 7173 if (checkedCount>0 && checkedCount===allCookieCheckboxes.length) { 7174 $tabCheckBox.prop("indeterminate", false); 7175 7176 $tabCheckBox.prop('checked', true); 7177 } 7178 else { 7179 $tabCheckBox.prop("indeterminate", (checkedCount>0)); 7180 7181 $tabCheckBox.prop('checked', false); 7182 } 7183 } 7184 7185 // register handlers for the checkboxes 7186 $cookieBanner.find('.tab-checkbox').each(function() { 7187 var $this=$(this), 7188 groupId=$this.attr('data-group-id'); 7189 7190 updateGroupSelectionState(groupId); 7191 7192 $this.on('change', function(evt) { 7193 setGroupSelectionState(groupId, evt.target.checked); 7194 }); 7195 }); 7196 7197 $cookieBanner.find('.cookie-checkbox').each(function() { 7198 var $this=$(this), 7199 groupId=$this.attr('data-group-id'); 7200 7201 $this.on('change', function(evt) { 7202 updateGroupSelectionState(groupId); 7203 }); 7204 }); 7205 7206 $cookieBanner.find('.action.save').on('click', function(evt) { 7207 evt.preventDefault(); 7208 7209 saveCookies(true); 7210 }); 7211 7212 $cookieBanner.find('.action.cancel').on('click', function(evt) { 7213 evt.preventDefault(); 7214 7215 if (handleCookieBannerCancelled()===true) { 7216 CookieConsent.show(false); 7217 } 7218 }); 7219 7220 // support keyboard activation of tab 7221 $cookieBanner.find('.tab-title[data-toggle-id]').on('keydown', function(evt) { 7222 if (evt.keyCode == 32) { 7223 var $this=$(this), 7224 toggleId=$this.attr('data-toggle-id'); 7225 7226 if (toggleId && $this.is(':focus')) { 7227 $cookieBanner.find('.tab-toggle[data-toggle-id="' + toggleId + '"]').prop('checked', true); 7228 7229 return false;//to fix the scrolling down on space bar key press 7230 } 7231 } 7232 }); 7233 7234 7235 7236 }); 7237 7238 function indexOfCookie(cookieList, cookie) { 7239 var i; 7240 7241 if (cookie && cookie.id && cookieList && cookieList.length) { 7242 for (i=0;i<cookieList.length;i++) { 7243 var c=cookieList[i]; 7244 7245 if (c && c.id===cookie.id) { 7246 return i; 7247 } 7248 } 7249 } 7250 return -1; 7251 }; 7252 7253 function encodeURICookieList(cookieList) { 7254 var i,uriParts=[]; 7255 7256 if (cookieList && cookieList.length) { 7257 for (i=0;i<cookieList.length;i++) { 7258 var c=cookieList[i]; 7259 7260 if (c && c.id) { 7261 uriParts.push('cookieList=' + encodeURIComponent(c.id)); 7262 } 7263 } 7264 } 7265 7266 return uriParts.join('&'); 7267 } 7268 7269 var handleRequireCookieJSFn=(function() { 7270 var queuedPaths={}, 7271 injectedPaths={}, 7272 _injectTimeout; 7273 7274 function scriptInjected(jsPath) { 7275 injectedPaths[jsPath]=true; 7276 delete queuedPaths[jsPath]; 7277 } 7278 7279 function loadJS(src, cb) { 7280 var doc = window.document; 7281 var ref = doc.getElementsByTagName('script')[0]; 7282 var script = doc.createElement('script'); 7283 7284 7285 script.src = src; 7286 script.async = true; 7287 ref.parentNode.insertBefore( script, ref ); 7288 7289 if (cb && typeof(cb) === "function") { 7290 script.onload = cb; 7291 } 7292 return script; 7293 } 7294 7295 function doInject() { 7296 var i=0, 7297 jsPath; 7298 7299 for (jsPath in queuedPaths) { 7300 if (hasOwnProperty.call(queuedPaths, jsPath)) { 7301 if (!injectedPaths[jsPath]) { 7302 try { 7303 loadJS(jsPath + ((jsPath.indexOf('?')===-1) ? '?' : '&') + encodeURICookieList(queuedPaths[jsPath]), function() { 7304 scriptInjected(jsPath); 7305 }); 7306 } 7307 catch (e) { 7308 console.log('Error injecting javascript for cookie "' + acceptedCookie.name + "'", e); 7309 } 7310 } 7311 } 7312 }; 7313 7314 _injectTimeout=undefined; 7315 } 7316 7317 return function(acceptedCookie, jsPath) { 7318 if (!injectedPaths[jsPath] && !queuedPaths[jsPath]) { 7319 7320 queuedPaths[jsPath]=[acceptedCookie]; 7321 7322 if (_injectTimeout) { 7323 clearTimeout(_injectTimeout); 7324 } 7325 _injectTimeout=setTimeout(doInject, 50); 7326 7327 } 7328 else if (queuedPaths[jsPath] && indexOfCookie(queuedPaths[jsPath], acceptedCookie)===-1) { 7329 queuedPaths[jsPath].push(acceptedCookie); 7330 } 7331 }; 7332 })(); 7333 7334 var handleCookieAcceptedFn=function(acceptedCookie) { 7335 7336 try { 7337 if (acceptedCookie) { 7338 $(document.body).trigger('cookieAccepted', acceptedCookie); 7339 7340 if (acceptedCookie.hrefJS) { 7341 handleRequireCookieJSFn(acceptedCookie, '/vds/cms_durmersheim.nsf/web/_empty_'.split('_empty_')[0] + acceptedCookie.hrefJS); 7342 } 7343 } 7344 } 7345 catch (e) { 7346 console.log('Error handling accepted cookie "' + acceptedCookie.name + "'", e); 7347 } 7348 7349 return true; 7350 7351 }; 7352 7353 var handleCookiesAcceptedFn=function(acceptedCookies) { 7354 var i; 7355 7356 for (i=0;i<acceptedCookies.length;i++) { 7357 if (handleCookieAcceptedFn(acceptedCookies[i])!==true) { 7358 return false;
7359 } 7360 } 7361 7362 return true; 7363 7364 }; 7365 7366 var handleCookieConsentLoaded=function(CookieConsent) { 7367 7368 $('.action-bar .group.reader .rs-container .reader-action').on('click', function() { 7369 var $this=$(this); 7370 7371 function doRead() { 7372 window.readpage($this.attr('data-rs-href'), $this.attr("data-rs-id")); 7373 } 7374 7375 function setLinkEnabled(enabled) { 7376 $this.css({'pointer-events': (enabled ? 'all' : 'none')}); 7377 } 7378 7379 var readSpeakerCookie = CookieConsent.getCookie('_rspkrLoadCore'); 7380 if (CookieConsent.isAccepted(readSpeakerCookie)) { 7381 doRead(); 7382 } 7383 else { 7384 var confirmMsg = readSpeakerCookie.hint + '\n\nSie können diese Zustimmung jederzeit nachträglich in der Datenschutzerklärung unter Punkt 3 âCookiesâ widerrufen', 7385 confirmMsgWithAnchor = confirmMsg + ': <a href="info_datenschutz.html" title="Datenschutzerklärung öffnen">Weiter zur Datenschutzerklärung</a>'; 7386 7387 function confirm() { 7388 CookieConsent.acceptCookie(readSpeakerCookie); 7389 7390 // no pointers till read-speaker is loaded 7391 if (!window.ReadSpeaker) { 7392 setLinkEnabled(false); 7393 7394 var maxWait = 5000, 7395 waitTime = 250; 7396 7397 function waitForReadSpeaker() { 7398 maxWait -= waitTime; 7399 if (window.ReadSpeaker && window.readpage) { 7400 setLinkEnabled(true); 7401 7402 doRead(); 7403 } 7404 else { 7405 if (maxWait<=0) { 7406 setLinkEnabled(true); 7407 7408 var errMsg = 'Die Vorlesefunktion konnte nicht geladen werden, bitte versuchen Sie es später noc
7408hmal.'; 7409 7410 require(['bootbox'], function(bootbox) { 7411 bootbox.alert({ 7412 message: errMsg, 7413 centerVertical: true 7414 }); 7415 }, function (err) { 7416 alert(errMsg); 7417 }); 7418 } 7419 else { 7420 setTimeout(waitForReadSpeaker, waitTime); 7421 } 7422 } 7423 } 7424 7425 setTimeout(waitForReadSpeaker, waitTime); 7426 } 7427 else { 7428 doRead(); 7429 } 7430 } 7431 require(['bootbox'], function(bootbox) { 7432 bootbox.confirm({ 7433 message: confirmMsgWithAnchor, 7434 centerVertical: true, 7435 buttons: { 7436 confirm: { 7437 label: 'Zustimmen', 7438 className: 'btn-success' 7439 }, 7440 cancel: { 7441 label: 'Ablehnen', 7442 className: 'btn-danger' 7443 } 7444 }, 7445 callback: function (result) { 7446 if (result === true) { 7447 setTimeout(confirm, 0); 7448 } 7449 } 7450 }); 7451 }, function (err) { 7452 if (true === window.confirm(confirmMsg)) { 7453 confirm(); 7454 } 7455 }); 7456 } 7457 }); 7458 7459 }; 7460 7461 var handleCookiesNotAcceptedYet=function() { 7462 7463 return true; 7464 7465 }; 7466 7467 var handleCookieBannerCancelled=function() { 7468 7469 return true; 7470 7471 }; 7472 7473 handleCookieConsentLoaded(CookieConsent); 7474 7475 7476 if (handleCookiesNotAcceptedYet()) { 7477 7478 7479 7480 7481 CookieConsent.show(true); 7482 7483 7484 7485 7486 } 7487 7488})(); 7489</script>
7489 7490 7491 7492 7493 <!-- noscript 7494 </div> 7495 --> 7496 </body> 7497</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.