Baba: toLocalString()

Beitrag lesen

Hallo allerseits.

Es geht um die Zeitausgabe auf einer mehrsprachigen Seite bei der per JS ein Timestamp in die lokale Zeit umgewandelt wird, mit einem Fallback für die UTC-Zeit.

Z.B schreibe ich das Datum der letzten Änderung auf jede Page, mit:

<div id="lastupdate">Last update: <span class='usertimestamp' data-time='1370961211000' data-lang='en'>Tuesday, 11 June 2013 16:33 (UTC+2)</span></div>

"Last update:" ist dynamisch, je nach eingestellter Sprache. Ebenso die Fallback-UTC-Zeit wird je nach eingestellter Sprache ausgegeben.

Mit dieser Funktion übersetze ich diesen Timestamp zu der lokalen Uhrzeit:

$(function(){  
  
  $("span.usertimestamp").each(function(){  
  
    var b2UserDate = new Date(parseInt($(this).attr("data-time")));  
    var b2UserLang = $(this).attr("data-lang");  
    $(this).html(b2UserDate.toLocaleString());  
  
  });  
  
});

Das Problem nun: ich bekomme immer das Deutsche Datum, auch wenn ich die Seite auf Englisch laufen habe:

Last update: Dienstag, 11. Juni 2013 16:33:31

Kann ich das irgendwie umstellen oder nimmt JS das ausschliesslich vom OS?

PS: warum wird bei diesem Forum eigentlich immer um JS-Code eine (schöne) Box gezeichnet, mit abgesetztem Hintergrund, nicht aber um HTML-Code? KÖnnte man das einheitlich machen?

Cheers,
Baba