function getElemVal(elemName)
{
	var ele;
	return (('' != elemName && (false != (ele = getElemId(elemName)))) ? ele.value : '');
}
function getElemId(id)
{
	var ele = document.getElementById(id);
	return (isObject(ele) ? ele : false);
}
function isObject(thing) {return ((thing && "object" == typeof thing) || isFunction(thing));}
function isFunction(thing) {return ('function' == typeof thing);}

function createXMLHTTPObject()
{
	var xmlhttp = false;
	var XMLHttpFactories = [
		function () {return new XMLHttpRequest()},
		function () {return new ActiveXObject("Msxml2.XMLHTTP")},
		function () {return new ActiveXObject("Msxml3.XMLHTTP")},
		function () {return new ActiveXObject("Microsoft.XMLHTTP")}
	];
	for (var i = 0; i < XMLHttpFactories.length; i++) {
		try {
			xmlhttp = XMLHttpFactories[i](); // create an XMLHttpRequest object
		}
		catch (e) {
			xmlhttp = false;
			continue;
		}
		break;
	}
	if (!xmlhttp) {
		alert (err_browser);
	}
	return xmlhttp;
}
var http = createXMLHTTPObject();
var imgurlnext = '';
var webmaildropdown = '';
var theme = '';
function handleFetchedContactResponse()
{
	if(4 == http.readyState)
    {
        var tmp = '';

		// continue only if HTTP status is "OK"
		if (200 == http.status)
		{
			try
			{
				tmp = http.responseText; // retrieve the response
			}
			catch(e)
			{
		        tmp = '';
				alert(err_response + ": " + e.toString());
			}
		} else {
			alert(err_data + ":\n"
				+ http.statusText
			);
		}

		if('' != tmp)
		{
//			alert(tmp.indexOf('err:::'));
			if (tmp.indexOf('err:::')==0 || tmp.indexOf('err:::')==1 || tmp.indexOf('err:::')==2 || tmp.indexOf('err:::')==4)
			{
				document.getElementById('vi-contact-list').innerHTML = '';
	    		document.getElementById('vi-contact-list').style.display = "none";

				tmp=tmp.replace(/err:::/g,'');
				if (tmp.indexOf('Your email provider is')==0 || tmp.indexOf('Your')==2)
				{
	    			toggleDiv('vi-regular',imgurlnext);
//	    			document.getElementById('vi-fetch').innerHTML = '<img src="'+imgurlnext+'submit.png" onClick="javascript: processFetch();" onKeyPress="javascript: processFetch();" tabindex="4">';
				}
				else
				{
	    			//document.getElementById('vi-fetch').innerHTML = "<input type='button' value='Fetch' onClick='javascript: processFetch();'  tabindex='4' />";
					document.getElementById('vi-fetch').innerHTML ='<a href="javascript:;"><img src="' + imgurlnext + 'submit' + theme + '.png" onclick="javascript:processFetch();return false;" onkeypress="javascript:processFetch();return false;" alt="" /></a>';
				}
				document.getElementById('vi-err-msg').innerHTML = tmp;
    			document.getElementById('vi-err-msg').style.display = "block";
			}
			else
			{
				document.getElementById('email').readonly=false;
				document.getElementById('password').readonly=true;

				document.getElementById('vi-fetch-contact').style.display = 'none';

				document.getElementById('vi-contact-list').innerHTML = tmp;
	    		document.getElementById('vi-contact-list').style.display = "block";

	    		/*document.getElementById('eblock').style.display = 'none';
	    		document.getElementById('cblock').style.display = 'none';
	    		document.getElementById('rblock').style.display = 'none';*/
			}
		}
    }
}
function fetchContacts(fetchurl,imgurl)
{
	document.getElementById('vi-err-msg').innerHTML = '';
	document.getElementById('vi-err-msg').style.display = "none";
	document.getElementById('vi-success-msg').innerHTML = '';
	document.getElementById('vi-success-msg').style.display = "none";
	if (http)
	{
	   // try to connect to the server
	    try
		{
			http.open('GET',fetchurl); //, true);
			http.onreadystatechange = handleFetchedContactResponse;
			http.send(null);
		}
		// display an error in case of failure
		catch (e)
		{
			alert("Can't connect to server:\n" + e.toString());
		}
	}
}

function handleSaveResponse()
{
	if(http.readyState == 4)
    {
        tmp = http.responseText;
		if(tmp!='')
		{
			if (tmp.indexOf('err:::')==0 || tmp.indexOf('err:::')==1 || tmp.indexOf('err:::')==2)
			{
				tmp=tmp.replace(/err:::/g,'');
				document.getElementById('vi-err-msg').innerHTML = tmp;
	    		document.getElementById('vi-err-msg').style.display = "block";
			}
			else
			{
//				YtTools.start();
				document.getElementById('vi-contact-list').innerHTML = '';
	    		document.getElementById('vi-contact-list').style.display = "none";

	    		document.getElementById('vi-success-msg').innerHTML = tmp;
	    		document.getElementById('vi-success-msg').style.display = "block";

	    		document.getElementById('vi-footer').style.display = "none";
			}
		}
    }
}

function reloadCap(imgurl)
{
	var img = document.getElementById('imgCaptcha');
	img.src = decode64(imgurl)+'imagecap.php?' + Math.random();
}

function saveContacts(saveurl,params,ajaximgurl,imgurl,httpurl,InvType,successmsg_mode,recaptchadisp)
{
//	alert(InvType);
	http.open("POST", saveurl, true);

	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	http.setRequestHeader("Content-length", params.length);
	http.setRequestHeader("Connection", "close");

	http.onreadystatechange = function() {//Call a function when the state changes.
		if(http.readyState == 4 && http.status == 200) {
			var tmp='';
			var ele;
			tmp = http.responseText;
			if (tmp.indexOf('err:::')==0 || tmp.indexOf('err:::')==1 || tmp.indexOf('err:::')==2)
			{
				tmp=tmp.replace(/err:::/g,'');
				document.getElementById('vi-err-msg').innerHTML = tmp;
	    		document.getElementById('vi-err-msg').style.display = "block";
				/*reloadCap(encode64(httpurl));
				document.getElementById('vi-send').innerHTML = '<input type="button" value="Send" onClick="javascript: processSendInvitation(\'Regular\');"  />';*/
				if ('Regular' == InvType)
				{
					if (recaptchadisp=='YES')
					{
						reloadCap(encode64(imgurl));
					}
//					document.getElementById('vi-send').innerHTML = '<input type="button" value="Send" onClick="javascript: processSendInvitation(\'Regular\');"  />';
//					document.getElementById('vi-send').innerHTML = '<img src="'+imgurl+'send.png" onClick="javascript: processSendInvitation(\'Regular\');" onKeyPress="javascript: processSendInvitation(\'Regular\');"  />';
					document.getElementById('vi-send').innerHTML = '<a href="javascript:;"><img src="'+imgurl+'send' + theme + '.png" onclick="javascript:processSendInvitation(\'Regular\');return false;" onkeypress="javascript:processSendInvitation(\'Regular\');return false;" alt="" /></a>';

				}
				else
				{
					/*document.getElementById('vi-send-contact-above').innerHTML = '<input type="button" value="Send" onClick="javascript: processSendInvitation('+'\''+InvType+'\''+');"  />';
					document.getElementById('vi-send-contact-below').innerHTML = '<input type="button" value="Send" onClick="javascript: processSendInvitation('+'\''+InvType+'\''+');"  />';
					document.getElementById('vi-send-contact-below').innerHTML = '<img src="'+imgurl+'send.png" onClick="javascript: processSendInvitation('+'\''+InvType+'\''+');" onKeyPress="javascript: processSendInvitation('+'\''+InvType+'\''+');"  />';*/
					var imgHTML = '<a href="javascript:;"><img src="'+imgurl+'send' + theme + '.png" onclick="javascript:processSendInvitation('+'\''+InvType+'\''+');return false;" onkeypress="javascript:processSendInvitation('+'\''+InvType+'\''+');return false;" alt="" /></a>';
					document.getElementById('vi-send-contact-above').innerHTML = imgHTML;
					document.getElementById('vi-send-contact-below').innerHTML = imgHTML;

				}
			}
			else
			{
				if (successmsg_mode=='D')
				{
	//				YtTools.start();
					document.getElementById('vi-contact-list').innerHTML = '';
		    		document.getElementById('vi-contact-list').style.display = "none";
		    		document.getElementById('vi-success-msg').innerHTML = tmp;
		    		document.getElementById('vi-success-msg').style.display = "block";

					ele = document.getElementById('vi-description');
					if (ele) ele.style.display = 'none';
		    		document.getElementById('vi-footer').style.display = "none";
					ele = document.getElementById('vi-importcsv');
					if (ele) ele.style.display = 'none';
		    		document.getElementById('vi-regular').style.display = 'none';
		    		document.getElementById('vi-fetch-contact').style.display = 'none';
		    		/*document.getElementById('eblock').style.display = 'none';
		    		document.getElementById('cblock').style.display = 'none';
		    		document.getElementById('rblock').style.display = 'none';*/
				}
				else if (successmsg_mode=='R')
				{
					if (navigator.appName=='Netscape')
					{
						tmp = tmp.replace(/\n/g,'');
						tmp = tmp.replace(/\s/g,'').replace(/  ,/g,'');
					}
					window.location = tmp;
				}
			}
		}
	}
	http.send(params);
}

function replace_html(id, content) {
	document.getElementById(id).innerHTML = content;
	document.getElementById(id).style.display = "block";
}

function show_progressbar(id,imgurl) {
	replace_html(id, '<img src=' + imgurl + ' border="0" alt="' + alt_img_loading + '" />');
}

function toggleDiv(displayDiv,imgurl,webmail_dropdown)
{
	document.getElementById('vi-err-msg').innerHTML = '';
	document.getElementById('vi-err-msg').style.display = "none";

	document.getElementById('vi-contact-list').innerHTML = '';
	document.getElementById('vi-contact-list').style.display = 'none';
//	document.getElementById('vi-fetch').innerHTML = "<input type='button' value='Fetch' onClick='javascript: processFetch();'  tabindex='4' />";
	var ele;
	if (displayDiv=='vi-regular')
	{
		document.getElementById(displayDiv).style.display = 'block';
		document.getElementById('vi-fetch-contact').style.display = 'none';
		ele = document.getElementById('vi-importcsv');
		if (ele) ele.style.display = 'none';
		ele = document.getElementById('vi-custom-mail');
		if (ele) ele.style.display = 'none';

		if (getElemVal('importername')!='')
		{
			document.getElementById('fromname').value = getElemVal('importername');
		}
		if (getElemVal('email')!='')
		{
			if (webmail_dropdown=='YES')
				// document.getElementById('fromemail').value = getElemVal('email')+'@'+getElemVal('provider');
				document.getElementById('fromemail').value = getElemVal('email');
			else
				document.getElementById('fromemail').value = getElemVal('email');
		}

		/*document.getElementById('eblock').style.display = 'none';
		document.getElementById('cblock').style.display = 'none';
		document.getElementById('rblock').style.display = 'block';*/
	}
	else if (displayDiv=='vi-importcsv')
	{
		document.getElementById(displayDiv).style.display = 'block';
		document.getElementById('vi-fetch-contact').style.display = 'none';
		document.getElementById('vi-regular').style.display = 'none';
		ele = document.getElementById('vi-custom-mail');
		if (ele) ele.style.display = 'block';

		/*document.getElementById('eblock').style.display = 'none';
		document.getElementById('rblock').style.display = 'none';
		document.getElementById('cblock').style.display = 'block';*/
	}
	else if (displayDiv=='vi-fetch-contact')
	{
		document.getElementById(displayDiv).style.display = 'block';
		document.getElementById('vi-regular').style.display = 'none';
		ele = document.getElementById('vi-importcsv');
		if (ele) ele.style.display = 'none';
		ele = document.getElementById('vi-custom-mail');
		if (ele) ele.style.display = 'none';
		document.getElementById('vi-fetch').innerHTML ='<a href="javascript:;"><img src="' + imgurl + 'submit.png" onclick="javascript:processFetch();return false;" onkeypress="javascript:processFetch();return false;" alt="" /></a>';
	
		if (webmail_dropdown=='YES')
		{
			if (getElemVal('fromemail')!='')
			{
				var ieml = getElemVal('fromemail');
				var tarr;
				if (ieml.indexOf(':::') != -1) {
					tarr = ieml.split(':::');
				} else {
					tarr = ieml.split('@');
				}
				document.getElementById('email').value = tarr[0] + '@' + tarr[1];
///				for(var i = 0; i < document.getElementById('provider').options.length; i++)
///				{
					//alert(document.getElementById('provider').options[i].value +'=='+ tarr[1]);
///					if (document.getElementById('provider').options[i].value == tarr[1])
///					{
///						document.getElementById('provider').selectedIndex = i;
///						break;
///					}
///					else continue;
///				}
			}

		}
		else
		{
			if (getElemVal('fromname')!='')
			{
				document.getElementById('importername').value = getElemVal('fromname');
			}
			if (getElemVal('fromemail')!='')
			{
				document.getElementById('email').value = getElemVal('fromemail');
			}
		}
		/*document.getElementById('rblock').style.display = 'none';
		document.getElementById('cblock').style.display = 'none';
		document.getElementById('eblock').style.display = 'block';*/
	}
}

function toggleAll(cb)
{
    var val = cb.checked;
	var frm = document.viFrmMain;
	var len = frm.elements.length;
	var i=0;
	for( i=0 ; i<len ; i++) {
		if (frm.elements[i].name=='emails[]') {
			frm.elements[i].checked=val;
		}
	}
}

function isEmail(who)
{
    var email=/^[A-Za-z0-9]+([_\.-][A-Za-z0-9]+)*@[A-Za-z0-9]+([_\.-][A-Za-z0-9]+)*\.([A-Za-z]){2,4}$/i;
	return(email.test(who));
}

function showDomainList(showhide)
{
	if (showhide==true)
	{
		document.getElementById('domainlist').style.display="block";
	}
	else if (showhide==false)
	{
		document.getElementById('domainlist').style.display="none";
	}
}

var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";

function encode64(input) {
   var output = "";
   var chr1, chr2, chr3;
   var enc1, enc2, enc3, enc4;
   var i = 0;

   do {
      chr1 = input.charCodeAt(i++);
      chr2 = input.charCodeAt(i++);
      chr3 = input.charCodeAt(i++);

      enc1 = chr1 >> 2;
      enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
      enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
      enc4 = chr3 & 63;

      if (isNaN(chr2)) {
         enc3 = enc4 = 64;
      } else if (isNaN(chr3)) {
         enc4 = 64;
      }

      output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) +
         keyStr.charAt(enc3) + keyStr.charAt(enc4);
   } while (i < input.length);

   return output;
}

function decode64(input) {
   var output = "";
   var chr1, chr2, chr3;
   var enc1, enc2, enc3, enc4;
   var i = 0;

   // remove all characters that are not A-Z, a-z, 0-9, +, /, or =
   input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");

   do {
      enc1 = keyStr.indexOf(input.charAt(i++));
      enc2 = keyStr.indexOf(input.charAt(i++));
      enc3 = keyStr.indexOf(input.charAt(i++));
      enc4 = keyStr.indexOf(input.charAt(i++));

      chr1 = (enc1 << 2) | (enc2 >> 4);
      chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
      chr3 = ((enc3 & 3) << 6) | enc4;

      output = output + String.fromCharCode(chr1);

      if (enc3 != 64) {
         output = output + String.fromCharCode(chr2);
      }
      if (enc4 != 64) {
         output = output + String.fromCharCode(chr3);
      }
   } while (i < input.length);

   return output;
}

function stringReverse(str)
{
	var arrText = str.split('');
	var reverseText = arrText.reverse();
	return reverseText.join('');
}

var arrContacts = new Array();

function AddContact(strDelete)
{
	var cname = getElemVal('cname');
	var cemail = getElemVal('cemail');

	if ((cemail==null)||(cemail=="")){
		alert(enter_friends_email);
		document.getElementById('cemail').focus();
		return false;
	}
	else
	{
		if (!isEmail(cemail))
		{
			alert(enter_friends_valid_email);
			document.getElementById('cemail').select();
			document.getElementById('cemail').focus();
			return false;
		}
	}
	document.getElementById('cname').value='';
	document.getElementById('cemail').value='';
	document.getElementById('cname').focus();
	var cnm = cname;
	cnm = cnm.replace('&', '@amp@');
	cnm = cnm.replace('&amp;', '@amp@');
	arrContacts.splice(arrContacts.length,0,cemail+":::"+cnm);
	deleteAllRows('addcontacts');
	RowToTable(strDelete);

	return true;
}

function DeleteContact(elementno, strDelete)
{
	arrContacts.splice(elementno,1);
	deleteAllRows('addcontacts');
	RowToTable(strDelete);
}

function RowToTable(strDelete)
{
	var tbl = document.getElementById('addcontacts');
	var lastRow = tbl.rows.length;
	if (arrContacts.length>0)
	{
		for(var i=0; i<arrContacts.length; i++)
		{
			var row = tbl.insertRow(lastRow);
			var SplitArrContacts = arrContacts[i].split(':::');
			var cellNameText = row.insertCell(0);
			var cnm = SplitArrContacts[1];
			cnm = cnm.replace("@amp@", "&");
			var textNameNode = document.createTextNode(cnm);
			cellNameText.appendChild(textNameNode);

			var cellEmailText = row.insertCell(1);
			var textEmailNode = document.createTextNode(SplitArrContacts[0]);
			cellEmailText.appendChild(textEmailNode);

			var cellAct = row.insertCell(2);
			//cellAct.align="center";
			cellAct.className = "action";
			var elAct = document.createElement('a');
			elAct.href="javascript:DeleteContact(" + i + ", '" + strDelete + "');";
			var LinkTN = document.createTextNode(strDelete);
			elAct.appendChild(LinkTN);
			cellAct.appendChild(elAct);

			lastRow += 1;
		}
	}
}

function deleteAllRows(tblId)
{
  var tbl = document.getElementById(tblId);
  for (var i=tbl.tBodies[0].rows.length-1; i>=2; i--) {
    tbl.tBodies[0].deleteRow(i);
  }
}

function removeRowFromTable()
{
  var tbl = document.getElementById('addcontacts');
  var lastRow = tbl.rows.length;
  if (lastRow > 2) tbl.deleteRow(lastRow - 1);
}

function fetch(urlhttp,urlimg,webmail_dropdown,mode,theme_current)
{
	imgurlnext = urlimg;
	webmaildropdown = webmail_dropdown;
	theme=theme_current;
	var frm = document.viFrmMain;
	var emailID = frm.email;
	var passwordId = frm.password;
	var importerName = frm.importername;

	if ((importerName.value==null)||(importerName.value=="")){
		alert(enter_your_name);
		importerName.focus();
		return false;
	}
	if ((emailID.value==null)||(emailID.value=="")){
		alert(enter_your_email);
		emailID.focus();
		return false;
	}
	else
	{
		var tempEmail = '';
		if (webmail_dropdown == 'YES')
		{
			var provider = getElemVal('provider');
			/*if (provider=='linkedin')
			{
				if (!isEmail(emailID.value)){
					alert(enter_your_valid_email);
					emailID.select();
					emailID.focus();
					return false;
				}
				tempEmail = emailID.value+'.'+provider;
			}
			else
			{
				tempEmail = emailID.value+'@'+provider;*/
				tempEmail = emailID.value;
				if ( (provider.search(/mail/i) >= 0)
					&& (provider.search(/youtube/i) == -1) ) {
					if (!isEmail(tempEmail)){
						alert(enter_your_valid_email);
						emailID.select();
						emailID.focus();
						return false;
					}
				}
				tempEmail = emailID.value+':::'+provider;
			/*}*/
		}
		else
		{
			tempEmail = emailID.value;
			/*tempEmail = tempEmail.replace(/.linkedin/g,'');
			if (!isEmail(tempEmail)){
				alert(enter_your_valid_email);
				emailID.select();
				emailID.focus();
				return false;
			}*/
		}
	}
	if((passwordId.value==null) || (passwordId.value==""))
	{

		alert(enter_password);
		passwordId.focus();
		return false;
	}

	/*emailID.value=tempEmail;
	alert(emailID.value);*/

	document.getElementById('vi-err-msg').innerHTML = '';
	document.getElementById('vi-err-msg').style.display = "none";

	document.getElementById('vi-contact-list').innerHTML = '';
	document.getElementById('vi-contact-list').style.display = "none";

//	var fetchurl=  urlhttp+"iviter.php?req=fc&n="+encode64(importerName.value)+"&e="+encode64(emailID.value)+"&p="+encode64(passwordId.value)+"&cc=&cr=";
	var fetchurl=  urlhttp+"inviter"+mode+".php?req=fc&n="+encode64(importerName.value)+"&e="+encode64(tempEmail)+"&p="+encode64(passwordId.value)+"&cc=&cr=";
	var imgurl= urlimg+"ajax-loader1.gif";

	document.getElementById('password').value = "";
	document.getElementById('vi-fetch').innerHTML = '<img src="' + imgurl + '" alt="' + alt_img_processing + '" />';
	fetchContacts(fetchurl,imgurl);
	return true;
}


