if(typeof(gridContent) == "undefined") gridContent = '';

//useful functions
if(typeof(miscFunc) == "undefined") miscFunc = new function() {};
miscFunc.max = document.createElement('input');
miscFunc.max.setAttribute("id","max");
miscFunc.max.value = 1;
miscFunc.max.setAttribute("type","hidden");

miscFunc.setHidden = function(gridNum) {
	YAHOO.util.Dom.setStyle('turystyka-grid'+gridNum,'','block');
};

miscFunc.randomize = function() {
	num = Math.floor(Math.abs(Math.random()*10-5));
	while(num > parseInt(miscFunc.max.value)) {
		//num = Math.floor(Math.random()*11);
		num = Math.floor(Math.abs(Math.random()*10-5));
	}
	return num;
};

miscFunc.count = document.createElement('input');
miscFunc.count.setAttribute("id","curNum");
miscFunc.count.value = miscFunc.randomize();
miscFunc.count.setAttribute("type","hidden");

miscFunc.getID = function () {
	el = document.getElementsByTagName("BODY").item(0);
	return parseInt(el.getAttribute('id').slice(5));
}

// main grid object
Grid = new function() {

YAHOO.util.Event.onContentReady(gridContent,function() {

	var refArray = Array();
	for (i=0;i<9;i++) {
		refArray[i] = false;
	}

	count = new YAHOO.util.Element(miscFunc.count);	
	YAHOO.util.Dom.insertBefore(count,document.getElementById(gridContent));
	
	max = new YAHOO.util.Element(miscFunc.max);	
	YAHOO.util.Dom.insertBefore(max,document.getElementById(gridContent));
	
	animateGrid = function() {
		
		nextGrid = miscFunc.randomize();
				
		while(parseInt(miscFunc.count.value) == nextGrid) {
			nextGrid = miscFunc.randomize();
		}

		miscFunc.count.value = nextGrid;
		
		cur = YAHOO.util.Dom.getElementsByClassName('turystyka-grid-visible')[0];
		next = document.getElementById('turystyka-grid-'+nextGrid);
			
		attributesHide = { 
			opacity: { from: 1, to: 0 }
		};	

		attributesShow = { 
			opacity: { from: 0, to: 1 }
		};		
			
			
		anim = new function(){};
			
		anim.Post = function() {
			cur.setAttribute("class",'turystyka-grid turystyka-grid-hidden');
			YAHOO.util.Dom.setStyle(cur,"opacity","0");
			YAHOO.util.Dom.setStyle(cur,"z-index","0");
			next.setAttribute("class",'turystyka-grid turystyka-grid-visible');
			YAHOO.util.Dom.setStyle(next,"opacity","1");
			YAHOO.util.Dom.setStyle(next,"z-index","2000");
		}
			
		anim.hide = new YAHOO.util.Anim(cur, attributesHide,2);
		anim.show = new YAHOO.util.Anim(next, attributesShow,1.5); 
		//anim.show.onStart.subscribe(anim.hide.animate);
		
			
		cur.setAttribute("class",'turystyka-grid turystyka-grid-hidden');
		YAHOO.util.Dom.setStyle(cur,"opacity","0");
		YAHOO.util.Dom.setStyle(cur,"z-index","0");
		next.setAttribute("class",'turystyka-grid turystyka-grid-visible');
		anim.show.animate();
		//YAHOO.util.Dom.setStyle(next,"opacity","1");
		YAHOO.util.Dom.setStyle(next,"z-index","2000");
	}
		
	makeMarkup = new function () {		
		// make proper tags	
		itemsArray = YAHOO.util.Dom.getElementsByClassName('turystyka-item');
		miscFunc.max.value = Math.abs(itemsArray.length/9);

		if(Math.abs(itemsArray.length/9) > 1) {
			frame = YAHOO.util.Dom.getElementsByClassName('turystyka-list')[0];
			frame.setAttribute("id","turystyka-list-window");
			YAHOO.util.Dom.setStyle("turystyka-list-window","width",759+"px");
			YAHOO.util.Dom.setStyle("turystyka-list-window","height",729+"px");
			YAHOO.util.Dom.setStyle("turystyka-list-window","overflow","hidden");
			
			// create container
			container = document.createElement('div');
			container.setAttribute("id","turystyka-list-container");
			container.innerHTML = "<span></span>";
			YAHOO.util.Dom.insertBefore(container,YAHOO.util.Dom.getFirstChild(frame));
			YAHOO.util.Dom.setStyle("turystyka-list-container","width",759+"px");
			YAHOO.util.Dom.setStyle("turystyka-list-container","height",729+"px");
			YAHOO.util.Dom.setStyle("turystyka-list-container","position","relative");

			i=0;
			j=0;
			pos = 0;
			
			while(i<(Math.abs(itemsArray.length/9)-1)) {
				gridElement = document.createElement('div');
				gridElement.setAttribute("id","turystyka-grid-"+i);
				gridElement.setAttribute("class",'turystyka-grid turystyka-grid-hidden');
				gridElement.innerHTML = "<span></span>";
				YAHOO.util.Dom.insertBefore(gridElement,YAHOO.util.Dom.getLastChild(container));
				YAHOO.util.Dom.setStyle("turystyka-grid-"+i,"width","759px");
				YAHOO.util.Dom.setStyle("turystyka-grid-"+i,"height","729px");
				YAHOO.util.Dom.setStyle("turystyka-grid-"+i,"opacity","0");
				YAHOO.util.Dom.setStyle("turystyka-grid-"+i,"position","absolute");
				YAHOO.util.Dom.setStyle("turystyka-grid-"+i,"z-index","0");
				while(j<9) {
					pos = (i*9)+j;
					if(pos <= (itemsArray.length-1)) {
						itemsArray[pos].setAttribute("id","turystyka-item-"+pos);
						j++;
						YAHOO.util.Dom.insertBefore(itemsArray[pos],YAHOO.util.Dom.getLastChild(gridElement));
						refArray[i] = true; 
					}
					else {
						//console.log(pos)
						//element = new YAHOO.util.Element('li',itemsArray[pos-itemsArray.length]);
						
						//element.id = "turystyka-item-"+(pos);
						//console.log(element);
						//YAHOO.util.Dom.insertBefore(element,YAHOO.util.Dom.getLastChild(gridElement));
						//console.log(j);
						j++;
					}
				}
				j=0;
				i++;
			}
			
			// make random visible
			cur = document.getElementById("turystyka-grid-"+miscFunc.count.value);
			cur.setAttribute("class",'turystyka-grid turystyka-grid-visible');
			YAHOO.util.Dom.setStyle("turystyka-grid-"+num,"opacity","1");
			YAHOO.util.Dom.setStyle("turystyka-grid-"+num,"z-index","2000");
		}
	}();
	if(parseInt(miscFunc.max.value) > 1) {
		var intId = setInterval(animateGrid,12000);
	}	
});
} ();

