Menu

Ajouter une condition basée sur la date du jour dans un fichier tpl

-
Bonjour

je voudrais modifier un fichier tpl pour que une box (un input "$order.box") est un style "pointer-events:none" lorsque une valeur "$order.date" est inférieure à 30 jours de celle de la date du jour.

Exemple : si "$order.date" renvoie la date de 4 janvier, étant aujourd'hui le 4 février, $order.box à le style pointer-events:none.

Je ne sais pas coder. Est-ce que vous seriez le faire ?

Merci
Afficher la suite 

Votre réponse

4 réponses

Messages postés
24581
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 février 2019
1849
0
Merci
Bonjour,
Je suppose que tu parles de fichiers TPL smarty...
Dans ce cas :
https://www.smarty.net/docsv2/fr/language.function.if.tpl

Commenter la réponse de jordane45
0
Merci
oui c'est ça. Est-ce qu'il est possible d'écrire ce que je veux avec ce langage ? On peut faire entrer des notions de dates la dedans ?
jordane45
Messages postés
24581
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 février 2019
1849 -
Tu lis la doc....
Ca devrait être indiqué.
Personnellement je ne l'utilise pas.
Commenter la réponse de Greg766
0
Merci
En ajoutant " {if $order.date == 0} style="display:none;"{/if} dans le imput (<input type="checkbox") j'arrive à faire supprimer la box, ce qui est pas mal.

Et j'arrive à afficher la date du jour avec {$smarty.now|date_format:"%D"}.

Si quelqu'un sait faire la suite en liant les deux, je suis preneur !

Problème, la date du jour s'affiche 2/5/2019...
jordane45
Messages postés
24581
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 février 2019
1849 -
C'est dans la doc...
%D correspond à %m/%d/%y...
Donc toi tu dois ecrire
%d/%m/%y
jordane45
Messages postés
24581
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
19 février 2019
1849 -
Concernant ton test sur la date...je te conseille de le faire dans ton controller (et de stocker le résultat dans une variable) et non dans ton template...
On évite de mettre du code "metier" dans les vues...
Commenter la réponse de Greg766
0
Merci
merci pour la date. Pour le code "métier" je vois très vaguement ce que vous voulez dire, mais les modifications fonctionnent dans le tpl, en tout cas pour l'action sur le style.

Et ça : "le faire dans ton controller (et de stocker le résultat dans une variable)" je ne sais pas faire et je pense que le code serait alors plus compliqué encore.

Pour la totalité du code dans le fichier tpl, je ne suis pas capable de l'écrire. Je ne sais même pas si je peux reprendre "$smarty.now" dans le if : {if $order.date <= $smarty.now et s'il faut mettre $smarty.now avec le date_format. Ensuite, comment intégrer les +30 jours ?

Si quelqu'un pouvez me pondre le code, ce serait super. Je peux proposer 10€ par PayPal.
Commenter la réponse de Greg766