Comenzando con personalizaciones
Hay dos casos de uso principales; el primero es la creación de un nuevo proyecto personalizable y el segundo es convertir un proyecto existente en personalizable. Luego de que un proyecto se hace personalizable la forma de trabajo en desarrollo del mismo sigue manteniéndose igual, salvo por el nuevo esquema de extensión de clases.
Creando un proyecto personalizable
La creación de un proyecto personalizable se hace a través del comando proyecto crear. Para crear el proyecto ejecutamos:
xx@yy:~$ toba proyecto crear -p PROYECTO -x
Luego de este comando ya tenemos un nuevo proyecto personalizable sobre el cuál podemos comenzar a trabajar.
Convirtiendo un proyecto existente en personalizable
Antes de ver los comandos correspondientes para hacer una conversión vale aclarar que es un proceso delicado ya que Toba modificará el código existente de su proyecto, por lo tanto siempre es bueno probar el funcionamiento de estos comandos en una instalación de pruebas. A continuación veremos una serie de comandos para convertir un proyecto
xx@yy:~$ toba proyecto extender_clases_toba -p PROYECTO
Este comando crea clases vacías dentro del proyecto que extienden a las clases de los componentes de toba. Esto quiere decir que ya no se debe extender de Toba directamente, sino, de las clases que extienden a las de Toba dentro del proyecto. Estas clases se ubican dentro de la carpeta del proyecto php/extension_toba/componentes y su nombre seguirá el siguiente patrón PROYECTO_COMP.php, donde COMP es el nombre del componente de Toba (ci, cn, ei_formulario, etc...). El siguiente comando a ejecutar es:
xx@yy:~$ toba proyecto personalizable -p PROYECTO
xx@yy:~$ toba proyecto exportar -p PROYECTO
Este comando nos pregunta si deseamos agregar el alias a toba.conf para los recursos personalizados; notemos que si no agregamos el alias los recursos personalizados (imágenes, css, etc...) no serán accesibles a través del navegador. Por lo tanto, si desea no publicarlo deberá crear el alias a mano a la carpeta PROYECTO/personalizacion/www para que esta sea accesible.
De esta manera hacemos personalizable el proyecto, pero el output del último comando nos indica que debemos revincular las clases. Para saber a que se refiere se recomienda la lectura del nuevo esquema de extensión de clases. Finalmente ejecutamos el comando:
xx@yy:~$ toba proyecto revincular -p PROYECTO -d toba -a personalizacion
Listo!!, nuestro proyecto ya es personalizable.