<< Indietro
Messaggi di questa discussione
Mittente Testo dei messaggi
XXXXX Alessio

Noavatar
Post fatti : 4
> Profilo
Scritto il : 19/10/2010 16:32 ( più di un mese )
Oggetto : plug-in per docebo
Salve a tutti! Vorrei chiedere se qualcuno sà come si creano\installano plug-in per docebo.

Mi spiego meglio.

Vorrei capire come posso interagire con il DB associato a docebo, creare nuove tabelle, inserire tuple e fare in modo che il plug-in possa consultarle. Vorrei sapere poi come poter richiamare questo plug-in in modo che visualizzi una tabella data con il framework di docebo...ho sviluppato un plug-in per moodle e volevo farlo anche per docebo.

grazie a tutti per le risposte!

 
Erba Claudio

Avatar
Post fatti : 2688
> Profilo
Scritto il : 19/10/2010 18:11 ( più di un mese )
Oggetto : Re: plug-in per docebo
Ciao, Docebo non supporta i "plugin" ma ha sistemi di interfacciamento e integrazione così come direttive di sviluppo che trovi sul wiki
Cla 
Docebo CEO and Founder
www.docebo.com
 
XXXXX Alessio

Noavatar
Post fatti : 4
> Profilo
Scritto il : 02/11/2010 18:23 ( più di un mese )
Oggetto : Re: plug-in per docebo
Grazie per la risposta. Non credo di aver compreso come avvenga l'interfacciamento dal wiki di docebo. :(

Ogni qual volta tento di includere librerie che mi permettano di scrivere tramite output bufferizzato, ricevo un messaggio relativo alla sicurezza (anche se ho effettuato il plug-in come admin).
Mi piacerebbe sapere come faccio ad includere funzioni che mi permettando di stampare: header, footer, contenuti (ad esempio tabelle); e quindi creare pagine con lo stesso layout/template di docebo.
Vorrei chiedere poi come accedere alle funzioni di docebo per mysql.......Ed in ultimo come "creare dei collegamenti" nei menù (uno qualunque va bene) per la pagina che debbo richiamare.


non pretendo ovviamente che mi si risponda a tutte le domande
:)

Ma se magari qualcuno potrebbe gentilmente darmi qualche link o qualche dritta, gli sarei molto grato. :)
byze
 
castriotta michele

Avatar
Post fatti : 43
> Profilo
Scritto il : 03/11/2010 09:26 ( più di un mese )
Oggetto : Re: plug-in per docebo
Provo a risponderti io.

Per quanto riguarda mysql se non ho capito male per accedere ai dati ecc ecc devi andare in phpmyadmin nel caso stai testando la tua piattaforma in locale, e comunque devi andare dove risiede tutto il database di Docebo. Studiatelo per bene e poi attraverso query da PHP puoi fare ciò che vuoi. Un suggerimento attendo ad alcune constanti che loro utilizzano per non ripetere sempre i suffissi delle tabelle.

Ora l'ultima domanda non è ben chiara io l'ho intesa così: nel menù le mie competenze, vuoi far apparire oltre alle voci che ci sono anche una voce "pagina mia" che abbia un suo link.

Allora non ricordo bene però ricordi che l'ho fatto, dovresti trovare il file che costruisce quel menù e aggiungi la voce che vuoi........

Spero di esserti stato utile.
Michele Castriotta
bircastri@hotmail.it
www.mikelecastriotta.altervista.org
 
XXXXX Alessio

