function objetoAjax()
 {
  var xmlhttp=false;
  try
   {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
   }
  catch(e)
   {
    try
     {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
     }
    catch(E)
     {
      xmlhttp = false;
     }
   }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined')
   {
    xmlhttp = new XMLHttpRequest();
   }
  return xmlhttp;
 }

function Modulo(Modulo, Capa, Folio, Nuevo, Id, Formulario)
 {
  var ajax = objetoAjax();
  if (ajax)
   {
    var Datos = Modulo + '.php?M=' + Modulo + '&F=' + Folio + '&N=' + Nuevo + '&I=' + Id;
    divContenido = document.getElementById(Capa);
    if (typeof(Formulario) != "undefined" && Formulario != '')
     {
      Form = document.getElementById(Formulario);
      for (var i=0; i<=Form.elements.length-1; i++)
       {
        Datos += '&' + Form.elements[i].name + '=' + encodeURI(Form.elements[i].value);
       }
     }
    divContenido.innerHTML= '<img src="imagenes/formato/loading.gif">';
    ajax.open('GET', Datos);
    ajax.onreadystatechange=function()
     {
      if (ajax.readyState==4)
       {
        divContenido.innerHTML = ajax.responseText
       }
     }
    ajax.send(null)
   }
 }

function Guardar(Modulo, Capa, Nuevo, Id, Formulario, Enviar, Folio)
 {
  var DivMensaje = document.getElementById("Mensajes");
  if (PuedeGuardar == 1)
   {
    DivMensaje.innerHTML = "";
    var ajax = objetoAjax();
    if (ajax)
     {
      var Datos = 'M=' + Modulo + '&N=' + Nuevo + '&I=' + Id +'&E=' + Enviar + '&F=' + Folio;
      divContenido = document.getElementById(Capa);
      Form = document.getElementById(Formulario);
      for (var i=0; i<=Form.elements.length-1; i++)
       { 
        Datos += '&' + Form.elements[i].name + '=' + encodeURI(Form.elements[i].value);
       }
      divContenido.innerHTML= '<img src="imagenes/formato/loading.gif">';
      ajax.open('POST', Modulo + '.php', true);
      ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");                  
      ajax.onreadystatechange=function()
       {
        if (ajax.readyState==4)
         {
          Actual = '';
          Maximo = 0;
          divContenido.innerHTML = ajax.responseText;
         }
       }
      ajax.send(Datos)
     }
   }
  else
   {
    DivMensaje.innerHTML = "No es posible guardar. Existen mensajes que requieren su atenci&oacute;n.";
   }
 }

function Imprimir(Div, Frame)
 {
  try
   {
    var Ventana = document.getElementById(Frame);
    var Contenido = document.getElementById(Div).innerHTML;
    var Documento = (Ventana.contentWindow || Ventana.contentDocument);
    if (Documento.document)
     {
      Documento = Documento.document;
     }
    Documento.write('<head><link rel=stylesheet href=estilos/estilo.css></head>');
    Documento.write('<body onload=\'this.focus(); this.print();\'>');
    Documento.write(Contenido + '</body>');
    Documento.close();
   }
  catch(e)
   {
    self.print();
   }
 }

function Uploadify(Input, Directorio, Auto, Multiple, Limite, Id, Thumb)
 {
  $('#' + Input).uploadify({
   'uploader'         : 'javascripts/uploadify.swf',
   'buttonImg'        : 'imagenes/formato/buscar.png',
   'cancelImg'        : 'imagenes/formato/cancel.png',
   'height'           : 11,
   'width'            : 45,
   'script'           : 'upload.php',
   'folder'           : '../imagenes/' + Directorio,
   'auto'             : Auto,
   'buttonText'       : 'Buscar imagen',
   'fileExt'          : '*.jpeg;*.jpg;*.gif;*.png',
   'fileDesc'         : 'Imagenes',
   'multi'            : Multiple,
   'queueSizeLimit'   : Limite,
   'sizeLimit'        : 1240000,
   'scriptData'       : {'I': Id},
   'onAllComplete'    : function(event, data) {
                         Miniatura(Thumb, Id, Directorio);
                         Galeria(0, Id, Directorio, "galeria" + Id);
                        }
  });
 }

