AC_FL_RunContent = 0;

var status = '';
var host = "http://"+window.location.hostname+"/";

//THE VERY USEFULL XMLHTTPOBJECT 
function GetXmlHttpObject(){
	var xmlHttp=null;
	try{ // Firefox, Opera 8.0+, Safari
 		xmlHttp=new XMLHttpRequest();
 	}catch(e){ //Internet Explorer
		try{
  			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}catch (e){
  			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

function fnToggleDiv(element, mode){
	if(mode == 'close'){
		if(document.getElementById('logo').style.visibility == 'hidden'){
			document.getElementById('logo').style.visibility = 'visible';
		}
	}
	
	if(document.getElementById(element).style.display == 'block'){
		document.getElementById(element).style.display = '';
	}else{
		document.getElementById(element).style.display = 'block';
	}
}

var navigation = '';
var updateDiv;
function fnGetPayment(method, element, promoid, nav){
	
	document.getElementById('logo').style.visibility = 'hidden';
	updateDiv = element ? element : '';		//Is there an ID set to update div?
	xmlHttp = GetXmlHttpObject()
	if(nav){
		navigation = nav;
	}
	if(xmlHttp==null){
		alert ("Browser does not support HTTP Request"); return;
	} 	
	//Bunch of new vars need to be passed along for the transaction	
	var url= host+"payment/index.php"
	url=url+"?method="+method
	url=url+"&promoid="+promoid
	url=url+"&sid="+Math.random()
	xmlHttp.onreadystatechange=fnPayment
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

function fnPayment(){
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
		if(updateDiv) fnToggleDiv(updateDiv);
 		document.getElementById("overlay").innerHTML=parseScript(xmlHttp.responseText);
 		if(navigation == 'question'){
 			document.getElementById('tel').value = myphone
 		}
 		
	} 
}

//Check Form Errors
function fnCheckError(parentdiv, msg, action){
	var newdiv 	= document.createElement('div');
	newdiv.setAttribute('id','error');
	
	if(msg){
		if(action=='alert'){
			alert(msg);
		}else{
			if(document.getElementById('error')){
				document.getElementById('error').innerHTML = msg;
			}else{
				document.getElementById(parentdiv).appendChild(newdiv);
				newdiv.innerHTML = msg;
			}
		}
		status = 'error';
	}else{
		if(action!='alert'){
			if(document.getElementById('error')){
				document.getElementById(parentdiv).removeChild(document.getElementById('error'));
			}
		}
		status = 'ok';
	}
}

//Submit Form
var formType;
function fnSubmitForm(form,myArray,element){
	
	updateDiv = element ? element : 'form'; //Is there an ID set to update div?
	if(form=='login') formType = 'login';
	
	xmlHttp = GetXmlHttpObject()
	if(xmlHttp==null){
		alert ("Browser does not support HTTP Request"); return;
	}
 
	//Bunch of new vars need to be passed along for the transaction
	var url="forms.php"
	url=url+"?form="+form
	for(key in myArray){
		url=url+"&"+key+"="+myArray[key]
	}
	xmlHttp.onreadystatechange=fnSubmitFormComplete
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

//Submit Form Complete
function fnSubmitFormComplete(){
	if(xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
		if(formType=='login')
			window.location.href = "forms.php?form=login";
		else
 		document.getElementById(updateDiv).innerHTML=xmlHttp.responseText;
	} 
}


//Tiplijn Form
function fnSendTip(){
	var nameval = document.getElementById('naam').value;
	var mailval = document.getElementById('mail').value;
	var tipval 	= document.getElementById('tip').value;

	//Check name input
	if(!nameval) msg = 'Voer je naam in!';
	//Check mail input
	else if(!mailval) msg = 'Voer je e-mail adres in!';
	//Check valid mail
	else if(fnCheckEmail(mailval)) msg = 'Ongeldig e-mail adres!';
	//Check tip input
	else if(!tipval) msg = 'Voer je tip in!';	
	//No errors
	else msg = '';
	
	//Check errors and if ok submit form ('formname',array[field:value])
	fnCheckError('tiplijn', msg);
	if(status=='ok'){
		myArray = {
			"name" : nameval,
			"mail" : mailval,
			"tip"  : tipval
		};
		fnSubmitForm('tip',myArray);
	}
}

//Question Form
function fnSendQuestion($defnameval,$defmailval,$defmail2val,$defaskval){
	var starval = document.getElementById('star').value;
	var nameval = document.getElementById('name').value;
	var mailval = document.getElementById('mail').value;
	var mail2val = document.getElementById('mail2').value;
	var askval = document.getElementById('ask').value;
	var starnameval = document.getElementById('starname').value;

	//Check name input
	if(!nameval || nameval==$defnameval) msg = 'Voer je naam in!';
	//Check mail input
	else if(!mailval || mailval==$defmailval) msg = 'Voer je e-mail adres in!';
	//Check valid mail
	else if(fnCheckEmail(mailval)) msg = 'Ongeldig e-mail adres!';
	//Check if both emails match up
	else if(mailval!=mail2val || mailval==$defmailval || mail2val==$defmail2val) msg = 'E-mail adres komt niet overeen!';
	//Check tip input
	else if(!askval || askval==$defaskval) msg = 'Voer je vraag in!';	
	//No errors
	else msg = '';
	
	//Check errors and if ok submit form ('formname',array[field:value])
	fnCheckError('question', msg);
	if(status=='ok'){
		myArray = {
			"star" : starval,
			"name" : nameval,
			"mail" : mailval,
			"mail2" : mail2val,
			"question" : askval,
			"starname" : starnameval
		};
		fnSubmitForm('question',myArray);
	}
}

//function to check valid email address
function fnCheckEmail(strEmail){
  	validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
	if(strEmail.search(validRegExp) == -1) return true;
    return false; 
}



//Search Rewrite Url
function fnSearch(cat,searchable){
	if(!searchable) searchable = 'no';
	var searchval = document.getElementById('searchval').value;
	
	if(searchval.length > 2){
		url = host;
		if(cat && searchable=='yes'){
			url = url+"catsearch/"+cat+"/"+searchval+"/";
		}else{
			url = url+"search/"+searchval+"/";
		}
		window.location=url;
	}else{
		alert('Voer minimaal 3 karakters in');	
	}
}


function parseScript(_source){
		var source = _source;
		var scripts = new Array();
 
		// Strip out tags
		while(source.indexOf("<script") > -1 || source.indexOf("</script") > -1) {
			var s = source.indexOf("<script");
			var s_e = source.indexOf(">", s);
			var e = source.indexOf("</script", s);
			var e_e = source.indexOf(">", e);
 
			// Add to scripts array
			scripts.push(source.substring(s_e+1, e));
			// Strip from source
			source = source.substring(0, s) + source.substring(e_e+1);
		}
 
		// Loop through every script collected and eval it
		for(var i=0; i<scripts.length; i++) {
			try{
				eval(scripts[i]);
			}catch(ex) {
				// do what you want here when a script fails
			}
		}
		// Return the cleaned source
		return source;
}

////////////////////////////////////////////////////////// LOGIN //////////////////////////////////////////////////////////
function smsLogin(number,code){			
	if (code.length==4){				
		xmlHttp=GetXmlHttpObject()
		if (xmlHttp==null){
			alert ("Browser does not support HTTP Request");
			return;
		}
		
		var url = host+"modules/login.php";		
		url=url+"?code="+code
		url=url+"&number="+number		
		xmlHttp.onreadystatechange=checkLoginResult
		xmlHttp.open("GET",url,true)
		xmlHttp.send(null)				
	}else {
		alert('De ingevoerde code moet uit minimaal 4 cijfers bestaan');
	}	
}
function checkLoginResult(){
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){		
		var my_result = trim(xmlHttp.responseText);
		if (my_result=="OKAY"){
			alert("De toegangscode is geaccepteerd. Je krijgt nu automatisch toegang tot de website");
			location.href = 'http://www.sterrenstek.nl/members/';
		}else if (my_result=="NOACCESS"){
			alert("De toegangscode is niet geaccepteerd");
		}else {
			alert("Er is geen juiste combinatie van telefoonnumer en toegangscode opgegeven");
		}		
	}
}

////////////////////////////////////////////////////////// PAYMENT //////////////////////////////////////////////////////////
function trim(value) {
  value = value.replace(/^\s+/,''); 
  value = value.replace(/\s+$/,'');
  return value;
}

function changeCountry(country){
	if (country=="be"){
		document.getElementById("phoneInfo").innerHTML = "<label>Bel vanuit Belgie</label><b>0907 - 07 000</b><label><span>125 ecpm</span></label>";
	}else{
		document.getElementById("phoneInfo").innerHTML = "<label>Bel vanuit Nederland</label><b>0909 - 04 00 324</b><label><span>80 ecpm</span></label>";
	}
	document.formRequestCode.requestcode.focus();
}

//Check Dialxs XS
function CheckXS(siteid,country,promotor,info,goal,code){	
	
	//alert('promotor='+promotor+'\n infocode='+info);
	
	//code = document.formRequestCode.requestcode.value;
	
	
	
	
	if (code.length==4){
		target = goal;
		document.getElementById("codePlaceholder").style.display = 'none';
		document.getElementById("loadingPlaceholder").style.display = 'block';
		
		xmlHttp=GetXmlHttpObject()
		if (xmlHttp==null){
			alert ("Browser does not support HTTP Request");
			return;
		}
		
		var url = host+"modules/getxs.php";
		
		url=url+"?code="+code
		url=url+"&siteid="+siteid
		url=url+"&country="+country
		url=url+"&promotor="+promotor
		url=url+"&info="+info
		
		
			
		xmlHttp.onreadystatechange=accessCheck
		xmlHttp.open("GET",url,true)
		xmlHttp.send(null)		
	}else {
		alert('De ingevoerde code moet uit minimaal 4 cijfers bestaan');
	}	
}

function accessCheck(){
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){		
		var my_result = trim(xmlHttp.responseText);				
		var split_result = my_result.split("\n");
		var dx_result = trim(split_result[0]);		
		
		
		
		if (dx_result=="WRONG"){			
			document.getElementById("loadingPlaceholder").style.display = 'none';			
			document.getElementById("codePlaceholder").style.display = 'block';	
			alert('De ingevoerde code is onjuist!');		
		}else{
			var member_url = split_result[3];
			alert('De toegangscode is geaccepteerd\nJe krijgt nu automatisch toegang tot de website\nBlijf aan de lijn om toegang te houden');
			setTimeout('getin()', 1000);
		}
	}
}

function getin(){	
	location.href = 'http://www.sterrenstek.nl/members/';
}


// All the parts below are used for requesting a new code for sms.
var myphone;
function getCode(phone,promoid){	
	if (phone.length==10){
		myphone = phone;
		
		document.getElementById("inputFieldPlaceholder").style.display = 'none';
		document.getElementById("loadingPlaceholder").style.display = 'block';

		xmlHttp=GetXmlHttpObject()
		if (xmlHttp==null){
			alert ("Browser does not support HTTP Request")
			return;
		}
		var url = host+"modules/subscribe.php";
		url=url+"?phone="+phone
		url=url+"&promoid="+promoid
		url=url+"&action=sendsms"
		
		//alert(url);
		
		xmlHttp.onreadystatechange=callSms
		xmlHttp.open("GET",url,true)
		xmlHttp.send(null)
	}else {
		alert('Het telefoonnummer moet uit minstens 10 cijfers bestaan');
	}
}

function callSms(){
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){		
		var my_result = trim(xmlHttp.responseText);
		
		//alert(my_result);
		
		// Check the result
		if (my_result=="RESEND"){
			// Resend the old code
			sendSms("RESEND");
		}else if (my_result=="NEW"){
			
			//alert('joehoe');
			
			// Send a confirmation SMS
			sendSms("NEW");
		}else if (my_result=="COOKIE"){
			// User already sended a SMS
			document.getElementById("loadingPlaceholder").style.display = 'none';
    		document.getElementById("errorPlaceholder").style.display = 'block';
    		document.getElementById("errorMessage").innerHTML = "Je hebt onlangs nog geprobeerd om een code op te vragen. Dit mag maximaal 1x per uur.";
		}else {	
			
			//alert('DADA');
			
			document.getElementById("loadingPlaceholder").style.display = 'none';
    		document.getElementById("errorPlaceholder").style.display = 'block';
    		document.getElementById("errorMessage").innerHTML = "Het versturen van de sms is wegens techische redenen mislukt. Contacteer de webmaster";
		}		
	}
}

function sendSms(type){	
	status = "CHECK";
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null){
		alert ("Browser does not support HTTP Request")
		return;
	}
	
	var url=host+"modules/sendsms.php"
	url=url+"?phone="+myphone
	url=url+"&type="+type	
	xmlHttp.onreadystatechange=checkSms
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

function checkSms(){
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
		var my_result = xmlHttp.responseText;		
		smstype='';
		if (my_result=="RESEND"){			
			smstype = "RESEND";
		}
		if (status=="CHECK"){
			waitcount = 1;
			// Sms Sended. Update the message on the site and check if the sms is received
			document.getElementById("waitMessage").innerHTML = "Bezig met verzenden van sms naar: "+myphone+"<br>Poging 1 van 5";
			setTimeout('WaitCheck()', 5000);			
		}else if (status=="WAIT"){
			if (waitcount < 5){				
				switch (my_result){
			    	case "0":
			    	
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("okPlaceholder").style.display = 'block';	
			    		if (smstype=="RESEND"){
			    			document.getElementById("okmessage").innerHTML = 'Gebruik het ontvangen wachtwoord om in te loggen';
			    		}else {
			    			document.getElementById("okmessage").innerHTML = 'Beantwoord het ontvangen bericht met OK om jouw toegangscode te ontvangen';
			    		}
			    		
			    		//If the navigation variable is filled we need to move the script to the location where it originated from.
			    		switch(navigation){
			    			case "question":
			    				fnGetPayment('question','');
			    				break;
			    			default:
			    				break;
			    		}
			    		
			    		
			    		
			    		document.getElementById("tel").value = myphone;
			    		break;
			    	case "103":
			    	case "255":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Het versturen is door een onbekende fout niet toegestaan";
			    		break;
			    	case "104":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Dit nummer kan geen gebruik maken van Sms diensten";
			    		break;
			    	case "107":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Het bericht kon niet optijd worden afgeleverd";
			    		break;
			    	case "108":
			    	case "118":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Het versturen is vanwege technische problemen mislukt";
			    		break;
			    	case "230":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Het opgegeven nummer is onbekend";
			    		break;
			    	case "231":
			    	case "232":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Het opgegeven nummer heeft onvoldoende tegoed";
			    		break;
			    	case "233":
			    	case "234":
			    	case "235":
			    		document.getElementById("loadingPlaceholder").style.display = 'none';
			    		document.getElementById("errorPlaceholder").style.display = 'block';
			    		document.getElementById("errorMessage").innerHTML = "Het nummer is geblokkeerd voor deze sms dienst";
			    		break;		    	
			    	default:
			    		waitcount++;
						document.getElementById("waitMessage").innerHTML = "Bezig met verzenden van sms naar: "+myphone+"<br>Poging "+waitcount+" van 5";
			    		setTimeout('WaitCheck()', 5000);
			    		break;					
				}				
			}else {
				document.getElementById("loadingPlaceholder").style.display = 'none';
	    		document.getElementById("errorPlaceholder").style.display = 'block';
	    		document.getElementById("errorMessage").innerHTML = "Het versturen van de sms is mislukt. Probeer het later opnieuw";
			}
		}		
	}
}

