﻿$(function() {
    // FIX IMG CLICK WITHIN A
    $("a img").click(function() {
        var a = $(this).closest("a");
        if (a.attr("href") != "" && a.attr("target") != "_blank")
            document.location = a.attr("href");
    });

    // Initialisatie Lightbox
    $("a.lightbox").lightBox(); // Select all links with lightbox class
    setValue("#zoekField");

    initButton("/winkelmandje.aspx", 'winkelmandje');
    placeRotator();

    // Topnav init, hover, submenu, etc
    initMenu();
});

function backToNormal(obj){
    if(obj.value == "geen geldig e-mail adres")
        obj.value = "";
        //alert(obj.style.backgroundColor);
    obj.style.backgroundColor = "";
}
function ReturnValidate() {
     if (document.MM_returnValue == true) {
        url = document.location;
        document.aspnetForm.action = url;
        document.aspnetForm.submit();
    }
}
function ValidateContact(){
     MM_validateForm(    'Voorletters','','R',
                        'Achternaam','','R',
                        'Adres','','R',
                        'Postcode','','R',
                        'Plaats','','R',
                        'Telefoonnummer','','R',
                        'E-mail','','RisEmail',
                        'Bericht','','R');
    ReturnValidate();
}
function doPostBack(){
    url = document.location;
    document.aspnetForm.action = url;
    document.aspnetForm.submit();
}
function aantallenAanpassen(){
 		MM_findObj('mode').value='aantallenaangepast';
		url = document.location;
		document.aspnetForm.action = url;
		document.aspnetForm.submit();
}
function validateBestellen(){
    MM_validateForm(    'jclc_Firstname','','R',
                        'jclc_Lastname','','R',
                        'jclc_a_Streetline1','','R',
                        'jclc_a_Number1','','R',
                        'jclc_a_Zipcodepart1','','R',                        
                        'jclc_a_City','','R',
                        'jclc_Phonenumber1','','R',
                        'jclc_Emailfirst','','RisEmail');
    if(document.MM_returnValue){
        url = "/bestellen.aspx?stap=3";
        document.aspnetForm.action = url;
        document.aspnetForm.submit();
    }
    
}
function validateTellAFriend(){
    MM_validateForm(    'uwNaam','','R',
                        'uwEmailadres','','RisEmail',
                        'vriendNaam','','R',
                        'vriendEmailadres','','RisEmail');
    if(document.MM_returnValue){
         document.aspnetForm.action = document.location;
        document.aspnetForm.submit();
    }
}

function showAll(){
    document.getElementById('showAll').value = 'true';
    doPostBack();
}

