/*
 *  Copyright (c) 2011, Franz Bettag <franz@bett.ag>
 *  All rights reserved.
 *
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *     * Redistributions of source code must retain the above copyright
 *       notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above copyright
 *       notice, this list of conditions and the following disclaimer in the
 *       documentation and/or other materials provided with the distribution.
 *     * All advertising materials mentioning features or use of this software
 *       must display the following acknowledgement:
 *       This product includes software developed by the Bettag Systems UG
 *       and its contributors.
 *
 *  THIS SOFTWARE IS PROVIDED BY BETTAG SYSTEMS UG ''AS IS'' AND ANY
 *  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 *  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 *  DISCLAIMED. IN NO EVENT SHALL BETTAG SYSTEMS UG BE LIABLE FOR ANY
 *  DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 *  (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 *  LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 *  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 */

BSI = {};
BSI.images = [];

/**
 * State
 */
BSI.state = {};
BSI.state.cookie = { expires: 20, path: '/' };

// this only makes sure the right image is set on startup.
// it is not recommended to put JS right after objects,
// but it will look better on page load. so fuck off. ;)
BSI.init = function() {
	var header = $('#header');
	for (i = 0; i < 7; i++) {
		var img = $('<img />').attr('src', '/vectorlover/header_0'+(i+1)+'.jpg');
		if (i == BSI.get()) img.addClass('displayNOW')
		img.prependTo(header);
	}
	BSI.images = $('#header img');
	console.log("BSI: " + BSI.get() + "; Images: " + BSI.images.length);

	window.setInterval(BSI.rotate, 6000);
};

BSI.rotate = function() {
	var curI = BSI.get();
	if (curI >= BSI.images.length-1) {
		curI = 0;
	} else {
		curI++;
	}
	console.log("BSI: " + BSI.get() + "; Images: " + BSI.images.length + "; Setting: " + curI);
	BSI.set(curI);
};

BSI.get = function() {
	var r = $.cookie('header');
	if (r === undefined || r === null) {
		return 0;
	} else {
		return r;
	}
};

BSI.set = function(v, now) {
	if (now === undefined || now === null) { now = false; }
	if (v >= 0 && v <= BSI.images.length && BSI.images.length > 0) {
		BSI.images.removeClass('display').removeClass('displayNOW');
		var zehClass = 'display';
		if (now) { zehClass = 'displayNOW' }
		$(BSI.images[v]).addClass(zehClass);
	} else {
		v = 0;
	}

	$.cookie('header', v, BSI.state.cookie);
};

$(document).ready(function() {
	BSI.init(); // just to make sure
});

