1##
2## Finnish tables
3## Contributed by Matthew Musgrove <muskrat@mindless.com>
4## Corrected by roke
5##
6
7package Date::Language::Finnish;
8
9use Date::Language ();
10use vars qw(@ISA @DoW @DoWs @MoY @MoYs @AMPM @Dsuf %MoY %DoW $VERSION);
11@ISA = qw(Date::Language);
12$VERSION = "1.01";
13
14# In Finnish, the names of the months and days are only capitalized at the beginning of sentences.
15@MoY  = map($_ . "kuu", qw(tammi helmi maalis huhti touko kesheinelo syys loka marras joulu));
16@DoW  = qw(sunnuntai maanantai tiistai keskiviikko torstai perjantai lauantai);
17
18# it is not customary to use abbreviated names of months or days
19# per Graham's suggestion:
20@MoYs = @MoY;
21@DoWs = @DoW;
22
23# the short form of ordinals
24@Dsuf = ('.') x 31;
25
26# doesn't look like this is normally used...
27@AMPM = qw(ap ip);
28
29
30@MoY{@MoY}  = (0 .. scalar(@MoY));
31@MoY{@MoYs} = (0 .. scalar(@MoYs));
32@DoW{@DoW}  = (0 .. scalar(@DoW));
33@DoW{@DoWs} = (0 .. scalar(@DoWs));
34
35# Formatting routines
36
37sub format_a { $DoWs[$_[0]->[6]] }
38sub format_A { $DoW[$_[0]->[6]] }
39sub format_b { $MoYs[$_[0]->[4]] }
40sub format_B { $MoY[$_[0]->[4]] }
41sub format_h { $MoYs[$_[0]->[4]] }
42sub format_p { $_[0]->[2] >= 12 ?  $AMPM[1] : $AMPM[0] }
43sub format_o { sprintf("%2de",$_[0]->[3]) }
44
451;