﻿var $j = jQuery.noConflict();

$j(function() {
    if (!$j.browser.msie) { // crazy fix
        $j("#project").css("background", "url(/files/system/popupframe.png) no-repeat");
    }
});

function getWindowHeight() {
    if (document.all) {
        return document.body.offsetHeight;
    } else {
        return window.innerHeight;
    }
}

function getWindowWidth() {
    if (document.all) {
        return document.body.offsetWidth;
    } else {
        return window.innerWidth;
    }
}


var _scrollTxt = null;

function content_height(scrollTxt, scrollBar) {
    _scrollTxt = scrollTxt;

    var objText = document.getElementById(scrollTxt);
    var objScroller = document.getElementById(scrollBar);
    if (objText == null || objText == 'undefined') {
        objScroller.style.display = "none";
        return;
    }

    var status = objScroller.style.display;
    if (status == "block") {
        return;
    }

    var f = function() {
        var divHeight = objText.clientHeight > 0 ? objText.clientHeight : objText.offsetHeight;
        var divScrollHeight = objText.scrollHeight;
        if (divScrollHeight && divHeight) {
            if (divScrollHeight > divHeight) {
                //alert(scrollTxt + " needs scrolling ");
                objScroller.style.display = "block";
                clearInterval(int_id);
            } else {
                //alert(scrollTxt + " no scrolling ");
                objScroller.style.display = "none";
                clearInterval(int_id);
            }
        }
    };
    var int_id = setInterval(f, 100);
}

var step = 10;
var timerDown;
var timerUp;
function scrollDown(id) {
    document.getElementById(id).scrollTop += step;
    timerDown = setTimeout("scrollDown('" + id + "')", 10);
}
function scrollUp(id) {
    document.getElementById(id).scrollTop -= step;
    timerUp = setTimeout("scrollUp('" + id + "')", 10);
}

function clearScroll() {
    if (window.timerUp) {
        clearTimeout(timerUp);
    }
    if (window.timerDown) {
        clearTimeout(timerDown);
    }
}

function onLoadMoveFrame() {

    var top = document.getElementById('top');
    var mid = document.getElementById('mid');
    var bot = document.getElementById('bot');
    var over = document.getElementById('over');

    divTop = new Tween(top.style, 'top', Tween.bounceEaseOut, -120, 40, 0.5, 'px');
    divMid = new Tween(mid.style, 'top', Tween.bounceEaseOut, -70, 165, 1, 'px');
    divBot = new Tween(bot.style, 'top', Tween.bounceEaseOut, -120, 315, 1.5, 'px');
    divOver = new Tween(over.style, 'top', Tween.bounceEaseOut, -18, 120, 1.2, 'px');

    divMove = new Parallel();
    divMove.addChild(divTop);
    divMove.addChild(divMid);
    divMove.addChild(divBot);
    divMove.addChild(divOver);
    divMove.start();

    divMove.onMotionFinished = function() {
        var mFrame = document.getElementById('mFrame');

        var tweentop = $j('#mFrame').attr('tweentop');
        if (!tweentop)
            tweentop = 118;

        divmFrame = new Tween(mFrame.style, 'top', Tween.backEaseOut, -555, tweentop, 0.6, 'px');
        divmFrame.start();
        divmFrame.onMotionFinished = function() {
            init();

            if (window.frames.googlemap != null) {
                window.frames.googlemap.myclick();
            }
			CheckAndShowSingleNews();
        }
		
    }

    //qwerty
    var tmp = new Array();
    var tmp2 = new Array();
    var param = new Array();

    var get = location.search;
    if (get != '') {
        tmp2 = get.split('redirect=');
        if (tmp2.length > 1) {
            param[0] = tmp2[1].replace("ID=11", "ID=44").replace("PID=1425", "PID=82");
            togglePopupFrame("project", 330, param[0]);

            //setTimeout('togglePopupFrame("project",330 ,param[0])',100);
        }
    }	
} //end onLoadMoveFrame js

function CheckAndShowSingleNews(){
	if(window.location.href.indexOf('NewsID') > 0)
	{	
		var vars = [], hash;
		var hashes = window.location.href.toLowerCase().slice(window.location.href.indexOf('?') + 1).split('&');
		for(var i = 0; i < hashes.length; i++)
		{
		  hash = hashes[i].split('=');
		  vars.push(hash[0]);
		  vars[hash[0]] = hash[1];
		}	
		var pid = vars['pid'];
		var newsID = vars['newsid'];
		togglePopupFrame('project', 330, '/nl-NL/Projecten-item.aspx?PID='+ pid +'&Action=1&NewsId=' + newsID);		
	}	
 }

var divClose;
var objOpen;

