   var http_request = false;
   
   function makePOSTRequest(url, parameters) {
  	  http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      http_request.onreadystatechange = alertContents;
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
      http_request.send(parameters);
   }

   function alertContents() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) 
         {
           document.getElementById('succmsg').style.display	=	'';
           document.getElementById('para1').style.display	=	'none';
           document.getElementById('para2').style.display	=	'none';
           
         } else {
            alert('There was a problem with the request.');
         }
      }
   }

	var fieldstocheck = new Array();
    	fieldnames 	  = new Array();

	function checkform() 
	{
	   formObj =  document.subscribeform;
	   if(formObj.name.value==''){
		 alert('Please enter Name');
		 formObj.name.focus();
		 return false;
	   }
		  
	  if(formObj.email.value==''){
	 	alert('Please enter Email');
	 	formObj.email.focus();
	 	return false;
	  }
		  
	  if(formObj.email.value!=''){
	 	 var chk =  echeck(formObj.email.value)
	 	 
	 	 if(!chk)
	 	 {
	 	 	return false;
	 	 }
	  }
		  
	 var poststr = "&list=" + encodeURI( document.getElementById("list").value ) +
               		"&listname=" + encodeURI( document.getElementById("listname").value ) +
					"&attribute1=" + encodeURI( document.getElementById("attribute1").value ) +
               		"&subscribe= Submit" +
               		"&confirmemail=" + encodeURI( document.getElementById("email").value ) +
               		"&email=" + encodeURI( document.getElementById("email").value );
      makePOSTRequest('lists/?p=subscribe_ajax&id='+document.getElementById("subscribe_page_id").value, poststr);
	}



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 ID")
		   return false
		}

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

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

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

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

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


   var http_request_unsubscribe = false;
   function makePOSTRequestForUnsubscribe(url, parameters) {
   		
   	  http_request_unsubscribe = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request_unsubscribe = new XMLHttpRequest();
         if (http_request_unsubscribe.overrideMimeType) {
            http_request_unsubscribe.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request_unsubscribe = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request_unsubscribe = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request_unsubscribe) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      http_request_unsubscribe.onreadystatechange = alertContentsUnsubscribe;
      http_request_unsubscribe.open('POST', url, true);
      http_request_unsubscribe.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request_unsubscribe.setRequestHeader("Content-length", parameters.length);
      http_request_unsubscribe.setRequestHeader("Connection", "close");
      http_request_unsubscribe.send(parameters);
   }

   function alertContentsUnsubscribe() {
      if (http_request_unsubscribe.readyState == 4) {
         if (http_request_unsubscribe.status == 200) {
           document.getElementById('msg_unsubscribe').style.display='';
         } else {
            alert('There was a problem with the request.');
         }
      }
   }
   
   function fnc_unsubscribe()
   {
   	   var poststr = "&uid=" + encodeURI( document.getElementById("uid").value ) +
               		 "&unsubscribereason=" + encodeURI( document.getElementById("unsubscribereason").value ) +
               		 "&unsubscribeemail=" + encodeURI( document.getElementById("unsubscribeemail").value )+
               		 "&unsubscribe=submit";
       makePOSTRequestForUnsubscribe('lists/?p=unsubscribe', poststr);
   }



	var xmlhttp;
	function fnc_confirmEmail(p,uid)
	{
		xmlhttp=GetXmlHttpObject();
		if (xmlhttp==null){
		  alert ("Browser does not support HTTP Request");
		  return;
		}
		var   url	=	"lists/?p="+p+"&uid="+uid;
			  url	=	url+"&sid="+Math.random();
			
		xmlhttp.onreadystatechange= function () {
			if (xmlhttp.readyState==4){
				document.getElementById('confirmactivation').style.display='';
			}
	    }
		xmlhttp.open("GET",url,true);
		xmlhttp.send(null);
	}
	
	function GetXmlHttpObject()
	{
		if (window.XMLHttpRequest){
	  		return new XMLHttpRequest();
		}
		if (window.ActiveXObject){
	 		return new ActiveXObject("Microsoft.XMLHTTP");
		}
		return null;
	}