function WaitCheck(){
	status = "WAIT";	
	// Check if sms is received
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null){
		alert ("Browser does not support HTTP Request")
		return;
	}
	
	var url=host+"modules/checksms.php"
	url=url+"?phone="+myphone	
	xmlHttp.onreadystatechange=checkSms
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)	
}
/////////////////////////////////////////////////////////////////////////////////////

///END SMS


//BEGIN QUESTION


function fnAskQuestion(){
	//lets put all needed input fields in a variable
	
	oStar = document.getElementById("question_starname");
	
	var sStarName   = oStar.options[oStar.selectedIndex].value;
	var sName       = document.getElementById("question_name").value;
	var sEmail      = document.getElementById("question_mail").value;
	var sEmailCheck = document.getElementById("question_mail2").value;
	var sQuestion   = document.getElementById("question_question").value;
	var iPhone		= document.getElementById("tel_q").value;
	var iCode		= document.getElementById("code_q").value;
	
	//We are gonna create a check for the above values to see if they are not empty and dont have the standard value among them
	
	if(sName == "" || sName == "Vul hier uw naam in!"){
		alert("Vul uw naam in");
		fnGetPayment('question','overlay');
		return false;
	}
	if(sEmail == "" || sEmail == "Vul hier uw email adres in!" || !emailValidator(sEmail)){
		alert("Vul uw email adres correct in");
		fnGetPayment('question','overlay');
		return false;
	}
	if(sEmailCheck == "" || sEmailCheck == "Vul hier nogmaals uw email adres in!" || !emailValidator(sEmailCheck)){
		alert("Vul uw email adres nogmaals in!");
		fnGetPayment('question','overlay');
		return false;
	}
	if(sEmail != sEmailCheck){
		alert("De ingevulde emailadressen komen niet overeen");
		fnGetPayment('question','overlay');
		return false;
	}
	
	if(sQuestion == "" || sQuestion == "Vul hier uw vraag in!"){
		alert("Vul uw vraag in");
		fnGetPayment('question','overlay');
		return false;
	}
	
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null){
		alert ("Browser does not support HTTP Request")
		return;
	}
	
	var url=host+"modules/send_question.php"
	url=url+"?tel="+iPhone
	url=url+"&icode="+iCode
	url=url+"&starname="+sStarName	
	url=url+"&email="+sEmail	
	url=url+"&emailcheck="+sEmailCheck	
	url=url+"&name="+sName	
	url=url+"&question="+sQuestion		
	xmlHttp.onreadystatechange=fnQuestionAction
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)	
}

