1<!DOCTYPE html> 2<html dir="ltr" lang="fr" xmlns:ff4j="http://www.w3.org/1999/xhtml" xmlns:esi="http://www.edge-delivery.org/esi/1.0"> 3 <head> 4 <title> 5 Actualités - Commune de Villainville 6 </title> 7 8
8<script src="/lib/tarteaucitron/tarteaucitron.js"></script>
8 9
9<script> 10 var tarteaucitronExpireInDay = true, tarteaucitronForceExpire = 183; 11 12 tarteaucitron.init({ 13 "privacyUrl": "", /* Privacy policy url */ 14 15 "hashtag": "#tarteaucitron", /* Open the panel with this hashtag */ 16 "cookieName": "tarteaucitron", /* Cookie name */ 17 18 "orientation": "bottom", /* Banner position (top - bottom) */ 19 20 "showAlertSmall": false, /* Show the small banner on bottom right */ 21 "cookieslist": true, /* Show the cookie list */ 22 23 "showIcon": false, /* Show cookie icon to manage cookies */ 24 // "iconSrc": "", /* Optionnal: URL or base64 encoded image */ 25 "iconPosition": "BottomRight", /* Position of the icon between BottomRight, BottomLeft, TopRight and TopLeft */ 26 27 "adblocker": false, /* Show a Warning if an adblocker is detected */ 28 29 "DenyAllCta": true, /* Show the deny all button */ 30 "AcceptAllCta": true, /* Show the accept all button when highPrivacy on */ 31 "highPrivacy": true, /* HIGHLY RECOMMANDED Disable auto consent */ 32 33 "handleBrowserDNTRequest": false, /* If Do Not Track == 1, disallow all */ 34 35 "removeCredit": false, /* Remove credit link */ 36 "moreInfoLink": true, /* Show more info link */ 37 "useExternalCss": false, /* If false, the tarteaucitron.css file will be loaded */ 38 39 //"cookieDomain": ".my-multisite-domaine.fr", /* Shared cookie for subdomain website */ 40 41 "readmoreLink": "", /* Change the default readmore link pointing to tarteaucitron.io */ 42 43 "mandatory": true, /* Show a message about mandatory cookies */ 44 45 "listCookieByService": false, /* Show a message about list cookie by service */ 46 47 }); 48 </script>
48 49 50 51 52 <meta name="Description" content=""> 53 <meta name="Keywords" content=""> 54 <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 55 <meta charset="UTF-8"> 56 57 <!-- Matomo -->
58<script> 59 var _paq = window._paq = window._paq || []; 60 /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ 61 _paq.push(['trackPageView']); 62 _paq.push(['enableLinkTracking']); 63 (function() { 64 var u="//matomo-client.neopse.com/"; 65 _paq.push(['setTrackerUrl', u+'matomo.php']); 66 _paq.push(['setSiteId', '459']); 67 var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; 68 g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); 69 })(); 70</script>
70 71<!-- End Matomo Code --> 72 73 74 75 76 77 78 79 <link rel="apple-touch-icon" href="https://static.neopse.com/thumbs/p/2755/site/c9/59/be/c959be76e2df582a172b31c468cded04436ad684.png?v=v1"> 80 <link rel="icon" href="https://static.neopse.com/thumbs/p/2755/site/c9/59/be/c959be76e2df582a172b31c468cded04436ad684.png?v=v1"> 81 82 <link rel="preconnect" href="https://fonts.googleapis.com"> 83 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 84 <link href="https://fonts.googleapis.com/css?family=Montserrat:400,500,600,700|Material+Icons" rel="stylesheet"> 85 <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Jost:wght@400;700&family=Lato:wght@400;700&family=Lora:wght@400;700&family=Merriweather:wght@400;700&family=Montserrat:wght@400;700&family=Nunito:wght@400;700&family=Open+Sans:wght@400;700&family=Outfit:wght@400;700&family=Roboto:wght@400;700&family=Roboto+Condensed:wght@400;700&family=Roboto+Slab:wght@400;700&display=swap" rel="stylesheet"> 86 87 <link href='/dist/owlcarousel/css/owl.carousel.min.css' rel='stylesheet' type='text/css'> 88 <link href='/dist/owlcarousel/css/owl.theme.default.min.css' rel='stylesheet' type='text/css'> 89 <link href='/dist/slick/slick.css' rel='stylesheet' type='text/css'> 90 <link href='/dist/slick/slick-theme.css' rel='stylesheet' type='text/css'> 91 <link href='/dist/scrollbar/jquery.scrollbar.css' rel='stylesheet' type='text/css'> 92 <link href='/dist/fullcalendar/fullcalendar.min.css' rel='stylesheet' type='text/css'> 93 <link rel="stylesheet" 94 href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.2/css/bootstrap-select.min.css"> 95 <link href="/tpl/1/css/style.css" rel="stylesheet" type='text/css'> 96 <link rel="stylesheet" 97 href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/0.9.13/css/bootstrap-multiselect.css"/> 98 99 <link href="/lib/splide-4.0.1/css/splide.min.css" rel="stylesheet" type="text/css"/> 100 <link href="/lib/splide-4.0.1/css/splide-custom.css" rel="stylesheet" type="text/css"/> 101 <style class="notranslate" title="customCss" type="text/css" 102 rel="stylesheet">.bg_bloc { background-color: #90E193 !important; } .table td, .table, .table thead th { border-color: #90E193 !important; } .bg_bloc .dropdown-toggle, .bg_bloc .dropdown-menu {background-color: #90E193 !important;border-color: #90E193 !important;} .fc-unthemed th, .fc-unthemed td, .fc-unthemed thead, .fc-unthemed tbody, .fc-unthemed .fc-divider, .fc-unthemed .fc-row, .fc-unthemed .fc-content, .fc-unthemed .fc-popover, .fc-unthemed .fc-list-view, .fc-unthemed .fc-list-heading td{border-color: #90E193 !important;} .fc-unthemed thead.fc-head, .fc-unthemed .fc-popover .fc-header{ background-color: #90E193 !important; } .fc-unthemed td.fc-today{background: #90E193 !important;} .cookies .btn{ color: #90E193 !important; }body { background-color: #FFFFFF; }.bg_wrapper { background-color: #52AF43 !important; }.c_btn, .c_btn:hover, .c_btn:focus, .c_btn:active { color: #A70F24; } .c_btn:before { background-color: #A70F24 !important; } .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span, .carousel-indicators .active {background: #A70F24;opacity: 1;} .carousel-indicators li, .owl-theme .owl-dots .owl-dot span{background-color: #A70F24;opacity: 0.5;} .fc-event{ color: #A70F24 !important;}.text_bloc {color:#FFFFFF !important;} .text_bloc .title:before {background-color:#FFFFFF!important;} .bg_bloc .c_text {color:#FFFFFF !important;} .bg_bloc .dropdown-toggle, .bg_bloc .dropdown-menu, .bg_bloc.bootstrap-select .dropdown-toggle::after {color:#FFFFFF !important;} .fc-unthemed thead.fc-head{ color: #FFFFFF !important; } .fc-unthemed td.fc-today{color: #FFFFFF !important;} .cookies .btn{ background-color: #FFFFFF !important; }.footer.bg { background-color: #52AF43; }nav.navbar.bg { background-color: #52AF43; }nav.navbar.bg { background-image: url(https://static.neopse.com/assets/img/textures/black-thread-light.png?v=v1); background-position: center; background-repeat: repeat; }body, .c_text, .container, .carousel-caption .title, .dropdown-item.c_text, .newsletter .requirements { color: #000000; } .slick-prev:before, .slick-next:before { color: #000000; } .c_text.navbar-toggler{ border-color: #000000 !important; } .title:before{ background-color: #000000 !important; } .intern-page .en-tete{ border-left-color: #000000;} .bootstrap-select .dropdown-menu li a{color: #000000;} .bootstrap-select .dropdown-toggle::after{color: #000000;} .fc-button{color: #000000 !important;}.footer .c_btn, .footer .c_btn:hover, .footer .c_btn:focus, .footer .c_btn:active { color: #E9BB0A; } .footer .c_btn:before { background-color: #E9BB0A !important; }nav.navbar .c_btn, nav.navbar .c_btn:hover, nav.navbar .c_btn:focus, nav.navbar .c_btn:active { color: #FFFFFF; }nav.navbar .dropdown-menu { background-color: #52AF43; }.footer .c_text { color: #FFFFFF; }nav.navbar .c_text { color: #FFFFFF; }nav.navbar .h_text:hover { color: #FFFFFF; }.footer .c_title { color: #FFFFFF; } .footer .c_title:before { background-color: #FFFFFF !important; }.breadcrumb.bg { background-color: #A70F24; }nav.navbar .dropdown-menu .c_text { color: #FFFFFF; }nav.navbar .dropdown-menu .h_text:hover { color: #FFFFFF; }nav.navbar .h_text:hover { background-color: #90E193; }body .bg_btn { background-color: #FFFFFF; } body .bg_btn:hover, body .bg_btn:active, body .bg_btn:focus { background-color: #FFFFFF; } .fc-event{ background-color: #FFFFFF !important; border-color: #FFFFFF !important; }#w_headline { background-color: #A70F24; }#w_0zt4n7hl8 .bg { background-color: #90E193; }#w_0zt4n7hl8 .bg { background-image: url(https://static.neopse.com/assets/img/textures/diagonales-decalees.png?v=v1); background-position:center; background-repeat: repeat;}#w_429770mmd .bg { background-color: #A70F24; }#w_429770mmd .bg { background-image: url(https://static.neopse.com/assets/img/textures/black-thread-light.png?v=v1); background-position: center; background-repeat: repeat; }#w_5yupcqsm2 .bg { background-color: #E9BB0A; }#w_5yupcqsm2 .bg { background-image: url(https://static.neopse.com/assets/img/textures/cubes.png?v=v1); background-position: center; background-repeat: repeat; }#w_aosbsketb .bg { background-color: #A70F24; }#w_fs59045t0 .bg { background-color: #A70F24; }#w_fs59045t0 .bg { background-image: url(https://static.neopse.com/assets/img/textures/black-thread-light.png?v=v1); background-position: center; background-repeat: repeat; }#w_headline .c_btn, #w_headline .c_btn:hover, #w_headline .c_btn:focus, #w_headline .c_btn:active { color: #A70F24; } #w_headline .c_btn:before { background-color: #A70F24 !important; } #w_headline .owl-theme .owl-dots .owl-dot.active span,#w_headline .owl-theme .owl-dots .owl-dot:hover span, #w_headline .carousel-indicators .active {background: #A70F24;opacity: 1;} #w_headline .carousel-indicators li, #w_headline .owl-theme .owl-dots .owl-dot span{background-color: #A70F24;opacity: 0.5;}.breadcrumb.bg .c_text { color: #FFFFFF; }nav.navbar .bg_btn, nav.navbar .bg_btn:hover, nav.navbar .bg_btn:active, nav.navbar .bg_btn:focus{ background-color: #90E193; }nav.navbar .dropdown-menu .h_text:hover { background-color: #A70F24; }#w_429770mmd .c_btn, #w_429770mmd .c_btn:hover, #w_429770mmd .c_btn:focus, #w_429770mmd .c_btn:active, #w_429770mmd .card-icon-date .day { color: #E9BB0A; border-color: #E9BB0A; } #w_429770mmd .c_btn:before, #w_429770mmd .owl-theme .owl-dots .owl-dot.active span, #w_429770mmd .owl-theme .owl-dots .owl-dot:hover span, #w_429770mmd .slick-dots .slick-active button:before, #w_429770mmd .card-icon-date .month {background-color: #E9BB0A !important;opacity: 1;} #w_429770mmd .carousel-indicators li, #w_429770mmd .owl-theme .owl-dots .owl-dot span, #w_429770mmd .slick-dots li button:before {background-color: #E9BB0A; opacity: 0.5;}#w_5yupcqsm2 .c_btn, #w_5yupcqsm2 .c_btn:hover, #w_5yupcqsm2 .c_btn:focus, #w_5yupcqsm2 .c_btn:active { color: #000000; } #w_5yupcqsm2 .c_btn.dark:before { background-color: #000000 !important; } #w_5yupcqsm2 .owl-theme .owl-dots .owl-dot.active span, #w_5yupcqsm2 .owl-theme .owl-dots .owl-dot:hover span {background: #000000;opacity: 1;} #w_5yupcqsm2 .carousel-indicators li, #w_5yupcqsm2 .owl-theme .owl-dots .owl-dot span{background-color: #000000;opacity: 0.5;}#w_headline .c_text { color: rgb(167,15,36); } #w_headline .title.c_text:before { background-color: rgb(167,15,36) !important; }.breadcrumb.bg .c_title { color: #FFFFFF; } .breadcrumb.bg .c_title:before { background-color: #FFFFFF !important; }#w_0zt4n7hl8 .c_text { color: #FFFFFF; }#w_429770mmd .c_text { color: #FFFFFF; }#w_5yupcqsm2 .c_text { color: #000000; }#w_0zt4n7hl8 .c_title { color: #A70F24; } #w_0zt4n7hl8 .c_title:before { background-color: #A70F24 !important; }#w_429770mmd .c_title { color: #FFFFFF; } #w_429770mmd .c_title:before { background-color: #FFFFFF !important; }#w_5yupcqsm2 .c_title { color: #FFFFFF !important; } #w_5yupcqsm2 .c_title.dark:before { background-color: #FFFFFF !important; }#w_aosbsketb .c_title { color: #FFFFFF; } #w_aosbsketb .c_title:before { background-color: #FFFFFF !important; }#w_fs59045t0 .c_title { color: #FFFFFF; } #w_fs59045t0 .c_title:before { background-color: #FFFFFF !important; }#w_0zt4n7hl8 .c_title { display: inline-block; }#w_aosbsketb .c_title { display: inline-block; }#w_429770mmd .bg_text { background-color: #FFFFFF; }#w_headline .c_text_responsive { color: #A70F24; } #w_headline .title.c_text_responsive:before { background-color: #A70F24 !important; }/*np-dropdowns*/.bootstrap-select{background-color:#90E193!important;}.bootstrap-select .dropdown-menu{background-color:#90E193!important;border-color:#90E193!important;}.bootstrap-select .dropdown-menu .dropdown-item,.bootstrap-select .dropdown-menu li a,.bootstrap-select .dropdown-menu .dropdown-item:hover,.bootstrap-select .dropdown-menu .dropdown-item:focus,.bootstrap-select .dropdown-menu .dropdown-item.active,.bootstrap-select .dropdown-menu .dropdown-item.selected{background-color:#90E193!important;}.bootstrap-select,.bootstrap-select .dropdown-toggle,.bootstrap-select .dropdown-toggle::after,.bootstrap-select .dropdown-menu,.bootstrap-select .dropdown-menu .c_text,.bootstrap-select .dropdown-menu .dropdown-item,.bootstrap-select .dropdown-menu .dropdown-item:hover,.bootstrap-select .dropdown-menu .dropdown-item:focus,.bootstrap-select .dropdown-menu .dropdown-item.active,.bootstrap-select .dropdown-menu .dropdown-item.selected,.bootstrap-select .dropdown-menu li a,.bootstrap-select .dropdown-menu .text{color:#FFFFFF!important;}</style> 103 104 105
105<script src="/js/vendor/jquery-3.2.1.min.js"></script>
105 106
106<script>tarteaucitron.user.matomoHost = '//matomo.neopse.com/';</script>
106 107 </head> 108 <body> 109 110 <header role="banner"><!-- Top navbar --> 111<nav role="navigation" class="navbar fixed-top navbar-expand-lg bg"> 112 <div class="ov"></div> 113 <div class="container"> 114 <a class="navbar-brand c_text" aria-label="Accueil" href="/fr/"> 115 <h1 class="img"> 116 <picture> 117 <source media="(max-width: 991.98px)" srcset="https://static.neopse.com/medias/p/2755/site/4c/9d/96/4c9d9637b5fb19a3313641044b5569ea550e9329.png"> 118 <img role="img" src="https://static.neopse.com/medias/p/2755/site/4c/9d/96/4c9d9637b5fb19a3313641044b5569ea550e9329.png" alt="Logo Commune de Villainville" loading="eager"> 119 </picture> 120 <span>Commune de Villainville</span> 121 </h1> 122 </a> 123 <button class="navbar-toggler c_text h_text" type="button" data-toggle="collapse" 124 data-target="#navbarNavDropdown" 125 aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation" style="z-index: 100;"> 126 <span class="navbar-toggler-icon"> 127 <i class="material-icons notranslate">menu</i> 128 </span> 129 </button> 130 <div class="collapse navbar-collapse" id="navbarNavDropdown"> 131 <ul class="navbar-nav ml-auto"> 132 <li class="nav-item dropdown"> 133 <a class="nav-link c_text h_text px-3" href="/" role="button"> 134 <i class="material-icons">home</i> 135 </a> 136 </li> 137 <li class="nav-item dropdown"> 138 <a class="nav-link c_text h_text dropdown-toggle" href="#" id="menuDropdown0" role="button" 139 data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 140 Accueil 141 </a> 142 <div class="dropdown-menu container bg_text" aria-labelledby="menuDropdown0"> 143 <div class="dropdown-menu-image" aria-hidden="true" 144 style="background-image: url(https://static.neopse.com/thumbs/p/2755/site/10/91/9e/10919e0e43fdd55f9e6909d14a62e544e85636e3.png?v=v1);"></div> 145 146 <div class="container mega-dropdown-menu"> 147 <div class="divider"> 148 149 150 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 151 href="/fr/ct/1722346/contacts-1074"> 152 Contacts 153 </a> 154 155 156 157 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 158 href="/fr/rb/1292449/presentation-de-villainville"> 159 Présentation de Villainville 160 </a> 161 162 163 164 165 166 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 167 href="/fr/tb/1723087/le-conseil-municipal-55"> 168 Le conseil municipal 169 </a> 170 171 172 173 174 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 175 href="/fr/nw/1722424/actualites-1186"> 176 Actualités 177 </a> 178 179 180 181 182 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 183 href="/fr/lk/1722541/les-partenaires-de-la-commune"> 184 Les partenaires de la commune 185 </a> 186 187 188 189 190 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 191 href="/fr/rp/1722892/comptes-rendus-706"> 192 Comptes rendus 193 </a> 194 195 196 197 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem"
198 href="/fr/rb/1577474/plan-local-durbanisme-plu-27"> 199 Plan Local d'Urbanisme (PLU) 200 </a> 201 202 203 204 </div> 205 </div> 206 </div> 207 </li> 208 209 210 <li class="nav-item dropdown"> 211 <a class="nav-link c_text h_text dropdown-toggle" href="#" id="menuDropdown1" role="button" 212 data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 213 Les partenaires 214 </a> 215 <div class="dropdown-menu container bg_text" aria-labelledby="menuDropdown1"> 216 <div class="dropdown-menu-image" aria-hidden="true" 217 style="background-image: url(https://static.neopse.com/thumbs/p/2755/site/01/0d/85/010d85908e7bb3ce846804514da827ded2d1d483.png?v=v1);"></div> 218 219 <div class="container mega-dropdown-menu"> 220 <div class="divider"> 221 222 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 223 href="/fr/rb/1291916/les-partenaires-publics"> 224 Les partenaires publics 225 </a> 226 227 228 229 230 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 231 href="/fr/rb/1298234/les-artisans-de-villainville"> 232 Les artisans de Villainville 233 </a> 234 235 236 237 </div> 238 </div> 239 </div> 240 </li> 241 242 243 <li class="nav-item dropdown"> 244 <a class="nav-link c_text h_text dropdown-toggle" href="#" id="menuDropdown2" role="button" 245 data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 246 Vie pratique 247 </a> 248 <div class="dropdown-menu container bg_text" aria-labelledby="menuDropdown2"> 249 <div class="dropdown-menu-image" aria-hidden="true" 250 style="background-image: url(https://static.neopse.com/thumbs/p/2755/site/5b/e2/40/5be24085a12ce2edea4fc9073268c799a75eb9f3.png?v=v1);"></div> 251 252 <div class="container mega-dropdown-menu"> 253 <div class="divider"> 254 255 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 256 href="/fr/rb/1291994/se-deplacer-26"> 257 Se déplacer 258 </a> 259 260 261 262 263 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 264 href="/fr/rb/1292072/ou-se-loger-2"> 265 Où se loger ? 266 </a> 267 268 269 270 271 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 272 href="/fr/rb/1291968/gestion-des-dechets-75"> 273 Gestion des déchets 274 </a> 275 276 277 278 279 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 280 href="/fr/rb/1292358/les-demarches-administratives-4"> 281 Les démarches administratives 282 </a> 283 284 285 286 287 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 288 href="/fr/rb/1292033/les-marches-autour-de-villainville"> 289 Les marchés autour de Villainville... 290 </a> 291 292 293 294 295 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 296 href="/fr/rb/1292085/assistantes-maternelles-46"> 297 Assistantes maternelles 298 </a> 299 300 301 302 303 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 304 href="/fr/rb/1292098/la-salle-polyvalente"> 305 La salle polyvalente 306 </a> 307 308 309 310 311 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 312 href="/fr/rb/1292124/eglise-cimetiere-1"> 313 Ãglise-Cimetière 314 </a> 315 316 317 318 319 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem"
320 href="/fr/rb/1509536/communications-1"> 321 Communications 322 </a> 323 324 325 326 327 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 328 href="/fr/rb/1510316/sante-93"> 329 Santé 330 </a> 331 332 333 334 335 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 336 href="/fr/rb/1510381/au-jardin"> 337 Au jardin... 338 </a> 339 340 341 342 </div> 343 </div> 344 </div> 345 </li> 346 347 348 <li class="nav-item dropdown"> 349 <a class="nav-link c_text h_text dropdown-toggle" href="#" id="menuDropdown3" role="button" 350 data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 351 Autour de l'école 352 </a> 353 <div class="dropdown-menu container bg_text" aria-labelledby="menuDropdown3"> 354 <div class="dropdown-menu-image" aria-hidden="true" 355 style="background-image: url(https://static.neopse.com/thumbs/p/2755/site/92/65/b8/9265b80c4e8c9818d27114a5e3a419773d26daaa.png?v=v1);"></div> 356 357 <div class="container mega-dropdown-menu"> 358 <div class="divider"> 359 360 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 361 href="/fr/rb/1292228/garderie-periscolaire-19"> 362 Garderie périscolaire 363 </a> 364 365 366 367 368 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 369 href="/fr/rb/1292267/restauration-scolaire-70"> 370 Restauration scolaire 371 </a> 372 373 374 375 376 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 377 href="/fr/rb/1292319/vie-de-lecole"> 378 Vie de l'école 379 </a> 380 381 382 383 </div> 384 </div> 385 </div> 386 </li> 387 388 389 <li class="nav-item dropdown"> 390 <a class="nav-link c_text h_text dropdown-toggle" href="#" id="menuDropdown4" role="button" 391 data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 392 Services aux habitants 393 </a> 394 <div class="dropdown-menu container bg_text" aria-labelledby="menuDropdown4"> 395 396 <div class="container mega-dropdown-menu"> 397 <div class="divider"> 398 399 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem"
400 href="/fr/rb/1515490/maisons-du-territoire-1"> 401 Maisons du territoire 402 </a> 403 404 405 406 407 <a class="dropdown-item c_text h_text bg_h_text" role="menuitem" 408 href="/fr/rb/1515516/facilitez-vos-paiements"> 409 Facilitez vos paiements 410 </a> 411 412 413 414 </div> 415 </div> 416 </div> 417 </li> 418 419 420 421 <li class="nav-item"> 422 <a href="#search-form-collapse" role="button" class="search-button btn c_text h_text" data-toggle="collapse" 423 data-target="#search-form-collapse" aria-expanded="false"> 424 <i class="material-icons">search</i> 425 </a> 426 </li> 427 <form action="/fr/search" class="form-inline nav-link c_text" method="post"> 428 <div class="toggled row collapse" id="search-form-collapse"> 429 <input id="search-form" class="form-control col-lg-8 col-8" type="search" placeholder="Recherche" 430 aria-label="Search" name="keywords"> 431 <button type="submit" class="form-control col-lg-4 col-4 bg_btn c_btn"><i class="material-icons notranslate">search</i></button> 432 </div> 433 </form> 434 435 <li class="nav-item position-relative"> 436 <div role="button" class="cursor-pointer nav-link c_text" data-toggle="collapse" 437 data-target="#google_translate_element" aria-expanded="false" aria-label="Choisir la langue du site" 438 aria-controls="google_translate_element"><i class="material-icons notranslate">language</i> 439 </div> 440 <div id="google_translate_element" class="collapse"> 441 <div id="google_translate"></div> 442 <div class="google_translate_consent" style="width: 200px; height: 60px;"></div> 443 </div> 444 </li> 445 446 </ul> 447 </div> 448 </div> 449</nav> 450</header> 451 452 <main role="main"> 453 <div class="main intern-page"> 454 <header class="breadcrumb container d-flex align-items-center bg"> 455 <div class="ov"></div> 456 <div class="container"> 457 <h1 class="title dark c_title">Actualités</h1> 458 459 <nav class="ariane c_text"> 460 <span><a href="/fr/" class="font-weight-bold">Accueil</a></span> 461 / <a href="/fr/">Accueil</a> 462 / <a href="/fr/nw/1722424/actualites-1186">Actualités</a> 463 </nav> 464 465 </div> 466</header> 467 <!-- Contenu --> 468 <section class="container wrapper bg_wrapper c_wrapper"> 469 <div class="ov bgw"></div> 470 471 <div class="main-content dynamicContent"> 472 <div class="row"> 473 <div class="col col-lg contenu"> 474 <div class="d-flex flex-wrap justify-content-between"> 475 <div class="card card-list size-1-1 eLink marketList"> 476 <div class="card-button"> 477 <a href="/fr/nw/1722424/2868504/transport-scolaire-nomad-rentree-2026-2027" 478 class="card-button"> 479 <img role="img" class="card-img-top img-fluid size-4-3" 480 src="https://static.neopse.com/thumbs/p/2755/site/89/6a/89/896a898bf5d9259713a52ccb13a26367f4c231fc.png?v=v1" 481 alt="Image par défaut"> 482 </a> 483 </div> 484 <div class="card-body c_text"> 485 <div class="col-lg"> 486 <a href="/fr/nw/1722424/2868504/transport-scolaire-nomad-rentree-2026-2027"> 487 <h2 class="card-title h5">Transport scolaire NOMAD-rentrée 2026-2027</h2> 488 </a> 489 <a href="/fr/nw/1722424/2868504/transport-scolaire-nomad-rentree-2026-2027"> 490 <p class="card-text"></p> 491 </a> 492 </div> 493 </div> 494 </div> 495 <div class="card card-list size-1-1 eLink marketList"> 496 <div class="card-button"> 497 <a href="/fr/nw/1722424/1223211/plan-local-durbanisme-intercommunal-plui-1" 498 class="card-button"> 499 <img role="img" class="card-img-top img-fluid size-4-3" 500 src="https://static.neopse.com/thumbs/p/2755/site/f3/cb/05/f3cb05787f73ae8981787ac724c3a8a380a375f1.png?v=v1" 501 alt="Image par défaut"> 502 </a> 503 </div> 504 <div class="card-body c_text"> 505 <div class="col-lg"> 506 <a href="/fr/nw/1722424/1223211/plan-local-durbanisme-intercommunal-plui-1"> 507 <h2 class="card-title h5">Plan Local dâUrbanisme intercommunal (PLUi)</h2> 508 </a> 509 <a href="/fr/nw/1722424/1223211/plan-local-durbanisme-intercommunal-plui-1"> 510 <p class="card-text">Le Plan Local Dâurbanisme intercommunal (PLUi) Le Havre Seine Métropole est disponible !</p> 511 </a> 512 </div> 513 </div> 514 </div> 515 <div class="card card-list size-1-1 eLink marketList"> 516 <div class="card-button"> 517 <a href="/fr/nw/1722424/2294710/ateliers-numeriques-26" 518 class="card-button"> 519 <img role="img" class="card-img-top img-fluid size-4-3" 520 src="https://static.neopse.com/thumbs/p/2755/site/57/f9/59/57f959c400c01971da3f3a55684f210cc0cf0c2b.png?v=v1" 521 alt="Image par défaut"> 522 </a> 523 </div> 524 <div class="card-body c_text"> 525 <div class="col-lg"> 526 <a href="/fr/nw/1722424/2294710/ateliers-numeriques-26"> 527 <h2 class="card-title h5">Ateliers Numériques</h2> 528 </a> 529 <a href="/fr/nw/1722424/2294710/ateliers-numeriques-26"> 530 <p class="card-text">2ème trimestre 2026</p> 531 </a> 532 </div> 533 </div> 534 </div> 535 <div class="card card-list size-1-1 eLink marketList"> 536 <div class="card-button"> 537 <a href="/fr/nw/1722424/1211745/ouverture-d-un-nouveau-centre-de-recyclage-ainsi-que-d-une-recyclerie" 538 class="card-button"> 539 <img role="img" class="card-img-top img-fluid size-4-3" 540 src="https://static.neopse.com/thumbs/p/2755/site/d1/fb/fe/d1fbfee100b1979d03d81dfbefc3ab10e154f755.png?v=v1" 541 alt="Image par défaut"> 542 </a> 543 </div> 544 <div class="card-body c_text"> 545 <div class="col-lg"> 546 <a href="/fr/nw/1722424/1211745/ouverture-d-un-nouveau-centre-de-recyclage-ainsi-que-d-une-recyclerie"> 547 <h2 class="card-title h5">Ouverture d'un nouveau centre de recyclage ainsi que d'une recyclerie</h2> 548 </a> 549 <a href="/fr/nw/1722424/1211745/ouverture-d-un-nouveau-centre-de-recyclage-ainsi-que-d-une-recyclerie"> 550 <p class="card-text">A partir du 13 avril 2026</p> 551 </a> 552 </div> 553 </div> 554 </div> 555 <div class="card card-list size-1-1 eLink marketList"> 556 <div class="card-button"> 557 <a href="/fr/nw/1722424/2782067/inscriptions-pour-la-rentree-2026" 558 class="card-button"> 559 <img role="img" class="card-img-top img-fluid size-4-3" 560 src="https://static.neopse.com/thumbs/p/2755/site/af/79/59/af7959829df005f5a468a169af69f92763f930e1.png?v=v1" 561 alt="Image par défaut"> 562 </a> 563 </div> 564 <div class="card-body c_text"> 565 <div class="col-lg"> 566 <a href="/fr/nw/1722424/2782067/inscriptions-pour-la-rentree-2026"> 567 <h2 class="card-title h5">inscriptions pour la rentrée 2026</h2> 568 </a> 569 <a href="/fr/nw/1722424/2782067/inscriptions-pour-la-rentree-2026"> 570 <p class="card-text"></p> 571 </a> 572 </div> 573 </div> 574 </div> 575 <div class="card card-list size-1-1 eLink marketList"> 576 <div class="card-button"> 577 <a href="/fr/nw/1722424/2780910/conseil-municipal-dinstallation-6" 578 class="card-button"> 579 <img role="img" class="card-img-top img-fluid size-4-3" 580 src="https://static.neopse.com/thumbs/p/2755/site/d8/73/dc/d873dcf59a66530a73b644d138da054a097f31fd.png?v=v1" 581 alt="Image par défaut"> 582 </a> 583 </div> 584 <div class="card-body c_text"> 585 <div class="col-lg"> 586 <a href="/fr/nw/1722424/2780910/conseil-municipal-dinstallation-6"> 587 <h2 class="card-title h5">Conseil Municipal d'installation</h2> 588 </a> 589 <a href="/fr/nw/1722424/2780910/conseil-municipal-dinstallation-6"> 590 <p class="card-text">L'installation du nouveau conseil municipal, suivie de l'élection du maire et des adjoints se tiendra le vendredi 20 mars 2026 à 19h00 à la mairie.</p> 591 </a> 592 </div> 593 </div> 594 </div> 595 <div class="card card-list size-1-1 eLink marketList"> 596 <div cla
596ss="card-button"> 597 <a href="/fr/nw/1722424/1951601/caue-communique" 598 class="card-button"> 599 <img role="img" class="card-img-top img-fluid size-4-3" 600 src="https://static.neopse.com/thumbs/p/2755/site/fc/aa/59/fcaa59f4ae88f0ec92bd5d22a35424910a70bf9d.png?v=v1" 601 alt="Image par défaut"> 602 </a> 603 </div> 604 <div class="card-body c_text"> 605 <div class="col-lg"> 606 <a href="/fr/nw/1722424/1951601/caue-communique"> 607 <h2 class="card-title h5">CAUE communique...</h2> 608 </a> 609 <a href="/fr/nw/1722424/1951601/caue-communique"> 610 <p class="card-text">Des conseils gratuits pour votre habitat</p> 611 </a> 612 </div> 613 </div> 614 </div> 615 <div class="card card-list size-1-1 eLink marketList"> 616 <div class="card-button"> 617 <a href="/fr/nw/1722424/1223146/des-conteneurs-a-verre-connectes" 618 class="card-button"> 619 <img role="img" class="card-img-top img-fluid size-4-3" 620 src="https://static.neopse.com/thumbs/p/2755/site/d0/58/62/d05862047e9110eab7cf5c4b680d890993388303.png?v=v1" 621 alt="Image par défaut"> 622 </a> 623 </div> 624 <div class="card-body c_text"> 625 <div class="col-lg"> 626 <a href="/fr/nw/1722424/1223146/des-conteneurs-a-verre-connectes"> 627 <h2 class="card-title h5">Des conteneurs à "verre" connectés !!!</h2> 628 </a> 629 <a href="/fr/nw/1722424/1223146/des-conteneurs-a-verre-connectes"> 630 <p class="card-text">Nouveau à Villainville</p> 631 </a> 632 </div> 633 </div> 634 </div> 635 <div class="card card-list size-1-1 eLink marketList"> 636 <div class="card-button"> 637 <a href="/fr/nw/1722424/1129962/filbus-document" 638 class="card-button"> 639 <img role="img" class="card-img-top img-fluid size-4-3" 640 src="https://static.neopse.com/thumbs/p/2755/site/7b/c5/9d/7bc59d43d2588c82380cec07ee3644eb6af47b55.png?v=v1" 641 alt="Image par défaut"> 642 </a> 643 </div> 644 <div class="card-body c_text"> 645 <div class="col-lg"> 646 <a href="/fr/nw/1722424/1129962/filbus-document"> 647 <h2 class="card-title h5">Filbus : document</h2> 648 </a> 649 <a href="/fr/nw/1722424/1129962/filbus-document"> 650 <p class="card-text">Septembre 2022</p> 651 </a> 652 </div> 653 </div> 654 </div> 655 <div class="card card-list size-1-1 eLink marketList"> 656 <div class="card-button"> 657 <a href="/fr/nw/1722424/971531/les-jeux-du-parcours-sante-sont-installes-dans-le-verger" 658 class="card-button"> 659 <img role="img" class="card-img-top img-fluid size-4-3" 660 src="https://static.neopse.com/thumbs/p/2755/site/ca/d6/86/cad686b34860ffe39439b2ea2057219839552fee.png?v=v1" 661 alt="Image par défaut"> 662 </a> 663 </div> 664 <div class="card-body c_text"> 665 <div class="col-lg"> 666 <a href="/fr/nw/1722424/971531/les-jeux-du-parcours-sante-sont-installes-dans-le-verger"> 667 <h2 class="card-title h5">Les jeux du parcours santé sont installés dans le Verger</h2> 668 </a> 669 <a href="/fr/nw/1722424/971531/les-jeux-du-parcours-sante-sont-installes-dans-le-verger"> 670 <p class="card-text">à vos baskets !!!</p> 671 </a> 672 </div> 673 </div> 674 </div> 675 </div> 676 677 <div class="pagination"> 678 <a class="active item current" 679 href="/fr/nw/1722424/actualites-1186/1"> <strong>1</strong></a> 680 <a class=" item current" 681 href="/fr/nw/1722424/actualites-1186/2">-2</a> 682 </div> 683 </div> 684 685 686 687 </div> 688 </div> 689 </section> 690 691 </div> 692 </main> 693 694 <div id="previewModalImage" class="modal"> 695 696 <!-- The Close Button -->
697 <span id="closePreviewImage" class="close">×</span> 698 699 <!-- Navigation Buttons --> 700 <a id="prevImage" class="modal-nav prev" href="javascript:void(0)">❮</a> 701 <a id="nextImage" class="modal-nav next" href="javascript:void(0)">❯</a> 702 703 <!-- Image Counter --> 704 <div id="imageCounter" class="image-counter"></div> 705 706 <!-- Modal Content (The Image) --> 707 <div id="containerPreviewImage"><img role="img" class="modal-content" alt=""></div> 708 709 <!-- Modal Caption (Image Text) --> 710 <div id="captionPreviewImage"></div> 711 </div> 712 713
713<script> 714 (function() { 715 // Get the modal elements 716 const modal = document.getElementById('previewModalImage'); 717 const modalImg = modal.querySelector('img'); 718 const captionText = document.getElementById('captionPreviewImage'); 719 const closePreviewImage = document.getElementById('closePreviewImage'); 720 const prevBtn = document.getElementById('prevImage'); 721 const nextBtn = document.getElementById('nextImage'); 722 const imageCounter = document.getElementById('imageCounter'); 723 724 let currentImages = []; 725 let currentIndex = 0; 726 727 // Helper function to check if element is visible 728 function isVisible(element) { 729 return element && element.offsetParent !== null; 730 } 731 732 // Helper function to toggle element visibility 733 function toggleElement(element, show) { 734 if (element) { 735 element.style.display = show ? 'block' : 'none'; 736 } 737 } 738 739 // Function to update the modal with a specific image 740 function updateModal(index) { 741 if (currentImages.length === 0) return; 742 743 currentIndex = index; 744 const img = currentImages[currentIndex]; 745 modalImg.setAttribute('src', img.src); 746 modalImg.setAttribute('alt', img.alt || ''); 747 captionText.innerHTML = img.alt || ''; 748 749 // Update counter 750 imageCounter.textContent = (currentIndex + 1) + ' / ' + currentImages.length; 751 752 // Show/hide navigation buttons 753 const showNav = currentImages.length > 1; 754 toggleElement(prevBtn, showNav); 755 toggleElement(nextBtn, showNav); 756 toggleElement(imageCounter, showNav); 757 } 758 759 // Function to show next image 760 function showNext() { 761 if (currentImages.length === 0) return; 762 currentIndex = (currentIndex + 1) % currentImages.length; 763 updateModal(currentIndex); 764 } 765 766 // Function to show previous image 767 function showPrev() { 768 if (currentImages.length === 0) return; 769 currentIndex = (currentIndex - 1 + currentImages.length) % currentImages.length; 770 updateModal(currentIndex); 771 } 772 773 // Helper function to find closest ancestor with class 774 function closest(element, selector) { 775 if (!element) return null; 776 777 // For class selector (e.g., '.splide__slide') 778 if (selector.startsWith('.')) { 779 const className = selector.slice(1); 780 let current = element; 781 while (current && current !== document) { 782 if (current.classList && current.classList.contains(className)) { 783 return current; 784 } 785 current = current.parentElement; 786 } 787 } 788 return null; 789 } 790 791 // When clicking on an image 792 document.addEventListener('click', function(e) { 793 const target = e.target; 794 // Check if clicked element is an image with class .img or .main-img inside .splide 795 if (target.tagName === 'IMG' && 796 (target.classList.contains('img') || target.classList.contains('main-img')) && 797 closest(target, '.splide')) { 798 799 // Find the clicked image's parent slide 800 const clickedSlide = closest(target, '.splide__slide'); 801 if (!clickedSlide) return; 802 803 // Find the list that contains this slide 804 const splideList = closest(clickedSlide, '.splide__list'); 805 if (!splideList) return; 806 807 // Get all slides from this specific list 808 const allSlides = splideList.querySelectorAll('.splide__slide'); 809 810 // Get all images from these slides only, deduplicating by src 811 // (Splide duplicates slides in loop mode, so we need to filter duplicates) 812 currentImages = []; 813 const seenSrcs = new Set(); 814 const clickedSrc = target.src; 815
816 allSlides.forEach(function(slide) { 817 const slideImg = slide.querySelector('.img, .main-img'); 818 if (slideImg) { 819 const imgSrc = slideImg.src; 820 // Only add if we haven't seen this src before 821 if (!seenSrcs.has(imgSrc)) { 822 seenSrcs.add(imgSrc); 823 currentImages.push(slideImg); 824 } 825 } 826 }); 827 828 // Find the index of the clicked image by src (to handle duplicates) 829 currentIndex = currentImages.findIndex(function(img) { 830 return img.src === clickedSrc; 831 }); 832 833 if (currentIndex === -1) { 834 currentIndex = 0; // Fallback to first image 835 } 836 837 // Update and show modal 838 updateModal(currentIndex); 839 modal.style.display = 'block'; 840 } 841 }); 842 843 // Navigation button handlers 844 if (nextBtn) { 845 nextBtn.addEventListener('click', function (e) { 846 e.preventDefault(); 847 e.stopPropagation(); 848 showNext(); 849 }); 850 } 851 852 if (prevBtn) { 853 prevBtn.addEventListener('click', function (e) { 854 e.preventDefault(); 855 e.stopPropagation(); 856 showPrev(); 857 }); 858 } 859 860 // Keyboard navigation 861 document.addEventListener('keydown', function (e) { 862 // Check if modal is visible by checking display style 863 const isModalVisible = modal.style.display !== 'none' && 864 (modal.style.display === 'block' || 865 window.getComputedStyle(modal).display !== 'none'); 866 867 if (isModalVisible) { 868 if (e.key === 'ArrowRight' || e.keyCode === 39) { 869 e.preventDefault(); 870 showNext(); 871 } else if (e.key === 'ArrowLeft' || e.keyCode === 37) { 872 e.preventDefault(); 873 showPrev(); 874 } else if (e.key === 'Escape' || e.keyCode === 27) { 875 e.preventDefault(); 876 e.stopPropagation(); 877 modal.style.display = 'none'; 878 } 879 } 880 }); 881 882 // When the user clicks on <span> (x), close the modal 883 if (closePreviewImage) { 884 closePreviewImage.addEventListener('click', function () { 885 modal.style.display = 'none'; 886 }); 887 } 888 889 // Close modal when clicking outside the image 890 modal.addEventListener('click', function (e) { 891 if (e.target === modal) { 892 modal.style.display = 'none'; 893 } 894 }); 895 })(); 896 </script>
896 897 898 899 900 901 <!-- Footer --> 902<footer role="contentinfo" class="footer bg footer1"> 903 <div class="ov"></div> 904 <div class="container d-flex flex-wrap justify-content-between"> 905 <div class="footer-container"> 906 <h2 class="title light c_title d_title btn-line"><a 907 href="/fr/ct/1722346/contacts-1074">Contacts</a></h2> 908<div class="footer-box"> 909 <div class="contact c_text"> 910 <p class="font-weight-bold mb-0" aria-label="Nom du structure">Commune de Villainville</p> 911 <p class="mb-0" aria-label="adresse">704, route d'Ãtretat</p> 912 <p class="mb-0" aria-label="adresse 2">76280 Villainville - FRANCE</p> 913 <p class="mb-0"><a href="tel:+33235298559" title="Numéro de téléphone">+33 2 35 29 85 59</a></p> 914 <p class="mb-0"><a style="display:initial;" class="btn-line footer-btn light c_btn" href="#" data-toggle="modal" data-target="#contactFormContactFooter" aria-label="Afficher le formulaire">Contact par formulaire</a> 915 </p> 916 917 <div class="mt-4"> 918 <p style="margin:0;"><strong>HORAIRES</strong></p> 919 <p><strong><span style="color:#f39c12">Accueil public par la secrétaire de mairie:</span></strong><br /> 920Lundi:9h00-12h/13h30-16h00<br /> 921Mardi:9h00-12h/13h30-16h00<br /> 922Jeudi:9h00-12h<br /> 923<br /> 924<strong><span style="color:#f39c12">Accueil public avec Monsieur le Maire ou adjoint:</span></strong><br /> 925les samedis de 9h30 à 11h00.<br /> 926<br /> 927Pour les dépôts de dossiers d’urbanisme, location de salle, état civil, recensement citoyen, RDV avec Monsieur le Maire ou adjoints...<br /> 928<br /> 929Pour prendre rendez-vous, vous devez contacter la mairie de Villainville par courriel à : [email protected]</p> 930 </div> 931 </div> 932 933 934</div> 935 936 937 938 <div class="social-media"> 939 <ul class="c_text"> 940 </ul> 941</div> 942 943 944 </div> 945 946 947 </div> 948 <div class="container d-flex flex-wrap position-relative c_text"> 949 <p class="mr-2 c_text"><a href="/fr/li/1722385/mentions-legales-1238">Mentions légales</a> 950</p> - 951 <p class="mr-2 ml-2 c_text"><a href="/fr/1722385/politique-confidentialite">Politique de confidentialité</a> 952</p> - 953 <p class="mr-2 ml-2 c_text"><a href="/fr/accessibilite">Accessibilité</a> 954</p> - 955 956 <p class="mr-2 ml-2 c_text"> 957 <a href="/fr/sm/71622/plan-du-site-1"> 958 Plan du site</a></p>- 959 <p class="ml-2 c_text"><a href="#tarteaucitron">Gestion des cookies</a></p> 960 </div> 961</footer> 962 963<div class="modal fade" id="contactFormContactFooter" tabindex="-1" role="dialog" aria-labelledby="modalFooter-label" aria-hidden="true" 964 style="color:initial;-webkit-transform: translateZ(0);transform: translateZ(0);"> 965 <div class="modal-dialog" role="document"> 966 <div class="modal-content"> 967 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 968 <span aria-hidden="true">×</span> 969 </button> 970 971 <div class="modal-header bg_bloc"> 972 <h4 id="modalFooter-label" class="modal-title font-weight-bold dark text_bloc">Contact Mairie</h4> 973 </div> 974 <form id="contactFormFooter" action="/formMdContact" method="post" 975 novalidate enctype="multipart/form-data"> 976 <div class="modal-body pb-0"> 977 978 <div class="field-wrapper"><p class="title">Contact Mairie</p></div> <div class="field-wrapper"> 979 <div><label class="control-label generalLabel font-weight-bold mr-1">Destinataire de votre message <span 980 class="cursor-pointer" data-toggle="popover" data-content="Sélectionnez"><i 981 class="material-icons align-top">info_outline</i></span> </label><span>*</span></div> 982 983 <div class="form-check d-block"> 984 <label class="form-check-label"><input class="form-check-input" type="checkbox" name="2_check_list[]" value="Karine Ramain- Maire">Karine Ramain- Maire<span 985 class="form-check-sign"><span class="check"></span></span></label> 986 </div> 987 <div class="form-check d-block"> 988 <label class="form-check-label"><input class="form-check-input" type="checkbox" name="2_check_list[]" value="Agnès Lenormand- 1ère adjointe">Agnès Lenormand- 1ère adjointe<span 989 class="form-check-sign"><span class="check"></span></span></label> 990 </div> 991 <div class="form-check d-block"> 992 <label class="form-check-label"><input class="form-check-input" type="checkbox" name="2_check_list[]" value="Secretariat de mairie ">Secretariat de mairie <span 993 class="form-check-sign"><span class="check"></span></span></label> 994 </div>
995 <span class="form-error requirements" id="2_check_list-error" role="alert">Ce champ est obligatoire</span> 996</div> <div class="form-group"> 997 <div><label for="3_email">Votre adresse e-mail</label><span>*</span></div> 998 <input type="email" name="3_email" class="form-control" id="3_email" 999 aria-label="Votre adresse e-mail"> 1000 <span class="help-message cursor-pointer" data-toggle="popover" data-content="Veuillez"><i 1001 class="material-icons">info_outline</i></span> <span class="form-error requirements" id="3_email-error" role="alert">Ce champ est obligatoire</span> 1002</div> 1003 <div class="form-group"> 1004 <div><label for="4_date" id="4_dateLabel">Date</label><span>*</span></div> 1005 <div class="d-flex align-items-end"> 1006 <div class="col-10 col-md-5 mr-3 px-0"> 1007 <input type="date" name="4_date" class="form-control" id="4_date" aria-describedby="4_dateLabel" placeholder="Date"> 1008 <span class="help-message"><i class="material-icons notranslate">date_range</i></span> 1009 </div> 1010 <div data-toggle="popover" data-content=""> 1011 </div> 1012 </div> 1013 <span class="form-error requirements" id="4_date-error" role="alert">Ce champ est obligatoire</span> 1014</div> 1015 <div class="form-group"> 1016 <div><label for="5_textarea">Nom</label><span></span> 1017 </div> 1018 <textarea name="5_textarea" class="form-control pl-0" id="5_textarea" rows="3"></textarea> 1019 <span class="form-error requirements" id="5_textarea-error" role="alert">Ce champ est obligatoire</span> 1020</div> 1021 <div class="form-group"> 1022 <div class="h-recaptcha m-auto d-inline-block"></div> 1023 <div class="form-error requirements" id="h-captcha-response-error" role="alert">Ce champ est obligatoire 1024 </div> 1025</div> </div> 1026 <div class="modal-footer"> 1027 <button id="formContactForm" type="submit" class="btn bg_btn c_btn formContactForm" aria-label="Envoyer">ENVOYER</button> 1028 </div> 1029 <div class="m-3"> 1030 Les informations recueillies à partir de ce formulaire sont nécessaires à la gestion de votre demande par notre Structure qui est responsable du traitement de vos données personnelles collectées.<br /> 1031Vos donn<span style="color:null"><span style="background-color:null">ées personnelles reçues sont conservées par notre Structure pendant toute la durée nécessaire au traitement de votre demande ou bien pour une durée de […….] mois maximum à compter du dernier contact. Dans la limite de leurs attributions respectives, sont destinataires de tout ou partie des données les services et représentants de notre Structure en charge des réponses aux demandes émises via ce formulaire. Aucun transfert de vos données hors de l'Union européenne n'est réalisé. </span><br /> 1032<span style="background-color:null">Vous pouvez à tout moment demander l’accès, la rectification, l’effacement, la portabilité ou la limitation de vos données, ou bien vous opposer à leur traitement, en contactant le Délégué à la Protection des Données de notre structure : </span><br /> 1033<span style="background-color:null">- Par voie électronique à l’adresse : […….] ; </span><br /> 1034<span style="background-color:null">- Par voie postale à l’attention du Délégué à la Protection des Données et à l’adresse suivante : […….]. </span><br /> 1035<span style="background-color:null">Si vous estimez, après nous avoir contactés, que vos droits sur vos données personnelles ne sont pas respectés, vous pou</span></span>vez adresser une réclamation à la CNIL. 1036 </div> 1037 </form> 1038 1039 <div id="messageSendedFormContactFooter" class="form-message-sent" style="display: none"> 1040 <p role="status">Le message a bien été envoyé à son destinataire. Merci.</p> 1041 </div> 1042 </div> 1043 </div> 1044</div> 1045 1046 <div class="footer-bottom" style="position: relative;"> 1047 <div class="container"> 1048 <p> 1049 <a href="https://reseaudescommunes.fr/?utm_source=rdcclients&utm_medium=footerlink" target="_blank"> 1050 <img role="img" src="/images/rdc-logo-footer-2.png" alt="logo Réseau des Communes" class="img-fluid">
1051 Site créé en partenariat avec Réseau des Communes 1052 </a> 1053 </p> 1054 </div> 1055</div> 1056 <div class="modal fade pdfModal" id="pdfModal" tabindex="-1" role="dialog" aria-label="Prévisualisation du PDF" aria-hidden="true"> 1057 <div class="modal-dialog" role="document"> 1058 <div class="modal-content"> 1059 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1060 <span aria-hidden="true">×</span> 1061 </button> 1062 1063 <embed type="application/pdf"> 1064 </div> 1065 </div> 1066</div> 1067 1068 1069
1069<script src="/js/vendor/popper.min.js"></script>
1069 1070
1070<script src="/js/vendor/bootstrap.min.js"></script>
1070 1071 1072 <!-- Carousel --> 1073
1073<script src='/dist/owlcarousel/js/owl.carousel.min.js'></script>
1073 1074
1074<script src='/dist/owlcarousel/js/owl.linked.js'></script>
1074 1075 1076
1076<script src="/lib/splide-4.0.1/js/splide.min.js"></script>
1076 1077
1077<script src="/lib/splide-4.0.1/extensions/autoscroll/js/splide-extension-auto-scroll.min.js"></script>
1077 1078 1079
1079<script src='/dist/slick/slick.js'></script>
1079 1080
1080<script src='/dist/scrollbar/jquery.scrollbar.min.js'></script>
1080 1081 1082
1082<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.2/js/bootstrap-select.min.js"></script>
1082 1083 1084
1084<script src='/dist/pagination.min.js'></script>
1084 1085 1086
1086<script src="/js/shared.js?v1"></script>
1086 1087
1087<script src="/tpl/1/js/main.js"></script>
1087 1088
1088<script src="/lib/chartjs/Chart.js"></script>
1088 1089
1089<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-multiselect/0.9.13/js/bootstrap-multiselect.js"></script>
1089 1090 1091
1091<script type="text/javascript"> 1092 1093 tarteaucitron.user.matomoId = 6; 1094 (tarteaucitron.job = tarteaucitron.job || []).push('matomohightrack'); 1095 1096 1097 (tarteaucitron.job = tarteaucitron.job || []).push('youtube'); 1098 (tarteaucitron.job = tarteaucitron.job || []).push('dailymotion'); 1099 (tarteaucitron.job = tarteaucitron.job || []).push('vimeo'); 1100 (tarteaucitron.job = tarteaucitron.job || []).push('othervideo'); 1101 1102 tarteaucitron.user.googleTranslateCallback = function () { 1103 new google.translate.TranslateElement({pageLanguage: 'fr'}, 'google_translate'); 1104 }; 1105 (tarteaucitron.job = tarteaucitron.job || []).push('googletranslate'); 1106 </script>
1106 1107 1108 1109
1109<script type="text/javascript"> 1110 $(document).ready(function () { 1111 }); 1112 1113 </script>
1113 1114 1115 1116
1116<script> 1117 (function (i, s, o, g, r, a, m) { 1118 i['InstanaEumObject'] = r; 1119 i[r] = i[r] || function () { 1120 (i[r].q = i[r].q || []).push(arguments) 1121 }, i[r].l = 1 * new Date(); 1122 a = s.createElement(o), 1123 m = s.getElementsByTagName(o)[0]; 1124 a.async = 1; 1125 a.src = g; 1126 m.parentNode.insertBefore(a, m) 1127 })(window, document, 'script', '//eum.instana.io/eum.min.js', 'ineum'); 1128 ineum('reportingUrl', 'https://eum-eu-west-1.instana.io'); 1129 ineum('apiKey', '9yG9cnlKTcS4le-zMVtBJA'); 1130 1131 // set the name of a page on which this load/errors/calls happened 1132 ineum('page', 'front-site'); 1133 </script>
1133 1134 1135 1136
1136<script src="https://js.hcaptcha.com/1/api.js?hl=fr&onload=CaptchaCallback&render=explicit" async defer></script>
1136 1137 1138
1138<script type="text/javascript"> 1139 var CaptchaCallback = function () { 1140 $('.h-recaptcha').each(function (index, el) { 1141 hcaptcha.render(el, {'sitekey': 'f5095cfb-139b-47da-88e2-f0d2e7485392'}); 1142 }); 1143 }; 1144 1145 var originalStyle = false; 1146 1147 $(window).on('shown.bs.modal', function () { 1148 originalStyle = $('body').attr('style'); 1149 1150 $('body').attr('style', ''); 1151 }); 1152 1153 $(window).on('hidden.bs.modal', function () { 1154 $('body').attr('style', originalStyle); 1155 1156 }); 1157 1158 </script>
1158 1159 1160
1160<script> 1161 $(document).ready(function () { 1162 1163 $('.selectpicker').selectpicker(); 1164 1165 var input = $('input[type=file]'); 1166 1167 input.on('change', function () { 1168 var list = $(this).parent().parent().parent().parent().find($('.listFiles')); 1169 list.empty(); 1170 1171 for (var x = 0; x < this.files.length; x++) { 1172 var newFile = '<li>Fichier joint : ' + this.files[x].name + ' (' + humanFileSize(this.files[x].size) + ')</li>'; 1173// li.innerHTML = 'File ' + (x + 1) + ': ' + input.files[x].name; 1174 list.append(newFile); 1175 } 1176 }); 1177 1178 $('.form-error').hide(); 1179 $('#contactFormFooter').submit(function (e) { 1180 let form = $(this); 1181 1182 $.ajax({ 1183 type: "POST", 1184 url: form.attr('action'), 1185 data: new FormData(form[0]), 1186 contentType: false, 1187 processData: false, 1188 beforeSend: function () { 1189 form.find('.form-error').hide(); 1190 $('.formContactForm').attr('disabled', true); 1191 }, 1192 success: function (response) { 1193 hcaptcha.reset(); 1194 1195 if (response.status === 'KO') { 1196 let errors = response.errors; 1197 for (let index in errors) { 1198 if (errors.hasOwnProperty(index)) { 1199 let attr = errors[index]; 1200 let error = attr[Object.keys(attr)[0]]; 1201 form.find('#' + index + '-error').text(error).show(); 1202 } 1203 } 1204 } else { 1205 1206 $('#contactFormFooter').css('display', 'none'); 1207 $('#messageSendedFormContactFooter').css('display', ''); 1208 form[0].reset(); 1209 } 1210 }, 1211 complete: function () { 1212 1213 $('.formContactForm').removeAttr('disabled'); 1214 } 1215 }); 1216 1217 return false; 1218 }); 1219 1220 $('#contactFormContactFooter').on('hidden.bs.modal', function () { 1221 $('#contactFormFooter')[0].reset(); 1222 1223 $('#contactFormFooter').css('display', ''); 1224 1225 $('#messageSendedFormContactFooter').css('display', 'none'); 1226 1227 $('.form-error').hide(); 1228 1229 $('.listFiles').empty(); 1230 1231 hcaptcha.reset(); 1232 }); 1233 1234 1235 }); 1236 1237 function humanFileSize(size) { 1238 var i = Math.floor(Math.log(size) / Math.log(1024)); 1239 return (size / Math.pow(1024, i)).toFixed(1) * 1 + ' ' + ['B', 'kB', 'MB', 'GB', 'TB'][i]; 1240 } 1241 </script>
1241 1242 1243
1243<script> 1244 $(function () { 1245 1246 1247 var numberAlerts = false; 1248 1249 var allAlerts = $('#alertsModal').find($('.alertsInfo')); 1250 1251 numberAlerts = allAlerts.length; 1252 1253 allAlerts.each(function (e) { 1254 1255 if (!sessionStorage.getItem("_nps_cookie_accept_alerts" + $(this).attr('data-id') + "")) { 1256 $('#alertsModal').modal('show'); 1257 } else { 1258 $(this).remove(); 1259 numberAlerts = numberAlerts - 1; 1260 setActiveAndDecrementNumber(); 1261 } 1262 1263 }); 1264 1265 $('.acceptCookiesAlerts').on('click', function (e) { 1266 e.preventDefault(); 1267 1268 var currentDataId = $(this).attr('data-id'); 1269 1270 sessionStorage.setItem('_nps_cookie_accept_alerts' + currentDataId + '', '1'); 1271 1272 numberAlerts = numberAlerts - 1; 1273 1274 var currentParentNode = $(this).parent().parent().parent(); 1275 1276 currentParentNode.removeClass('active'); 1277 currentParentNode.remove(); 1278
1279 setActiveAndDecrementNumber(); 1280 1281 }); 1282 1283 function setActiveAndDecrementNumber() { 1284 var newListOfAlerts = $('#alertsModal').find($('.alertsInfo')); 1285 1286 newListOfAlerts.each(function (index, e) { 1287 if (index == 0) { 1288 $(this).addClass('active'); 1289 } 1290 }); 1291 1292 if (numberAlerts == 0) { 1293 $('#alertsModal').modal('hide'); 1294 } 1295 } 1296 1297 var currentColorControl = '#212529'; 1298 1299 $('#controlPrev').css('color', 'initial !important'); 1300 $('#controlNext').css('color', 'initial !important'); 1301 1302 $('#controlPrev').on('mouseover', function () { 1303 1304 $(this).css('color', 'initial !important'); 1305 }); 1306 1307 $('#controlNext').on('mouseover', function () { 1308 1309 $(this).css('color', 'initial !important'); 1310 }); 1311 1312 }); 1313 </script>
1313 1314 </body> 1315</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.