mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-04 22:19:38 +00:00
UConv.pm: add unicode symbols for direction2compasspoint()
git-svn-id: https://svn.fhem.de/fhem/trunk@19757 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
19a40f21b5
commit
d8e87cd479
@ -30,131 +30,131 @@ sub _ReplaceStringByHashKey($$;$);
|
|||||||
|
|
||||||
our %compasspoints = (
|
our %compasspoints = (
|
||||||
en => [
|
en => [
|
||||||
[ "North", "N" ],
|
[ "North", "N", '▲' ],
|
||||||
[ "North-Northeast", "NNE" ],
|
[ "North-Northeast", "NNE", '⬈' ],
|
||||||
[ "North-East", "NE" ],
|
[ "North-East", "NE", '⬈' ],
|
||||||
[ "East-Northeast", "ENE" ],
|
[ "East-Northeast", "ENE", '⬈' ],
|
||||||
[ "East", "E" ],
|
[ "East", "E", '▶' ],
|
||||||
[ "East-Southeast", "ESE" ],
|
[ "East-Southeast", "ESE", '⬊' ],
|
||||||
[ "Southeast", "SE" ],
|
[ "Southeast", "SE", '⬊' ],
|
||||||
[ "South-Southeast", "SSE" ],
|
[ "South-Southeast", "SSE", '⬊' ],
|
||||||
[ "South", "S" ],
|
[ "South", "S", '▼' ],
|
||||||
[ "South-Southwest", "SSW" ],
|
[ "South-Southwest", "SSW", '⬋' ],
|
||||||
[ "Southwest", "SW" ],
|
[ "Southwest", "SW", '⬋' ],
|
||||||
[ "West-Southwest", "WSW" ],
|
[ "West-Southwest", "WSW", '⬋' ],
|
||||||
[ "West", "W" ],
|
[ "West", "W", '◀' ],
|
||||||
[ "West-Northwest", "WNW" ],
|
[ "West-Northwest", "WNW", '⬉' ],
|
||||||
[ "Northwest", "NW" ],
|
[ "Northwest", "NW", '⬉' ],
|
||||||
[ "North-Northwest", "NNW" ],
|
[ "North-Northwest", "NNW", '⬉' ],
|
||||||
],
|
],
|
||||||
de => [
|
de => [
|
||||||
[ "Norden", "N" ],
|
[ "Norden", "N", '▲' ],
|
||||||
[ "Nord-Nordost", "NNO" ],
|
[ "Nord-Nordost", "NNO", '⬈' ],
|
||||||
[ "Nord-Ost", "NO" ],
|
[ "Nord-Ost", "NO", '⬈' ],
|
||||||
[ "Ost-Nordost", "ONO" ],
|
[ "Ost-Nordost", "ONO", '⬈' ],
|
||||||
[ "Ost", "O" ],
|
[ "Ost", "O", '▶' ],
|
||||||
[ "Ost-Südost", "OSO" ],
|
[ "Ost-Südost", "OSO", '⬊' ],
|
||||||
[ "Südost", "SO" ],
|
[ "Südost", "SO", '⬊' ],
|
||||||
[ "Süd-Südost", "SSO" ],
|
[ "Süd-Südost", "SSO", '⬊' ],
|
||||||
[ "Süd", "S" ],
|
[ "Süd", "S", '▼' ],
|
||||||
[ "Süd-Südwest", "SSW" ],
|
[ "Süd-Südwest", "SSW", '⬋' ],
|
||||||
[ "Südwest", "SW" ],
|
[ "Südwest", "SW", '⬋' ],
|
||||||
[ "West-Südwest", "WSW" ],
|
[ "West-Südwest", "WSW", '⬋' ],
|
||||||
[ "West", "W" ],
|
[ "West", "W", '◀' ],
|
||||||
[ "West-Nordwest", "WNW" ],
|
[ "West-Nordwest", "WNW", '⬉' ],
|
||||||
[ "Nordwest", "NW" ],
|
[ "Nordwest", "NW", '⬉' ],
|
||||||
[ "Nord-Nordwest", "NNW" ],
|
[ "Nord-Nordwest", "NNW", '⬉' ],
|
||||||
],
|
],
|
||||||
es => [
|
es => [
|
||||||
[ "Norte", "N" ],
|
[ "Norte", "N", '▲' ],
|
||||||
[ "Norte-Noreste", "NNE" ],
|
[ "Norte-Noreste", "NNE", '⬈' ],
|
||||||
[ "Noreste", "NE" ],
|
[ "Noreste", "NE", '⬈' ],
|
||||||
[ "Este-Noreste", "ENE" ],
|
[ "Este-Noreste", "ENE", '⬈' ],
|
||||||
[ "Este", "E" ],
|
[ "Este", "E", '▶' ],
|
||||||
[ "Este-Sureste", "ESE" ],
|
[ "Este-Sureste", "ESE", '⬊' ],
|
||||||
[ "Sureste", "SE" ],
|
[ "Sureste", "SE", '⬊' ],
|
||||||
[ "Sur-Sureste", "SSE" ],
|
[ "Sur-Sureste", "SSE", '⬊' ],
|
||||||
[ "Sur", "S" ],
|
[ "Sur", "S", '▼' ],
|
||||||
[ "Sudoeste", "SDO" ],
|
[ "Sudoeste", "SDO", '⬋' ],
|
||||||
[ "Sur-Oeste", "SO" ],
|
[ "Sur-Oeste", "SO", '⬋' ],
|
||||||
[ "Oeste-Suroeste", "OSO" ],
|
[ "Oeste-Suroeste", "OSO", '⬋' ],
|
||||||
[ "Oeste", "O" ],
|
[ "Oeste", "O", '◀' ],
|
||||||
[ "Oeste-Noroeste", "ONO" ],
|
[ "Oeste-Noroeste", "ONO", '⬉' ],
|
||||||
[ "Noroeste", "NO" ],
|
[ "Noroeste", "NO", '⬉' ],
|
||||||
[ "Norte-Noroeste", "NNE" ],
|
[ "Norte-Noroeste", "NNE", '⬉' ],
|
||||||
|
|
||||||
],
|
],
|
||||||
it => [
|
it => [
|
||||||
[ "Nord", "N" ],
|
[ "Nord", "N", '▲' ],
|
||||||
[ "Nord-Nord-Est", "NNE" ],
|
[ "Nord-Nord-Est", "NNE", '⬈' ],
|
||||||
[ "Nord-Est", "NE" ],
|
[ "Nord-Est", "NE", '⬈' ],
|
||||||
[ "Est-Nord-Est", "ENE" ],
|
[ "Est-Nord-Est", "ENE", '⬈' ],
|
||||||
[ "Est", "E" ],
|
[ "Est", "E", '▶' ],
|
||||||
[ "Est-Sud-Est", "ESE" ],
|
[ "Est-Sud-Est", "ESE", '⬊' ],
|
||||||
[ "Sud-Est", "SE" ],
|
[ "Sud-Est", "SE", '⬊' ],
|
||||||
[ "Sud-Sud-Est", "SSE" ],
|
[ "Sud-Sud-Est", "SSE", '⬊' ],
|
||||||
[ "Sud", "S" ],
|
[ "Sud", "S", '▼' ],
|
||||||
[ "Sud-Sud-Ovest", "SSO" ],
|
[ "Sud-Sud-Ovest", "SSO", '⬋' ],
|
||||||
[ "Sud-Ovest", "SO" ],
|
[ "Sud-Ovest", "SO", '⬋' ],
|
||||||
[ "Ovest-Sud-Ovest", "OSO" ],
|
[ "Ovest-Sud-Ovest", "OSO", '⬋' ],
|
||||||
[ "Ovest", "O" ],
|
[ "Ovest", "O", '◀' ],
|
||||||
[ "Ovest-Nord-Ovest", "ONO" ],
|
[ "Ovest-Nord-Ovest", "ONO", '⬉' ],
|
||||||
[ "Nord-Ovest", "NO" ],
|
[ "Nord-Ovest", "NO", '⬉' ],
|
||||||
[ "Nord-Nord-Ovest", "NNO" ],
|
[ "Nord-Nord-Ovest", "NNO", '⬉' ],
|
||||||
],
|
],
|
||||||
nl => [
|
nl => [
|
||||||
[ "Noorden", "N" ],
|
[ "Noorden", "N", '▲' ],
|
||||||
[ "Noord-Noordoosten", "NNO" ],
|
[ "Noord-Noordoosten", "NNO", '⬈' ],
|
||||||
[ "Noordoosten", "NO" ],
|
[ "Noordoosten", "NO", '⬈' ],
|
||||||
[ "Oost-Noordoost", "ONO" ],
|
[ "Oost-Noordoost", "ONO", '⬈' ],
|
||||||
[ "Oosten", "O" ],
|
[ "Oosten", "O", '▶' ],
|
||||||
[ "Oost-Zuidoost", "OZO" ],
|
[ "Oost-Zuidoost", "OZO", '⬊' ],
|
||||||
[ "Zuidoosten", "ZO" ],
|
[ "Zuidoosten", "ZO", '⬊' ],
|
||||||
[ "Zuid-Zuidoost", "ZZO" ],
|
[ "Zuid-Zuidoost", "ZZO", '⬊' ],
|
||||||
[ "Zuiden", "Z" ],
|
[ "Zuiden", "Z", '▼' ],
|
||||||
[ "Zuid-Zuidwest", "ZZW" ],
|
[ "Zuid-Zuidwest", "ZZW", '⬋' ],
|
||||||
[ "Zuidwest", "ZW" ],
|
[ "Zuidwest", "ZW", '⬋' ],
|
||||||
[ "West-Zuidwest", "WZW" ],
|
[ "West-Zuidwest", "WZW", '⬋' ],
|
||||||
[ "West", "W" ],
|
[ "West", "W", '◀' ],
|
||||||
[ "West-Noord-West", "WNW" ],
|
[ "West-Noord-West", "WNW", '⬉' ],
|
||||||
[ "Noord-West", "NW" ],
|
[ "Noord-West", "NW", '⬉' ],
|
||||||
[ "Noord-Noord-West", "NNW" ],
|
[ "Noord-Noord-West", "NNW", '⬉' ],
|
||||||
],
|
],
|
||||||
fr => [
|
fr => [
|
||||||
[ "Nord", "N" ],
|
[ "Nord", "N", '▲' ],
|
||||||
[ "Nord-Nord-Est", "NNE" ],
|
[ "Nord-Nord-Est", "NNE", '⬈' ],
|
||||||
[ "Nord-Est", "NE" ],
|
[ "Nord-Est", "NE", '⬈' ],
|
||||||
[ "Est-Nord-Est", "ENE" ],
|
[ "Est-Nord-Est", "ENE", '⬈' ],
|
||||||
[ "Est", "E" ],
|
[ "Est", "E", '▶' ],
|
||||||
[ "Est-Sud-Est", "ESE" ],
|
[ "Est-Sud-Est", "ESE", '⬊' ],
|
||||||
[ "Sud-Est", "SE" ],
|
[ "Sud-Est", "SE", '⬊' ],
|
||||||
[ "Sud-Sud-Est", "SSE" ],
|
[ "Sud-Sud-Est", "SSE", '⬊' ],
|
||||||
[ "Sud", "S" ],
|
[ "Sud", "S", '▼' ],
|
||||||
[ "Sud-Sud-Ouest", "SSW" ],
|
[ "Sud-Sud-Ouest", "SSW", '⬋' ],
|
||||||
[ "Sud-Ouest", "SW" ],
|
[ "Sud-Ouest", "SW", '⬋' ],
|
||||||
[ "Ouest-Sud-Ouest", "OSO" ],
|
[ "Ouest-Sud-Ouest", "OSO", '⬋' ],
|
||||||
[ "Ouest", "O" ],
|
[ "Ouest", "O", '◀' ],
|
||||||
[ "Ouest-Nord-Ouest", "ONO" ],
|
[ "Ouest-Nord-Ouest", "ONO", '⬉' ],
|
||||||
[ "Nord-Ouest", "NO" ],
|
[ "Nord-Ouest", "NO", '⬉' ],
|
||||||
[ "Nord-Nord-Ouest", "NNO" ],
|
[ "Nord-Nord-Ouest", "NNO", '⬉' ],
|
||||||
],
|
],
|
||||||
pl => [
|
pl => [
|
||||||
[ "Północ", "N" ],
|
[ "Północ", "N", '▲' ],
|
||||||
[ "Północny-Północny-Wschód", "NNE" ],
|
[ "Północny-Północny-Wschód", "NNE", '⬈' ],
|
||||||
[ "Północny-Wschód", "NE" ],
|
[ "Północny-Wschód", "NE", '⬈' ],
|
||||||
[ "Wschód-Północny-Wschód", "ENE" ],
|
[ "Wschód-Północny-Wschód", "ENE", '⬈' ],
|
||||||
[ "Wschód", "E" ],
|
[ "Wschód", "E", '▶' ],
|
||||||
[ "Wschód-Południowy-Wschód", "ESE" ],
|
[ "Wschód-Południowy-Wschód", "ESE", '⬊' ],
|
||||||
[ "Południowy-Południowy-Wschód", "SE" ],
|
[ "Południowy-Południowy-Wschód", "SE", '⬊' ],
|
||||||
[ "Południowy-Wschód", "SSE" ],
|
[ "Południowy-Wschód", "SSE", '⬊' ],
|
||||||
[ "Południe", "S" ],
|
[ "Południe", "S", '▼' ],
|
||||||
[ "Południowo-Południowy-Zachód", "SSW" ],
|
[ "Południowo-Południowy-Zachód", "SSW", '⬋' ],
|
||||||
[ "Południowy-Zachód", "SW" ],
|
[ "Południowy-Zachód", "SW", '⬋' ],
|
||||||
[ "Zachód-Południowy-Zachód", "WSW" ],
|
[ "Zachód-Południowy-Zachód", "WSW", '⬋' ],
|
||||||
[ "Zachód", "W" ],
|
[ "Zachód", "W", '◀' ],
|
||||||
[ "Zachód-Północny-Zachód", "WNW" ],
|
[ "Zachód-Północny-Zachód", "WNW", '⬉' ],
|
||||||
[ "Północny-Zachód", "NW" ],
|
[ "Północny-Zachód", "NW", '⬉' ],
|
||||||
[ "Północno-Północny-Zachód", "NNW" ],
|
[ "Północno-Północny-Zachód", "NNW", '⬉' ],
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -193,53 +193,31 @@ our %hr_formats = (
|
|||||||
### lang ref ###
|
### lang ref ###
|
||||||
#
|
#
|
||||||
|
|
||||||
en => {
|
en => { ref => "std", },
|
||||||
ref => "std",
|
|
||||||
},
|
|
||||||
|
|
||||||
de => {
|
de => { ref => "std-fr", },
|
||||||
ref => "std-fr",
|
|
||||||
},
|
|
||||||
|
|
||||||
de_at => {
|
de_at => {
|
||||||
ref => "std-fr",
|
ref => "std-fr",
|
||||||
min => 4,
|
min => 4,
|
||||||
},
|
},
|
||||||
|
|
||||||
de_ch => {
|
de_ch => { ref => "std", },
|
||||||
ref => "std",
|
|
||||||
},
|
|
||||||
|
|
||||||
nl => {
|
nl => { ref => "std-fr", },
|
||||||
ref => "std-fr",
|
|
||||||
},
|
|
||||||
|
|
||||||
fr => {
|
fr => { ref => "std-fr", },
|
||||||
ref => "std-fr",
|
|
||||||
},
|
|
||||||
|
|
||||||
pl => {
|
pl => { ref => "std-fr", },
|
||||||
ref => "std-fr",
|
|
||||||
},
|
|
||||||
|
|
||||||
### number ref ###
|
### number ref ###
|
||||||
#
|
#
|
||||||
|
|
||||||
0 => {
|
0 => { ref => "std", },
|
||||||
ref => "std",
|
1 => { ref => "std-fr", },
|
||||||
},
|
2 => { ref => "old-english", },
|
||||||
1 => {
|
3 => { ref => "old-european", },
|
||||||
ref => "std-fr",
|
4 => { ref => "ch", },
|
||||||
},
|
|
||||||
2 => {
|
|
||||||
ref => "old-english",
|
|
||||||
},
|
|
||||||
3 => {
|
|
||||||
ref => "old-european",
|
|
||||||
},
|
|
||||||
4 => {
|
|
||||||
ref => "ch",
|
|
||||||
},
|
|
||||||
5 => {
|
5 => {
|
||||||
ref => "std-fr",
|
ref => "std-fr",
|
||||||
min => 4,
|
min => 4,
|
||||||
@ -807,7 +785,7 @@ sub mi2km($;$) {
|
|||||||
sub direction2compasspoint($;$$) {
|
sub direction2compasspoint($;$$) {
|
||||||
my ( $deg, $txt, $lang ) = @_;
|
my ( $deg, $txt, $lang ) = @_;
|
||||||
my $i = floor( ( ( $deg + 11.25 ) % 360 ) / 22.5 );
|
my $i = floor( ( ( $deg + 11.25 ) % 360 ) / 22.5 );
|
||||||
return $i if ( defined($txt) && $txt == 0. );
|
return $i if (!wantarray && defined($txt) && $txt == 0. );
|
||||||
|
|
||||||
my $directions_txt_i18n;
|
my $directions_txt_i18n;
|
||||||
$lang = main::AttrVal( "global", "language", "EN" ) unless ($lang);
|
$lang = main::AttrVal( "global", "language", "EN" ) unless ($lang);
|
||||||
@ -818,6 +796,13 @@ sub direction2compasspoint($;$$) {
|
|||||||
else {
|
else {
|
||||||
$directions_txt_i18n = $compasspoints{en};
|
$directions_txt_i18n = $compasspoints{en};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
$directions_txt_i18n->[$i][0],
|
||||||
|
$directions_txt_i18n->[$i][1],
|
||||||
|
$directions_txt_i18n->[$i][2]
|
||||||
|
) if wantarray;
|
||||||
|
return $directions_txt_i18n->[$i][2] if ( $txt && $txt == 3. );
|
||||||
return $directions_txt_i18n->[$i][0] if ( $txt && $txt == 2. );
|
return $directions_txt_i18n->[$i][0] if ( $txt && $txt == 2. );
|
||||||
return $directions_txt_i18n->[$i][1];
|
return $directions_txt_i18n->[$i][1];
|
||||||
}
|
}
|
||||||
@ -993,8 +978,11 @@ sub distance($$$$;$$) {
|
|||||||
if ( $lat1 eq $lat2 && $lng1 eq $lng2 );
|
if ( $lat1 eq $lat2 && $lng1 eq $lng2 );
|
||||||
|
|
||||||
my $aearth = 6378.137; # GRS80/WGS84 semi major axis of earth ellipsoid
|
my $aearth = 6378.137; # GRS80/WGS84 semi major axis of earth ellipsoid
|
||||||
my $km = great_circle_distance( deg2rad($lat1), pi/2. - deg2rad($lng1),
|
my $km = great_circle_distance(
|
||||||
deg2rad($lat2), pi/2. - deg2rad($lng2), $aearth );
|
deg2rad($lat1), pi / 2. - deg2rad($lng1),
|
||||||
|
deg2rad($lat2), pi / 2. - deg2rad($lng2),
|
||||||
|
$aearth
|
||||||
|
);
|
||||||
|
|
||||||
return _round(
|
return _round(
|
||||||
(
|
(
|
||||||
@ -1131,24 +1119,38 @@ sub humanReadable($;$) {
|
|||||||
);
|
);
|
||||||
my $min =
|
my $min =
|
||||||
ref($h)
|
ref($h)
|
||||||
&& defined( $h->{min} )
|
&& defined( $h->{min} ) ? $h->{min}
|
||||||
? $h->{min}
|
: (
|
||||||
: ( !ref($f) && $hr_formats{$f}{min} ? $hr_formats{$f}{min} : 5 );
|
!ref($f)
|
||||||
|
&& $hr_formats{$f}{min} ? $hr_formats{$f}{min}
|
||||||
|
: 5
|
||||||
|
);
|
||||||
my $group =
|
my $group =
|
||||||
ref($h)
|
ref($h)
|
||||||
&& defined( $h->{group} )
|
&& defined( $h->{group} ) ? $h->{group}
|
||||||
? $h->{group}
|
: (
|
||||||
: ( !ref($f) && $hr_formats{$f}{group} ? $hr_formats{$f}{group} : 3 );
|
!ref($f)
|
||||||
|
&& $hr_formats{$f}{group} ? $hr_formats{$f}{group}
|
||||||
|
: 3
|
||||||
|
);
|
||||||
my $delim =
|
my $delim =
|
||||||
ref($h)
|
ref($h)
|
||||||
&& $h->{delim}
|
&& $h->{delim} ? $h->{delim}
|
||||||
? $h->{delim}
|
: $hr_formats{
|
||||||
: $hr_formats{ ( $l =~ /^de|nl|fr|pl/i ? "std-fr" : "std" ) }{delim};
|
(
|
||||||
|
$l =~ /^de|nl|fr|pl/i ? "std-fr"
|
||||||
|
: "std"
|
||||||
|
)
|
||||||
|
}{delim};
|
||||||
my $sep =
|
my $sep =
|
||||||
ref($h)
|
ref($h)
|
||||||
&& $h->{sep}
|
&& $h->{sep} ? $h->{sep}
|
||||||
? $h->{sep}
|
: $hr_formats{
|
||||||
: $hr_formats{ ( $l =~ /^de|nl|fr|pl/i ? "std-fr" : "std" ) }{sep};
|
(
|
||||||
|
$l =~ /^de|nl|fr|pl/i ? "std-fr"
|
||||||
|
: "std"
|
||||||
|
)
|
||||||
|
}{sep};
|
||||||
my $reverse = ref($h) && defined( $h->{rev} ) ? $h->{rev} : 1;
|
my $reverse = ref($h) && defined( $h->{rev} ) ? $h->{rev} : 1;
|
||||||
|
|
||||||
my @p = split( /\./, $v, 2 );
|
my @p = split( /\./, $v, 2 );
|
||||||
@ -1477,9 +1479,15 @@ sub DaysOfMonth (;$$) {
|
|||||||
my $m = shift;
|
my $m = shift;
|
||||||
|
|
||||||
return undef
|
return undef
|
||||||
unless ( !$y
|
unless (
|
||||||
|
!$y
|
||||||
|| $y =~ /^\d{10}(?:\.\d+)?$/
|
|| $y =~ /^\d{10}(?:\.\d+)?$/
|
||||||
|| ( $y =~ /^[1-2]\d{3}$/ && ( !$m || $m =~ /^\d{1,2}$/ ) ) );
|
|| (
|
||||||
|
$y =~ /^[1-2]\d{3}$/
|
||||||
|
&& ( !$m
|
||||||
|
|| $m =~ /^\d{1,2}$/ )
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
my $t = ( $y =~ /^\d{10}(?:\.\d+)?$/ ? $y : gettimeofday() );
|
my $t = ( $y =~ /^\d{10}(?:\.\d+)?$/ ? $y : gettimeofday() );
|
||||||
$y = 1900. + ( localtime($t) )[5] unless ($y);
|
$y = 1900. + ( localtime($t) )[5] unless ($y);
|
||||||
@ -1602,8 +1610,7 @@ sub GetDaytime(;$$$$) {
|
|||||||
$ret->{daytimeRel} = s2hms( $ret->{daytimeRel_s} );
|
$ret->{daytimeRel} = s2hms( $ret->{daytimeRel_s} );
|
||||||
$ret->{daytimeT_s} = $ret->{sunset_s} - $ret->{sunrise_s};
|
$ret->{daytimeT_s} = $ret->{sunset_s} - $ret->{sunrise_s};
|
||||||
$ret->{daytimeT} = s2hms( $ret->{daytimeT_s} );
|
$ret->{daytimeT} = s2hms( $ret->{daytimeT_s} );
|
||||||
$ret->{daytimeStageLn_s} =
|
$ret->{daytimeStageLn_s} = $ret->{daytimeT_s} / $ret->{daytimeStages};
|
||||||
$ret->{daytimeT_s} / $ret->{daytimeStages};
|
|
||||||
$ret->{daytimeStageLn} = s2hms( $ret->{daytimeStageLn_s} );
|
$ret->{daytimeStageLn} = s2hms( $ret->{daytimeStageLn_s} );
|
||||||
$ret->{daytimeStage_float} =
|
$ret->{daytimeStage_float} =
|
||||||
$ret->{daytimeRel_s} / $ret->{daytimeStageLn_s};
|
$ret->{daytimeRel_s} / $ret->{daytimeStageLn_s};
|
||||||
@ -1695,7 +1702,8 @@ sub GetDaytime(;$$$$) {
|
|||||||
$ret->{events}{ $ret->{midnight_t} }{DESC} =
|
$ret->{events}{ $ret->{midnight_t} }{DESC} =
|
||||||
"Begin of night time and new calendar day";
|
"Begin of night time and new calendar day";
|
||||||
$ret->{events}{ $ret->{1}{midnight_t} }{TYPE} = "dayshift";
|
$ret->{events}{ $ret->{1}{midnight_t} }{TYPE} = "dayshift";
|
||||||
$ret->{events}{ $ret->{1}{midnight_t} }{TIME} = $ret->{date} . " 24:00:00";
|
$ret->{events}{ $ret->{1}{midnight_t} }{TIME} =
|
||||||
|
$ret->{date} . " 24:00:00";
|
||||||
$ret->{events}{ $ret->{1}{midnight_t} }{DESC} =
|
$ret->{events}{ $ret->{1}{midnight_t} }{DESC} =
|
||||||
"End of calendar day and begin night time";
|
"End of calendar day and begin night time";
|
||||||
|
|
||||||
@ -1742,8 +1750,7 @@ sub GetDaytime(;$$$$) {
|
|||||||
if ( $i == $ret->{daytimeStages} + 1 ) {
|
if ( $i == $ret->{daytimeStages} + 1 ) {
|
||||||
$ret->{events}{$t}{TYPE} = "daytime";
|
$ret->{events}{$t}{TYPE} = "daytime";
|
||||||
$ret->{events}{$t}{VALUE} = "midevening";
|
$ret->{events}{$t}{VALUE} = "midevening";
|
||||||
$ret->{events}{$t}{DESC} =
|
$ret->{events}{$t}{DESC} = "End of daytime";
|
||||||
"End of daytime";
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$ret->{events}{$t}{TYPE} = "daytimeStage";
|
$ret->{events}{$t}{TYPE} = "daytimeStage";
|
||||||
@ -1846,13 +1853,15 @@ sub GetSeason (;$$$) {
|
|||||||
else {
|
else {
|
||||||
$ret->{'-1'}{$l}{seasonMeteo_long} =
|
$ret->{'-1'}{$l}{seasonMeteo_long} =
|
||||||
$seasons{$l}[ $ret->{'-1'}{seasonMeteo} ];
|
$seasons{$l}[ $ret->{'-1'}{seasonMeteo} ];
|
||||||
$ret->{$l}{seasonMeteo_long} = $seasons{$l}[ $ret->{seasonMeteo} ];
|
$ret->{$l}{seasonMeteo_long} =
|
||||||
|
$seasons{$l}[ $ret->{seasonMeteo} ];
|
||||||
$ret->{1}{$l}{seasonMeteo_long} =
|
$ret->{1}{$l}{seasonMeteo_long} =
|
||||||
$seasons{$l}[ $ret->{1}{seasonMeteo} ];
|
$seasons{$l}[ $ret->{1}{seasonMeteo} ];
|
||||||
|
|
||||||
$ret->{'-1'}{$l}{seasonAstro_long} =
|
$ret->{'-1'}{$l}{seasonAstro_long} =
|
||||||
$seasons{$l}[ $ret->{'-1'}{seasonAstro} ];
|
$seasons{$l}[ $ret->{'-1'}{seasonAstro} ];
|
||||||
$ret->{$l}{seasonAstro_long} = $seasons{$l}[ $ret->{seasonAstro} ];
|
$ret->{$l}{seasonAstro_long} =
|
||||||
|
$seasons{$l}[ $ret->{seasonAstro} ];
|
||||||
$ret->{1}{$l}{seasonAstro_long} =
|
$ret->{1}{$l}{seasonAstro_long} =
|
||||||
$seasons{$l}[ $ret->{1}{seasonAstro} ];
|
$seasons{$l}[ $ret->{1}{seasonAstro} ];
|
||||||
}
|
}
|
||||||
@ -2045,7 +2054,8 @@ sub _GetSeasonPheno ($$;$$) {
|
|||||||
if ( $l eq 'en' ) {
|
if ( $l eq 'en' ) {
|
||||||
$ret->{'-1'}{seasonPheno_long} =
|
$ret->{'-1'}{seasonPheno_long} =
|
||||||
$seasonsPheno{$l}[ $ret->{'-1'}{seasonPheno} ];
|
$seasonsPheno{$l}[ $ret->{'-1'}{seasonPheno} ];
|
||||||
$ret->{seasonPheno_long} = $seasonsPheno{$l}[ $ret->{seasonPheno} ];
|
$ret->{seasonPheno_long} =
|
||||||
|
$seasonsPheno{$l}[ $ret->{seasonPheno} ];
|
||||||
$ret->{1}{seasonPheno_long} =
|
$ret->{1}{seasonPheno_long} =
|
||||||
$seasonsPheno{$l}[ $ret->{1}{seasonPheno} ];
|
$seasonsPheno{$l}[ $ret->{1}{seasonPheno} ];
|
||||||
}
|
}
|
||||||
@ -2107,13 +2117,17 @@ sub decimal_mark ($;$) {
|
|||||||
$thousands_sep = chr(0x202F)
|
$thousands_sep = chr(0x202F)
|
||||||
unless ( defined($thousands_sep) && $thousands_sep ne "" );
|
unless ( defined($thousands_sep) && $thousands_sep ne "" );
|
||||||
my @grouping =
|
my @grouping =
|
||||||
$grouping && $grouping =~ /^\d+$/ ? unpack( "C*", $grouping ) : (3);
|
$grouping && $grouping =~ /^\d+$/
|
||||||
|
? unpack( "C*", $grouping )
|
||||||
|
: (3);
|
||||||
|
|
||||||
$i =~ s/(\d{$grouping[0]})(?=\d)/$1$thousands_sep/g;
|
$i =~ s/(\d{$grouping[0]})(?=\d)/$1$thousands_sep/g;
|
||||||
$f =~ s/(\d{$grouping[0]})(?=\d)/$1$thousands_sep/g
|
$f =~ s/(\d{$grouping[0]})(?=\d)/$1$thousands_sep/g
|
||||||
if ( defined($f) && $f ne '' );
|
if ( defined($f) && $f ne '' );
|
||||||
|
|
||||||
return ( $s ? $s : '' ) . ( reverse $i )
|
return
|
||||||
|
( $s ? $s : '' )
|
||||||
|
. ( reverse $i )
|
||||||
. ( defined($f) && $f ne '' ? $decimal_point . $f : '' );
|
. ( defined($f) && $f ne '' ? $decimal_point . $f : '' );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user