// JavaScript Document

function redirect(lnk) {
	window.location = lnk;
}
function setsearch(e){
	e.value = "";
	e.style.color = "#000";
}

function searchref(){
	var ref = document.getElementById('txtsearch');	
}

function numOnly(evt) {
    evt = (evt) ? evt : window.event
    var charCode = (evt.which) ? evt.which : evt.keyCode
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        status = "This field accepts numbers only."
        return false
    }
    status = ""
    return true
}

function homeActive(value) {
	if (value) { document.getElementById('home').style.backgroundImage="url(images/home_A.png)"; }
	else { document.getElementById('home').style.backgroundImage="url(images/home.png)"; }
}

function mouseOver(intMn) {
	minInt = intMn - 1;
	plusInt = intMn + 1;
	if (document.getElementById('lnk'+intMn)) {
		document.getElementById('mn'+intMn).className = 'mn4_A';
		if (intMn == 1) { document.getElementById('1a').className = 'front_A'; }
		else if (document.getElementById('lnk'+minInt)) { document.getElementById(intMn+'a').className = 'mid_A_R'; }
		else { document.getElementById(intMn+'a').className = 'mid_A_D'; }
		if (intMn == 9) { document.getElementById('10a').className = 'end_A'; }
		else if (document.getElementById('lnk'+plusInt)) { document.getElementById(plusInt+'a').className = 'mid_A_L'; }
		else { document.getElementById(plusInt+'a').className = 'mid_A_D'; }
	}

}

function mouseOut(intMn) {
	minInt = intMn - 1;
	plusInt = intMn + 1;
	if (document.getElementById('lnk'+intMn)) {
		document.getElementById('mn'+intMn).className = 'mn4';
		if (intMn == 1) { document.getElementById('1a').className = 'front'; }
		else if (document.getElementById('lnk'+minInt)) { document.getElementById(intMn+'a').className = 'mid'; }
		else { document.getElementById(intMn+'a').className = 'mid_A_L'; }
		if (intMn == 9) { document.getElementById('10a').className = 'end'; }
		else if (document.getElementById('lnk'+plusInt)) { document.getElementById(plusInt+'a').className = 'mid'; }
		else { document.getElementById(plusInt+'a').className = 'mid_A_R'; }
	}

}

function br_replace(value) {
	value = value.replace(/<br>/gi,"\n");
	value = value.replace(/<br \/>/gi,"\n");
	return value;
}

function trim(value) {
  value = value.replace(/^\s+/,'');
  value = value.replace(/\s+$/,'');
  return value;
}

function back2one(){
		document.getElementById('step1').className = 'divvisible';
		document.getElementById('step2').className = 'divunvisible';
		document.getElementById('step3').className = 'divunvisible';
}
function back2two(){
		document.getElementById('step1').className = 'divunvisible';
		document.getElementById('step2').className = 'divvisible';
		document.getElementById('step3').className = 'divunvisible';
}
	
function chksent1(){

	var i = 0;
	var set = true;
	var s = new Array(9);
	var lang = document.getElementById('lang').value;
	var sent = true;
	
	while(i < 9) { 
	
		s[i] = document.getElementById('s'+i);
		if (s[i].value == '' || s[i].value == 0) { set = false; s[i].value = 0; }
		i++;

	}
	var name = (trim(document.getElementById('artist').value) == '') ? false : true;
	
	if (!name && lang == 'nl') { sent = false; alert('Naam moet worden ingevuld!'); }
	if (!name && lang == 'fr') { sent = false; alert('Le nom doit être rempli!'); }
	if (!name && lang == 'en') { sent = false; alert('Name field can not be empty!'); }
	if (!name) document.getElementById('artist').style.backgroundColor = '#f00';

	var age = (document.getElementById('age').value > 0) ? true : false;

	if (!age && lang == 'nl') { sent = false; alert('leeftijd moet worden ingevuld!'); }
	if (!age && lang == 'fr') { sent = false; alert('L\'age doit être rempli!'); }
	if (!age && lang == 'en') { sent = false; alert('Age field can not be empty!'); }
	if (!age) document.getElementById('age').style.backgroundColor = '#f00';
	
	if (sent) {	
	if (!set && lang == 'nl') sent = confirm('Niet alle maten zijn ingevuld. Toch verzenden?');
	if (!set && lang == 'fr') sent = confirm('Pas toutes les mesures avaient rempli. Envoyer quand m&ecirc;me?');
	if (!set && lang == 'en') sent = confirm('Not all mesurements are completed. Sent anyway?');
	}
	if (sent){
		document.getElementById('step1').className = 'divunvisible';
		document.getElementById('step2').className = 'divvisible';
	}
}

function chksent2() {
	
	document.getElementById('step2').className = 'divunvisible';
	document.getElementById('step3').className = 'divvisible';
}

function chkagree() {

	var agree = document.getElementById('agree');
	var page = document.getElementById('page');
	var lang = document.getElementById('lang');
	
	if (agree.checked) {
			
		return true;
	
	} else { 
	
		if (lang.value == 'nl') alert('U dient de voorwaarden te aanvaarden.');
		if (lang.value == 'fr') alert('Vous pouvez continuer si vous acceptez les conditions.');
		if (lang.value == 'en') alert('you have to accept the conditions first.');
		return false;
	}
}

