function openWindowIMG( ancho, alto, url ) {

  var id_ventana  = Math.random() * 1000 + '';
  id_ventana = id_ventana.substr( 0, 3 );
  var posicion = 250;
  var propiedades = 'width='+ancho+',height='+alto+',toolbar=0,location=0,directories=0,status=0,menuBar=0,scrollBars=1,resizable=0,left='+posicion+',top='+posicion;
  window.open( url, id_ventana, propiedades );
}

function printArticle() {

  if ( window.print ) {

    setTimeout( 'window.print();',200 );
  } else if ( agt.indexOf( "mac" ) != -1 ) {

    alert( "Put 'Cmd+p' in your keyboard to print story." );
  } else {

    alert( "Put 'Cmd+p' in your keyboard to print story." )
  }
}

function MM_swapImgRestore() {

  var i,x,a=document.MM_sr;
  for( i = 0; a && i < a.length && ( x = a[i] ) && x.oSrc; i++ ) {

    x.src=x.oSrc;
  }
}

function MM_preloadImages() {
	
  var d = document;
  if( d.images ) { 
  	if( !d.MM_p ) {
  	  d.MM_p=new Array();	
  	}
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
	for( i = 0; i < a.length; i++ ) {
		
  		if( a[i].indexOf("#") != 0 ) {
			 
			d.MM_p[j]=new Image; 
			d.MM_p[j++].src=a[i];
		}
	}	
  }
}

function MM_findObj(n, d) {
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() {
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
  if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function Glosario( status ) {

  if( document.glosario.termino.value != '' ) {

    newterm = document.glosario.termino.value.replace( /\s/gi, "+" );
    openWindowIMG( 340, 380, 'glosario.php?action=search&termino=' + newterm + '' );
  } else {

    alert( 'Por favor, escribe la palabra que desea buscar' );
  }

  if( !status ) {

    return false;
  }
}


function loginUser( forma ) {

  var msg='';

  if ( forma.user_name.value == '' ) {

    msg = msg + '  * Check if you e-mail address is correct\n';
  }

  if ( forma.user_pwd.value == '' || forma.user_pwd.value.length < 6 ) {

    msg = msg + ' * write your password correctly\n';
  }

  if( msg == '' ) {

    forma.submit();
  } else {

    alert( msg );
  }
}


function validaSuscripcion(forma){
  var ok="si";
  if (ok == "si" && forma.nombre.value == ''){
    alert("* Por favor introduzca su nombre\n");
    forma.nombre.focus();
    forma.nombre.select();
    ok = "no";
  }
  if (ok == "si" && forma.ape_paterno.value == ''){
    alert("* Por favor introduzca su Apellido Paterno\n");
    forma.ape_paterno.focus();
    forma.ape_paterno.select();
    ok = "no";
  }
  if (ok == "si" && forma.calle.value == ''){
    alert("* Por favor introduzca la Calle\n");
    forma.calle.focus();
    forma.calle.select();
    ok = "no";
  }
  if (ok == "si" && forma.colonia.value == ''){
    alert("* Por favor introduzca la Colonia\n");
    forma.colonia.focus();
    forma.colonia.select();
    ok = "no";
  }
  if (ok == "si" && forma.cp.value == ''){
    alert("* Por favor introduzca el Cï¿½digo Postal\n");
    forma.cp.focus();
    forma.cp.select();
    ok = "no";
  }
  if (ok == "si" && forma.ciudad.value == ''){
    alert("* Por favor introduzca la Ciudad\n");
    forma.ciudad.focus();
    forma.ciudad.select();
    ok = "no";
  }
  if (ok == "si" && forma.estado.value == ''){
    alert("* Por favor introduzca el Estado\n");
    forma.estado.focus();
    forma.estado.select();
    ok = "no";
  }
  if (ok == "si" && forma.telefonos.value == ''){
    alert("* Por favor introduzca su telï¿½fono\n");
    forma.telefonos.focus();
    forma.telefonos.select();
    ok = "no";
  }

  if(ok=="si"){
    forma.submit();
  }
}

function validaEnvioArticulo(forma){
  var msg='';
  if (forma.nombre.value == ''){
    msg = msg + '  * If you do\'nt write your name correctly, can\'t to continue\n';
  }
  if (forma.ape_paterno.value == ''){
    msg = msg + '  * If you do\'nt write your paternal last name correctly, can\'t to continue\n';
  }
  if (forma.ape_materno.value == ''){
    msg = msg + '  * If you do\'nt write your maternal last name  correctly, can\'t to continue\n';
  }
  if (forma.telefono.value == ''){
    msg = msg + '  * If you do\'nt write your phone number correctly, can\'t to continue\n';
  }

  if(msg==''){
    forma.submit();
  }else{
    alert(msg);
  }
}

function valPassword(forma){
  var msg = '';
  if (forma.pwd_mail.value == ''){
    msg = '* If you don\'t write your e-mail address correctly, can\'t to continue\n';
  }
  if(msg==''){
    forma.submit();
  }else{
    alert(msg);
  }
}

function submitFile(forma,proceso){
  switch(proceso){
    case 'upload': 	forma.method.value='uploadFile';
    forma.submit();
    break;

    case 'erase':	forma.method.value='eraseFile';
    forma.submit();
    break;

    case 'send':   	forma.method.value='sendInfo';
    forma.submit();
    break;

    case 'cancel': 	forma.method.value='cancelInfo';
    forma.submit();
    break;

    default:       	forma.method.value='sendArticle';
    forma.submit();
    break;
  }
}


function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}


function close_window() {
  window.close();
}


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


function getCPData()
{
  if(document.forms[0].cp.value == ""){
    return false;
  }

  http=xmlhttpstart();

  values_send="cp=" + document.forms[0].cp.value;
  URL="sepomex.php?";

  http.open("GET", URL + "&" + values_send,true);


  http.onreadystatechange=function() {

    if (http.readyState==1){
      document.forms[0].delegacion.value = "Cargando...";
      document.forms[0].ciudad.value = "Cargando...";
      document.forms[0].estado.value = "Cargando...";
      document.forms[0].colonia.options.length = 0;
      document.forms[0].colonia.options[0] = new Option("Cargando...",0);
    }

    if (http.readyState==4){

      response = http.responseText.split(":");

      if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){

        //alert("El cï¿½digo postal es incorrecto, por favor verifique");
        document.getElementById('cperror').innerHTML = "El cï¿½digo postal es incorrecto";
        document.forms[0].colonia.options.length = 0;
        document.forms[0].cp.value = "";
        document.forms[0].delegacion.value = "";
        document.forms[0].ciudad.value = "";
        document.forms[0].estado.value = "";
        document.forms[0].cp.select();
        document.forms[0].cp.focus();
        return false;

      }else{

        colonias = response[0].split("&");
        document.forms[0].colonia.options.length = 0;
        for(i=0; i < colonias.length; i++){
          document.forms[0].colonia.options[i] = new Option(colonias[i],colonias[i]);
        }
        document.forms[0].delegacion.value = response[1];
        document.forms[0].ciudad.value = response[2];
        document.forms[0].estado.value = response[3];
        document.forms[0].colonia.options[0].selected = true;
        document.getElementById('cperror').innerHTML = "";
      }
    }
  }

  http.send(null);
}


function loadBanner( position, id, id_sec ) {
  
  http=xmlhttpstart();

  values_send="event=draw&position=" + position +"&id_sec=" + id_sec;
  URL="banner.php?";

  http.open( "GET", URL + "&" + values_send, false );
  
  if( navigator.appName == "Netscape" && navigator.userAgent.indexOf("Safari") == -1 ) {

    http.onload = function( event ) {
      
        var self = event.target;
      
        response = self.responseText;
  
        if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){
  
          document.getElementById(id).innerHTML = "";
          return false;
  
        }else{
  
          document.getElementById(id).innerHTML = response;
        }
    }

  } else {

    http.onreadystatechange=function() {
  
      if (http.readyState==4){
  
        response = http.responseText;
  
        if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){
  
          document.getElementById(id).innerHTML = "";
          return false;
        }else{

          document.getElementById(id).innerHTML = response;          
        }
      }
    }
  }

  http.send(null);
}

function loadPoll() {
  
  var url = 'encuesta.php';
  var myAjax = new Ajax.Updater(
                                'pollTool',
                                url
                                );
}

function votar() {
    
    var url   = 'votar.php';
    for( i = 0; i < document.poll.optPoll.length; i++ ) {
      
        if( document.poll.optPoll[i].checked ) {
        
            var optPoll = document.poll.optPoll[i].value;
        }
    }

    var idPoll  = $F('id_poll');
    var param   = 'optPoll=' + optPoll + "&id_poll=" + idPoll;
        
    var myAjax = new Ajax.Request(
                                  url,
                                  {
                                      method: 'get', 
                                      parameters: param,
                                      onComplete: hidePollEffect
                                  });
}

function hidePollEffect(request) {
   
    new Effect.Opacity('pollTool', 
                       {
                        queue:'front',
                        duration:1.0,
                        from:1.0,
                        to:0.0,
                        afterFinish: function() { 
                                         
                                        $('poll').innerHTML = request.responseText; 
                                     }
                       }
                       );

    new Effect.Opacity('pollTool',
                        {
                          queue: 'end',
                          duration:1.0,
                          from: 0.0,
                          to:1.0
                        });
}

function loadPhpAdsBanner( zone, id ) {
  
  http=xmlhttpstart();

  values_send="event=phpAdsBanner&zone=" + zone;
  URL="banner.php?";

  http.open( "GET", URL + "&" + values_send, false );
  
  if( navigator.appName == "Netscape" && navigator.userAgent.indexOf("Safari") == -1 ) {

    http.onload = function( event ) {
  
        var self = event.target;
        
        response = self.responseText;
  
        if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){
  
          document.getElementById(id).innerHTML = "";
          return false;
  
        }else{

          document.getElementById(id).innerHTML = response;
          var scripts = document.getElementById(id).getElementsByTagName("script");
          for( var i = 0; i < scripts.length; i++ ) {
              
              eval(scripts[i].innerHTML);
          }          
        }
    }

  } else {

    http.onreadystatechange=function() {
  
      if (http.readyState==4){
  
        response = http.responseText;
  
        if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){
  
          document.getElementById(id).innerHTML = "";
          return false;
        }else{

          document.getElementById(id).innerHTML = response;          
          var scripts = document.getElementById(id).getElementsByTagName("script");
          for( var i = 0; i < scripts.length; i++ ) {
              
              eval(scripts[i].innerHTML);
          }          
        }
      }
    }
  }

  http.send(null);
}


function getZipCodeData( form ){
  
    if( form.postalCode.value == "" ) {
      
        return false;
    }

    http = xmlhttpstart();

    values_send="cp=" + form.postalCode.value;
    URL="sepomex.php?";

    http.open("GET", URL + "&" + values_send, true );


    http.onreadystatechange=function() {

        if ( http.readyState == 1 ) {
              
            form.municipality.value = "Cargando...";
            form.city.value         = "Cargando...";
            form.state.value        = "Cargando...";
            
            form.colony.options.length = 0;
            form.colony.options[0] = new Option( "Cargando..." , 0 );
        }

        if ( http.readyState == 4 ) {

            response = http.responseText.split( ":" );
            
            if( response[0] == "" && response[1] == "" && response[2] == "" && response[3] == "" ) {

                alert( "El código postal es incorrecto, por favor verifique" );
                
                form.colony.options.length = 0;
                form.postalCode.value      = "";
                form.municipality.value    = "";
                form.city.value            = "";
                form.state.value           = "";
                form.postalCode.select();
                form.postalCode.focus();

            } else {

                colonies = response[0].split( "&" );
                
                document.getElementById('colonyDiv').innerHTML = '<select id="subscriptionColony" name="colony"></select>';
                
                form.colony.options.length = 0;

                for( i = 0; i < colonies.length; i++ ) {
                  
                    form.colony.options[i] = new Option(colonies[i],colonies[i]);
                }
                
                form.municipality.value         = response[1];
                form.city.value                 = response[2];
                form.state.value                = response[3];
                form.colony.options[0].selected = true;
            }
        }
    }

    http.send(null);
}


