« Anterior - Versión 8/18 (diferencias) - Siguiente » - Versión actual
juanpablo -, 18/04/2011 18:52


Some notes for future development

= Juan Pablo =

Prioridades * ~orden de los articulos~ Arreglado en [df6be40513bc] * ~rss~ * buscar una forma de agrupar las imagenes y otros objetos para la selecion de contenidos relacionados, (u otras situaciones que tengan el mismo metodo de seleccion): cuando se selecciona una imagen como objeto relacionado aparece un menu de seleccion con la lista plana de todas las imagenes, que si son cientos se harian dificiles de elegir. Una solucion seria que aparezca un menu intermedio donde se seleccione, por ej, una categoria primero, y abajo se carge un menu con las imagenes correspondiente. Se me ocurre que en sitios con mucha carga de contenido esto se puede convertir en un problema pronto * Repeticion de menus desplegables de colecciones: No se puede listar dos veces un menu de categorias, o un mismo menu, ni siquiera en dos regiones diferentes. el problemas es que se repite el id lo cual es un error hetml. Una solucion seria colocar el nombre de la region en el id del item, por ejemplo `id="menu-principal_menu"` por `id="menu-principal_menu-header"` * cantidad de items por pagina más configurable, caso tipico: una "galeria de imagenes" donde en un bloque de portada se muestren las ultimas 3 imagenes subdas, y al hacer click en el titulo de la categoria, ingresar a la Galeria donde el cada pagina muestra 15 o 20 imagenes por vez (esto se podria resolver con vistas customizables que tengan su propio template y su propio paginado?) no tan prioritario
(lo mas importante empieza en negrita) === vistas y templates ===
  • custom views que permitan hacer templates especiales sin que esto signifique modificar todas las vistas de teaser_list, labaled_icon etc.
  • mas sobre el orden de los objetos: generar opciones para configurar el orden de listado, puede haber un sitio que tenga noticias que necesiten el listado ultimo publicado primero en la lista, pero tambien una agenda con fechas futuras, donde la fecha mas proxima (mas antigua) debe estar primero, y las mas a futuro despues.
  • templates: evaluar la posibilidad de pensar los templates como parte del tema, es decir es muy problable que los templates especiales creados para un tema especial no funcionen en otro, por lo tanto el lugar mas logico es dentro del mismo tema.
  • vista de items de una categoria, donde se listen todos los items que tienen esa categoria y los que estan en categorias hijas de esa categoria -> por ej: categoria "noticias" con tres hijos: economia, politica y sociedad, en el menu jerarquico "noticias" lista todos los items de sus categorias hijas (mas los que solo esten en noticias), es decir no seria necesario darle las dos categorias, padre e hija, al objeto, como es necesario ahora para que aprezca listado en la categoria padre.
