// Helpers used in pagination
var mypage=0;
var scroll;
var upfade;
var downfade;
var firstpage=true;
var lastpage=false;

function initscroll() {
	upfade = new Fx.Style('uparrow', 'background-color', {duration:100, wait:false, transition: Fx.Transitions.Quad.easeIn});
	downfade = new Fx.Style('downarrow', 'background-color', {duration:100, wait:false, transition: Fx.Transitions.Quad.easeIn});

	scroll = new Fx.Scroll('thumbnails', {
		wait: false,
		duration: 700,
		transition: Fx.Transitions.Cubic.easeInOut
	});

    var quickscroll = new Fx.Scroll('thumbnails', {
		wait: false,
		duration: 0
	});

    // No, this is not the most elegant way to remember scroll positions...
    thumbpage = Cookie.get("thumbpage");
    if (thumbpage && (thumbpage > 0)) {
        
        firstpage = false;
        $('uparrow').addEvent('mouseenter', function () {upfade.start('#bbbbbb')});
        $('uparrow').addEvent('mouseleave', function () {upfade.start('#888888')});
        upfade.set('#888888');	

        mypage += thumbpage.toInt();

        quickscroll.toElement('thumb-'+(mypage*3+1));
        
    }

    if (!$('thumb-'+((mypage+1)*3+1))) {
        lastpage = true;
        $('downarrow').removeEvents();
        downfade.set('#111111');
    }
}

function initfade() {
	$each($('left').getElements('a[class="menu"]'), function(link, index) {
		var mf = new Fx.Style(link, 'background-color', {duration:100, wait:false, transition: Fx.Transitions.Quad.easeIn});
		link.addEvent('mouseenter', function () {mf.start('#bbbbbb')});
		link.addEvent('mouseleave', function () {mf.start('#888888')});
	});

	$each($('thumbnails').getElements('a[class="thumb"]'), function(link, index) {
		var mf = new Fx.Style(link, 'background-color', {duration:100, wait:false, transition: Fx.Transitions.Quad.easeIn});

		link.addEvent('mouseenter', function () {mf.start('#bbbbbb')});
		link.addEvent('mouseleave', function () {mf.start('#888888')});
	});


    $each($('middle').getElements('a[class="thumblist"]'), function(link, index) {
        var mf = new Fx.Style(link, 'background-color', {duration:100, wait:false, transition: Fx.Transitions.Quad.easeIn});

        link.addEvent('mouseenter', function () {mf.start('#bbbbbb')});
        link.addEvent('mouseleave', function () {mf.start('#888888')});
    });
}

function initintro() {
	if (Cookie.get("skipintro") == '1') {
		// Renew the cookie
		Cookie.set('skipintro', '1', {duration: 7, path: '/'});
		bubbleclicks = 1;
	    return;
	}
	
	initheight = $('left').getStyle('height').toInt();
	
	$('left').setStyles({opacity: 0});
	$('right').setStyles({opacity: 0});
	
    if (window.ie6) {
        ans = confirm('Jouw browser (Internet Explorer 6) is lame, daardoor zou deze site niet goed kunnen werken.\n\nAls je op OK klikt wordt je doorverwezen naar de website waar je Firefox kan downloaden. Klik op annuleren om de website toch te openen.');
        if (ans) {
            window.location = 'http://www.mozilla.com/firefox/';
        }
    }
}

function vcenter() {
	var obj = $('container');
	obj.setStyle('top', window.getScrollTop() + (window.getHeight() - obj.getStyle('height').toInt())/2);
}

function initcenter() {
	vcenter();
	window.onscroll = vcenter;
	window.onresize = vcenter;	
}

function enableuparrow() {
	firstpage = false;
	$('uparrow').addEvent('mouseenter', function () {upfade.start('#bbbbbb')});
	$('uparrow').addEvent('mouseleave', function () {upfade.start('#888888')});
	(function() {upfade.start('#888888')}).delay(500);	
}

function disableuparrow() {
	firstpage = true;
	$('uparrow').removeEvents();
	(function() {upfade.start('#111111')}).delay(500);	
}
function enabledownarrow() {
	lastpage = false;
	$('downarrow').addEvent('mouseenter', function () {downfade.start('#bbbbbb')});
	$('downarrow').addEvent('mouseleave', function () {downfade.start('#888888')});
	(function() {downfade.start('#888888')}).delay(500);	
}
function disabledownarrow() {
	lastpage = true;
	$('downarrow').removeEvents();
	(function() {downfade.start('#111111')}).delay(500);	
}

function scrollup() {
	if (mypage == 0) {
		return;
	} else {
		mypage--;
	}
	
	if (lastpage) enabledownarrow();
	if (mypage == 0) disableuparrow();
	
	Cookie.set('thumbpage', mypage, {'path':'/'});
	
	scroll.toElement('thumb-'+(mypage*3+1));
}

function scrolldown() {
	if (lastpage) return;
	
	enableuparrow();

	mypage++;

	if (!$('thumb-'+((mypage+1)*3+1))) {
		disabledownarrow();
	}
	
	Cookie.set('thumbpage', mypage, {'path':'/'});
		
	scroll.toElement('thumb-'+(mypage*3+1));

}



var initheight;
//var initwidth;

var bubbleclicks = 0;


function bubbleclick() {
	bubbleclicks += 1;
	switch (bubbleclicks) {
		case 1:
			break;
		case 5:
			alert('Ga door, je komt er nog wel!');
			return;
		case 7:
			alert('Ja, je komt er nog wel...');
			return;
		case 13:
			alert('Olalala, dit vind je lekker hé?');
			return;
		case 15:
			alert('Tsjah...');
			window.location = 'http://dickcream.com/h/etc/spin/';
			return;
		default:
			return;
	}
		
	var growl = new Fx.Styles('left', {fps:30, duration:1000, transition: Fx.Transitions.Circ.easeOut });
	var growr = new Fx.Styles('right', {fps:30, duration:1000, transition: Fx.Transitions.Circ.easeOut });

	growl.start({'opacity': 1});
	growr.start({'opacity': 1});
	
	$each($('left').getElements('a'), function(link, index) {
		new Fx.Style(link, 'margin-top', {duration:2300, transition: Fx.Transitions.Quad.easeInOut}).start(initheight,0);
	});
	
	$each($('right').getElements('a'), function(link, index) {
		new Fx.Style(link, 'margin-top', {duration:2300, transition: Fx.Transitions.Cubic.easeOut}).start(initheight,0);
	});
	
	Cookie.set('skipintro', '1', {duration: 7});
}