function loadArticleTabs(id, idArticle) {
  
  http=xmlhttpstart();

  values_send="method2Follow=getArticleTabs&id_art=" + idArticle;
  URL="articulos.php?";

  http.open( "GET", URL + "&" + values_send, false );
  
  if( navigator.appName == "Netscape" && navigator.userAgent.indexOf("Safari") == -1 ) {

    http.onload = function( event ) {
  
        var self = event.target;
        
        response = self.responseText;
  
        if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){
  
          document.getElementById(id).innerHTML = "";
          return false;
  
        }else{

          document.getElementById(id).innerHTML = response;
          var scripts = document.getElementById(id).getElementsByTagName("script");
          for( var i = 0; i < scripts.length; i++ ) {
              
              eval(scripts[i].innerHTML);
          }          
        }
    }

  } else {

    http.onreadystatechange=function() {
  
      if (http.readyState==4){
  
        response = http.responseText;
  
        if(response[0] == "" && response[1] == "" && response[2] == "" && response[3] == ""){
  
          document.getElementById(id).innerHTML = "";
          return false;
        }else{

          document.getElementById(id).innerHTML = response;          
          var scripts = document.getElementById(id).getElementsByTagName("script");
          for( var i = 0; i < scripts.length; i++ ) {
              
              eval(scripts[i].innerHTML);
          }          
        }
      }
    }
  }

  http.send(null);
}


function subscribe() {
    
    var email = $F('email');
    var url   = 'wrapper.php';
    var idList = $F('listSelect');
    
    var param = 'urlFile='+ $F('subscribeURL') +'&email='+ email +'&idList='+ idList;

    var myAjax = new Ajax.Request(
                                  url, 
                                  {
                                      method: 'get', 
                                      parameters: param,
                                      //onLoading: function() {Element.show('wait');},
                                      onComplete: setSubscribeMessage
                                      //onException: function (f, e) {alert(e)}
                                  });
}

function subscribeCheckBox() {
    
    var email = $F('email');
    var url   = 'wrapper.php';
    var idList = new Array();
    
   
    for (i = 0; i < document.newsletter.listSelect.length; i++) {
        
        if (document.newsletter.listSelect[i].checked) {
            
            idList += document.newsletter.listSelect[i].value + ',';
        }
    }
    
    if (idList.length == 0) {
        
        alert('Por favor, seleccione una lista  a suscribirse');
        return;
    }
    
    idList = idList.substring(0, (idList.length-1));
    
    var param = 'urlFile='+ $F('subscribeURL') +'&email='+ email +'&idList='+ idList;

    var myAjax = new Ajax.Request(
                                  url, 
                                  {
                                      method: 'get', 
                                      parameters: param,
                                      onComplete: setSubscribeMessage
                                  });
}

function loadPageCont(id, nombrediv)
{
   var mudiv = new Ajax.Updater(nombrediv, id);
}

function loadRSS(id, nombrediv)
{
   var mudiv = new Ajax.Updater(nombrediv, id);
}

