dev #79

Merged
marko merged 4 commits from dev into main 2025-10-14 05:22:36 +00:00
2 changed files with 60 additions and 67 deletions
Showing only changes of commit 2e3210c438 - Show all commits

View File

@@ -1,4 +1,4 @@
UPD 2025-02-05_05:56:41 25899 FHEM/59_Weather.pm UPD 2025-02-05_05:56:41 25899 FHEM/59_Weather.pm
UPD 2025-02-04_21:08:26 34419 lib/FHEM/Core/Weather.pm UPD 2025-10-14_06:51:10 34175 lib/FHEM/Core/Weather.pm
UPD 2025-02-05_06:38:34 33780 lib/FHEM/APIs/Weather/OpenWeatherMapAPI.pm UPD 2025-02-05_06:38:34 33780 lib/FHEM/APIs/Weather/OpenWeatherMapAPI.pm
UPD 2025-02-04_21:08:26 38751 lib/FHEM/APIs/Weather/wundergroundAPI.pm UPD 2025-02-04_21:08:26 38751 lib/FHEM/APIs/Weather/wundergroundAPI.pm

View File

@@ -41,10 +41,7 @@ eval { use Time::HiRes qw /gettimeofday/; 1 }
eval { use Readonly; 1 } eval { use Readonly; 1 }
or $missingModul .= "libreadonly-perl "; or $missingModul .= "libreadonly-perl ";
#use Time::HiRes qw(gettimeofday); #use experimental qw /switch/;
use experimental qw /switch/;
#use Readonly;
use FHEM::Meta; use FHEM::Meta;
@@ -224,48 +221,48 @@ sub _LanguageInitialize {
my $lang = shift; my $lang = shift;
given ($lang) { if ( $lang eq 'de' ) {
when ('de') {
%wdays_txt_i18n = %wdays_txt_de; %wdays_txt_i18n = %wdays_txt_de;
@directions_txt_i18n = @directions_txt_de; @directions_txt_i18n = @directions_txt_de;
%pressure_trend_txt_i18n = %pressure_trend_txt_de; %pressure_trend_txt_i18n = %pressure_trend_txt_de;
%status_items_txt_i18n = %status_items_txt_de; %status_items_txt_i18n = %status_items_txt_de;
} }
elsif ( $lang eq 'nl' ) {
when ('nl') {
%wdays_txt_i18n = %wdays_txt_nl; %wdays_txt_i18n = %wdays_txt_nl;
@directions_txt_i18n = @directions_txt_nl; @directions_txt_i18n = @directions_txt_nl;
%pressure_trend_txt_i18n = %pressure_trend_txt_nl; %pressure_trend_txt_i18n = %pressure_trend_txt_nl;
%status_items_txt_i18n = %status_items_txt_nl; %status_items_txt_i18n = %status_items_txt_nl;
} }
elsif ( $lang eq 'fr' ) {
when ('fr') { }
elsif ( $lang eq 'fr' ) {
%wdays_txt_i18n = %wdays_txt_fr; %wdays_txt_i18n = %wdays_txt_fr;
@directions_txt_i18n = @directions_txt_fr; @directions_txt_i18n = @directions_txt_fr;
%pressure_trend_txt_i18n = %pressure_trend_txt_fr; %pressure_trend_txt_i18n = %pressure_trend_txt_fr;
%status_items_txt_i18n = %status_items_txt_fr; %status_items_txt_i18n = %status_items_txt_fr;
}
when ('pl') { }
elsif ( $lang eq 'pl' ) {
%wdays_txt_i18n = %wdays_txt_pl; %wdays_txt_i18n = %wdays_txt_pl;
@directions_txt_i18n = @directions_txt_pl; @directions_txt_i18n = @directions_txt_pl;
%pressure_trend_txt_i18n = %pressure_trend_txt_pl; %pressure_trend_txt_i18n = %pressure_trend_txt_pl;
%status_items_txt_i18n = %status_items_txt_pl; %status_items_txt_i18n = %status_items_txt_pl;
}
when ('it') { }
elsif ( $lang eq 'it' ) {
%wdays_txt_i18n = %wdays_txt_it; %wdays_txt_i18n = %wdays_txt_it;
@directions_txt_i18n = @directions_txt_it; @directions_txt_i18n = @directions_txt_it;
%pressure_trend_txt_i18n = %pressure_trend_txt_it; %pressure_trend_txt_i18n = %pressure_trend_txt_it;
%status_items_txt_i18n = %status_items_txt_it; %status_items_txt_i18n = %status_items_txt_it;
}
default { }
else {
%wdays_txt_i18n = %wdays_txt_en; %wdays_txt_i18n = %wdays_txt_en;
@directions_txt_i18n = @directions_txt_en; @directions_txt_i18n = @directions_txt_en;
%pressure_trend_txt_i18n = %pressure_trend_txt_en; %pressure_trend_txt_i18n = %pressure_trend_txt_en;
%status_items_txt_i18n = %status_items_txt_en; %status_items_txt_i18n = %status_items_txt_en;
}
} }
return; return;
@@ -862,8 +859,7 @@ sub Attr {
my ( $cmd, $name, $attrName, $AttrVal ) = @_; my ( $cmd, $name, $attrName, $AttrVal ) = @_;
my $hash = $::defs{$name}; my $hash = $::defs{$name};
given ($attrName) { if ( $attrName eq 'forecast' ) {
when ('forecast') {
if ( $cmd eq 'set' ) { if ( $cmd eq 'set' ) {
$hash->{fhem}->{api}->setForecast($AttrVal); $hash->{fhem}->{api}->setForecast($AttrVal);
} }
@@ -874,13 +870,11 @@ sub Attr {
::InternalTimer( gettimeofday() + 0.5, ::InternalTimer( gettimeofday() + 0.5,
\&FHEM::Core::Weather::DeleteForecastreadings, $hash ); \&FHEM::Core::Weather::DeleteForecastreadings, $hash );
} }
elsif ('forecastLimit') {
when ('forecastLimit') {
::InternalTimer( gettimeofday() + 0.5, ::InternalTimer( gettimeofday() + 0.5,
\&FHEM::Core::Weather::DeleteForecastreadings, $hash ); \&FHEM::Core::Weather::DeleteForecastreadings, $hash );
} }
elsif ('alerts') {
when ('alerts') {
if ( $cmd eq 'set' ) { if ( $cmd eq 'set' ) {
$hash->{fhem}->{api}->setAlerts($AttrVal); $hash->{fhem}->{api}->setAlerts($AttrVal);
} }
@@ -891,7 +885,6 @@ sub Attr {
::InternalTimer( gettimeofday() + 0.5, ::InternalTimer( gettimeofday() + 0.5,
\&FHEM::Core::Weather::DeleteAlertsreadings, $hash ); \&FHEM::Core::Weather::DeleteAlertsreadings, $hash );
} }
}
return; return;
} }