Lines 2668-2703
sub _numeration {
Link Here
|
2668 |
$num_type //= ''; |
2668 |
$num_type //= ''; |
2669 |
$locale ||= 'en'; |
2669 |
$locale ||= 'en'; |
2670 |
my $string; |
2670 |
my $string; |
2671 |
given ($num_type) { |
2671 |
if ( $num_type =~ /^dayname$/ ) { |
2672 |
when (/^dayname$/) { |
2672 |
# 1970-11-01 was a Sunday |
2673 |
# 1970-11-01 was a Sunday |
2673 |
$value = $value % 7; |
2674 |
$value = $value % 7; |
2674 |
my $dt = DateTime->new( |
2675 |
my $dt = DateTime->new( |
2675 |
year => 1970, |
2676 |
year => 1970, |
2676 |
month => 11, |
2677 |
month => 11, |
2677 |
day => $value + 1, |
2678 |
day => $value + 1, |
2678 |
locale => $locale, |
2679 |
locale => $locale, |
2679 |
); |
2680 |
); |
2680 |
$string = $dt->strftime("%A"); |
2681 |
$string = $dt->strftime("%A"); |
2681 |
} elsif ( $num_type =~ /^monthname$/ ) { |
2682 |
} |
2682 |
$value = $value % 12; |
2683 |
when (/^monthname$/) { |
2683 |
my $dt = DateTime->new( |
2684 |
$value = $value % 12; |
2684 |
year => 1970, |
2685 |
my $dt = DateTime->new( |
2685 |
month => $value + 1, |
2686 |
year => 1970, |
2686 |
locale => $locale, |
2687 |
month => $value + 1, |
2687 |
); |
2688 |
locale => $locale, |
2688 |
$string = $dt->strftime("%B"); |
2689 |
); |
2689 |
} elsif ( $num_type =~ /^season$/ ) { |
2690 |
$string = $dt->strftime("%B"); |
2690 |
my @seasons= qw( Spring Summer Fall Winter ); |
2691 |
} |
2691 |
$value = $value % 4; |
2692 |
when (/^season$/) { |
2692 |
$string = $seasons[$value]; |
2693 |
my @seasons= qw( Spring Summer Fall Winter ); |
2693 |
} else { |
2694 |
$value = $value % 4; |
2694 |
$string = $value; |
2695 |
$string = $seasons[$value]; |
|
|
2696 |
} |
2697 |
default { |
2698 |
$string = $value; |
2699 |
} |
2700 |
} |
2695 |
} |
|
|
2696 |
|
2701 |
return $string; |
2697 |
return $string; |
2702 |
} |
2698 |
} |
2703 |
|
2699 |
|
2704 |
- |
|
|