/*
	baseURL = '/ecards/';
	inputBoxValidColor = '#A1FFD3';
	inputBoxInvalidColor = '#FF7575';
	useBackgroundFade = false;
	bgOpacityAmt = 80;
*/

window.onload = function(){
	instance = new TINY.editor.edit('editor',{
		id:'ecardMsg',
		width:835,
		height:200,
		cssclass:'te',
		controlclass:'tecontrol',
		rowclass:'teheader',
		dividerclass:'tedivider',
		controls:['bold','italic','underline','|',
				  'leftalign','centeralign','|',
				  'font','fontcolor','size','|',
				  'image','hr','link','unlink','orderedlist','unorderedlist','|',
				  'unformat','outdent','indent','|',
				  'undo','redo'],
		footer:true,
		fonts:['Verdana','Arial','Georgia','Trebuchet MS','Impact',
			'Comic Sans MS','Palatino Linotype','Lucida Console','Courier New'],
		xhtml:false,
		cssfile:'tinyeditor/style.css',
		bodyid:'editor',
		footerclass:'tefooter',
		toggle:{text:'source',activetext:'wysiwyg',cssclass:'toggle'},
		resize:{cssclass:'resize'}
	});
	init();
	// preload the loading image file
	objImage = new Image();
	objImage.src='images/icons/loading.gif';
	
};
selectedEcardID = '';


function showPopup(imgId,ecardID) {
	selectedEcardID = ecardID;
	document.getElementById('ecardImgPreview').src = baseURL + 'images/icons/loading.gif';
	document.getElementById('ecardImgPreviewFullSize').src = baseURL + 'images/icons/loading.gif';
	// create an image object
	objImage = new Image();
	objImage.onload=function(){
		document.getElementById('ecardImgPreview').src = imgId;
		document.getElementById('ecardImgPreviewFullSize').src = imgId;
	};
	// preload the image file
	objImage.src=imgId;

	document.getElementById('ecardImgPreviewFullSize').src = imgId;
	document.getElementById('ecardImgPreviewFullSize').src = imgId;
}
function hidePopup() {
	document.getElementById('popup').style.display = 'none';
	document.getElementById('dimPage').style.display = 'none';
}
function setOpacity(ele, opacity) {
	var object = document.getElementById(ele).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100); 
    object.filter = "alpha(opacity=" + opacity + ")";
}
function fadein_old(amt) {
	if(useBackgroundFade===false) {
		setOpacity('dimPage', bgOpacityAmt);
		setOpacity('popup', 100);
	} else {
		if(amt < bgOpacityAmt) {
			setOpacity('dimPage', amt);
			setOpacity('popup', amt);
			//setTimeout("fadein("+(amt+20)+")", 1);
			
		} else if(amt <= 100) {
			setOpacity('popup', amt);
			//setTimeout("fadein("+(amt+20)+")", 1);
		} else {
			setOpacity('dimPage', bgOpacityAmt);
			setOpacity('popup', 100);
		}
	}
}

function fadein(k) {
	setOpacity('dimPage',0);
	ele = document.getElementById('popup').style;
	ele.height = '2px';
}

function tweenElement(id, amt, dst) {
	if(amt<=dst) {
			setOpacity(id,amt);
			setTimeout("tweenElement('"+id+"',"+((amt+1)*1.4)+","+dst+")",1);
	} else {
		setOpacity(id,dst);
	}
}

function toggleElement(id1, id2) {
	document.getElementById(id2).style.display = 'none';
	document.getElementById(id1).style.display = 'block';
	tweenElement(id1, 1, 100);
	instance.post();
	document.getElementById('ecardTextPreview').innerHTML = document.getElementById('ecardMsg').value;
}




function checkSecurityCode() {
	var code = document.getElementById('captcha').value;
	
	if(code.length !=captchaCodeLength){
		document.getElementById('captcha').style.backgroundColor = inputBoxInvalidColor;
		document.getElementById('send_val_img_captcha').innerHTML = '<img src="images/icons/error.png" height="15">';
		return;
	}

		var xmlHttp;
		try {
		   xmlHttp=new XMLHttpRequest();
		} catch (e) {
		  try {
			  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
			try {
				 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			  } catch (e) {
				 alert("Your browser does not support AJAX!");
				 return false;
			  } 
			}
		}
		xmlHttp.onreadystatechange=function()
		{
		   if(xmlHttp.readyState==4)
		   {
			  if(xmlHttp.responseText == '1') {
				document.getElementById('captcha').style.backgroundColor = inputBoxValidColor;
				document.getElementById('send_val_img_captcha').innerHTML = '<img src="images/icons/success.png" height="15">';
			  } else if(xmlHttp.responseText == '0'){
				document.getElementById('captcha').style.backgroundColor = inputBoxInvalidColor;
				document.getElementById('send_val_img_captcha').innerHTML = '<img src="images/icons/error.png" height="15">';
				//alert("Please enter a valid security code");
			  } else {
				alert("An unknown error occurred! Please try again.");
			  }
			 
		   }
		};
		xmlHttp.open("GET",baseURL+'checkcode.php?c='+code,true);
		xmlHttp.send(null);  
}


