Creazione moduli e/o plug-in

Plugins, funzionalità sviluppate dagli utenti, patch, fix...
User avatar
CisterNino
FormaLms User
Posts: 72
Joined: Mon May 06, 2013 2:59 pm

Re: Creazione moduli e/o plug-in

Post by CisterNino »

Ciao Luca.
il customscripts funziona solamente per quella parte di forma conforme al pattern MVC; in particolare hai la possibilità di "sovrascrivere" la parte VIEW. Per fare dei test, puoi iniziare dal file courselist.php sotto appLms\views\elearning

Ciao.
I'm Livio, the Two. If you need, you can contact the one.
luca

Re: Creazione moduli e/o plug-in

Post by luca »

CisterNino wrote:Ciao Luca.
il customscripts funziona solamente per quella parte di forma conforme al pattern MVC; in particolare hai la possibilità di "sovrascrivere" la parte VIEW. Per fare dei test, puoi iniziare dal file courselist.php sotto appLms\views\elearning

Ciao.
Ciao,
allora forse i customscripts non risolvono a pieno le mie necessità. :(

Ti faccio un esempio: come sai, ogni singolo oggetto scorm scrive tutta una serie di dati statistici nelle tabelle di tracciatura. Tali dati sono poi visualizzati (almeno in parte) in quella paginetta che è accedibile cliccando sull'icona "a grafichino" di fianco all'oggetto scorm stesso, nei materiali. Detta paginetta però visualizza (per esempio) il "session_time", mentre a me serve che evidenzi il "total_time". Cercando nel codice, ho trovato che il punto dove suddetta tabella viene popolata è nel file \appLms\modules\organization\orgresults.php (righe 204-226). Volevo evitare di modificare il file direttamente, e quindi pensavo di usare proprio i customscript, però mi sembra di capire che non è possibile. :/

Modificare la view (che prima dovrei individuare) nel caso specifico non sarebbe sufficiente, in quanto è proprio il dato passato che non è corretto (per me almeno), non tanto la sua visualizzazione.

C'è qualcosa che posso fare per ottenere l'effetto desiderato che non sia modificare "banalmente" il file originale?
User avatar
CisterNino
FormaLms User
Posts: 72
Joined: Mon May 06, 2013 2:59 pm

Re: Creazione moduli e/o plug-in

Post by CisterNino »

Ciao Luca.
Se vuoi ottenere quel risultato devi modificare orgresults.php. Tra l'altro non esitse la view relativa a orgresults.php perchè non rispetta il pattern MVC. Non hai alternative.
Però, se vuoi vedere il tempo totale dei permanenza di un utente su un corso potresti provare a dare un'occhiata ai report standard.
I'm Livio, the Two. If you need, you can contact the one.
luca

Re: Creazione moduli e/o plug-in

Post by luca »

CisterNino wrote:Ciao Luca.
Se vuoi ottenere quel risultato devi modificare orgresults.php. Tra l'altro non esitse la view relativa a orgresults.php perchè non rispetta il pattern MVC. Non hai alternative.
Però, se vuoi vedere il tempo totale dei permanenza di un utente su un corso potresti provare a dare un'occhiata ai report standard.
Ciao CisterNino,
quel risultato era solo un esempio, una cosa semplice ottenibile anche in altri modi. Ci sono altre funzionalità che vorremmo modificare: il "motore" di generazione attestati ad esempio, troppo limitato e rigido per noi.

Ho notato che nel file config.php è presente anche un parametro $cfg['enable_plugins'], ho provato ad attivarla ma mi viene restituito un errore. Torno alla mia domanda iniziale: c'è una qualche guida su COME scrivere un plug-in?
User avatar
CisterNino
FormaLms User
Posts: 72
Joined: Mon May 06, 2013 2:59 pm

Re: Creazione moduli e/o plug-in

Post by CisterNino »

Ciao Luca.
E' strano che impostando a true $cfg['enable_plugins'], hai errore.
Non esiste, al momento una guida per la scrittura di plugin in forma.lms.
Ti posso dare qualche indicazione.
All'interno della cartella del tuo plugin devi avere un file php che ha come nome: <nome plugin>Plugin.php.
Quindi se la cartella del tuo plugin si chiama MioReport, all'interno, devi avere un file php con nome MioReportPlugin.php.

In MioReportPlugin.php devi avere le seguenti funzioni:
activate -> viene eseguita sull'attivazione del plugin
deactivate -> viene eseguita sulla disattivazione del plugin
run->viene eseguita ad ogni chiamata di Forma.

Nel file manifest, inserisci info sul plugin.

Ti allego un file zip con due esempi di scrittura di plugin.
Ciao

L
Attachments
pluginFormaLms.zip
(432.19 KiB) Downloaded 327 times
I'm Livio, the Two. If you need, you can contact the one.
cao
FormaLms User
Posts: 60
Joined: Fri Oct 12, 2018 8:32 pm
Version: forma.lms 2.0

Re: Creazione moduli e/o plug-in

Post by cao »

Hello CisterNino '
Ho cercato informazioni su come creare plugin.
Cosa fanno il Libretto e le Notifiche.
Puoi spiegarci un po 'di logica?
Ho creato un paio di plugin per OpenERP ver 5 e 6 sulla fatturazione medica. Il linguaggio utilizzato dal programma era Python, ma la creazione del plugin era semplice. In Forma il codice è finito e, a peggiorare le cose, non ci sono informazioni. È come tirare i denti.
Qualsiasi aiuto sarà molto apprezzato.
Cao
User avatar
alberto
FormaLms Guru
Posts: 1130
Joined: Fri Mar 02, 2012 9:18 am
Contact:

Re: Creazione moduli e/o plug-in

Post by alberto »

Puoi vedere la documentazione QUI e il plugin "dummy" distribuito con forma come esempio
alfa24
Senior Boarder
Posts: 1979
Joined: Fri Nov 24, 2017 8:45 am

Re: Creazione moduli e/o plug-in

Post by alfa24 »

devi replicare anche il file principale del modulo, che si chiama come il modulo. Es.: per organization, devi replicare organization.php e quindi cambiare i riferimenti a orgresults.
Per supporto GRATUITO contattatemi in privato qui
cao
FormaLms User
Posts: 60
Joined: Fri Oct 12, 2018 8:32 pm
Version: forma.lms 2.0

Re: Creazione moduli e/o plug-in

Post by cao »

Darei uno sguardo approfondito alla creazione del modulo e al campione fittizio. Sarò in contatto, potremmo aver bisogno del plugin TinCan.
Grazie ad Alfa e Alberto
Mantenere il buon lavoro
cao
Post Reply