$ = document.getElementById;

HTTPRequest = function (url, onsuccess, onerror) {
		
	var xhr = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		
		xhr = new XMLHttpRequest();
		
		if (xhr.overrideMimeType) {
			xhr.overrideMimeType('application/xml');
		}
		
	} else if (window.ActiveXObject) { // IE
	
		try {
			
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
			
		} catch (e) {
			
			try {
				
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
				
			} catch (e) {
								
			}
		}
	}
	
	if (xhr) {
		
		xhr.onreadystatechange = function () {			
			if (xhr.readyState == 4) {				
				if (xhr.status < 400) {
					onsuccess.call(xhr);								
				} else {
					onerror.call(xhr);								
				}
			}			
		}
		
		xhr.open('get', url, true);
		xhr.send(null);
	}
	
};

function hasClass(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}
 
function addClass(ele,cls) {
	if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}
 
function removeClass(ele,cls) {
	if (hasClass(ele,cls)) {
    	var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
		ele.className=ele.className.replace(reg,' ');
	}
}

suscribe = function (email, el) {
	
	addClass(el, 'loading');
	
	setTimeout(function () {

		var url = '/suscripcion.php?email=' + escape(email);
		
		HTTPRequest(url, 
					
			function () {
				var html = this.responseText;
				el.innerHTML = html;
				removeClass(el, 'loading');
			},
			
			function () {
				removeClass(el, 'loading');
			}
		);
						 
	}, 400);
			
	
}

datos = function (email, el) {
	
	addClass(el, 'loading');
	
	setTimeout(function () {

		var url = '/datos.php?email=' + escape(email);
		
		HTTPRequest(url, 
					
			function () {
				var html = this.responseText;
				el.innerHTML = html;
				removeClass(el, 'loading');
			},
			
			function () {
				removeClass(el, 'loading');
			}
		);
						 
	}, 400);
			
	
}