1<!DOCTYPE html><html> 2<head> 3 <title>Inloggen bij NRC</title> 4 <meta charset="UTF-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><link rel="stylesheet" href="webjars.fontawesomemin.css"/><link type="text/css" rel="stylesheet" href="webjars.latomin.css"/><link rel="stylesheet" href="/themes/nrc-theme-default/css/nrc.css?v=2"/><link rel="icon" href="/favicon.ico" type="image/x-icon"/>
4<script type="text/javascript" src="/webjars/jquery/3.6.0/jquery.min.js"></script>
4 5<meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/></head> 6 7<body class="niet ingelogd"> 8<header class="band"> 9 <div class="account"> 10 <a href="/create?service=https://www.nrc.nl/login/"><p>Nog geen account? Maak nu aan</p></a> 11 </div> 12 13 <div class="branding"> 14 <a href="http://www.nrc.nl/"> 15 <!-- svg enable-background="new 0 0 76.4 20" version="1.1" viewBox="0 0 76.4 20" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" width="120" height="38"> 16 <path d="M0 17.7l1.7-.4V8.4L0 8V6l5.3-.6.4.2V7h.2c1.4-1 2.8-1.6 4.6-1.6 2.3 0 3.7 1 3.7 3.5v8.5l1.2.3v1.9H8.7v-1.9l1.4-.3v-7.1c0-1.4-.7-1.8-2-1.8-.8 0-1.5.2-2.2.5v8.5l1.3.2v1.9H0v-1.9z"/> 17 <path d="M16.9 17.7l1.2-.3V8.5L16.4 8V6l5.3-.6.4.2v2h.1c.7-1.2 2-2.2 3.6-2.2.2 0 .6.1.7.1v3.6c-.3-.1-.8-.1-1.2-.1-1.3 0-2.3.2-3.1.6v7.6l2 .4v2.1h-7.4l.1-2z"/> 18 <path d="M27 12.7c0-5.2 3.2-7.4 7.6-7.4 1.6 0 3.2.2 4.1.6V10h-2.5l-.4-2c-.3-.1-.6-.2-1.4-.2-1.9 0-3.1 1.3-3.1 4.6 0 3.6 1.6 4.7 4.1 4.7 1.5 0 2.7-.3 3.4-.6v2.2c-.8.6-2.3 1.3-4.6 1.3-4.8 0-7.2-2.8-7.2-7.3z"/> 19 <path d="M45.7 18.9l2.1-.2V7.1l-2.2-.2v-.6l3-.3.1.1v1.4h.1c1.5-.9 3.3-1.6 5.2-1.6 2.5 0 3.8 1.1 3.8 3.5v9.5l2 .2v.5h-5.1v-.5l2.2-.2V9.7c0-2-.9-2.9-3.2-2.9-1.7 0-3.4.7-4.9 1.5V19l2.2.2v.5h-5.3v-.6z"/> 20 <path d="M60.8 18.9l2.1-.2V1L60.4.8V.3l3.3-.3.1.1v18.8l2.2.2v.6h-5.2z"/> 21 <circle cx="42.8" cy="17.9" r="2"/> 22 <path d="M71.9 12.6l-3.8-7.1h3l5.3 7.1-5.3 7.2h-3" fill="#cd1719"/> 23 </svg--><svg enable-background="new 0 0 120 38" version="1.1" viewBox="0 0 120 38" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" width="120" height="38"> 24 <polygon fill="#D30910" points="99.1 2 108 18.9 99.1 35.8 106 35.8 118.6 18.9 118.6 18.9 106 2"></polygon> 25 <path d="m1.5 30.9 3.9-0.9v-21l-4-1v-4.8l12.5-1.4 0.9 0.4v3.3h0.4c3.2-2.3 6.5-3.8 11-3.8 5.3 0 8.8 2.3 8.8 8.3v20.1l2.9 0.8v4.6h-16v-4.6l3.3-0.8v-16.8c0-3.3-1.6-4.3-4.8-4.3-1.9 0-3.6 0.5-5.2 1.1v19.9l3.3 0.8v4.6h-17v-4.5z"></path><path d="m41.4 30.9 2.9-0.8v-21.1l-4.1-1v-4.8l12.5-1.4 0.9 0.4v4.7h0.4c1.8-2.8 4.6-5.1 8.4-5.1 0.6 0 1.3 0.1 1.7 0.3v8.5c-0.8-0.2-1.9-0.3-2.8-0.3-3.1 0-5.3 0.5-7.3 1.5v17.8l4.8 0.8v5h-17.4v-4.5z"></path><path d="m65.2 19.2c0-12.2 7.5-17.4 18-17.4 3.8 0 7.5 0.6 9.7 1.3v9.7h-6l-1-4.8c-0.7-0.3-1.4-0.5-3.2-0.5-4.5 0-7.3 3.1-7.3 10.9 0 8.5 3.9 11.2 9.8 11.2 3.5 0 6.5-0.8 8.1-1.4v5.1c-2.1 1.4-5.6 3.1-11.2 3.1-11.3-0.1-16.9-6.7-16.9-17.2"></path> 26 </svg> 27 </a> 28 <div class="shared-svgs"> 29 <svg xmlns="http://www.w3.org/2000/svg"> 30 <defs> 31 <symbol id="nrc-logo-sprite" viewBox="0 0 76.4 20"> 32 <path d="M0 17.7l1.7-.4V8.4L0 8V6l5.3-.6.4.2V7h.2c1.4-1 2.8-1.6 4.6-1.6 2.3 0 3.7 1 3.7 3.5v8.5l1.2.3v1.9H8.7v-1.9l1.4-.3v-7.1c0-1.4-.7-1.8-2-1.8-.8 0-1.5.2-2.2.5v8.5l1.3.2v1.9H0v-1.9zm16.9 0l1.2-.3V8.5L16.4 8V6l5.3-.6.4.2v2h.1c.7-1.2 2-2.2 3.6-2.2.2 0 .6.1.7.1v3.6c-.3-.1-.8-.1-1.2-.1-1.3 0-2.3.2-3.1.6v7.6l2 .4v2.1h-7.4l.1-2zm10.1-5c0-5.2 3.2-7.4 7.6-7.4 1.6 0 3.2.2 4.1.6V10h-2.5l-.4-2c-.3-.1-.6-.2-1.4-.2-1.9 0-3.1 1.3-3.1 4.6 0 3.6 1.6 4.7 4.1 4.7 1.5 0 2.7-.3 3.4-.6v2.2c-.8.6-2.3 1.3-4.6 1.3-4.8 0-7.2-2.8-7.2-7.3m18.7 6.4l2.1-.2V7.1l-2.2-.2v-.6l3-.3.1.1v1.4h.1c1.5-.9 3.3-1.6 5.2-1.6 2.5 0 3.8 1.1 3.8 3.5v9.5l2 .2v.5h-5.1v-.5l2.2-.2V9.7c0-2-.9-2.9-3.2-2.9-1.7 0-3.4.7-4.9 1.5V19l2.2.2v.5h-5.3v-.6zm15.1 0l2.1-.2V1L60.4.8V.3l3.3-.3.1.1v18.8l2.2.2v.6h-5.2"/><circle cx="42.8" cy="17.9" r="2"/><path d="M71.9 12.6l-3.8-7.1h3l5.3 7.1-5.3 7.2h-3" fill="#cd1719"/></symbol> 33 </defs> 34 </svg> 35 </div> 36 </div> 37</header> 38 39<main> 40 <header> 41 <h1>Inloggen bij NRC</h1> 42 </header> 43 <form method="post" id="fm1" action="/login" class="login-form-with-labels"> 44 45 <fieldset> 46 <label for="username">E‑mailadres</label> 47 <input id="username" accesskey="E" type="email" name="username" 48 autocomplete="on" 49 placeholder="E-mailadres" 50 value="" autofocus="autofocus"></fieldset> 51 52 <fieldset> 53 <label for="password">Wachtwoord</label> 54 <input id="password" accesskey="W" type="password" name="password" 55 autocomplete="off" 56 placeholder="Wachtwoord" 57 value=""><button type="button" class="wachtwoord-toggle" 58 onclick="togglePasswordVisibility(this)" data-target="password"> 59 Toon 60 </button> 61 </input> 62 </fieldset> 63 64 <input type="checkbox" style="display: none;" name="rememberMe" id="rememberMe" checked /><fieldset> 65 <button class="primair" type="submit" accesskey="l">Inloggen</button> 66 </fieldset> 67 68 <div class="wachtwoord hulp"> 69 <a href="/wachtwoord-vergeten">Wachtwoord vergeten</a> 70 </div> 71 72 <input type="hidden" name="execution" value="e503b6f9-9d8c-4d5d-aca8-a4159ade978c_ZXlKaGJHY2lPaUpJVXpVeE1pSXNJblI1Y0NJNklrcFhWQ0o5LkJZcHk4d21ZcURyTGY0WHJlMFpLbjBweVVSNjBjTEVXVl9qTExNWW1VSUpiOWRvQ3cwaUVVR0daQWNDME5yeXpLOExYRVhtQ3ZaSEhma3FZUlJyQ2tUcWJHQ1J6dUZaYWRrcVlxRjE1bF9jbGNodk5CSl9BMllpZWlIUGFDZ0JVTXN2cVJsWFBtOFhpenZhMGpiVGxnZEVKTVgxTzQtYmJiSGYwclBMRW5RRmJ0NUYzLVRUdXFLcHp4WGVRa3NrZHNnUUNGZ244dDZpc1lDU0FvZDZPZ0FDYTlYcXZMdklGLVluM3FZdlJ5TWpldU1lZWhkRktvZG80TkNZZVdaMWdUd2RiYWNyVnZmTWdhdEg1bFdRcENWLU9kdzdUV0puTDg5b2ZrVlk4ai16eEdwNjc1VlRCeXhmZTRfUzVJMTVGZXNGMjgzVlV2d3o1UkNWSGUycUFDb05OODhrUWVwdlowMFdZRncyMW5KUFpGS3dZSHVWcFlqTDNoaXJvbmVSdVRBaDFmOEpXQ185Y25OcGh6ajdfX2JjWnVxdS1GdVppMWVtMzMyZWdVdUhCMUY5VEFtV3k3SE5acjY5WHRnNU1qRVIxaEdqZGJrRnVzMXhGLXVTbVhwbElzc0xVdldVVXBDOUp6WDNiY1o2NmZ6N0RYeG1kUWFFUVR1SmxWY2tlMnd6dU15MU40Q1dRUlZJOEFWQUFGNU9haC0wSEhfYkVKUS1TLXRDZk1HUjlqajNJRjlnNjEybEVOTzJJRjF0WWFPd09HZWVBVjhJRlRJZnZQX1RLZ19sUW1VNVF4VHA4OXlhVE1RYlNCTjJmMEdfZHVUY3l3emIwRm13YzhjRkdueERLLXR3N3hUWklHS2ZHa3BJRmNVNWhUZFk5WVlZY09HWVM0bElCZWtFVm9JMlF1RXZXdUZxUjgxXy1RbHk4ck42eHJWX1V0b1VZRjNpaTdLWG0xMWVuWElrX0RRUm5VVFdCeXhiZHNwY01PMzBLSVNKdlBCald4QkZBaXFhOEhEa2pSMjU2bnE1cGhNakpsd1N1eHAtSnFHTjJCai1UU085cWRaRVhfUVptdmIyem1CVWJrZV8teTZ3YzhaLUdmeTV1dzI5ejd2VVd2eTAtVC1sdkF0ME5hbHhmdVVVd2liTF9admRBOWhvRS1ES1ZpMmI4ZTNUSVhaVWJVZlNncWVqRmVUUmFwZEJIS0ZDUlJMT0RHdVZyUk5EVzJLdnRKM0I3YzFUTVBaQzJKVEkwLWVuYVRmdGREdkZ2MXpmRmRDX1YtVFNUUGhuaGt2bGNBZ0t3VVdqQU1JYkZIY3dDNU1fbVFtelJ2QTZndDlZa3Q3a2M1TDZiRUZTSUZ4d2NnVkRfTGFtTUlSUEhJY0tudlJBVHozaUhYRF8xVXkzQzhvQTBTWENfWGhMaEI0OC1hZW10cTFETXlzaW5oalZxUnZhdUhLM3BRQzdWQ2VNSTRHTjFyU3hVSkw2SHhiazJnMjg0WFI4Q0t5c1RkeC16eFY0bFV0Zzc4LUhQcjI0c3hDS0lYSEx4RFoxNFJjdU9VS3VkOElXNVJjWGotcmlfVldHNVdEZGR4YjNmdmlWV003WU5PUVoteXlKM25CT0FuZV9QbnpNRDVraTFpeHFvYko3Y1ZwY1Z6YnJpR3IyQWoteFRTYjUxRUs1eTkwaHJzMGxXQ1M4aHpCOHNreDFKcktPLXdDM1VONTMzMUNrVGF6X2lvZXpXXzZCQWdMYjloT0RobG5pQzVnVThZaUNNeUFnbXRmc2FXclVzeGc1bldCNmhDa3ppa3AwT3YyeTZDWGxEUWRmd1dxNzYxYzF4YW
72NuUXdTQ0lrZG1DZ3lubGhQOHZld283N19BZ3VaSHVDWlBXbTZwUm5PSHZlUTIyLTBwZjUyMk5La2lYSVVuYTdSLWhodTFQd2dwQ3hXeDJ1bDhIME83TjhzX0FIOHJ5ZXZoTVUxQmpCNVRqSEcxSW9wcjJtd1FRblJqZzdMV1FYZUdMRDUtZEpUWHdZUGhvcURyOF9ELVJEU3dCLXluQmdQRFFIbVJPa0FHY3FJOHNCOEljYllIZEsyWUswb1NyWkFjcFoySFY3TVRnWGZsRVJFVFl5b0pIOTd0c1RSUmR1WTF2dWFaQWxHLWdSY3NZUTBYSndSNmpLS1NVclBSbDFCQ1NnZ0lWSlpkV3JtRXBJUXVWcFR1SWRWYm5sakVZaFBka1pmRE11akxaaF9xOFFnSzA4Y3NiS1pIdXZDQXFONzlCdDd1cURRODNKekc1bjcxeEpQQmZaWGdKOU5mR2RXcV9BbWRoRFJJLTAxSGlEczZBTXJRTWw3ZGpDQWczQkNuZnJUd0I2Q0xVbWdxOU10QV9JSzhMZnNlbnJvaFZQU25wcTBYdDdFR3RYQ1lWTWxpbnBQcGRHVGJKUU95MjlrRGFZSjRKZUxlc2ZVVVF0NXZJbGdoVDdCQUs1TUdqdjhKNFBEcl9pdE82b05uZUhmUGJrUlRaVEtSdENQVEQ5d3VMc2FmN2x2cjQtOEhpQVJrV1E1NzRwRUk2QldhN1VYTkFFMzZ4RnhLcnd6X092Q2o1emdra0lBM2NtT092aENvNGVMLW9QemlidE1WWnFUcmYydDFFcnZleUVzT0JkNHJnOS1IZGV1NXBXUjNMTU5nY0pGMmtzaDhkY2NzOGNhMkgyWVZlc3Vnd21XU2w5dU1lX1NsX1Q1RXNRWXhxSUN5cVlPSDZndkVDMVpUSUVCbHdsSWN0YmFEYTlkb1JyLWlad2JEWkZfQVRIY2UtR0xTazZxZzV3QmF4d0x5TWdwcTZBb0pId01GZG5BRmNvWFJSSW9RUEFrT2hKTTllbzlCZzliYUlQZ0JSZmhxbUdoZVNWSXN3ZVhLVFdTLXcyQkxuU1Z1VVh0LWFiWk9vdHk5LVBKYmVWZEt4VW9JSjFRRTZNU2xHYkh5X1YtRm55bWN2enRtYWFtZVhjYXpuUDVocjlHVTdPQ3ZkejFSNFlOLVBXNkFJdkZiQkdrS0thaV82TUktd2tVSmtEamJNZnZZUkxOaFI5Y2lsTnJ6eXdza3dhU21VQ19DMkI4dkJBMlhvVG45YU1kTVowc2pGWVlNaWRzd3VPNWFYUHBTTXNiYmpscER6SE5XZU1Uci1yNENna0d1ZllfY0lTczZNQUNFRFpyOS1ZQURMVS1WNUFUUTJ4bGQtaU1TMkxIQUg0N0F4MnFTa1FnSmhwNm9wdEFVSjIwaHozcWlSTEFIV0UxTGx6SDY5di1ZUEVKdC1ZOGd6YUhlS1VydjUyZU1PV0YzX0VEcGh3WGxpODdNTUxwdllMZkNjcUE1ZWFNSFV0aERvbEkyYVhjclY5VFl3eEJjOGxaWDI4LUNFd09wd0F0VUdmeHpiUkcwWGZ5U3hfQ1JMTzhIQi1XYng4b3FUWXFCM1JZUzdBaXBmLXdhTmxRaFo0Q0FsWGhEQk03elNsYmozOFFEUlMxOVotYkp4V2g5cGF4NTUwTXJKazJ5WHI2XzNqblNSLV9hS2ZEalJsbVlwWVhlYlZiTzF4QU5iZ045WXhjVTZHWmh6SktUUlR4Vno2SnB3YnlvYnF5R2lPYlpITExYakFrZEprX04wLWdCVU40c25iTnJ1eVFJRDFpOTlqMDFpTHYycWU2d0EyR2x0S1JVV3FmR1EtT0ZCbGEwNm5tUTlqRktCOEswd1owa2QzYjN5YXo2U1RuVXpyRDJ5N2k1c2hoQzFPZ1JJYmtYWWQweGlXN2RGUDJoNWNwdnlGMlJOUV9zWXZ6aFZkVnhDb3BYbTBJZ0xKMEVtWVJzcGZqYWFMMjQwRXFOMkMzSHpvdE84YllPYTRBWkU4YlZiblNYZHN0cDN2c0xVZUhhbS1kZnBpXzJLLTcxdW4zdTZwNHhqaFNxMEViSmhUaUYtOWx3Wkx6UDdyemlYbG5MSW1OSTU5bXNwS1NPaU4tTHpVMUZXRVFWMkl3YWNJdWFqcTJJd3FxSk5HdUVVN3BUX19pLVgyeXZMcDVBX215RjlzUUIyTnB5R0FwSHZvejRBTFZGazVheTRycjFoWG1CdkIteDVDQTFVMG9qVzBOUFBFdGg0TU4wT1FVR0gzdHJ2NHp1RWVHYmJTNXVXRTA0cmRSNk83b1VJWXlPcmRkNENaRUt5dXc2b0p1SUZQYlpvMy1TMXpPcVFuejRocENQVUtXMm9HR3FyTFFGTGJEc3pVWnhfblBBcy1WN0RJT29LY0ozdGtOM1A1dlNYRXFxaGJOenB2UUxTQWU0RUpwRHBFdzBQby1oTVZHbFp3TzBicXNhMzBPUmJRbVl0amlod0RLU0xzTmJTcEFXNVNUb1ZzbWpaN2pQb3Q1Z19wSG91b1AyQTA5Z2ozbVVLXzhjUzZlNzRGTkVya3BURG1WdWd3NzVLX1Nfb0F0VUxMblNWZ1NHS3pGRWZVZTVGOTBfVUJaX01KU1U4VHVxczVXNE55Uy1uWkp6ak9uY1BrM0tJZ1dheldOZzhfRDVTZFJ2c3lkV3pqWUsyZGtrMGh3cGpiS0JYUFZieV9RQjBDUUMxNV9zRmJ4VVpmXzQxRjJYcGRSZkxYRlJubjFhVm1UNUxJWHB2ZFdaVXc3aDNTcVZvekIwaWc3VzZiSnE3WmRwcDdid2xQclJlSDNzZXNGZGZURGVieWNnYWFjcDBYMXNfMGxCeXdKbnFxbGZLY0tBY25yRzRMU3lISkR6V1hPZGpJcXFMcFpIb204RFJvWlZIUTRaZ2VNQ2ZMNzZhZkM5MG1ZZUROWnhQSmVCRTQ5bU52anVIZlNFY2dKZENSaEp4QzVmQjJNTnZRT1JCN296dWtGdmRwV09yNHIyZDBoN01XSUNDNDc2cXpMdFJ5SkpZTEpld2oyT3psVE50TWpna0k1WE5JQUlUQ0xocWdYX1ZwNE1MZm5UdjlQeE5OQ3NRbjVMS0U1emhMNU42RGV3N3pSQy1DYlRNbTc0blZRaWxaVkkwdTBzcW9jVVpxN3pLSkxuYm5IdUJjRlRtZExWUk9lQ3pILWdFSEY2SEZaRmFhWWpQdE4yNTRwdlJ2c2N2WnE2c3Fob3pBbEVHckF3NmxHa0tuNmtBSFd5S3AxSjFDWjdkbVFRbDJiWXJwTHpxZDlTRUNHdkpGekRzNy1lVjlmMXlsZVJIYkpPN203dkhtZ1pLY3hzWWRiUExGcG9peEF5MnFEdlpxQjhMYWJCeFc2ekxLUFFLbG1QRWFSbGxYdUtORWNIQVd4N0E3QnJaeDlycWZsbS14VzJXZlpGaUxYcHR5YkhDRUlJNkJuM3JwLWJXNjdab1U5YU1NQ1hxWU5fNjJuMThfQnM4R2FqNnNsRFJmLUVOT01fWTdGQWY3ZWlwdGJUVkJOY016WFJ0UGk1dE5TY2RlYnc2R2RMMjdtRFV2ZFN3OHNLeWFqVWsxUHY0MDk4QTVjMG5fdFp5SWV1MzJiOTd1czVCOHZIZlp3RlZhQXlPVVRFcERIbUZxQzBNZmtVQXBnZkc2Q01yWmcwS3oxYnRuQkxTTUVUY3kxRVVPcTVYcWNYUFRtTEcxbnNkckFJMUQ2alY5Mlg2aU1wREkwNVF5S0JIQ3RMNGFHcHlVbFR4X0JwY2NoU2ZOVDVwd1FYdXhHVW51NzBqMVJ1OXM2aHN3TFBBWnVyWE5ra3BnRUVQZmgzWjF4VGQ4N3hnZzNmaFVyZERybzY4dzlmcGdLbHFXb3pOM2x4cm91VGJTWVczOXRVMXVGVXdTY2FXMEVaSGpsSGFQR28uSDItNnlwU0pJNEhqbVVITUhyX2hZWjNFS29xS2s2TUhIaVp0QS0yeHRJMUNBbXhsUUFKQzF6cGFsaTA1bTlvZzlvN1pVdjFNS1RUZXpwclZGQTUwMGc="/><input type="hidden" name="_eventId" value="submit"/><input type="hidden" name="geolocation"/></form> 73 <div class="login-with"> 74 <p class="separator">Of log in met</p> 75 <div class="login-options"> 76 <a class="button button--google-login" 77 href="clientredirect?client_name=Google&service=https%3A%2F%2Fwww.nrc.nl%2Flogin%2F&locale=nl&callback_url=https://login.nrc.nl/login&service=https://www.nrc.nl/login/&registration_source=" 78 title="Inloggen met Google"> 79 </a> 80 <div class="login-options-grid"> 81 <button class="button button--other-account-option" data-code="MH_LCD">
82 <span>Leeuwarder Courant</span> 83 </button><button class="button button--other-account-option" data-code="MH_NHD"> 84 <span>Noordhollands Dagblad</span> 85 </button><button class="button button--other-account-option" data-code="MH_YC"> 86 <span>IJmuider Courant</span> 87 </button><button class="button button--other-account-option" data-code="MH_GE"> 88 <span>De Gooi- en Eemlander</span> 89 </button><button class="button button--other-account-option" data-code="MH_DVN"> 90 <span>Dagblad van het Noorden</span> 91 </button><button class="button button--other-account-option" data-code="MH_DL"> 92 <span>De Limburger</span> 93 </button><button class="button button--other-account-option" data-code="MH_HD"> 94 <span>Haarlems Dagblad</span> 95 </button><button class="button button--other-account-option" data-code="MH_LD"> 96 <span>Leidsch Dagblad</span> 97 </button><button class="button button--other-account-option" data-code="MH_FRD"> 98 <span>Friesch Dagblad</span> 99 </button> 100 </div> 101 </div> 102
102<script> 103 document.addEventListener('DOMContentLoaded', () => { 104 const urlParams = new URLSearchParams(window.location.search); 105 const disableParam = urlParams.get('disable'); 106 107 // Hide login options based on disable query param 108 if (disableParam) { 109 const disabledOptions = disableParam.split(','); 110 111 // Hide account section in header 112 if (disabledOptions.includes('create')) { 113 const accountSection = document.querySelector('header.band .account'); 114 if (accountSection) { 115 accountSection.style.display = 'none'; 116 } 117 } 118 119 // Check if both google and mh are disabled 120 if (disabledOptions.includes('google') && disabledOptions.includes('mh')) { 121 const loginWithContainer = document.querySelector('.login-with'); 122 if (loginWithContainer) loginWithContainer.style.display = 'none'; 123 } else { 124 if (disabledOptions.includes('google')) { 125 const googleButton = document.querySelector('.button--google-login'); 126 if (googleButton) googleButton.style.display = 'none'; 127 } 128 129 if (disabledOptions.includes('mh')) { 130 const mhButtons = document.querySelectorAll('.button--other-account-option'); 131 mhButtons.forEach(button => button.style.display = 'none'); 132 } 133 } 134 } 135 136 const accountButtons = document.querySelectorAll('.button--other-account-option[data-code]'); 137 138 accountButtons.forEach(button => { 139 button.addEventListener('click', () => { 140 const serviceParam = urlParams.get('service') || (window.location.origin + '/'); 141 const code = button.getAttribute('data-code'); 142 143 if (code) { 144 const targetUrl = `/v2/login/social/${code}?service=${encodeURIComponent(serviceParam)}`; 145// const targetUrl = `/v2/login/social/${code}?locale=nl&callback_url=${encodeURIComponent(window.location.origin + '/overview')}&service=${encodeURIComponent(serviceParam)}`; 146 window.location.href = targetUrl; 147 } else { 148 console.error('missing code'); 149 } 150 }); 151 }); 152 }); 153 </script>
153 154</div> 155 </main> 156
157<script type="text/javascript" src="/js/nrc/zxcvbn.custom.nl.js"></script>
157 158
159<script type="text/javascript" src="/webjars/es5-shim/4.5.9/es5-shim.js"></script>
vendor: 1 bytes, line 159
159
160<script type="text/javascript" src="/webjars/css-vars-ponyfill/2.3.1/dist/css-vars-ponyfill.min.js"></script>
vendor: 1 bytes, line 160
160
161<script type="text/javascript" src="/webjars/jquery/3.6.0/jquery.min.js"></script>
vendor: 1 bytes, line 161
161
162<script type="text/javascript" src="/webjars/material-components-web/10.0.0/dist/material-components-web.js"></script>
162 163
164<script type="text/javascript" src=""></script>
164 165
166<script> 167 if (typeof resourceLoadedSuccessfully === "function") { 168 resourceLoadedSuccessfully(); 169 } 170 cssVars({}); 171</script>
171 172
173<script> 174 /*<![CDATA[*/ 175 176 var trackGeoLocation = false; 177 178 var googleAnalyticsTrackingId = null; 179 180 if (googleAnalyticsTrackingId != null && googleAnalyticsTrackingId != '') { 181 (function (i, s, o, g, r, a, m) { 182 i['GoogleAnalyticsObject'] = r; 183 i[r] = i[r] || function () { 184 (i[r].q = i[r].q || []).push(arguments) 185 }, i[r].l = 1 * new Date(); 186 a = s.createElement(o), 187 m = s.getElementsByTagName(o)[0]; 188 a.async = 1; 189 a.src = g; 190 m.parentNode.insertBefore(a, m) 191 })(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga'); 192 193 ga('create', googleAnalyticsTrackingId, 'auto'); 194 ga('send', 'pageview'); 195 } 196 197 /*]]>*/ 198</script>
198 199
200<script> 201 document.querySelector("input[type='password']").addEventListener("input", function () { 202 this.classList.toggle("filled", this.value.length > 0); 203 }); 204 205 function togglePasswordVisibility(button) { 206 var inputId = button.getAttribute("data-target"); 207 var input = document.getElementById(inputId); 208 209 if (input.type === "password") { 210 input.type = "text"; 211 button.textContent = "Verberg"; // Show -> Hide 212 } else { 213 input.type = "password"; 214 button.textContent = "Toon"; // Hide -> Show 215 } 216 } 217</script>
217 218 219<!-- NRCOPS-112 --><!-- script> 220 document.addEventListener('DOMContentLoaded', () => { 221 // const openModalButton = document.querySelector('.button--other-account'); 222 // const modal = document.getElementById('login-options-modal'); 223 // const closeButtons = modal.querySelectorAll('[data-modal-close]'); 224 // 225 // if (openModalButton && modal) { 226 // openModalButton.addEventListener('click', () => { 227 // modal.classList.add('modal--visible'); 228 // }); 229 // } 230 // 231 // closeButtons.forEach(button => { 232 // button.addEventListener('click', () => { 233 // modal.classList.remove('modal--visible'); 234 // }); 235 // }); 236 // 237 // const overlay = modal.querySelector('.modal-overlay'); 238 // if (overlay) { 239 // overlay.addEventListener('click', (event) => { 240 // if (event.target === overlay) { 241 // modal.classList.remove('modal--visible'); 242 // } 243 // }); 244 // } 245 246 const modal = document.getElementById('list-providers'); 247 248 const accountButtons = modal.querySelectorAll('.button--other-account-option[data-code]'); 249 250 accountButtons.forEach(button => { 251 button.addEventListener('click', () => { 252 const targetUrl = button.dataset.href; 253 if (targetUrl) { 254 window.location.href = targetUrl; 255 } else { 256 console.error('Missing href'); 257 } 258 }); 259 }); 260 }); 261</script -->
261<script src="https://www.nrc.nl/js/nmt.head.min.js"></script>
261 262<!--[if lt IE 10]>
263<script> 264 // third-party polyfill voor input[placeholder] labels 265 nmt.bottom.push('/js/placeholders.jquery.min.js'); 266 267 // eigen polyfill voor input[required] in IE9: stop formsubmit en focus op veld 268 nmt.bottom.push(function() { 269 $('form').on('submit', function(event) { 270 271 var foundEmpty = false; 272 $(this).find('[required]:not(:disabled)').each(function() { 273 if ($(this).val() == '') { // hier werkt alleen $(this).val() ipv this.value, ivm placeholder polyfill 274 foundEmpty = true; 275 var placeholder = this.getAttribute('placeholder'); 276 if (placeholder) { 277 alert('Fout: vul eerst dit veld in: ' + placeholder); 278 } 279 this.focus(); 280 return false; // break .each() loop 281 } 282 }); 283 284 if (foundEmpty) { 285 event.preventDefault(); 286 return false; 287 } 288 }); 289 }) 290</script>
290 291<![endif]-->
291<script> 292 // prevent accidental double form-submits by disabling submit-button 293 // (which also disables submits triggered by Enter-key in most browsers) 294 nmt = window.nmt || {}; 295 nmt.bottom = nmt.bottom || []; 296 nmt.bottom.push(function () { 297 $('form').on('submit', function(event) { 298 $(this).find('[type="submit"]').prop('disabled', true); 299 }); 300 }); 301 302 // Google Tag Manager 303 (function(w,d,s,l,i){ 304 w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js' }); 305 var f=d.getElementsByTagName(s)[0], 306 j=d.createElement(s), 307 dl=l!=='dataLayer'?'&l='+l:''; 308 j.async=true; 309 j.src='//www.googletagmanager.com/gtm.js?id='+i+dl; 310 f.parentNode.insertBefore(j,f); 311 })(window,document,'script','dataLayer','GTM-M8P34M'); 312 // End Google Tag Manager 313 314 // override default nrc.nl chartbeat domain 315 _sf_async_config = window._sf_async_config || {}; 316 _sf_async_config.uid = _sf_async_config.uid || 19903; 317 _sf_async_config.domain = 'login.nrc.nl'; 318</script>
318 319</body> 320</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.