|
CMSConfiguracionStyles_Grupo3
Discutimos como solucionar un problema ;) "Administrar el/los diseños del CMS".
IntroducciónPartiendo de los Requerimientos y de lo que tenemos asignado, nuestro trabajo es implementar un sub-sistema para administrar el diseño del sitio, para lograrlo vamos a usar esta pagina para hacer el primer boceto de la solución y dividir el trabajo para los desarrolladores actuales y para todos los que quieran sumarse. Paso a documentar una de las posibles soluciones. Posible SoluciónLa idea es controlar todo el diseño con un archivo CSS, el sitio tendría un "default.css", estructura base para los diseños, luego se podrán hacer copias de este (se haria con cada nuevo sub-sitio), luego implementariamos un formulario capaz de leer el archivo y mostrar las opciones para editarlo. Si tenemos por ej.: body {
background: url('img/bg.png') center repeat-y #69842e;
font: 75% verdana, lucida, sans-serif;
margin: 0;
padding: 0;
color: #333;
text-align: center;
}
#banner {
background: url('img/bg-head.png') center repeat-y #ffc600;
margin: 0;
padding: 0 0 40px 0;
position: relative;
overflow: hidden;
}
"body" y "banner" serian nuestros objetos (por ponerle algun nombre ya que podrian ser etiquetas clases o convinaciones de estas dos), "background", "padding", "font", "position"... serian las propiedades de los objetos y por ultimo estarinan los valores para cada propiedad, "center", "relative", "#ffc600". Toda esta información y sus relaciones deberian guardarse en la base de datos y seria lo primero que tendriamos que definir. Las vistas tendrian que diseñarse solo con (sin tablas) para que tengamos todo el control con nuestro archivo. Nuestro Trabajo:
Su tarea:Ahora les toca a ustedes dar su opinion, nada esta definido todavia solo es la idea que yo tengo sobre como encarar la solución, si tienen algo mejor solo proponganlo de la misma fomra que yo lo hice y lo discutimos, todo lo que venga para hacer de esto un trabajo sencillo y productivo es bienvenido, lo necesitamos ! ;). Por otro lado si les gusta esta solición que propongo me gustaria saber principalmente ¿como diseñarian las tablas? y ¿que datos guardarian en cada una de ellas?. Tenemos una semana y media (15 de agosto) para terminarlo a si que solo nos tomamos dos dias para definir esto que planteo aca y para que cada uno sepamos que parte del problema nos toca (pueden ir seleccionando alguna porcion que mas les guste asi no lo tengo que hacer yo al azar). Un saludo, lisandro. Actualizado el 08/08/07Bueno... sacando un poco en limpio lo que tenemos que hacer es un mini y sencillo editor css, en un segundo paso será un ABM completo pero por ahora solo nos vamos a concentrar en la "M", o sea que solo vamos a permitir editar y las otras dos opciones (A=Alta,B=Baja) seran implementadas en la segudna etapa cuando se puedan crear sub-sitios. 1 - Diseño del "default.css" y del formulario para poder editarlo. lisandro2 - Diseño de las tablas para guardar las etiquetas, propiedades, valores y unidades de un CSS. Aarón3 - Programar el controlador que lea la db y carge los datos en el formulario. Antonio4 - Programar la accion para el UPDATE con los datos del formulario, imagino que este es un buen momento para generar el ".css". Marcos Trate de hacerlo lo mas parejo posible, si alguno termina rapido seria bueno que colabore con otro ya que tenemos solo una semana para que funcione. Desde ahora en más dudas y comentarios preferiblemente en el grupo3. Saludos, lisandro. |
Sign in to add a comment
Yo pregunto: Ya revisaron el sistema de modularización de Zend Framework? Digamos que es la solución built-in de Zend para la idea de módulos (sub-sitios):
http://framework.zend.com/manual/en/zend.controller.modular.html
Se puede diagramar de esta manera, separando Controllers específicos en otros directorios, y a la hora de manejar Templates de Vistas, sacar de la Base de datos la especificación de los CSS que se quieren hacer... incluso haciendo un simple ABM de CSS por Módulo.
Saludos.
Impecable Pablo, tampoco estaba al tanto de este funcionalidad.
Hola Pablo El tema de los sub-sitios (Modulos) esta programado para la segunda etapa y la solución que mencionás me parece la mejor manera de implementarlo.
Sobre lo del CSS, me parecia que habia algo que se estaba complicando innecesariamente. Trabajar con los datos directamente guardados en la db nos va a facilitar la lectura (ya no tenemos que leer un ".css") ya sea para aplicarlos a un "template" o para hacer un ABM, te agradezco el aporte seguramente lo vamos a aplicar.
A los desarrolladores del grupo 3 les pido su opinión asi ya ponemos las manos en la masa.
Saludos, lisandro.
Me parece muy bueno el sistema de modularización de ZF pero en nuestro caso vamos a contar con módulos "dinámicos" y ahí se me presenta la duda de cuál sería la mejor solución.
A ver... detallemos medianamente la funcionalidad de los sub-sitios... Cómo se quiere dar de alta un sub-sitio? desde un menú administrativo? Subsitios->Nuevo Subsitio ? Copiando el código de un subsitio(controllers) a una carpeta? uplodeando un .zip con el código+vistas?
La pregunta es, llegaron a determinar este punto, porque es fundamental. O se pensaron los Sub-sitios con la MISMA funcionalidad del sitio "general" (o sea, la de cargar y mostrar artículos, no mucho más que eso) pero con otro diseño? porque si es eso, el problema es de simple funcionalidad... el problema comienza cuando el susodicho sub-sitio no comparte código, porque es un foro, un blog, un directorio de links o uno de descargas...
SI esto fue definido ya en otro lado, les pido mil disculpas por no haberlo leido, pero quizás la única manera de hacer un sub-sitio totalmente dependiente de un SITIO, es hacer que el sitio sea precisamente, un CMS, un gestor de Contenidos Genéricos (Content) y que los controllers no sean nada más que handlers para esos tipos de Contenido, de esa manera, un Foro solo sería un handler de Contenidos tipo "thread", un Blog sería un handler de Contents tipo Post, y un Directorio sería un Handler de un tipo de contenido llamado Link/LinkDir?.
Disculpen las disgreciones, se que no estoy dando una mano acctivamente con código, pero este puede ser un camino a seguir para este CMS.
Saludos.
La funcionalidad es clara, no así la forma de implementarla ni se sabe concretamente como aprovechar Zend Framework para esto.
La idea es poder desarrollar un CMS y alojarlo en un dominio base como sitio.com. Posteriormente poder crear "sub-sitios" que aprovecharán todo lo desarrollado (abm de noticias, abm de faqs, abm de usuarios, etc) y se crearán en una ubicación distinta (sitio.com/subsitio1), y manejando información independiente al sitio original (el sitio y los subsitios contendrán noticas distintas, etc).
Lo que no me queda claro hasta el momento es como implementarlo y si ZF provee alguna solución para esta situación.
Por lo que dices, Pablo, habría que investigar el "Zend Controller Modular"
Por lo menos la intro de la documentación es bastante clara (como así también el ejemplo que aparece a continuación y muestra un arbol de directorios):
"The Conventional Modular directory structure allows you to separate different MVC applications into self-contained units, and re-use them with different front controllers. To illustrate such a directory structure:"