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

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

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

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Allowed HTML tags: <a> <em> <strong> <cite> <strike> <code> <ul> <ol> <li> <dl> <dt> <dd><img><p><div><blockquote>
  • Saltos automáticos de líneas y de párrafos.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.

Más información sobre opciones de formato

CAPTCHA
Esto es para evitar spam, y ver que eres humano :)
Image CAPTCHA
Enter the characters shown in the image.