function Uploadifyles(Input, Directorio, Auto, Multiple, Limite, Id)
 {
  $('#' + Input).uploadify({
   'uploader'         : 'javascripts/uploadify.swf',
   'buttonImg'        : 'imagenes/formato/buscar.png',
   'cancelImg'        : 'imagenes/formato/cancel.png',
   'height'           : 11,
   'width'            : 45,
   'script'           : 'upload.php',
   'folder'           : '../archivos/' + Directorio,
   'auto'             : Auto,
   'buttonText'       : 'Buscar archivo',
   'fileExt'          : '*.jpeg;*.jpg;*.gif;*.png;*.avi;*.mpg;*.mpeg;*.wmv;*.rm;*.ra;*.mkv;*.m2v;*.mp3;*.doc;*.xls;*.docx;*.xlsx;*.pps;*.ppsx;',
   'fileDesc'         : 'Archivos',
   'multi'            : Multiple,
   'queueSizeLimit'   : Limite,
   'sizeLimit'        : 102400000,
   'scriptData'       : {'I': Id},
   'onAllComplete'    : function(event, data) {
                         Listado(Directorio, "listado" + Directorio);
                        }
  });
 }

function Miniatura(Crear, Id, Directorio)
 {
  var ajax = objetoAjax();
  if (ajax)
   {
    var Datos = 'miniatura.php?C=' + Crear + '&I=' + Id + '&D=' + Directorio;
    var Resp = '';
    ajax.open('GET', Datos);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.onreadystatechange=function()
     {
      if (ajax.readystate=4)
       {
        Resp = ajax.responseText;
       }
     }
    ajax.send(null);
   }
 }

function Galeria(Multiple, Id, Directorio, Div)
 {
  var ajax = objetoAjax();
  if (ajax)
   {
    var Datos = 'galeria.php?M=' + Multiple + '&I=' + Id + '&D=' + Directorio;
    var divContenido = document.getElementById(Div);
    divContenido.innerHTML= '<img src="imagenes/formato/loading.gif">';
    ajax.open('GET', Datos);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.onreadystatechange=function()
     {
      if (ajax.readyState==4)
       {
        divContenido.innerHTML = ajax.responseText;
       }
     }
    ajax.send(null);
   }
 }

function Listado(Directorio, Div)
 {
  var ajax = objetoAjax();
  if (ajax)
   {
    var Datos = 'listado.php?D=' + Directorio;
    var divContenido = document.getElementById(Div);
    divContenido.innerHTML= '<img src="imagenes/loading.gif">';
    ajax.open('GET', Datos);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.onreadystatechange=function()
     {
      if (ajax.readyState==4)
       {
        divContenido.innerHTML = ajax.responseText;
       }
     }
    ajax.send(null);
   }
 }

function Eliminar(Directorio, Archivo)
 {
  var ajax = objetoAjax();
  if (ajax)
   {
    var Datos = 'delete.php?D=' + Directorio + '&A=' + Archivo;
    ajax.open('GET', Datos);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.onreadystatechange=function()
     {
      if (ajax.readyState==4)
       {
       }
     }
    ajax.send(null);
   }  
 }

function VerificaExistencia(Tabla, Campo, Id)
 {
  var DivMensaje = document.getElementById("Mensajes");
  var Input = document.getElementById(Campo);
  var Valor = Input.value;
  var Ajax = objetoAjax();
  Ajax.open("POST", "funciones/verificaexistencia.php", true);
  Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  Ajax.send("Tabla=" + Tabla + "&Campo=" + Campo + "&Valor=" + Valor + "&Id=" + Id);
  Ajax.onreadystatechange = function()
   {
    if (Ajax.readyState == 4)
     {
      if (Ajax.responseText == 0)
       {
        if (Input.className != "campo")
         {
          Input.className = "campo";
          PuedeGuardar = 1;
         }
       }
      else
       {
        if (Input.className != "advertencia")
         {
          Input.className = "advertencia";
          PuedeGuardar = 0;
         }
       }
      if (PuedeGuardar == 1)
       {
        DivMensaje.innerHTML = "";
       }
      else
       {
        DivMensaje.innerHTML = "Ya existe un " + Campo + " con ese mismo valor.";
       }
     }
   }
 }

function Favorito(Oferta, Usuario, Accion)
 {
  var Ajax = objetoAjax();
  if (Ajax)
   {
    var Datos = 'funciones/favorito.php?O=' + Oferta + '&U=' + Usuario + '&A=' + Accion;
    var Fav = document.getElementById("Fav");
    Fav.innerHTML = "<img src=imagenes/formato/loading.png>";
    Ajax.open("GET", Datos);
    Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");                  
    Ajax.onreadystatechange = function()
     {
      if (Ajax.readyState == 4)
       {
        Fav.innerHTML = Ajax.responseText;
       }
     }
    Ajax.send(null);
   }
 }

