1. IMPORTANT : Nouvelles mesures de sécurité - 2. Règles pour obtenir de l'aide dans les forums de support - 3. Restrictions des droits pour le groupe "Support suspendu"
Il est obligatoire de respecter les Règles de MyBB.fr : Version abrégée ou Version complète pour obtenir du support sur nos forums.
Les membres ayant un site/forum contrevenant aux règles de MyBB.support seront placés dans le groupe "Support suspendu" et ne bénéficieront plus du support du staff. Nous recommandons aux autres membres d'agir de même. Il ne s'agit pas d'un bannissement, le membre retrouvera son statut "normal" dès que sa situation sera conforme aux règles.
Nouveau : un Wiki en français : plus de détails.
Avant de soumettre votre problème, consultez-le, ainsi que la FAQ, sans oublier le moteur de recherche interne.
Pour avoir toutes les dates en français partout dans le forum
Mots-clés » avoir, toutes, dates, français, partout, forum |
01-06-2007, 19:54,
(Modification du message : 22-05-2008, 10:24 par Le Poulpe.)
|
|||
|
|||
Pour avoir toutes les dates en français partout dans le forum
Salut,
Suite à une demande de SunDark dans la section Annonces, à savoir comment avoir la date de l'enregistrement en français dans la partie gauche du thread d'un "posteur", ex: Citation :Messages : 9 j'ai posté en réponse une modif du fichier inc/fonctions_post.php. Ça marche... mais j'ai essayé d'approfondir le truc pour ne pas restreindre cette "traduction" à ce seul cas, mais à tout le forum en général. Si j'ai tout bien compris, les "mises en forme" des dates passent par la fonction my_date() du fichier /inc/functions.php. J'ai donc travaillé là-dessus. Si l'on regarde de près cette fonction, elle utilise la fonction gmdate() qui retourne une chaîne formatée de la date GMT... mais forcément en anglais. D'où l'idée de "remplacer" cete fonction par une fonction qui rendrait cette même heure GMT mais formatée en français. Voilà le résultat de mes travaux, ça marche (en local, pas encore testé en ligne...). Editer le fichier /inc/functions.php Chercher: function my_date($format, $stamp="", $offset="", $ty=1) Voici la fonction en détail Code : [color=#0000a0]/** Il faut intercepter la fonction gmdate(). J'ai donc écrit une nouvelle fonction à cet effet. La voici en détail, commentée largement dans les deux langues ! Citation :/** Il suffit donc ensuite de remplacer les occurrences de gmdate() dans my_date() par my_gmdate() et le tour est joué ! Ce qui donne le code complet suivant: Code : /** Rappel: Par expérience (je n'en savais fichtrement rien), en local (avec EasyPHP en tout cas), il faut utiliser setlocale(LC_TIME, "FR"); (il ne veut pas de la syntaxe "fr_FR") alors qu'en ligne il faut utiliser setlocale(LC_TIME, "fr_FR"); Note: Pour ceux qui auraient éventuellement modifié le fichier /inc/functions_post.php de mon post précédent, il faut bien sûr rétablir l'original ! Merci de bien vouloir me dire si c'est bon. Pour faire plus simple, je joins le fichier functions.php modifié. Faites une copie de l'original en cas... Vive MyBB ! @+ Spyto PS: Merci au staff (et aux autres) de bien vouloir vérifier la liste des paramètres de la fonction! $format=str_replace( array ("D", "l", "M", "F", "d", "j", "y", "o", "M", "H", "h", "z", "m", "i", "a", "s", "N", "W", "w", "y", "Y", "e"), array("%a", "%A", "%b", "%B", "%d", "%e", "%g", "%G", "%h", "%H", "%I", "%j", "%m", "%M", "%p", "%u", "%W", "%w", "%u", "%y", "%Y", "%z"), $format); Le premier array contient les paramètres de format principaux de date() Le deuxième array contient les paramètres de format correspondants de gmstrftime(). Ce sont les mêmes que pour strftime(). |
|||
02-06-2007, 11:29,
(Modification du message : 02-06-2007, 11:36 par Sundark.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Bon allez , c'est partie, je test!!
(je garde une save de functions.php on sais jamais:p:p) Si sa marche niquel, il manque plus qu'a la mettre dans le pack français complet.. (si il y as besoin de remettre un lien, je suis là^^) Aucun problème: Sundark's forum a écrit :Sundark Enfin, deux petit point: -Il y as un A après les date horloge -Les mois dans le volet de gauche est en minuscule (Inscription : mai 2007 , avant Inscription : May 2007) |
|||
02-06-2007, 12:43,
(Modification du message : 22-05-2008, 10:02 par Le Poulpe.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
SunDark a écrit :Enfin, deux petit point:Je ne comprends pas ce que tu veux dire !... A quel endroit ?... Précise ! As-tu modifié le format de l'heure l'admin ? Pour ma part, j'ai mis H:i alors que par défaut c'est H:i A (le paramètre de format 'A' force l'affichage de A ou P en majuscules, pour Ante Meridiem et Post Meridiem !) C'est sans doute de ce A que tu veux parler ? Le remède est simple. Citation :-Les mois dans le volet de gauche est en minuscule Normal, c'est le retour lié � setlocale(fr_FR) de PHP... L� si tu tiens absolument � avoir le nom des mois en majuscules, il faut modifier la dernière ligne de la fonction my_gmdate() de cette façon: remplacer: return gmstrftime($format, $stamp); par return strtoupper(gmstrftime($format, $stamp)); Mais je ne vois pas l'intérêt... D'autant plus que toutes les fonctions d'affichage de date du forum passent par l� , ça pourrait éventuellement provoquer certains comportements inattendus... @+ PS: Pour ce qui est de l'upload du "nouveau" pack, attendons un peu que le staff valide cette modif... Merci de ton offre. Je te ferai signe si j'ai besoin de toi pour upper. Edit du Poulpe : Je recommande toutefois l'utilisation du paramètre G:i |
|||
05-06-2007, 0:11,
(Modification du message : 12-06-2009, 15:38 par Sundark.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Je vais voir pour le fameux "A".
Et la minuscule est très bien comme cela. |
|||
11-07-2007, 17:50,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Astuce pour setlocale, utilisez ca :
Code PHP : setlocale (LC_TIME, "fr_FR.UTF-8", "french", "fr_FR", "fr", "fre", "fra"); |
|||
20-08-2007, 2:24,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Possibilité de réavoir cette traduction de date pour la 1.2.9 ?? :$
|
|||
21-11-2007, 11:12,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
SunDark a écrit :Possibilité de réavoir cette traduction de date pour la 1.2.9 ?? :$Je pense que la modif est valable pour la 1.2.9... (édite le fichier "functions.php" et remplace comme cité dans le post ci-dessus !) @+ |
|||
20-12-2008, 0:31,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
cette modification marche t'elle pour la version 1.4.3?
|
|||
20-12-2008, 9:14,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Sword91 a écrit :cette modification marche t'elle pour la version 1.4.3? Je pense qu'elle doit marcher,mais tu devrais essayer |
|||
20-12-2008, 20:15,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
je vais essayer alors mais le fichier fonction étant assez différent, ça ne marche pas si je télécharge le fichier posté ^^
|
|||
20-12-2008, 21:57,
(Modification du message : 20-12-2008, 21:59 par spyto.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Sword91 a écrit :je vais essayer alors mais le fichier fonction étant assez différent, ça ne marche pas si je télécharge le fichier posté ^^ C'est sûr, le fichier que tu as téléchargé était prévu pour 1.2.8 autant qu'il m'en souvienne ! En partant de ce code, j'ai essayé d'adapter à 1.4.4. Je pense que c'est bon (testé en local). Rajouter au-dessus de function my_date() cette fonction d'interception : Code PHP : function my_gmdate ($format, $stamp) Juste une petite modif : utilisation de la fonction utf8_encode() pour convertir les caractères accentués en UTF-8 : Code PHP : return (gmstrftime($format, $stamp); Code PHP : return utf8_encode(gmstrftime($format, $stamp)); et dans la fonction my-date(), remplacer toutes les occurrences de gmdate() par my_gmdate() qui se charger de convertir en fr avant de rendre la main... Ce qui donne ce fichier /inc/functions.php pour 1.4.4 (gardez une copie de l'original) : |
|||
21-12-2008, 12:30,
(Modification du message : 21-12-2008, 13:41 par Sword91.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
merci ^^ je vais tester
EDIT: j'ai cette date qui apparait: %p 17 décembre avec ton fichier et si j'ajoute le code dans le mien. il faut affiché la date sous quel format dans le panel admin? j'ai comme ça dan mon panel admin: D j F EDIT2: Ma question serait comment avoir Décembre afficher au lieu de décembre (modif cité en haut = DECEMBRE) |
|||
21-12-2008, 20:36,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
up. tu sais d'où sa viens?
|
|||
21-12-2008, 21:56,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Sword91 a écrit :merci ^^ je vais tester Mes formats de date/heure du panel admin : Date : d-m-Y Heure : G:i Date d'enregistrement : M Y é, ça ressemble à un mauvais encodage UTF-8... Essaie de remettre l'original Code PHP : return gmstrftime($format, $stamp); // petite modif ici Code PHP : return utf8_encode(gmstrftime($format, $stamp)); // petite modif ici J'avais rajouté le fonction utf8_encode() parce que le é de Décembre s'affichait mal... Sinon, essaie utf8_encode(). Citation :EDIT2: Ma question serait comment avoir Décembre afficher au lieu de décembre (modif cité en haut = DECEMBRE) Là, je ne comprends pas ce que tu demandes. A quel niveau Décembre au lieu de décembre ? En fait ce thread est ancien : c'était au départ juste pour avoir la date d'enregistrement dans le postbit sous la forme 'mai' au lieu de 'may'. Il n'y avait pas d'autre ambition. De plus dans la verson 1.4, ils utilisent la fonction "adodb_date()" mais je ne connais pas bien son rôle... Info : http://phplens.com/phpeverywhere/adodb_date_library |
|||
27-12-2008, 23:56,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
j'ai remis par défaut car je trouve pas mais dans ces cas la, à quoi sert la traduction dans global.lang.php (inc\languages\french):
Code PHP : $l['month_1'] = "Janvier"; |
|||
28-12-2008, 1:19,
(Modification du message : 28-12-2008, 1:20 par spyto.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Mai si, ça c'est utile et heureusement !!!
Si tu remontes au début de la discussion, tu verras que le seul but était au départ d'afficher le mois d'enregistrement abrégé en fr dans le volet de l'auteur d'un post. ex. "mai 2008" au lieu de "may 2008" Regarde là : http://www.mybb.fr/showthread.php?tid=323&pid=1718#pid1718 C'est tout ! |
|||
30-12-2008, 18:44,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
ok, merci pour les réponses.
|
|||
07-02-2009, 0:23,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
J'ai mis la fichier functions.php ce que ta mis spyto et faire le truc dans le panel admin mais sa met l'heure 22:24 au lieux de 23:24.
|
|||
09-02-2009, 21:47,
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Merci, c'est l'heure fr maintenant
Décidément vous m'aider beaucoup ! |
|||
26-02-2009, 1:47,
(Modification du message : 27-02-2009, 13:44 par AimeSiKey.)
|
|||
|
|||
RE: Pour avoir toutes les dates en français partout dans le forum
Si je veux remplacer par le fichier en pièce jointe ça me fait un beau foirage du forum :
MyBB has experienced an internal SQL error and cannot continue. SQL Error: 1146 - Table 'mondenews.mybb_mybb_moderators' doesn't exist Query: SELECT COUNT(*) as count FROM mybb_mybb_moderators WHERE uid=1 LIMIT 1 |
|||
« Sujet précédent | Sujet suivant »
|
Utilisateur(s) parcourant ce sujet :