﻿// JScript File

// screen hoogte uitlezen bij div. pagina's ivm zichtbaarheid pijltjes

function setScrollPos() {
	/*
	var x,y;
	if (self.innerHeight) // all except Explorer
	{
		x = self.innerWidth;
		y = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
		// Explorer 6 Strict Mode
	{
		x = document.documentElement.clientWidth;
		y = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		x = document.body.clientWidth;
		y = document.body.clientHeight;
	}
	*/
	//alert(x);
	//alert(y);
	
	window.scrollBy(0,65);
}

var taalClickUrl;
var taalClickTimer;

function doTaalClick(url) {
	document.getElementById('taalkeuzeButtons').style.display = 'none';
	taalClickUrl = url;
	taalClicktTimer = setTimeout("doTaalClickScroll()", 20);
}

function doTaalClickScroll() {
	var grens = 127;
	var obj = document.getElementById('taalClickImage');
	var curMargin = Math.round(obj.style.marginTop.replace("px", ""));
	var newMargin = Math.ceil(curMargin + (grens - curMargin)/4);
	if (newMargin < grens) {
		obj.style.marginTop = newMargin + "px";
		taalClicktTimer = setTimeout("doTaalClickScroll()", 20);
	}
	else {
		clearTimeout(taalClickTimer);
		setTimeout("location.href = taalClickUrl", 1000);
	}
}

// ---- onmouseover Greys serie

function greysZoom() {
	
}


//


// ------------------------------------ mosa Collectie teaser slide ------------------

var numTeasers = 24;  // totaal aantal teaser images (vullen vanuit ajax)
var currentTeaserNum = 0; // Tot welke teaser zijn we geslide
var maxTeaserNum = (numTeasers / 2) - 4; // Hoeveel teaser zijn er
var teaserTime = 5000; // hoe snel
var teaserDirection = -1; // -1 omlaag, 1 omhoog
var moveTimer;

// Init teaser scroll
function doTeaserSlide()
{   
    clearTimeout(moveTimer);
    
    if (teaserDirection == 1) { // up
        teaserUp();
    }
    else { //down
        teaserDown();
    }
    
    moveTimer = setTimeout("doTeaserSlide()", teaserTime);
}

function teaserUp() {
	if (currentTeaserNum > 0) {
		currentTeaserNum--;
		startSlide('teaserLijstPnl', 0, -(currentTeaserNum * 150), 10);
	}
	else {
	    //teaserDirection = -1;
	}
}

function teaserDown() {
	if (currentTeaserNum < maxTeaserNum) {
		currentTeaserNum++;
		startSlide('teaserLijstPnl', 0, -(currentTeaserNum * 150), 10);
	}
	else {
	    //teaserDirection = 1;
	}
}
// ------------------------------------ Mosa home page foto scroll ------------------

var currentLinksHomeNum = 0; // Tot welke teaser zijn we geslide
var maxLinksHomeNum = 0; // Hoeveel teaser zijn er

var currentRechtsHomeNum = 0; // Tot welke teaser zijn we geslide
var maxRechtsHomeNum = 0; // Hoeveel teaser zijn er

// Init teaser scroll
function startHomeSlide()
{
    setTimeout("nextLinksHomeSlide()", 3000);
    setTimeout("nextRechtsHomeSlide()", 3000);
    maxRechtsHomeNum = seFindHomeInfo("totaalRechts");
    maxLinksHomeNum =   seFindHomeInfo("totaalLinks");
}

// Scroll de volgende teaser in beeld
function nextRechtsHomeSlide()
{
    currentRechtsHomeNum++;
    if (currentRechtsHomeNum > maxRechtsHomeNum) 
    {
        currentRechtsHomeNum = 1;
        document.getElementById('FotoRechts').style.marginLeft = 0;
    }
    startSlide('FotoRechts', - currentRechtsHomeNum * 300, 0, 15);
    setTimeout("nextRechtsHomeSlide()", 8000);
}

