// JavaScript Document
// Example: obj = findObj("image1");
function findObj(theObj, theDoc) {
    var p, i, foundObj;

    if (!theDoc) theDoc = document;
    if ((p = theObj.indexOf("?")) > 0 && parent.frames.length) {
        theDoc = parent.frames[theObj.substring(p + 1)].document;
        theObj = theObj.substring(0, p);
    }
    if (!(foundObj = theDoc[theObj]) && theDoc.all) foundObj = theDoc.all[theObj];
    for (i = 0; !foundObj && i < theDoc.forms.length; i++)
        foundObj = theDoc.forms[i][theObj];
    for (i = 0; !foundObj && theDoc.layers && i < theDoc.layers.length; i++)
        foundObj = findObj(theObj, theDoc.layers[i].document);
    if (!foundObj && document.getElementById) foundObj = document.getElementById(theObj);

    return foundObj;
}

function replaceCharacters(conversionString, inChar, outChar) {
    var convertedString = conversionString.split(inChar);
    convertedString = convertedString.join(outChar);
    return convertedString;
}


function order(a, b) {
    if (a < b) {
        return -1; //asc
    } else if (a > b) {
        return 1; //desc
    } else {
        return 0;
    }
}

function orderAscFaq(a, b) {
    if (a.pregunta < b.pregunta) {
        return -1; //asc
    } else {
        return 1;
    }
}

function orderDescFaq(a, b) {
    if (a.pregunta > b.pregunta) {
        return -1; //desc
    } else {
        return 1;
    }
}

function orderAscNews(a, b) {
    var aa = replaceCharacters(a.fecha, "/", "");
    var bb = replaceCharacters(b.fecha, "/", "");
    if (aa.length == 8 && bb.length == 8) {
        aa = aa.substr(aa.length - 4, 4) + aa.substr(2, 2) + aa.substr(0, 2);
        bb = bb.substr(bb.length - 4, 4) + bb.substr(2, 2) + bb.substr(0, 2);
    }
    if (aa < bb) {
        return -1; //asc
    } else {
        return 1;
    }
}

function orderDescNews(a, b) {
    var aa = replaceCharacters(a.fecha, "/", "");
    var bb = replaceCharacters(b.fecha, "/", "");
    if (aa.length == 8 && bb.length == 8) {
        aa = aa.substr(aa.length - 4, 4) + aa.substr(2, 2) + aa.substr(0, 2);
        bb = bb.substr(bb.length - 4, 4) + bb.substr(2, 2) + bb.substr(0, 2);
    }
    if (aa > bb) {
        return -1; //desc
    } else {
        return 1;
    }
}

function esconderCargador() {
    obj = findObj("cargador");
    obj_tab = findObj("tabla");
    obj.style.visibility = "hidden";
    obj.style.display = "none";
    obj_tab.style.visibility = "visible";
    obj_tab.style.display = "block";
}

function getXMLFAQ(faq_var) {
    try {
        faq_var.sort(orderAscFaq);
    } catch (e) { alert(e); };
    var xml = "";
    xml += '<?xml version="1.0" encoding="iso-8859-1"?>';
    xml += "<newDataSet>";
    for (var i = 0; i < faq_var.length; i++) {
        xml += "<faq>";
        xml += "<pregunta>" + faq_var[i].pregunta + "</pregunta>"
        xml += "<respuesta>" + faq_var[i].respuesta + "</respuesta>";
        xml += "</faq>";
    }
    xml += "</newDataSet>";
    return xml;
}

function getXMLFAQString(faq_var) {
    try {
        faq_var.sort(orderAscFaq);
    } catch (e) { alert(e); };
    var xml = "";
    xml += "<table width='485' border='0'>";
    for (var i = 0; i < faq_var.length; i++) {
        xml += "<tr>";
        xml += "<td background='img/puntos2.gif'>&nbsp;</td>";
        xml += "</tr>";
        xml += "<tr>";
        xml += "<td><img src='img/fa.gif' width='11' height='14' /> <span class='pregunta_faq'>" + faq_var[i].pregunta + "</span>&nbsp;</td>";
        xml += "</tr>";
        xml += "<tr>";
        xml += "<td><span class='textos'>" + faq_var[i].respuesta + "</span>&nbsp;</td>";
        xml += "</tr>";
    }
    xml += "</table> ";
    return xml;
}

