$wall = null;
function buildPage(colls) {	
	//banner slider: load with ajax
	$('#banner').load('_include/banner.php?c='+colls, function() {
		$('#slider').nivoSlider({
	        effect:'fade', //Specify sets like: 'fold,fade,sliceDown'
	        slices:1,
	        animSpeed:500, //Slide transition speed
	        pauseTime:6000,
			captionOpacity:1, 
	        startSlide:0, //Set starting Slide (0 index)
	        directionNav:false //Next & Prev
	    });
	});
	
	$wall = $('#content');
	
	//masonry		
	$('#content').masonry({
		singleMode: true, 
		itemSelector: '.block'
	});
	
	//filtered
	$("#filteredBtn").find('a').bind('click', {}, getFilteredBlocks);
	
	//on index page for reset pasw ...
	homePopups();
	
	//$("#blocksNav").find('a.prev').addClass("prev-disabled");
	$("#wrapper").data('i', 0);
	//we need to call it here when it is loaded!
	updatePagingBtns();
}

function initPaging(total, isAjaxCall){
	//called from blocks.php
	
	showN = 15;
	
	//alert("initPaging " + isAjaxCall);
	//alert( $("#wrapper").data('i') );
	
	//$("#wrapper").data('i', 0);
	$("#wrapper").data('showN', showN);
	$("#wrapper").data('total', total);
	
	//can not set any of the btns here! onload
	
	//for ajax calls
	//alert(isAjaxCall);
	//if(isAjaxCall==true) 
	updatePagingBtns();
}

function updatePagingBtns(){
	
	$i = $("#wrapper").data('i');
	$total = $("#wrapper").data('total');
	$showN = $("#wrapper").data('showN');
	
	//alert("--> " + $total);
	$blocksNav = $("#blocksNav");
	//$blocksNav.find('a.prev').addClass("prev-disabled");
	
	
	//alert("updatePagingBtns i=" + $i);
	//update the buttons
	//disable prev?
	if( $i <= 0){
		$blocksNav.find("a.prev").addClass("prev-disabled");
		$blocksNav.find("a.prev").unbind("click");
	//enable prev
	} else if($blocksNav.find("a.prev").hasClass('prev-disabled')){
		$blocksNav.find("a.prev").removeClass("prev-disabled");
		$blocksNav.find("a.prev").bind('click', {dir: -1}, getNextBlocks);
	}
		
	//disable next?
	if( ($i+1)*$showN >= $total){
		$blocksNav.find("a.next").addClass("next-disabled");
		$blocksNav.find("a.next").unbind("click");
	//enable next
	} else if($blocksNav.find("a.next").hasClass('next-disabled')){
		$blocksNav.find("a.next").removeClass("next-disabled");
		$blocksNav.find("a.next").bind('click', {dir: 1}, getNextBlocks);
	}
}

var getNextBlocks = function(event) {
	
	$i = $("#wrapper").data('i');
	$dir = event.data.dir;
	$i = parseInt($dir) + $i;
	
	//alert("wrapper i="+$i);
	$total = $("#wrapper").data('total');
	$showN = $("#wrapper").data('showN');
	$filtered = $("#wrapper").data('filtered');
	
	//store new one
	//alert("store new i="+$i);
	$("#wrapper").data('i', $i);
	
	$blocksNav = $("#blocksNav");
	
	//first remove all the blocks
	cleanupMasonry();
	
	updatePagingBtns();
	
	var args = {i:$i};
	if(!$filtered) args = {i:$i, unfiltered:true};
	
	$.get("getNextBlocks.php", args, function(content) {
		
		$box = $( content );
		$('#content').append( $box );
		$('#content').masonry({
			singleMode: true, 
			itemSelector: '.block'
			,appendedContent: $box
		});
		
		$.wallReset();
	});	
};

var getFilteredBlocks = function(event) {
	
	var args = {};
	
	$("#wrapper").data('i', 0);
	
	//update the button
	if( $("#filteredBtn").find("a").hasClass('filtered') ){
		$("#filteredBtn").find("a").removeClass("filtered");
		$("#filteredBtn").find("a").html(btnFilteredStr);
		args = {unfiltered: true};
		$filtered = false;
	} else {
		$("#filteredBtn").find("a").addClass("filtered");
		$("#filteredBtn").find("a").html(btnUnFilteredStr);
		$filtered = true;
	}
	
	$("#wrapper").data('filtered', $filtered);
	//alert( ("#wrapper").data('filtered') );
	
	cleanupMasonry();
	
	updatePagingBtns();
	
	$.get("getNextBlocks.php", args, function(content) {
		//alert("loaded: " + content);
		
		$box = $( content );
		$('#content').append( $box );
		$('#content').masonry({
			singleMode: true, 
			itemSelector: '.block'
			,appendedContent: $box
		});
		
		$.wallReset();
	});	
}

var cleanupMasonry = function(event) {
	//first remove all the blocks
	
	$('#content').find('.main-block').remove();
	$('#content').find('script').remove();
	$.wallReset();
	$wall.masonry(); 
	return;
	
	$('#content').find('.box').remove();
	$("#content").remove();
	$('#share').after('<div id="content"> </div>');
	//$wall.find('.box').remove();
}

