Crear calendarios con views calendar y date en Drupal

Crear calendarios con views + date + calendar, fuente original de fhsm y se puede encontrar aquí y el título original es: "How to make a calendar of upcoming events"

Recientemente he tenido que crear un calendario de eventos en Drupal 6.x, he tenido problemas para encontrar soluciones, así que aquí esta mi experiencia.

Yo no utilizo el módulo eventos entre otras cosas porque no esta para Drupal 6.x

En su lugar he utilizado:
CCK
Vistas
Calendario
Fecha

Descargamos e instalamos todos los módulos como siempre en /sties/all/modules y activamos en Administer › Site building > Modules

Paso primero: creamos un contenido nuevo usando cck

Vamos a Administrar > gestión de contenido > tipos de contenido > crear tipo de contenido

Nombre = “Group Event”
Tipo = “event”
Descripción = “Create a new event to appear on the sites calendar of upcoming events”

En la sección "Opciones del formulario de envío"
Título = “Event”
Cuerpo = “Details”

En "Opciones del flujo de trabajo"
Decide las mejores opciones para tu sitio.

En "Configuración de comentarios"
Configuralo según le interesa a tu sitio.

Guarda tus nuevo tipo de contenido.

En la pantalla de tipo de contenido pincha en "manage fields" junto a tu nuevo tipo de contenido.

Añade un nuevo campo
Etiqueta: = “Event Date and Time”
Field name = “event_datetime”
Tipo = “Datetime”
Widget type = “Select list”

Nota de Oskar: El widget type es a opción del creador, yo prefiero Select Liste

Guarda tu nuevo campo de date/time de los eventos creados.

Las opciones del campo en la siguiente página son razonablemente auto explicatorio y no necesitan explicación.

Pon atención a la opción "To Date" que te permitirá poner finalización a un evento, que es importante si quieres tener iCal.

Para el resto
Granularity = year, month, day, hour, minute (not second) selected
To Date = optional will be correct

Puedes añadir todos los campos adicionales que necesites, pero esto no nos afecta.

Paso 2: crea tu primer evento

Crear contenido > Group Event

Rellena el formulario y guardalo.

Paso 3: configurar la vista de calendarios.

Administrar > Construciones del sitio > Vistas

"Esto le llevo al autor del enlace unas 6 horas".

Activa la vista de nodo: calendar (Calendar)

Clona la vista que viene por defecto, le cambias los nombres a:
View name = “calendar”
View description = “Calendar of group events”

Lo siguiente te debería llevar a la página de edición de vistas.

En el lado izquierdo veras todos los diferentes tipos de calendario (página, bloque, etc...), empezamos con la vista que viene por defecto, que tendría que ser la que vemos automáticamente.

En el panel de argumentos

Hacemos click en Date: Date (node.changed)
Junto al final de la página, debajo de Data field(s):
uncheck = Node: Update date
check Content: Event Date and Time (field_event_datetime value)

Click Actualizar

Esta acción pone la fecha de comienzo de tus eventos en vez de la fecha de actualización de como el argumento para la vista.

En el panel de Filtros haz click en “+” logo para añadir un neuvo filtro.
Check = Node: Type
Haz click en añadir
En la siguiente pantalla
Deja el operador = “Is one of” y marca = Events para limitar en tu calendario el tipo de contenido que se muestra.

haz click en actualizar

On the Sort criteria click the “+” to add a new criteria
Check = Content: Event Date and Time (field_event_datetime value)

Haz click en añadir

Guarda todo haciendo click en Guardar

Paso 4: asegurate de que funciona

Utiliza el enlace "View "Calendar page" para confirmar que tu calendario esta funcionando bien.

That will at least get you to a working calendar of coming events for your site. Obviously you’ve got a ton of configuration options to play with form here.

This is a very powerful package. While it's not hard to setup it's got a lot of steps and many opportunities to go wrong. The key here is to set the argument / sort / filter bit of views configuration. This combination of modules seems to want to create a calendar widget for digging into the archives by default but it is easy enough to have it do otherwise.

Hope this is helpful for someone down the road.

Arreglar el error que da de la siguiente forma:

http://drupal.org/node/417626#comment-1428026
warning: date_format() expects parameter 1 to be DateTime, null given in /var/www/pruebas610/sites/all/modules/calendar/includes/calendar.inc on line 416.
Fixed when adding the date field in the fields list of the view, even works when set to 'exclude from display'.

Ojo, tengo que finalizar la tradución

Trackback URL for this post:

http://www.documentados.com/trackback/229

Comentarios

Módulo eventos

"Yo no utilizo el módulo eventos entre otras cosas porque no esta para Drupal 6.x*

Yo llevo bastante tiempo utilizando el módulo eventos. Se puede ver en mi página en el lado izquierdo. Quizá no he entendido bien el comentario, pero utilizo la versión 6 y es por ello que me extraña esta afirmación.

