
function catalogueSearch(item) {
	window.location = absolute_adress + '/katalog/hledat-' + item.replace(/ /g, '-') + '.html';
	return false;
}


function genPage(num) {
	
	var li = document.createElement('li');
	
	li.id = 'page.' + num;
	
	addEvent('click', function() { changePage(num); } ,li);
	
	var text = document.createTextNode(num);
	li.appendChild(text);
	
	return li;
	
}

function generatePages(count, activePage) {
	
	//alert('genPages count:' + count);
	//alert('genPages activePage:' + activePage);
	
	var i = 1;
	var node;
	
	var paging = document.getElementById('paging');
	var pages = document.getElementById('pages');
	
	
	if (count <= 1) {
		paging.style.display = 'none';
	} else {
		
		while (node = document.getElementById('page.'+i)) {
			node.className = '';
			i++;
		}
		
		i--;
		
		if (count > i) {
			
			for (var x=(i+1); x <= count; x++) {
				node = genPage(x);
				pages.appendChild(node);
				
			}
			
		} else if (count < i) {
			
			for (var x=i; x > count; x--) {
				node = document.getElementById('page.'+x);
				pages.removeChild(node);
			}
		}
		
		document.getElementById('page.'+activePage).className = 'active';
		paging.style.display = 'block';
	}
	
}

function nextPage() {
	
	var pageCount = document.getElementById('pagecount').value;
	var actNum = document.getElementById('activepage').value;
	
	if (parseInt(actNum) < parseInt(pageCount)) {
		
		document.getElementById('filter_page').value = parseInt(actNum)+1;
		getCatalogue();
		
	}
	
}


function prevPage() {
	
	var actNum = document.getElementById('activepage').value;
	
	if (parseInt(actNum) >= 2) {
		
		document.getElementById('filter_page').value = parseInt(actNum)-1;
		getCatalogue();
		
	}
	
}

function changePage(num) {
	//alert(num);
	document.getElementById('filter_page').value = num;
	getCatalogue();
	
}


function changeOrder(type) {
	
	if (type == 'asc') {
		document.getElementById('filter_ordering').value = 'ASC';
		//document.getElementById('btnAsc').className = 'asc ascActive';
		//document.getElementById('btnDesc').className = 'desc';
	} else {
		document.getElementById('filter_ordering').value = 'DESC';
		//document.getElementById('btnAsc').className = 'asc';
		//document.getElementById('btnDesc').className = 'desc descActive';
	}
	
	getCatalogue();
}

/*
function changeMode(mode) {
	
	if (mode == 'table') {
		document.getElementById('filter_mode').value = '2';
		document.getElementById('tableMode').className = 'open';
		document.getElementById('tilesMode').className = '';
	} else {
		document.getElementById('filter_mode').value = '1';
		document.getElementById('tableMode').className = '';
		document.getElementById('tilesMode').className = 'open';
	}
	
	document.getElementById('filter_page').value = 1;
	
	getCatalogue();
}
*/



var catalogueQuery = '';

var filterNodesSet = false;
var filterSearch;

var filterCat;
var filterSubCat;
var filterMan;
var filterCol;

var filtrManuf;

var filterSize;