function getXMLNEWS(news_var) {
    try {
        news_var.sort(orderDescNews);
    } catch (e) { alert(e); };
    var xml = "";
    xml += '<?xml version="1.0" encoding="iso-8859-1"?>';
    xml += "<newDataSet>";
    for (var i = 0; i < news_var.length; i++) {
        xml += "<new>";
        xml += "<id_noticia>" + news_var[i].id_noticia + "</id_noticia>"
        xml += "<fecha>" + news_var[i].fecha + "</fecha>"
        xml += "<imagen>" + news_var[i].imagen + "</imagen>";
        xml += "<titulo>" + news_var[i].titulo + "</titulo>";
        xml += "<resumen>" + news_var[i].resumen + "</resumen>";
        xml += "<noticia><![CDATA[" + news_var[i].noticia + "]]></noticia>";
        xml += "</new>";
    }
    xml += "</newDataSet>";
    return xml;
}

function getXMLNEWString(news_var, tam, opcion) {
    try {
        news_var.sort(orderDescNews);
    } catch (e) { alert(e); };
    if (tam > news_var.length) {
        tam = news_var.length;
    }
    var xml = "";
    var x_string = "";
    xml += '<table width="485" border="0">';
    for (var i = 0; i < tam; i++) {
        xml += '<tr>';
        xml += '<td background="img/puntos2.gif" colspan="2">&nbsp;</td>';
        xml += '</tr>';
        xml += '<tr>';
        xml += '<td width="107" align="left"><img width="100" align="absmiddle" lowsrc="img/blank.gif" src="' + news_var[i].imagen + '"/>&nbsp;</td>';
        xml += '<td width="368" align="left" valign="top"><div align="right"><span class="pregunta_faq" style="text-align:right;">';
        xml += news_var[i].fecha + '</span></div><span class="subtitulos">' + news_var[i].titulo + '</span>';
        xml += '<br /><div align="left" class="textos"><br /><span class="textos" style="text-align:left;">' + news_var[i].resumen + '</span>&nbsp;<br /><img src="img/fa.gif" width="11" height="14" /> <a href="javascript:;" class="menu1" onclick="javascript:ver_new(this);">Ver Más<span style="display:none;">' + news_var[i].id_noticia + '</span></a></div></td>';

        x_string += '<div align="left" class="textos"><span class="textos" style="text-align:left;">' + news_var[i].resumen + '</span>&nbsp;<br /><img src="img/fa.gif" width="11" height="14" /> <a href="javascript:;" class="menu1" onclick="javascript:ver_new(this);">Ver Más<span style="display:none;">' + news_var[i].id_noticia + '</span></a></div><br>';

    }
    xml += '</table>';
    if (opcion == 1) {
        xml = x_string;
    }
    return xml;
}

var faq = [];
var news = [];
var string_faq = "";
var string_news = "";
var string_single_news = "";

function BeginFaq() {

    //XML_faq.async = false;

    try //Internet Explorer
  {
        xmlDso = new ActiveXObject("Microsoft.XMLDOM");
    } catch (e) {
        try //Firefox, Mozilla, Opera, etc.
    {
            xmlDso = document.implementation.createDocument("", "", null);
        } catch (e) {
            alert(e.message);
        }
    }

    //var xmlDso = XML_faq.XMLDocument;
    xmlDso.async = false;
    var cr = 0;
    var res = xmlDso.load("xml/faq.xml");
    if (res) {
        cr = Math.ceil(xmlDso.getElementsByTagName("faq").length);
        if (cr == 0) {
            alert("Error");
        } else {
            //nada
            for (var i = 0; i < cr; i++) {
                var pregunta = xmlDso.getElementsByTagName("pregunta")[i].childNodes[0].nodeValue;
                var respuesta = xmlDso.getElementsByTagName("respuesta")[i].childNodes[0].nodeValue;
                faq.push({ pregunta: pregunta, respuesta: respuesta });
            }
            //xmlDso.loadXML(getXMLFAQ(faq));
            string_faq = getXMLFAQString(faq);
            obj = findObj("string_faq");
            obj.innerHTML = string_faq;
            esconderCargador();
        }
    } else {
        alert("No se puede cargar la información");
    }
}

var vtam = 0;
var vop = 0;

function BeginNoticias(tam, opcion) {
    //XML_new.async = false;
    wRequest = new Sys.Net.WebRequest();

    wRequest.set_url('xml/new.xml');

    vtam = tam;
    vop = opcion;

    wRequest.add_completed(OnNoticiasCompleted);

    var executor = new Sys.Net.XMLHttpExecutor();
    wRequest.set_executor(executor);
    executor.executeRequest();

    /*

    try //Internet Explorer
    {
    xmlDso = new ActiveXObject("Microsoft.XMLDOM");
    } catch (e) {
    try //Firefox, Mozilla, Opera, etc.
    {
    xmlDso = document.implementation.createDocument("", "", null);
    } catch (e) {
    alert(e.message);
    }
    }

    cargarXmlNoticias();

    
    */
}

