Ajouter une année dans les champs date

MantisBT forum for users who prefer to ask and answer questions in French.

Moderators: Developer, Contributor

Post Reply
Stef06
Posts: 73
Joined: 09 Jan 2012, 07:52

Ajouter une année dans les champs date

Post by Stef06 »

Bonjour à tous,

Je souhaiterais savoir si quelqu'un pourrait m'expliquer comment ajouter l'année "2010" dans un champ "date". En effet, je n'ai la possibilité que de choisir "2011|2012|013|2014|2015"...

Merci pour votre aide.

Stef.
Lapinkiller
Posts: 408
Joined: 28 Jan 2011, 18:47
Location: France
Contact:

Re: Ajouter une année dans les champs date

Post by Lapinkiller »

Bonjour

quel champ date avec uniquement des années parles tu ?

ne serait ce pas un champ personnalisé de type énumération par exemple ?

si tu fais un champ de type date tu pourras sélectionner le jour le mois et l'année, et dansl'année tu as bien l'année 2010 (je viens de tester sur mon environnement)..

quel version de Mantis utilise tu ?
Lapinkiller,
French PHP developer
New look for your mantis : http://www.mantisbt.org/forums/viewtopi ... =4&t=20055
Stef06
Posts: 73
Joined: 09 Jan 2012, 07:52

Re: Ajouter une année dans les champs date

Post by Stef06 »

Bonjour Lapinkiller, merci beaucoup pour ta réponse!!

En effet, c'est sur un champ personnalisé de type 'date' que j'ai un problème. Mais pas sur tous... c'est ça qui me chiffonne... Certains m'affichent bien 2010, mais pas celui-là...

Visiblement, il faudrait modifier le script de construction du champ personnalisé à l'affichage de la page dans laquelle il se trouve (c'est une manip qui a déjà été faite par le passé, mais la personne qui s'en est occupée n'est plus dans les effectifs, ça serait trop facile).

La version de Mantis que j'utilise est la 1.1.6.. qui est ancienne, mais elle est trop customisée pour pouvoir être mise à jour sans avoir des semaines de boulots pour tout refaire (c'est connu chez nous, et un sujet devenu "sensible")...

Le source de la page, et pour le champ personnalisé c'est :

"<tr class="row-1"> <td id="champ_custom_18" class="custom_field category">
Date Effective de mise en Prod </td>
<td colspan="5">
<select tabindex="34" name="custom_field_18_day" ><option value="0"></option><option value="1"> 1 </option><option value="2"> 2 </option><option value="3"> 3 </option><option value="4"> 4 </option><option value="5"> 5 </option><option value="6"> 6 </option><option value="7"> 7 </option><option value="8"> 8 </option><option value="9"> 9 </option><option value="10"> 10 </option><option value="11"> 11 </option><option value="12"> 12 </option><option value="13"> 13 </option><option value="14"> 14 </option><option value="15"> 15 </option><option value="16"> 16 </option><option value="17"> 17 </option><option value="18"> 18 </option><option value="19"> 19 </option><option value="20"> 20 </option><option value="21"> 21 </option><option value="22"> 22 </option><option value="23"> 23 </option><option value="24"> 24 </option><option value="25"> 25 </option><option value="26"> 26 </option><option value="27"> 27 </option><option value="28"> 28 </option><option value="29"> 29 </option><option value="30"> 30 </option><option value="31"> 31 </option></select>
<select tabindex="35" name="custom_field_18_month" ><option value="0"></option><option value="1"> 1 </option><option value="2"> 2 </option><option value="3"> 3 </option><option value="4"> 4 </option><option value="5"> 5 </option><option value="6"> 6 </option><option value="7"> 7 </option><option value="8"> 8 </option><option value="9"> 9 </option><option value="10"> 10 </option><option value="11"> 11 </option><option value="12"> 12 </option></select>
<select tabindex="36" name="custom_field_18_year" ><option value="0"></option><option value="2011"> 2011 </option><option value="2012"> 2012 </option><option value="2013"> 2013 </option><option value="2014"> 2014 </option><option value="2015"> 2015 </option></select>
</td>
</tr>"

Et celui qui m'intéresse c'est le "custom_field_18_year"...

Est-ce qu'il y a vraiment une solution, ou dois-je plutôt opter pour la solution : "Vous n'aviez qu'à traiter vos fiches en temps et en heure" ? :p)

Merci beaucoup.

Stf.
Stef06
Posts: 73
Joined: 09 Jan 2012, 07:52

Re: Ajouter une année dans les champs date

Post by Stef06 »

Salut à tous,

Bon, on a trouvé la parade. On a fait une modification dans le code pour afficher une année supplémentaire dans le fichier "/mantis-1.1.6-0/apps/mantis/htdocs/core/date_api.php" :

function print_year_range_option_list( $p_year = 0, $p_start = 2009, $p_end = 0) {
$t_current = strval( intval(date( "Y" )) -1 ) ;
>> $t_previous_years = 1; // AJOUT DU PARAMETRE INDIQUANT LE NOMBRE D'ANNEES A RETRANCHER DE L'ANNEE INITIALE
$t_forward_years = config_get( 'forward_year_count' ) ;

$t_start_year = $p_start ;
if ($t_start_year == 0) {
$t_start_year = $t_current ;
}
if ( ( $p_year < $t_start_year ) && ( $p_year != 0 ) ) {
$t_start_year = $p_year ;
}

$t_end_year = $p_end ;
if ($t_end_year == 0) {
$t_end_year = $t_current + $t_forward_years ;
}
if ($p_year > $t_end_year) {
$t_end_year = $p_year + $t_forward_years ;
}

>> for ($i=$t_start_year-$t_previous_years; $i <= $t_end_year; $i++) { // ON RETRANCHE LE NOMBRE D'ANNEES SOUHAITEES DE L'ANNEE
if ($i == $p_year) {
PRINT "<option value=\"$i\" selected=\"selected\"> $i </option>" ;
} else {
PRINT "<option value=\"$i\"> $i </option>" ;
}
}
}

Du coup ça affiche de 2010 à 2015 ... impec !

A plus !

Stf.
Post Reply