// Scroll de volgende teaser in beeld
function nextLinksHomeSlide()
{
    currentLinksHomeNum++;
    if (currentLinksHomeNum > maxLinksHomeNum) 
    {
        currentLinksHomeNum = 1;
        document.getElementById('FotoLinks').style.marginLeft = 0;
    }
    startSlide('FotoLinks', - currentLinksHomeNum * 300, 0, 15);
    setTimeout("nextLinksHomeSlide()", 8000);
}

// Zoek menu info uit de lijst die doorgegeven is door de ascx
// seMosaHome bevat een lijst met telkens een key en een value
// de Array moet de volgende structuur hebben 
// ['key1', value1], ['key2', value2], enz
function seFindHomeInfo(what) {
    for(i=0;i<seMosaHome.length;i++) {
        if (seMosaHome[i][0] == what) {
            return seMosaHome[i][1];
        }
    }
    return "";
}

// ------------------------------------ SliderClass ----------------------------------

// GLOBAL VARS
var slideArray = new Array();
var toFast = 600;

// Basis classe van een slide div
function sliderClass() {
	this.obj = null; // ID van element die slide
	this.fromX = 0; // Start / huidige pos
	this.toX = 0; // Eind pos
	this.fromY = 0; // Start / huidige pos
	this.toY = 0; // Eind pos
	this.speed = 10; // Snelheid in x stap bij het einde
	this.timer = null; 
}

// Init slide classe en start de beweging
function startSlide(ele, toX, toY, speed) {

    // Init nieuwe classe
	var mySlider	= new sliderClass();
	mySlider.obj	= document.getElementById(ele);
	mySlider.toX	= toX;
	mySlider.toY	= toY;
	mySlider.speed	= speed;
	
	if (mySlider.obj != null) // Bestaat de slide wel
	{   

        // Haal begin pos op
        mySlider.fromX = Math.round((mySlider.obj.style.marginLeft).replace("px", ""));
        if (mySlider.fromX == "") mySlider.fromX = 0; // onbekent dus 0
    
        mySlider.fromY = Math.round((mySlider.obj.style.marginTop).replace("px", ""));
        if (mySlider.fromY == "") mySlider.fromY = 0; // onbekent dus 0

        // Als te ver weg dan stukje skippen
	    if (Math.abs(mySlider.fromX-mySlider.toX) > toFast) {
	    	if (mySlider.fromX < mySlider.toX) mySlider.fromX = mySlider.toX - toFast;
		    if (mySlider.fromX > mySlider.toX) mySlider.fromX = mySlider.toX + toFast;
	    }
	
	    if (Math.abs(mySlider.fromY-mySlider.toY) > toFast) {
		    if (mySlider.fromY < mySlider.toY) mySlider.fromY = mySlider.toY - toFast;
		    if (mySlider.fromY > mySlider.toY) mySlider.fromY = mySlider.toY + toFast;
	    }
	
	    // Alleen iets doen als het nog niet gedaan is
	    if (Math.round((mySlider.obj.style.marginLeft).replace("px", "")) != mySlider.toX || 
	        Math.round((mySlider.obj.style.marginTop).replace("px", ""))  != mySlider.toY)
	    {
		    slideArray[ele] = mySlider; // Opslaan
		    doSlide(ele); // Start bewegin
	    }
	
	}
	
	mySlider = null;
}

// Laat de slider een stapje bewegen en zet timeout voor de volgende stap
function doSlide(ele) {
	var mySlider = slideArray[ele];
	if (mySlider != null) {
		if ((Math.abs(mySlider.fromX - mySlider.toX)) > 0.1 || (
		     Math.abs(mySlider.fromY - mySlider.toY)) > 0.1) 
		{
			mySlider.fromX += (mySlider.toX-mySlider.fromX)/mySlider.speed;
			mySlider.fromY += (mySlider.toY-mySlider.fromY)/mySlider.speed;
			mySlider.obj.style.marginLeft = Math.round(mySlider.fromX) + 'px';
			mySlider.obj.style.marginTop  = Math.round(mySlider.fromY) + 'px';
			slideArray[ele] = mySlider;
			slideArray[ele].timer = setTimeout("doSlide('"+ele+"')", 15);
		}
		else {
			mySlider.timer = clearTimeout(mySlider.timer);
			slideArray[ele] = null;
		}
		mySlider = null;
	}
}
// -----------------------------------------------------------------------------------
// ------------------------SLIDE REFERENTIE PAGINA -----------------------------------

