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:
Dentro creé un archivo llamado Clonar_Materias_de_Curso.module.Ver original
name = Clonar_Materias_de_Curso description = Modulo pensado en clonar las materias que tiene un curso para poder asignarlo a todos los cursos. core = 7.x version = "7.x-1.0-dev" package = Jhonatan
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.