5
ago

“You are not allowed to call this page directly”

You are not allowed to call this page directly” – Este mensaje me aparecía al querer actualizar directamente desde WordPress y en un incio pensaba que el error estaba en los permisos de “update-core.php”, pero no era asi el error es el plugin de NextGEN ImageFlow.

Solo hay que desactivar el plugin de NextGEN ImageFlow, y ya va funcionar la seccion de actualizar en WordPress

Fuente
WordPress Support

17
jul

Borrar la última revisión de un repositorio Subversion

EL día de hoy alguien hizo un commit a un repositorio y esta estaba corrompida o en conflicto, lo que nos afecto todos lo que trabajamos en ese proyecto.
La solución hacer un dump de los repositorio para así eliminar la última revisión en el Subversion.

1. Hacer un dump del repositorio de la primera a la penúltima revisión. El mi repositorio tenemos un proyecto con 7 revisiones(incluyendo la corrompida), para mi caso haría un dump de la 1 a la 6. En la terminal quedaría algo así:

 Bash |  Copiar |? 
1
sudo svnadmin dump /svn/nombre-repositorio -r 1:6 > repositorio.dump

2. Borráramos el repositorio

 Bash |  Copiar |? 
1
sudo rm -rf /svn/directorio-repositorio

3.Crear de nuevo el repositorio

 Bash |  Copiar |? 
1
sudo svnadmin create /svn/nombre-repositorio

4. Cargamos el “repositorio.dump” al repositorio que acabamos de hacer

 Bash |  Copiar |? 
1
sudo svnadmin load /svn/nombre-repositorio < repositorio.dump

Y con eso eliminaremos la ultima revisión arreglando, nuestro conflicto.

25
jun

Bounds Polyline – Google Maps Api 3

En mi trabajo tienen un sistema de monitoreo por gps, las coordenadas de dicho monitoreo se plasmaban con la ayuda del Api Google Maps(V2) mediante una polilinea (polyline), pero se comenzaron a tener problemas y después de “analizarlo” se decidió cambiar el Api a la Version 3 y esa tarea me quedo a mi :S. Un tropiezo con el que me tope era en hacer un Bounds a la polyline de tal suerte que el mapa se ajustara y centrara en el trazo de la polyline.

Y ahora lo comparto con ustedes, de tal suerte que si requieres hacer un bounds o un fitBounds a una polyline con el Api de Google Maps V3 aqui esta una pequeña y simple solución.

Para explicarlo vamos a reutilizar un ejercicio que te ponen dentro de los ejemplos de la Api Google Maps V3

Este es el código del ejemplo polyline-simple.html

<html> 
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<title>Google Maps JavaScript API v3 Example: Polyline Simple</title> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
<script type="text/javascript"> 
 
  function initialize() {
    var myLatLng = new google.maps.LatLng(0,-180);
    var myOptions = {
      zoom: 3,
      center: myLatLng,
      mapTypeId: google.maps.MapTypeId.TERRAIN
    };
 
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
 
    var flightPlanCoordinates = [
	new google.maps.LatLng(37.772323, -122.214897),
        new google.maps.LatLng(21.291982, -157.821856),
        new google.maps.LatLng(-18.142599, 178.431),
        new google.maps.LatLng(-27.46758, 153.027892)
    ];
	

    var flightPath = new google.maps.Polyline({
      path: flightPlanCoordinates,
      strokeColor: "#FF0000",
      strokeOpacity: 1.0,
      strokeWeight: 2
    });
 
   flightPath.setMap(map);
  
  }
 
 
</script> 
</head> 
<body style="margin:0px; padding:0px;" onload="initialize()"> 
<div id="map_canvas" style=" float:left; width:100%; height:100%"></div> 
  
</body> 
</html>

Como pueden ver (ver Polyline Simple online) este código traza un polyline, pero no centra dicha polyline sobre el mapa.

Ejemplo 1: Fit To Polyline

