Autor: Valentín Barros Puertas

Historial de cambios:

8.2.2 [12/08/08 16:00]
  • Actualizada la clase Items y el script items para permitir insertar imágenes en los artículos (ya se podía, pero sólo al inicio del mismo, ahora se pueden insertar en cualquier lugar).
8.2.1 [04/07/08 15:35]
  • Actualizada la biblioteca jQuery desde la versión 1.2.1 a la 1.2.6, solucionando con ello un problema de incompatibilidad del editor con Firefox 3.
8.2.0 [04/07/08 13:00]
  • Si un artículo tiene una fecha futura, el mismo no es mostrado hasta dicha fecha.
  • Publicidad en la raíz del blog.
  • Leer Más implementado.
  • Si un artículo es modificado, cambia su ordenación en la raíz del blog, y se muestra la fecha original y la última de modificación.
  • Corregidos pequeños errores en el código XHTML y CSS de la web.
  • Ahora la web utiliza el SWFObject 2.0, en detrimento del antiguo SWFObject 1.5 utilizado hasta ahora, para incrustar el contenido en Flash.
  • Implementada nueva forma para insertar contenidos Flash (previamente registrados en la tabla de items y conociendo su id en la misma) en los artículos desde el editor. Esta forma respeta el estándar XHTML.
  • La clase XHTMLFilter ha sido reescrita completamente. Ahora produce un código más acorde con el estándar XHTML 1.0 Strict (trata mejor elementos antes conflictivos, como blockquote, aunque aún hay que mejorar esto pues hay casos en los que el código resultante del filtrado no es correcto; y se comporta corréctamente ante diversos casos de aparición del símbolo &), es mucho más eficiente y muchísimo más estable y seguro.
  • Ahora el editor utiliza una ventana de tipo pop-in cuando requiere datos por parte del usuario (título y dirección de un enlace, por ejemplo), en lugar del molesto prompt de JavaScript, el cual mantenía bloqueado el navegador impidiendo acceder a otras pestañas del mismo para copiar los datos necesarios (la dirección y el título de una web que se quiere incluir en el artículo y está abierta en otra pestaña de la misma ventana del navegador, por ejemplo).
  • Incluido el elemento blockquote en el editor.
  • Pequeñas mejoras en la usabilidad del sitio.
  • Bug 0018 corregido: Los archivos adjuntos a un artículo no aparecían para su descarga.
  • Bug 0019 corregido: Las comillas simples (o apóstrofe: ') aparecían escapadas en el texto del artículo ('Valentín' aparecía como \'Valentín\').
  • Bug 0020 corregido: Un grave fallo en la implementación de la clase XHTMLFilter podría permitir a un usuario insertar código ejetutable en el cliente (JavaScript, VBScript, etc.) en los comentarios de los artículos del blog.
  • Bug 0021 corregido: Al escribir ciertos símbolos ( y , por ejemplo) en el formulario de escribir un artículo o en el de escribir un comentario, los mismos eran convertidos al símbolo ? al guardar los datos en la base de datos o al devolverlos a la vista de la aplicación.
8.1.2 [24/05/08 20:05]
  • Actualizados los scripts que procesaban datos de The Weather Channel para que sean compatibles con un pequeño cambio en la forma de pedir los datos al servidor.
8.1.1 [24/03/08 12:40]
  • Bug 0017 corregido: Un pequeño fallo en la clase XHTMLFilter permitía que se colasen etiquetas vacías (como por ejemplo <p></p>).
8.1.0 [22/03/08 16:45]

Ahora el blog cuenta con un panel de control, el cual aún en un estado Alpha de desarrollo facilitará muchísimo la tarea de escribir nuevos artículos.

Dicho panel de control permite escribir artículos con un burdo editor WYSIWYG, añadir tags de forma automática, y tiene una función de autoguardado de borradores por si el sistema se cae mientras se está escribiendo uno.

  • Añadida la Política de Privacidad de la página.
  • Añadida la posibilidad de bloquear cuentas de usuario.
  • Bug 0015 corregido: La web sólo mantenía la Cookie de sesión durante unos minutos después de la última iteracción del usuario. Ahora, marcando la opción de recordar los datos del usuario al loguearse en la web, estos se mantienen durante un mes, que era la intención inicial.
  • Bug 0016 corregido: La web permitía iniciar sesión a usuarios sin autentificar.
8.0.2 [03/01/08 15:45]
  • Bug 0014 corregido: Las fechas de las fotos se mostraban una hora adelantadas (en el Visor no).
8.0.1 [10/12/07 17:40]
  • Aumentada la clase Items hasta su versión 1.0.1, la cual implementa la nueva funcionalidad de poder poner un archivo JPEG para su descarga.
8.0.0 [04/12/07 15:00]

Reescritura completa del código de la web. Se mantiene la sección Fotos, pero todas las demás han dejado de existir (Vídeos probablemente de forma permanente a largo plazo, pero Staff y Contacto se volverán a integrar), y se ha creado una nueva: Blog. El blog ha sido creado con tecnología propia (no es un WordPress o similar), y tanto él como el resto de la web están en una fase muy temprana de desarrollo (La versión 8.0.0 ha vuelto a ser una versión inicial, como ya ocurrió con la 7.0.0). La web ahora está pensada como un conglomerado de secciones semi-independientes entre sí, de tal modo que sea un proyecto escalable, ya que cada sección es en cierta medida independiente de las demás a nivel de código y archivos (por ejemplo, la sección Fotos reutiliza una gran parte del código de la rama 7 de la web, algo que debe cambiar, mietras que el blog es totalmente nuevo) y agregar nuevas secciones es en cierta medida fácil (realmente muchísimo más fácil que en la rama 7, cuya estructuración era un caos).

Principales características:

General

La infraestructura básica de la web ofrece un soporte para que todas las secciones aparezcan uniformes (estilos mediante CSS, por ejemplo, y compartición de bibliotecas tanto propias como de terceros). Además, los usuarios que se registren en la web posteriormente tendrán su propio panel de control (para poder subir un avatar, por ejemplo, que actualmente todos tienen el avatar de no-avatar), y utilizarán su cuenta para diversas acciones como comentar en los posts o en las fotos (actualmente los comentarios en las fotos siguen siendo anónimos, pues se usa el mismo código que en la anterior versión)

Portada

En una fase tosca de desarrollo, la portada sólo muestra un texto de presentación, un banner de publicidad y el antiguo módulo de información meteorolóogica

Blog

La sección más trabajada. Aunque aún le queda mucho por implementar, ofrece ya una funcionalidad decente para el lector (para el escritor no, pues aún no tiene un panel de control y los posts han de ser escritos directamente en la base de datos, así como la información relativa a las fotos de estos y a sus tags). Los posts se pueden comentar por los usuarios registrados

Fotos

Es la parte de la web más tosca. Utiliza código de la rama 7, pero es que la evolución de esta sección es muy ambiciosa como para implementarla por entero en estos momentos, por lo que por el momento brinda la misma funcionalidad que la de la rama 7 (el Visor de fotos es exáctamente el mismo, por ejemplo, y los scripts del lado del servidor son casi los mismos también)

Tecnología:

  • XHTML para la estructuración de contenidos. Este XHTML es producido mediante plantillas Smarty
  • CSS para la maquetación y los estilos
  • JavaScript se utilizará para la programación del lado del servidor de manera no intrusiva (actualmente apenas se utiliza)
  • ActionScript 3.0 será utilizado para aplicaciones, aunque será de manera no intrusiva (dichas aplicaciones tendrán un equivalente funcional en XHTML, de ser posible y factible)
  • PHP5 como lenguaje del lado del servidor
  • SQL para acceder a las bases de datos (MySQL)
7.5.1 [31/10/07 14:55]
  • Bug 0013 corregido: Un problema con los permisos para el binario de PHP en el servidor, junto con fallos en la programación de uno de los scripts de la web, propiciaban que la vista de la aplicación mostrase un número de fotos "undefined" en la lista de fotos de una categoría, si dicha categoría tenía fotos sin información Exif
7.5.0 [29/10/07 15:05]
  • La forma de presentar las categorías de fotos de la web ha sido modificada. Ahora ya no se muestran en una lista vertical ordenada alfabéticamente, sino en una lista organizada en páginas (sólo con 6 ítems por página) y ordenada por la fecha de la última foto en cada categoría (de esta manera aparecerán antes las categorías cuya última foto sea más reciente)
  • Ahora la web está estructurada en XHTML 1.0 Strict (Hasta ahora la web estaba estructurada en HTML no válido) (Esto referente a la estructura externa a la aplicación Flash)
  • Este historial de cambios se ha reescrito en XHTML 1.0 Strict y CSS (antes era un archivo de texto plano) y se ha puesto a disposición del público mediante un enlace en la sección Staff de la web
7.4.2 [30/09/07 23:55]
  • Bug 0012 corregido: Problema crítico sólo con Internet Explorer. Una vez dentro de alguna de las categorías de fotos, no era posible pasar de página pues al cambiarla se volvía a cargar la primera otra vez. Esto era provocado por una mala implementación en el historyManager
7.4.1 [19/09/07 18:30]
  • Bug 0011 corregido: Debido a un cambio en los comentarios HTML en una de las más recientes versiones de la web, los anuncios de Google AdSense no se mostraban en Firefox (el código JavaScript quedó comentado por error, aunque navegadores como IE sí mostraban los anuncios, pues no implementan del mismo modo al 100% la forma de interpretar los comentarios HTML)
7.4.0 [17/09/07 10:03]
  • La velocidad de reproducción del index.swf a pasado a ser de 24 fps (antes era de 12 fps)
  • Revisado el comportamiento de los botones atrás y adelante en los navegadores: Una vez implementada la API de manejo de la aplicación mediante el hash del navegador (Ver 7.2.0), se consiguió habilitar al mismo tiempo dichos botones (que en las aplicaciones Flash o en las webs AJAX no funcionan por defecto). No obstante, estos botones sólo funcionaban aceptablemente con Mozilla Firefox (y similares), ya que en IE permanecían deshabilitados (por deshabilitados se entiende que al pulsar el botón atrás del navegador este conduce la web anterior a esta, y no a anteriores secciones de esta, como debiera ser), en Safari funcionaban mal y en Opera producían un error crítico (al pulsar el botón atrás la web pasaba a la sección anterior pero recargándose y no mostrando ningún tipo de dato al usuario, se quedaba en blanco). A partir de la actual versión, los susodichos botones funcionan perfectamente en Safari y aceptablemente en Firefox (se aprecian ocasionalmente algunos fallos tolerables). En IE la función ya está habilitada y es funcional (me he basado en lo explicado en http://www.streampad.com/blog/?p=110 para implementarlo), pero presenta algunos fallos. Opera sigue como estaba, y se abandonan los intentos de corrección para las versiones actuales, ya que a partir de la siguiente versión (9.5, actualmente en Alpha) el motor interno del navegador cambiará, y el nuevo parece ser más compatible con lo ya implementado en la web.
  • Bug 0009 corregido: Una mala implementación de una función en JavaScript hacía que apareciese con más o menos frecuencia el mensaje de error "Elemento dibujado fuera del rango permitido" en el visor
  • Bug 0010 corregido: Si se accedía al visor con su URL (http://www.sanva.net/Visor.php) desde Safari, la aplicación mostraba su interface totalmente operativa pero sin fotos (se podía incluso comentar una pseudofoto de nombre "undefined" y en la categoría "undefined"). La corrección del error está en la modificación del archivo Slots.php y del propio visor para que errores de este tipo sean filtrados y avisados al inicio de la aplicación (este error, no obstante, no era un error de seguridad)
7.3.0 [10/09/07 21:44]
  • Ahora el visor utiliza el nombre de la imagen actual en la URL (antes utilizada una referencia a su posición una vez ordenadas las imágenes), lo que posibilita que la URL de una imagen sea guardada en marcadores y pueda ser accedida de nuevo en el futuro (antes se accedía a una imagen distinta si en la categoría en cuestión habían sido incluidas imágenes nuevas) [Funcionalidad sugerida por Luismi]
  • Ahora el botón "Atrás" del navegador funciona correctamente (pero esta funcionalidad no es compatible con Internet Explorer; y producirá un error crítico a nivel de vista en Opera)
  • Implementada una guía de navegación que permite en todo momento conocer dónde se está dentro de la web y volver a una categoría superior (incluso al inicio de la web) sin modificar la URL o tocar los botones del navegador
  • La biblioteca SWFObject ha sido actualizada a la versión 1.5 (desde la 1.4.4). Más información: http://blog.deconcept.com/2007/02/28/swfobject-1-5-released/
  • Se deja de usar el Xenon Layout, por resultar innecesario
  • Solucionados los "temblores" casi inapreciables que se producían en el visor, a causa de una incompatibilidad con Internet Explorer (versiones anteriores a la 7), al pulsar botones que requiriesen una redimensión del espacio de la aplicación
  • Las fotos del visor se redimensionarán y todos los objetos se recolocarán si el usuario cambia el tamaño del navegador
  • Ahora la web es compatible con el navegador Safari (aunque no la funcionalidad de cargar una foto en el visor a partir de su URL automáticamente: si el nombre de la foto incluye un carácter "extraño", se mostrará la primera foto de la categoría)
  • Ahora el subtítulo que aparece al entrar en la categoría Fotos mostrando el número de fotos y categorías total de la web tiene la nueva funcionalidad de mostrar cuantas fotos hay en la categoría de fotos seleccionada
  • La velocidad de reproducción del visor ha pasado a ser de 24 fps (antes era de 12 fps)
  • Bug 0008 corregido: Los nombres de fotos y vídeos demasiado largos se salen del espacio disponible (al mostrarlos junto a sus iconos en las secciones Fotos y Vídeos, respectivamente)
7.2.0 [06/07/07 19:20]
  • Quitados los scripts de ClickTale (Ver 7.1.2). Como era de esperar ClickTale no puede ver la interacción de los usuarios con la aplicación Flash
  • Mejorada la seguridad en el script encargado de enviar el e-mail desde el formulario de contacto Flash
  • Inclusión del código de Google Analytics también en el visor de fotos
  • Implementada versión alternativa de la web en formato HTML. Las personas que no tengan el plugin Flash instalado en su navegador verán esta versión. La versión alternativa no es utilizable y sólo muestra algunos de los textos de la web y su disposición en categorías. Esta versión está creada con propósitos SEO y de accesibilidad
  • Implementada API de manejo de la aplicación Flash desde el hash de la URL del navegador. De esta forma un usuario podrá guardar en favoritos o compartir con otro usuario lo que esté viendo en ese momento en la web, ya que la web cambiará el hash del navegador según la categoría en la que se encuentre, y del mismo modo será capaz de recibir información de dicha parte de la URL al iniciarse.
7.1.3 [15/06/07 15:10]
  • Bug 0007 corregido: Otra excepción en la información Exif de una foto. Esta vez al parecer el error se produce porque algún programa de edición podría no respetar del todo el estándar Exif. En este caso alguna de las funciones del archivo Slots.php imprimiría un warning que desestructuraría el XML que debiera resultar de la llamada a este archivo. La corrección de este bug radica en la revisión del archivo Slots.php para prevenir que se produzcan errores similares en el futuro.
7.1.2 [10/06/07 16:30]
  • Eliminada la marca de Unicode (BOM) de algunos archivos de la web
  • Scripts de ClickTale.net incluidos en el código de la web. El servicio ClickTale grabará mediante estos scripts las acciones de algunos usuarios de la web: Con esto se pretende poder mejorar la usabilidad del sitio, así como estudiar qué secciones son más llamativas, cuales están obsoletas, etc... Esto se hace a modo de prueba, ya que intuyo que ClickTale no podrá grabar la web pues esta usa tecnología Flash, y la grabación sólo se producirá en el index, ya que el visor de fotos presenta un pequeño fallo al intentar utilizar dichos scripts.
  • Web asociada con mi usuario de OpenID
7.1.1 [20/05/07 19:00]
  • Bug 0006 corregido: Se ha encontrado una excepción en la regla implementada para procesar la información de fecha almacenada en el Exif de una foto (DateTimeOriginal). Mientras lo normal es que el campo de fecha sea del tipo "aaaa:mm:dd hh:mm:ss" (para lo que se usaba la expresión regular '/ |:/' con el fin de dividir sus componentes), a aparecido uno del tipo "aaaa.mm.dd hh.mm.ss". La corrección del bug no estriba tanto en la inclusión de este nuevo tipo (mediante el cambio a la expresión '/ |:|\./', perfectamente válida), pues hasta Windows (nótese que el "hasta" no es un cumplido a dicho S.O.) falla en la deducción de la fecha correcta en esa foto, sino en la supresión de un fallo de diseño en la web al tener la foto una información de fecha "corrupta" (se mostraban 6 miniaturas de foto sin la foto propiamente dicha y con todos sus datos como undefined). En lo sucesivo una foto con información de fecha corrupta mostrará su fecha como undefined, pero el resto de la web no se verá en absoluto afectada.
7.1.0 [28/02/07 21:10]
  • Añadida la funcionalidad de mostrar los datos meteorológicos para la ciudad de Vigo y alrededores (Datos ofrecidos por The Weather Channel)
  • Reducido el espacio publicitario de AdSense
  • Ahora los botones del menú (y submenú) se pueden pulsar desde que aparecen (antes estaban inactivos hasta que acababa su animación, algo muy molesto)
  • Las fotos que se descarguen llevarán impreso "http://www.sanva.net" en la esquina inferior derecha
  • Mejoras en el diseño de la página (Transiciones al cambiar de imagen en el visor, Fade In en la carga de las miniaturas, etc...)
  • Bug 0005 corregido: Al acceder a las fotos de una categoría cuyo nombre contenga un carácter "especial" (léase carácteres acentuados, la Ñ, etc...) desde el enlace "Añade un comentario a esta foto" se produce un error que no permite que las fotos sean cargadas en el visor
7.0.3 [28/01/07 23:00]
  • Ahora el formulario de comentar las fotos recuerda los datos del usuario (opción que se puede deshabilitar mediante un CheckBox en el propio formulario)
  • Bug 0004 corregido: Fallo en la carga de imágenes (miniaturas o no) cuando una foto o una carpeta de categoría contiene un carácter como &, %, etc.
7.0.2 [11/01/07 16:00]
  • Añadida la funcionalidad de obviar ciertos campos en la base de datos que estén marcados en la misma como borrados
  • Ligera optimización en el código PHP
  • Ligero cambio en la estructura de los archivos PHP
  • Si el contenido insertado en el campo de texto "Página web" del formulario de comentar las fotos no comienza por "http://", es añadido automáticamente al insertarlo en la base de datos
  • El formulario de contacto ahora enviará la IP de los remitentes
  • Bug 0003 corregido: Los nombres de los autores de los comentarios de las fotos se seguían mostrando incluso al cambiar de foto
7.0.1 [09/01/07 16:45]
  • Añadido favicon a la web
  • El logo ahora está capacitado para mostrar el número de versión de la web (antes era una imagen estática)
  • Ahora el texto del inicio soporta ciertas características HTML
  • Bug 0001 corregido: Los campos del formulario de comentar las imágenes eran susceptibles de una alteración mediante código HTML (se podría, por ejemplo, mostrar una imagen que "descuadrase" la web, escribir un comentario que apareciese sin nombre, etc...)
  • Bug 0002 corregido: Las miniaturas de comentarios del inicio no llevaban a la foto correspondiente (por eso esa característica se suprimió de la versión original pocas horas despues de ser lanzada)
7.0.0 [29/12/06 16:00]

Rediseño total, escrito desde cero, de la web Redondela en Foto. La principal novedad, además del diseño, es la posibilidad de añadir comentarios a todas las fotos, y los vídeos se ven sin ser preciso descargarlos, a través del Flash Player. Por falta de tiempo la web tiene algunos fallos de diseño y el código no está nada optimizado, pero por lo general cumple su cometido.

Principales características:

  • Categorías de fotos infinitas (sólo limitadas por el bug del límite de altura del Player). Las categorías se crean creando una carpeta en /Fotos
  • Número de fotos sólo limitado por el espacio en el servidor. Ya no es preciso una nomenclatura especial para las fotos, llega con meterlas en la carpeta /Fotos/nombre_de_la_categoría/ (Son soportadas imágenes JPEG, pero sólo con la extensión "jpg")
  • Al inicio se carga un texto de un archivo XML externo y una lista con los cinco últimos comentarios a las fotos (sin repetir foto), a no ser que no haya comentarios en ninguna
  • Al cargar la sección "Fotos" se muestra una imagen, más o menos aleatoria, de todas las que hay en la web; además del submenú para elegir cada categoría de fotos
  • Con el nuevo visor, que se ejecuta en una ventana nueva y no en un PopUp como hasta ahora, se puede acceder a todas las fotos de la categoría mediante una barra de miniaturas, se pueden comentar y descargar las fotos y cada una de ellas tiene una URL propia (pero no es un permalink, ya que cambiará si varía el número de fotos en la categoría. Serviría, por ejemplo, para mostrar a otro usuario una determinada foto en un momento dado)
  • Los vídeos se ven con un reproductor en la propia web, no es preciso descargarlos (al más puro estilo YouTube)
  • Toda la información del apartado "Staff" se carga desde un XML externo
  • La web incluye un formulario para contactar conmigo

Tecnología:

La web está escrita principalmente en ActionScript 2.0, utiliza JavaScript para funciones relacionadas con el navegador y PHP como lenguaje del lado del servidor. Se usa HTML para el marcado del documento en el navegador y CSS para situar las capas. Como base de datos utiliza MySQL, y para modelar la información, XML

Valid XHTML 1.0 Strict - Valid CSS