//Author: 		Youri op 't Roodt (y.optroodt@gmail.com)
function submitFilter(categoryId, optionId)
{
	url = 'ajaxhandler.php';
	pars = 'action=jaddFilter&categoryId='+categoryId+'&optionId='+optionId;
	
	var myAjax = new Ajax.Request(url,
		{
			method: 'post',
			parameters: pars,
			evalScripts: true,
			onComplete: function(){
				process(categoryId, optionId);
			}
		}
	);
}

function process(categoryId, optionId){
	// globals vmem, fltr, chosenCriteria
	var someNodeList = $$('div.pbox','div.pboxdim');
	var nodes = $A(someNodeList);
	var i = 0;
	var found = false;
	
	nodes.each(function(node){
		var index = node.id.substr(1);
		
		if(vmem.indexOf(index) == -1){
			hide(node);
		}
		else{
			show(node);
		}
	});
	
	
	if($('counter'))
		new Effect.CashRegister('counter',vmem.length,{duration:2});	

    if(optionId != 0){
	    var selectBoxes = chosenCriteria.without(categoryId);
	 }
	 else{
	 	var selectBoxes = chosenCriteria;
	 }
	 		
    for(var i = 0; i < selectBoxes.length; i++){
    	var selectBox = $('select_'+selectBoxes[i]);
    	
    	for(var j = selectBox.length -1; j >= 1 ; j--){
    		if((optionId == 0 && selectBox[i] == categoryId) ||
    			selectBox.selectedIndex == 0){
    			selectBox.options[j].selected = false;
				selectBox.options[j] = null;
				continue;
    		}
    		
    		if((selectBox.options[j].selected && optionId != 0) ||
    			(optionId == 0 && selectBox[i] != categoryId)
    		)
    			continue;
    		
			selectBox.options[j].selected = false;
			selectBox.options[j] = null;
		}
	}
	
	fltr.each(function(pair) {
	  	var sbox = $('select_'+pair.key);
		
		for(var i = 0; i < pair.value.length;i++){
			var thisOptionId = pair.value[i];
			if(pair.key != categoryId){
			  	var sboxOptionId = $F('select_'+pair.key);
				if(sboxOptionId != thisOptionId){
					sbox[sbox.length] = new Option(h[pair.key][thisOptionId], thisOptionId);
				}
			}
			else{
				if(optionId == 0)
					sbox[sbox.length] = new Option(h[pair.key][thisOptionId], thisOptionId);
			}
	  	}	  
	});
}

function popUp(memberId){
	var newWindow = window.open("popup.php?memberId="+memberId, 'popup','height=700,width=300,scrollbars=yes');
}

function resizeMemberContainer(memberCount){
	$('member_container').style.width = (memberCount * 112) + 'px';
}

function resizeViewBox(){
	$('viewBox').style.width = (window.innerWidth)+'px';
}

function hide(elem){
	elem.style.opacity = 0.9;
	elem.style.filter = 'alpha(opacity=90)';
}

function show(elem){
	elem.style.opacity = 0;
	elem.style.filter = 'alpha(opacity=0)';
}

function restore(){
	//restore the page to the session
	if(viewState.length < 150){
		setVisibles(viewState);
	}
}

function setVisibles(visibles){
	var someNodeList = $$('div.pbox');
	var nodes = $A(someNodeList);
	var i = 0;
	var found = false;
	
	//console.log(nodes);
	nodes.each(function(node){
		found = false;
		for(i = 0; i < visibles.length; i++)
		{
			if("m"+visibles[i] == node.id)
			{
				if(node.style.opacity == 0.1){
					show(node);
				}
				
				found = true;
				break;
			}
		}
		
		if(!found && node.style.opacity != 0.1)
		{
			hide(node);
			// do same here, check for visibility window
			//break;
		}
	});
	if($('counter'))
	new Effect.CashRegister('counter',visibles.length,{duration:2});	
	//end visibility
}


function hiliteFav(score){
	for(var i = 1; i <= 5; i++){
		if(i <= score){
			var src = 'hartblauw.gif';
		}
		else{
			var src = 'hartgrijs.gif';
		}

		$('fav'+i).src = 'images/'+src;
	} 
}

function setFavValue(score){
	thisFav = score;
}

function setFavorite(mid,session){
	if(thisFav == 0){
		alert("U dient 1 tot 5 hartjes te selecteren.");
		return false;
	}
		
	var url = 'ajaxhandler.php';
	var pars = 'action=setFav&mid='+mid+'&score='+thisFav+'&PHPSESSID='+session;
	
	var myAjax = new Ajax.Request(
		url,
		{
			method: 'post',
			parameters: pars
		}
	);
	return false;
}

var ev = {
	menu: function(event){

			var pointerX = event.pageX || (event.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft));
			var pointerY = event.pageY || (event.clientY + (document.documentElement.scrollTop || document.body.scrollTop));

			if(!Position.within($('menulist'), pointerX, pointerY) && !Position.within($('son'), pointerX, pointerY)){
				$('menulist').style.display = 'none';
				Event.stopObserving(document, 'mousemove', ev.menu);
			}
	}
	};
	
function positionMenu(elem){
	var position = Position.positionedOffset(elem);
	var dimensions = Element.getDimensions(elem);
	
	$('menulist').style.width = (dimensions.width+30 )+'px';
	$('menulist').style.left = position[0]+'px';
	$('menulist').style.top = dimensions.height+'px';;
	$('menulist').style.display = 'block';
	
	Event.observe(document, 'mousemove', ev.menu);
}

function pflip(src, large_src){
	$('mainp').src = src;	
	$('popup').innerHTML = '<img src="'+large_src+'">'; 
}

function showPopup(){
	$('popup').style.display = "block";
}
//window.onresize = function(){resizeViewBox();}