Para hacer un Bounds/fitBounds a ese mismo codigo agregamos lo siguiente (lineas sombreadas).

<html> 
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<title>Google Maps JavaScript API v3 Example: Polyline Simple</title> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
<script type="text/javascript"> 
 
  function initialize() {
    var myLatLng = new google.maps.LatLng(0,-180);
    var myOptions = {
      zoom: 3,
      center: myLatLng,
      mapTypeId: google.maps.MapTypeId.TERRAIN
    };
 
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
 
    var flightPlanCoordinates = [
	new google.maps.LatLng(37.772323, -122.214897),
        new google.maps.LatLng(21.291982, -157.821856),
        new google.maps.LatLng(-18.142599, 178.431),
        new google.maps.LatLng(-27.46758, 153.027892)
    ];
    
    var bounds = new google.maps.LatLngBounds();
    var point;
		
    for (i = 0; i <  flightPlanCoordinates.length; i++) {
          point = flightPlanCoordinates[i];
          bounds.extend(point);
     }

    var flightPath = new google.maps.Polyline({
      path: flightPlanCoordinates,
      strokeColor: "#FF0000",
      strokeOpacity: 1.0,
      strokeWeight: 2
    });
 
   flightPath.setMap(map);
   map.fitBounds(bounds);
  }
 
 
</script> 
</head> 
<body style="margin:0px; padding:0px;" onload="initialize()"> 
<div id="map_canvas" style=" float:left; width:100%; height:100%"></div> 
  
</body> 
</html>

Con lo anterior veremos el mismo mapa solo que ahora un poco mas ajustado y centrado en relación a la polyline (ver Ejemplo 1 online).

Ejemplo 2: Fit To Polyline

Por si no notaron mucha diferencia en el código anterior.
En este ejercicio emplearemos el mismo código que el Ejemplo 1, solo que le daremos otras coordenadas para trazar una nueva polyline.

<html> 
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<title>Google Maps JavaScript API v3 Example: Polyline Simple</title> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
<script type="text/javascript"> 
  function initialize() {
    var myLatLng = new google.maps.LatLng(0,-180);
    var myOptions = {
      zoom: 3,
      center: myLatLng,
      mapTypeId: google.maps.MapTypeId.TERRAIN
    };
 
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
 
    var flightPlanCoordinates = [
              new google.maps.LatLng(29.087077,-110.950756),
              new google.maps.LatLng(19.420621,-99.139938),
              new google.maps.LatLng(16.873219,-99.866753),
              new google.maps.LatLng(21.144711,-86.824608)
    ];
    
    var bounds = new google.maps.LatLngBounds();
    var point;
		
    for (i = 0; i <  flightPlanCoordinates.length; i++) {
          point = flightPlanCoordinates[i];
          bounds.extend(point);
     }

    var flightPath = new google.maps.Polyline({
      path: flightPlanCoordinates,
      strokeColor: "#FF0000",
      strokeOpacity: 1.0,
      strokeWeight: 2
    });
 
   flightPath.setMap(map);
   map.fitBounds(bounds);
  }
 
 
</script> 
</head> 
<body style="margin:0px; padding:0px;" onload="initialize()"> 
<div id="map_canvas" style=" float:left; width:100%; height:100%"></div> 
  
</body> 
</html>

El anterior ejemplo es el mismo codigo que hemos usado solo que con distintas coordenadas(Ver Ejemplo 2 Online), esto para que sea mas facil diferenciar el cambio que se obtiene al dale un Bounds/fitBounds a la polyline.

Enlaces
Google Maps JavaScript API V3
Developer’s Guide
Google Maps Javascript API V3 Examples
Google Maps Javascript API V3 Reference

2
jun

Instalar OpenSSH Server en Ubuntu

En el trabajo tengo un Ubuntu Server 10.04 y quise conectarme a el por medio de SSH(para sentirme mas hombre :P ), para esto instale OpenSSH y lo hice de la siguiente manera.

Abrimos la terminal y ponemos los siguiente, que nos instalara el cliente y servidor de openssh:

 Bash |  Copiar |? 