function importFromCSV()
{
	var frm = document.viFrmMain;
	if (frm.importfile.value=='')
	{
		alert(select_csv_format);
		return false;
	}
	else
	{
		fullName = frm.importfile.value;
		shortName = fullName.match(/[^\/\\]+$/);

		if (fullName==shortName)
		{
			alert(select_valid_file_path);
			return false;
		}
		splitName = fullName.split(".");
		if (splitName.length<=1)
		{
			alert(select_valid_file);
			return false;
		}
		fileType = splitName[1];
		fileType = fileType.toLowerCase();

		if (fileType == 'csv' || fileType == 'ldif')
		{
			document.viFrmMain.hdnaction.value = 'Import';
			document.viFrmMain.submit();
		}
		else
		{
			alert(select_csv_format);
			return false;
		}
	}
	return true;
}

function sendInvitation(InvType,httpurl,imgurl,custsub,custmsg,custafflink,recaptchadisp,targeturl,contactid,gd,webmail_dropdown,successmsg_mode,allow_to_name_modify,allow_notification,mode,theme_current)
{
	theme = theme_current;
	var frm = document.viFrmMain;
	document.getElementById('vi-fetch-contact').style.display = "none";
//	document.getElementById('vi-importcsv').style.display = "none";
	var importerName;
	var emailID;
	var temailarr;
	if ('Import' == InvType)
	{
		var ele = document.getElementById('vi-importcsv');
		if (ele) ele.style.display = 'block';
		importerName = frm.sname;
		if ((importerName.value==null)||(importerName.value=="")){
			alert(enter_sender_name);
			importerName.focus();
			return false;
		}
		emailID=frm.semail;
		if ((emailID.value==null)||(emailID.value=="")){
			alert(enter_your_email);
			emailID.focus();
			return false;
		}
		else
		{
			if (!isEmail(emailID.value)){
				alert(enter_your_valid_email);
				emailID.select();
				emailID.focus();
				return false;
			}
		}
	}
	document.getElementById('vi-err-msg').innerHTML = '';
	document.getElementById('vi-err-msg').style.display = "none";

	var strEmails = '';
	var numContacts = 0;
	if ('Contact' == InvType || 'Import' == InvType)
	{
		if (frm.elements['emails[]'].length==undefined)
		{
			if(frm.elements['emails[]'].checked==true && frm.elements['emails[]'].value!='')
			{
				temailarr=frm.elements['emails[]'].value.split(':::');
				if (temailarr[0].search(/social\scontact/i) >= 0) {
					strEmails += frm.elements['emails[]'].value
					+ '@p@' + frm.elements['param[]'].value
					+ ',';
					numContacts++;

				} else if (allow_to_name_modify=='Y')
				{
					strEmails = frm.elements['emails[]'].value+':::'+frm.elements['names[]'].value;
				}
				else
				{
					strEmails = frm.elements['emails[]'].value;
				}
			}
			else
			{
				alert(select_atleast_one);
				return false;
			}
		}
		else
		{
			for (var i=0;i<frm.elements['emails[]'].length;i++)
			{
				if (frm.elements['emails[]'][i].checked==true && frm.elements['emails[]'][i].value!='')
				{
					temailarr=frm.elements['emails[]'][i].value.split(':::');
					if (temailarr[0].search(/social\scontact/i) >= 0) {
						strEmails += frm.elements['emails[]'][i].value
						+ '@p@' + frm.elements['param[]'][i].value
						+ ',';
						numContacts++;

					} else if (isEmail(temailarr[0]))
					{
						if (allow_to_name_modify=='Y')
						{
							strEmails += frm.elements['emails[]'][i].value+':::'+frm.elements['names[]'][i].value+",";
						}
						else
						{
							strEmails += frm.elements['emails[]'][i].value+",";
						}

					} else continue;
				}
			}
		}
		if (strEmails=='')
		{
			alert(select_atleast_one);
			return false;
		}
		else
		{
			if(stringReverse(strEmails).search(/,/im) == 0) {
				strEmails=strEmails.substring(0,(strEmails.length-1));
			}
			if (strEmails.search(/social\scontact/im) >= 0) {
				if (numContacts>10){
					alert(select_max);
					return false
				}
				strEmails += ',social_provider:::' + frm.elements['socialprovider'].value;
				strEmails += ',social_sid:::' + frm.elements['socialsid'].value;
			}
		}
	}
	else if ('Regular' == InvType)
	{
		importerName = frm.fromname;
		if ((importerName.value==null)||(importerName.value=="")){
			alert(enter_your_name);
			importerName.focus();
			return false;
		}
		emailID=frm.fromemail;
		if ((emailID.value==null)||(emailID.value=="")){
			alert(enter_your_email);
			emailID.focus();
			return false;
		}
		else
		{
			if(!isEmail(emailID.value)) {
				alert(enter_your_valid_email);
				emailID.select();
				emailID.focus();
				return false;
			}
		}
		if (arrContacts.length<=0)
		{
			alert(no_contact_email_specified);
			document.getElementById('cemail').focus();
			return false;
		}
		else
		{
			strEmails=arrContacts.join(',');
//			strEmails=strEmails.substring(0,(strEmails.length-1));
		}
	}
	var saveurl = httpurl + 'inviter' + mode + '.php';
	var strParams = 'req=' + encode64('sc') + '&c=' + encode64(strEmails);
	var sub;
	if ('YES' == custsub)
	{
		if ('Regular' == InvType)
		{
			sub = getElemVal('subject1');
			sub = sub.replace('&', '@amp@');
			sub = sub.replace('&amp;', '@amp@');
			strParams += '&s=' + sub;
		}
		else
		{
			sub = getElemVal('subject');
			sub = sub.replace('&', '@amp@');
			sub = sub.replace('&amp;', '@amp@');
			strParams += '&s=' + sub;
		}
	}
	var msg;
	var arrMsg;
	if ('YES' == custmsg)
	{
		var strMsg = '';
		if ('Regular' == InvType)
		{
			msg = getElemVal('message1');
			msg = msg.replace('&', '@amp@');
			msg = msg.replace('&amp;', '@amp@');
			arrMsg = msg.split("\n");
		}
		else
		{
			msg = getElemVal('message');
			msg = msg.replace('&', '@amp@');
			msg = msg.replace('&amp;', '@amp@');
			arrMsg = msg.split("\n");
		}
		for (i=0;i<arrMsg.length;i++)
		{
			if ((i-1)==arrMsg.length)
				strMsg += arrMsg[i];
			else
				strMsg += arrMsg[i].substring(0,(arrMsg[i].length))+"@_@";
		}
		strParams += "&m="+encode64(strMsg);
	}

	/*if (custafflink=='YES')
	{*/
//		strParams += '&al='+frm.afflink.value;
		var afl;
		if ('Regular' == InvType)
		{
			afl = document.getElementById('afflink1').value;
			afl = afl.replace('&', '@amp@');
			afl = afl.replace('&amp;', '@amp@');
			if (afl!='') strParams += '&al=' + encode64(afl);
		}
		else
		{
			afl = document.getElementById('afflink').value;
			afl = afl.replace('&', '@amp@');
			afl = afl.replace('&amp;', '@amp@');
			if (afl!='') strParams += '&al=' + encode64(afl);
		}
	/*}*/

	/*if (recaptchadisp=='YES')
	{
//		strParams += "&cc="+frm.ccaptcha.value;
		strParams += "&rc="+frm.captchaval.value;
	}*/
	var fnm;
	if ('Import' == InvType)
	{
		document.getElementById('vi-fetch-contact').innerHTML = '';
		strParams += '&t=' + encode64('C');

		fnm = frm.sname.value;
		fnm = fnm.replace('&', '@amp@');
		fnm = fnm.replace('&amp;', '@amp@');
		strParams += '&n=' + encode64(fnm);
		strParams += '&e=' + encode64(frm.semail.value);
	}
	else
	{
		if ('Contact' == InvType)
		{
			fnm = frm.importername.value;
			fnm = fnm.replace('&', '@amp@');
			fnm = fnm.replace('&amp;', '@amp@');
			strParams += '&n=' + encode64(fnm);
			if ('YES' == webmail_dropdown)
			{
				// strParams += "&e="+encode64(frm.email.value+'@'+getElemVal('provider'));
				strParams += '&e=' + encode64(frm.email.value + ':::' + getElemVal('provider'));
			}
			else
			{
				strParams += '&e=' + encode64(frm.email.value);
			}
			strParams += '&t=' + encode64('E');
		}
		else if ('Regular' == InvType)
		{
			fnm = frm.fromname.value;
			fnm = fnm.replace('&', '@amp@');
			fnm = fnm.replace('&amp;', '@amp@');
			strParams += '&n=' + encode64(fnm);
			strParams += '&e=' + encode64(frm.fromemail.value);
			strParams += '&t=' + encode64('R');
			if ('' != gd && 'YES' == recaptchadisp)
			{
				strParams += '&rc=' + encode64(frm.captchaval.value);
			}
		}
	}

	strParams += '&su=' + encode64(targeturl);
	strParams += '&cid=' + encode64(contactid);
	if ('Regular' == InvType)
	{
		ele = getElemId('notification1');
		if (allow_notification == 1 && (true == ele.checked))
			strParams += "&notify="+1;
		else
			strParams += "&notify="+0;
	}
	else
	{
		ele = getElemId('notification1');
		if (allow_notification == 1 &&  true == ele.checked)
			strParams += '&notify=' + 1;
		else
			strParams += '&notify=' + 0;
	}
	var ajaximgurl= imgurl + 'ajax-loader1.gif';
	if ('Contact' == InvType)
	{
		document.getElementById('vi-send-contact-above').innerHTML = '<img src="' + ajaximgurl + '" alt="" />';
		document.getElementById('vi-send-contact-below').innerHTML = '<img src="' + ajaximgurl + '" alt="" />';
	}
	else if ('Regular' == InvType)
	{
		document.getElementById('vi-send').innerHTML = '<img src="' + ajaximgurl + '" alt="" />';
	}
	saveContacts(saveurl,strParams,ajaximgurl,imgurl,httpurl,InvType,successmsg_mode,recaptchadisp);

	return true;
}

