2010-08-24 27 views
6

Me gustaría gestionar un horario usando Drupal 6, hay varios equipos en los que un administrador distribuye personas que pueden usar el equipo.Horario editable usando Drupal

Básicamente quiero una tabla de equipos en comparación con el día de la semana. El plan muestra la ocupación de todos los equipos durante toda la semana.

Lo que lo hace más complicado es que la edición del horario debe ser muy fácil y rápida. Por lo general, las personas tienen el equipo durante varios días, por lo que uno debe poder, por ejemplo, arrastrar una entrada y completar más días de esta manera. También me gustaría tener una selección de personas visibles que puedan arrastrar el calendario y completarlo de esa manera. Supongo que uno puede hacer eso con javascript, pero no tengo experiencia con eso.

  • ¿Es posible crear algo así con el Drupal Forms API?

  • Cualquier punteros/ejemplos para el arrastrando javascript?

  • ¿O hay algún software existente o módulo Drupal que pueda hacer eso?

Respuesta

3

He encontrado un buen javascript example for drag and drop in a timetable, debería ser posible adaptar eso para mi caso. Tendré que descubrir cómo integrarlo mejor con Drupal.

Editar:

El guión que he mencionado en la parte superior de la respuesta que no funcionó en mi instalación de Drupal por lo que me pasa a jQuery UI.

Lo he implementado ahora como un módulo de Drupal personalizado que usa la interfaz de usuario de JQuery para la función Arrastrar &. He habilitado Arrastrar & Dejar caer una tabla HTML, para guardar el calendario los elementos de la tabla se leen a través de Javascript y luego se envían a mi módulo Drupal personalizado usando ajax.

+0

Puede usar ahah para obtener dinámicamente algún tipo de subformas, con 3 campos (fecha, equipo, usuario), luego asocie un elemento arrastrable a cada subformulario. Cada elemento arrastrable puede tener un botón que abre un div "emergente" que contiene los widgets de campo para permitirle editar los valores del equipo/usuario. La fecha debe estar oculta y establecida por javascript drag-n-drop. Solo asegúrate de usar #default_value en lugar de #value. – redShadow

0

¿No pudo el equipo ser un tipo de contenido y tener diferentes propiedades como usted describe? Luego puede ingresar cada equipo como un nodo. Esto le ahorraría un montón de tiempo en comparación con la API de formulario.

CCK

TableField CCK

0

¿Por qué no usar el módulo Event? Básicamente, le da un tipo de nodo de evento. Entonces, una vista puede generar la página de calendario de todos los nodos.

+0

El problema no se muestra la tabla, pero fácilmente editarlo. Uno debería ser capaz de editar todos los días de una semana para cada equipo al mismo tiempo en una página. –

0

No estoy seguro de si el módulo MERCI tiene todas las funcionalidades que desea. Ejecuté algunas pruebas y se ve bastante bien, funciona aún mejor. Aunque está disponible solo en la versión aplpha 5 de prelanzamiento, pero debería hacer su trabajo.

Para arrastrar y soltar. No debería ser tan difícil mejorar los formularios usando algunos JQuery como sugirió @Fabian.

2

Un módulo Fields drupal 7 que crea un campo de horario que se puede visualizar a través de una cuadrícula semanal agradable.Se puede utilizar para visualizar los horarios de apertura o de las horas de trabajo de una manera muy ordenada:

http://drupal.org/project/field_timetable