function html_entity_decode(str) {
  var ta=document.createElement("textarea");
  ta.innerHTML=str.replace(/</g,"&lt;").replace(/>/g,"&gt;");
  return ta.value;
}

function edititem(id) {

if (id == parseInt(id)) {
	
	var nl = document.getElementById('nl_'+id);
	var fr = document.getElementById('fr_'+id);
	var en = document.getElementById('en_'+id);
	var txtnl = document.getElementById('txtNl');
	var txtfr = document.getElementById('txtFr');
	var txten = document.getElementById('txtEn');
	var cnclbtn = document.getElementById('cnclbtn');
	var submitbtn = document.getElementById('submit');
	var browse = document.getElementById('picture');
	var id_value = document.getElementById('id_value');
		
	txtnl.value = br_replace(html_entity_decode(nl.innerHTML));
	txtfr.value = br_replace(html_entity_decode(fr.innerHTML));
	txten.value = br_replace(html_entity_decode(en.innerHTML));
	cnclbtn.style.visibility = "visible";
	cnclbtn.disabled = "";
	browse.disabled = "disabled";
	submitbtn.value = "wijzigen";
	id_value.value = id;
	window.location.href = '#edit'; 	
		
} else alert('can not edit element, there is no correct index number assigned');

}

function edititem2(id) {

if (id == parseInt(id)) {
	
	var tnl = document.getElementById('tnl_'+id);
	var tfr = document.getElementById('tfr_'+id);
	var ten = document.getElementById('ten_'+id);
	var titlenl = document.getElementById('titleNl');
	var titlefr = document.getElementById('titleFr');
	var titleen = document.getElementById('titleEn');
	var nl = document.getElementById('nl_'+id);
	var fr = document.getElementById('fr_'+id);
	var en = document.getElementById('en_'+id);
	var txtnl = document.getElementById('txtNl');
	var txtfr = document.getElementById('txtFr');
	var txten = document.getElementById('txtEn');
	var cnclbtn = document.getElementById('cnclbtn');
	var submitbtn = document.getElementById('submit');
	var browse = document.getElementById('picture');
	var id_value = document.getElementById('id_value');
		
	titlenl.value = html_entity_decode(tnl.innerHTML);
	titlefr.value = html_entity_decode(tfr.innerHTML);
	titleen.value = html_entity_decode(ten.innerHTML);
	txtnl.value = br_replace(html_entity_decode(nl.innerHTML));
	txtfr.value = br_replace(html_entity_decode(fr.innerHTML));
	txten.value = br_replace(html_entity_decode(en.innerHTML));
	cnclbtn.style.visibility = "visible";
	cnclbtn.disabled = "";
	browse.disabled = "disabled";
	submitbtn.value = "wijzigen";
	id_value.value = id;
	window.location.href = '#edit'; 	
		
} else alert('can not edit element, there is no correct index number assigned');

}

function cancelbtn() {

	var txtnl = document.getElementById('txtNl');
	var txtfr = document.getElementById('txtFr');
	var txten = document.getElementById('txtEn');
	var cnclbtn = document.getElementById('cnclbtn');
	var submitbtn = document.getElementById('submit');
	var browse = document.getElementById('picture');

	txtnl.value = '';
	txtfr.value = '';
	txten.value = '';
	browse.disabled = "";
	submitbtn.value = "verzenden";
	cnclbtn.style.visibility = "hidden";

}

function chksubmit(){
	
	var picture = document.getElementById('picture');
	var submitbtn = document.getElementById('submit');

	if (picture.value == "" && submitbtn.value == 'verzenden') {
		alert('er is geen foto geselecteerd');
		return false;
	} else return true;
}

function chksubmit2(){
	
	var picture = document.getElementById('picture');
	var submitbtn = document.getElementById('submit');
	var titlenl = trim(document.getElementById('titleNl').value);
	var titlefr = trim(document.getElementById('titleFr').value);
	var titleen = trim(document.getElementById('titleEn').value);

	if (picture.value == "" && submitbtn.value == 'verzenden') {
		alert('er is geen foto geselecteerd');
		return false;
	} else if (titlenl == '' || titlefr == '' || titleen == '') {
		alert('titel velden kunnen niet leeg zijn')
		return false;
	} else return true;
}


function submitDelAll() {
	
	if (confirm('Bent U zeker dat u alles wilt verwijderen?')){
	
		var sec = document.getElementById('security');
		
		sec.value = 'unlocked';
		
		return true;
		
	} else return false;
}

function MultiSelector( list_target, max ){

	// Where to write the list
	this.list_target = list_target;
	// How many elements?
	this.count = 0;
	// How many elements?
	this.id = 0;
	// Is there a maximum?
	if( max ){
		this.max = max;
	} else {
		this.max = -1;
	};
	
	/**
	 * Add a new file input element
	 */
	this.addElement = function( element ){

		// Make sure it's a file input element
		if( element.tagName == 'INPUT' && element.type == 'file' ){

			// Element name -- what number am I?
			element.name = 'files[' + this.id++ + ']';

			// Add reference to this object
			element.multi_selector = this;

			// What to do when a file is selected
			element.onchange = function(){

				// New file input
				var new_element = document.createElement( 'input' );
				new_element.type = 'file';

				// Add new element
				this.parentNode.insertBefore( new_element, this );

				// Apply 'update' to element
				this.multi_selector.addElement( new_element );

				// Update list
				this.multi_selector.addListRow( this );

				// Hide this: we can't use display:none because Safari doesn't like it
				this.style.position = 'absolute';
				this.style.left = '-1000px';

			};
			// If we've reached maximum number, disable input element
			if( this.max != -1 && this.count >= this.max ){
				element.disabled = true;
			};

			// File element counter
			this.count++;
			// Most recent element
			this.current_element = element;
			
		} else {
			// This can only be applied to file input elements!
			alert( 'Error: not a file input element' );
		};

	};

	/**
	 * Add a new row to the list of files
	 */
	this.addListRow = function( element ){

		// Row div
		var new_row = document.createElement( 'div' );

		// Delete button
		var new_row_button = document.createElement( 'input' );
		new_row_button.type = 'button';
		new_row_button.value = 'Delete';
		new_row_button.className = 'btn';
		new_row.style.margin = '2px 0px 0px 0px';
		// References
		new_row.element = element;

		// Delete function
		new_row_button.onclick= function(){

			// Remove element from form
			this.parentNode.element.parentNode.removeChild( this.parentNode.element );

			// Remove this row from the list
			this.parentNode.parentNode.removeChild( this.parentNode );

			// Decrement counter
			this.parentNode.element.multi_selector.count--;

			// Re-enable input element (if it's disabled)
			this.parentNode.element.multi_selector.current_element.disabled = false;

			// Appease Safari
			//    without it Safari wants to reload the browser window
			//    which nixes your already queued uploads
			return false;
		};

		// Set row value
		new_row.innerHTML = element.value + '&nbsp;&nbsp;' ;

		// Add button
		new_row.appendChild( new_row_button );

		// Add it to the list
		this.list_target.appendChild( new_row );
		
	};

};

function checkEmail(email) {
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value)){
return (true)
}
return (false)
}

function putwait() {
	
	var lang = document.getElementById('lang').value;
	var sent = true;
	
	var name = (trim(document.getElementById('name').value) == '') ? false : true;
	if (!name && lang == 'nl') { sent = false; alert('Naam moet worden ingevuld!'); }
	if (!name && lang == 'fr') { sent = false; alert('Le nom doit être rempli!'); }
	if (!name && lang == 'en') { sent = false; alert('Name field can not be empty!'); }
	if (!name) document.getElementById('name').style.backgroundColor = '#f00';
	
	var address = (trim(document.getElementById('address').value) == '') ? false : true;
	if (!address && lang == 'nl') { sent = false; alert('Adres moet worden ingevuld!'); }
	if (!address && lang == 'fr') { sent = false; alert('Adresse doit être rempli!'); }
	if (!address && lang == 'en') { sent = false; alert('Address can not be empty!'); }
	if (!address) document.getElementById('address').style.backgroundColor = '#f00';

	var city = (trim(document.getElementById('city').value) == '') ? false : true;
	if (!city && lang == 'nl') { sent = false; alert('Plaats moet worden ingevuld!'); }
	if (!city && lang == 'fr') { sent = false; alert('Place doit être rempli!'); }
	if (!city && lang == 'en') { sent = false; alert('City can not be empty!'); }
	if (!city) document.getElementById('city').style.backgroundColor = '#f00';

	var code = (trim(document.getElementById('code').value) == '') ? false : true;
	if (!code && lang == 'nl') { sent = false; alert('Postcode moet worden ingevuld!'); }
	if (!code && lang == 'fr') { sent = false; alert('Code postale doit être rempli!'); }
	if (!code && lang == 'en') { sent = false; alert('Zip code can not be empty!'); }
	if (!code) document.getElementById('code').style.backgroundColor = '#f00';
	
	var email = checkEmail(document.getElementById('email'));
	if (!email && lang == 'nl') { sent = false; alert('Geen geldig email adres!'); }
	if (!email && lang == 'fr') { sent = false; alert('L\'adresse email n\'est pas correct!'); }
	if (!email && lang == 'en') { sent = false; alert('This is not a valid email address!'); }
	if (!email) document.getElementById('email').style.backgroundColor = '#f00';
	
	var tel = (trim(document.getElementById('tel').value) == '') ? false : true;
	if (!tel && lang == 'nl') { sent = false; alert('Telefoon moet worden ingevuld!'); }
	if (!tel && lang == 'fr') { sent = false; alert('Le nr téléphone doit être rempli!'); }
	if (!tel && lang == 'en') { sent = false; alert('Telephone number can not be empty!'); }
	if (!tel) document.getElementById('tel').style.backgroundColor = '#f00';

	if (sent) {

		document.getElementById('waitdivsub').style.visibility = 'visible';	
		document.getElementById('submit').disabled = 'disabled';
		return true;

	} else return false;

}
