// JavaScript Document
var preloader_img	= '<br /><br /><img src="img/'+root_short+'/assets/loading.gif" width="32" height="32" alt="loading" />';
var error_message		= '';

function checkData(field, numeric_text, min_length){
	var input			= $(field).value;
	var this_check		= true;

	switch(numeric_text){
		case 1:
			//text
			if(input.length	< min_length){
				this_check	= false
			}
		break;
		case 2:
			//numeric
			var workWith	= input.replace(/[^\d]/g, '');
			$(field).value	= workWith;
			if(workWith.length	< min_length || isNaN(workWith)){
				this_check	= false
			}
		break;
	}
	
	if(this_check){
		$(field).removeClass('wrong');
	}else{
		$(field).addClass('wrong');
	}
	
	return(this_check);
}

function afterSubMitting(target_form,target_output,responseText){
	switch(target_form){
		case 'request_form':
			//cancelReply();
			//alert(0);
		break;
		case 'form_login':
			fxcontentShower					= MorpheItems(target_output, 400, Fx.Transitions.Cubic.easeOut);
			fxcontentShower.set({'opacity':0});
			$(target_output).innerHTML 		= responseText;
			initDetail('forum');
		break;
		case 'form_reply':
			fxcontentShower					= MorpheItems(target_output, 400, Fx.Transitions.Cubic.easeOut);
			fxcontentShower.set({'opacity':0});
			
			var splitted_output		= responseText.split('#####');
			var all_attr1			= splitted_output[0];
			var all_attr2			= splitted_output[1];
			
			if(all_attr1!='no'){
				var myNEWReply = new Element('div', {
					'class': 'forum-reply'
				});
				
				myNEWReply.inject($('reply-now'),'before');
				myNEWReply.innerHTML 	= all_attr1;
			
			}
			
			$(target_output).innerHTML 		= all_attr2;
			initDetail('forum-detail');
		break;
		case 'formfilter':
			var result = responseText;
			fxcontentShower					= MorpheItems(target_output, 400, Fx.Transitions.Cubic.easeOut);
			fxcontentShower.set({'opacity':0});
			$(target_output).innerHTML 		= responseText;
			listing_thumb_array				= new Array;				
			listing_thumb_list				= $$('#listing_container img');
			
			if(runningfilter == true){
				$('filterform').unspin();
				runningfilter = false;
			}
			initListLoadnShow(true);
		break;
	}
}							

//forms//

var active_form 		= '';
var active_form_busy 	= false;

function cancelSubmit(){

}

function setSomeForm(target_form, target_loading, target_output, info_box, has_files, btn_id, message){
	
	$(target_form).removeEvent('submit');
	$(target_form).addEvent('submit', function(e){
		
		allow_click 			= false;
		
		new Event(e).stop();			   
		if(active_form_busy	== false){
			active_form_busy	= true;
			
			if(info_box!=''){
				$(info_box).innerHTML = error_message;	
			}
			
			$(target_output).set('spinner', {message : message});
			$(target_output).spin();
		
			
			var formCheck = checkForm(target_form , 0);
			if(formCheck){
				if(has_files){
					if(!swfUpload){	
						$(target_form).submit();
					}else{
						try {
							switch(active_soort){
							case 1:
								swfu_video.startUpload();
							break;
							case 2:
								swfu_image.startUpload();
							break;
							}
						} catch (ex) {
							if($(btn_id)){
								$(btn_id).setStyle('display','block');
								$(btn_id+'_loading').setStyle('display','none');
							}
							active_form_busy	= false;
							$(target_loading).removeClass('loading');
						}	
					}
				}else{
					this.set('send', {
						method: 'post',
						data: $(target_form),                                      
						onSuccess: function(responseText, responseXML) {
							afterSubMitting(target_form, target_output, responseText);
						}
					});
					this.send(this.action); 
				}
			}else{
			
				$(target_output).unspin();
		
				active_form_busy	= false;
				allow_click 		= true;
				
				$(target_loading).removeClass('loading');
				
				if(info_box!=''){
					$(info_box).innerHTML = error_message;	
				}
				
				error_message	= '';
						
			}
		}
		
	});	
	
	active_form			= target_form;
	active_form_busy	= false;
	
}