function sortering(sort){
    document.getElementById('sortering').value = sort;
    doPostBack();        
}
function initButton(loc, name){
    var obj = document.getElementById(name);
    if(obj){
        obj.onmouseover = function(){
            document.body.style.cursor = 'pointer';
        }
        obj.onclick = function(){
            document.location = loc;
        }
        obj.onmouseout = function (){
            document.body.style.cursor = 'default';
        }
        obj.onmouseup = function(){
            document.body.style.cursor = 'wait';
        }
    }
}
function placeRotator(){
    var d ="";
    	d = d + ('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="206" height="135" id="Rotator" align="middle">');
      	d = d +('<param name="allowScriptAccess" value="sameDomain" />');
		d = d +('<param name="allowFullScreen" value="false" />');
		d = d +('<param name="movie" value="/flash/rotator.swf" />');
		d = d +('<param name="quality" value="high" />');
		d = d +('<param name="bgcolor" value="#ffffff" />');
		d = d +('<embed src="/flash/rotator.swf" quality="high" bgcolor="#ffffff" width="206" height="135" name="Rotator" ');
		d = d +('    align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
		d = d +('</object>');
    document.getElementById("box").innerHTML = d;
}
function goBack(){
    history.go(-1);
}
function optimizeSearchString(zoekstr) {
    /* 
    Alles eruit filteren behalve:
    - 0-9 (0-9)
    - a-z (a-z)
    - A-Z (A-Z)
    - Koppelstreepje (-)
    - Spaties (\s)
    Extra uitleg
    - begin met / Start regex
    - Eind met / Eind regex
    - Achter de laatste / nog een letter dus g staat voor global. Dus over hele string uitvoeren
    */
    zoekstr = zoekstr.replace(/[^0-9a-z''A-Z[.]-\s]/g, "");
    zoekstr = zoekstr.replace(/\s+/g, " ");
    zoekstr = trim(zoekstr);
    return zoekstr;
}
function doZoeken(){
    value = document.getElementById("zoekField").value;
    if(trim(value) != "")
        document.location = "/Zoeken/" + optimizeSearchString(value) + ".aspx";
}

function redirect(loc){
    document.location = loc;
}
/*
	setValue 
	Onclick de waarde weghalen. En onBlur terug zetten.
	@param val klasse of id van het object (.class, #id)
*/
function setValue(val)
{
	$(val).click(
		function() {
			if (this.value == this.defaultValue) this.value = '';
		}
	);
	$(val).blur(
		function() {
			if (this.value == '') this.value = this.defaultValue;
		}
	);	
}
function BerekenFramemaat()
{

	var FrameFaktor = 0;
	var FrameMaat = 0;
	var sAdvies = "";
	var iBeenlengte = document.getElementById("binnenbeenlengte").value;

	if(IsNumeric(iBeenlengte) && iBeenlengte >= 60 && iBeenlengte <= 110){
		FrameFaktor = document.getElementById("typefiets").value;
		FrameMaat = FrameFaktor * document.getElementById("binnenbeenlengte").value

		switch(FrameFaktor)
		{
		    case "0.227":

			    sAdvies = 'Framemaat in inches: ' + FrameMaat.toFixed(1) + "<br>";
			    sAdvies = sAdvies + 'Framemaat in centimeters: ' + (FrameMaat * 2.54).toFixed(1) + '<br><br>';
			    sAdvies = sAdvies + 'Kies de framemaat die het dichtst bij uw uitkomst in de buurt komt.';
			    break;
		    case "0.665":
			    sAdvies = 'Framemaat in inches: ' + (FrameMaat / 2.54).toFixed(1) + "<br>";
			    sAdvies = sAdvies + 'Framemaat in centimeters: ' + FrameMaat.toFixed(1) + '<br><br>';
			    sAdvies = sAdvies + 'Kies de framemaat die het dichtst bij uw uitkomst in de buurt komt.';
			    break;
		    case "0.685":
			    sAdvies = 'Framemaat in inches: ' + (FrameMaat / 2.54).toFixed(1) + "<br>";
			    sAdvies = sAdvies + 'Framemaat in centimeters: ' + FrameMaat.toFixed(1) + '<br><br>';
			    sAdvies = sAdvies + 'Kies de framemaat die het dichtst bij uw uitkomst in de buurt komt.';
			    break;
		}

		document.getElementById("framemaat").innerHTML = "<b>" + sAdvies + "</b>";
	}else{
		alert('De beenlengte moet tussen de 60 en 110 centimeter liggen');
	}
}
function IsNumeric(sText)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;


   for (i = 0; i < sText.length && IsNumber == true; i++)
    {
      Char = sText.charAt(i);
      if (ValidChars.indexOf(Char) == -1)
         IsNumber = false;
         
    }
   return IsNumber;

}

function toggleAfwijkend(){
	if($("#afwijkendAdres").is(":hidden")){
		$("#afwijkendCheck").attr('checked', true);
	}else{
		$("#afwijkendAdres").attr('checked', false);
	}
	$("#afwijkendAdres").toggle();
	
}


/* 
------------------------------------
-------- Makkelijke functies -------
------------------------------------
*/

function optimizeSearchString(zoekstr) {
    /* 
    Alles eruit filteren behalve:
    - 0-9 (0-9)
    - a-z (a-z)
    - A-Z (A-Z)
    - Koppelstreepje (-)
    - Spaties (\s)
    Extra uitleg
    - begin met / Start regex
    - Eind met / Eind regex
    - Achter de laatste / nog een letter dus g staat voor global. Dus over hele string uitvoeren
    */
    zoekstr = zoekstr.replace(/[^0-9a-z''A-Z-\s]/g, "");
    zoekstr = zoekstr.replace(/\s+/g, " ");
    zoekstr = trim(zoekstr);
    return zoekstr;
}

function trim(value) {
  value = value.replace(/^\s+/,'');
  value = value.replace(/\s+$/,'');
  return value;
}

