Extensions
themeDévelopper une extension
Weezo permet au travers des extensions de proposer de nouveaux partages.

Des connaissances en PHP sont nécessaires au développement de ces extensions.

Note : les termes "partage" et "ressource" ont ci-après la même signification.

Une extension se présente sous la forme de scripts PHP auxquels est ajouté un fichier texte nommé "describer.ini".

Celui-ci, placé au répertoire racine de l'extension, permet notamment de définir :

  • le nom de l'extension (dans les différentes langues supportées)
  • la description de l'extension (dans les différentes langues supportées)
  • le nom du script index
  • le nom du script de configuration (si applicable)
  • l'icône de la ressource
  • une image preview
  • le nom de l'auteur
  • l'url du site de l'auteur

Le format du fichier et le détail des instructions sont décris dans le fichier /www/res/misc/describer.ini.readme.txt

Un fichier "license.txt" peut être ajouté au répertoire racine. Il sera alors affiché lors de l'installation de l'extension.

L'ensemble des fichiers doivent ensuite être compactés dans un fichier zip renommé en .weezoResource

L'installateur d'extension décompacte les fichiers dans le répertoire /www/res/misc/nom_du_fichier_zip puis vérifie la présence du fichier describer.ini à la racine.

L'extension est alors prête à être utilisée !

 

Gestion des droits d'accès

La gestion des droits d'accès est intégrée à Weezo. Vous n'avez donc pas à l'intégrer vous-même. Elle est assurée par le script security.php automatiquement exécuté avant tout autre script php (auto-prepend).
Un script php ne sera autorisé que s'il est contenu dans le répertoire (ou l'un des sous-répertoire) d'une ressource associée à l'utilisateur connecté/authentifié. 

Attention : tout fichier non-php reste accessible aux utilisateurs non authentifiés. 

Environnement 

Un php.ini et un httpd.conf valant mieux qu'un long discours, je vous invite à regarder ceux utilisés par Weezo, situés dans le répertoire /data/default.

 

Comment développer et tester l'extension ?

Le plus simple est de directement développer à partir du répertoire /www/res/misc/nom_de_l'extension

Une fois le script index défini, vous pourrez ajouter votre extension aux partages au travers de l'IU Weezo.

 

Peut-on partir des scripts livrés avec Weezo?

Tout à fait ! Bien que d'un exellent niveau, ils peuvent encore être améliorés ;-)

Ces scripts sont en open source. Vous pouvez donc les modifier à loisir.

Weezo n'étant pour l'instant encore qu'en version beta, ces scripts peuvent être amenés à évoluer de manière significative. Il n'est par conséquent pas encore recommandé de se baser dessus... 

 

Peut-on adapter des scripts pour Weezo ?

Oui, il suffit de respecter les règles définies ci-dessus.

Un exemple est fourni au travers de eyeOS téléchargeable sur ce site.

Si vous adaptez des scripts existants, gardez en mémoire que mySQL ne fait pas partie du package Weezo.

 

Règles à respecter

Variables de session 

Afin d'éviter les intersection entre les variables de session de plusieurs ressources, il est conseillé d'utiliser les fonctions cfRSetVar() / cfRGetVar(), qui stockent / lisent les variables de session dans l'arborescence du tableau $_SESSION['res'][$resourceId] où $resourceId est l'identifant de la ressource courante. La fonction cfRSetVarArray() permet de définir un tableau. 

Vous pouvez évidemment ne pas utiliser ces fonctions et nommer directement vos variables de session. Il est alors conseillé d'utiliser un préfixe propre à votre ressource afin d'éviter les intersections avec les autres ressources Weezo. N'oubliez pas non plus qu'un utilisateur peut se voir attribuer plusieurs ressources d'un même type. Il est donc fortement conseillé de baser à minima les variables de session sur l'identifiant de la ressource... 

 

 
© 2008 Weezo
Joomla! est un logiciel libre distribué sous licence GNU/GPL.
Powered By PageCache
Generated in 7.69688 Seconds