diff --git a/baz_april_fonctions.php b/baz_april_fonctions.php index 2ae6953..4ac1609 100644 --- a/baz_april_fonctions.php +++ b/baz_april_fonctions.php @@ -1,14 +1,42 @@ 28/02/2007 + * + * @param string $date + * @param int $decalage + * @param string $format + * @return string + */ +function baz_moisdecal($date, $decalage, $format = 'Y-m-d H:i:s') { + include_spip('inc/filtres'); + $date_array = recup_date($date); + $annee = $mois = $jour = NULL; + if ($date_array) { + list($annee, $mois, $jour) = $date_array; + } + if (!$jour) { + $jour = 1; + } + if (!$mois) { + $mois = 1; + } + $mois2 = $mois + $decalage; + $date2 = mktime(1, 1, 1, $mois2, $jour, $annee); + // mois normalement attendu + $mois3 = date('m', mktime(1, 1, 1, $mois2, 1, $annee)); + // et si le mois de la nouvelle date a moins de jours... + $mois2 = date('m', $date2); + if ($mois2 - $mois3) { + $date2 = mktime(1, 1, 1, $mois2, 0, $annee); + } + return date($format, $date2); +} diff --git a/paquet.xml b/paquet.xml index cf48ad4..2cba7fc 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ -