var numbers = "0123456789";
var bad_chars = "'`\"\\/:; ";
var bad_chars_no_space = "'`\"\\/:;";
var bad_name_chars = "`\"\\/:;~!@#$%^&*()+={}[]|<>/?,";
var bad_name_chars_numbers = bad_name_chars + numbers;
var bad_email_chars = "`\"\\/ (){}[]|<>/,&+=*'%?!~#^:;";
var bad_username_chars = bad_chars + "~!@#$%^&*()-+={}[]|<>,./?\ ";
var bad_password_chars = bad_username_chars;

function containsOneOf(str, chars){
    var i; 
    for(i = 0; i < chars.length ; i++){
        if(str.indexOf(chars.charAt(i)) >= 0) 
        return true; 
        } 
        return false; 
}
    
function checkFirstName(){
    var fn = document.MainForm.firstname ;
    if (containsOneOf (fn.value, bad_name_chars_numbers)) {
        alert ("Verwijder de speciale karakters zoals komma's, uitroeptekens enz.\nuit uw VOORNAAM"); 
        fn.focus();
        return false;
    } else if (fn.value == "") {
        alert("Voer uw voornaam in, AUB"); 
        fn.focus(); 
        return false;
    } 
    return true ;
}

function checkLastName(){
    var ln = document.MainForm.lastname ;
    if(containsOneOf(ln.value, bad_name_chars_numbers)){
        alert("Verwijder de speciale karakters zoals komma's, uitroeptekens enz.\n in uw NAAM."); 
        ln.focus(); 
        return false ;
    } else if(ln.value == "") { 
        alert("Voer uw naam in, AUB"); 
        ln.focus(); 
        return false;
    } 
    return true; 
}
    
function checkAdresNotEmpty(){
    var ln = document.MainForm.street;
    if(ln.value == "") { 
        alert("Voer uw adres in, AUB"); 
        ln.focus(); 
        return false;
    } 
    return true; 
}

function checkHuisNrNotEmpty(){
    var ln = document.MainForm.huisnr;
    if(ln.value == "") { 
        alert("Voer uw huisnummer in, AUB"); 
        ln.focus(); 
        return false;
    } 
    return true; 
}
    
function checkCPNotEmpty() {
    var ln = document.MainForm.cp;
    if(ln.value == "") { 
        alert("Voer uw postcode in, AUB"); 
        ln.focus(); 
        return false ;
    } 
    return true; 
}

function checkCityNotEmpty() {
    var ln = document.MainForm.city;
    if(ln.value == "") { 
        alert("Voer uw gemeente in, AUB"); 
        ln.focus(); 
        return false ;
    } 
    return true ; 
}
    
function checkEmail() {
    var em = document.MainForm.email;

    if (em.value.length < 3) {
        alert("Error!\n\nVoer een geldig e-mail adres in");
        em.focus() ;
        return false ;
    } else if(containsOneOf(em.value, bad_email_chars)) {
        alert("Error!\n\nVerwijder de speciale karakters zoals spaties,\nkomma's, uitroeptekens enz."); 
        em.focus() ;
        return false ;
    } else if(!containsOneOf(em.value, "@")) {
        alert("Error!\n\nU heeft het '@' teken vergeten in uw e-mail adres.\nVoer een geldig adres in."); 
        em.focus() ; 
        return false ;
    } else if(!containsOneOf(em.value, ".")) {
        alert("U heeft het '.' teken vergeten in uw e-mail adres.\nVoer een geldig adres in.");
        em.focus() ; 
        return false ;
    }
    return true ;
}
    
    function checkNbLogins() {
        var myfield = document.MainForm.nb_logins;
        if (/^[1-9][0-9]{0,2}$/.test(myfield.value) == false) {
            alert ('Voer de aantal logins in, AUB');
            nb_logins.focus();
            return false;
        }
        return true;
    }
    
    function checkAccept() {
        if (document.getElementById('accept').checked) {
            return true;
        } else {
            alert ('Voer de algemene verkoopvoorwaarden checkbox in, AUB');
            document.getElementById('accept').focus();
            return false;
        }
    }
    
function checkTel(o_int, o_area, o_local) {

    var o_int   = document.getElementById('t_int');
    var o_area  = document.getElementById('t_area');
    var o_local = document.getElementById('t_local');
    var err_tel_fax = 'Voer een geldig telefoonnummer, AUB';

    if (o_int.value == "" && o_area.value == "" && o_local.value == "") {
        return true;
    }

    if (/^[1-9][0-9]{1,2}$/.test(o_int.value) == false) {
        alert (err_tel_fax);
        o_int.focus();
        return false;
    }
    if (o_int.value != 352) {
        // luxembourg => pas de prefixe
        if (/^[1-9][0-9]{0,2}$/.test(o_area.value) == false) {
            alert (err_tel_fax);
            o_area.focus();
            return false;
        }
    }
    if (/^[1-9][0-9]{3,7}$/.test(o_local.value) == false) {
        alert (err_tel_fax);
        o_local.focus();
        return false;
    }
    return true;
}
    
    function checkFieldNotEmpty(myid) {
        var my_field = document.getElementById(myid);
        if(my_field.value == "") { 
            alert("Voer dit veld in, AUB"); 
            my_field.focus(); 
            return false ;
        } 
        return true; 
    }
    
    function resetFld(myid, value) {
        var my_field = document.getElementById(myid);
        if (my_field) {
            my_field.value = value;
        }
        return true;
    }

function checkOneToken() {
    var x=document.getElementById("MainForm");
    var el_name = '';
    var tot_tokens = 0;
    var val_test = '';
    for (var i=0;i<x.length;i++) {
        el_name = x.elements[i].name;
        if (/^nbtok_/.test(el_name)) {
            // on considere uniquement les elements commencant par nbtok_... 
            var elem = document.getElementById(el_name);
            //if (/^[0-9][0-9]{0,3}$/.test(val_test) == false) {
            //    alert ('Voer de aantal toegangen in, AUB');
            //    return false;
            //}
            if(elem.checked)
	            tot_tokens += 1; 
        }
    }
    if (tot_tokens == 0) {
        alert ('Kies een school en voer de aantal toegangen in, AUB');
        return false;
    }
    return true
}

function checkOneSchool() {
    var id_1=document.getElementById("id_school_1");
    var id_2=document.getElementById("id_school_2");
    var id_3=document.getElementById("id_school_3");
    if (!id_1.value && !id_2.value && !id_3.value) {
        alert ('U moet tenminste een school kiezen, AUB');
        return false;
    }
    return true
}
    
function checkAll(){
    if (!checkFirstName()     || !checkLastName() ||
        !checkEmail()         || !checkTel()      || 
        !checkAdresNotEmpty() || !checkHuisNrNotEmpty() || 
        !checkCPNotEmpty()    || !checkCityNotEmpty()) {    
        return false;
    }
    return true;  
}
    
function AddSchool_Order(id_school, name_school) {
    document.getElementById('id_school').value = id_school;
    document.getElementById('nm_school').value = name_school;
    document.getElementById('todo').value = 'refresh';
    document.getElementById('cp_search').value = '';
    document.getElementById('scholenDIV').innerHTML = '';
    document.MainForm.submit();
}

function AddSchool_Register(id_school, name_school) {
    if (!document.getElementById('id_school_1').value) {
        document.getElementById('id_school_1').value = id_school;
        document.getElementById('nm_school_1').value = name_school;
    } else if (!document.getElementById('id_school_2').value) {
        document.getElementById('id_school_2').value = id_school;
        document.getElementById('nm_school_2').value = name_school;
    } else if (!document.getElementById('id_school_3').value) {
        document.getElementById('id_school_3').value = id_school;
        document.getElementById('nm_school_3').value = name_school;
    } else {
        alert('full');
    }
    document.getElementById('todo').value = 'refresh';
    document.getElementById('cp_search').value = '';
    document.getElementById('scholenDIV').innerHTML = '';
    document.MainForm.submit();

}

function UpdateTotal() {
    var my_form=document.getElementById("MainForm");
    var el_name = '';
    var price = 0;

    
    //Calcul du prorata...
    var d1 = new Date('0000','09','01');
    var sd = document.getElementById('startdatum').value;
    if(sd != ''){
	    var d2 = new Date('0000',sd.substring(3,5),sd.substring(0,2));
	    var insertedYear = sd.substring(6);
	    var diff = 0;
	    if(d1.getTime()-d2.getTime()<0){
			diff = ((Math.abs(d1.getTime() - d2.getTime())/(86400000))-365)*(-1);
	    }else{
	    	diff = (Math.abs(d1.getTime() - d2.getTime())/(86400000))
	    }
	        
	    for (var z=0; z<my_form.length; z++) {
	        var el_name = my_form.elements[z].name;
	        if (/^nbtok_/.test(el_name)) {
	            // on considere uniquement les elements commencant par nbtok_... 
	            var elm = document.getElementById(el_name);
	            if (elm.checked) {
	            	var priceList = PRICE_LIST.substring(PRICE_LIST.indexOf(el_name));
		            price += ((priceList.substring(priceList.indexOf("[")+1,priceList.indexOf("]")))-0);	            
		        }
		        //alert('checked'+checked);
	        }
	    }
	    
	    var prorata = diff / 365;
	    if(d2.getMonth() >= 7 && d2.getMonth() < 9){
	    	prorata = 1;
	    }else if(d2.getDate() == '1' && d2.getMonth() == '9'){
	    	prorata = 1;
	    }else if(insertedYear == '2009' && d2.getMonth() < 9 && d2.getMonth() != 0){
	    	prorata = 0;
	    }
	    price = price * prorata;
	    price = ""+price;
		if(price.indexOf(".") != -1 && price.length > price.indexOf(".")+3){
		    price = price.substring(0,price.indexOf(".")+3);
		}
	    
	    document.getElementById('idTotal').innerHTML = price;
	    //document.getElementById('idTotal').innerHTML = 0;
	}else{
	    alert('Geen datum!');
		document.getElementById('idTotal').innerHTML = 0;
	}
} 

function Remove(line) {
    document.getElementById('id_school_'+line).value = "";
    document.getElementById('nm_school_'+line).value = "";
    document.getElementById('todo').value = 'refresh';
    document.getElementById('cp_search').value = '';
    document.getElementById('scholenDIV').innerHTML = '';
    document.MainForm.submit();
}



function handleSubmitOrder(){
    if (checkOneToken() && checkAll()) {
        var form = document.MainForm;
        document.getElementById('todo').value = 'submit';
        document.getElementById('total').value = document.getElementById('idTotal').innerHTML;
        document.MainForm.submit();
    }
}

function handleSubmitOrderActie(){
    if (checkOneToken() && checkAll()) {
        var form = document.MainForm;
        document.getElementById('todo').value = 'submit';
        document.getElementById('total').value = '';
        document.MainForm.submit();
    }
}

function handleSubmitRegister(){
    if (checkOneSchool() && checkAll()) {
        var form = document.MainForm;
        document.getElementById('todo').value = 'reg_submit';
        document.MainForm.submit();
    }
}

function handleSubmitActiveren() {
    var form = document.MainForm;
    document.getElementById('todo').value = 'activeren_submit';
    document.MainForm.submit();
}

function parseContent(prodList, prodListNotStarted){
	var list = document.getElementsByTagName('img');
	var subProdText = "";
	var ns6 = document.getElementById&&!document.all;
	for(i = 0 ; i < list.length ; i++){
		var img = list[i];
		if(img.className=='main_img'){
			var parent = img.parentNode;
			var testText = img.getAttribute("src").substring(0,img.getAttribute("src").lastIndexOf("/"));
			testText = testText.substring(0,testText.lastIndexOf("/"));				
			testText = testText.substring(0,testText.lastIndexOf("/"));	
			
			if(parent != null && parent.nodeName == 'A'){
				var prods = prodList.split(']');
				var ok = 0;
				for(j = 0 ; j < prods.length && ok == 0 ; j++){
					var prod = prods[j];
					if(prod != '' && img.getAttribute("src").indexOf(prod) != -1){
						ok = 1;						
					}					
				}
				if(ok == 1){
					img.style.border = "2px solid #FF8C00";
					img.style.margin = "0 1px";
					
					if(subProdText.indexOf(parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
						parent.parentNode.parentNode.style.background = "#eaeeeb url(images/degrade_hor_acc_NEW.png) repeat-y";
						var listDiv = parent.parentNode.parentNode.getElementsByTagName("div");
						for(d = 0 ; d < listDiv.length ; d++){
							var div = listDiv[d];
							if(div.getAttribute('class') == 'rbtop' || div.getAttribute('className') == 'rbtop'){ 
								div.setAttribute("class","rbtop_acc");	
								div.setAttribute("className","rbtop_acc");								
							}else if(div.getAttribute('class') == 'rbbot' || div.getAttribute('className') == 'rbbot'){
								div.setAttribute("class","rbbot_acc");	
								div.setAttribute("className","rbbot_acc");															
							}
						}						
						
						var newDiv = document.createElement('div');
						newDiv.setAttribute("class","recht");
						if(!ns6){
							newDiv.style.position = "relative";
							newDiv.style.left = "460px";
							newDiv.style.bottom = "15px";							
						}						
						newDiv.appendChild(document.createTextNode('U heeft een abonnement op dit i-board'));						
						parent.parentNode.appendChild(newDiv);
						
						subProdText += parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]";
					}
				}else{
					var futures = prodListNotStarted.split(']');
					ok = 0;
					var date = "";
					for(j = 0 ; j < futures.length && ok == 0 ; j++){
						var future = futures[j];
						if(future != '' && img.getAttribute("src").indexOf(future.substring(0,future.indexOf("/"))) != -1){
							ok = 1;
							date = future.substring(future.indexOf("/")+1);						
						}					
					}
					if(ok == 1){
						img.style.border = "2px solid #FF8C00";
						img.style.margin = "0 1px";
					
						if(subProdText.indexOf(parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
							parent.parentNode.parentNode.style.background = "#eaeeeb url(images/degrade_hor_acc_NEW.png) repeat-y";
							var listDiv = parent.parentNode.parentNode.getElementsByTagName("div");
								for(d = 0 ; d < listDiv.length ; d++){
								var div = listDiv[d];
								if(div.getAttribute('class') == 'rbtop' || div.getAttribute('className') == 'rbtop'){ 
									div.setAttribute("class","rbtop_acc");	
									div.setAttribute("className","rbtop_acc");								
								}else if(div.getAttribute('class') == 'rbbot' || div.getAttribute('className') == 'rbbot'){
									div.setAttribute("class","rbbot_acc");	
									div.setAttribute("className","rbbot_acc");															
								}
							}
																				
							var newDiv = document.createElement('div');
							newDiv.setAttribute("class","recht");
							if(!ns6){
								newDiv.style.position = "relative";
								newDiv.style.left = "470px";
								newDiv.style.bottom = "15px";														
							}						
							newDiv.appendChild(document.createTextNode('Uw abonnement start op '+date));						
							parent.parentNode.appendChild(newDiv);
							
							subProdText += parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]";
						}
					}else if(subProdText.indexOf(parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
						var newDiv = document.createElement('div');
						newDiv.setAttribute("class","recht");
						if(!ns6){
							newDiv.style.position = "relative";
							newDiv.style.left = "450px";	
							newDiv.style.bottom = "15px";													
						}						
						newDiv.appendChild(document.createTextNode('U heeft geen abonnement op dit i-board'));						
						parent.parentNode.appendChild(newDiv);
						subProdText += parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]";
					}
				}
				
				var prods = prodList.split(']');
				var ok = 0;
				for(j = 0 ; j < prods.length && ok == 0 ; j++){
					var prod = prods[j];
					if(prod != '' && img.getAttribute("src").indexOf(prod) != -1){
						ok = 1;						
					}					
				}
				if(ok == 1){
					img.style.border = "2px solid #FF8C00";
					img.style.margin = "0 1px";
					
					if(subProdText.indexOf(parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
						parent.parentNode.parentNode.style.background = "#eaeeeb url(images/degrade_hor_acc_NEW.png) repeat-y";
						var listDiv = parent.parentNode.parentNode.getElementsByTagName("div");
						for(d = 0 ; d < listDiv.length ; d++){
							var div = listDiv[d];
							if(div.getAttribute('class') == 'rbtop' || div.getAttribute('className') == 'rbtop'){ 
								div.setAttribute("class","rbtop_acc");	
								div.setAttribute("className","rbtop_acc");								
							}else if(div.getAttribute('class') == 'rbbot' || div.getAttribute('className') == 'rbbot'){
								div.setAttribute("class","rbbot_acc");	
								div.setAttribute("className","rbbot_acc");															
							}
						}
						
						var newDiv = document.createElement('div');
						newDiv.setAttribute("class","recht");
						if(!ns6){
							newDiv.style.position = "relative";
							newDiv.style.left = "460px";	
							newDiv.style.bottom = "15px";													
						}						
						newDiv.appendChild(document.createTextNode('U heeft een abonnement op dit i-board'));						
						parent.parentNode.appendChild(newDiv);
						
						subProdText += parent.parentNode.getElementsByTagName('SPAN')[0].innerHTML+"]";
					}
				}				
			}else{
				img.style.opacity = "0.2";	
				img.style.filter = "alpha(opacity=20)";	
				
				/*if(subProdText.indexOf(parent.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
					var newDiv = document.createElement('div');
					newDiv.setAttribute("class","recht");
					if(!ns6){
						newDiv.style.position = "relative";
						newDiv.style.left = "485px";	
						newDiv.style.bottom = "15px";													
					}						
					newDiv.appendChild(document.createTextNode('Dit i-board is nog niet verschenen'));						
					parent.appendChild(newDiv);
					
					subProdText += parent.getElementsByTagName('SPAN')[0].innerHTML+"]";
				}*/
				
				
				//DEBUT NOUVEAU (DIRE SI ABO SUR NON PUBLIE)
				var prods = prodList.split(']');
				var ok = 0;
				for(j = 0 ; j < prods.length && ok == 0 ; j++){
					var prod = prods[j];
					if(prod != '' && img.getAttribute("src").indexOf(prod) != -1){
						ok = 1;						
					}					
				}
				if(ok == 1){
					img.style.border = "2px solid #FF8C00";
					img.style.margin = "0 1px";
					
					if(subProdText.indexOf(parent.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
						parent.parentNode.style.background = "#eaeeeb url(images/degrade_hor_acc_NEW.png) repeat-y";
						var listDiv = parent.parentNode.getElementsByTagName("div");
						for(d = 0 ; d < listDiv.length ; d++){
							var div = listDiv[d];
							if(div.getAttribute('class') == 'rbtop' || div.getAttribute('className') == 'rbtop'){ 
								div.setAttribute("class","rbtop_acc");	
								div.setAttribute("className","rbtop_acc");								
							}else if(div.getAttribute('class') == 'rbbot' || div.getAttribute('className') == 'rbbot'){
								div.setAttribute("class","rbbot_acc");	
								div.setAttribute("className","rbbot_acc");															
							}
						}						
						
						var newDiv = document.createElement('div');
						newDiv.setAttribute("class","recht");
						if(!ns6){
							newDiv.style.position = "relative";
							newDiv.style.left = "460px";
							newDiv.style.bottom = "15px";							
						}						
						newDiv.appendChild(document.createTextNode('U heeft een abonnement op dit i-board'));						
						parent.appendChild(newDiv);
						
						subProdText += parent.getElementsByTagName('SPAN')[0].innerHTML+"]";
					}
				}else{
					var futures = prodListNotStarted.split(']');
					ok = 0;
					var date = "";
					for(j = 0 ; j < futures.length && ok == 0 ; j++){
						var future = futures[j];
						if(future != '' && img.getAttribute("src").indexOf(future.substring(0,future.indexOf("/"))) != -1){
							ok = 1;
							date = future.substring(future.indexOf("/")+1);						
						}					
					}
					if(ok == 1){
						img.style.border = "2px solid #FF8C00";
						img.style.margin = "0 1px";
					
						if(subProdText.indexOf(parent.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
							parent.parentNode.style.background = "#eaeeeb url(images/degrade_hor_acc_NEW.png) repeat-y";
							var listDiv = parent.parentNode.getElementsByTagName("div");
								for(d = 0 ; d < listDiv.length ; d++){
								var div = listDiv[d];
								if(div.getAttribute('class') == 'rbtop' || div.getAttribute('className') == 'rbtop'){ 
									div.setAttribute("class","rbtop_acc");	
									div.setAttribute("className","rbtop_acc");								
								}else if(div.getAttribute('class') == 'rbbot' || div.getAttribute('className') == 'rbbot'){
									div.setAttribute("class","rbbot_acc");	
									div.setAttribute("className","rbbot_acc");															
								}
							}
																				
							var newDiv = document.createElement('div');
							newDiv.setAttribute("class","recht");
							if(!ns6){
								newDiv.style.position = "relative";
								newDiv.style.left = "470px";
								newDiv.style.bottom = "15px";														
							}						
							newDiv.appendChild(document.createTextNode('Uw abonnement start op '+date));						
							parent.appendChild(newDiv);
							
							subProdText += parent.getElementsByTagName('SPAN')[0].innerHTML+"]";
						}
					}else if(subProdText.indexOf(parent.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
						var newDiv = document.createElement('div');
						newDiv.setAttribute("class","recht");
						if(!ns6){
							newDiv.style.position = "relative";
							newDiv.style.left = "450px";	
							newDiv.style.bottom = "15px";													
						}						
						newDiv.appendChild(document.createTextNode('U heeft geen abonnement op dit i-board'));						
						parent.appendChild(newDiv);
						subProdText += parent.getElementsByTagName('SPAN')[0].innerHTML+"]";
					}
				}
				
				var prods = prodList.split(']');
				var ok = 0;
				for(j = 0 ; j < prods.length && ok == 0 ; j++){
					var prod = prods[j];
					if(prod != '' && img.getAttribute("src").indexOf(prod) != -1){
						ok = 1;						
					}					
				}
				if(ok == 1){
					img.style.border = "2px solid #FF8C00";
					img.style.margin = "0 1px";
					
					if(subProdText.indexOf(parent.getElementsByTagName('SPAN')[0].innerHTML+"]") == -1){
						parent.parentNode.style.background = "#eaeeeb url(images/degrade_hor_acc_NEW.png) repeat-y";
						var listDiv = parent.parentNode.getElementsByTagName("div");
						for(d = 0 ; d < listDiv.length ; d++){
							var div = listDiv[d];
							if(div.getAttribute('class') == 'rbtop' || div.getAttribute('className') == 'rbtop'){ 
								div.setAttribute("class","rbtop_acc");	
								div.setAttribute("className","rbtop_acc");								
							}else if(div.getAttribute('class') == 'rbbot' || div.getAttribute('className') == 'rbbot'){
								div.setAttribute("class","rbbot_acc");	
								div.setAttribute("className","rbbot_acc");															
							}
						}
						
						var newDiv = document.createElement('div');
						newDiv.setAttribute("class","recht");
						if(!ns6){
							newDiv.style.position = "relative";
							newDiv.style.left = "460px";	
							newDiv.style.bottom = "15px";													
						}						
						newDiv.appendChild(document.createTextNode('U heeft een abonnement op dit i-board'));						
						parent.appendChild(newDiv);
						
						subProdText += parent.getElementsByTagName('SPAN')[0].innerHTML+"]";
					}
				}
				
				//FIN NOUVEAU (DIRE SI ABO SUR NON PUBLIE)	
			}
		}		
	}
}

function showFreeSchoolInfos(){
	document.getElementById('table_freeschool').style.display = 'block';
}

