var EA_overBalloon = false;

function EA_emailArticleOpen() {

	var emailArticleLink = document.getElementById('email-article-link');
	var emailArticle = document.getElementById('email-article');
	var emailArticleClose = document.getElementById('email-article-close');
	var emailArticleForm = document.getElementById('email-article-form');
	
	var emailArticleLinkLeft = curtop = 0;
	var obj = emailArticleLink;
	if ( obj.offsetParent ) {
		do {
			emailArticleLinkLeft += obj.offsetLeft;
		} while (obj = obj.offsetParent);
	}
	emailArticle.style.left = ( emailArticleLinkLeft - 90 ) + "px";
	
	emailArticle.style.display = "block";
	
	emailArticle.onmouseover = function() { EA_overBalloon = true; }
	emailArticle.onmousemove = function() { EA_overBalloon = true; }
	emailArticle.onmouseout = function() { EA_overBalloon = false; }
	
	emailArticleClose.onclick = EA_emailArticleClose;
	
	emailArticleForm.onsubmit = function() {

		if( document.getElementById('EA_name').value == "" ) {
			
			return EA_error('name');
		}
		else if( ! EA_verifyEmail( document.getElementById('EA_email').value ) ) {
			return EA_error('email');
		}
		else {
			var postData = "EA_post_id=" + document.getElementById('EA_post_id').value;
			postData += "&EA_name=" + document.getElementById('EA_name').value;
			postData += "&EA_email=" + document.getElementById('EA_email').value;
			EA_sendRequest('/wp-content/plugins/usarchy-email-article/usarchy-email-article.php', EA_emailArticleSucceed, postData);
			return false;
		}
		
	};
	
	document.onmouseup = function() { if( ! EA_overBalloon ) EA_emailArticleClose(); }
	
	window.onresize = function() { EA_emailArticleOpen(); }
	
	return false;
}

function EA_emailArticleClose() {
	document.getElementById('email-article').style.display = "none";
}

var EA_emailArticleContents = "";
function EA_emailArticleSucceed( req ) {
	document.getElementById('email-article-form').className = "";
	EA_emailArticleContents = document.getElementById('email-article-fieldset').innerHTML;
	document.getElementById('email-article-fieldset').innerHTML = req.responseText;
}

function EA_sendRequest(url,callback,postData) {
	EA_setLoadingStatus();
	var req = EA_createXMLHTTPObject();
	if (!req) return;
	var method = (postData) ? "POST" : "GET";
	req.open(method,url,true);
	req.setRequestHeader('User-Agent','XMLHTTP/1.0');
	if (postData)
		req.setRequestHeader('Content-type','application/x-www-form-urlencoded');
	req.onreadystatechange = function () {
		if (req.readyState != 4) return;
		if (req.status != 200 && req.status != 304) {
			return;
		}
		callback(req);
	}
	if (req.readyState == 4) return;
	req.send(postData);
}

var XMLHttpFactories = [
	function () {return new XMLHttpRequest()},
	function () {return new ActiveXObject("Msxml2.XMLHTTP")},
	function () {return new ActiveXObject("Msxml3.XMLHTTP")},
	function () {return new ActiveXObject("Microsoft.XMLHTTP")}
];

function EA_createXMLHTTPObject() {
	var xmlhttp = false;
	for (var i=0;i<XMLHttpFactories.length;i++) {
		try {
			xmlhttp = XMLHttpFactories[i]();
		}
		catch (e) {
			continue;
		}
		break;
	}
	return xmlhttp;
}

function EA_setLoadingStatus() {
	document.getElementById('email-article-form').className = "loading";
}

function EA_reset() {
	document.getElementById('email-article-fieldset').innerHTML = EA_emailArticleContents;
	document.getElementById('EA_email_label').style.color = "";
	document.getElementById('EA_email_email').style.color = "";
}

function EA_error( type ) {
	
 
		if( type == "name" ) {
			document.getElementById('EA_name_label').style.color = "#c00";
		}
		else {
			document.getElementById('EA_email_label').style.color = "#c00";
		}
 
	return false;
}


function EA_verifyEmail( email ) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test( email ); 
}

 