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 12 years ago

#134 closed bug (fixed)

Pouvoir afficher une constante php dans un template jTpl

Reported by: bballizlife Owned by:
Priority: normal Milestone: jTpl 1.0
Component: jelix:tpl Version:
Severity: major Keywords: jtpl constant
Cc: Blocked By:
Blocking: Documentation needed: no
Hosting Provider: Php version:

Description

Si on veut afficher une constante php dans un template jTpl, la seule solution est d'affecter cette constante à une variable de template puis d'afficher cette variable. Méthode pas propre du tout.

Il faudrait donc pouvoir afficher une constante php dans un template directement.

Actuellement je vois 2 solutions :

  • intégrer cette fonctionnalité dans le core de jTpl
  • créer un plugin jTpl qui sera livré par défaut, par exemple {const 'CONST_NAME'}

La 2ème solution est peut-être la plus simple à mettre en place profite du système de plugins de jTpl

Change History (6)

comment:1 Changed 13 years ago by bballizlife

Concernant la solution avec un plugin, voici ce qu'il pourrait donner :

function jtpl_function_const($tpl, $name) {
    if (defined($name)) {
        echo constant($name);
    }
}

on définirait une constante quelque part dans le code de l'application :

define('FOO', 'hello world !');

Puis appel dans un template :

{const 'FOO'}

Si cette solution convient, je la commit.

comment:2 Changed 13 years ago by laurentj

  • Milestone changed from Jelix 1.0beta2 to Jtpl 1.0
  • Version 1.0 beta1 deleted

comment:3 Changed 13 years ago by laurentj

  • Resolution set to fixed
  • Status changed from new to closed

L'utilisation des constantes est autorisé ou non en fonction du nouveau paramètre de sécurité. Donc on peut maintenant affiché une constante comme n'importe quelle variable.

comment:4 Changed 13 years ago by laurentj

  • Resolution fixed deleted
  • Status changed from closed to reopened

Ticket fermé un peu vite : on ne peut toujours pas afficher uniquement des constantes, bien que l'on puisse les utiliser dans une expression.

comment:5 Changed 12 years ago by Lipki

  • Documentation needed unset

Il serait intéressant de pouvoir définir des constante jTpl, pour compléter celle fourni par défaut.
$j_basepath $j_jelixwww $j_themepath $j_datenow

Sous forme d'un plugin coord, les constantes serais ajouter dans le fichier de config du plugin.

comment:6 Changed 12 years ago by laurentj

  • Resolution set to fixed
  • Status changed from reopened to closed

a "const" plugin has been added into the trunk. svn 1141.

Note: See TracTickets for help on using tickets.