var getArticles = function(event) {
	
	$catDiv = $( $(this)).parents('.block');
	$cat = $catDiv.attr("id");
	
	$showN = $catDiv.data('showN');	
	$i = $catDiv.data('i');	
	$dir = event.data.dir;
	$i += $dir;
	//store new one
	$catDiv.data('i', $i);	
		
	$catDiv.find(".box-articles").load('getBlock.php', {cat: $cat, dir: $dir, showN: $showN, i: $i, append:0}, function() {
		//alert("loaded: " + response);
	/*	$('#content').masonry({
			singleMode: true, 
			itemSelector: '.block'
		});
		
		*/
		$('#content').masonry({});
		
		updateBtns( $catDiv );
	});
};

var appendArticles = function(event) {
	
	$catDiv = $( $(this)).parents('.block');
	$cat = $catDiv.attr("id");
	
	
	/*$showN = $catDiv.data('showN');	
	$i = $catDiv.data('i');	
	$dir = event.data.dir;
	$i += $dir;
	//store new one
	$catDiv.data('i', $i);	
	*/
	/*$.get("getBlock.php", {cat: $cat, dir: $dir, showN: $showN, i: $i, append:1}, function(content) {
		//alert("loaded: " + content);
		$catDiv.find(".box-articles").append( $(content) );
		$('#content').masonry();
		updateBtns( $catDiv );
	});*/
	
	$catDiv.find(".box-articles").load('getBlock.php', {cat: $cat, append:1}, function() {
		//alert("loaded: " + response);
		$('#content').masonry();
		
		//disable btns
		$catDiv.find("a.prev").addClass("prev-disabled");
		$catDiv.find("a.prev").unbind("click");
		$catDiv.find("a.next").addClass("next-disabled");
		$catDiv.find("a.next").unbind("click");
		$catDiv.find(".append-block").addClass("append-block-min");
		$catDiv.find('.append-block').unbind("click");
		$catDiv.find('.append-block').bind("click", {dir: 1}, removeArticles);
	});
};

var removeArticles = function(event) {
	
	$catDiv = $( $(this)).parents('.block');
	$cat = $catDiv.attr("id");
	
	$showN = $catDiv.data('showN');	
	$i = 0;	
	$dir = event.data.dir;
	//$i += $dir;
	//store new one
	$catDiv.data('i', $i);
	
	/*$.get("getBlock.php", {cat: $cat, dir: $dir, showN: $showN, i: $i, append:1}, function(content) {
		//alert("loaded: " + content);
		$catDiv.find(".box-articles").append( $(content) );
		$('#content').masonry();
		updateBtns( $catDiv );
	});*/
	
	$catDiv.find(".box-articles").load('getBlock.php', {cat: $cat, dir: $dir, showN: $showN, i: $i}, function() {
		//alert("loaded: " + response);
		$('#content').masonry();
		
		updateBtns( $catDiv );
		$catDiv.find(".append-block").removeClass("append-block-min");
		$catDiv.find('.append-block').unbind("click");
		$catDiv.find('.append-block').bind('click', {dir: 1}, appendArticles);
	});
};

function updateBtns($catDiv){
	//alert($catDiv.attr("id"));
	
	$showN = $catDiv.data('showN');	
	$i = $catDiv.data('i');		
	$total = $catDiv.data('total');	
	
	//disable prev?
	if( $i <= 0){
		$catDiv.find("a.prev").addClass("prev-disabled");
		$catDiv.find("a.prev").unbind("click");
	//enable prev
	} else if($catDiv.find(".prev").hasClass('prev-disabled')){
		$catDiv.find("a.prev").removeClass("prev-disabled");
		$catDiv.find("a.prev").bind('click', {dir: -1}, getArticles);
	}
	
	//disable next?
	if( ($i+1)*$showN >= $total){
		$catDiv.find("a.next").addClass("next-disabled");
		$catDiv.find("a.next").unbind("click");
		//$catDiv.find(".append-block").addClass("disabled");
		//$catDiv.find('.append-block').unbind("click");
	//enable next
	} else if($catDiv.find(".next").hasClass('next-disabled')){
		$catDiv.find("a.next").removeClass("next-disabled");
		$catDiv.find("a.next").bind('click', {dir: 1}, getArticles);
		//$catDiv.find(".append-block").removeClass("disabled");
		//$catDiv.find('.append-block').bind('click', {dir: 1}, appendArticles);
	}
}

function initBtns($catAlias, $showN, $total){

	$catDiv = $("#cat_"+$catAlias);
	
	$catDiv.data('i', 0);	
	$catDiv.data('showN', $showN);	
	$catDiv.data('total', $total);
	//alert( jQuery.data($catDiv, "i") );
	//alert( jQuery.data($catDiv, "total") );
	
	//on init
	$catDiv.find("a.prev").addClass("prev-disabled");
	
	//not enough
	if($total <= $showN){				
		$catDiv.find("a.next").addClass("next-disabled");		
		$catDiv.find(".append-block").addClass("disabled");
	} else {
		//enable the next clicks
		$catDiv.find("a.next").bind('click', {dir: 1}, getArticles);
		//$catDiv.find('.append-block').bind('click', {dir: 1}, getArticles);
		$catDiv.find('.append-block').bind('click', {dir: 1}, appendArticles);
	}
}
