$(document).ready(function() { var route; var scroll_distance = $("#login-blanket-inner").height(); if(window.innerWidth < 768) var mobile = true; else mobile = false; function validateEmail(mail) { if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(mail)) return true; else return false; } function validatePassword(password) { if(password.length >= 6) return true; else return false; } $("#login-blanket").css("bottom", $(window).height()); $("#login").on("click", function() { $("#route").val('/'); $("#login-blanket").show(); if(mobile) { $("#login-blanket").css("top", "0px"); } else { $("#login-blanket").animate({top: 0}); } }); $("#login-cancel").click(function(e) { e.preventDefault(); if(mobile) $("#login-blanket").hide(); else { $("#login-blanket").animate({ top: "-"+$(window).height() }, function() { $("#login-blanket").hide(); }); } }); $("#register-link").click(function(e) { e.preventDefault(); if(mobile) { $("#scroll-container").css("top", "-"+scroll_distance+"px"); document.getElementById('register-firstname').focus(); } else { $("#scroll-container").animate({ top: "-"+scroll_distance }, function() { document.getElementById('register-firstname').focus(); }); } }); $("#reset-link").click(function(e) { e.preventDefault(); if(mobile) { $("#scroll-container").css("top", "-"+scroll_distance*2+"px"); document.getElementById('reset-email').focus(); } else { $("#scroll-container").animate({ top: "-"+scroll_distance*2 }, function() { document.getElementById('reset-email').focus(); }); } }); //VIS SKOLEOVERSIKT HVIS FYLKE ER VALGT $("#fylke").change(function() { var val = $("#fylke option:selected").val().replace(/ /g, "_"); if(val !== "NA") $(this).removeClass("error"); $(".skoleliste").hide(); $("#skoler_"+val).show(); }); $(".skoleliste").change(function() { var val = $(this).find("option:selected").val(); if(val !== "NA") $(this).removeClass("error"); }); $("#register-cancel, #reset-cancel").click(function(e) { e.preventDefault(); if(mobile) { $("#scroll-container").css("top", 0); document.getElementById('login-email').focus(); } else { $("#scroll-container").animate({ top: 0 }, function() { document.getElementById('login-email').focus(); }); } }); $("#register-save").click(function(e) { e.preventDefault(); var ok = true; var msg = "Skjemaet er ikke riktig utfylt."; $("#register-form > input").each(function() { $(this).removeClass("error"); if($(this).val().trim() === '') $(this).addClass("error"); }); if(validateEmail($("#register-email").val()) === false) { ok = false; msg = "Epostadressen er ikke gyldig."; $("#register-email").addClass("error"); } if(validatePassword($("#register-password").val()) === false) { ok = false; msg = "Passordet er for kort: Minimum 6 tegn."; $("#register-password").addClass("error"); } if($("#register-password").val() != $("#register-password-repeat").val()) { ok = false; msg = "Passordene er ikke identiske."; $("#register-password-repeat").addClass("error"); } if($("#fylke option:selected").val().replace(/ /g, "_") === "NA") { ok = false; msg = "Fylke må velges."; $("#fylke").addClass("error"); } if($(".skoleliste:visible option:selected").val() === "NA") { ok = false; msg = "Skole må velges."; $(".skoleliste:visible").addClass("error"); } if(ok) { var formdata = $("#register-form").find(":visible").serialize(); $.post("./ajax/register-handler.php", formdata, function(r) { $("#login-message").text("Du er nå registrert, og kan logge inn."); $("#login-message").show(); $("#login-email").val($("#register-email").val()); $("#login-password").val($("#register-password").val()); $("#scroll-container").animate({ top: 0 }, function() { $("#login-email").focus(); }); }).fail(function(response) { console.log(response); $("#login-message").text("FEIL: "+response.statusText); $("#login-message").show(); $("#scroll-container").animate({ top: 0 }, function() { $("#login-email").focus(); }); }); } else alert(msg); }); $("#reset-save").click(function(e) { e.preventDefault(); var email = $("#reset-email").val(); $.post("./ajax/reset-password.php", {reset_email: email}, function(r) { $("#reset-email").replaceWith('

Eposten er blitt sendt.

'); $("#reset-save").remove(); }); }); $("#books > div").hover(function() { $(this).find(".overlay").show(); }, function() { $(this).find(".overlay").hide(); }); $("#books a").click(function(e) { //IF NOT LOGGED IN, SHOW THE LOGIN WINDOW var showLoginWindow = true; if(showLoginWindow) { console.log("not logged in"); e.preventDefault(); route = $(this)[0].href; $("#route").val(route); $("#login").trigger("click"); } //ELSE OPEN LINK AS USUAL }); $("#about").click(function(e) { e.preventDefault(); $("#aboutBlanket").fadeIn(); }); $("#closeAboutBox").click(function() { $("#aboutBlanket").fadeOut(); }); $("#change-password-button").click(function(e) { e.preventDefault(); $("#reset-error").hide(); var password = $("#new_password").val().trim(); var password_repeat = $("#new_password_repeat").val().trim(); var email = $("#new_password_email").val().trim(); var hash = $("#new_password_hash").val().trim(); var ok = true; if(password.length < 6) { $("#reset-error").show(); ok = false; } if(password !== password_repeat) { $("#reset-error").show(); ok = false; } if(ok === true) { var formdata = { password: password, password_repeat: password_repeat, email: email, hash: hash } $.post("./ajax/reset-password-hard.php", formdata, function(r) { console.log(r); if(r === "OK") { $("#reset-form-container").html('

Nytt passord er satt. Du kan nå logge inn med det nye passordet ditt.

Gå til forsiden

'); } else { $("#reset-form-container").html('

En feil oppsto. Ta kontakt med post@tell.no.

'); } }).fail(function() { $("#reset-form-container").html('

En feil oppsto. Ta kontakt med post@tell.no.

'); }); } }); });