function setProviderText(nexturl)
{
	var provider = getElemVal('provider');
	var tempProvider;
	if (provider.indexOf(':::') != -1) {
		tempProvider = provider.split(':::');
	}
	var splitProvider = tempProvider[0].split('.');
	var strImg = '';
	strImg = for_selected_service_image + '&nbsp;&nbsp;<img alt="' + tempProvider[0] + '" src="' + nexturl + splitProvider[0] + '.png" />&nbsp;&nbsp;';
	document.getElementById('vi-selected-provider').innerHTML = strImg ;
}

function loadStats(encurl, viewsurl)
{
	var ele;
	if((false != (ele = getElemId('reload-stats'))) && ('string' == typeof viewsurl)) {
		ele.style.background = 'url(' + decode64(viewsurl) + 'images/ajax-indicator-small.gif) no-repeat';
		ele.style.display = 'inline';
	}
	if((false != (ele = getElemId('chartSWF')))) {
		ele.style.visibility = 'hidden';
	}
	http.open('GET', decode64(encurl) + 'monitor.php?req=stats');
	http.onreadystatechange = getStatResponse;
	http.send(null);
}

function getStatResponse()
{
	if ('complete' == http.readyState || 4 == http.readyState)
	{
		var statsJson;
		var stats = http.responseText;
		if (-1 != stats.indexOf('json:::'))
		{
			var tmp;
			tmp = stats.split('json:::');
			stats = tmp[0];
			statsJson = tmp[1];
		}
		document.getElementById('stats').innerHTML = stats;
		document.getElementById('stats').style.display = 'inline';

		var chartName = "chartSWF";
		var chart = ((-1 != navigator.appName.indexOf('Microsoft'))
					? window[chartName]	: document[chartName]);
		if(isObject(chart) && isObject(chart.load)) {
			var x = chart.load(statsJson);
		}
		var ele;
		if((false != (ele = getElemId('chartSWF')))) {
			ele.style.visibility = 'visible';
		}

		if(false != (ele = getElemId('reload-stats'))) {
			ele.style.display = 'none';
			ele.style.backgroundImage = '';
		}
	}
}