JavaScript
Creando snippet para sitios ajenos
Mi viejo amigo Christian me pidió que le creara un javascript para que los webmaster de otros sitios pudieron ver sus "datos frikis". Si ustedes ponen en alguna parte de su sitio el siguiente código
- <script src='http://www.elfrancotirador.cl/cita_js.php'></script>
Podrán obtener esto
- 9 comentarios
- Leer más
- 3648 lecturas
Webstats4U ¿malvados?
Muchos de nosotros hemos ocupado Nedstat para llevar las estadísticas de nuestro sitios. No había notado nada raro desde que pasaron a ser Webstats4U, pero en Alt 1040 avisan que desde el cambio aparecen pop-ups. ¡Nasty!
Por un post en el mismo blog vi que la "feature" sólo aparece en IE. Bastante pillos los tipos, ya que cualquier blogger que se precie ocupa otra cosa (Firefox, por ejemplo). Hagamos un análisis del problema
Lo primero es dirigirse a la página de términos de uso de Webstats4U. Claramente dice:
With the installation of Webstats4U on the site it is accepted that WMS has the right to place advertisements on the site in any format or through any channel, including but not limited to e-mail, layer ads, pops, banners and other usual formats without any forewarning and it is furthermore accepted that WMS takes no responsibility for the advertising content and that WMS shall not be liable for any losses incurred regarding this advertising.
Linda la tontera. Ahora se dan el derecho de publicitar por e-mail, pasando por encima de todas las legislaciones. Y, mish, hasta podrían poner un banner en mi sitio, por una tontera como un contador. Bueno, son SUS términos de servicio, después de todo :P
Segundo, el script que se llama desde el contador es http://m1.nedstatbasic.net/basic.js. No tiene ningún window.open, pero sí algo bastante extraño:
- d.write('<iframe src="http://a.as-eu.falkag.net/dat/dlv/aslframe.html?dat=443586&xl=1&yl=1" width=1 height=1 noresize scrolling=no hspace=0 vspace=0 frameborder=0 marginheight=0 marginwidth=0>');
- d.write('<scr'+'ipt type="text/javascript" language="javascript" src="http://a.as-eu.falkag.net/dat/dlv/aslmain.js"></scr'+'ipt>');
- // snip...
- d.write('<scr'+'ipt type="text/javascript" language="javascript" src="http://a.as-eu.falkag.net/dat/cjf/00/44/35/86.js"></scr'+'ipt></iframe>');
Para los que no sepan mucho de html o javascript, lo que hace es crear un iframe invisible, o sea, cargan una pequeña página dentro de la actual, sin que se vea. Además, incluye dos script javascript a ser ejecutados:
- http://a.as-eu.falkag.net/dat/dlv/aslmain.js
- http://a.as-eu.falkag.net/dat/cjf/00/44/35/86.js
Haciendo una rápida revisión por falkag.net, podemos ver que es una empresa de avisaje. Lo suponía...
Analicemos un poco el primer script de falkag que nombre. Lo primero, es ver cuantas veces se lanza un window.open, ya que permite saber de inmediato si se lanzan popups. La cuenta dice: 7. Evidentemente, es un script de avisaje por pop-ups.
El código es bastante enredado, así que prefiero no darme muchas vueltas, pero creo que el código culpable es:
- if (!pB||(pB&&navigator.appName!='Microsoft Internet Explorer'))
- {
- oD(1,'Start BW-Test','Java');
- document.write('<applet codebase="'+jB[Ads_sec]+'/" code="bandwidth.class" id="bandwidth" name="bandwidth" width="0" height="0" mayscript="MAYSCRIPT"><param name="cbfunc" value="tE"></applet>');
- } else
- oD(1,'BW-Test Canceled','Mac IE Combination');
Creo que tendré que sacar el nedstats... con lo que me gustaba :S
- 6 comentarios
- 5546 lecturas
3AM, con Mi Primer PC de Verdad
La junta
El viernes en la noche, tras descubir que vivía en San Pedro, me junté con uno de los chicos de MPPCDV, Eduardo, o aguayoki, en el "espacio virtual".
Simpático cabro. Un tanto seco, pero con mucho entusiasmo y gusto por lo que hace. Nos quedamos como 2 horas y media hablando de la campaña, de Linux, de Ubuntu, de las milas de distribuciones que ha instalado en su pobre Pentium II (claro, el que sirve sus páginas), de anime, de... bueno, de muchas cosas.
Un gusto conocerlo en persona, caballero. Me saco el sombrero
- 4 comentarios
- Leer más
- 2899 lecturas
Mi Primer PC: Javascript para usar logo con contador de firmas
Acabo de habilitar una nueva forma de referenciar el logo de Mi Primer PC... ¡Pero de Verdad!, a través de un pequeño javascript. El código es
- <script src='http://mppc.tardis.cl/ajax/logo/S'></script>
¡Nada más simple!. El script lo único que hace es generar un código como el siguiente
- document.write("<a href='http://mppc.tardis.cl/'><img src='http://mppc.tardis.cl/gfx/mppcS.gif' style='border:0px;' /></a>")
- document.write("<div style='font-size:small'>Tenemos <strong>5390</strong> firmas <br/>de 25000</div>")
- document.write("<div style='font-size:small'><a href='http://mppc.tardis.cl/'>Apóyanos tu también</a></div>")
El tamaño del logo se puede cambiar alterando la última parte de la ruta, con S, M, L o XL. A continuación, ¡todos los formatos!
Tamaño S
- <script src='http://mppc.tardis.cl/ajax/logo/S'></script>
Tamaño M
- <script src='http://mppc.tardis.cl/ajax/logo/M'></script>
Tamaño L
- <script src='http://mppc.tardis.cl/ajax/logo/L'></script>
Tamaño XL
- <script src='http://mppc.tardis.cl/ajax/logo/XL'></script>
- 4 comentarios
- 3422 lecturas
Nicechat v0.1.1
Nueva versión!
- Agregado soporte Jisp desde el cliente. Esto significa que desde Javascript se carga la definición del archivo icondef.xml y las transformaciones del texto se hacen todas desde el cliente. Así, mi pobre servidor no tiene que trabajar tanto :)
- Corrección de no aparición de mensaje /me para el cliente que lo emite.
- Agregado archivo de CAMBIOS.txt
Demo: http://php.apsique.com/nicechat/
Descarga: http://php.apsique.com/files/proyectos/nicechat-0.1.1.tar.gz
- Añadir nuevo comentario
- 1878 lecturas
Ajax: Problema de configuración en apache de Debian para usar UTF-8
Todos los que hemos trabajado en Ajax sabemos el infierno que surge de la codificación de caracteres. Como consejo general, es mejor trabajar todo en UTF-8 y olvidarse de hacer encodes y decodes para arriba y para abajo.
Ahora bien, tengo dos computadores para trabajar, en la clásica formación de desarrollo y producción. El primero, en Gentoo, nunca me daba problemas con el tema de las codificaciones en UTF-8, pero el de producción con Ubuntu, sí. Cada vez que probaba el nicechat instalado en el Ubuntu, el navegador se quedaba pegado en ISO-8859-1. Probé con cambiar el encabezado del html, enviar mensajes de cabecera con el php, pero nada.
Hasta que di con el problema. El apache de Ubuntu viene con la directiva AddDefaultCharset on, que envía una cabecera con el set de codificación, que viene por defecto en ISO-8859-1. Fue cosa de comentar la directiva y, ¡voilá! Todo empezo a funcionar como es debido.
Para los que tengan alojadas sus páginas en servidores externos, es cosa de crear o modificar el archivo .htaccess y agregar la instrucción
AddDefaultCharset off
Revisando en la red, me di cuenta que otros ya se habían percatado del problema, que es genérico a las distro Debian.
Más información:
- Añadir nuevo comentario
- 4034 lecturas
Para nicechat... una consulta
Estimados:
Cómo sé que esto sale en Planeta Código, aprovecho de preguntarles a todos los programadores que andan por ahí.
Ayer, conversando con Juanjo sobre nicechat, me comentó sobre jisp, el formato que tiene Jabber y otros programas de MI para manejar sus íconos. Me pareció una estupenda idea implementarlo y en unos 20 minutos ya tenía una primera implementación del bicho, a través de la escritura de archivos php que correspondan a las especificaciones del jisp.
Ahora bien, mi pregunta va por en que lado establezco el reemplazo, si por el lado del cliente o del servidor. En el primer caso, debo enviar al javascript la lista completa de reemplazos al iniciar la página, y para mensaje el script debería encargarse de hacer los cambios que corresponden. Claro, puede sobrecargar bastate al js, pero se tiene la interesante ventaja de que cada cliente elija que set de íconos quiere utilizar y que el servidor no recibe ningún tipo de sobrecarga.
La segunda alternativa es hacer los cambios en el servidor. Si se habilita la opción, el servidor debe hacer las transformaciones necesarias antes de la salida del texto. Si bien garantiza que las imágenes se verán bien, produce ciertamente una mayor carga en el servidor (el lado más flaco del sistema) y hace necesario "compilar" scripts con las especificaciones, para lograr un rendimiento aceptable.
Yo me estoy inclinando por la versión del lado del cliente, aunque sea un poquito más complicada. Ustedes, ¿que piensan?
- 1 comentario
- 1935 lecturas
Nicechat v0.1.0
La tasa de actualización es buena, ¿no?
Cambie el número de versión, ya que hay un gran cambio en la forma de manejar la identificación del usuario. En las versiones 0.0.x, está se realizaba por una sesiones de PHP, lo que hacía que se compartiera la sesión de trabajo(valga la redundancia) entre todas las ventanas (o pestañas) de un mismo navegador.
Ahora, cada ventana tiene su propia sesión de trabajo, así que se pueden crear tantas identidades y entrar a todos los canales que se quieran. Esto implica usar un poco más la base de datos, por lo que los ping están un poco más largos que antes; tengo que ajustar la base de datos para que funcione mejor.
Además, se incorporaron tres nuevas características:
- Soporte para smileys: Sí, no lo pude resistir. Aparte, que son no más de 5 líneas de código. Por ahora, sólo tengo :), :( y :P, pero no cuesta nada agregar las otras. Los íconos son los de Gaim, por si acaso
- Aparición inmediata de mensaje del propio usuario: esto fue sugerencia de Ignacio. Los mensajes del propio usuario son enviados de inmediato a la consola, y no son considerados al enviar los nuevos mensajes al cliente
- Indicador con la tasa de refresco. ?til para saber que valores son los más adecuados para la configuración de su servidor
Descarga: http://php.apsique.com/files/proyectos/nicechat-0.1.0.tar.gz
Demo: http://php.apsique.com/nicechat
- 5 comentarios
- Leer más
- 2244 lecturas
Nicechat v0.0.2
Después de algunos errores y tirones de pelo, actualicé el pequeño bicho a su versión 0.0.2.
Cambios:
- Indicador de ping y de acciones en curso
- Resolución de vulnerabilidad (no se dieron cuenta? era feroz!)
- Ajustes en los valores por defecto para actualización y timeout.
Nos vemos!
http://php.apsique.com/files/proyectos/nicechat-0.0.2.tar.gz
- Añadir nuevo comentario
- 1821 lecturas
Nicechat: Un agradable chat en Php, Mysql y XmlHttpRequest
Se lo mostré a Christian, y le gustó. Lo pusé en una aplicación del lugar donde trabajo y las chicas se pusieron a chatear como locas.
Así que, nada que hacer. Presentamos en sociedad a nicechat, el chat en php que puede (o no) hacerles la vida más fácil.
Entre sus características se encuentran:
- Pequeño: No más de 20kb de código
- Rápido: En una intranet, fácil hace ping de 60ms, sin ningún tipo de optimización. En internet, los ping pueden llegar a 300ms
- Fácil de instalar: Es cosa de meter el sql en la base de datos, configurar un archivo y comienza a funcionar!
- Fácil de adaptar: El sistema está hecho para que se integre del modo menos instrusivo posible en cualquier tipo de aplicación ya hecha. Hasta creo que sería fácil con smarty :P
- 20 comentarios
- Leer más
- 10421 lecturas

Comentarios recientes
hace 5 días 21 horas
hace 5 días 23 horas
hace 1 semana 1 día
hace 1 semana 1 día
hace 1 semana 2 días
hace 1 semana 2 días
hace 1 semana 2 días
hace 2 semanas 22 horas
hace 2 semanas 4 días
hace 2 semanas 4 días