Noavatar
Post fatti : 4
> Profilo
Scritto il : 03/11/2010 11:39 ( più di un mese )
Oggetto : Re: plug-in per docebo
Intanto nuovamente grazie per la risposta....si la parte di phpmyadmin è ok =)
Riesco a fare query con il php senza problemi, mi chiedevo soltanto se docebo avesse qualche libreria volta a facilitare l'interazione...
Comunque sia, sapresti dirmi quale è il file che crea il menù al quale io possa aggiungere una voce (relativo link alla mia pagina?)...Esattamente non  è che mi interessa proprio quel menù, ne va bene uno qualunque (intendo sempre i menù in alto a tendina).
La parte che non comprendo poi è "come far assumere alla mia pagina" l'aspetto, il template, il layout di docebo ( in modo che sembri un'integrazione). Ho letto che bisogna utilizzare funzioni per l'output bufferizzato, ma non riesco ad includerle ( appena provo a lanciare la miapagina.php che le include mi appare un messaggio "you don't have permission to access this file" o qualcosa di simile....).
Grazie a chiunque mi risponda :(

byze
Messaggio modificato da : athlondj87 il : 03/11/2010 11:40
 
castriotta michele

Avatar
Post fatti : 43
> Profilo
Scritto il : 03/11/2010 14:24 ( più di un mese )
Oggetto : Re: plug-in per docebo
Allora, provo sempre a risponderti io.

Per quanto rigurda librerie che consentono di facilitare l'interazione tra phpmyadmin e docebo che poi sarebbe interazzione tra database e docebo non credo ce ne siano, sono tutte query. (Nulla di più).

Per quanto riguarda invece il layout della tua pagina. Devi tenere presente che docebo p strutturata nella seguente maniera, ogni pagina ha un header.php ed un footer.php se ad esempio vai nessa sezione DoceboLMS li vedi basta che li includi ovviamente se ci sono delle variabili devi fare in modo che queste siano calcolabili e definite diciamo. Poi il resto è codice della tua pagina.

Così dovresti avere come effetto diciamo una integrazione della tua pagina in Docebo.

Per il menù dovresti vedere il file menuover.php in DoceboLMS\ menu

spero di esserti stato d'aiuto
Michele Castriotta
bircastri@hotmail.it
www.mikelecastriotta.altervista.org
 
Derks Giovanni

Avatar
Post fatti : 1861
> Profilo
Scritto il : 03/11/2010 16:22 ( più di un mese )
Oggetto : Re: plug-in per docebo
Writted by: XXXXX Alessio

Ho letto che bisogna utilizzare funzioni per l'output bufferizzato, ma non riesco ad includerle ( appena provo a lanciare la miapagina.php che le include mi appare un messaggio "you don't have permission to access this file" o qualcosa di simile....).


ciao,
per evitare questo problema devi inserire il seguente codice all'inizio di miapagina.php:

<?php if(!defined("IN_DOCEBO")) define("IN_DOCEBO", true); ?>

Giovanni. 

Docebo Staff
 - Docebo 4 released! -

 
XXXXX Alessio

Noavatar
Post fatti : 4
> Profilo
Scritto il : 03/11/2010 17:23 ( più di un mese )
Oggetto : Re: plug-in per docebo
Grazie a tutti per le risposte. Il problema è che non riesco a sfruttare le istruzioni riportate a questa pagina di wiki di docebo.....
http://www.docebo.com/community/doceboCms/wiki/125_295/show/italian/0/Writing_PHP_code

Se qualcuno fosse così gentile di scrivermi la più stupida delle pagine "hello world" che faccia uso delle funzioni descritte nel wiki, gliene sarei grato... :)
per l'interazione con il db ho risolto. grazie =) a tutti!

p.s. vorrei chiedere se qualcuno sa come fare a rendere una pagina esclusivamente per l'admin. in pseudo codice:

if( user==admin) then...
visualizzo la mia pagina...
else
header al login o alla pagina che l'utente visualizzava.

grazie ancora a tutti.
Messaggio modificato da : athlondj87 il : 04/11/2010 11:24
 
Fabio Pirovano

Avatar
Post fatti : 538
> Profilo
Scritto il : 10/11/2010 21:22 ( più di un mese )
Oggetto : Re: plug-in per docebo
Riassumendo, se ho ben capito, vorresti:
  • aggiungere una voce di menu in admin
  • fare in modo che cliccandola apra un contenuto custom
  • aggiungere dei controlli fissi fatti dal plugin che eseguono delle verifiche sui dati.
Partendo dall'idea che l'ultimo punto è ok, per i primi due consiglierei di creare un modulo docebo a cui, nel caso, far richiamare delle parti di php già pronte.

Modulo se lavori su una 3.6.0, sulla 4 i moduli sono ancora supportati per retrocompatibilità ma tutto è stato riconcepito in un ottica di MVC, la cui struttura è diversa da quella dei moduli.
Procediamo per step, un modulo admin di docebo ha bisogno 4 cose per funzionare, poniamo di volerlo posisionare sotto Principale > Configurazioni.


1. creiamo una riga in core_menu_under
con idMenu pari all'id menu che vuogliamo in core_menu e indichiamo tutti i parametri.
INSERT INTO `core_menu_under` (
`idUnder`, 
`idMenu`, 
`module_name`, // nome del modulo, deve corrispondere alla cartella che verrà creata in 2
`default_name`, // nome da far comparire nel menu, è una chiave di lingua
`default_op`, // op di partenza del modulo
`associated_token`, // token per la costruzione del permesso da verificare per decidere se far apparire o meno la voce di menu, solitamente è view
`of_platform`, // poco usato, serve per mdouli cross platform, null è la norma
`sequence`, // sequenza in cui mostrarlo
`class_file`, // nome del file descrittore del modulo in doceboCore/class.module/
`class_name`, // nome della classe del descrittore del modulo in doceboCore/class.module/
`mvc_path` // questo c'è solo per la 4 e sostituisce, per gli mvc, buona parte dei parametri precedenti
) VALUES
(NULL, 3, 'configuration', '_CONFIGURATION', 'show', 'view', NULL, 1, 'class.configuration.php', 'Module_Configuration', '');


2. creiamo una cartella in doceboCore/modules/
con il nome che vogliamo date al nostro modulo e un file php all'interno con lo stesso nome


3. creiamo la classe descrtittore del modulo in doceboCore/class.module/  seguendo l'esempio degli altri file che troviamo nella cartella, qui definiamo come chiamare la funzione di dispatch, si può aprtire da un altro file rinominando solo il necessario per velocità.


4. aggiungiamo alla RACL il nuovo permesso per permettere ai superadmin di vedere il modulo e lo assegniamo al ruolo dei superadmin


La parte difficile finora dovrebbe essere la 4, dato che richiede di conoscere le dinamiche della racl di docebo, procedendo per step si deve.

4.1 creare un id in core_st
 
INSERT INTO core_st (idst) VALUES(NULL); 

4.2 creare un permesso in core_role corrispondente al nostro modulo, per quelli del core è

INSERT INTO core_role (idst, roleid) VALUES (LAST_INSERT_ID(), '/framework/admin/nomemodulo/view');

4.3 ora che il permesso è pronto va assegnato al giusto ruolo, reperibile in core_group, tramite la tabella core_role_members

recuperiamo l'id di /framework/level/godadmin

SELECT idst FROM core_group WHERE groupid = '/framework/level/godadmin'

e inseriamo in core_role_members 

INSERT INTO core_role_members (`idst`, `idstMember`) VALUES ( idst del ruolo inserito in 4.2 e creato in 4.1, idst recuperato al 4.3 );

A questo punto, dal successivo login avremo la nostra voce di menu e il link al realtivo modulo.


Come è strutturato il file dentro doceboCore/modules/nomemodulo/ ?

Fondamentalmente c'è una funzione di dispatch che distingue cosa fare in base al parametro op, il resto è a discrezione del modulo.
Ad esempio si può guardare coem funziona la funzione : adminManagerDispatch( $op );

Bada però che la 3.6.0.4 ha delle verifiche per il CSRF percui se usi delle form in post dovresti aggiungere il parametro per la verifica della provenienza della richiesta "authentic_request", se usi i metofi della classe Form di docebo viene aggiunto in automatico, cosi come viene aggiunto in automatico alel chiamate ajax, se fai in altro modo devi pensarci tu ad aggiungerlo.

La verifica dei permessi interna al modulo si fa con la funzione  checkPerm('view');

La 4 ha tutto un paradigma diverso per quanto riguarda il model view controller (MVC) che non interessa per ora, ma sarà riportato nel wiki developer, inoltre ha un driver principale per quanto riguarda l'0esecuzione delle query che è lo step intermedio prima del multi-dbms on ORM e AR previsto per la 4.1
Oltretutto prevedere anche una parte di layout tramite file di template e dei widget per la gestione degli elementi ripetibili, percui cambiano un pò di cose.

Spero di essere stato esaustivo.

Ciao
Docebo Staff

 - Docebo 4 released! -
 
<< Indietro