function setSubscribeMessage(request) {
  
    new Effect.Opacity('newsletterDiv', 
                       {
                        queue:'front',
                        duration:1.0,
                        from:1.0,
                        to:0.0,
                        afterFinish: function() { 
                                         
                                        response = request.responseText;
    
                                                if (response == 'ok') {
        
                                                    $('listDiv').innerHTML = '';
                                                    $('emailDiv').innerHTML = 'Gracias por suscribirse';
                                                    $('submitDiv').innerHTML = '';
                                                    alert('Gracias por suscribirse\nEn los próximos minutos recibirá un correo electrónico de confirmación.\nPor favor siga las instrucciones que se indican en el mismo.');
                                                    new Effect.Opacity('newsletterDiv',
                                                    {
                                                        queue: 'end',
                                                        duration:1.0,
                                                        from: 0.0,
                                                        to:1.0
                                                    });
                                                    
                                                    return;
                                                }
    
                                                if (response == 'userAlreadyInDatabase') {
                                            
                                                    alert('El usuario ya existe en nuestra Base de Datos');
                                                    new Effect.Opacity('newsletterDiv',
                                                    {
                                                        queue: 'end',
                                                        duration:1.0,
                                                        from: 0.0,
                                                        to:1.0
                                                    });
                                                    
                                                    return;
                                                }
    
                                                if (response == 'incorrectEmailFormat') {
      
                                                    alert('Proporcione una dirección válida de correo');
                                                    new Effect.Opacity('newsletterDiv',
                                                    {
                                                        queue: 'end',
                                                        duration:1.0,
                                                        from: 0.0,
                                                        to:1.0
                                                    });
                                                    
                                                    return;
                                                }
                                                
                                                if (response == 'maxSubscriptorExceeded') {
                                                    
                                                    alert('No podemos procesar su solicitud por el momento');
                                                    new Effect.Opacity('newsletterDiv',
                                                    {
                                                        queue: 'end',
                                                        duration:1.0,
                                                        from: 0.0,
                                                        to:1.0
                                                    });
                                                    
                                                    return;
                                                }
                                            }
                                        }
                       );
}


function share_switch() {

  var tabs_showing = $('share_main');
  var link = $('share_link');
  var position = Position.cumulativeOffset(link);

  if (tabs_showing.style.display == 'block') {

    tabs_showing.style.display = 'none';
  } else {

    tabs_showing.style.display = 'block';
    tabs_showing.style.left = (position[0] + 10) + "px";
    tabs_showing.style.top = (position[1] + 30) + "px";
  }
}

function email_switch() {

  var tabs_showing = $('email_main');
  var link = $('email_link');
  var position = Position.cumulativeOffset(link);

  if (tabs_showing.style.display == 'block') {

    tabs_showing.style.display = 'none';
  } else {

    tabs_showing.style.display = 'block';
    tabs_showing.style.left = (position[0] + 10) + "px";
    tabs_showing.style.top = (position[1] + 30) + "px";
  }
}

function checkMail(email){
	filter = /^[A-Za-z_.][A-Za-z0-9_\.]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/;
// Varificar el E-mail
	if ( email == '' ) {
		return false;
	}
	
	if (filter.test(email)){
		return true;
	}
	else{
		return false;
	}
}

function enviaMsgError(idItem, error){
		$(idItem).innerHTML = '<span id="'+idItem+'" style="display:none;" class="commentsError"> '+error+' </span>';
		new Effect.Appear(idItem, { duration: 1.0 });
}
// Recomienda a un amigo
function send2friend() {
	var sendName          = $F('sendName');
	var sendEmail         = $F('sendEmail');
	var sendFriendEmail   = $F('sendFriendEmail');
	var id_art            = $F('id_art');
	var id_sec            = $F('id_sec');
	var errorgen          = 0;

	if(!checkMail(sendEmail)){
		errorgen=1;
		enviaMsgError("sendEmailalert", "*");
	} else {
		enviaMsgError("sendEmailalert", "");
	}

	if(!checkMail(sendFriendEmail)){
		errorgen=1;
		enviaMsgError("sendFriendEmailalert", "*");
	} else {
		enviaMsgError("sendFriendEmailalert", "");
	}

	if ( sendName == '' ) {
		errorgen=1;
		enviaMsgError("sendNamealert", "*");
	} else {
		enviaMsgError("sendNamealert", "");
	}

	if (errorgen==0){
		godEmailMessage(id_art, id_sec, sendName, sendEmail, sendFriendEmail);
	} else {
		badEmailMessage()
	}
}
function badEmailMessage() {
  $('sendalert').innerHTML = '<div id="sendalert" style="display:none;" class="commentsError">Verifique los siguientes campos:</div>';
  new Effect.Appear('sendalert', { duration: 0.5 });
}
	
