document.observe("dom:loaded",function() {
	if ($("scrollerwrap")) {
		// vertical slider control
		var sliderThumb = new Control.Slider('handlethumb', 'trackthumb', {
			axis: 'vertical',
			onSlide: function(v) { scrollVertical(v, $('scrollablethumb'), sliderThumb);  },
			onChange: function(v) { scrollVertical(v, $('scrollablethumb'), sliderThumb); }
		});	
		if (($('scrollablethumb').scrollHeight-3) <= $('scrollablethumb').offsetHeight) {
			sliderThumb.setDisabled();
			$('scrollerwrap').hide();
		}
	}

	if ($("scrollerwrapsearch")) {
		// vertical slider control
		$('scrollerwrapsearch').setStyle({visibility : "hidden"});
		var sliderSearch = new Control.Slider('handlersearch', 'tracksearch', {
			axis: 'vertical',
			onSlide: function(v) { scrollVertical(v, $('scrollablesearch'), sliderSearch);  },
			onChange: function(v) { scrollVertical(v, $('scrollablesearch'), sliderSearch); }
		});	
	}
	
	if ($("scrollerwraptext")) {
		// vertical slider control
		var sliderText = new Control.Slider('handlertext', 'tracktext', {
			axis: 'vertical',
			onSlide: function(v) { scrollVertical(v, $('scrollabletext'), sliderText);  },
			onChange: function(v) { scrollVertical(v, $('scrollabletext'), sliderText); }
		});
		if ($('scrollabletext').scrollHeight <= $('scrollabletext').offsetHeight) {
			sliderThumb.setDisabled();
			$('scrollerwraptext').hide();
		}
	}
});

// scroll the element vertically based on its width and the slider maximum value
function scrollVertical(value, element, slider) {
	element.scrollTop = Math.round(value/slider.maximum*(element.scrollHeight-element.offsetHeight));
}

function openSearchPanel() {
	new Effect.BlindUp("body_panel",{
		duration : 0.5,
		afterFinish : function() {
			new Effect.SlideDown("search_panel", {duration : 1,
				afterFinish : function() {$('scrollerwrapsearch').setStyle({visibility : "visible"});}
			});
			
			} 
	});
}

var curImageIndex = 0;
var galleryNumber;
var shirtsizes = new Array("xs","s","m","l","xl","xxl");
	
function displayImageModel(index) {
	if (curImageIndex != 0) {
		$("detail_image_"+curImageIndex).style.display = "none";
		//alert($("thumb_image_"+curImageIndex).style.border = "none");
		$("thumb_image_"+curImageIndex).style.border = "2px solid #fff";
		//$("thumb_image_"+curImageIndex).style.border = "solid 1px #fff";
		//$("thumb_image_"+curImageIndex).style.opacity = 0.4;
		//$("thumb_image_"+curImageIndex).style.filter = "alpha(opacity=40)";
		//$("thumb_image_"+curImageIndex).filters.alpha.opacity=40;
	}
	$("detail_image_"+index).style.display = "";
	$("thumb_image_"+index).style.border = "2px solid #fa0";
	//$("thumb_image_"+index).style.opacity=1;
	//$("thumb_image_"+index).style.filter = "alpha(opacity=100)";
	curImageIndex = index;
	
	if (curImageIndex == galleryNumber) {
		$('next_but').style.display = 'none';
	} else {
		$('next_but').style.display = '';
	}
	if (curImageIndex == 1) {
		$('prev_but').style.display = 'none';
	} else {
		$('prev_but').style.display = '';
	}
}

function displayNextImageModel() {
	if (curImageIndex<galleryNumber) {
		displayImageModel(curImageIndex+1)
	}
}

function setGalleryNumber(i) {
	galleryNumber = i;
	if ((i == 0) || (i == 1)) {
		$('next_but').style.display = 'none';
		$('prev_but').style.display = 'none';
	}
}

