La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Plugin POSH.

Présentations similaires


Présentation au sujet: "Plugin POSH."— Transcription de la présentation:

1 Plugin POSH

2 Introduction Plugin : mini application greffée sur Posh
Objectif : changer le comportement du portail, sans modifier le cœur de l'outil. Exemples : Modifier une partie de la page d'accueil d'origine de POSH, Ajouter les lignes dans le menu, Faire apparaître le bouton « fermer » du menu, ...

3 Installation d'un plugin
Répertoire placé dans /var/www/html/posh/includes/plugins Gestion des plugins dans : interface administration de Posh > configuration > gestion des plugins Activation d'un plugin : cocher la case à côté du plugin cliquer sur « enregistrer »

4 Les hooks Plugins basés sur les hooks
Hook : instruction placée dans le code, déclenchant les actions définies dans les plugins. Hook est utilisable en PHP et Javascript La syntaxe des hooks : Hook dans un fichier PHP de POSH : launch_hook('userinterface_header') Hook dans un fichier Js de POSH : $p.plugin.hook.launch('app.openHome.end') Appel d'un hook PHP dans un plugin : register_hook('userinterface_header',function(),1,1) Appel d'un hook Js dans un plugin : $p.plugin.hook.register('app.openHome.end','addNewDiv()','1')

5 Réalisation du plugin « Accueil » (1/5)

6 Réalisation du plugin « Accueil » (2/5)
Recherche de l'emplacement du code à impacter Utilisation de Firebug Recherche des éléments concernée par le plugin dans les fichiers de Posh : les div « homeheader » et « intromessage » Présence dans posh/includes/ajax.js Trouver le hook permettant d'agir sur le comportement du portail au niveau de la page d'accueil (où sont situés homeheader et intromessage) : $p.plugin.hook.launch('app.openHome.end')

7 Réalisation du plugin « Accueil » (3/5)
Création du fichier de configuration du plugin « plugin_accueil.php) <? /* * name: plugin Accueil personnalisé * description: Modifie la page d'accueil * display: style="font-weight:bolder;" * dependencies: no * author: christelle le moine * url: */ register_hook("userinterface_header","LoadlinkAccueilJs",1,1); function LoadlinkAccueilJs() { echo "<script type='text/javascript' src='../includes/plugins/plugin_accueil/modifaccueil.js'></script>"; echo "<link href='../includes/plugins/plugin_accueil/styleaccueil.css' type='text/css' rel='stylesheet'>"; } ?>

8 Réalisation du plugin « Accueil » (4/5)
Création du fichier « modifaccueil.js » qui ajoute du code au niveau du hook 'app.openHome.end' du fichier ajax.js //register hook action on widget create $p.plugin.hook.register('app.openHome.end','addNewDiv()','1'); $p.plugin.hook.register('app.openHome.end','hideOldDiv()','1'); //Fonction qui crée une nouvelle div « homeheader_aca_menu » dans laquelle on affiche au sein d'une iframe le contenu d'une page html function addNewDiv() { ... } // Fonction qui cache les div « homeheader » et « intromessage » function hideOldDiv ()

9 Réalisation du plugin « Accueil » (5/5)
Création du fichier styleaccueil.css qui modifie l'aspect de la page d'accueil Résultat du plugin


Télécharger ppt "Plugin POSH."

Présentations similaires


Annonces Google