var numZoekResult;
var rowZoekResult;
var curZoekResult;

var refDetailNum;
var refDetailPos;
var refDetailTimer;

function refSetIt() {
	// regel de zoekresultaten scroll
	numZoekResult = document.getElementById('zoekResultAantal').value;
	rowZoekResult = Math.ceil(numZoekResult/2)-2;
	curZoekResult = 0;
	
	// regel de detailpagina scroll
	refDetailNum = document.getElementById('slideShowAantal').value;
	refDetailPos = 0;
	refDetailTimer = clearTimeout(refDetailTimer);
	
	if (document.getElementById('detailPnlInner') != null && refDetailNum > 2) {
		refDetailTimer = setTimeout("refDetailSlide()", 4000);
	}
}

function refUp() {
	if (curZoekResult > 0) {
		curZoekResult--;
		startSlide('zoekResultatenPnlInner', 0, -(curZoekResult * 300), 10);
	}
}

function refDown() {
	if (curZoekResult < rowZoekResult ) {
		curZoekResult++;
		startSlide('zoekResultatenPnlInner', 0, -(curZoekResult * 300), 10);
	}
}

function refDetailSlide() {
	if (refDetailPos >= refDetailNum) {
		refDetailPos = 1;
		document.getElementById('detailPnlInner').style.marginTop = "0px";
		refDetailTimer = setTimeout("refDetailSlide()", 0);
	}
	else {
		startSlide('detailPnlInner', 0, -refDetailPos * 600, 20);
		refDetailPos++;
		refDetailTimer = setTimeout("refDetailSlide()", 4000);
	}
}

/************************   DEALERS   ******************************/

var curDealRow;
var dealNumRows;

function dealSet() {
	//alert(document.getElementById('dealResultAantal').value);
	curDealRow = 0;
	var records = document.getElementById('dealResultAantal').value;
	//alert(records);
if (records > 6) {
		//toon pijltjes
		document.getElementById("RefPijlUp").style.visibility = 'visible';
		document.getElementById("RefPijlDown").style.visibility = 'visible';
	}
	else {
	  //hide pijltjes	
		document.getElementById("RefPijlUp").style.visibility = 'hidden';
		document.getElementById("RefPijlDown").style.visibility = 'hidden';
	}
	
	dealNumRows = Math.ceil(records/2)-3;
	//alert(document.getElementById('dealResultAantal').value);
}

function dealUp() {
	if (curDealRow > 0) {
		curDealRow--;
		startSlide('zoekResultatenPnlInner', 0, -(curDealRow * 300), 10);
	}
}

function dealDown() {
	if (curDealRow < dealNumRows ) {
		curDealRow++;
		startSlide('zoekResultatenPnlInner', 0, -(curDealRow * 300), 10);
	}
}

/*************************    ZOEKEN IN COLLECTIE    *************************/

var curZoekRow;
var zoekNumRows;

function zoekSet() {
	curZoekRow = 0;
	zoekNumRows = Math.ceil(document.getElementById('zoekResultAantal').value/8)-1;
	//alert(document.getElementById('zoekResultAantal').value);
	//alert(zoekNumRows);
	//alert(document.getElementById('zoekResultAantal').value);
}

function zoekUp() {
	if (curZoekRow > 0) {
		curZoekRow--;
		startSlide('zoekResultatenPnlInner', 0, -(curZoekRow * 600), 10);
	}
}

function zoekDown() {
	if (curZoekRow < zoekNumRows ) {
		curZoekRow++;
		startSlide('zoekResultatenPnlInner', 0, -(curZoekRow * 600), 10);
	}
}