function CambiarEstatus(Link, Campo, Accion)
 {
  switch (Accion)
   {
    case 'A':
     document.getElementById(Link).innerHTML = 'Suspender';
     document.getElementById(Link).onclick = function () { CambiarEstatus(Link, Campo, "I") };
     document.getElementById(Campo).value = 'Pendiente';
     break;
    case 'I':
     document.getElementById(Link).innerHTML = 'Activar';
     document.getElementById(Link).onclick = function () { CambiarEstatus(Link, Campo, "A") };
     document.getElementById(Campo).value = 'Inactivo';
     break;
    case 'B':
     document.getElementById(Campo).value = 'Borrado';
     break;
    case 'O':
     document.getElementById(Link).innerHTML = 'En revisi&oacute;n';
     document.getElementById(Link).onclick = function () { CambiarEstatus(Link, Campo, "P") };
     document.getElementById(Campo).value = 'Activo';
     break;
    case 'P':
     document.getElementById(Link).innerHTML = 'Abrir';
     document.getElementById(Link).onclick = function () { CambiarEstatus(Link, Campo, "O") };
     document.getElementById(Campo).value = 'Pendiente';
     break;
    case 'R':
     document.getElementById(Link).innerHTML = 'Completar';
     document.getElementById(Link).onclick = function () { CambiarEstatus(Link, Campo, "C") };
     document.getElementById(Campo).value = 'Pendiente';
     break;
    case 'C':
     document.getElementById(Link).innerHTML = 'En revisi&oacute;n';
     document.getElementById(Link).onclick = function () { CambiarEstatus(Link, Campo, "R") };
     document.getElementById(Campo).value = 'Completo';
     break;
    case 'X':
     document.getElementById(Campo).value = 'Inactivo';
     break;
   }
 }

function Calificar(Calificacion, Campo)
 {
  document.getElementById(Campo).value = Calificacion;
 }

function MostrarCapa(Capa)
 {
  var Panel = document.getElementById(Capa);
  switch (Panel.style.display)
   {
    case 'block':
     Panel.style.display = 'none';
     break;
    case 'none':
     Panel.style.display = 'block';
     break;
    default:
     Panel.style.display = 'block';
     break;
   }
 }

function Traducir(Texto)
 {
  var CadenaTexto = document.getElementById(Texto).value;
  for (i=0;i<Formulario.elements.length;i++)
   {
    Propiedades = Formulario.elements[i].name.split("|");
    if (Propiedades[3] == Texto)
     {
      var Campo = document.getElementById(Formulario.elements[i].id);
      break;
     }
   }
  Campo.value = "Traduciendo...";
  var Ajax = objetoAjax();
  Ajax.open("POST", "../funciones/traductor.php", true);
  Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  Ajax.send("CadenaTexto=" + CadenaTexto + "&Idioma=" + Propiedades[4]);
  Ajax.onreadystatechange = function()
   {
    if (Ajax.readyState == 4)
     {
      Campo.value = Ajax.responseText;
     }
   }
 }

function Votar(Woc, Voto, Usuario)
 {
  var Left = document.getElementById("OpLeft_"+Woc);
  var Right = document.getElementById("OpRight_"+Woc);
  var Mensaje = document.getElementById("Mensaje_"+Woc);
  var Loader = document.getElementById("Loader_"+Woc);
  Left.disabled = true;
  Right.disabled = true;
  var Ajax = objetoAjax();
  Ajax.open("POST", "poll.php", true);
  Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  Ajax.send("Accion=Votar&Woc="+Woc+"&Voto="+Voto+"&Usuario="+Usuario);
  Ajax.onreadystatechange = function()
   {
    if (Ajax.readyState == 4)
     {
      Votacion(Woc);
      Mensaje.innerHTML = "Gracias por tu voto.";
      Loader.style.display = "none";
     }
    else
     {
      Mensaje.innerHTML = "Espera un momento...";
      Loader.style.display = "block";
     }
   }
 }
 
function Votacion(Woc)
 {
  var Resultado = document.getElementById("Resultado_"+Woc);
  var Ajax = objetoAjax();
  Ajax.open("POST", "poll.php", true);
  Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  Ajax.send("Accion=Contar&Woc="+Woc);
  Ajax.onreadystatechange = function()
   {
    if (Ajax.readyState == 4)
     {
      var ArrVotos = Ajax.responseText.split(",");
      Resultado.style.backgroundColor = "#D1E1E4";
      Resultado.style.filter = "Alpha(Opacity=100, FinishOpacity=15, Style=1, StartX="+ArrVotos[0]+", StartY=0, FinishX="+ArrVotos[1]+", FinishY=0";
      if (ArrVotos[0] == 0)
       {
        Resultado.innerHTML = parseInt(ArrVotos[1]) + "%";
        Resultado.style.textAlign = "left";
        Resultado.style.paddingLeft = 5;
       }
      if (ArrVotos[0] == 100)
       {
        Resultado.innerHTML = parseInt(100 - ArrVotos[1]) + "%";
        Resultado.style.textAlign = "right";
        Resultado.style.paddingRight = 5;
       }
     }
   }
 }
