Limitar al Modulo Certificado

Limitar al Modulo Certificado

de admin usuario -
Número de respuestas: 9

Estoy emitiendo unos certificados con el MODULO DE CERTIFICADOS, pero quisiera limitar las veces que el usuario pueda descargarla/generarla el PDF, es decir, quisiera que una vez se genere ya no pueda volver a generarse ya sea desapareciendo la opción o simplemente ocultándo. Alguna opción o sugerencia

Mi versión es 3.1.2

Promedio de valoraciones: -
En respuesta a admin usuario

Re: Limitar al Modulo Certificado

de Jose Maria Blanquer -

Se me ocurren algunas cosas, pero necesitaría saber que disponibilidad tienes para tocar el código..

La más "sencilla" sería:

- Crear una tabla propia, y modificar el plugin certificate para que haga un insert cuando el usuario hace clic.


Espero tu respuesta, o por lo menos espero haberte guiado en tu solución


En respuesta a Jose Maria Blanquer

Re: Limitar al Modulo Certificado

de admin usuario -

Hola Jose Maria, si por disponibilidad te refieres a tener acceso, lo puedo hacer y quiero hacerlo si es necesario. Si con esto de modificar el pluggin me pudieras decir que hacer, te lo agradecería mucho.

De antemano, muchas gracias.

En respuesta a admin usuario

Re: Limitar al Modulo Certificado

de Jose Maria Blanquer -

Buenos dias, si, a disponibilidad me refería a que tuvieras acceso a modificar el plugin.

Lo primero que debes hacer, es mirar de que tipo es el plugin, en tu caso, si no me equivoco, el plugin certificate es tipo modulo, por lo que tendrías que ir a la carpeta  \raiz\mod\certificate  y buscar el archivo donde se hace el insert, y agregar el codigo que te hace falta..


Si esta solución te vale, esta tarde, cuando llegue de trabajar, puedo intentar ayudarte con el código si tuvieras alguna complicación... estaré atento al post!

Un saludo

En respuesta a Jose Maria Blanquer

Re: Limitar al Modulo Certificado

de admin usuario -

Muchas gracias, me encantaría recibir tu ayuda pues esto del código no podría hacerlo solo (para empezar no sabría que escribir, donde hacerlo y en que archivo o archivos hacerlo)

Nuevamente muchas gracias.

En respuesta a admin usuario

Re: Limitar al Modulo Certificado

de Jose Maria Blanquer -

Buenas otra vez, perdona que ayer no pudiera ayudarte, pero tuve unos lios personales sonrisa

(Si te sirviera, te pediria que le des al botón de útil, así la gente sabe que funciona ;) )

He estado revisando el código del mod_certificate, te adjunto una modificación que creo que hace lo que pides. Lo primero sería que creases una tabla en tu base de datos de Moodle, el código para crearlo es el siguiente: 


CREATE TABLE `mdl_certificate_downloads` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `userid` INT NULL,
  `courseid` INT NULL,
  `certificateid` INT NULL,
  `downloadeddate` INT NULL,
  PRIMARY KEY (`id`));

Seguidamente, (te recomiendo hacer un backup por si acaso) copia el archivo que adjunto en el mensaje en la carpeta:     

raiz_moodle\mod\certificate


Y por si acaso, purga las cachés del sitio, aunque no creo que sea necesario. Y comentame a ver que tal funciona.. Un saludo!

En respuesta a Jose Maria Blanquer

Re: Limitar al Modulo Certificado

de admin usuario -

Hola nuevamente

Disculpa la ignorancia, pero antes de regarla ¿Cómo o dónde creo la tabla? Tengo la idea que sería desde phpMyAdmin pero no sé si es así o exista alguna otra forma.

Desde ya, nuevamente ¡Muchas gracias!

En respuesta a admin usuario

Re: Limitar al Modulo Certificado

de Jose Maria Blanquer -

Hola la tabla la tienes que crear desde PHP myadmin primero seleccionando la base de datos de Moodle y después yéndote a la pestaña SQL e insertando la consulta que te he pasado 

También lo puedes hacer desde Workbench, utiliza el gestor de base datos que más se hace fácil se te haga

En respuesta a Jose Maria Blanquer

Re: Limitar al Modulo Certificado

de admin usuario -

Funcionó de maravilla, muchas gracias ;) en verdad es exactamente lo que necesitaba.