Oviedo José-ph
aprende, genera conocimiento y comparte
   
 
 

Campaña Mejor Cámbiese

Jaws

He estado probando el sitio de un cliente con los diferentes Navegadores (Firefox, IE6, IE7, Safari y Opera) y para variar he tenido más de algún problema, ya saben con quien!!, claro!! con el Internet Explorer 7 y no se diga con la versión 6 del IE (todo un asco de navegador).

Bueno, la cosa esta en que quiero editar dinamicamente mediante Javascript el valor de la propiedad CLASS (clase en español jeje) y al utilizar la propiedad setAttribute('class',"NOMBRE_CLASE") en el Explorer nomas no se realiza el cambio y en los demas navegadores todo va de maravilla.

Ahora bien, después de investigar un poco he encontrado que el IE no soporta el atributo class y en lugar de eso utiliza uno llamado className.

Como he utilizado prototype para mayor compatibilidad solo es necesario poner el siguiente código:

if(Prototype.Browser.IE){
        $('etiqueta_ID_de_la_pagina').setAttribute("className","Nombre_de_mi_Clase");
  }else{
        $('etiqueta_ID_de_la_pagina').setAttribute("class","Nombre_de_mi_Clase");
  }
 

La verdad esta muy fácil de entender, solo es cosa de agregar las librerías del prototype y usar la clausula del IF la cual nos indica si es Internet Exploder entonces se procede con el className y si es cualquier otro navegador decente se procede con el atributo class, asi de fácil.

oviedo | Linux - Software Libre, JavaScript, Jaws | 27 Febrero, 12:40am | Comentar acerca de esto

He estado probando el sitio de un cliente con los diferentes Navegadores (Firefox, IE6, IE7, Safari y Opera) y para variar he tenido más de algún problema, ya saben con quien!!, claro!! con el Internet Explorer 7 y no se diga con la versión 6 del IE (todo un asco de navegador)

Bueno, la cosa esta en que quiero editar dinamicamente mediante Javascript el valor de la propiedad CLASS (clase en español jeje) y al utilizar la propiedad setAttribute('class',"NOMBRE_CLASE") en el Explorer nomas no se realiza el cambio y en los demas navegadores todo va de maravilla.

Ahora bien, después de investigar un poco he encontrado que el IE no soporta el atributo class y en lugar de eso utiliza uno llamado className.

Como he utilizado prototype para mayor compatibilidad solo es necesario poner el siguiente código:

if(Prototype.Browser.IE){
        $('etiqueta_ID_de_la_pagina').setAttribute("className","Nombre_de_mi_Clase");
  }else{
        $('etiqueta_ID_de_la_pagina').setAttribute("class","Nombre_de_mi_Clase");
  }
 

La verdad esta muy fácil de entender, solo es cosa de agregar las librerías del prototype y usar la clausula del IF la cual nos indica si es Internet Exploder entonces se procede con el className y si es cualquier otro navegador decente se procede con el atributo class, asi de fácil.

oviedo | Linux - Software Libre, JavaScript, Jaws | 27 Febrero, 12:40am | Comentar acerca de esto

Nuestro amigo TuXsOuL me mando unos cambios para que el hack Captcha Jaws funcione en safe_mode de PHP, aqui pueden descargar el nuevo archivo: JawsCaptcha-0.6.x-ver0.3.zip.

Si tienen problemas con el funcionamiento del Hack, me avisan!... face-smile-big.png

oviedo | Linux - Software Libre, Jaws | 6 Mayo, 11:50am | Comentar acerca de esto

Ups!, no se me ocurrio otro nombre para el post!.., pero esa es la idea face-devil-grin.png , que cuando escriban mayusculas o minusculas en el codigo del captcha este se valide de manera correcta!.., y porque asi?..., haaa, porque a veces da un poco de flojera activar el bloque de las mayusculas o escribir con shift solo para poner texto en MAYUSCULAS!.., asi que ahora ya se puede escribir indistintamente en MAYUS o en MINUSC. (no se si me di a entender!..., pero bueno., fue una inquietud que tenia cuando empece el hack y que tambien me la expreso Marko en los comentarios del hack pasado)