function godEmailMessage(id_art, id_sec, sendName, sendEmail, sendFriendEmail) {
  $('sendalert').innerHTML = '<div id="sendalert" style="display:none;" class="commentsError"> </div>';
  new Effect.Appear('sendalert', { duration: 1.0 });
  $('email_content').innerHTML = '<div id="email_content" style="display:none;" class="commentsOkay">Gracias por recomendarnos</div>';
  new Effect.Appear('email_content', { duration: 1.0 });
	var pars = '';
	var url = 'send2friend.php';
	var myAjax = new Ajax.Updater( 
	                              'ps2', 
	                              url, 
	                              { 
	                               method: 'post', 
	                               parameters: {
	                                 method2Follow: 'addCommentAjax',
	                                 id_art: id_art,
	                                 id_sec: id_sec,
	                                 sendName: sendName,
	                                 sendEmail: sendEmail,
	                                 sendFriendEmail: sendFriendEmail
	                               }
	                              }
	                              );
}

//  Comenta este articulo
function checkMessage() {
  var name   = $F('commentName');
  var email  = $F('commentEmail');
  var body   = $F('commentBody');
	var id_art = $F('id_art');
	var errorgen = 0;
	
	if(!checkMail(email)){
		errorgen=1;
		enviaMsgError("emailalert", "*");
	} else {
		enviaMsgError("emailalert", "");
	}
	
	if ( name == '' ) {
		errorgen=1;
		enviaMsgError("nombrealert", "*");
	} else {
		enviaMsgError("nombrealert", "");
	}

	if ( body == '' ) {
		errorgen=1;
		enviaMsgError("comentarioalert", "*");
	} else {
		enviaMsgError("comentarioalert", "");
	}

	if (errorgen==0){
		godMessage(id_art, name, email, body);
	} else {
	badMessage()}

}

function badMessage() {
  $('msgalert').innerHTML = '<div id="msgalert" style="display:none;" class="commentsError">Verifique los siguientes campos:</div>';
  new Effect.Appear('msgalert', { duration: 0.5 });
}
	
function godMessage(id_art, name, email, body) {
  $('msgalert').innerHTML = '<div id="msgalert" style="display:none;" class="commentsError"></div>';
  new Effect.Appear('msgalert', { duration: 1.0 });
  $('msgContainer').innerHTML = '<div id="msgContainer" style="display:none;" class="commentsOkay">Comentario enviado.<br><br>Gracias.</div>';
  new Effect.Appear('msgContainer', { duration: 1.0 });
	var pars = 'method2Follow=addCommentAjax&id_art='+id_art+'&name='+name+'&email='+email+'&body='+body;
	var url = 'comentar.php';
	var myAjax = new Ajax.Updater( 
	                              'psx', 
	                              url, 
	                              { 
	                                method: 'post', 
	                                parameters: pars
	                              }
	                              );
}

//  Ver Comentarios aprobados
function displayComments(id_sec, id_art) {
  var pars = 'method2Follow=displayApprovedComments&id_art=' + id_art;
  var url = 'comentar.php';
  var myAjax = new Ajax.Updater( 'commentsDiv', url, { method: 'post', parameters: pars });
}

//  Ofuscar eMail
function ofEmail(despues, antes) {
  document.write('<a href=mailto:' + antes + '@' + despues + '>' + antes + '@' + despues + '</a>');
}