function catalogueFilter(stop) {
	
	var man;
	catalogueQuery = '';
	
	//katalog/kategorie-panske-pradlo/podkategorie-tanga/vyrobce-SOH/velikosti-S-M-L/barvy-cervena-modra/cena-300-2000/hledat-plavky/
	
	if (filterNodesSet == false) {
		
		filterSearch = document.getElementById('filter_search');
		filterCat = document.getElementById('filter_cat');
		filterSubCat = document.getElementById('filter_subcat');
		filterMan = document.getElementById('filter_man');
		filterCol = document.getElementById('filter_col');
		filtrManuf = document.getElementById('filtr_manuf');
		filterSize = document.getElementById('filter_size');
		
		filterNodesSet = true;
		
	}
	
	if (filterCat.value != '') {
		catalogueQuery += 'kategorie-'+filterCat.value+'/';
		
		if (filterSubCat.value != '') {
			catalogueQuery += 'podkategorie-'+filterSubCat.value+'/';
		}
		
		if (filtrManuf.value != '' && filtrManuf.value != 'all;') {
			
			var man = filtrManuf.value;
			man = man.substring(0, man.length-1).split(';')
			
			if (man.length == 1) {
				man = filtrManuf.value; 
				catalogueQuery += 'vyrobce-'+man.substring(0, man.length-1)+'/';
			} else {
				man = filtrManuf.value; 
				catalogueQuery += 'vyrobci-'+man.substring(0, man.length-1).replace(/;/gi,'-')+'/';
			}
			
			
			
		}
		
	}
	
	
	if (filterMan.value != '') {
		
		catalogueQuery += 'vyrobce-'+filterMan.value+'/';
		
		if (filterCol.value != '') {
			catalogueQuery += 'kolekce-'+filterCol.value+'/';
		}
		
	}
	
	
	
	if (filterSearch.value != '') {
		catalogueQuery += 'hledat-'+filterSearch.value+'/';
	}
	
	if (filterSize.value != '') {
		catalogueQuery += 'velikost-'+filterSize.value+'/';
	}
	
	if (!stop) {
		getCatalogue();
	}
	
}


var viewQuery = '';

var viewNodesSet = false;
//var viewMode;
//var viewOrderBy;
var viewOrdering;
var viewPage;



function catalogueOrderBy(stop) {
	
	if (viewNodesSet == false) {
		
		viewNodesSet = true;
		//viewMode = document.getElementById('filter_mode');
		//viewOrderBy = document.getElementById('filter_orderby');
		viewOrdering = document.getElementById('filter_ordering');
		viewPage = document.getElementById('filter_page');
		
	}
	
	/*
	if (!viewMode || viewMode.value == '') {
		var mode = '1';
	} else {
		var mode = viewMode.value;
	}
	
	
	if (!viewOrderBy || viewOrderBy.value == '') {
		var orderBy = '1'
	} else {
		var orderBy = viewOrderBy.value;
	}
	*/
	
	if (!viewOrdering || viewOrdering.value == '') {
		var ordering = 'ASC';
	} else {
		var ordering = viewOrdering.value;
	}
	
	if (!viewPage || viewPage.value == '') {
		var page = '1';
	} else {
		var page = viewPage.value;
	}
	
	
	
	//viewQuery = ordering + '-' + page;
	viewQuery = 'strana-' + page+'/razeni-'+ordering;
	
	if (!stop) {
		getCatalogue();
	}
	
	
}



function getCatalogue() {
	
	
	/*
	var workingNode = document.getElementById('catalogueItems');
	
	
	var action = new Object;
	action.XML = false;
	
	action.setUp = function() {
		
		workingNode.style.opacity = 0.5;
		workingNode.style.filter = 'alpha(opacity=50)';
		
		
		document.getElementById('catalogue_loader').style.display = 'block';
		
	}
	
	action.complete = function(response) {
		
		document.getElementById('catalogue_loader').style.display = 'none';
		
		workingNode.style.opacity = 1;
		workingNode.style.filter = 'alpha(opacity=100)';
		
		workingNode.innerHTML = response;
		
		generatePages(document.getElementById('pagecount').value, document.getElementById('activepage').value);
	}
	
	
	catalogueFilter(true);
	catalogueOrderBy(true);
	
	
	var actionFilter = document.getElementById('filter_action').value;
	
	if (actionFilter != '') {
		actionFilter = '&action='+actionFilter;
	}
	
	
	//alert('getCatalogue("'+absolute_adress + '/catalogue.php?type=ajax&view='+viewQuery+'&url='+catalogueQuery+'")');
	get(absolute_adress + '/catalogue.php?type=ajax&view='+viewQuery+'&url='+catalogueQuery+actionFilter, action);
	*/
	
	catalogueFilter(true);
	catalogueOrderBy(true);
	window.location = absolute_adress + '/katalog/' + catalogueQuery + viewQuery + '.html'
	
}