function displayPrevImageModel() {
	if (curImageIndex>1) {
		displayImageModel(curImageIndex-1);
	}
}

function ajaxUpdater(divOut, handler, post) {
	new Ajax.Updater(
		divOut,
		'ajax.php',
		{
			method : 'post',
			parameters : 'page='+handler+"&"+post
		}
	);
}

function ajaxRequest(onCompleteFunction, handler, post) {
	new Ajax.Request(
		'ajax.php',
		{
			method : 'post',
			parameters : 'page='+handler+"&"+post,
			onComplete : onCompleteFunction
		}
	);
}

function searchModel(pageindex) {
	// search parameter
			var shirtsizepar = "";
		for(i = 0;i<shirtsizes.length;i++) {
			if ($('searched_shirtsize_'+shirtsizes[i]).checked) {
				shirtsizepar += ($F('searched_shirtsize_'+shirtsizes[i])+" ");
			}
		} 
		
	var params = {

		name : $F('searched_name'),
		sport : $F('searched_sport'),
		age_group : $F('searched_age_group'),
		key_desc : $F('searched_desc'),
		category : $F('searched_category'),
		// admin options
		length :$F('searched_length'),
		haircolor : $F('searched_haircolor'),
		eyecolor : $F('searched_eyecolor'),
		confectiesize : $F('searched_confectiesize'),
		jeanssize : $F('searched_jeanssize'),
		shirtsize : shirtsizepar,	
		shoesize : $F('searched_shoesize'),
		nude :$F('searched_nude'),
		gender : sexFilter,
		pageindex : pageindex
	}
	//alert($H(params).toQueryString());
	ajaxRequest(animateSearchResult,'site/modelsearch.php',$H(params).toQueryString());
}
function searchModelAdmin(pageindex) {
	// search parameter
	var shirtsizepar = "";
	for(i = 0;i<shirtsizes.length;i++) {
		if ($('searched_shirtsize_'+shirtsizes[i]).checked) {
			shirtsizepar += ($F('searched_shirtsize_'+shirtsizes[i])+" ");
		}
	} 
	
	var params = {
		name : $F('searched_name'),
		sport : $F('searched_sport'),
		age_group : $F('searched_age_group'),
		key_desc : $F('searched_desc'),
		category : $F('searched_category'),
		// admin options
		length :$F('searched_length'),
		haircolor : $F('searched_haircolor'),
		eyecolor : $F('searched_eyecolor'),
		confectiesize : $F('searched_confectiesize'),
		jeanssize : $F('searched_jeanssize'),
		shirtsize : shirtsizepar,	
		shoesize : $F('searched_shoesize'),
		nude :$F('searched_nude'),
		gender : sexFilter,
		pageindex : pageindex
	}
	//alert($H(params).toQueryString());
	ajaxRequest(animateSearchResult,'site/modelsearch.php',$H(params).toQueryString());
}

function loadPortfolio(pageindex,id) {
	var itemid = id==null?-1:id;
	var params = {
		itemid : itemid,
		pageindex : pageindex
	}
	ajaxRequest(animateSearchResultPortfolio,'site/clientsload.php',$H(params).toQueryString());
}
function loadProject(pageindex,id) {
	var itemid = id==null?-1:id;
	var params = {
		itemid : itemid,
		pageindex : pageindex
	}
	ajaxRequest(animateSearchResultProject,'site/projectsload.php',$H(params).toQueryString());
}
function loadNews(pageindex,id) {
	var itemid = id==null?-1:id;
	var params = {
		itemid : itemid,
		pageindex : pageindex
	}
	ajaxRequest(animateSearchResultNews,'site/newsload.php',$H(params).toQueryString());
}

function animateSearchResult(originalRequest) {
	$('model_gallery').style.display="none";
	$('model_gallery').innerHTML = originalRequest.responseText;
	new Effect.Appear('model_gallery',{duration : 0.2});
}