function checkEmail(veld) {
    if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(MM_findObj(veld).value)){
        return (true)
    }
    return (false)
}

function OpenInformatie()
{
    document.getElementById('InformationBox').style.display = 'block';
}

function CloseInformatie()
{
    document.getElementById('InformationBox').style.display = 'none';
}
function doZoom()
{
    $('.left .img a').trigger('click');
}

$(document).ready(function() {
	$("a.anchorLink").anchorAnimate()
});

jQuery.fn.anchorAnimate = function(settings) {

 	settings = jQuery.extend({
		speed : 1100
	}, settings);	
	
	return this.each(function(){
		var caller = this
		$(caller).click(function (event) {	
			event.preventDefault()
			var locationHref = window.location.href
			var elementClick = $(caller).attr("href")
			
			var destination = $(elementClick).offset().top;
			$("html:not(:animated),body:not(:animated)").animate({ scrollTop: destination}, settings.speed, function() {
				window.location.hash = elementClick
			});
		  	return false;
		})
	})
}

function TVerzendStepBack()
{
    triggerAction('StepBack');   
}

function triggerAction(value)
{
    document.getElementById('Action').value = value;
    submitform();   
}

function submitform()
{ 
    var theForm = document.forms['aspnetForm'];
    if (!theForm) {
        theForm = document.aspnetForm;
    }
    theForm.submit();      
}

// Bestellen afhalen bestelling
$(function(){
    $(".locatie, .vest").hide();
    
    $("[name=betaalmethoden]").click(function(){
        if ( $(".afhalen").is(":checked") )
        {
            $(".locatie").show();
            if($(".vest" + this.selectedIndex).length > 0)
                $(".vest" + this.selectedIndex).show();
            else
             $(".vest0").show();
        }
        else
        {
            $(".locatie, .vest").hide();
        }
    });
    
    $(".vestiging").change(function(){
        $(".vest").hide();
        $(".vest" + this.selectedIndex).show();
    });
});

// Menu
var $timeout = false;
function initMenu()
{
    // Data opslaan
    $("#topNav a").each(function(){
        $(this).data('is-selected', $(this).parent().hasClass("selected"));
        
        if($(this).parent().hasClass("selected"))
        {
            $text = $(this).find(".roundCenter").html();
        }
        else
        {
            $text = $(this).html();
        }
        $(this).data('text', $text);
    });
    
    // Submenu hiden
    $(".topNavSub").hide();
    
    $(".topNavSub").hover(
                    function(){
                        clearTimeout($timeout);
                    },function(){
                        $timeout = setTimeout(menuHide, 500);
                    });
    
    // Hover instellen
    $("#topNav a").hover(
                    function(){
                        // Timeout clearen indien nodig
                        clearTimeout($timeout);
                        
                        // Remove selection
                        menuRemoveSelected();
                        
                        // Hide alle submenu's
                        $(".topNavSub").hide();
                        
                        // Make me hover!
                        menuSelect($(this));
                        
                        // Activate sub menu
                        $parent = $(this).parent();
                        
                        // Submenu instellen
                        $(".topNavSub").each(function(){
                            if($($parent).attr("pos") == $(this).attr("pos"))
                            {
                                $(this).find("a:last").each(function(){
                                    $(this).css({'background-image' : 'none'});
                                });
                                
                                $(this).show();
                                $parentPos = $($parent).position();
                                $(this).css({left: ( $parentPos.left + 8 )});
                                
                                $(this).data('visible', true);
                            }
                        });
                    },
                    function(){
                        $timeout = setTimeout(menuHide, 500);
                    });  
}

function menuRemoveSelected()
{
    // Back to basic
    $("#topNav .selected a").each(function(){
        $(this).parent().removeClass("selected");
        $(this).html($(this).data('text'));
    });
}

function menuHide()
{
    // Remove selection
    menuRemoveSelected();
    
    // Selecteer standaard waarde
    $("#topNav a").each(function(){
        if($(this).data("is-selected"))
            menuSelect($(this));
    });
    
    // Submenu hiden
    $(".topNavSub").hide();
}
function menuSelect($obj)
{
    $($obj).parent().addClass("selected");
    $html = "<span class='roundLeft'></span><span class='roundCenter'>";
    $html += $($obj).data('text');
    $html += "</span><span class='roundRight'></span>";
    $($obj).html($html);
}