addEvent(window, 'load', init, false);
function echeck(str) {

		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail");
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail");
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail");
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail");
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail");
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail");
		    return false
		 }

		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail");
		    return false
		 }

 		 return true					
	}

function ValidateForm(target){
	var emailID=target;

	if ((emailID.value==null)||(emailID.value=="")){
		alert("Please Enter your Email");
		emailID.focus();
		return false
	}
	if (echeck(emailID.value)==false){
		emailID.value="";
		emailID.focus();
		return false
	}
	return true
 }

function init() {
    if (!Sarissa || !document.getElementsByTagName) return;
    
    var formElements = document.getElementsByTagName('form');
    for (var i = 0; i < formElements.length; i++) {
        if (formElements[i].className.match(/\bajaxfriend\b/)) {
            addEvent(formElements[i], 'submit', submitFriendMail, false);
        }
		if (formElements[i].className.match(/\bajaxnews\b/)) {
            addEvent(formElements[i], 'submit', submitNewsMail, false);
        }
		if (formElements[i].className.match(/\bajaxpoll\b/)) {
            addEvent(formElements[i], 'submit', submitPoll, false);
        }
    }
}

function submitFriendMail(e) {
    /* Cancel the submit event, and find out which form was submitted */
    knackerEvent(e);
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    if (ValidateForm(target.elements['email'])==false) return;

    /* Set up the request */
    var xmlhttp =  new XMLHttpRequest();
    xmlhttp.open('POST', '/includes/friendmail.php', true);
    
    /* The callback function */
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200)
                addEmailFeedback(xmlhttp.responseXML, target);
            else
                target.submit();
        }
    }
    
    /* Send the POST request */
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlhttp.send('email=' + target.elements['email'].value + '&link=' + target.elements['link'].value);
   
     /* Add temporary feedback that the request has been sent */   
      var loadingImg = document.createElement('img');
      loadingImg.src = '/img/working.gif';
      target.getElementsByTagName('span')[0].appendChild(loadingImg);
      target.ajaxInProgress = true;
}
function submitPoll(e) {
    /* Cancel the submit event, and find out which form was submitted */
    knackerEvent(e);
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    
    /* Set up the request */
    var xmlhttp =  new XMLHttpRequest();
    xmlhttp.open('POST', '/includes/poll.php', true);
    
    /* The callback function */
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200)
                addPollFeedback(xmlhttp.responseXML, target);
            else
                target.submit();
        }
    }
    
    /* Send the POST request */
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	for (var i=0; i < target.antwoord.length; i++)
	   {
	   if (target.antwoord[i].checked)
	      {
	      var rad_val = target.antwoord[i].value;
	      }
	   }
	
    xmlhttp.send('id=' + target.elements['poll_id'].value + '&vote=' + rad_val);
   
     /* Add temporary feedback that the request has been sent */   
      var loadingImg = document.createElement('img');
      loadingImg.src = '/img/working.gif';
		target.getElementsByTagName('div')[0].innerHTML='';
      target.getElementsByTagName('div')[0].appendChild(loadingImg);
      target.ajaxInProgress = true;
}
function ShowPoll(id) {
	var formElements = document.getElementsByTagName('form');
    for (var i = 0; i < formElements.length; i++) {
		if (formElements[i].className.match(/\bajaxpoll\b/)) {
			target=formElements[i];
		}
	}
   /* Set up the request */
    var xmlhttp =  new XMLHttpRequest();
    xmlhttp.open('POST', '/includes/poll.php', true);
    
    /* The callback function */
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200)
                addPollFeedback(xmlhttp.responseXML, target);
        }
    }
    
    /* Send the POST request */
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlhttp.send('id=' + id + '&vote=0');
   
     /* Add temporary feedback that the request has been sent */   
      var loadingImg = document.createElement('img');
      loadingImg.src = '/img/working.gif';
		target.getElementsByTagName('div')[0].innerHTML='';
      target.getElementsByTagName('div')[0].appendChild(loadingImg);
      target.ajaxInProgress = true;
}
function submitNewsMail(e) {
    /* Cancel the submit event, and find out which form was submitted */
    knackerEvent(e);
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    if (ValidateForm(target.elements['email'])==false) return;
	
    /* Set up the request */
    var xmlhttp =  new XMLHttpRequest();
    xmlhttp.open('POST', '/includes/newsmail.php', true);
    
    /* The callback function */
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200)
                addNewsFeedback(xmlhttp.responseXML, target);
            else
                target.submit();
        }
    }
    
    /* Send the POST request */
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    xmlhttp.send('email=' + target.elements['email'].value);
   
     /* Add temporary feedback that the request has been sent */   
      var loadingImg = document.createElement('img');
      loadingImg.src = '/img/working.gif';
      target.getElementsByTagName('span')[0].appendChild(loadingImg);
      target.ajaxInProgress = true;
}
function addEmailFeedback(responseXML, target) {
     var loadingImg = target.getElementsByTagName('img')[0];
     loadingImg.parentNode.className += ' success';
     var feedbackText = 'An email has been sent to ' + 
         responseXML.getElementsByTagName('email')[0].firstChild.data + 
         ' . Thank you.';
     target.getElementsByTagName('div')[0].innerHTML=feedbackText;
	  // Free up the form to go again
     target.ajaxInProgress = false;
 }
function addNewsFeedback(responseXML, target) {
	     var loadingImg = target.getElementsByTagName('img')[0];
	     loadingImg.parentNode.className += ' success';
	     var feedbackText = '<b>You have been signed up!</b>';
	     target.getElementsByTagName('div')[0].innerHTML=feedbackText;
		  // Free up the form to go again
	     target.ajaxInProgress = false;
	 }
function addPollFeedback(responseXML, target) {
	     var loadingImg = target.getElementsByTagName('img')[0];
	     loadingImg.parentNode.className += ' success';
	     var feedbackText = '<div id="poll-result">';
		 for (var i=0;i<responseXML.getElementsByTagName('result')[0].childNodes.length;i++) {
			var antwoord=responseXML.getElementsByTagName('antwoord')[i].firstChild.data;
			var result=responseXML.getElementsByTagName('antwoord')[i].getAttribute("nums");
			var tresult=1+((result/100)*99);
			var votes=responseXML.getElementsByTagName('antwoord')[i].getAttribute("votes");
			feedbackText+='<div style="width:'+tresult+'%;"><q>'+result+'%</q></div><p>'+antwoord+'</p>';	 
		}
		 feedbackText+='</div>';
	     target.getElementsByTagName('div')[0].innerHTML=feedbackText;
		  // Free up the form to go again
	     target.ajaxInProgress = false;
	 }
