X-Git-Url: https://git.llucax.com/z.facultad/75.43/tp1.git/blobdiff_plain/b2d0b7d74263046e66139916ecf5c3cada2ff7c4..HEAD:/docs/informe/informe.html?ds=inline diff --git a/docs/informe/informe.html b/docs/informe/informe.html index c6b4e31..ac1d567 100644 --- a/docs/informe/informe.html +++ b/docs/informe/informe.html @@ -32,8 +32,8 @@
Esta página es el punto de partida del sistema. Normalmente se
encarga de mostrar el
-
Es la página que realmente se encarga de hacer el
login. Debe ingresarse el código de usuario
@@ -70,7 +71,7 @@
-
Esta página, al igual que index.php, no
tiene contenido propio, sino que se encarga de borrar todos los
@@ -80,7 +81,7 @@
Si el usuario no existe, o si está mal el password, etc, se muestra
el correspondiente mensaje de error.
Esta página asocia a un integrante del grupo (presente en el archivo
int_2005.txt si es socio o ase_2005.txt si es asesor). Si el sistema
@@ -95,7 +96,7 @@
-
Esta página muestra el log de actividades del
usuario. Permite elegir la fecha desde la cual se quieren ver las
@@ -105,7 +106,7 @@
-
En esta página el administrador puede agregar créditos a los
usuarios. Para realizar esta tarea el administrador debe ingresar su
@@ -121,7 +122,7 @@
-
A través de esta página un administrador puede ceder sus
permisos de administración. Una vez cedidos, este usuario dejará de
@@ -134,107 +135,156 @@
-
- Esta página lista las preguntas ingresadas en el sistema. Para cada
- pregunta, se muestra la fecha de creación, el nombre de autor, con su
- correspondiente foto, la pregunta en si, la posibilidad de accederá a
- todas las respuestas para dicha pregunta, así como también la posibilidad
- de responder la pregunta ( solo en caso que quien esta logueado en el sistema
- no sea el mismo usuario que formulo la pregunta ). El listado de preguntas
- aparece paginado cada 2 ( se muestran dos preguntas por pantalla ). Debajo de
- las preguntas aparece el navegador. En caso que el usuario logueado sea un
- administrador, en la parte inferior de cada pantalla aparece un link que permite
- acceder a la página de baja de preguntas.
+
+ Esta pagina muestra la lista de preguntas ingresadas al sistema. Permite acceder
+ a las respuestas, y en caso de ser posible, darlas de alta. A los administradores,
+ tambien les permite acceder a la baja de preguntas.
- El listador de respuestas muestra ordenadas por ranking las respuestas a una
- pregunta seleccionada. Utiliza el paginador, al igual que el listador de preguntas,
- y también lo hace de a dos respuestas por pantalla. Muestra la información del usuario
- que genero la respuesta ( foto y nombre ), la respuesta y el ranking de la misma. Si la
- respuesta todavía no fue evaluada por el autor de la pregunta, muestra un mensaje que
- indica que no hay ranking para esa pregunta. Si el usuario que esta accediendo a la lista
- de respuestas es el mismo que formulo la pregunta y todavía no calificó a la misma, aparece
- un botón que lo redirecciona a la página de calificación de preguntas.
+ Para cada una de las preguntas, se pueden ver desde esta pantalla las respuestas dadas
+ de alta. Las muestra por ranking. En caso de que la respuesta no haya sido calificada
+ aun y quien esta logueado es el autor de la pregunta, permite acceder a la pantalla de
+ calificaciones.
- Desde el menú de la aplicación se puede acceder a esta página. En caso de que el
- usuario logueado tenga los créditos para hacerlo, podrá formular una pregunta que
- se publicara en la lista de preguntas ( faq.listarPreguntas.php ). Si el usuario no
- contara con los créditos suficientes, un warning lo alertara y le sugerirá que
- pida créditos al administrador del sistema. El usuario podrá ingresas desde esta pantalla
- tantas preguntas como créditos tenga.
+ Permite dar de alta una pregunta en el sistema. Es necesario que el usuario sea un asesor, o
+ tenga los creditos suficientes.
- Desde el listado de preguntas se puede acceder a la pantalla que permite responder
- la pregunta. La misma muestra en el encabezado la pregunta que se esta respondiendo.
- Al lograr un ingreso satisfactorio de una respuesta, aparece un mensaje que avisa al
- usuario que su respuesta fue dada de alta en el sistema. Esta respuesta quedara pendiente
- de calificar por parte del autor de la pregunta que se esta respondiendo. Cualquier usuario
- logueado en el sistema puede acceder a responder preguntas. Únicamente no podrá responder una
- pregunta el autor de la misma
+ La pantalla permite ingresar la respuesta a una pregunta seleccionada. Esta respuesta deberá
+ ser calificada por el autor de la pregunta posteriormente, y le permitirá al que responde, obtener
+ créditos.
- La pantalla de calificación de respuesta solo puede ser accedida por el autor de
- la pregunta que tiene dicho ítem como respuesta. En esta pantalla, desde un combo, se
- puede elegir alguna de las cuatro categorías de calificación ( a cada una le corresponde un
- puntaje ). Inmediatamente se le acreditara a quien pregunta tantos créditos como puntos valgan la
- calificación de la respuesta. La respuesta solo podrá ser calificada una vez, luego de ser calificada,
- desaparecerá el botón que permite acceder a la pantalla para ese ítem.
+ A esta pantalla solo accede el autor de la pregunta. Desde la misma puede calificar la respuesta.
+ Dependiendo de la calidad de la respuesta, quien la formulo podra obtener mas o menos créditos, para
+ de esta manera poder efectuar nuevas preguntas.
- Desde esta pantalla, los administradores pueden dar de baja una pregunta. De todas formas la pregunta
- seguirá existiendo, con sus respuestas, pero no sera mostrada mas por el listador. Para acceder a la pantalla
- de baja de preguntas, se debe hacer click sobre el link que aparece en la página listarPreguntas.php. Este link
- solo aparece en caso que el usuario logueado tenga privilegios de administrador.
+ La pantalla de baja de preguntas solo puede ser accedida por un administrador. Permite que la pregunta
+ y sus respuestas no sean listadas mas, pero queden logueadas en un historico.
+ Los siguientes dos graficos describen como fue pensado el sistema a nivel
+ clases, y como se integrarian las diferentes partes, para que, pese a contar
+ con tres modulos separados, quede una unica aplicacion homogenea. Como punto de
+ partida entonces se realizaron estos dos graficos que sirvieron como guia, y
+ a lo largo del desarrollo fueron actualizandose. Se adjuntan aqui sus versiones
+ finales.
+
+ El diagrama de clases se penso con el fin de poder reutilizar la mayor cantidad
+ de codigo posible, y de dividir de forma mas clara las tareas. La idea de estas
+ clases, principalmente, es que sean las entidades que son persistidas en los archivos
+ de texto, para tener un manejo mas sencillo y eficiente de la informacion.
+
+ Este esquema permite ver la interrelación entre las diferentes pantallas del sistema
+ y como se puede acceder de una a la otra. Ademas, da una idea a alto nivel de como funciona
+ y como aparecen integrados los diferentes elementos.
+
Todos los archivos del sistema se almacenan en el directorio data.
Varios archivos son creados en tiempo de ejecución por el
@@ -395,7 +445,7 @@
Este archivo tiene formato CSV. y se crea en
tiempo de ejecución. A medida que se van dando de alta las
- preguntas, se agrega una linea al final. Se guarda toda la información
+ preguntas, se agrega una línea al final. Se guarda toda la información
necesaria para poder operar con las preguntas. Cuando una pregunta se
da de baja, no es eliminada de este archivo. De esta forma,
queda un registro histórico de las preguntas que fueron dadas de alta en
@@ -449,6 +499,50 @@
+ Este archivo tiene formato CSV. Se va cargando por los administradores durante
+ la ejecución del sistema.
+ Los campos del archivo son:
+
+ Este archivo tiene formato CSV. Se va cargando por los asesores/socios durante
+ la ejecución del sistema.
+ Los campos del archivo son:
+
+ Este archivo tiene formato CSV. Se va cargando por los asesores/socios durante
+ la ejecución del sistema.
+ Los campos del archivo son:
+
Cada integrante eligió herramientas de desarrollo propias, más allá
@@ -484,30 +578,285 @@
Mozilla Firefox, Internet Explorer 6 EmEditor Herramientas de w3c: tidy y el servicio de validación
+ online (http://validator.w3.org/) Ninguna
- COMPLETAR!!! Por ahora nada, sólo que ande PHP.
+ El servidor no debe ser configurado de ninguna forma en particular,
+ sólo debe tener activado el módulo de PHP y la extensión user_dir de
+ apache si va a ser instalado en el directorio public_html de un
+ usuario. El resto de las configuración se realizan desde el mismo
+ sistema, por lo que no es necesario hacer modificaciones ni a la
+ configuración del apache ni a la del PHP.
- COMPLETAR!!! Supongo que es suficiente con copiar los archivos de
- src/ al public_html, ponerle permisos de lectura para el apache en
- todo y permisos de escritura en el directorio data/ y fotos/.
+ Si no estuviera configurado el módulo user_dir, habría que agregar
+ al apache las siguiente líneas:
+
+ Si no estuviera configurado el módulo de php, habría que agregar
+ al apache las siguiente líneas:
+
+ El archivo php.ini no necesita modificaciones a los valores por
+ omisión que trae cuando se instala.
+
+ Sólo debe ejecutar el script ./install.sh que se encuentra en el
+ disquette. El script crea el directorio public_html en el directorio
+ del usuario actual (si no existiese) y copia los archivos
+ necesarios, con los permisos pertinentes para que el apache pueda
+ leer o escribir según corresponda. Una vez instalado, el sistema se
+ puede acceder en
+ http://localhost/~sisdis10/
+ (si se instala con el usuario sisdis10, por supuesto).
+ Este módulo se compone escencialmente de las páginas descriptas en
+ la sección de desarrollo del módulo de
+ administración. A continuación se describe coloquialmente, en
+ orden lo más cronológico posible, como se usa el módulo.
+
+ Al sistema siempre se accede por la página
+ index.php, la primera vez que se ejecuta,
+ muestra la página para asociarse,
+ que se ejecuta de un modo especial, haciendo a los usuarios que se
+ asocien administradores hasta que el sistema tenga 2
+ administradores. Es decir, no se puede ingresar al sistema hasat que
+ no hayan 2 usuarios administradores y siempre los 2 primeros
+ usuarios que se asocien, serán administradores.
+
+ Una vez especificados los 2 administradores, el sistema comienza su
+ ciclo de vida normal, mostrando la pantalla de
+ ingreso, en la cual hay un enlace a
+ la página para asociarse, para
+ que usuarios aún no asociados, puedan hacerlo (esta vez como
+ usuarios comunes, no como administradores). Para asociarse el
+ usuario debe ingresar el número de registro o código (si es asesor),
+ ingresar 2 veces (para evitar errores de tipeo) la contraseña que
+ desea usar, especificar su e-mail y foto que lo identifica.
+
+ Una vez dentro del sistema, se muestra la
+ página con el log de actividades del
+ usuario, mostrando también la cantidad de créditos disponible (si no
+ es un asesor). Por omisión se muestran las actividades del día
+ actual, pero se puede elegir la fecha desde la cual mostrar las
+ actividades, o incluso mostrar todo.
+
+ Si el usuario es administrador, se presenta el submenú
+ Admin, que posee 2 opciones:
+ Créditos y Cambio de Admin.
+ La primera presenta la página para
+ agregar créditos. Se presentan los usuarios no asesores en
+ una lista, un campo donde ingresar la cantidad de créditos a
+ agregarle y un campo para ingresar la contraseña, ya que es una
+ operación privilegiada que necesita una seguridad extra. La segunda
+ opción presenta página de cambio de
+ administrador. En esta página se muestra una lista de usuario
+ que no sean administradores, para elegir a quien ceder los
+ permisos de administrador. Al igual que la opción anterior, hay que
+ reingresar la contraseña, por ser una operación delicada.
+ Los permisos de administración se ceden al usuario
+ seleccionado, dejando de ser administrador el usuario actual, para
+ cumplir la restricción de que siempre hayan 2 y sólo 2
+ administradores en el sistema.
+
+ Finalmente está la opción Salir que permite al
+ usuario salir del sistema. Si el
+ usuario no sale del sistema pero está inactivo por más de media
+ hora, la sesión caduca y el usuario deberá volver a ingresar. Si
+ el usuario cierra el navegador o se va del sistema de otra forma,
+ y luego, antes de que se cumpla media hora de inactividad, retorna
+ al sistema, la página de inicio reconocerá
+ la sesión, y hará que el usuario continúe en la misma pantalla
+ donde había abandonado la sesión.
+
+ El módulo se encarga de la administracion de el subsistema de preguntas y
+ respuestas. Maneja altas y bajas, asi como tambien ingreso de respuestas y
+ ranking de cada una. Mientras mejor es la respuesta de un usuario (que será
+ calificado por el autor de una pregunta), mejor será su puntuación. Esos puntos
+ son créditos para poder seguir efectuando preguntas.
+
+ La página Listar Preguntas muestra
+ las preguntas ingresadas en el sistema. Para cada pregunta, se muestra la fecha
+ de creación, el nombre de autor, con su correspondiente foto, la pregunta en si,
+ la posibilidad de accederá a todas las respuestas para dicha pregunta, así como
+ también la posibilidad de responder la pregunta ( solo en caso que quien esta
+ logueado en el sistema no sea el mismo usuario que formulo la pregunta ). El listado
+ de preguntas aparece paginado cada 2 ( se muestran dos preguntas por pantalla ).
+ Debajo de las preguntas aparece el navegador. En caso que el usuario logueado sea un
+ administrador, en la parte inferior de cada pantalla aparece un link que permite
+ acceder a la página de Baja de Preguntas.
+
+ El listador de respuestas muestra ordenadas por ranking
+ las respuestas a una pregunta seleccionada. Utiliza el paginador, al igual que el listador de preguntas,
+ y también lo hace de a dos respuestas por pantalla. Muestra la información del usuario
+ que genero la respuesta ( foto y nombre ), la respuesta y el ranking de la misma. Si la
+ respuesta todavía no fue evaluada por el autor de la pregunta, muestra un mensaje que
+ indica que no hay ranking para esa pregunta. Si el usuario que esta accediendo a la lista
+ de respuestas es el mismo que formulo la pregunta y todavía no calificó a la misma, aparece
+ un botón que lo redirecciona a la página de calificación de preguntas.
+
+ Desde el menú de la aplicación se puede acceder a la página que permite
+ agregar una pregunta. En caso de que el usuario logueado tenga los créditos para hacerlo, podrá formular
+ una pregunta que se publicara en la lista de preguntas. Si el usuario no
+ contara con los créditos suficientes, un warning lo alertara y le sugerirá que pida créditos al administrador
+ del sistema. El usuario podrá ingresas desde esta pantalla tantas preguntas como créditos tenga.
+
+ Desde el listado de preguntas se puede acceder a la pantalla que permite
+ responder la pregunta . La misma muestra en el encabezado la pregunta que se esta respondiendo.
+ Al lograr un ingreso satisfactorio de una respuesta, aparece un mensaje que avisa al
+ usuario que su respuesta fue dada de alta en el sistema. Esta respuesta quedara pendiente
+ de calificar por parte del autor de la pregunta que se esta respondiendo. Cualquier usuario
+ logueado en el sistema puede acceder a responder preguntas. Únicamente no podrá responder una
+ pregunta el autor de la misma.
+
+ La pantalla de calificación de respuesta solo puede ser accedida
+ por el autor de la pregunta que tiene dicho ítem como respuesta. En esta pantalla, desde un combo, se
+ puede elegir alguna de las cuatro categorías de calificación ( a cada una le corresponde un
+ puntaje ). Inmediatamente se le acreditara a quien pregunta tantos créditos como puntos valgan la
+ calificación de la respuesta. La respuesta solo podrá ser calificada una vez, luego de ser calificada,
+ desaparecerá el botón que permite acceder a la pantalla para ese ítem.
+
+ Si un administrador lo desea, desde la pantalla de listado de preguntas
+ es posible acceder a la pantalla de baja de preguntas y pasar una pregunta
+ a un log historico. De esta manera ni la pregunta ni sus respuestas seran mostradas mas por el listador. La lista de preguntas
+ a desactivar aparece para seleccionar de un combo.
+
+ El módulo de info permite el ingreso de temas, informaciones y comentarios,
+ y para la interaccion con el mismo se definieron distintos menúes en base
+ a los roles presentes en la plataforma.
+ El siguiente menu es el que se le presenta al asesor o socio.
+
+ El siguiente menu es el que se le presenta al administrador.
+
+ Desde info.ingresarTemas.php el usuario puede ingresar nuevos temas.
+ (Solo pueden acceder los usuarios administradores).
+ Una vez completados se procede a "Guardar Tema".
+ Desde info.listarTemas.php el usuario puede ver la lista de temas disponibles
+ para ingresar informaciones. La página se muestra paginada de a 5 temas por vez, se puede acceder a
+ las diferentes páginas navegando el menu superior. (La página actual queda marcada en negrita).
+
+ Desde info.ingresarInfo.php el usuario puede ingresar nuevas informaciones.
+ Los campos a completar son:
+
+ Una vez completados se procede a "Guardar Información".
+ Desde info.listarInfo.php el usuario puede ver la lista de informaciones disponibles.
+ La página se muestra paginada de a 5 informaciones por vez, se puede acceder a las diferentes
+ páginas navegando el menu superior. (La página actual queda marcada en negrita).
+ Esta página es accedida desde "Ver Comentarios" que se encuentra disponible para cada información presente.
+ La misma muestra los comentarios agregados hasta el momento.
+ La página se muestra paginada de a 5 temas por vez, se puede acceder a las diferentes
+ páginas navegando el menu superior. (La página actual queda marcada en negrita).
+ Se presenta el ícono del tema al cual pertenece la información, y por supuesto el comentario en cuestión.
+ Luego se presenta el ícono y apellido del usuario que cargó el comentario (si el usuario que cargó el comentario
+ es el mismo que cargó la información entonces se muestra solamente el apellido), y finalmente se muestra el comentario.
+ Se puede acceder a cargar un nuevo comentario desde "Ingresar Comentario" (esto solo puede ser realizado por los asesores
+ o socios.
+
+ Desde info.ingresarComentario.php el usuario puede ingresar nuevos comentarios a informaciones existentes.
+ El campo a completar es:
+
+ Una vez completados se procede a "Guardar Comentario".
- COMPLETAR!!! Mucho de esto por ahora está en la descripción del
- diseño...
+ En info.mencionEspecial.php se lista el o los usuarios que hayan publicado informaciones con alto ranking.
+ Se suma para cada usuario los rankings de las páginas publicadas, y luego se muestran aquellos que con el
+ ranking mas alto ( se muestra mas de uno cuando el ranking es el mismo para varios usuarios ).
admin.login.php
+ admin.login.php
admin.logout.php
+ admin.logout.php
admin.asociarse.php
+ admin.asociarse.php
admin.log.php
+ admin.log.php
admin.creditos.php
+ admin.creditos.php
admin.admin.php
+ admin.admin.php
faq.listarPreguntas.php
- Modulo de FAQs
+ faq.listarPreguntas.php
+ faq.listarRespuestas.php
+ faq.listarRespuestas.php
faq.ingresarPregunta.php
+ faq.ingresarPregunta.php
faq.responderPregunta.php
+ faq.responderPregunta.php
faq.calificarRespuesta.php
+ faq.calificarRespuesta.php
faq.desactivarPregunta.php
+ faq.desactivarPregunta.php
Desarrollo
- AGREGAR DESCRIPCION DE LO HECHO!!!!
- Formato de Archivos
+ Diseño del sistema
+ Diagrama de Clases
+ Gráfico de Navegación
+ Formato de Archivos
temas.csv
+
+
+ infos.csv
+
+
+ comentarios.*.csv
+
+
Herramientas de desarrollo
Sebastián Arena
Configuración del servidor
Instalación
+LoadModule userdir_module libexec/mod_userdir.so
+AddModule mod_userdir.c
+UserDir public_html
+
+
+LoadModule php4_module libexec/libphp4.so
+AddModule mod_php4.c
+AddType application/x-httpd-php .php
+
+ Instalación
+ Modo de uso
+ Modulo de Administración
+ Modulo de FAQs
+ Modulo de Info
+
Los campos a completar son:
+
+
+
+ Se mostrará un mensaje indicando si la operación fue exitosa o no.
+ En cualquiera de los dos casos se mantienen los datos en los campos, y se
+ permite la modificación de lo recien insertado, a modo de correccion de posibles errores
+ del usuario al tipear.
De retirarse de la página, o presionar sobre "Nuevo Tema"
+ se pierde la posibilidad de modificar (al presionar sobre "Nuevo Tema" se pedirá la confirmación
+ antes de cambiar de contexto).
+
+
+
+ Se mostrará un mensaje indicando si la operación fue exitosa o no.
+ Se mantienen los datos en los campos, y se permite la modificación de lo recién insertado,
+ a modo de correccion de posibles errores del usuario al tipear.
De retirarse de la página,
+ o presionar sobre "Nueva Información" se pierde la posibilidad de modificar (al presionar sobre
+ "Nueva Información" se pedirá la confirmación antes de cambiar de contexto).
+
+ Se despliega el icono del tema al cual pertenece, así como la imagen del usuario que cargó
+ dicha información. A continuación se muestra la URL correspondiente, con su comentario.
+ Por último el ranking ( que es la cantidad de accesos que hubo a dicha URL ) y se puede
+ acceder finalmente a la sección de comentarios sobre la información haciendo click en
+ "Ver Comentarios".
+ Esta sección está disponible ordenada por ranking de acceso a la URL, o, eligiendo en "Ver Tema",
+ se listan las informaciones del tema, y luego dentro de ahi las mismas ordenadas por ranking.
+
+
+
+ Se mostrará un mensaje indicando si la operacion fue exitosa o no.
+ Se mantienen los datos en los campos, y se permite la modificación de lo recién insertado,
+ a modo de correccion de posibles errores del usuario al tipear.
De retirarse de la página,
+ o presionar sobre "Nuevo Comentario" se pierde la posibilidad de modificar (al presionar sobre "Nuevo Comentario"
+ se pedirá la confirmación antes de cambiar de contexto).
+