function sendForm(target_form, target_loading, target_output){
	$(target_form).set('send', {
		method: 'post',
		data: $(target_form),                                      
		onSuccess: function(responseText, responseXML) {
			afterSubMitting(target_form, target_output, responseText);			
		}
	});
	$(target_form).send(); 
}


var allowStepping		= true;
var active_form_busy 	= false;

var swfUpload			= false;
var swfUploadTarget;

function SendRequest(target_form, target_loading, target_output, info_box, has_files, btn_id, message){
	if(active_form_busy	== false){
		active_form_busy	= true;
		if(info_box!=''){
			$(info_box).innerHTML = error_message;	
		}
		
		$(target_output).set('spinner', {message : message});
		$(target_output).spin();
		
		var formCheck 	= false;
		formCheck		= checkForm(target_form);
		if(formCheck){
			if(has_files){
				if(!swfUpload){	
					$(target_form).submit();
				}else{
					//alert(1);
					try {
						switch(active_soort){
						case 1:
							swfu_video.startUpload();
						break;
						case 2:
							swfu_image.startUpload();
						break;
						}
					} catch (ex) {
						if($(btn_id)){
							$(btn_id).setStyle('display','block');
							$(btn_id+'_loading').setStyle('display','none');
						}
						active_form_busy	= false;
						$(target_loading).removeClass('loading');
					}	
				}
			}else{
				sendForm(target_form, target_loading, target_output);
			}
			
		}else{
			active_form_busy	= false;
			$(target_output).unspin();
			
			
			if(info_box!=''){
				$(info_box).innerHTML = error_message;	
			}
			error_message	= '';
		}
	}
}
var error_message;
function checkForm(target_form){
	var form_checked 	= true;
	error_message		= '';
	switch(target_form){
		case 'request_form':
			if(!checkEmail('emailadrestelefoon')){
				if(!checkData('emailadrestelefoon', 1, 7)){
					form_checked 	= false;
					error_message	+= '<li>geen geldig e-mail / telefoonnummer.</li><br/>';
				}
			}
			if(!checkData('naam', 1, 2)){
				form_checked 	= false;
				error_message	+= '<li>geen geldige naam.</li><br/>';
			}
		break;
		case 'form_login':
			if(!checkEmail('user')){
				form_checked 	= false;
				error_message	+= '<li>U heeft geen geldige gebruikersnaam (e-mail) ingevoerd.</li><br/>';
			}
			if(!checkData('password', 1, 1)){
				form_checked 	= false;
				error_message	+= '<li>U heeft geen geldig wachtwoord ingevoerd.</li>';
			}
			if(!form_checked){
				error_message	= '<ul>'+error_message+'</ul>';
			}
		break;
		case 'form_reply':
			if(!checkData('reply', 1, 1)){
				form_checked 	= false;
				error_message	+= '<li>je hebt geen geldige reactie ingevoerd.</li>';
			}
			if(!form_checked){
				error_message	= '<ul>'+error_message+'</ul>';
			}
		break;
	}
	return form_checked;	
}


function checkEmail(field) {
	var this_check	= true;
	var objRegExp  	= /^([a-zA-Z0-9_\-])([a-zA-Z0-9_\-\.]*)@(\[((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}|((([a-zA-Z0-9\-]+)\.)+))([a-zA-Z]{2,}|(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\])$/;
	
	if($(field).value == null || $(field).value == ''){
		this_check 	= false;
	}else if( objRegExp.test($(field).value)==false){
		this_check 	= false;
	}
	
	if(this_check){
		var target_error = $(field).getProperty('id') + '_error';
		var target_value = $(field).value;
		if($(target_error)){
			//alert(content_folder[active_current]+'/check_email.php?emailvalue='+target_value)
			email_is_checking	= true;
			loadNshow('account_check_email.php?include_header=1&emailvalue='+target_value, target_error, 'get', false);
			this_check 			= true;
		}else{
			var target_error = $(field).getProperty('id') + '_error';
			if($(target_error)){
				$(target_error).innerHTML = '';
			}
			$(field).removeClass('wrong');
		}
	}else{
		$(field).addClass('wrong');
	}
	
	return(this_check);
}

function checkEmailQuick(field){
	checkEmail(field);
}

