(Página creada en el wiki 2007/07/31; movida a esta ubicación 2009/05/06.)
Al instalar Opacmarc todo queda en un único directorio:
opacmarc
apps
frontend: la interfaz pública del opac
config
[config de la aplicación]
i18n
[internacionalización de la aplicación (si se usa una base de datos para i18n, este dir no se usa)]
lib
[clases/librerías usadas exclusivamente por la aplicación]
[e.g. helpers propios de la aplicación (ver askeet)]
agrep.xis
agrep-multi.xis
modules
[A module usually represents a page or a group of pages with a similar purpose.]
[posibles módulos:
search/browse (bib/headings/class), navigate results
display pre-built lists/searches (e.g. novedades, textos de geometría)
reordenar una lista (debería aprovechar el cache)
display single record (registro, estilo, contexto)
send mail (acciones: procesar solicitud, enviar mail, presentar respuesta)
handle feedback (acciones: presentar form, procesar form, presentar respuesta)
show help, info, etc
exportar registros
generar listados para impresión
Otra estructura de módulos, de acuerdo con los objetos manipulados:
- registro bibliográfico
- listado de registros bibliográficos
- headings
- códigos de clasificación
- etc
]
modulo1 (ejemplo?)
actions
[un archivo por cada acción del módulo, o un archivo con todas las acciones]
[ver la sección DISPATCH en opac.xis para la lista de tareas posibles]
[ver http://catalis.uns.edu.ar/dokuwiki/doku.php/notas/llamadas_a_opac.xis]
bib-class-search.xis
browse-catalog.xis
browse-headings.xis
class-search-browse.xis
display-single-bib-record.xis
heading-match-in-bib-record.xis
keyword-match-in-bib-record.xis
keyword-match-in-heading.xis
mail.xis
novedades.xis
read-param.xis <== lee la configuración
save-mfn-list.xis <== la lista que debería ir al cache
show-suggestions.xis
zero-hits.xis
config
parámetros de config exclusivos del módulo
lib
clases/librerías utilizadas exclusivamente por el módulo
compact-dates.pft
dictgiz.pft
templates
[plantillas para las acciones del módulo]
[idea: en las plantillas (vista) podemos usar <do task=list> de wxis para recorrer una lista de registros;
la lista ya vendría creada desde la acción (controlador)]
** plantilla para la cabecera de una lista de registros bibliográficos
bib-list-head.htm
** plantillas para navegación por un conjunto de registros bibliográficos (paginación)
bib-nav.htm
browse-catalog-nav.htm
** acción: mostrar un registro bibliográfico
bib-record-1.htm
bib-record-2.htm
bib-record-3.htm
** plantillas para visualización de un registro bibliográfico (con css asociado)
aacr2.pft / clean-heading.pft
cita.pft
complete.htm
etiquetado.pft
mail.pft
marc.xis
novedad.htm
wh.pft
** formulario para solicitar envío de resultados por mail
mail.htm
** acción: mostrar un conjunto de headings (browse)
heading-browse-top.htm
heading-browse-middle.htm
heading-browse-nav.htm
** acción: mostrar un conjunto de headings (búsqueda)
h-search-top.htm
h-search-top-1.htm
h-search-top-2.htm
h-search-middle.htm
h-search-bottom.htm
** plantilla para visualización de un heading individual
headings.pft
** plantilla para visualización de códigos de clasificación MSC 2000
msc.pft
** plantilla para controlar el ordenamiento de los resultados
sorted-by.htm
** accion: envío de comentarios
feedback-form.htm
feedback-reply.htm <= respuesta al envío de un comentario
validate
archivos de config relacionados con la validación de formularios
modulo2
[mismos directorios]
templates
[plantillas globales de la aplicación (layout)]
** layout general de las páignas
opac-head.htm
opac-footer.htm
** formularios de búsqueda
form-simple.htm
form-advanced.htm
** plantilla para mensajes de error
error.xis
** archivos en cgi-bin/opac/home/, cgi-bin/opac/banner/, cgi-bin/opac/about/
backend: la interfaz administrativa del opac
[puede ser igual a la interfaz pública, con el agregado de algunas funciones adicionales]
config
i18n
lib
modules
editConfig
config.xis
testOpac
bib-test-cond.xis
extract-keys.xis
templates
control-form.htm
batch
[scripts para mantenimiento]
update-opac.sh
todo el contenido de opacmarc-admin/opac/
todo el contenido de opacmarc-admin/common/
conf.sh (?)
cache
[resultados de búsquedas recientes? podrían ser los archivos temporales que se generan con cada búsqueda]
config
[configuración global del proyecto]
local.conf
opacmarc.conf
data
[bases de datos?]
[archivos de texto con contenido estático, e.g. "Acerca del catálogo"?]
common/
opac/
demo/
mibase/
doc
[documentación (en qué formato?)]
lib
[clases/librerías externas, común a todas las aplicaciones del proyecto]
bib-sort-key.pft
doc-type.pft
urlencode.pft
wxis?
log
[logs del opac]
bases/opacmarc/opac/access_logs/
plugins
En symfony, los plugins son extensiones al framework, que pueden ser reutilizadas por cualquier aplicación.
No deben confundirse con extensiones a una aplicación, que es lo que me interesaría para el opac
(p.ej. para que un usuario pueda agregar un nuevo estilo de visualización)
test
[p.ej. testear que no haya links rotos, que funcionen correctamente ACTAB, UCTAB, FST, sort, etc]
web <== aquí apunta el DocumentRoot del Virtual Host en Apache
css
todo el contenido de htdocs/opacmarc/common/css/, htdocs/opacmarc/opac/css/
images
todo el contenido de htdocs/opacmarc/opac/img/
js
todo el contenido de htdocs/opacmarc/common/js/, htdocs/opacmarc/opac/js/
uploads
[archivos subidos por usuarios (no aplicable para el opac, sí para Catalis)]
[y supongo que aquí aparece el archivo index.php (controlador frontal)]
opac.xis <= hace las veces de controlador frontal
[.htaccess, robots.txt, favicon.ico, página estática (e.g. "Sistema temporalmente no disponible"]
opacmarc symfony