Moodle magyar hónap és napnevek

A mai napon volt alkalmam elszórakozni azzal, hogy átállítstam a fórumban/naptárban (és még sok más helyen) lévő hónap és nap neveket magyarra.

Az alap megoldás az lenne, hogy a szerver “locale” funkcióját használva átállítom a szerver nyelvét magyarra (hu vagy hu_HU). Akinek nincs erre lehetősége, más utat kell keresnie. A moodle.org fórumán találtam rá a lehetséges megoldásra. A moodlelib.php fájlba kell beleírni (lib könyvtáron belül van).

A dátumot alapból így rakja össze (valahol az 1000-1100. sornál található a fájlban):

/// If we are running under Windows convert from windows encoding to UTF-8
/// (because it’s impossible to specify UTF-8 to fetch locale info in Win32)

if ($CFG->ostype == ‘WINDOWS’) {
if ($localewincharset = get_string(‘localewincharset’)) {
$textlib = textlib_get_instance();
$datestring = $textlib->convert($datestring, $localewincharset, ‘utf-8′);
}
}
return $datestring;
}

A return parancs elé kell beírni azt a php kódot, amivel a $datestring változóban lévő angol hónap és napneveket lecseréli magyarra. Mivel a php fájl nem utf-8as kódolású (és nem is szabad átállítani!!), így az ékezeteket a megfelelő html kódokkal kell helyettesíteni. A végeredmény így néz ki:

/// If we are running under Windows convert from windows encoding to UTF-8

/// (because it’s impossible to specify UTF-8 to fetch locale info in Win32)

if ($CFG->ostype == ‘WINDOWS’) {

if ($localewincharset = get_string(‘localewincharset’)) {

$textlib = textlib_get_instance();

$datestring = $textlib->convert($datestring, $localewincharset, ‘utf-8′);

}

}

//Section for translating month and day names to Hungarian

if (current_language()==’hu_utf8′) {
$datestring = str_replace(‘January’,’január’,$datestring);
$datestring = str_replace(‘February’,’február’,$datestring);
$datestring = str_replace(‘March’,’március’,$datestring);
$datestring = str_replace(‘April’,’április’,$datestring);
$datestring = str_replace(‘May’,’május’,$datestring);
$datestring = str_replace(‘June’,’június’,$datestring);
$datestring = str_replace(‘July’,’július’,$datestring);
$datestring = str_replace(‘August’,’augusztus’,$datestring);
$datestring = str_replace(‘September’,’szeptember’,$datestring);
$datestring = str_replace(‘October’,’október’,$datestring);
$datestring = str_replace(‘November’,’november’,$datestring);
$datestring = str_replace(‘December’,’december’,$datestring);
$datestring = str_replace(‘Monday’,’hétfõ’,$datestring);
$datestring = str_replace(‘Tuesday’,’kedd’,$datestring);
$datestring = str_replace(‘Wednesday’,’szerda’,$datestring);
$datestring = str_replace(‘Thursday’,’csütörtök’,$datestring);
$datestring = str_replace(‘Friday’,’péntek’,$datestring);
$datestring = str_replace(‘Saturday’,’szombat’,$datestring);
$datestring = str_replace(‘Sunday’,’vasárnap’,$datestring);
}
//End of section for translating month and day names to Hungarian

return $datestring;

}

1.8-as és 1.9-es verzióval teszteltem, működik.

9 megjegyzés


  1. Üdv.
    Nekem meg akar jelenni a magyar dátum, csak éppen nem jók az ékezetes betűk.
    1.9-es moodle.

    Van esetleg valami ötleted?
    Köszi!

    Idéz | Posted 2008/03/31, 19:02

  2. Rájöttem:
    A magyar langconfig.php -ben valamiért nincs kitöltve a windows-os charset.

    Innen bemásoltam és most jó.
    http://docs.moodle.org/en/Table_of_locales

    Örültem. Csá! :)

    Idéz | Posted 2008/03/31, 19:36

  3. Mire ránéztem az oldalra, már jó is volt a naptárnál a hónapnév, ékezet.
    Örülök, hogy sikerült gyorsan megoldani.
    További jó munkát a Moodle rendszerrel! :-)

    Idéz | Posted 2008/03/31, 20:12

  4. Szia!

    Én ezt végigcsináltam, de nekem még mindig angolok a hónapok :(

    Mit csináljak? Lécci segíts!

    Üdv.

    Idéz | Posted 2010/03/28, 16:40

  5. Szia Akos.

    Sajnalom h. nem ment rogton.
    Ez a sor
    if (current_language()==’hu_utf8′)
    azt jelenti a kodban, hogy magyarra kell allitanod az oldalad nyelv-et. Ezt megtetted?

    Ad valami hibauzenetet, vagy csak szimplan angolul jelenik meg tovabbra is a honapnev?
    Nyomtal a bongeszodben egy refresh gombot a moodle oldaladon, hogy biztosan a legujabb dolgot mutassa?

    udv, At.

    Idéz | Posted 2010/03/29, 01:14

  6. Köszi a gyors választ!

    Természetesen magyarul néztem az oldalt, és az előzményeket, sütiket is töröltem a böngészőből!

    weboldalam: moodle.weboldala.net

    Üdv.

    Idéz | Posted 2010/03/29, 10:18

  7. Megoldottam, köszi :) Sikerült!

    Idéz | Posted 2010/03/29, 14:24

  8. Problémámat megoldottam, úgy hogy megfelelő (UTF8) kódolást használtam :)

    Most újabb problémám adott, ha a moodle-n keresztül töltök fel file-okat, akkor azt vagy nem lehet azután megnyitni, vagy pl a docot se helyesen :S

    Várom segítséged :)

    Idéz | Posted 2010/03/31, 13:17

  9. Hello!

    Lehet, hogy bugyuta lesz a kérdésem, de én most először találkoztam a moodle rendszerrel, mert egy kolléga kérte hogy telepítsem fel az iskolai honlap mellé. Ez meg is történt de sajnos a webszerver nem saját, hanem bérelt így több teszt után az 1.7.7-es verzió fel is ment a szerverünkre, de csak angolul. Szeretném magyarrá tenni de ez az admin menüből nem sikerül mindig ki fagy olvastam hogy lehet manuálisan. le is töltöttem a megfelelő állomány és ki is tömörítettem és fel is másoltam a moodledata/lang könyvtárba, de nem történt semmi. Mi tegyek ilyenkor!

    üdv

    Idéz | Posted 2012/10/04, 14:31

Megjegyzés