function OnNoticiasCompleted(executor, eventArgs) {
    if (executor.get_responseAvailable()) {
        var xmlDso = executor.get_xml();
        cr = Math.ceil(xmlDso.getElementsByTagName("new").length);
        if (cr == 0) {
            alert("Error");
        } else {
            //nada
            for (var i = 0; i < cr; i++) {
                var id_noticia = xmlDso.getElementsByTagName("id_noticia")[i].childNodes[0].nodeValue;
                var fecha = xmlDso.getElementsByTagName("fecha")[i].childNodes[0].nodeValue;
                var imagen = xmlDso.getElementsByTagName("imagen")[i].childNodes[0].nodeValue;
                var titulo = xmlDso.getElementsByTagName("titulo")[i].childNodes[0].nodeValue;
                var resumen = xmlDso.getElementsByTagName("resumen")[i].childNodes[0].nodeValue;
                var noticia = xmlDso.getElementsByTagName("noticia")[i].childNodes[0].wholeText; //otros navegadores
                if (typeof (noticia) == 'undefined')
                    var noticia = xmlDso.getElementsByTagName("noticia")[i].childNodes[0].text; //Internet Explorer
                news.push({ id_noticia: id_noticia, fecha: fecha, imagen: imagen, titulo: titulo, resumen: resumen, noticia: noticia });
            }
            //xmlDso.loadXML(getXMLNEWS(news));
            var tam = 2;
            opcion = 1;
            string_news = getXMLNEWString(news, vtam, vop);

            vtam = 0;
            vop = 0;
            obj = findObj("string_news");
            obj.innerHTML = string_news;
            esconderCargador();
        }
        verURL();
    }
}

function ver_new(obj_div) {
    var obj_span = obj_div.getElementsByTagName("SPAN");
    var id = obj_span[0].innerHTML;
    //mostrarNoticia(id);
    location.href = "noticias.html?id=" + id;
}

function mostrarNoticia(id) {
    obj_tab = findObj("tabla");
    obj_tab.style.visibility = "hidden";
    obj_tab.style.display = "none";
    obj_cargador = findObj("cargador");
    obj_cargador.style.visibility = "visible";
    obj_cargador.style.display = "block";
    string_single_news = getNoticia(id);
    obj = findObj("string_single_news");
    obj.innerHTML = string_single_news;
    obj_tab_single = findObj("tabla_single");
    obj_cargador.style.visibility = "hidden";
    obj_cargador.style.display = "none";
    obj_tab_single.style.visibility = "visible";
    obj_tab_single.style.display = "block";
}

function getNoticia(id) {
    var xml = "";
    xml += '<table width="485" border="0">';
    for (var i = 0; i < news.length; i++) {
        if (news[i].id_noticia == id) {
            xml += '<tr>';
            xml += '<td width="167" align="left"><img width="160" align="absmiddle" lowsrc="img/blank.gif" src="' + news[i].imagen + '"/>&nbsp;</td>';
            xml += '<td width="308" align="left" valign="top"><div align="right"><span class="pregunta_faq" style="text-align:right;">';
            xml += news[i].fecha + '</span></div><span class="subtitulos">' + news[i].titulo + '</span>';
            xml += '<br /><div align="left" class="textos"><br /><span class="textos" style="text-align:left;">' + news[i].noticia + '</span>&nbsp;<br /></div></td>';
            xml += '</tr>';
            xml += '<tr>';
            xml += '<td colspan="2" align="left"><br /><img src="img/fa.gif" width="11" height="14" /> <a href="noticias.html" class="menu1">Volver a Noticias</a></td>';
            xml += '</tr>';
        }
    }
    xml += '</table>';
    location.href = "#top";
    return xml;
    //return xml;
}

function verURL() {
    params = new tparams()
    if (params.getValue('id') != '') {
        mostrarNoticia(params.getValue('id'));
    }
}

function tparams() {
    parameters = document.location.search
    parameters = unescape(parameters.substring(1, parameters.length) + '&')

    this.params = new Array()
    i = 0
    while (parameters.indexOf('&', 0) != -1) {
        al = this.params.length
        this.params[al] = new Array()

        tmp = parameters.substring(0, parameters.indexOf('&', 0))
        parameters = parameters.substring(parameters.indexOf('&', 0) + 1)

        if (tmp.indexOf('=') != -1) {
            this.params[al].command = tmp.substring(0, tmp.indexOf('='))
            this.params[al].value = tmp.substring(tmp.indexOf('=') + 1)
        } else {
            this.params[al].command = tmp
            this.params[al].value = ''
        }
    }

    return this
}
tparams.prototype.getValue = function (param) {
    value = ''
    param = param.toLowerCase()
    al = this.params.length
    for (var i = 0; i < al; i += 1) if (this.params[i].command == param) value = this.params[i].value
    return value
}