
var xobject;
var request_method = "POST";
var sync = true;

var AJAX_DATA = {

	ajax_getData : function(args)
	 {

		action	= args[0];
		params	= args[1];
		url		= args[2];

		xobject = false;
		if(window.XMLHttpRequest)
		 {
			try { xobject = new XMLHttpRequest(); }
			catch(e) { xobject = false; }
	     }
		else if(window.ActiveXObject)
		 {
			try { xobject = new ActiveXObject("Msxml2.XMLHTTP"); }
			catch(e)
			 {
    	    	try { xobject = new ActiveXObject("Microsoft.XMLHTTP"); }
        		catch(e) { xobject = false; }
			 }
		 }
	    if(xobject)
		 {
			xobject.onreadystatechange = function() { AJAX_DATA.completeProcess(action, params); }

			xobject.open(request_method, url, sync);
			xobject.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			xobject.send(AJAX_DATA.makeDataString(action, params));
		 }
		else
			alert('Error code: 01');
 	 },


	makeDataString : function(action, params)
	 {
	 	var new_string = 'action='+action;

	 	switch(action)
 	 	 {
	 	 	case 'mas_noticias':	new_string += '&noticias=mas';
	 	 							new_string += '&start='+params;
									break;

	 	 	case 'men_noticias':	new_string += '&noticias=menos';
	 	 							new_string += '&start='+params;
									break;

			case 'local_tiendas':	new_string += '&pais='+params;
									break;

			case 'add_cesta':		new_string += '&cantidad='+params[0];
									new_string += '&item='+params[1];
									break;
			case 'apuntate':		new_string += '&email='+params[0];
									break;
		 }
		return new_string;

	 },


	completeProcess : function(action, params)
	 {
		if(xobject.readyState == 4)
		 {
			if((xobject.status == 200) || (xobject.status == 304))
			 {
			 	var data = JSON.parse(xobject.responseText);

				if(data[0])
				 {
					switch(action)
				 	 {
				 	 	case 'men_noticias':
				 		case 'mas_noticias':	AJAX_DATA.buildNoticias(data);
				 								break;

						case 'local_tiendas':	AJAX_DATA.fillLocalidades(data);
												break;

						case 'add_cesta':		var cesta_ok = document.getElementById('add_ok');
												cesta_ok.innerHTML = data[1];
												document.getElementById('add_cesta').style.display = 'none';
												cesta_ok.style.display = 'block';
												setTimeout("document.getElementById('add_ok').style.display = 'none'", 1000);
												setTimeout("document.getElementById('add_cesta').style.display = 'block'", 1000);
												break;

						case 'apuntate':		AJAX_DATA.sendApuntate(data[0]);
												break;
				 	 }
				 }
				else
				 	alert(data[1]);
			 }
			else
				alert("Error en AJAX (JS): " + xobject.status);
		 }
	 },


	// Agregamos las noticias
	buildNoticias : function(data)
	 {
	 	var container = document.getElementById('l_middle');
	 	container.innerHTML = '';

		var navegacion_top = data[1];
		var navegacion_bot = data[2];

		var cadena_noticias = navegacion_top;

		for(var sec=0; sec<data[0].length; ++sec)
		 {
			var titulo	= '<p class="titulo"><a href="http://www.coroneltapiocca.com/noticias/'+data[0][sec]['titulo_seo']+'">'+AJAX_DATA.textTrim(data[0][sec]['titulo'], 50)+'</a></p>';

			var fecha	= '<p class="fecha">'+data[0][sec]['fecha_mod']+'</p>';
			var entrada = '<p class="entrada"><a href="http://www.coroneltapiocca.com/noticias/'+data[0][sec]['titulo_seo']+'">'+AJAX_DATA.textTrim(data[0][sec]['entrada'], 150)+'</a></p>';

			cadena_noticias += titulo;
			cadena_noticias += fecha;
			cadena_noticias += entrada;
		 }

		cadena_noticias += navegacion_bot;
		container.innerHTML = cadena_noticias;

		cadena_noticias = '';
		TAPIOCCA.start();
	 },


	// Para rellenar las localidades
	fillLocalidades : function(data)
	 {
	 	var localidad = document.getElementById('localidad');
	 	var opciones = localidad.getElementsByTagName('option');

	 	localidad.length = 0;

	 	for(var dt=0; dt<data.length; ++dt)
	 	 {
			var option_ = document.createElement('option');
			option_.setAttribute('value', data[dt].localidad);
			option_.innerHTML = data[dt].localidad;

			localidad.appendChild(option_);
	 	 }

	 },


	// Para recortar texto sin destruir palabras
	textTrim : function(string, largo)
	 {
	 	largo = largo-3;
		var newst = string.split(" ");
		var contador = 0;
		var finalstr = '';

		for(var lar=0; lar<newst.length; lar++)
	 	 {
   			if(contador >= largo)
    			break;
   			else
    	 	 {
				contador += newst[lar].length;
				finalstr += newst[lar]+' ';
				if(finalstr.length-1 > largo)
				 {
					finalstr = finalstr.substr(0, finalstr.indexOf(newst[lar], 0));
					break;
				 }
		 	 }

 	 	 }

		return (finalstr != string) ? finalstr.substr(0, finalstr.length-1)+'...' : finalstr;

	 },


	sendApuntate : function (data)
	{

		var email = document.getElementById('email');
		email.value = data;

	}
 }