[RISOLTO] Problema notifiche e-mail utilizzando i messaggi

Domande sulle funzionalità di backend: amministrazione utenti e corsi, certificati, iscrizioni, report, ...
alessandro
FormaLms User
Posts: 43
Joined: Wed Dec 12, 2012 12:28 pm
Location: Sicilia

[RISOLTO] Problema notifiche e-mail utilizzando i messaggi

Post by alessandro »

Volevo segnalare un bug (almeno penso) contro cui mi sono scontrato, e come da oggetto, riguarda l'invio di notifiche via mail quando si usandono i messaggi verso un altro utente.
Dello stesso bug si parla qui, possibile che non sia stato risolto? :shock:

L'email arriva correttamente ma il problema è il testo del messaggio perché al posto del nome del corso compare "notin course"

Anche aggiungendo la chiave _NOTIN_COURSE in "standard" non cambia molto nel senso che comunque non prende la variabile [course], si può solo sostituire notin course con un altro nome.

Mi confermate che sia un bug?

Il problema si può facilmente aggirare cambiando la variabile _YOU_RECIVE_MSG_TEXT in "email" ma nel caso di più corsi può tornare utile avere il nome corretto del corso.

Un saluto a tutti.

Alessandro
Last edited by alessandro on Mon Jul 15, 2013 9:24 pm, edited 1 time in total.
User avatar
robykirk
FormaLms User
Posts: 140
Joined: Mon Mar 12, 2012 10:06 pm

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by robykirk »

Ciao Alessandro, parli della 4.05?
Roby Kirk
alessandro
FormaLms User
Posts: 43
Joined: Wed Dec 12, 2012 12:28 pm
Location: Sicilia

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by alessandro »

Ciao Robykirk,
Si parlo della 4.0.5!
Qualcuno riscontra lo stesso bug?
Ho postato la discussione relativa alla 3.6 solo perché indica il file in questione.
User avatar
alberto
FormaLms Guru
Posts: 1134
Joined: Fri Mar 02, 2012 9:18 am
Contact:

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by alberto »

Non riesco a verificare ora, ma potresti guardare nel codice se la chiave va effettivamente inserita nel modulo standard o in un altro (a naso farei un tentativo in "message")
alessandro
FormaLms User
Posts: 43
Joined: Wed Dec 12, 2012 12:28 pm
Location: Sicilia

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by alessandro »

Ciao Alberto,
ti confermo che la chiave va inserita nel modulo standard (anche io all'inizio credevo che andasse in message e infatti nella prima prova l'avevo inserita lì).
Una volta inserita, al posto di notin course compare la nuova chiave, solo che non prende la variabile [course].
Il percorso del file che la usa dovrebbe essere /doceboCore/lib/lib.message.php e il codice in questione dovrebbe essere alla riga 701.
User avatar
robykirk
FormaLms User
Posts: 140
Joined: Mon Mar 12, 2012 10:06 pm

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by robykirk »

Anche io al momento non ho possibilità di verificare tuttavia, a prima vista, si direbbe che _NOTIN_COURSE sia un riferito ad un messaggio di assenza corso (se l'email venisse inviata senza fare riferimento ad un corso, nella email verrebbe evidenziato un messaggio che direbbe che non c'è alcun corso a cui l'email si riferisca).
La riga che segnali non deve essere modificata ma l'errore dovrebbe essere a monte di questa porzione di codice.
Prova a fare questo test:

sostituisci la riga 699

Code: Select all

if ((isset($_SESSION['idCourse'])) && (isset($GLOBALS['course_descriptor'])))
con la riga

Code: Select all

if ((isset($_SESSION['idCourse'])) || (isset($GLOBALS['course_descriptor'])))
ATTENZIONE questa non è la soluzione ma solo un test.... in teoria dovrebbe mandarti l'email senza _NOTIN_COURSE ma sempre con il problema di [course]

Se riesci a fare questo test, facci sapere il risultato... appena avrò del tempo proverò ad identificare il bug
Roby Kirk
alessandro
FormaLms User
Posts: 43
Joined: Wed Dec 12, 2012 12:28 pm
Location: Sicilia

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by alessandro »

Robykirk ho fatto una prova seguendo le tue indicazioni ma purtroppo non cambia nulla.

Il messaggio che arriva è sempre lo stesso:
Hai ricevuto un nuovo messaggio sul sistema di e-learning all'indirizzo http://xxxx/ nel corso notin course dall'utente xxx yyy

Ho provato anche ad inviarlo sia ad un utente iscritto al corso che ad uno iscritto "solo" in piattaforma e anche in questo caso il risultato è sempre lo stesso.

Se ci sono altre prove che posso fare e che possono tornare utili per identificare il problema ditemelo.

C'è una cosa che mi lascio dubbioso, in teoria la funzione "Messaggi" è fuori dai corsi, quindi perché arriva un messaggio di questo tipo? E se l'utente è iscritto a più corsi?

Alessandro
User avatar
robykirk
FormaLms User
Posts: 140
Joined: Mon Mar 12, 2012 10:06 pm

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by robykirk »

Alessandro, stavo cercando di individuare il problema da te segnalato.
Pensavo fosse legato a quanto riportato in quest'altro post: http://elearningcommunity.net/forum/vie ... f=5&t=8317

In realtà il problema è separato.
Non so se ho capito bene la procedura che segui per inviare questa email, tuttavia il discorso gira intorno a questo messaggio:

Code: Select all

Modulo: email
Chiave: _YOU_RECIVE_MSG_TEXT
Traduzione: Hai ricevuto un nuovo messaggio sul sistema di e-learning all'indirizzo [url] nel corso [course] dall'utente [from]
Se mi spieghi bene da dove mandi questa email, cerchiamo di capire se è corretto che ci sia il nome del corso.
le ipotesi sono queste:

1) Non è necessario indicare il corso:
A questo punto basta modificare la lingua nel seguente modo:

Code: Select all

Modulo: email
Chiave: _YOU_RECIVE_MSG_TEXT
Traduzione: Hai ricevuto un nuovo messaggio sul sistema di e-learning all'indirizzo [url] dall'utente [from]
2) Il corso potrebbe essere necessario:
Allora, nel caso di assenza di corso, non è necessario inserire il notin course e quindi si dovrebbe avere una frase simile al punto 1)
In questo caso si avrebbe sia la possibilità di avere un corso che la possibilità di non averlo.
A questo punto si dovrebbe suddividere in 2 la chiave in modo da avere qualcosa del genere:

Code: Select all

Modulo: email
Chiave: _YOU_RECIVE_MSG_TEXT
Traduzione: Hai ricevuto un nuovo messaggio dall'utente [from] sul sistema di e-learning all'indirizzo [url] 

Modulo: email
Chiave: _YOU_RECIVE_MSG_TEXT_COURSE
Traduzione: nel corso [course] 
Fatto questo, è necessaria un'ulteriore anche una modifica al codice.


Ciao, fammi sapere
Roby Kirk
alessandro
FormaLms User
Posts: 43
Joined: Wed Dec 12, 2012 12:28 pm
Location: Sicilia

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by alessandro »

Ciao Roby Kirk,
la chiave è esattamente quella che hai citato.
L'email viene mandata in automatico dal sistema (se abilitato dal gestore eventi) quando un utente invia un messaggio ad un altro utente usando la sezione messaggi, quella che si trova nella barra in alto.

Si possono avere due casi:
1) a mandare il messaggio è un admin
in questo caso il messaggio può essere inviato a chiunque (utenti iscritti a corsi e utenti iscritti semplicemente in piattaforma)
2) a mandare il messaggio è un utente
in questo secondo caso si può mandare il messaggio solo ad utenti iscritti a qualche corso (quelli che sono iscritti semplicemente in piattaforma non compaiono nella lista dei possibili destinatari)

A parte il caso Admin, ricadiamo nel secondo caso che hai esposto.

Come ho scritto, all'inizio pensavo fosse un bug perché mi immaginavo che nel messaggio, oltre al nome dell'utente, dovesse comparire anche il corso al quale risulta iscritto. Ma riflettendoci, nel caso di iscrizione a più corsi che si fa?
Forse non è un bug, ma allora in questo caso con la chiave notin course cosa volevano indicare?

Spero di non aver fatto troppa confusione nell'esposizione e di essere riuscito a spiegarmi :D .

Buona serata!

Alessandro
User avatar
robykirk
FormaLms User
Posts: 140
Joined: Mon Mar 12, 2012 10:06 pm

Re: Problema notifiche via e-mail utilizzando i messaggi

Post by robykirk »

alessandro wrote: Come ho scritto, all'inizio pensavo fosse un bug perché mi immaginavo che nel messaggio, oltre al nome dell'utente, dovesse comparire anche il corso al quale risulta iscritto. Ma riflettendoci, nel caso di iscrizione a più corsi che si fa?
Forse non è un bug, ma allora in questo caso con la chiave notin course cosa volevano indicare?
Ciao Alessandro, quanto hai scritto è corretto.
Utilizzando la sezione Messaggi si esce dal corso e quindi non si ha la variabile [course] di riferimento.
Ho letto il codice e penso di poter dire che chi l'ha scritto aveva fatto un'ipotesi non portata a termine.
La situazione è questa: è vero che non c'è un corso di riferimento ma è possibile selezionarlo mentre si invia il messaggio tramite menù a tendina mostra solo i messaggi del corso:.
Qui lo sviluppo del codice si è interrotto e da qui si potrebbe ripartire implementandolo.
L'alternativa sarebbe invece di eliminare nella chiave _YOU_RECIVE_MSG_TEXT la porzione di testo nel corso [course] .

Chiave notin course: in realtà dovrebbe essere chiamata nothing course e dovrebbe essere visualizzata in caso di messaggio senza corso di riferimento o se viene scelta dal menù a tendina la selezione di default Tutti i corsi, ma scrivere qualcosa del genere non ha significato:

Hai ricevuto un nuovo messaggio sul sistema di e-learning all'indirizzo http://xxx nel corso nessun corso dall'utente Pippo

Proprio per questo si potrebbe ipotizzare di dividere in 2 la chiave e visualizzare [course] solo se esiste ottenendo:

1) Corso selezionato
Hai ricevuto un nuovo messaggio dall'utente Pippo sul sistema di e-learning all'indirizzo http://xxx nel corso Sicurezza sul lavoro

2) Corso NON selezionato
Hai ricevuto un nuovo messaggio dall'utente Pippo sul sistema di e-learning all'indirizzo http://xxx


Ciao
Roby Kirk
Post Reply