Bonjour à tous,
Depuis la version 2.5.4 de Xoops, la gestion des dates à légèrement changé ce qui pose quelques problème avec certain module. Ce poste voue permettra de corriger ces problème en attendant que les développeurs de modules ne le fasse.
Premièrement la version française de xoops doit être changée. Pour cela il faut modifier le fichier "language/french/global.php":
remplacer la ligne:
define("_SHORTDATESTRING","d/m/Y");
Par
define("_SHORTDATESTRING","d-m-Y");
Maintenant les modulesTDMDownloads:Il faut modifier le fichier "class/tdmdownloads_downloads.php":
remplacer la ligne:
$selection_date->addElement(new XoopsFormTextDateSelect('', 'date', '', strtotime(formatTimestamp(time()))));
Par
$selection_date->addElement(new XoopsFormTextDateSelect('', 'date', '', time()));
Extcal:Il faut modifier le fichier "post.php":
supprimer les lignes:
// If the date format is wrong
if(!preg_match('`[0-9]{4}-[01][0-9]-[0123][0-9]`', $_POST['event_start']['date']) ||
!preg_match('`[0-9]{4}-[01][0-9]-[0123][0-9]`', $_POST['event_end']['date'])) {
redirect_header('index.php', 3, _MD_EXTCAL_WRONG_DATE_FORMAT."<br />".implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
exit;
}
Il faut modifier le fichier "class/event.php":
remplacer les lignes:
list($year,$month,$day) = explode("-",$data['event_start']['date']);
$data['event_start'] = mktime(0,0,0,$month,$day,$year) + $data['event_start']['time'];
list($year,$month,$day) = explode("-",$data['event_end']['date']);
$data['event_end'] = mktime(0,0,0,$month,$day,$year) + $data['event_end']['time'];
if($data['have_end'] == 0 || $data['event_start'] > $data['event_end']) {
$data['event_end'] = $data['event_start'];
}
Par
$data['event_start'] = strtotime($data['event_start']['date']) + $data['event_start']['time'];
$data['event_end'] = strtotime($data['event_end']['date']) + $data['event_end']['time'];
Il faut modifier le fichier "admin/event.php":
supprimer les lignes:
// If the date format is wrong
if(!preg_match('`[0-9]{4}-[01][0-9]-[0123][0-9]`', $_POST['event_start']['date']) ||
!preg_match('`[0-9]{4}-[01][0-9]-[0123][0-9]`', $_POST['event_end']['date'])) {
redirect_header('index.php', 3, _MD_EXTCAL_WRONG_DATE_FORMAT."<br />".implode('<br />', $GLOBALS['xoopsSecurity']->getErrors()));
exit;
}
Pour les autres modules qui ne marchent plus, merci de les lister pour qu l'on trouve une solution ensemble.
P.S Kris peux-tu mettre à jour la version français?