function closeFrame(id, top) {
    height = getWindowHeight();
    var objClose = document.getElementById(id);
    divMove = new Tween(objClose.style, 'top', Tween.strongEaseOut, top, height, 1, 'px');

    var useOpacity = t.filters && t.filters.alpha != null;
    if (useOpacity)
        divOpacity = new OpacityTween(objClose, Tween.strongEaseOut, 100, 0, 0.8);
    divmFrameClose = new Parallel();
    divmFrameClose.addChild(divMove);

    if (useOpacity)
        divmFrameClose.addChild(divOpacity);

    if (objOpen) {
        objOpen = document.getElementById(objOpen.id);
        objTop = parseFloat(objOpen.style.top);
        divNewsMove = new Tween(objOpen.style, 'top', Tween.strongEaseOut, objTop, height, 1.5, 'px');
        divNewsOpacity = new OpacityTween(objOpen, Tween.strongEaseOut, 100, 0, 0.5);

        divNewsClose = new Parallel();
        divNewsClose.addChild(divNewsMove);
        divNewsClose.addChild(divNewsOpacity);

        divClose = new Sequence();
        divClose.addChild(divNewsClose);
        divClose.addChild(divmFrameClose);
        divClose.start();

        divClose.onMotionFinished = function() {
            objClose.style.display = "none";
            objOpen.style.display = "none";
        }
    } else {
        divmFrameClose.start();
        divmFrameClose.onMotionFinished = function() {
            objClose.style.display = "none";
        }
    }
}

function toggleNewsFrame(id, top, newsPage) {
    window.frames.news_container.location.href = newsPage;
    if (divClose) {
        divClose.stop();
    }
    if (objOpen) {
        var height = getWindowHeight();
        var objClose = objOpen;
        divClose = new OpacityTween(objClose, Tween.strongEaseOut, 100, 0, 0.5);
        divClose.start();

        divClose.onMotionFinished = function() {
            objClose.style.display = "none";
            openPopupFrame(id, top);
        }
    } else {
        openPopupFrame(id, top);
    }
}

function togglePopupFrame(id, top, projectPage) {
    //window.frames.proj_container.location.href = "proj_frame.php?id=" + pr_id;
    //window.frames.proj_cont.location.href = projectPage;
    //window.frames.projecten_container.location.href = projectPage;

    window.frames.proj_container.location.href = projectPage;
    if (divClose) {
        divClose.stop();
    }
    if (objOpen) {
        var height = getWindowHeight();
        var objClose = objOpen;
        divClose = new OpacityTween(objClose, Tween.strongEaseOut, 100, 0, 0.5);
        divClose.start();

        divClose.onMotionFinished = function() {
            objClose.style.display = "none";
            openPopupFrame(id, top);
        }
    } else {
        openPopupFrame(id, top);
    }
}

function openPopupFrame(id, top) {
    objOpen = document.getElementById(id);
    objOpen.style.display = "block";
    objOpen.style.top = parseFloat(top) + "px";
    divOpen = new OpacityTween(objOpen, Tween.strongEaseOut, 0, 100, 0.5);
    divOpen.start();

    //divOpen.onMotionFinished = function() {
    //	content_height('news_txt');
    //}
}

function closePopupFrame(id, top) {
    height = getWindowHeight();
    var objClose = document.getElementById(id);
    divMove = new Tween(objClose.style, 'top', Tween.strongEaseOut, top, height, 1.5, 'px');
    divOpacity = new OpacityTween(objClose, Tween.strongEaseOut, 100, 0, 0.5);
    divClose = new Parallel();
    divClose.addChild(divMove);
    divClose.addChild(divOpacity);
    divClose.start();

    divClose.onMotionFinished = function() {
        objClose.style.display = "none";
    }
}

//gallery motion
function mouseMove(ev) {
    ev = ev || window.event;
    var mousePos = mouseCoords(ev);
    gFrameX = parseInt(document.getElementById('gFrame').style.left);
    containerX = parseInt(document.getElementById('container').style.left);
    galleryMouseX = mousePos.x - (gFrameX + containerX);
}

function mouseCoords(ev) {
    if (ev.pageX || ev.pageY) {
        return { x: ev.pageX, y: ev.pageY };
    }
    return {
        x: ev.clientX + document.body.scrollLeft - document.body.clientLeft,
        y: ev.clientY + document.body.scrollTop - document.body.clientTop
    };
}
var galleryMotion = true;

