function useMode(mode){
	var mode1 = document.getElementById('mode_1');
	var mode2 = document.getElementById('mode_2');
	var mode3 = document.getElementById('mode_3');
	mode1.style.display='none';
	mode2.style.display='none';
	mode3.style.display='none';
	switch(mode){
		case 1:
			mode1.style.display ='block';
		break;
		case 2:
			mode2.style.display ='block';
		break;
		case 3:
			mode3.style.display ='block';
		break;
	}
};

function validRequiredFields(){
	var myname = document.getElementById('myname');	
	var myemail = document.getElementById('myemail');	
	var usermessage = document.getElementById('usermessage');	
	if(myname.value==''||myname.value.length==0){
		alert('Please enter your name');
		myname.focus();
		return false;
	}
	if(myemail.value==''||myemail.value.length==0){
		alert('Please enter you email address');
		myemail.focus();
		return false;
	}
	if(echeck(myemail.value)==false){		
		myemail.focus();
		return false;
	}
	if(usermessage.value==''||usermessage.value.length==0){
		alert('Please enter message');
		usermessage.focus();
		return false;
	}
	return true;
};

function validateManualEntryForm(){
	var myname = document.getElementById('myname');
	var myemail = document.getElementById('myemail');	
	var usermessage = document.getElementById('usermessage');
	if(validRequiredFields()){
		var emails = document.getElementById('emails');
		if(emails.value==''||emails.value.length==0){
			alert('Please enter atleast one email address');
			emails.focus();
			return false;
		}	
	
		var url = 'index.php?option=com_joominvite&format=raw&task=manual';
		var req = new Ajax(url,{
		  method: 'post',                            
		  data: { 'myname' : myname.value, 'myemail' : myemail.value, 'emails' : emails.value, 'usermessage' : usermessage.value },
		  onRequest: function() { $('returnmessage').innerHTML =  'Sending Emails'; },
		  onComplete: function(response) { 
		  	$('returnmessage').innerHTML = 'Emails Sent';              	
		  }
		}).request();
	}
};

function validateOutlookEntryForm(){
	var myname = document.getElementById('tb_myname');	
	var myemail = document.getElementById('tb_myemail');	
	var usermessage = document.getElementById('tb_usermessage');
	var csv = document.getElementById('csv');	
	if(myname.value==''||myname.value.length==0){
		alert('Please enter your name');
		myname.focus();
		return false;
	}
	if(myemail.value==''||myemail.value.length==0){
		alert('Please enter you email address');
		myemail.focus();
		return false;
	}
	if(echeck(myemail.value)==false){		
		myemail.focus();
		return false;
	}
	if(usermessage.value==''||usermessage.value.length==0){
		alert('Please enter message');
		usermessage.focus();
		return false;
	}	
	if(csv.value==''||csv.value.length==0){
		alert('Please choose a csv file to upload');
		csv.focus();
		return false;
	}
	return true;
};

function validateAndRequestData(){
	var name		= document.getElementById('name');
	var provider 	= document.getElementById('provider');
	var emailID		= document.getElementById('user');
	var password 	= document.getElementById('pass');
	
	if(name.value==''|| name.value.length==0){
		alert('Please enter your name');
		name.focus();		
		return false;
	}
	
	if(provider.value==''||provider.value.length==0){
		alert('Please choose a service provider');
		provider.focus();		
		return false;
	}
	
	if ((emailID.value==null)||(emailID.value=="")){
		alert("Please Enter your Email ID")
		emailID.focus()
		return false
	}
	if (echeck(emailID.value)==false){
		emailID.value=""
		emailID.focus()
		return false
	}
	sendRequest();
};

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					
};

/*************************************************************/
/*					Ajax Functions							 */
/*************************************************************/
function closeMe() {
  	$('popup').setStyle('display','none');
};

//window.addEvent('domready', function() {
  //$('runAjax').addEvent('click', function() {

function sendRequest(){
  	  var url = 'index.php?option=com_joominvite&format=raw&task=fetch';
      var req = new Ajax(url,{
          method: 'post',                            
          data: { 'name' : $('name').getValue(), 'email_box' : $('user').getValue(), 'password_box' : $('pass').getValue(), 'provider_box' : $('provider').getValue() },
          
          onRequest: function() { $('popup').setStyle('display','block');
		  		$('content').innerHTML = '<div>Importing Contacts</div>';
		   },
		   
          onComplete: function(response) { 
          	$('popup').setStyle('display','block');
          	var data = eval('('+ response+ ')');              	
          	
          	if(data.returncode)
			{
				$('content').innerHTML =  '<div id = "message" class="success">'+data.returnmsg+'</div><form name="myForm" id="myForm">'+'<input type="hidden" id="host_id" name="host_id" value="'+data.id+'" />';
          		var html = '<table>';
				for(var i=0;i<(data.contacts.length);i++)
				{
					html += '<tr style="text-align:left;left:grey"><td><input type="checkbox" name="recepient" id="recepient_'+i+'" value="'+data.contacts[i].name+'_'+data.contacts[i].email+'">'+data.contacts[i].name+'</td></tr>';					
          		}
          		
          		//Message Input Box          	
          		html += '<tr style="text-align:left;color:grey"><td>Message:</td><td><textarea rows="8" cols="40" name="invitetext" id="invitetext"></textarea></td></tr></table>';
          		var mydiv=document.createElement("div");
          		mydiv.innerHTML = html;              		
          		$('content').appendChild(mydiv);
          		
          		//Send Invites Button
          		var mydiv=document.createElement("div");
          		mydiv.setAttribute("class","myrow");
				  					              		
          		var html = '<div style="text-align:left;width:400px;padding-top:10 0 10 40;"><span><a href="#" onClick="return sendInvites('+i+');">Send Invites</a></span></div></form>';
          		
          		mydiv.innerHTML = html;
          		$('content').appendChild(mydiv);
          	}
          	else
          	{
          		$('content').innerHTML =  '<div id = "message" class="error">'+data.returnmsg+'</div>';
          	}
          }
      }).request();
  };
  
function sendInvites(total){  	  	
  	var message = $('invitetext').getValue();  	 
  	var id = $('host_id').getValue();
  	var parts = new Array();
  	var postvars 	= new Array();  	
	var names 		= new Array();
	
  	for(i = 0; i < total; i++)
  	{
  		var elem = 'recepient_'+i;		  				
		if( document.getElementById(elem).checked == true )
		{								
			parts = document.getElementById(elem).value.split('_');
			postvars.push(parts[1]);
			names.push(parts[0]);		
		}
	}
	
	if(postvars.length > 0){
		var url = 'index.php?option=com_joominvite&format=raw&task=sendMails';
          var req = new Ajax(url,{
              method: 'post',                            
              data: { 'id' : id, 'message' : message, 'emails' : postvars, 'names' : names, 'url' : location.href },
              onRequest: function() { $('content').innerHTML =  '<div>Sending Emails</div>'; },
              onComplete: function(response) { 
              	$('popup').setStyle('display','none');              	
			  }
		  }).request();		                	              	
	}else{
		var mydiv=$("message");
        mydiv.setAttribute("class","error");			              		
        var html = 'Please select a contact first';
        mydiv.innerHTML = html;        
	}	
	return false;
};