1
sudo apt-get install openssh-server openssh-client

Una vez terminado el proceso ya tenemos instalado OpenSSH Server y para probarlo, en terminal ponemos:

 Bash |  Copiar |? 
1
ssh localhost

o tambien y asi se usa para conectarse de manera remota:

 Bash |  Copiar |? 
1
ssh usuario@ip-de-tu-servidor

Ahora si queremos detener el servicio de ssh, en la terminal ponemos:

 Bash |  Copiar |? 
1
sudo /etc/init.d/ssh stop

Para iniciarlo:

 Bash |  Copiar |? 
1
sudo /etc/init.d/ssh start

Para reiniciarlo:

 Bash |  Copiar |? 
1
sudo /etc/init.d/ssh restart

26
may

Enviar Correo con ASP/VB.NET

Si te ves en la necesidad de mandar un correo usando visual basic .net, el siguiente código te va ser de gran ayuda.

Lo primero que hay que hacer en importar la librería a nuestro proyecto Web.

 vb.net |  Copiar |? 
1
Imports System.Web.Mail

Después el siguiente código lo podemos meter dentro del evento click en el botón “enviar”, mas delante daré un ejemplo practico. Solo hay que remplazar los datos que que nos indica.

 vb.net |  Copiar |? 
01
 Dim correo As New System.Net.Mail.MailMessage()
02
 
03
        correo.From = New System.Net.Mail.MailAddress("nombre@delremitente.com")
04
        correo.To.Add("nombre@deldestinatario.com")
05
        correo.Subject = "Aquí el asunto"
06
        correo.Body = "<HTML><BODY><B>Aquí el texto correspondiente - Guerratopia</B></BODY></HTML>"
07
        'Estabvlece en TRUE si vas a enviar codigo HTML
08
        correo.IsBodyHtml = True
09
        'Prioridad del Correo Alta, Baja, Normal
10
        correo.Priority = System.Net.Mail.MailPriority.Normal
11
 
12
        Dim smtp As New System.Net.Mail.SmtpClient
13
 
14
        '---------------------------------------------
15
        ' Estos datos debes rellanarlos correctamente
16
        '---------------------------------------------
17
        smtp.Host = "servidor.de.correo_o_Exchange"
18
        'Indicar el puerto en caso de que no sea el Standard (25)
19
        'smtp.Port = "###"
20
        smtp.Credentials = New System.Net.NetworkCredential("usuario", "password")
21
        'Establece en True Cuando el Servidor Requiere una conexion segura
22
        smtp.EnableSsl = False
23
 
24
        Try
25
            smtp.Send(correo)
26
            MsgBox("Mensaje enviado satisfactoriamente")
27
        Catch ex As Exception
28
            MsgBox("ERROR: " & ex.Message)
29
        End Try

Aquí puedes descargar un ejemplo practico y sumamente sencillo, solo necesitas poner los datos de las credenciales del servidor de envió y una vez que cambien los datos corran el proyecto (VS2008) y den click en el botón de enviar, verán algo similar a esto en su bandeja de entrada :P

2
may

Mac Chick del Mes de Abril 2010: Jessica Vaugn

Para la edicion de Abril macenstein nos presenta a esta encantadora modelo Jessica Vaugn.

Personal website: www.jessicavaugn.com




29
abr

Ubuntu 10.04 LTS – Disponible


Ubuntu 10.04 LTS Lucid Lynx ya esta disponible ya lo podemos descargar del portal y a disfrutar de sus novedades.

28
abr

Error – apache2: bad user name ${APACHE_RUN_USER}

Tuve este problema en Ubuntu 10.04 RC, una manera de solucionarlo rapido y sencillo es cambiar un par de lineas en el apache2.conf

Abrimos una terminal y ponemos lo siguiente:

 Bash |  Copiar |? 
1
sudo gedit /etc/apache2/apache2.conf 

