Last active
December 19, 2015 05:59
-
-
Save ms-studio/5907691 to your computer and use it in GitHub Desktop.
Des boucles d'écriture de date, pour des EVENEMENTS du plugin SPIP Agenda...
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Exemple 1: | |
Format souhaité: | |
- si un seul jour: "24.10.13" | |
- si plusieurs jours: "08.10 - 20.10.13" | |
- si les années sont différentes: "18.12.13 - 10.01.14" | |
le code: | |
[(#DATE_DEBUT|jour|=={[(#DATE_FIN|jour)]}|?{ | |
[(#DATE_DEBUT|affdate{'d.m.y'})], | |
[(#DATE_DEBUT|annee|=={[(#DATE_FIN|annee)]}|?{ | |
[(#DATE_DEBUT|affdate{'d.m'})] - [(#DATE_FIN|affdate{'d.m.y'})] , | |
[(#DATE_DEBUT|affdate{'d.m.y'})] - [(#DATE_FIN|affdate{'d.m.y'})] | |
})] | |
})] | |
**************** | |
Exemple 2: | |
Format souhaité: | |
- si un seul jour: "mardi 20 mai" | |
- si plusieurs jours: "du mercredi 11 septembre au dimanche 22 septembre" | |
le code: | |
[(#DATE_DEBUT|jour|=={[(#DATE_FIN|jour)]}|?{ | |
[(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate_jourcourt)], | |
du [(#DATE_DEBUT|nom_jour)] [(#DATE_DEBUT|affdate_jourcourt)] au [(#DATE_FIN|nom_jour)] [(#DATE_FIN|affdate_jourcourt)] | |
})] | |
**************** | |
Exemple 3 (le Saint Graal...): | |
Format souhaité: | |
- si un seul jour: "mardi 20 mai (2014)" | |
- si plusieurs jours, même mois: "du 11 au 22 septembre (2014)" | |
- si plusieurs mois: "du 11 octobre au 22 septembre (2014)" | |
le code: | |
[[(#REM) | |
<!-- question #1 = jour identique? --> | |
](#DATE_DEBUT | |
|affdate | |
|=={[(#DATE_FIN|affdate)]} | |
|?{[(#REM) | |
<!-- réponse #1 = oui, un seul jour --> | |
][<span class="jour">(#DATE_DEBUT|nom_jour)</span>] [(#DATE_DEBUT|affdate)],[(#REM) | |
<!-- réponse #1 = non, plusieurs jours. | |
question #2 = mois identique? --> | |
][(#DATE_DEBUT | |
|mois | |
|=={[(#DATE_FIN|mois)]} | |
|?{ | |
[(#REM) | |
<!-- réponse #2 = oui, un mois. | |
question #3 = année identique? --> | |
][(#DATE_DEBUT | |
|annee | |
|=={[(#DATE_FIN|annee)]} | |
|?{ | |
[<!--même mois & année-->Du (#DATE_DEBUT|jour)][ au (#DATE_FIN|affdate)], | |
[<!--deux années-->Du (#DATE_DEBUT|affdate)][ au (#DATE_FIN|affdate)] | |
})], | |
[(#REM) | |
<!-- réponse #2 = plusieurs mois. | |
question #3 = année identique? --> | |
][(#DATE_DEBUT | |
|annee | |
|=={[(#DATE_FIN|annee)]} | |
|?{ | |
[<!--même année-->Du (#DATE_DEBUT|jour)][ (#DATE_DEBUT|nom_mois)][ au (#DATE_FIN|affdate)], | |
[<!--plusieurs années-->Du (#DATE_DEBUT|affdate)][ au (#DATE_FIN|affdate)] | |
})] | |
})] | |
})] | |
**************** | |
Références: | |
* http://contrib.spip.net/Utilisation-des-filtres-de-date?lang=fr | |
* http://www.spip.net/fr_article901.html |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment