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.


Note de ce sujet :
  • Moyenne : 3 (2 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Plugin] Traduire les dates en français
Mots-clés » plugin, traduire, date, français, facile, dates
25-04-2015, 23:52, (Modification du message : 26-04-2015, 1:16 par sinse73.)
#14
RE: [Plugin] Traduire les dates en français
Hop, alors j'ai ajouté le petit bout de ligne pour la conversion à chaque fois que la variable $membday était appelé et donc dans le fichier member.php j'ai modifié les lignes suivantes :

Code PHP :
                if($membday[2] >= 1970)
                {
                    
$w_day date("l"mktime(000$membday[1], $membday[0], $membday[2]));
                    
$membday format_bdays($mybb->settings['dateformat'], $membday[1], $membday[0], $membday[2], $w_day);
                }
                else
                {
                    
$bdayformat fix_mktime($mybb->settings['dateformat'], $membday[2]);
                    
$membday mktime(000$membday[1], $membday[0], $membday[2]);
                    
$membday date($bdayformat$membday);
                }
                
$membdayage $lang->membdayage;
            }
            elseif(
$membday[2])
            {
                
$membday mktime(00011$membday[2]);
                
$membday date("Y"$membday);
                
$membdayage '';
            }
            else
            {
                
$membday mktime(000$membday[1], $membday[0], 0);
                
$membday date("F j"$membday);
                
$membdayage '';
            }
        } 
 en

Code PHP :
if($membday[2] >= 1970)
                {
                    
$w_day date("l"mktime(000$membday[1], $membday[0], $membday[2]));
                    
$membday format_bdays($mybb->settings['dateformat'], $membday[1], $membday[0], $membday[2], $w_day);
                    
$membday frenchdate_convert($membday);
                }
                else
                {
                    
$bdayformat fix_mktime($mybb->settings['dateformat'], $membday[2]);
                    
$membday mktime(000$membday[1], $membday[0], $membday[2]);
                    
$membday date($bdayformat$membday);
                    
$membday frenchdate_convert($membday);
                }
                
$membdayage $lang->membdayage;
            }
            elseif(
$membday[2])
            {
                
$membday mktime(00011$membday[2]);
                
$membday date("Y"$membday);
                
$membday frenchdate_convert($membday);
                
$membdayage '';
            }
            else
            {
                
$membday mktime(000$membday[1], $membday[0], 0);
                
$membday date("F j"$membday);
                
$membday frenchdate_convert($membday);
                
$membdayage '';
            }
        } 

Et concernant l'heure local, j'ai modifié le morceau :

Code PHP :
$memregdate my_date($mybb->settings['dateformat'], $memprofile['regdate']);
    
$memlocaldate gmdate($mybb->settings['dateformat'], TIME_NOW + ($memprofile['timezone'] * 3600));
    
$memlocaldate frenchdate_convert($memlocaldate);
    
$memlocaltime gmdate($mybb->settings['timeformat'], TIME_NOW + ($memprofile['timezone'] * 3600)); 

en

Code PHP :
$memregdate my_date($mybb->settings['dateformat'], $memprofile['regdate']);
    
$memlocaldate gmdate($mybb->settings['dateformat'], TIME_NOW + ($memprofile['timezone'] * 3600));
    
$memlocaldate frenchdate_convert($memlocaldate);
    
$memlocaltime gmdate($mybb->settings['timeformat'], TIME_NOW + ($memprofile['timezone'] * 3600)); 

Ce qui a l'air de faire le boulot.


*******************************

Edit :
Par contre un truc que je n'arrive pas à régler c'est un affichage correct en "Jour numéro Mois", pour cela je mets "l j F" comme paramètre de configuration pour l'affichage de la date dans l'admin mais ça ne veut pas, je me retrouve avec du "j l F", sans le plugin cela fonctionne bien, donc c'est lié à la françisation de la date.
J'ai noté qu'en utilisant "l - j F" le jour restait bien en première position dans ce cas.

Quelqu'un a une idée ?

*******************************


Edit :
Si on supprime les lignes de fin du plugin :

Code PHP :
    $date preg_replace('#^([^0-9\s]+)(\s+)([0-9]{1,2})(\s+.*)?$#''$3$2$1$4'$date);
    
$date preg_replace('#([0-9])(\s*)H(\s*)([0-9])#''$1$2h$3$4'$date); 

Tout à l'air de bien aller. Je ne comprends d'ailleurs à quoi elle servait, la seconde ligne a l'air de concerner l'affichage de l'heure mais pour la première ligne je ne vois pas.
Répondre


Messages dans ce sujet
RE: [Plugin] Traduire les dates en français - sinse73 - 25-04-2015, 23:52



Utilisateur(s) parcourant ce sujet : 1 visiteur(s)

Contact | MyBB.support | Retourner en haut | Retourner au contenu | Version bas-débit (Archivé) | Syndication RSS
 Utilitaire de traduction fourni par Regentronique