// JavaScript Document

var SF = {};

SF.options = {
	selectIds:{
		year:'year', 
		month:'month', 
		country:'country', 
		city:'city', 
		type:'type', 
		submit:'submit'},
	displayTable:'table',
	displayTableRow:'table-row'
};
SF.tableList = [];

SF.filter = function(){
	if(navigator.appName.indexOf("Explorer") != -1){
		SF.options.displayTable = 'inline-block';
		SF.options.displayTableRow = 'inline-block';
	}
	this.createTableList();
	SF.filterYear();
	
	SF.filterMonth();
	SF.filterCountry();
	SF.filterCity();
	SF.filterType();
	document.getElementById(SF.options.selectIds.submit).style.display='none';
}

SF.createTableList = function(){
	var elementList = document.getElementsByTagName('table');	
	SF.tableList = [];
	for(var i = 0; i < elementList.length; i++){
		if(elementList[i].className == 'alleseminare'){
			SF.tableList.push(elementList[i]);
		}
	}
}

SF.filterYear = function(){
	var select = document.getElementById(SF.options.selectIds.year);
	
	for(var i = 0; i < SF.tableList.length; i++){
		if(select.value != 0){
			var id = SF.tableList[i].id;
			var sid = id.split("_");
		
			if(sid[1] != select.value){
				SF.tableList[i].style.display = 'none';
			}else{ 
				SF.tableList[i].style.display = SF.options.displayTable;
			}
		}else{
			SF.tableList[i].style.display = SF.options.displayTable;
			var rowList = SF.tableList[i].getElementsByTagName('tr');		
			var hideCnt = 1;
			for(var j = 0; j < rowList.length; j++){
				rowList[j].style.display = SF.options.displayTableRow;
			}
		}
	}
}

SF.filterMonth = function(){
	var select = document.getElementById(SF.options.selectIds.month);
	if(select.value != 0){
		for(var i = 0; i < SF.tableList.length; i++){
			if(SF.tableList[i].style.display != 'none'){
				var id = SF.tableList[i].id;
				var sid = id.split("_");
				
				if(sid[2] != select.value){
					SF.tableList[i].style.display = 'none';
				}else{ 
					SF.tableList[i].style.display = SF.options.displayTable;
				}
			}
		}
	}
}
SF.filterCountry = function(){
	var select = document.getElementById(SF.options.selectIds.country);
	
	
	for(var i = 0; i < SF.tableList.length; i++){
		if(select.value != 0){
			if(SF.tableList[i].style.display != 'none'){
				var rowList = SF.tableList[i].getElementsByTagName('tr');		
				var hideCnt = 1;
				for(var j = 0; j < rowList.length; j++){
					var id = rowList[j].id;
					
					if(id){
						var sid = id.split("_");
						
						if(sid[1] != select.value){
							rowList[j].style.display = 'none';
							hideCnt++;
						}else{ 
							rowList[j].style.display = SF.options.displayTableRow;
						}
					}
				}
				//alert(hideCnt +':'+ rowList.length);
				if(hideCnt == rowList.length){
					
					SF.tableList[i].style.display = 'none';
				}
			}
		}
	}
}

SF.filterCity = function(){
	var select = document.getElementById(SF.options.selectIds.city);
	
	for(var i = 0; i < SF.tableList.length; i++){
		if(select.value != 0){
			if(SF.tableList[i].style.display != 'none'){
				var rowList = SF.tableList[i].getElementsByTagName('tr');		
				var hideCnt = 0;
				var rowCnt = 0;
				for(var j = 0; j < rowList.length; j++){
					var id = rowList[j].id;
					
					if(id  && rowList[j].style.display != 'none'){
						var sid = id.split("_");
						rowCnt++;
						if(sid[2] != select.value){
							rowList[j].style.display = 'none';
							hideCnt++;
						}else{ 
							rowList[j].style.display = SF.options.displayTableRow;
						}
					}
				}
				//alert(hideCnt +':'+ rowList.length);
				if(hideCnt == rowCnt){
					
					SF.tableList[i].style.display = 'none';
				}
			}
		}
	}
}

SF.filterType = function(){
	var select = document.getElementById(SF.options.selectIds.type);
	
	for(var i = 0; i < SF.tableList.length; i++){
		if(select.value != 0){
			if(SF.tableList[i].style.display != 'none'){
				var rowList = SF.tableList[i].getElementsByTagName('tr');		
				var hideCnt = 0;
				var rowCnt = 0;
				for(var j = 0; j < rowList.length; j++){
					var id = rowList[j].id;
					
					if(id && rowList[j].style.display != 'none'){
						var sid = id.split("_");
						rowCnt++;
						if(sid[3] != select.value){
							rowList[j].style.display = 'none';
							hideCnt++;
						}else{ 
							rowList[j].style.display = SF.options.displayTableRow;
						}
					}
				}
				//alert(hideCnt +':'+ rowList.length);
				if(hideCnt == rowCnt){
					
					SF.tableList[i].style.display = 'none';
				}
			}
		}
	}
}

SF.clearString = function(s){
	var r = s.replace(/ /g, "");
	r = s.replace(/\//g, "");
	r = s.replace(/\\/g, "");
	return r;
}