=== para blogs ===
  • agregar pingbacks (http://es.wikipedia.org/wiki/Pingback)
  • moderacion e comentarios: Django tiene una funciones para moderar comentarios bastante sofisticadas (http://docs.djangoproject.com/en/dev/ref/contrib/comments/moderation/). Una opcion temporal es poner un item en la configuracion del sitio que determine si los comentarios por defecto estan publicados o sin publicar:`'is_public' = False`
  • configuracion sencilla de las funcionalidades mas comunes de los blogs, dos importantes: "ultimos comentarios" y "archivo" (entradas agrupadas por año y mes)
  • levantar contenidos desde otras fuentes (feeds)
=== tipos de contenido ===
  • audio o video embebido, que genere el html para el embebido automaticamente, y el video pueda aparecer embebido en distintos tamaños segun donde se lo muestre.
=== menus ===
  • opciones de titulos y texto introductorio (con html) arbitrarios para los menus y regionview, por ejemplo que un menu pueda tener titulo, o una vista un titulo diferente al nombre de la categoria q ahora se puede poner por defecto... para que serviria esto? se podria resolver parcialmente el caso descripto en el item anterior, una categoria "imagenes en portada" nos permitiria seleccionar arbitrariamente que y cuantas imagenes poner, y luego el titulo puesto manualmente apuntar a la galeria de imagenes
  • ~**opciones para vistas de menu**, menu jerarquicos expandibles y no expandibles~
  • ~**items de menu con la opcion //inactivo//**, asi se puede hacer un menu jerarquico donde el item padre puede funcionar de titulo, y no necesariamente tenga que llevar a algun lado (no tiene link).~ (ya esta en el primer item)
  • ~**agregar un campo a los items de menu**, para que se pueda poner una descripcion que luego aparezca en el "title" del link, que los navegadores lo muestran como un texto recuadrado en amarillo emergente (y los buscadores los indexan con mucho interes)~ (ya esta en el primer item)
=== formato de contenido ===
  • usemos por defecto textile, me parece el mas practico, como para //educar// a los usuarios contra el copy paste con formato que puede provocar un caos de estilos.
  • una solucion para evitar problemas de estilos con el html copypasteado es filtrar la propiedad y etiqueta syle, o sea style="..." entro de las tags y tambien la tag <style>. Otra que se pede filtrar es <font> (aunq esta depreciated). Quiza no son tantas las etiqquetas a filtrar que puedan ser problematicas.
=== desarrollo ===
  • reordenar el arbol de archivos de instancia, sacando de //cyclope_project// lo que no maneja mercurial (base de datos y uploads)
=== admin ===
  • //memoria// en los items de menu y categorias: que el listado articulos por categorias o items de menu por menus, quede siempre en el ultimo elegido, esto es especialmente molesto con items de menu, donde siempre vuelve a los items de menu agrupados segun el primer menu de la lsta y no el grupo que uno acaba de editar.
  • Visor de Archivos: poder mover los archivos de una carpeta a otra mas facil e intuitivamente (ahora hay que renombrarlos con el nombre de la carpeta).
  • Agregar un menu general o accesos mas rapidos a la seccion admin para tener mas a mano los items, es decir a veces hay que volver al dashboard a cada momento para ir de una seccion a otra (yo me iba a encargar de esto).

= Nico =

Features * View options -> que sea una secuencia de var=value, ... parseada a un dict. * category_teaser_list debería agregar una clase CSS por cada categoría a la que pertenece el contenido * Sería bueno poder definir formularios con campos arbitrarios y con "action" seteable. * generalizar más contact form para que se pueda construir un formulario cualquiera (como en Wordpress) y que sea un basecontent para poder poner forms en regiones. * agregar fecha de publicación y "visible desde" a !BaseContent y arreglar Article. * ~agregar Meta.ordering por fecha de publicación.~ Arreglado en [336937e6cd6d] * aregar una //action// que permita eliminar una categoría a todos los elementos seleccionados, y que estén filtrados por esa categoría. Revisar: Cómo saber la categoría filtrada y cómo no mostrar la acción cuando no se está filtrando. Bugs * RSS - Si visitamos una url incorrecta, tipo rss/zaraza/ pincha. qué tiene que devolver link() de un feed? * Los teaser de medialibrary no cortan la cantidad de palabras del texto * ~el listado de categoría ordena los teasers mal. debería ser por creation_date~ * Cuando se borra un contenido comentado, se tienen que eliminar los comentarios! * el chained select menu/menuitem muestra mal organizado el tree. está bien el lvl, pero no el orden y se ve raro * las opciones de Author muestran menuitem, menú, category... * Cuando borramos un contenido que estaba puesto como objeto de contenido en un esquema o en un menuitem, deberíamos borrar / limpiarlo * El teaser list en una región no tiene que mostrar la navegación por categorías. * chainedselect de admin de menuitem no está mostrando el tree como corresponde. * el template de form de comentarios muestra errores cuando se llena mal? * las Categorías no deberían poder cambiarse de Colección Tasks * RSS - Ver cómo es el API de RSS feeds y entenderlo bien, para implementar algo coherente. Por ejemplo, un cliente me puede preguntar qué feeds son nuevos desde tal timestamp? * RSS - ver qué hace el tag <link ... type="application/rss+xml"> y si lo estamos usando bien. * Autor no hace falta que sea obligatorio en article * agregar tipo de contenido !HtmlBlock o RawHTML separado de página estática. ? * ~cron de regeneración de índices de haystack u otro método... signals?~ Se usan RealtimeIndex * sacar el javascript del bloque after_related_content, de nuestro template admin/change_form.html y hacer que sólo cargue lo que corresponde a cada modelo. * tocar django-admin-tools para que no muestre los tabs correspondientes a grupos para los que el usuario no tiene ningún privilegio. * revisar con cada versión de Django que no hayan cambiado los templates que estamos overideando * mover todos los javascript del change_form general a los templates específicos de las apps/modelos a los que corresponden. * generalizar drag_drop.js (hay que poder pasarle parámetros de a qué se bindea) * ver si falta teaser y labeled icon de: regularfile y staticpage y revisar externalcontent