developer.jelix.org is not used any more and exists only for history. Post new tickets on the Github account.
developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Opened 13 years ago

Closed 13 years ago

#132 closed enhancement (fixed)

Répertoires pour plugin jTpl par défaut dans les applications

Reported by: bballizlife Owned by: bballizlife
Priority: normal Milestone: Jelix 1.0beta3
Component: jelix-scripts Version: 1.0 beta1
Severity: major Keywords: jtpl plugins createapp
Cc: Blocked By:
Blocking: Documentation needed:
Hosting Provider: Php version:

Description

Actuellement si on veut faire des plugins pour Jtpl personnalisés il faut créer des répertoires dans son application pour et déclarer y déclarer dans la configuration.

Sachant qu'on a déjà un répertoire plugins/ dans les applications, on pourrait générer de base plugins/jtpl/(common|html|text|xul)/ et que cela soit pris en compte.

Attachments (2)

ticket_132_bballizlife-1.diff (562 bytes) - added by bballizlife 13 years ago.
Patch defaulconfig.ini.php.tpl pour prendre en compte app:plugins/jtpl/
ticket_132_bballizlife-2.diff (1.4 KB) - added by bballizlife 13 years ago.
Patch pour createapp.cmd.php pour créer les répertoires de plugins jTpl à la création de l'application

Download all attachments as: .zip

Change History (13)

comment:1 Changed 13 years ago by bballizlife

  • Keywords jtpl plugins createapp added

comment:2 Changed 13 years ago by bballizlife

  • Owner set to bballizlife
  • Status changed from new to assigned

Changed 13 years ago by bballizlife

Patch defaulconfig.ini.php.tpl pour prendre en compte app:plugins/jtpl/

Changed 13 years ago by bballizlife

Patch pour createapp.cmd.php pour créer les répertoires de plugins jTpl à la création de l'application

comment:3 Changed 13 years ago by laurentj

je ne suis pas d'accord sur le nom du répertoire. Le répertoire plugins/ est réservé aux plugins du coordinateur, et ici, jelix va croire que le repertoire tpl est un plugin pour le controleur.

Il faut donc un autre répertoire : theapp/tplplugins par exemple et non theapp/plugins/tpl

À moins de créer un sous repertoire plugins/coord/ pour les plugins du coordinateur, mais il faut changer alors la conf par defaut etc.

comment:4 Changed 13 years ago by bballizlife

Effectivement je n'avais pas pensé à ce problème. Je serais plus intéressé à mettre en place les répertoires plugins/coord et plugins/tpl afin de regrouper sous le même répertoire tous les plugins utilisateurs d'une application et de limiter l'éparpillement des ressources. Si cette solution est retenue, je proposerais un nouveau patch en conséquence

comment:5 Changed 13 years ago by laurentj

ok, dans ce cas, peut être faudrait il aussi réaménager lib/jelix-plugins, et y migrer les plugins jtpl (ce qui necessitera de modifier le build de jtpl standalone) ?

comment:6 Changed 13 years ago by laurentj

  • Milestone changed from Jelix 1.0beta2 to Jelix 1.0beta3

comment:7 Changed 13 years ago by bballizlife

Je m'interroge tout haut.

Est-ce bien pertinent de déplacer le répertoire de plugins du coordinateur de app/plugins vers app/plugins/coord/ ? Réaliser ce changement ne pose pas forcément de gros problème, mais qu'en est-il de la compatibilité ? On risque de casser pas mal d'applications utilisant des plugins coord ou celles-ci devront être modifiées pour déplacer tous leurs plugins coord.

On a donc 2 solutions :

  • app/plugins/coord et app/plugins/tpl

ou

  • app/plugins et app/tplplugins

Je crois que finalement je ne sais pas laquelle serait la mieux...

comment:8 Changed 13 years ago by laurentj

le problème à terme, est qu'il y a un risque qu'on ait pleins de répertoires type xxxxplugins.

Mais ce qu'on pourrait faire : xxxplugins jusqu'à la version 1.0. Et pour la version 1.1, on réorganiserait en rassemblant tout ça dans une repertoire plugins/

comment:9 Changed 13 years ago by bballizlife

Ok pour ce remaniement, ça me convient.

comment:10 Changed 13 years ago by laurentj

Le remaniement va se faire pour la beta3. En cours dans le trunk. :

plugins/
  coord/
    foo/
        foo.plugin.php
        foo.plugin.ini.php
  tpl/
    common/
        function.truc.php
    html/
        function.truc.php
  auth/
    foo/
        jAuthDriverFoo.class.php
  db/
    mysql/
        jDbConnection.mysql.php
        jDbResulset.mysql.php
        jDbTools.mysql.php
  wikirenderer/
    classicwr_to_text/
        classicwr_to_text.php
  url/
    significant/
        jUrlEngine.significant.class.php

Sachant que cela va être suivi d'un renommage

foo.plugin.php (fooPlugin = jIPlugin)
               --> foo.coord.php (fooCoordPlugin = jICoordPlugin)
function.truc.php (jtpl_function_truc)
               --> truc.function.php (truc_jtpl_function)
jAuthDriverFoo.class.php (jAuthDriverFoo = jIAuthDriver) 
               --> foo.auth.php (fooAuthDriver = jIAuthDriver)
jDbConnection.mysql.php (jDbConnectionMySQL = jDbConnection) 
               --> mysql.dbconnection.php (mysqlDbConnection = jDbConnection )
jDbResulset.mysql.php  (jDbResulsetMySQL = jDbResultSet) 
               --> mysql.dbresultset.php (mysqlDbresultset = jDbResultSet )
jDbTools.mysql.php (jDbToolsMysql = jDbTools) 
               --> mysql.dbtools.php (mysqlDbTools = jDbTools )
jUrlEngine.significant.class.php ( jUrlEngineSignificant = jIUrlEngine) 
               --> significant.url.php (significantUrlEngine = jIUrlEngine)

comment:11 Changed 13 years ago by laurentj

  • Resolution set to fixed
  • Status changed from assigned to closed
Note: See TracTickets for help on using tickets.