Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/07/2016, 12:39
jeremiselxi
(Desactivado)
 
Fecha de Ingreso: septiembre-2008
Mensajes: 269
Antigüedad: 16 años, 2 meses
Puntos: 22
Usar un tableselect con ajax en D7

Buenas tardes.

Como he aprendido mucho en este foro, hoy quiero hacer un aporte mostrando el uso de un tableselect en Drupal7.

Lo primero es que creé dos tipos de contenidos uno llamado "cursos" y otro tipo de contenido llamado "crear_materias". Este último tiene un campo referenciado al nodo curso llamado "field_materia_curso_asignado".

Luego de esto vamos al código:

Cree una carpeta llamada Clonar_Materias_de_Curso.

Dentro creé un archivo llamado Clonar_Materias_de_Curso.info.

Código PHP:
Ver original
  1. name = Clonar_Materias_de_Curso
  2. description = Modulo pensado en clonar las materias que tiene un curso para poder asignarlo a todos los cursos.
  3. core = 7.x
  4. version = "7.x-1.0-dev"
  5. package = Jhonatan
Dentro creé un archivo llamado Clonar_Materias_de_Curso.module.
Descripción de qué hará este módulo.
Aparecerá un campo en lista mostrando todos los contenidos tipo cursos y al seleccionar uno de estos cursos, se realizará una llamada ajax el cual verificará si existen contenidos tipo crear_materias referenciado al curso que hemos seleccionado y si no existe, mostrará un mensaje que No existen materias para este curso.

En este sentido, si seleccionamos un curso que ya tiene materias referenciadas, nos aparecerán todas estas materias con el check para seleccionarla. Posteriormente más abajo aparecerá otro tableselect con todos los cursos también, con la finalidad de poder decirle al sistema que las materias que estamos seleccionado, se clonarán en los cursos que elijamos al final.
Al presionar el botón, se crearán nodos referenciados a los cursos seleccionados.
Vamos a explicar por parte cada sección del módulo.
Clonar_Materias_de_Curso.module.