Este blog esta destinado para la comunidad desarrolladora de software, en el podrán encontrar trucos, atajos o consejos de diferentes lenguajes de programación o frameworks, tanto de tipo desktop como web. Si quieres participar como editor por favor hacerlo saber escribiendo un correo a cualquiera de los editores.

domingo, 20 de febrero de 2011

Symfony cambio de theme

Symfony integrado con jquery cambio del theme
mediante el uso de un plugin sfAdminThemejRollerPlugin

Guia rápida

instalar el plugin

symfony plugin:install sfAdminThemejRollerPlugin --stability=beta
symfony cc
symfony plugin:publish-assets
symfony cc

generar los modulos del admin

symfony doctrine:generate-admin proyectprincipal Categoria --module=admin_categoria

usar el plugin
y en el archivo generator configurar el parametro theme: jroller entras en el archivo
apps/proyectprincipal/modules/admin_categoria/config/generator.yml

generator:
class: sfDoctrineGenerator
param:
model_class: Categoria
theme: jroller

HECHO





muy interesante y bonito, claro que vi que ay algunos errores por alli en las acciones , pero puede que sea ignorancia mia de como usar el plugin.

Poner datos dentro de columnbar de amChart

Para poner valores dentro de las barras de una gráfica hecha en amChart.
configure los parametros dentro de column

<column>
<data_labels>
<![CDATA[{value}]]>
// [] ({title} {value} {series} {percents} {start} {difference} {total}) El dato a mostrar dentro de la barra.
</data_labels>
<data_labels_position>inside</data_labels_position>
// [outside] (inside, outside, above). si quiere que el valor de la barra aparesca adentro, arriba o en el centro.
<data_labels_always_on>true</data_labels_always_on>
//[false] (true / false) Si quiere que los datos esten dentro de las barras
</column>

viernes, 18 de febrero de 2011

librerias javascript

Listado comparativo de librerías de javascript

Aqui les dejo la lista de librerias de javascript que me encontre en wiki, muy completa por ciertom compara desde las licencias hasta los componentes que trae.

http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks

A mi me gustaron
extjs
dhtmlx

miércoles, 9 de febrero de 2011

Tutorial Git (Repositorio)

Primero hay que crear una cuenta con github,
esto se puede hacer en github.com

Después en Dashboard->Nuevo repositorio
allí creamos el repositorio del proyecto.

Después vamos a agregar una llave para el equipo sobre el cual vamos a trabajar, para esto vamos a configuración-> Llaves publicas SSH->Agregar otra llave pública
allí habrá unos campos en donde agregaremos el nombre de la maquina y la clave ssh,
para generar esta clave abrimos una consola y ejecutamos el comando

$ ssh-keygen -t rsa -C "usuariocuentagit@correo.com"

luego accedemos a la carpeta .ssh que se encuentra en la carpeta del usuario,
allí hay un archivo llamado id_rsa.pub, la clave que necesitamos ingresar en el campo de la llave para agregar la llave del equipo al repositorio.

Después de hacer esto nos situamos en donde vamos a trabajar y clonamos el reposotorio

$ git clone urlproyecto /// la obtenemos de github

allí ya tenemos la carpeta del proyecto, después entramos a ella y podemos empezar a trabajar, ya sea creando un proyecto con Symfony u otro framework.

para subir los datos al repositorio ejecutamos desde la raíz del proyecto(repositorio)

$ git add -A /// para agregar todos los cambios al repositorio local
$ git commit -m "mensaje alusivo al commit"
$ git push origin master ////para agregarlos al repositorio web

para descargar los cambios de los otros colaboradores

$ git pull

para agregar colaboradores al repositorio, seleccionamos el proyecto desde github y le damos administrar->Colaboradores, y allí agregamos los login de github de los colaboradores del equipo de trabajo.

Hay que tener en cuenta que cada uno debe crear una llave ssh para poder acceder al repositorio, si ya han agregado una llave a su repositorio y van a colaborar en otro proyecto desde el mismo equipo(computadora) no es necesario crearla nuevamente.

Recuerde que se debe generar una llave publica por cada equipo sobre el cual se vayan a subir cambios.

miércoles, 2 de febrero de 2011

Problemas de permisos al subir archivos al servidor

Al subir archivos al servidor se presentan generalmente problemas de permisos,puedes solucionar este problema de varias formas.




  • dar todos los permisos a la carpeta , debo aclarar que esto no esta bien porque no es seguro

    en linux puedes utilizar el siguiente comando:

    chmod 777 carpeta_uploads //carpeta a la que estas subiendo los archivos



  • volver al usuario que ejecuta el servidor propietario de la carpeta, generalmente es el usuario www-data (lo puedes encontrar en la configuracion de tu servidor, en mi caso apache) y listo

    en linux puedes utilizar el siguiente comando:

    chown www-data carpeta_uploads //carpeta a la que estas subiendo los archivos

    y puede verificar con un ls -all el cambio de propietario


No tenia ni idea de la segunda opcion y me parece muy interesante,(tambien debo agradecer al profe mauricio por comentarnos de esta solucion).

Extjs problema con flash (amchart)

Se sobremonta en flash sobre el combobox (extjs)
Bueno teniamos unos charts hechos en amchart y integrados con extjs, pero teniemos problemas con los componentes de extjs en los lugares donde teniamos las graficas, los combobox se cortaban es flas se sobreponia, intentamos lo del z-index y no funciono, buscamos y encontramos que generalmente las librerias que implementan los charts tiene un paramentro wmode, le das a este chart - setParam(wmode, "opaque"); y listo todo vuelve a la normalidad.


Nota: no estaba utilizando el plugin que tienen en extjs para flash.

Me parece que amchart es una libreria para chart muy facil de utilizar para los que necesiten tortas, barras, disperción, etc , y tiene la mayoria de componentes en 3d

symfony , base de datos postgres codificada en ascii y Ajax

Hola a todos

Les cuento, necesitaba trabajar con symfony sobre una base de datos postgres codificada en sql_ascii, estaba utilizando extjs(trae Ajax ya implementado), y cuando mandaba una lista de datos a la pagina principal, todo lo que tenia tildes o ñ no aparecia es decir mandaba null, pero si imprimia con echo($dato) me aparecia con un caracteres de desconocido, lo primero que pensamos con gus fue que era el charset, y no era, buscando con gus encontramos que el problema era que las peticiones ajax lo que traen lo interpretan como utf-8 y todo lo que era raro desaparecia porque symfony internamente parceaba las cadenas con una funcion en php que ponia null en todo lo que tenia caracteres especiales.

La solucion

  • utf8_encode para mandar los datos


  • utf8_decode antes de ingresar a la base de datos es decir cuando hecemos objPeer-setAtt(utf8_decode($param));

  • poner database.encoding = iso-8859-1 en los archivos de configuracion de symfony propel.ini y database.ini