function sendEcard(id) {
	instance.post();
	checkSecurityCode();
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	var to_email = document.getElementById('to_email').value;
	var from_email = document.getElementById('from_email').value;
	var from_name = document.getElementById('from_name').value;
	var message = document.getElementById('ecardMsg').value;
	var alertUser = (document.getElementById('alertUser').checked===true)?'1':'0'; 
	var secCode = document.getElementById('captcha').value;
	if(selectedEcardID==''){alert("Error! Please reload the page.");return;}
	if(reg.test(to_email) === false || reg.test(from_email) === false) {
		alert("Please enter a valid email address");
		return;
	} else if(from_name=='') {
		alert("Please enter your name");
		return;
	} else {
		toggleElement('ecardSending', id);
		var xmlHttp;
		try {
		   xmlHttp=new XMLHttpRequest();
		} catch (e) {
		  try {
			  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
			try {
				 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			  } catch (e) {
				 alert("Your browser does not support AJAX!");
				 return false;
			  } 
			}
		}
		xmlHttp.onreadystatechange=function()
		{
		   if(xmlHttp.readyState==4)
		   {
			  if(xmlHttp.responseText == '1') {
				document.getElementById('sentMsg').innerHTML = 'Ecard Successfully sent to: '+document.getElementById('to_email').value;
				toggleElement('ecardSent','ecardSending');
			  } else if(xmlHttp.responseText == '0'){
				document.getElementById('sentMsg').style.color = '#FF0000';
				document.getElementById('sentMsg').innerHTML = 'Error sending your ecard. Please try again.';
				document.getElementById('sentMsg').innerHTML +='send.php?id='+selectedEcardID+'&t='+urlencode(to_email)+
					'&fe='+urlencode(from_email)+'&fn='+urlencode(from_name)+'&message='+urlencode(message)+
					'&alert='+alertUser+'&c='+secCode;
					
				toggleElement('ecardSent','ecardSending');
			  } else {
				alert("An unknown error occurred! Please try again.");
			  }
			 
		   }
		};
		xmlHttp.open("GET",baseURL+'send.php?id='+selectedEcardID+'&t='+urlencode(to_email)+
			'&fe='+urlencode(from_email)+'&fn='+urlencode(from_name)+'&message='+urlencode(message)+
			'&alert='+alertUser+'&c='+secCode,true);
		xmlHttp.send(null);  
	}
}

function checkEmailAddress(ele,i) {
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(ele.value) === true) {
		ele.style.backgroundColor = inputBoxValidColor;
		if(i==1) {
			document.getElementById('send_val_img_to').innerHTML = '<img src="images/icons/success.png" height="15">';
		} else {
			document.getElementById('send_val_img_fromemail').innerHTML = '<img src="images/icons/success.png" height="15">';
		}
	} else {
		ele.style.backgroundColor = inputBoxInvalidColor;
		if(i==1) {
			document.getElementById('send_val_img_to').innerHTML = '<img src="images/icons/error.png" height="15">';
		} else {
			document.getElementById('send_val_img_fromemail').innerHTML = '<img src="images/icons/error.png" height="15">';
		}
	}
}
function checkName(ele) {
	if(ele.value.length > 0) {
		ele.style.backgroundColor = inputBoxValidColor;
		document.getElementById('send_val_img_from').innerHTML = '<img src="images/icons/success.png" height="15">';
	} else {
		ele.style.backgroundColor = inputBoxInvalidColor;
		document.getElementById('send_val_img_from').innerHTML = '<img src="images/icons/error.png" height="15">';
	}
}




function urlencode(str) {
	return escape(str).replace(/\+/g,'%2B').replace(/%20/g,'+').replace(/\*/g,'%2A').replace(/\//g,'%2F').replace(/@/g,'%40');
}