function tween() {
    divGallery = document.getElementById('gallery').style;
    divGalleryFlip = document.getElementById('gallery').offsetWidth / 2;

    var distance = galleryMouseX - galleryCenterX;
    distance = distance.toFixed(0);
    divGallery.left = parseInt(divGallery.left) + (Math.round(distance * speed));

    if (parseInt(divGallery.left) > 0) divGallery.left = -divGalleryFlip;
    if (parseInt(divGallery.left) < -divGalleryFlip) divGallery.left = 0;

    if (galleryMotion == false) {
        stopTween();
    }
    gTimer = setTimeout("tween()", 50);
}

function stopTween() {
    speed -= 0.005;
    speed = speed.toFixed(3);
    if (speed <= 0) {
        galleryMouseX = galleryCenterX;
        speed = 1 / 10;
        galleryMotion = true;
    }
}

function startMotion() {
    speed = 1 / 10;
    galleryMotion = true;
}
function stopMotion() {
    galleryMotion = false;
}

var id;
function popImage(img, id) {
    url = document.getElementById('linkId');
    url.href = "/Default.aspx?ID=278&id=" + id;
    document.getElementById('image').src = img;
    document.getElementById('gImage').style.display = "block";
}
function closeImage() {
    divImage = document.getElementById('gImage');
    divImageOpacity = new OpacityTween(divImage, Tween.strongEaseOut, 100, 0, 0.8);
    divImageOpacity.start();

    divImageOpacity.onMotionFinished = function() {
        document.getElementById('image').src = "/Files/sytem/bg/trans.gif";
        document.getElementById('gImage').style.display = "none";
        divImageOpacity = new OpacityTween(divImage, Tween.strongEaseOut, 0, 100, 0.01);
        divImageOpacity.start();
    }
}
function clearField(thisfield, defaulttext) {
    if (thisfield.value == defaulttext) {
        thisfield.value = "";
    }
}

function init() {
    var mainScrollbar = document.getElementById('mscrollbar');
    if (scrollobj.scrollHeight > dd.getWndH()) {
        mainScrollbar.style.display = 'block';

        mscrollbar.resizeTo(mscrollbar.w, dd.getWndH());
        mscrollbar.moveTo(dd.getWndW() - 30, 0);

        b_top.moveTo(mscrollbar.x, mscrollbar.y);
        b_bot.moveTo(mscrollbar.x, mscrollbar.h - b_bot.h);

        dragger.resizeTo(mscrollbar.w, 30);
        track.resizeTo(mscrollbar.w, mscrollbar.h - b_top.h - b_bot.h - dragger.h);

        track.moveTo(mscrollbar.x, b_top.h);
        dragger.moveTo(track.x, track.y);

        dragger.setZ(track.z + 1);
        track.addChild('dragger');
        dragger.defy = (track.y * 2);

        dragger.maxofft = track.y;
        dragger.maxoffb = track.h - b_top.h;

        dragPos();
    } else {
        mainScrollbar.style.display = 'none';
    }
}

function dragPos() {
    scrollPos = scrollobj.scrollTop / (scrollobj.scrollHeight - scrollobj.clientHeight);
    draggerPosY = (track.h * scrollPos) + b_top.h;
    if (draggerPosY > track.h) {
        draggerPosY = track.h + b_top.h;
        scrollobj.scrollTop = scrollobj.scrollHeight - scrollobj.clientHeight
    }
    dragger.moveTo(track.x, draggerPosY);
}

function scrollmUp() {
    scrollobj.scrollTop -= 5;
    dragPos();
    timerUp = setTimeout("scrollmUp()", 10);
}
function scrollmDown() {
    scrollobj.scrollTop += 5;
    dragPos();
    timerDown = setTimeout("scrollmDown()", 10);
}
function clearmScroll() {
    if (window.timerUp) {
        clearTimeout(timerUp);
    }
    if (window.timerDown) {
        clearTimeout(timerDown);
    }
}

function handle(delta) {
    if (_scrollTxt == null)
        return;

    var scroll = document.getElementById(_scrollTxt);
    if (scroll == null || scroll == 'undefined') {
        //alert("debug: element with id='" + _scrollTxt + "' not found!");
        return;
    }

    var wheelStep = 20;
    if (delta < 0) {
        scroll.scrollTop += wheelStep;
    } else {
        scroll.scrollTop -= wheelStep;
    }
}

function wheel(event) {
    var delta = 0;
    if (!event) event = window.event;
    if (event.wheelDelta) {
        delta = event.wheelDelta / 120;
        if (window.opera) {
            delta = -delta;
        }
    } else if (event.detail) {
        delta = -event.detail / 3;
    }
    if (delta) {
        handle(delta);
    }
}

if (window.addEventListener) {
    window.addEventListener('DOMMouseScroll', wheel, false);
} else {
    window.onmousewheel = document.onmousewheel = wheel;
}