4 # List of weekday names (used in modification dates)
6 en => [ 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat' ],
7 tr => [ 'Paz', 'Pzt', 'Sa', 'Çar', 'Pr$', 'Cum', 'Cts' ],
8 fi => [ 'Su', 'Ma', 'Ti', 'Ke', 'To', 'Pe', 'La' ],
9 pt => [ 'Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb' ],
10 hr => [ 'nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'èetvrtak', 'petak', 'subota' ],
11 fr => [ 'Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam' ],
12 de => [ 'Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag' ],
13 it => [ 'dom', 'lun', 'mar', 'mer', 'gio', 'ven', 'sab' ],
14 ja => [ '(Æü)', '(·î)', '(²Ð)', '(¿å)', '(ÌÚ)', '(¶â)', '(ÅÚ)' ],
15 pl => [ 'ni', 'pon', 'wt', '¶ro', 'czw', 'pt', 'so' ],
16 es => [ 'Dom', 'Lun', 'Mar', 'Mie', 'Jue', 'Vie', 'Sab' ],
17 da => [ 'Søn', 'Man', 'Tirs', 'Ons', 'Tors', 'Fre', 'Lør' ],
18 no => [ 'Søn', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'Lør' ],
19 zh => [ '¤é', '¤@', '¤G', '¤T', '¥|', '¤', '¤»' ],
20 sv => [ 'Sön', 'Mån', 'Tis', 'Ons', 'Tor', 'Fre', 'Lör' ],
21 ko => [ 'ìí', 'êÅ', 'ûý', 'â©', 'ÙÊ', 'ÐÝ', '÷Ï' ],
24 # List of month names (used in modification dates, and may be used in news
27 en => [ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
28 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ],
29 tr => [ 'Ocak', 'Þubat', 'Mart', 'Nisan', 'MayIs', 'Haziran',
30 'Temmuz', 'AGustos', 'EylUl', 'Ekim', 'KasIm', 'AralIk' ],
31 fi => [ 'tammi', 'helmi', 'maalis', 'huhti', 'touko',
32 'kesä', 'heinä', 'elo', 'syys', 'loka', 'marras', 'joulu' ],
33 pt => [ 'Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun',
34 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez' ],
35 hr => [ 'sijeènja', 'veljaèe', 'o¾ujka', 'travnja', 'svibnja', 'lipnja',
36 'srpnja', 'kolovoza', 'rujna', 'listopada', 'studenog', 'prosinca' ],
37 fr => [ 'Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Jun',
38 'Jui', 'Aoû', 'Sep', 'Oct', 'Nov', 'Déc' ],
39 de => [ 'Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli',
40 'August', 'September', 'Oktober', 'November', 'Dezember' ],
41 it => [ 'gen', 'feb', 'mar', 'apr', 'mag', 'giu',
42 'lug', 'ago', 'set', 'ott', 'nov', 'dic' ],
43 ja => [ '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12' ],
44 pl => [ 'sty', 'lut', 'mar', 'kwie', 'maj', 'cze',
45 'lip', 'sie', 'wrz', 'pa¼', 'lis', 'gru' ],
46 es => [ 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun',
47 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic' ],
48 da => [ 'Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun',
49 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec' ],
50 no => [ 'jan', 'feb', 'mar', 'apr', 'mai', 'jun',
51 'jul', 'aug', 'sep', 'okt', 'nov', 'des' ],
52 zh => [ '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12' ],
53 # zh => [ '¤@¤ë', '¤G¤ë', '¤T¤ë', '¥|¤ë', '¤¤ë', '¤»¤ë',
54 # '¤C¤ë', '¤K¤ë', '¤E¤ë', '¤Q¤ë', '¤Q¤@¤ë', '¤Q¤G¤ë' ],
55 sv => [ 'jan', 'feb', 'mar', 'apr', 'maj', 'jun',
56 'jul', 'aug', 'sep', 'okt', 'nov', 'dec' ],
57 ko => [ '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12' ],
60 # Date format (sprintf) for modification dates. If none is supplied, the
61 # standard format "Www, Mmm Dd HH:MM:SS UTC Yyyy" is used instead.
63 hr => '"%s, %2d. %s %s., %02d:%02d:%02d %s", $wday, $mday, $mon, 1900+$year, $hour, $min, $sec, "UTC"',
64 # tr => '"%s, %2d. %s %s., %02d:%02d:%02d %s", $wday, $mday, $mon, 1900+$year, $hour, $min, $sec, "UTC"',
65 fr => '"%s, %2d. %s %s., %02d:%02d:%02d %s", $wday, $mday, $mon, 1900+$year, $hour, $min, $sec, "UTC"',
66 zh => '"%s ¦~ %s ¤ë %s ¤é ¬P´Á%s %02d:%02d:%02d %s", 1900+$year, $mon, $mday, $wday, $hour, $min, $sec, "UTC"',
67 sv => '"%s %04d-%02d-%02d %02d.%02d.%02d %s", $wday, 1900+$year, $monnr+1, $mday, $hour, $min, $sec, "UTC"',
68 no => '"%s %2d. %s %s kl. %02d.%02d.%02d %s", $wday, $mday, $mon, $year, $hour, $min, $sec, "UTC"',
69 ja => '"%s ǯ %s ·î %s Æü %s %02d:%02d:%02d %s", 1900+$year, $mon, $mday, $wday, $hour, $min, $sec, "UTC"',
71 de => '"%s den %d. %s %s um %02d:%02d:%02d Uhr %s", $wday, $mday, $mon, 1900+$year, $hour, $min, $sec, "UTC"'
74 # Date format (sprintf) for news items. If none is supplied, the standard
75 # format "Dd Mmm Yyyy" is used instead.
77 sv => '"%4d-%02d-%02d", $year, $mon, $mday',
78 fi => '"%02d. %02d. %04d", $mday, $mon, $year',
79 hr => '"%02d. %02d. %04d", $mday, $mon, $year',
80 de => '"%02d.%02d.%04d", $mday, $mon, $year',
81 ja => '"%04d ǯ %02d ·î %02d Æü", $year, $mon, $mday',
82 da => '"%02d. %02d. %04d", $mday, $mon, $year',
83 no => '"%02d. %s %04d", $mday, $mon_str, $year',
84 zh => '"%04d ¦~ %02d ¤ë %02d ¤é", $year, $mon, $mday',
88 my ($time, $sec, $min, $hour, $mday, $monnr, $year, $wday, $yday, $isdst, $mon);
89 # The last modification time of inputfile in ISO dd-mm-yyyy hh:mm:ss format.
90 if (defined $(GEN_TIME)) {
91 $WML_GEN_ISOTIME =~ /(..)-(..)-(....) (..):(..):(..)/;
92 $time = timelocal($6, $5, $4, $1, $2-1, $3);
95 $WML_SRC_ISOTIME =~ /(..)-(..)-(....) (..):(..):(..)/;
96 $time = timelocal($6, $5, $4, $1, $2-1, $3);
98 ($sec, $min, $hour, $mday, $monnr, $year, $wday, $yday, $isdst) = gmtime($time);
99 $wday = $dow{$CUR_ISO_LANG}[$wday];
100 $mon = $moy{$CUR_ISO_LANG}[$monnr];
101 $str = defined($dateform{$CUR_ISO_LANG}) ?
102 eval("sprintf($dateform{$CUR_ISO_LANG})") :
103 sprintf("%s, %s %2d %02d:%02d:%02d %s %04d",
104 $wday, $mon, $mday, $hour, $min, $sec, "UTC", 1900+$year);
109 my ($year, $mon, $mday) = split /-/, $_[0];
110 # Make sure the date is in the YYYY-MM-DD format
111 return $_[0] unless $mday;
112 return $_[0] if ($year < 1900);
114 $mon_str = $moy{$CUR_ISO_LANG}[$mon - 1];
115 return defined($newsdateform{$CUR_ISO_LANG}) ?
116 eval("sprintf($newsdateform{$CUR_ISO_LANG})") :
117 sprintf("%02d %s %04d", $mday, $mon_str, $year);