Lo que echo de menos con él es que me diera la opción de "des-publicar" los artículos que hayan pasado la fecha.

Otros problemas menores con este módulo es que no te da la opción de eliminar el huso horario, el cual te mete al comienzo del nodo sí o sí. Así, es una pena que me aparezca en los globos de los mapas de google ocupando un espacio precioso, amén de que aparece en los nodos sí o sí.
Igualmente la hora de comienzo (y la de fin, si así se elige) también aparecen sí o sí, no teniendo la opción de indicar un evento sin horas, cual es muchas veces el caso de eventos que son todo el día o de los cuales no se tiene esa información precisa en el momento de la publicación.

Entiendo que el uso de los módulos propuestos da mayor libertad que el módulo de eventos en estos aspectos.

*Pido perdón si no he entendido correctamente la afirmación sobre el módulo "events"

Aupa Jorge, por partes, si

Aupa Jorge, por partes, si te fijas en la página de Drupal.org verás que el módulo eventos para su versión 6.x no esta estable, lo que significa que no se debería utilizar porque puede funcionar de forma incorrecta. Y no tienes que pedir perdón por nada hombre, preguntar es de sabios, callarse con las dudas por miedo al que dirán no es de sabios.

.event-tz:{
display:none;
}

Añade estas líneas de código a tu css, y no se mostrará el uso horario.

Para des-publicar puedes hacer un código php que revise todos los tipos de contenido que sean eventos y que estén publicados y cuando su fecha sea menor que la fecha actual cambiar el estado a no publicado.

Respecto a las horas de los eventos que son un único día piensa que tienen que empezar en un momento y finalizar en otro momento, aunque sea todo el día.

Yo cuando quiero quitar algunas cosas de evento utilizo css, y a veces es necesario añadir con jquery un span, class, etc...

Nada es imposible con Drupal :)

Un saludo

Oskar

Utilizar argumentos

Buenas oskar, como veo que tienes un nivel alto pruebo de preguntar...
Me estoy volviendo loco, llevo unos dias programando un gestor para una Aseguradora Médica, y empecé con Drupal y bufff...no encuentro solución,
el tema esq creo un Calendario para las citas médicas, y la idea, esq des de un menu de DOCTORES, linke al calendario para cada doctor pasando el id del Doctor, todo me funciona bien, excepto que NO APARECEN LAS CITAS en el calendario.
Utilizo el CONTENIDO:MEDICO como RELATIONSHIP,y el NODO id MEDICO como ARGUMENTO juntamente con la Fecha DESDE. ( Cada evento contiene un ID de paciente y un ID de MEdico ),
entonces pruebo la vista previa del calendario con un id de medico tipo calendar/6 y parece q todo va bien, pero NO ME APARECE NADA, y lo mas fuerte esq si copio la query en el PHPMYADMIN SI me devuelve los elementos a enseñar....
no entiendo nada....se os ocurre algo???
gracias de antemano

Pudiste resolver esta aplicación?

Buenas Roger.
Me encuentro en este instante en la misma situación que vos hace un año.
¿Pudiste resolver esto?
Si todavía necesitas hacerlo puedo ofrecerte colaboración.
Desde ya muchas gracias.

Calendario con View + date + calendar

Hola.

Lo he montado en mi web y lo he configurado tal y como indica, pero me gustaría modificarlo y no encuentro la manera. Os explico:

Los eventos tiene fecha de inicio y, de forma opciona,l fecha de fin. La cuestión es que cuando un evento dura más de 1 día, ese evento aparece en el calendario todos los dias desde que empieza hasta que termina, y yo quiero que sólamente aparezca en el día en que empieza el evento.

¿Como puedo hacer esto? ¿Podéis hecharme una mano, por favor?

Espero haberme explicadio bien.
Gracias, un saludo

Eliminar de la vista calendario el texto "Todo el dia"

Hola a todos los Drupaleros.

Realizando un trabajo veo que en la vista del calendario me sale dentro del cuadro la fecha y el texto "todo el día"; requiero eliminarlo de la vista y solo quede el link del evento.
Gracias

formato de fecha y hora

hola, acabo de instalar el modulo calendar, con el modulo fecha para drupal 6. Tengo el modulo views y el CCK.
Cree un nuevo contenido en CCK con el nombre de "Grupo Evento", y una etiqueta llamada "fecha y hora", el problema es que cuando creo un contenido grupo evento, escribo mi evento pero en el formato de fecha hasta fecha, solo me aparece con formato año, osea que solo puedo poner 2011, pero no la fecha completa d el evento.

Ademas, otro problema es que en el calendario me agrega todos los nodos sin excepcion, y yo no quiero que aparezca todo .. solo cuando se cree un evento.
Gracias.

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
To prevent automated spam submissions leave this field empty.
By submitting this form, you accept the Mollom privacy policy.