function animateSearchResultPortfolio(originalRequest) {
	$('project_gallery').style.display="none";
	$('project_gallery').innerHTML = originalRequest.responseText;
	new Effect.Appear('project_gallery',{duration : 0.2});
}

function animateSearchResultProject(originalRequest) {
	$('project_gallery').style.display="none";
	$('project_gallery').innerHTML = originalRequest.responseText;
	new Effect.Appear('project_gallery',{duration : 0.2});
}

function animateSearchResultNews(originalRequest) {
	$('news_gallery').style.display="none";
	$('news_gallery').innerHTML = originalRequest.responseText;
	new Effect.Appear('news_gallery',{duration : 0.2});
}

function showDisclaimer() {
	new Effect.Appear('dialog_gray',{duration : 0.4, from : 0, to : 0.5});
	new Effect.Appear('disclaimerframe',{duration : 0.2, from : 0, to : 1});
}
function closeDisclaimer() {
	new Effect.Fade('dialog_gray',{duration : 0.2});
	new Effect.Fade('disclaimerframe',{duration : 0.2});
}

function showInschrijvenForm() {
	new Effect.Appear('dialog_gray',{duration : 0.4, from : 0, to : 0.5});
	new Effect.Appear('inschrijven_form_container',{duration : 0.2, from : 0, to : 1});
}
function closeInschrijvenForm() {
	new Effect.Fade('dialog_gray',{duration : 0.2});
	new Effect.Fade('inschrijven_form_container',{duration : 0.2});
}

var formPageDisplayed = 1;
function changeFormPage(pageindex) {
	new Effect.Fade('form_'+formPageDisplayed,{duration : 0.2});
	new Effect.Appear('form_'+pageindex,{duration : 0.2});
	formPageDisplayed = pageindex;
}

function nextFormPage() {
	pageNumber = 4;
	if (!validator.validate()) {
		return false;
	}
	validator.reset();
	if (formPageDisplayed < pageNumber) {
	new Effect.Fade('form_'+formPageDisplayed,{duration : 0.2});
	$('page_number_'+formPageDisplayed).style.color = '#399';
	formPageDisplayed += 1;
	$('page_number_'+formPageDisplayed).style.color = '#fa0';
	new Effect.Appear('form_'+formPageDisplayed,{duration : 0.2});
	} 
	if (formPageDisplayed == pageNumber) {
		$('volgende_but').style.display = 'none';
		$('terug_but').style.display = '';
	} else {
		$('volgende_but').style.display = '';
		$('terug_but').style.display = '';
	}
	
}

function prevFormPage() {
	if (formPageDisplayed > 1) {
		new Effect.Fade('form_'+formPageDisplayed,{duration : 0.2});
		$('page_number_'+formPageDisplayed).style.color = '#399';
		formPageDisplayed -= 1;
		$('page_number_'+formPageDisplayed).style.color = '#fa0';
		new Effect.Appear('form_'+formPageDisplayed,{duration : 0.2});
	}
	if (formPageDisplayed == 1) {
		$('volgende_but').style.display = '';
		$('terug_but').style.display = 'none';
	} else {
		$('volgende_but').style.display = '';
		$('terug_but').style.display = '';
	}
}

var pageId = 1;
var sexFilter = "all";
var lastSex = "all";
function changeGalleryPage(pageindex,sex) {
	if (sexFilter != sex) {
		sex = sexFilter;
	}
	
	//console.log("hier");
	pageId = pageindex;
	filterModelAdmin(pageindex,sex);
}

function filterModelAdmin(pageindex,sex) {
	lastSex = sexFilter;
	sexFilter = sex;
	//alert(sex);
	searchModelAdmin(pageindex);
	//alert("sex_options_"+lastSex);
	$("sex_options_"+lastSex).style.color = "#066";
	$("sex_options_"+sexFilter).style.color = "#fc3";
}

function changePortfolioPage(pageindex,id) {
	loadPortfolio(pageindex,id);
}
function changeProjectPage(pageindex,id) {
	loadProject(pageindex,id);
	curid = id;
}
function changeNewsPage(pageindex,id) {
	loadNews(pageindex,id);
	curid = id;	
}

