¿Dónde está la parte del codigo de Moodle que genera los emails para enviarselos a los usuarios subscritos a los foros?

¿Dónde está la parte del codigo de Moodle que genera los emails para enviarselos a los usuarios subscritos a los foros?

de Raúl González Álvarez -
Número de respuestas: 3

Mi pregunta se reduce a la siguiente:

¿Dónde está la parte del codigo de Moodle que genera los emails para enviarselos a los usuarios subscritos a los foros?

Os explico mi situacion:

Resulta que me han dicho que desde cada mensaje recibido por el usuario subscrito a un foro se puede volver a acceder a moodle si hay sesion, atra ves de unas mihas en el propio mensaje recibido, esto en mi caso esta bien si hay sesion pero si no la hay evidentemente aparece la ventana de login de Moodle. El hecho de que aparezca la ventana de login del propio moodle es mi problema ya que en mi caso debo redirijirle a una ventana de validacion que hay en el portal de mi trabajo...el usuario ha de pasar por esta para validarse en moodle.

Alguien me puede decir como redirijirle a esta otra ventana(ventana del portal web de mi trabajo) cuando no haya sesion.

Un saludo y muchas gracias por leerme.

Promedio de valoraciones: -
En respuesta a Raúl González Álvarez

Re: ¿Dónde está la parte del codigo de Moodle que genera los emails para enviarselos a los usuarios subscritos a los foros?

de Xavier Paz -
Las funciones de envio de correos del foro están en mod/forum/lib.php. Son las que comienzan con forum_make_mail.

Lo que no he entendido bien es si quieres eliminar ese enlace que te puede llevar al foro concreto de Moodle o no. Me explico, en el supuesto de que la plataforma redirija al usuario que entra si no hay sesión abierta, desde mi punto de vista implicaría tocar en otros sitios, como index.php o login/index.php
En respuesta a Xavier Paz

Re: ¿Dónde está la parte del codigo de Moodle que genera los emails para enviarselos a los usuarios subscritos a los foros?

de Raúl González Álvarez -

Estoy mirando las funciones que me dices, sobre todo la que me genera el mensaje en HTML.

Y he descubierto que las migas que monta mandan a otras paginas evidentemente....y es en cada una de ellas yo supongo donde se controla si el usuario tiene sesion.

De modo que sé cual es mi solucion:

En todoas las paginas de moodle no se muy bien donde se combruba si hay una sesion activa y si no la hay se redirije al login/index.php este es mi problema.....yo en todos los casos en que me quede sin sesion necesito que se me redirecciones a la pagina de inicio del portal de mi trabajo pues es esta pagin en mi caso la que valida si el usuario tiene derecho a acceder a moodle.

Como se puede conseguir este comportamiento? ¿Es posible desde la administracion de moodle o hay que ir tocando todo el codigo?

Saludos Xavi y gracias por abrirme los ojos.

En respuesta a Raúl González Álvarez

Re: ¿Dónde está la parte del codigo de Moodle que genera los emails para enviarselos a los usuarios subscritos a los foros?

de Xavier Paz -
Bajo mi punto de vista, si tu problema es que la gente pueda pulsar en el enlace del correo, simplemente lo quitaría por código.

Por otro lado, si el problema es que hay que pasar siempre por el portal antes de entrar a Moodle, yo optaría por buscar soluciones alternativas a tocar elementos del núcleo de Moodle, porque si salen nuevas versiones, tienes que volver a comprobar si hay cambios y si la modificación funciona con la nueva versión. Creo que sería una tarea engorrosa y con tendencia a fallos.

Se me ocurre que tal vez lo puedas hacer con un simple script php, mediante javascript o incluso por configuración del servidor. En principio lo único que tienes que saber es de donde ha venido el usuario, y si en el historial de navegación la última entrada pertenece al dominio del portal.

En php tendrías que usar algo como $_SERVER['HTTP_REFERER']

En javascript sería algo como javascript:history.go(-1), pero depende de si el usuario ha habilitado javascript en su navegador.