function fnQuestionAction(){
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){		
		var my_result = xmlHttp.responseText;
	
		switch(my_result){
			case "ERROR_EMPTY":
				alert('Niet alle velden zijn goed ingevuld');
				break;
			case "ERROR_UNKNOWN":
				alert('Er is een onbekende fout opgetreden');
				break;
			case "ERROR_LOGIN":
				alert('De ingevulde inloggegevens zijn niet correct');
				break;
			case "OKAY":
				document.getElementById("questionPlace").innerHTML = '<h2>Uw vraag is verstuurd</h2>';
				fnGetPayment('question','overlay');
				break;
		}
	}
}



function emailValidator(elm){
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	if(elm.match(emailExp)){
		return true;
	}else{
		return false;
	}
}



function fnChangeImg(img,_pos){
	var imgSrc 	= "http://sterrenstek.nl/uploads/"+img + '?rn=' + Math.random();
	var newImg 	= new Image();
	//var newImg 	= document.createElement('img');
	newImg.src 	= imgSrc;
	newImg.onload = function() {


		//for(i=0;i<newImg.attributes.length;i++){
		//	alert(newImg.attributes[i].name)
		//}
	
		var iHeight = newImg.height;
		var iWidth 	= newImg.width;
	
		el = document.getElementById('overlay');
		el.innerHTML = '';//Clear the innerHTML
	
		linkDiv           = document.createElement("a");
		linkDiv.innerHTML = "Sluiten";
		
		divInner = document.createElement('div');
		divInner.id 				= "enlarged";
		
		if(iWidth > 1024){
			iWidth 	= 900;
			iHeight = 700;
			var newImg1 	= new Image();
			newImg1.src 	= "http://sterrenstek.nl/image/top/"+iWidth+"x"+iHeight+"/"+img;
			divInner.appendChild(newImg1);
		}else{
			divInner.appendChild(newImg);
		}
		
		
		divInner.style.width 		= iWidth+'px';
		divInner.style.height 		= iHeight+'px';
		divInner.style.marginTop 	= (-(iHeight/2)-30)+'px';
		divInner.style.marginLeft 	= -(iWidth/2)+'px';
		
	
	
	
		//divInner.innerHTML = "<a onclick='fnToggleDiv('overlay')'>Sluiten</a><img src='../uploads/"+img+"'>";
	
		divInner.appendChild(linkDiv);
		
	
		el.appendChild(divInner);
		el.style.display = 'block';
		//el.style.width 	 = width+'px';
	
	
		el.onclick = function(){ fnToggleDiv('overlay') };
	}
	
}



function fnChange(id,img,name){
	document.getElementById('starLink').href = "vragen/"+id+"/"+name+"/";
	document.getElementById('starImg').src = "image/110x110/"+img;
}

function fnGetName(string){
	document.getElementById('starname').value = string;
}



function fnChColor(_elm_){
	document.getElementById(_elm_).style.color = "#000";
}