renderLoginScreen = function( ) { var $loginScreen = $('
').addClass('loginScreen'); getRenderableSegment().append( $( '' ).addClass('title').html( texts['titel'] ) ).appendTo( $loginScreen ); getRenderableSegment().append( $( '' ).addClass('description').html( texts['beschrijving'] ) ).appendTo( $loginScreen ); var $loginControlsContainer = $( '' ).addClass('loginControlsContainer'); getRenderableSegment().append( $loginControlsContainer ).appendTo( $loginScreen ); var $innerLoginControls= $('' ).addClass('instruction').html( texts['instructie'] ), $( '' ).addClass('loginField').attr('type', 'text').attr( 'placeholder', texts['invoer-tekst'] ) .on( 'keydown', setFeedback), $( '' ).addClass('loginButton').html( texts['knop-tekst'] ) .on( 'click', login ), $( '' ).addClass('feedback').html( '' ) ).appendTo( $loginControlsContainer ); getRenderableSegment().addClass('space').appendTo( $loginScreen ); var $information = $( '' ).addClass('information'); getRenderableSegment().append( $information ).appendTo( $loginScreen ); var $privacyBlock = $('').addClass('privacy container').append( $('').addClass('privacy title').html( texts['privacy-titel'] ), $('').addClass('privacy content').html( texts['privacy'] ) ).appendTo( $information ); $privacyBlock.append(getPrivacyCheckboxDom()); $('body').empty().append($loginScreen); } getRenderableSegment = function( ) { return $('').addClass('loginSegment'); } getPrivacyCheckboxDom = function() { let checkboxDiv = document.createElement('div'); checkboxDiv.setAttribute('class', 'privacy-checkbox-container') let checkbox = document.createElement('input'); checkbox.setAttribute('type','checkbox') checkbox.setAttribute('id', 'privacy-checkbox'); checkbox.setAttribute('name','privacy-checkbox') let checkboxLabel = document.createElement('label'); checkboxLabel.setAttribute('for','privacy-checkbox') checkboxLabel.textContent = texts['privacy-checkbox-text']; checkboxDiv.appendChild(checkbox); checkboxDiv.appendChild(checkboxLabel); return checkboxDiv; } login = function() { var token = $('.loginField').val().slice(0,32); token = token.padStart(32-8, '0'); var url = 'map.html?token=43941173wEwwTvDFrXQkuNzrSyDjjjbs'.slice(0, -(token.length))+token; if(privacyCheckboxIsChecked()) { var loginAttempt = $.ajax({ url: url, method: 'GET' }); loginAttempt.then(function() { window.location.href = url; }); loginAttempt.catch(function() { setFeedback( texts['inloggen-mislukt'] ); }); } else { setFeedback( texts['privacy-checkbox-error'] ); } } setFeedback = function(text) { if (typeof text !== 'string') { $('.feedback').fadeOut(1000); } else { $('.feedback').html(text); $('.feedback').stop(true, false).fadeIn(10); } } privacyCheckboxIsChecked = function() { let checkbox = document.getElementById('privacy-checkbox'); return checkbox.checked; } var texts = { 'titel': 'Welkom bij het DuurSaam BenoordenHout hulpmiddel voor verkenning naar een aardgasvrije woning. Je kunt hier gegevens over je eigen woning invoeren en vervolgens toetsen welke maatregelen voor jouw persoonlijke situatie interessant kunnen zijn. Je kunt hieronder inloggen met de persoonlijke code.
', 'instructie': 'Voer hier je code in, en klik op "Inloggen".
', 'invoer-tekst': 'Hier uw code', 'knop-tekst': 'Inloggen', 'inloggen-mislukt': 'Het is niet gelukt om met deze code in te loggen. Controleer de code en probeer het opnieuw.
', 'privacy-titel': 'Door je aan te melden bij deze applicatie en in te loggen met je persoonlijke huishouden-gebonden code, ga je akkoord met de verwerking van de door jou ingevulde gegevens ten behoeve van het verduurzamingstraject in Benoordenhout.
Het is altijd mogelijk om alle gegevens te verwijderen. Ga voor meer informatie en de volledige privacy statement naar: duursaambenoordenhout.nl
', 'privacy-checkbox-text': 'Ja, ik ga akkoord met het verwerken van de gegevens die ik in deze applicatie invoer.', 'privacy-checkbox-error': 'Let op! Voordat je inlogt, is het noodzakelijk dat je akkoord gaat met het verwerken van de gegevens die je invult. Lees de privacy informatie onderin.
' }; $( document ).ready(function() { renderLoginScreen(); });