function loadNewsPage(id)
{
	//var pageindex = 1;
	var itemid = id==null?-1:id;
	var params = {
		itemid : itemid,
		pageindex : pageindex
	}
	ajaxRequest(animateSearchResultNews,'site/newsload.php',$H(params).toQueryString());
}

var curid;
function showProjectShortDescription(id) {
	
	//alert(curid);
	if ($("item_displayed").value!= -1 ) {
		curid = $("item_displayed").value;
		$("item_displayed").value = -1;
	}
	if (curid==id) {
		new Effect.SlideUp("short_desc_"+id,{duration : 0.4});
		$('project_title_'+id).style.color = '#006666';
		curid=null;
		return;
	}
	if (curid!= null) {
		new Effect.SlideUp("short_desc_"+curid,{duration : 0.4});
		$('project_title_'+curid).style.color = '#006666';
	}
	new Effect.SlideDown("short_desc_"+id,{duration : 1});	
	$('project_title_'+id).style.color = '#000';
	curid = id;
}

function showNewsShortDescription(id) {
	//alert(curid);
	if ($("item_displayed").value!= -1 ) {
		curid = $("item_displayed").value;
		$("item_displayed").value = -1;
	}
	if (curid==id) {
		new Effect.SlideUp("short_desc_"+id,{duration : 0.4});
		$('news_title_'+id).style.color = '#006666';
		curid=null;
		return;
	}
	if (curid!= null) {
		new Effect.SlideUp("short_desc_"+curid,{duration : 0.4});
		$('news_title_'+curid).style.color = '#006666';
	}
	new Effect.SlideDown("short_desc_"+id,{duration : 1});	
	$('news_title_'+id).style.color = '#000';
	curid = id;
}

var startUpload=false;
var idxUpload = 0;
var countUploaded = 0;
function fileUploadComplete(sid,tmpdir,filename) {
	//alert(1);
	if (filename !="" && !startUpload) {
		startUpload = true;
		$('if_uploads_overview').innerHTML = "";
	}
	idxUpload++;
	$('if_uploads_overview').innerHTML += 
		"<div id='upload_"+idxUpload+"' style='display :block;background : #ddd;height:50px;width : 100%;margin-bottom : 3px;'><table style='width : 100%;'><tr><td><img src='"+tmpdir+sid+"_"+filename+"' style='height : 40px;;' /></td><td style='vertical-align : middle;text-align : right;font-style:italic;'><a href='javascript:void(0);' onclick='deleteImageUploaded("+idxUpload+",\""+sid+"\",\""+tmpdir+"\",\""+filename+"\")'>delete</a></td></tr></table></div>";
	var params = {
		act : "save",
		filename :  tmpdir+sid+"_"+filename
	}
	ajaxRequest(doNothing,'site/imagehandler.php',$H(params).toQueryString());
}
function doNothing(response) { 
	countUploaded = response.responseText;
}

function initUploadImage() {
	var params = {
		act : "init"
	}
	ajaxRequest(doNothing,'site/imagehandler.php',$H(params).toQueryString());
}

var idDeleted;
function deleteImageUploaded(idx,sid,tmpdir,filename) {
	idDeleted = idx;
	var params = {
		act : "delete",
		filename: tmpdir+sid+"_"+filename
	}
	ajaxRequest(unshowDeletedImage,'site/imagehandler.php',$H(params).toQueryString());
}

function unshowDeletedImage(response) {
	countUploaded = response.responseText;
	new Effect.BlindUp($("upload_"+idDeleted),{duration : 0.2});
}

function validateUpload() {
	return (countUploaded>=3);
}
function submitApplicationForm() {
	if (!validateUpload()) {
		alert("please upload correct number of images, minimum 5 pictures");
		return false;
	}
	$('if_inschrijven_form').submit();	
}