Así que ahi les va lo que deben de modificar:

En el archivo include/JawsCaptcha.php hay que buscar la funcion IsValid y en la parte donde dice:

if ($guess == $captcha) {
 

Se debe de reemplazar por el siguiente código:

if (strtoupper($guess) == $captcha) {
 

Facil no?...., que fue lo que hicimos, haaaa!, pues utilizamos la función de PHP llamada strtoupper que se encarga de convertir el texto a mayusculas, ya que cuando se genera el codigo captcha y se guarda en la base de datos codificado con MD5, este se guarda en mayusculas face-glasses.png

Aquí les dejo la versión JawsCaptcha 0.2 para su descarga con los originales de la versión 0.1 y esta nueva, solo hay que descompactarlo en la carpeta include/

oviedo | Jaws | 30 Junio, 10:43am

Lo prometido es deuda, así que ahi les va el manualito para ponerle algunos añadidos a nuestro captcha como:

  • Uso de fuentes TTF, digo, para que se entienda el texto que es la idea principal
  • Fuentes aleatorias, asi se pueden visualizar de manera diferente cada captcha
  • Agregado de más colores en las lineas del fondo
  • Agregado de pixeles en el fondo!, con muchos colores!..

Empecemos por lo primero!.., hacer un respaldo de los archivos a modificar, en este caso se trata del archivo include/JawsCaptcha/Image.php, en ese archivo se crea la imagen aleatoria.

Voy a empezar explicando algunas partes del código y al final les pongo ya como queda el archivo final!.., saz!.., así que manos a la obra!.., preparen su editor de textos favoritos y al ataque!..

Primero buscamos la función Build (esta aprox por la linea 29) y vamos a remplazar en donde dice imagecolorallocate por el siguiente código, se supone que esa función se encarga de crear la gama de colores especificado por los 3 ultimos parametros de esa función., el formato esta en RGB (Red, Green, Blue).

$color['white']    = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);
$color['gray']     = imagecolorallocate($image, 0xC0, 0xC0, 0xC0);
$color['darkgray'] = imagecolorallocate($image, 0x50, 0x50, 0x50);
$colorPixel[]  = imagecolorallocate($image, 0xFF, 0xFF, 0x00); // Yellow
$colorPixel[]  = imagecolorallocate($image, 0xFF, 0x00, 0x00); // Red
$colorPixel[]  = imagecolorallocate($image, 0xC0, 0xC0, 0xC0); // Gray
$colorPixel[]  = imagecolorallocate($image, 0x00, 0x00, 0xFF); // Blue
$colorPixel[]  = imagecolorallocate($image, 0xC0, 0xFF, 0x00); // Green
 

La idea básica es primero definir el arreglo color con los diferentes colores que utilizaremos en el pintado de las letras (tu puedes jugar y ponerle los colores que desees). Despues tenemos el arreglo colorPixel , si se fijan no pongo ningun indice en el arreglo, ya que podemos luego agregar más y más colores!.., mediante la función imagecolorallocate en formato RGB recurden!., haa y en Hexadecimal, por eso tiene 0x00 hasta el 0xFF

Ahora sigue definir las fuentes TTF que utilizaremos en el captcha en este caso vamos a definir 2 tipos de letras, una llama AhnbergHand.ttf y la otra FuturaBook.ttf

$myFonts[0]['font'] = "AhnbergHand";
$myFonts[0]['size'] = "14";

$myFonts[1]['font'] = "FuturaBook";
$myFonts[1]['size'] = "18";
 

Esto es facil de entender, en el primer arreglo bidimencional ponemos el nombre de la fuente, tal y como la tenemos en el servidor, sin la extención TTF y en la segunda parte el tamaño de la fuente a utilizar, lo hice así porque me di cuenta que si ponia un tamaño fijo a veces no se veia bien la letra....

Ahora vamos a remplazar la parte del creado de las lineas de fondo, en el código van a encontrar algo así //Generate a funny background.. con un for abajito.., haa pues eso lo reemplazan por:

//Generate a funny background..
for ($i = 0; $i < 5; $i++) {
            $x1 = rand(0,140);
            $y1 = rand(0,30);
            $x2 = rand(0,140);
            $y2 = rand(0,30);
            $newColor = rand(0,count($colorPixel));
            imageline($image, $x1, $y1, $x2, $y2 , $colorPixel[$newColor]);
}
 

Si observan ahi estamos usando el arreglo colorPixel definido arriba..., con esto coloramos la lineas, asi ya no aparecen de color gris como antes!... y para que sea aleatorio el color tons tenemos la función rand face-smile.png

Y ahora sigue abajo de este for el siguiente código, este es para los pixeles de fondo!..

for ($i = 0; $i < 300; $i++) {
          $xp = rand(0,140);
          $yp = rand(0,40)
          $newColor = rand(0,count($colorPixel)-1);
          imagesetpixel($image, $xp, $yp, $colorPixel[$newColor]);
}
 

Ahora sigue la inicialización de las fuentes TTF, entonces abajo de

//And write it in a random position..
$text_length = strlen($text);
 

Ponemos lo siguiente:

if (function_exists('imagettftext')){      
                putenv('GDFONTPATH=' . JAWS_PATH . "include/JawsCaptcha");
                $fontsttf = true;
                $indexFont = rand(0,count($myFonts)-1);
                $showFont = $myFonts[$indexFont]['font'];
                $sizeFont = $myFonts[$indexFont]['size'];
}else
                $fontsttf= false;
 

La idea es primero verificar si el servidor tiene soporte para las fuentes TTF, si es negativo entonces utilizamos texto plano, tal y como esta actualmente el captcha (que por cierto no se entiende muy bien que digamos), pero si es positivo entonces inicializamos las fuentes definidas arriba en el arreglo myFonts y especificamos en donde estan posicionadas nuestras fuentes en el servidor (es lo del putenv GDFONTPATH)

Ahora sigue la parte en donde vamos a crear el texto, que es el For que esta abajo de todo esto...., antes del header, ahi remplazamos por:

for ($i = 0; $i < $text_length; $i++) {
                if ($fontsttf){
                        $x = $x + rand(15, 20);
                        $y = rand(17 , 30);
                        $angl = rand(-20,20);
                        imagettftext($image, $sizeFont, $angl, $x, $y, $color['darkgray'], $showFont, $text{$i});
                }else{
                        $fnt = rand(3,5);
                        $x = $x + rand(12 , 20);
                        $y = rand(7 , 12);
                        imagestring($image, $fnt, $x, $y, $text{$i} , $color['darkgray']);
                }
        }
 

Primero verificamos si esta activado el soporte para las fuentes TTF e imprimimos ya sea con soporte o sin soporte!.., y en el caso que se con soporte en la variable angl ahi especificamos cuantos grados queremos que gire el texto, por eso se tiene un random para que se vea más aleatorio todo el asunto.

Y listo!..., ya con esto tenemos un resultado más o menos como el que sigue:

Ahi se puede apreciar el resultado con las dos fuentes que les dije anteriormente!., ustedes son libres de poner las que más les agrade face-smile-big.png

Aquí pueden descargar el código fuente del Hack JawsCaptcha con las 2 tipografias., solo las copian en include/JawsCaptcha/ y en teoria debe de funcionar todo face-surprise.png (esta en RAR para comprimirlo más)

[actualizado] Aquí les dejo el hack para que funcione el Captcha Jaws con Minusculas y/o Mayusculas (alta mente recomendado tongue.png )

oviedo | Jaws | 29 Junio, 1:27pm | 3 comentarios

Despues de leer en el foro de Jaws un bug sobre Jaws relacionado con los privilegios del administrador del sitio he decidido actualizar mi Jaws y todos los sitios que utilizo Jaws a esta nueva versión 0.6.3

Y de pasada arregle el problema del texto feo en los captchas que a veces no se entendia ni madres...., la idea me basé del hack que realizo E-Corona llamdo Captchas II (a la e-Corona) solo que al parecer este hack es para las versiones 0.5 asi que lo tuve que modificar un poquitin para la nueva versiòn.., ahi luego les pongo los cambios que realice!...

Haa y les adelanto algunas nuevas caracteristicas..

  • Uso de fuentes TTF, digo, para que se entienda el texto que es la idea principal
  • Fuentes aleatorias, asi se pueden visualizar de manera diferente cada captcha
  • Agregado de mas colores en las lineas del fondo
  • Agregado de pixeles en el fondo!, con muchos colores!..

Por lo pronto con eso tiene para que se entienda un poco el texto para los humanos y no tanto para las computadoras!. face-glasses.png

oviedo | Jaws | 28 Junio, 11:36pm | Comentar acerca de esto

Solo eso faltaba tener SPAM en el sistema de bugs de Jaws!.. la verdad que esos spamers no perdonan nada!..., es más cuando quito lo de captcha de mi página en menos de 1 hora ya tengo mensajes con caracteres japoneces o una buena lista de medicinas extrañas! (supongo que ilegales) y yo se que a veces chafea el anti-spam que tengo aunque ya entendi que son caracteres en MAYUSCULAS y asi hay que ponerlos tal y como estan!.

Aquí les dejo un screenshot del mensaje que me llego a mi mail.

[phoo album="14" picture="419" title="spam_jawsbugs" class="imagen" size="2" border="0" align=""]

Ustedes como le hacen para no tener SPAM en los comentarios/chatbox de sus páginas?.., usan el anti-spam o se encomiendan a algun santo?. tongue.png

oviedo | Jaws | 19 Junio, 6:04am | 3 comentarios

Ya esta liberada la versión del PhooInsert para Jaws 0.6.1 con esta nueva versión espero que ya no tengan problemas con el widget HBox y otros más...,

Las instrucciones de instalación son faciles, solo descarga el archivo PhooInsert versión 0.5 descomprime los archivos en sus respectivas carpetas /gadgets/Phoo y /plugins/PhooInsert (claro! antes realiza tu respaldo de Phoo y si tienes algun otro hack dentro de esa carpeta tons no lo remplaces.., obvio no?..)

Ahora una vez copiado esos archivillos en el servidor sigue este manual grafico para instalar el Plugin y utilizarlo .., recuerda que es para la versión 0.6.1 pero igual te sirve para otras versiones.

Paso 1face-kiss.png * Picale al boton Administración de componentes.

[phoo album="21" picture="406" title="PhooInsert_Paso1" class="imagen" size="1" border="0" align=""]

Paso 2face-kiss.png * Picale donde dice plugins y despues donde dice Desinstalado y busca en la lista algo que diga PhooInsert y por ultimo donde dice instalar

[phoo album="21" picture="407" title="PhooInsert_Paso2" class="imagen" size="2" border="0" align=""]

Paso 3face-kiss.png * Despues dale un click en Instalado, buscas otra ves el plugin PhooInsert y le picas en la opción Usar en (la que esta en medio) y marcas donde dice blog y guardar!.. face-wink.png

[phoo album="21" picture="408" title="PhooInsert_Paso3" class="imagen" size="2" border="0" align=""]

Paso 4face-kiss.png * Ahora te regresas al Panel de Control (le puedes picar arriba al lado del dibujo del Phoo) y te metes al gadget Blog

[phoo album="21" picture="409" title="PhooInsert_Paso4" class="imagen" size="1" border="0" align=""]

Paso 5face-kiss.png * Te debe de aparecer al momento de escribir en tu blog un dibujo como el de la imagen (el que esta al lado de la carita), ahi le picas y te tiene que abrir una ventana (popup, para que cheques tu bloqueador de estos....), si por algo no te aparece este dibujo y te aparece otro menù, entonces tienes que cambiar la configuraciòn del editor, para esto te metes en Ajustes (el primer icono del panel de control) y despues donde dice Editor, seleccionas en el combo la opciòn El clasico editor de Jaws.

[phoo album="21" picture="410" title="PhooInsert_Paso5" class="imagen" size="2" border="0" align=""]

Paso 6face-kiss.png * Una vez abierta la ventana vas a ver a la izquierda todooos tus albums y a la derecha las imagenes de dicho album!...

[phoo album="21" picture="411" title="PhooInsert_Paso6" class="imagen" size="2" border="0" align=""]

Paso 7face-kiss.png * Entonces la idea es que selecciones una foto de la derecha para que cambie la ventana y despues puedas agregar la informaciòn..., te recuerdo que puedes ver las fotos de muchos albums a la vez.., solo presiona CTRL y dale click en los diferentes lugares de combo!...

[phoo album="21" picture="412" title="PhooInsert_Paso7" class="imagen" size="2" border="0" align=""]

Paso 8face-kiss.png * Ahora si como les decia, aparecen las opciones de la imagen a mostrar.., ahi cambien los datos a su gusto!.. recuerden que tienen 2 tipos de vistas!.., la miniatura que es la que se ve en la introduccion de las fotos de tu album y la Mediana que es cuando uno se mete al album es la imagen que se le da!.. y bueno, falta la original pero eso para la proxima versión face-smile-big.png bueno, cuando acaben pues le pican Insertar esta imagen y la ventana se debe de cerrar.

[phoo album="21" picture="413" title="PhooInsert_Paso8" class="imagen" size="2" border="0" align=""]

**Paso 9face-kiss.png * En el cuerpo de la entrada debe de aparecer un codigo como el de la imagen!..., con un poco de imaginaciòn podran decifrarlo!..., porfas no le muevan a nada!, ya que luego chafea todo!..aunque eso si!, pueden cambiar las propiedades de posiciòn (eso ya esta validado tongue.png ) y listo!.., a disfrutar de su PhooInsert!..., haa, recuerden que cuando le piquen a la imagen del Blog los enviará directo a la foto de la galería.., ahi tambien seria bueno para la otra versiòn que los mande a la página que ustedes deseen face-smile-big.png , o que no mande a ningun lado.. tambien no???.

[phoo album="21" picture="412" title="PhooInsert_Paso9" class="imagen" size="2" border="0" align=""]

Bueno!, espero que lo disfruten!.., y recuerden que para la ayuda de la instalaciòn o problemas con este Hack y con otros!.., esta el Foro de los usuarios de Jaws

oviedo | Jaws | 1 Junio, 2:39am | 3 comentarios

Listo!!.., ya contamos con una nueva versión para el plugin del PhooInsert el cual le he puesto versión 0.3 y que fue creado originalmente por Erik Corona

Algunas mejoras son:

  • Soporte para etiquetas de Borde y Alineación, tal como lo pidio Relenes en el foro de Jaws
  • No son obligatorias todas las etiquetas ni el orden de colocación.., las unicas obligatorias son Picture y Album, las demas son opcionales.
  • Compatible con la nueva versión de JAWS 0.6 face-smile-big.png

[phoo album="14" picture="332" title="PhooInsert0.3" class="imagen" size="2" border="0" align="middle"] Screenshot de la nueva versión

Descargar el PhooInsert0.3, adentro vienen las instrucciones y el codigo por si tiene algun otro hack en el gadget Phoo face-smile.png , disfrutenlo! y cualquier duda..., al foroooo

oviedo | General, Jaws | 6 Febrero, 10:53pm | Comentar acerca de esto

Existe una nueva versión para el Hack del PhooInsert en Jaws, ahora esta actualizado y funciona en la versiòn 0.6r3 ademas que se arreglo un bugcillo en el cual no funcionaba el plugin si se escribia el sitio con www o sin www... (gracias a ecorona).

Y que es este hack?.., mmh, facil facil.,.se trata de un plugin para que puedas agregar tus fotos de la galeria en tu blog de una manera facil y agradable, la cosa es que presionas el boton de fotos, luego aparecen tus galerias, seleccionas la foto, luego el tamaño y listo!..., se genera un codigo para luego desifrarlo y aparece tu foto con una liga a la galeria correspondiente. face-smile.png

Algo asì pueden ver como abre la ventana para agregar las fotos

[phoo album="14" picture="328" title="foto_phooinsert_ejemplo" class="imagen" size="2"]

Bueno a descargar el plugin hack ----> PhooInsert-JAWS0.6r3.zip

Ahi vienen las instrucciones, cualquier duda al foro de jaws

oviedo | General, Jaws | 3 Febrero, 12:43am | Comentar acerca de esto

Ahora que esta la fiebre de los planetas porque no tener uno para Jaws, osease todos los blogeros que usen Jaws, no importa que versión...

La liga! pos ta facil.. planet.jaws-user.com, si usas Jaws y no apareces en la lista!, mandame un mail joviedo _at_arroba_dot_gmail_dot_com

Cualquier comentario sobre el Planeta Jaws en el foro!...

oviedo | Jaws | 1 Febrero, 6:26pm | Comentar acerca de esto

Principal


Suscribete al servicio sindicalizado de Oviedos.com.mx

Top Blogs México

Conversación

oviedo: Hola Sergio, nomas me doy un tiempo ya que he estado super ocupado estos dias con el trabajo y completo el manualito de deny host!.

Saludos!.  
sergio morales: oye brother podrias terminar el tuto de deny host es muy interesante por ahi hay un error el cual
para nada serviria el deny host ya que blokearia el acces ssh

Saludos  
oviedo: Si ya ves ese Javascript con el IE no se llevan bien!! por cierto! si pones codigo Javascript para ver las contraseñas pues mas errores! jaja..., ni pex!! el Jaws bloqueo el codigo tongue.png  
erufenix: Por aquí pasando a saludar orales no pus muchos errores con javascript  
xiam: Que tal, te dejé un comentario pero no salió ni dió mensaje de error, en donde me puedo comunicar contigo?  
jesux: Saludos Olviedos, disculpa una pregunta. Como pones esos pedazos de cóface-smile-big.png igo en tus post ??  
oviedo: Ruth me temo decirte que no tengo ninguna licencia de SCO face-sad.png , porque mejor no te cambias a Linux o algun BSD??, asi no te preocupas por licencias.
Saludos  
Ruth: Hola, oye por favor, me urge una licencia del sco 5.0.7 por favor pasame la que tienes si? si? si? me super urge por favor!!!!  
lucas: les deseo lo mejor  
Zulma: Felíz día Joe face-smile.png
Te amo  
Jacqueline: Hola:
Yo tengo una parejita de xolitos, y estan super lindos tus perros, saludos desde el DF  
Phylevn: Interesante blog..
saludos face-smile-big.png  
Vael: Donde puedo descargar tu tema de jaws. También busco otros que no sean los que vienen en la instalación. Gracias. face-smile.png  
erufenix: Orales pues por aquí pasando a saludar, tenia un buen que no daba vuelta por estos lares, desde que dejo de funcar planet jaws  
FreeDownloas: Gracias por ciertas ayudas. Es un gusto ke la gente comparta conocimiento alrededor del mundo! Acabo de hacer funcionar algunos USB gadgets en VirtualBox  
pepe oviedo: Hola a todos! nuevamente funciona este mini chat!...,
Saludos desde Colima face-smile.png  
:



:

:

Escribe el código Captcha que estás viendo


Categorías

Amigos

Planeta Linux MX
sNov
Mis Algoritmos
Damog
Comic - Gil
Flash BlackFire - Pchan
Maop
BlacKNasH
Pelogo
Brenda

Mi musica

 
  © Oviedo José-ph
Powered by Jaws Project