Dentro buscamos estas lineas:

 Bash |  Copiar |? 
1
# These need to be set in /etc/apache2/envvars
2
User ${APACHE_RUN_USER}
3
Group ${APACHE_RUN_GROUP} 

Y las sustituimos la parte de ${APACHE_RUN_USER} y de ${APACHE_RUN_GROUP} por www-data, quedara algo asi:

 Bash |  Copiar |? 
1
# These need to be set in /etc/apache2/envvars
2
User www-data
3
Group www-data 

Despues guardamos y cerramos y reiniciamos apache.

 Bash |  Copiar |? 
1
sudo /etc/init.d/apache2 restart

24
abr

Cambiar Formato de Hora en Ubuntu

Para cambiar el formato de la hora de 24 a 12 (am o pm) en ubuntu, en mi caso para ubuntu 10.04, hacemos lo siguiente:

Habrimos una terminal y ponemos:

 Bash |  Copiar |? 
1
sudo gedit /usr/share/i18n/locales/es_XX

Donde XX los sustituyes por el codigo de tu país (MX,ES,VE, AR, etc…). Para saber cual es tu código dependiento de tu pais, puedes checar la lista de codigos

En mi caso quedara asi, pues soy de Mexico:

 Bash |  Copiar |? 
1
sudo gedit /usr/share/i18n/locales/es_MX

Después buscamos las siguientes lineas:

 Bash |  Copiar |? 
1
am_pm "";""
2
t_fmt_ampm ""

y las sustituimos por las siguientes:

 Bash |  Copiar |? 
1
am_pm "<u0041><u004d>";"<u0050><u004d>"
2
t_fmt_ampm "<u0025><u0049><u003a><u0025><u004d><u003a><u0025> <u0053>/<u0020><u0025><u0070>"</u0070></u0025></u0020></u0053></u0025></u003a></u004d></u0025></u003a></u0049></u0025></u004d></u0050></u004d></u0041>

Luego guardamos y salimos y ponemos esto en la terminal:

 Bash |  Copiar |? 
1
sudo locale-gen

Una vez que termine y cierra la secion o reinicia, y con eso habrás cambiado el formato por 12 horas

23
abr

Restore y Backup – Base de Datos MySQL

Por cuestiones de optimizar, vamos a quitar el ubuntu virtualizado para instalarlo de manera nativa en un server (Ubuntu RC 10.04) como es debido a causa de esto tengo que respaldar un par de Bases de Datos en MySql y ese respaldo “levantarlo” en la nueva instalación. Para lo anterior usamos 2 simples comandos

Para Respaldar(Backup) una DB MySQL.
Abrimos un terminal y ponemos lo siguiente:

 Bash |  Copiar |? 
1
mysqldump --add-drop-table -u user --password=mypassword database> /path/file.sql

Lógicamente sustituyendo user por el usuario administrador de MySql, mypassword por la contraseña de dicho usuario y database por el nombre de la base de datos que deseamos respaldar.

Para Restaurar(Restore) el respaldo de la DB MySql
En terminal ponemos lo siguiente:

 Bash |  Copiar |? 
1
mysql -u user -p -Ddatabase --password=mypassword < /path/file.sql

De nuevo, ustituyendo user por el usuario administrador de MySql, mypassword por la contraseña de dicho usuario y database por el nombre de la base de datos que deseamos restaurar.

- Si marca un error a la hora de restaurar, entonces primero creamos la base de datos antes de iniciar la restauración, en terminal entramos a MySql

 Bash |  Copiar |? 
1
mysql -u root -p

después creamos la base de datos
 Bash |  Copiar |? 
1
CREATE DATABASE NombreBD;

salimos de Mysql
 MySQL |  Copiar |? 
1
quit;

Despues de esto corremos el comando de para restaurar la base de datos cambiando database por el nombre de la BD que acabamos de crear

Celadon theme by the Themes Boutique
La información de este blog tiene caracter informativo y la utilización de esta cae estrictamente bajo la responsabilidad del lector.