1<!DOCTYPE html> 2<!--[if lt IE 7 ]> <html class="ie6" lang="de"> <![endif]--> 3<!--[if IE 7 ]> <html class="ie7" lang="de"> <![endif]--> 4<!--[if IE 8 ]> <html class="ie8" lang="de"> <![endif]--> 5<!--[if IE 9 ]> <html class="ie9" lang="de"> <![endif]--> 6<!--[if (gt IE 9)|!(IE)]><!--> <html lang="de" > <!--<![endif]--> 7 8 <head><base href="https://volleyfuture-shop.de/epages/66f90a08-ccd6-42a3-93a5-7d2af625cfe7.sf/de_DE/" /> 9 10<title>Anmelden - Volleyball Shop</title> 11 12<meta name="viewport" content="width=device-width, initial-scale=1" /> 13 14<meta http-equiv="X-UA-Compatible" content="IE=Edge" /> 15 16 17 18 19 20 <meta charset="utf-8" /> 21 22 23
24<script type="text/javascript"> 25(function() { 26 var dispatchTrackEvent = function(name, data) { 27 const detail = data ? deepFreeze(data) : undefined; 28 window.eComEventTarget.dispatchEvent(new CustomEvent(name, { detail: detail })); 29 }, 30 deepFreeze = function(obj) { 31 // fetch property keys 32 const propKeys = Object.getOwnPropertyNames(obj); 33 34 // recursively freeze all properties 35 propKeys.forEach(function(key) { 36 const propValue = obj[key]; 37 38 if (propValue && typeof propValue === 'object'){ 39 deepFreeze(propValue); 40 } 41 }); 42 43 return Object.freeze(obj) 44 }; 45 46 // register eComEventTarget 47 try { 48 window.eComEventTarget = new EventTarget(); 49 } catch (err) { 50 // in Edge and Safari EventTarget is no constructor 51 window.eComEventTarget = document.createElement('aside'); 52 } 53 54 // global needed methods and properties for the eComEventObject 55 window.eComEventController = { 56 track: function(name, detail) { 57 if (typeof window !== 'object' || !window.eComEventTarget) return; 58 59 if (document.readyState === 'complete') { 60 dispatchTrackEvent(name, detail); 61 } else { 62 window.addEventListener('load', function() { 63 dispatchTrackEvent(name, detail); 64 }); 65 } 66 } 67 }; 68 69})(); 70</script>
70 71
72<script type="text/javascript" src="https://volleyfuture-shop.de/epages/66f90a08-ccd6-42a3-93a5-7d2af625cfe7.sf/de_DE/?ViewAction=SF-ViewJQueryConfig&ObjectID=6818230&CurrencyID=EUR&CacheName=Store26-7.120.0-0"></script>
72 73 74
75<script type="text/javascript"> 76 77(function(require){ 78 79function config(a,b){config._(config.c[a]||(config.c[a]={}),b)}config.c=require.config=require.config||{};config._=function(a,b){for(var c in b)b[c]instanceof Object?config._(a[c]||(a[c]={}),b[c]):a[c]=b[c]}; 80 81 82config("jquery/canvas/canvastext", { 83 fontRoot: ["", "WebRoot", "Store26", "542D", "0C8A", "3ED5", "B9A6", "7BAE", "0A48", "356F", "C3C7"].join("/") 84}); 85 86config("ep", { 87 baseUrl: ["https\u003A", "", "volleyfuture-shop\u002Ede", "epages", "66f90a08-ccd6-42a3-93a5-7d2af625cfe7\u002Esf", "de_DE", ""].join("/"), 88 89 objectId: '6818230', 90 viewAction: 'UnityViewRegistrationRedirect', 91 storeFrontUrl: ["https\u003A", "", "volleyfuture-shop\u002Ede"].join("/"), 92 requestProtocolAndServer: 'https\u003A\u002F\u002Fvolleyfuture-shop\u002Ede', 93 94 95 webUrj: ["http\u003A", "", "volleyfuture-shop\u002Ede"].join("/"), 96 webUrlSsl: ["https\u003A", "", "volleyfuture-shop\u002Ede"].join("/"), 97 98 google: { 99 100 } 101}); 102 103}(require)); 104</script>
104 105 106<link type="text/css" href="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/lib-min/package-sf.css" rel="stylesheet" /> 107
108<script type="text/javascript" src="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/lib-min/package-sf.js"></script>
108 109 110 111
112<script type="text/javascript"> 113 var jq = jQuery.noConflict(); 114</script>
vendor: 1 bytes, line 114
114
115<script type="text/javascript"> 116 require(["jquery/metaparse", "de_epages/design/inc/sf-initialize"]); 117 118 119 120 require(["ep/inject-sec-token"], function (ep) { 121 ep.injectSecToken(); 122 }); 123 124 125 require([ 126 "jquery", 127 "ep/accessibility-fallback", 128 129 "$ready!" 130 ], function ($, accessibilityFallback) { 131 // images 132 accessibilityFallback.fixAltAttributes(); 133 // areas 134 accessibilityFallback.fixAltAttributes({ 135 tag: 'area', 136 fallback: 'href' 137 }); 138 // areas 139 accessibilityFallback.fixAltAttributes({ 140 tag: 'input[type="image"]', 141 fallback: 'src' 142 }); 143 144 $('.skip-link').on('click.onSkipLink keydown.onSkipLink', function (e) { 145 // do nothing if key was pressed and another key than ENTER or SPACE was used 146 if (e && e.keyCode && !(e.keyCode === 13 || e.keyCode === 32)) { 147 return true; 148 } 149 150 $('#main-content').trigger('focus'); 151 }); 152 153 // fallback for `tabindex` 154 accessibilityFallback.tabIndexFallback({ 155 selectors: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', '.ep-uiThumbbox li', '.ep-coverflow-item', '.ep-contentbox-item'] 156 }); 157 158 // fallback for `aria-live` 159 accessibilityFallback.ariaLiveFallback({ 160 selectors: ['.ui-tabs-panel', '#RemoteSearchResults'], 161 value: 'polite' 162 }); 163 164 // fallback for table header rows (for exceptions add class or ID strings without "." or "#") 165 accessibilityFallback.tableHeaderFallback({ 166 exceptions: ['PagerTablePages', '.VariationsTable table'] 167 }); 168 169 // fallback for `tooltips` 170 accessibilityFallback.fixTooltip({ 171 selectors: ['i.HelpIcon'] 172 }); 173 }); 174 175 176 177</script>
vendor: 1 bytes, line 177
177
178<script type="text/javascript"> 179window.offscreenBuffering = true; 180</script>
180 181
182<script src="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/SF/vilkascontentelement.swiper.min.js" type="text/javascript"></script>
182 183<link href="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/SF/vilkascontentelement.swiper.min.css" rel="stylesheet" type="text/css"></link>
184<script src="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/SF/vilkascontentelement.video.js?cacheversion=#System.VilkasBaseVersion" type="text/javascript" defer="defer"></script>
184 185 186 187 188 <!-- Universal Analytics start -->
189<script type="text/javascript"> 190 // Disable tracking if the opt-out cookie exists. 191 var disableStr = 'ga-disable-UA-84918925-1'; 192 if (document.cookie.indexOf(disableStr + '=true') > -1) { 193 window[disableStr] = true; 194 } 195 196 // Opt-out function 197 function gaOptout() { 198 document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/'; 199 window[disableStr] = true; 200 } 201 202 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 203 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 204 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 205 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 206 207 var epUAConfig = 'auto'; 208 209 210 211 ga('create', 'UA-84918925-1', epUAConfig); 212 213 ga('set', 'anonymizeIp', true); 214</script>
214 215 216<!-- Universal Analytics end --> 217 218 219 220 221 222 <meta property="og:image" content="https://volleyfuture-shop.dehttps://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/SF/Icon/plain.gif"/> 223 <meta property="og:image:alt" content="Volleyball Shop"/> 224 <meta property="og:title" content="Volleyball Shop" /> 225 <meta property="og:type" content="website" /> 226 227 <meta property="og:description" content=""/> 228 229 230 231<link rel="shortcut icon" type="image/x-icon" href="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/favicon.ico" /> 232 233 234 <link href="/WebRoot/Store26/Shops/66f90a08-ccd6-42a3-93a5-7d2af625cfe7/Styles/MyDesign/OrderProcessStyle_41.css" rel="stylesheet" type="text/css" /> 235 236 237 238 239 <link href="https://volleyfuture-shop.de/themes/epages.essence/stylesheets/classic-ep6.css" rel="stylesheet" type="text/css" /> 240 241 242 243 244 245 <!--[if IE]> 246 <link href="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/lib/de_epages/design/style-ie.css" rel="stylesheet" type="text/css" /> 247 <![endif]--> 248 <style type="text/css"> 249 /* if IE 10 */ 250 @import url('https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/lib/de_epages/design/style-ie.css') screen and (-ms-high-contrast: active), (-ms-high-contrast: none); 251 </style> 252 253 254 255 256 257 258 259 260 261 262 263<style> 264.TestShopAlert { 265 display: none ; 266} 267</style> 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302</head> 303 304 <head> 305 <meta name="robots" content="noindex,noarchive,nofollow" /> 306</head> 307<body class="ep-now"> 308 <div class="MultipleStep-Container ep-customer-area"> 309 <div class="Header"> 310 311 312 313 314 315 316 317 318 319 <h1 class="ShopName"><a href="https://volleyfuture-shop.de/de" title="Volleyball Shop">Volleyball Shop</a></h1> 320 321 322 323 324 325 <div class="header-right"> 326 327 <div class="Continue"> 328 <a href="https://volleyfuture-shop.de/de" class="ep-customer-area-back-link" title="Zurück zur Startseite">Zurück zur Startseite</a> 329</div> 330<div class="header-account"> 331 <a href="?ViewAction=UnityViewMyAccount" class="CursorPointer" id="ep-customer-area-menu-link"> 332 <span class="header-account-icon"></span> 333 </a> 334</div> 335 336 337 <div class="header-minicart"> 338 <a href="/de/cart" class="header-minicart-checkout"> 339 <span class="header-minicart-icon"></span> 340 <span class="header-minicart-badge">0</span> 341 </a> 342</div> 343 344 345</div> 346 347 348 349 350</div> 351 352 <div class="ContentArea ep-customer-area-login-container ep-contentBox-check"> 353 354 <div class="ep-crossroad ep-checkout-crossroad"> 355 356 <div class="ep-contentBox"> 357 358 359 <form id="UserLoginForm" class="ep-js ep-customer-area-login-form" data-js=".uiForm()" method="post" 360 361 action="?ViewAction=UnityViewMyAccount" 362 > 363 <input type="hidden" name="ChangeAction" value="SaveLoginForm" /> 364 <input type="hidden" name="RegistrationObjectID" value="6818230" /> 365 <input type="hidden" name="ErrorAction" value="UnityViewRegistrationRedirect" /> 366 <input type="hidden" name="ErrorObjectID" value="6818230" /> 367 <input type="hidden" name="Origin" value="Content" /> 368 369 370<div class="ep-login"> 371 <h2 class="">Anmelden</h2> 372 <p>Sie haben schon ein Konto? Melden Sie sich an, um fortzufahren.</p> 373 374 <div class="Dialog AddressDialog Reset NoMargin"> 375 <div class="SizeContainer BottomMarginWide"> 376 <div class="InputBlock"> 377 <div>E-Mail-Adresse</div> 378 <div> 379 <input class="Text ep-js" aria-required="true" aria-label="Erforderlich" data-js=".uiValidate({required:true,orientation:'bottom' })" name="Login" id="ep-checkout-loginname" type="text" value="" autocomplete="email" /> 380 </div> 381 </div> 382 <div class="InputBlock"> 383 <div>Kennwort</div> 384 <div> 385 <input class="Text ep-js" aria-required="true" aria-label="Erforderlich" data-js=".uiValidate({required:true,orientation:'bottom' })" name="Password" type="password" value="" autocomplete="current-password" /><br /> 386 </div> 387 </div> 388 </div> 389 <button type="submit" class="ep-js ep-loginButton ep-uiInput ep-uiInput-button" data-js=".uiInput({big:true})" name="Save" value="Anmelden" >Anmelden</button> 390 <div class="ep-lostPasswdLink AlignCenter TopMarginWide"> 391 <a class="Action" href="?ObjectPath=/Shops/66f90a08-ccd6-42a3-93a5-7d2af625cfe7&ViewAction=UnityViewLostPassword&LastViewAction=UnityViewRegistrationRedirect&LastViewObjectID=6818230" rel="nofollow" >Kennwort vergessen?</a> 392 </div> 393 </div> 394</div> 395 396 397 398 </form> 399</div> 400 401 <div class="ep-contentBox ep-customer-area-register-now"> 402 <h2>Neu bei Volleyball Shop?</h2><br/> 403 <p><i class="fa fa-check"></i> Bestellungen einsehen & Kontoinformationen verwalten</p> 404 <p><i class="fa fa-check"></i> Produkte zu einer Wunschliste hinzufügen</p> 405 <p><i class="fa fa-check"></i> Schnell & einfach ein kostenfreies Kundenkonto erstellen</p> 406 <a href="?ViewAction=UnityViewRegistration"> 407 <button type="submit" name="Register" class="PercentWidth75 ep-button ep-js ep-uiInput ep-uiInput-button" data-js=".uiInput({big:true})">Konto erstellen</button> 408 </a> 409</div> 410 411 412 </div> 413 414 415 </div> 416 417 <div class="ContentArea FooterText popupLinks"> 418 Bitte beachten Sie die Hinweise auf folgenden Seiten: <a rel="nofollow" name="CustomerInformation" href="https://volleyfuture-sh
418op.de/de/l/withdrawal" target="MyPopup">Widerrufsrecht</a>, <a rel="nofollow" name="PrivacyPolicy" href="https://volleyfuture-shop.de/de/l/privacy" target="MyPopup">Datenschutzerklärung</a>, <a rel="nofollow" name="Contact" href="https://volleyfuture-shop.de/de/l/contact" target="MyPopup">Impressum</a> und <a rel="nofollow" name="TermsAndConditions" href="https://volleyfuture-shop.de/de/l/tac" target="MyPopup" >AGB</a>. 419 </div> 420 421
422<script> 423require([ 424 "jquery", 425 426 "$ready!" 427 ], function ($) { 428 $('.popupLinks a').attr('target', '_blank'); 429 }); 430</script>
430 431 432
432<script type="text/javascript"> 433require(["jquery", "util/storage", "$ready!"], function ($, storage) { 434 // remove all selected products on logout 435 var $LogoutNodes = $('a[href*="ChangeAction=Logout"]'); 436 437 $LogoutNodes.each(function (event){ 438 $(this).on('click', function (event){ 439 storage.sessionStorage('Product::ProductComparison', null); 440 }); 441 }); 442}); 443</script>
443<script type="text/javascript"> 444require(['jquery', '$ready!'], function ($) { 445 446 var createGadgets = function(){ 447 448 // Constants. 449 var gNodeType = 'div', 450 gClassName = 'ep-gadget', 451 gDataName = gClassName, 452 gFolder = 'ui', 453 secondClickBtn = ['facebook', 'twitter', 'otherbuttons'], 454 $gNodes, 455 googleMapsAPIKey = false; 456 457 // Transform gadget imgs to divs 458 $('img.' + gClassName).each(function (i, elem) { 459 var $elem = $(elem), 460 tmplElement = $('<div/>'), 461 replaceElement = $elem.parent('p'); 462 463 // set/remove gadget-, class- and style-values/options 464 tmplElement 465 .data(gDataName, $elem.data(gDataName)) 466 .attr({ 467 'class': ($elem.attr('class') ? $elem.attr('class') : ''), 468 'style': ($elem.attr('style') ? $elem.attr('style').replace(/\s*?height:.*?;|\s*?background.*?:.*?;|\s*?display:.*?;|\s*?margin-bottom:.*?;|\s*?max-width:.*?;|\s*?width:.*?px;/g, '') : '') 469 }); 470 471 // if parent paragraph element only contains the gadget-element => replace paragraph and gadget-element by gadget-div 472 if (replaceElement.length && replaceElement.children().length === 1 && replaceElement.text().replace(/\s|\n|\r/g, '') === '') { 473 replaceElement.replaceWith(tmplElement); 474 // if parent paragraph element contains more content => replace only gadget-element by gadget-div 475 } else { 476 $elem.replaceWith(tmplElement); 477 } 478 }); 479 480 // Build gadgets in the gadget div 481 $gNodes = $(gNodeType + '.' + gClassName); 482 483 if ($gNodes.length) { 484 // Go go gadgets. 485 $gNodes.each(function () { 486 var $this = $(this), 487 data = $this.data(gDataName), 488 elem, 489 classButton = 'ep-2-click-button SocialWeb', 490 classButtonType; 491 492 data.options.googleMapsAPIKey = false; 493 if (data.options.type && data.options.type === "google") { 494 data.options.googleMapsAPIKey = googleMapsAPIKey; 495 } 496 497 // if no second click button is needed 498 if (secondClickBtn.indexOf(data.alias) === -1) { 499 require([['de_epages', data.cartridge, gFolder, data.alias].join('/')], function ($) { 500 $this[data.cartridge + gFolder.charAt(0).toUpperCase() + gFolder.slice(1) + data.alias.charAt(0).toUpperCase() + data.alias.slice(1)](data.options); 501 502 }); 503 } else { 504 // type of button (facebook, twitter ..) 505 classButtonType = 'ep-2-click-button-' + data.alias; 506 // add classes 507 $this.addClass(classButtonType + ' ' + classButton); 508 // add tooltip 509 $this.attr("title", "Aktivieren\u0020Sie\u0020mit\u0020einem\u0020Klick\u0020den\u0020Button\u002E\u0020Erst\u0020danach\u0020können\u0020Sie\u0020die\u0020Seite\u0020in\u0020den\u0020sozialen\u0020Netzwerken\u0020teilen\u002E\u0020Nach\u0020der\u0020Aktivierung\u0020werden\u0020Daten\u0020an\u0020Dritte\u0020übertragen\u002E"); 510 $this.attr("role", "button"); 511 $this.attr("aria-label", data.alias + " - Aktivieren\u0020Sie\u0020mit\u0020einem\u0020Klick\u0020den\u0020Button\u002E\u0020Erst\u0020danach\u0020können\u0020Sie\u0020die\u0020Seite\u0020in\u0020den\u0020sozialen\u0020Netzwerken\u0020teilen\u002E\u0020Nach\u0020der\u0020Aktivierung\u0020werden\u0020Daten\u0020an\u0020Dritte\u0020übertragen\u002E"); 512 513 // add span (contains the switch) 514 $this.html('<span></span>'); 515 516 // add click-handler for 2-click-button 517 $this.on('click.gadgetHandle keydown.gadgetHandle', function (evt) { 518 // do nothing if key was pressed and another key than ENTER or SPACE was used 519 if (evt.keyCode && !(evt.keyCode === 13 || evt.keyCode === 32)){ 520 return true; 521 } 522 523 evt.preventDefault(); 524 evt.stopPropagation(); 525 526 527 $this.off('click.gadgetHandle keydown.gadgetHandle'); 528 529 var _this = $(this), 530 data = $this.data(gDataName), 531 elem = $('<div />'); 532 533 elem[0].className = this.className; 534 elem.removeClass(classButtonType + ' ' + classButton); 535 536 require([['de_epages', data.cartridge, gFolder, data.alias].join('/')], function ($) { 537 // instantiate needed widget (facebook, twitter ...) 538 elem[data.cartridge + gFolder.charAt(0).toUpperCase() + gFolder.slice(1) + data.alias.charAt(0).toUpperCase() + data.alias.slice(1)](data.options); 539 540 541 542 // replace 2-click-button with widget-element 543 _this.replaceWith(elem); 544 }); 545 }); 546 } 547 548 }); 549 } 550 }; 551 552 createGadgets(); 553 $('body').on('updatepreview', createGadgets); 554 555}
555); 556</script>
556 557
558<script> 559require([ 560 'jquery', 561 'de_epages/product/inc/energylabel', 562 563 '$ready!' 564], function ($, energylabel) { 565 var energylabels = $('.energylabel-arrow'); 566 567 energylabel.init({items: energylabels}); 568 569 // re-initialize energy label modul after search results are loaded 570 $(document).on('facetssearch:loaded', function() { 571 energylabels = $('.energylabel-arrow'); 572 573 energylabel.init({items: energylabels}); 574 }); 575}); 576</script>
576 577 578 579 580 <link href="https://static.my-eshop.info/WebRoot/StoreTypes/7.120.0/StoreDE/lib/de_epages_consulting/passwordsecurity/passwordsecurity.css" type="text/css" rel="stylesheet" /> 581
581<script id='PasswordSecurityTemplate' type='text/x-jQuery-tmpl'> 582 <b>Kennwortstärke: </b><span id='PasswordSecurityLabel'></span> 583 <div id='PasswordSecurityBar'> 584 <div id='PasswordSecurityLevel'></div> 585 </div> 586 </script>
586 587
587<script type="text/javascript"> 588 require([ 589 'ep', 590 'jquery', 591 'de_epages_consulting/passwordsecurity/inc/passwordsecurity', 592 593 '$ready!' 594 ], function( ep, $, passwordsecurity ) { 595 var PasswordSecurity = ep('.PasswordSecurity'); 596 var DataJS = PasswordSecurity.attr('data-js'); 597 598 if (DataJS) { 599 PasswordSecurity.attr('data-js', '.uiInput()'); 600 601 if (DataJS.match(/.uiValidate\(/)) { 602 PasswordSecurity.attr('isPasswordValidated', 'true'); 603 } 604 } 605 606 var InputPasswordElement = $(".PasswordSecurity") ; 607 InputPasswordElement.each(function( index ) { 608 var passwordElement = $(this); 609 var NextElement = passwordElement.next(); 610 611 if ( NextElement.hasClass("HelpIcon") || NextElement.hasClass("BubbleHelp") ) { 612 NextElement.hide(); 613 } 614 615 passwordsecurity.init({ 616 LevelLabel : { 617 'Insecure' : 'Unsicher', 618 'Weak' : 'Schwach', 619 'Fair' : 'Angemessen', 620 'Good' : 'Gut', 621 'VeryGood' : 'Sehr\u0020Gut', 622 }, 623 BoxClass : 'PasswordSecurityBox', 624 TemplateElement : '#PasswordSecurityTemplate', 625 LabelElement : '#PasswordSecurityLabel', 626 LevelElement : '#PasswordSecurityLevel', 627 InputElement : passwordElement, 628 isInputValidated : (passwordElement.attr('isPasswordValidated') == 'true'), 629 Data : {"InsecureRule":{"width":"25%","color":"#FF0433","pattern":null,"level":"Insecure","valid":""},"SecurityRules":[{"width":"100%","color":"#03CF03","pattern":"^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[^a-zA-Z0-9]).{10,}$","level":"Good","valid":"1"},{"width":"70%","color":"#FFF133","pattern":"^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[^a-zA-Z0-9]).{7,}$","level":"Fair","valid":"1"},{"width":"40%","color":"#FF6D04","pattern":"^.{7,}$","level":"Weak","valid":""}],"MinLength":7,"InfoText":"{PasswordInfoMinLength}<br> {PasswordInfoRecommendedLength}<br> {PasswordInfoMustInclude}<br> <div class='PasswordSecurityInclude'> - {PasswordInfoAtLeast} {PasswordInfoIncludeUppercase}<br> - {PasswordInfoAtLeast} {PasswordInfoIncludeLowercase}<br> - {PasswordInfoAtLeast} {PasswordInfoIncludeDigits}<br> - {PasswordInfoAtLeast} {PasswordInfoIncludeSymbols}<br> </div>","GoodLength":10}, 630 isMobileView : 0 631 632 }); 633 }); 634 }); 635 </script>
635 636 637 638 639 640 641
642<script> 643 /* 644 * The script expects a *unique reference* to a node that is to be focused. This reference 645 * must be provided as a parameter when sending the previous page: 646 * - as hidden input: 647 * ``` 648 * <input name="FocusReference" value="UniqueNodeReference" /> 649 * ``` 650 * - as parameter in URL (GET): `...&FocusReference=UniqueNodeReference` 651 * 652 * The *unique reference* to the node that is to receive the focus again after reloading is 653 * assigned to the data attribute `data-focus-reference`: 654 * ``` 655 * <nodetag data-focus-reference='{"id": "UniqueNodeReference"}' /> 656 * ``` 657 * 658 * ============= 659 * 660 * The script also investigate on page load all nodes, that contain the attribute 661 * `data-focus-reference`. If the data focus reference object contains the 662 * property `auto`, an event is registered for the node. When the event is fired, 663 * it is ensured that a hidden input with the name `FocusReference` with the current 664 * reference as value is present. 665 * The data focus reference object can also have a property `event`. Here the 666 * event-triggering event can be specified. 667 * 668 * Example: 669 * ``` 670 * <nodetag data-focus-reference='{"id": "UniqueNodeReference", "auto": true, "event": "change.focusReference"}' /> 671 * ``` 672 */ 673 require([ 674 'jquery', 675 676 '$ready!' 677 ], function($) { 678 // get all nodes with attribute `data-focus-reference` 679 var $nodesList = $('[data-focus-reference]'), 680 $node, 681 preventScroll = false, 682 pagerIndices = []; 683 684 // get all pager nodes and add their index to pager array 685 if ($nodesList.length > 1) { 686 $nodesList.each(function(index, item) { 687 var $item = $(item), 688 data = $item.data('focusReference'); 689 690 if (data && data.type && data.type === 'pager') { 691 pagerIndices.push(index); 692 } 693 }); 694 } 695 696 $nodesList.each(function(index, item) { 697 var $item = $(item), 698 data = $item.data('focusReference'), 699 event = "click.focusReference keydown.focusReference", 700 $form, 701 $hiddenFocusReference; 702 703 if (data.auto && data.auto === true) { 704 705 event = data.event ? data.event : event; 706 707 $item.on(event, function(evt) { 708 // do nothing if key was pressed and another key than ENTER or SPACE was used 709 if (/keydown|keyup|keypressed/.test(event) && evt.keyCode && !(evt.keyCode === 13 || evt.keyCode === 32)) { 710 return true; 711 } 712 713 // get form 714 $form = $(item.form); 715 716 // if a form exists 717 if ($form.length){ 718 // get hidden input for focus reference 719 $hiddenFocusReference = $form.find('input[name=FocusReference]'); 720 721 // no hidden input for focus reference found 722 // => create hidden input and append to form 723 if ($hiddenFocusReference.length === 0) { 724 $hiddenFocusReference = $('<input type="hidden" name="FocusReference" />'); 725 $hiddenFocusReference.appendTo($form); 726 } 727
728 // add focus-reference-id of executing node as value 729 $hiddenFocusReference.val(data.id); 730 } 731 }); 732 } 733 }); 734 735 736}); 737</script>
737 738 739 740 741 742 743 744 745 746 747 748 749
749<script> 750require([ 751 'vendor/focus-visible', 752 753 '$ready!' 754], function(focusVisible) { 755 focusVisible(); 756}); 757</script>
757 758 759 760 761 762 763 </div> 764</body> 765 766 767</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.