From 7558e96ff51fc27d9ffad444860fa02164d586a2 Mon Sep 17 00:00:00 2001 From: risiko79 Date: Tue, 5 Jan 2016 18:04:01 +0000 Subject: [PATCH] 98_weekprofile: build in function 'weekprofile_getEditLNK_MasterDev' to create a html link to edit a weekprofile git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@10367 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/98_weekprofile.pm | 42 +++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/fhem/FHEM/98_weekprofile.pm b/fhem/FHEM/98_weekprofile.pm index 185bbd709..9439e6745 100644 --- a/fhem/FHEM/98_weekprofile.pm +++ b/fhem/FHEM/98_weekprofile.pm @@ -708,6 +708,48 @@ sub weekprofile_editOnNewpage(@) $html .= ""; return $html; } +############################################## +#search device weekprofile from a assoziated master device +sub weekprofile_findPRFDev($) +{ + my ($device) = @_; + + foreach my $d (keys %defs) + { + my $module = $defs{$d}{TYPE}; + + next if ("$module" ne "weekprofile"); + + my $masterDev = $defs{$d}->{MASTERDEV}->{NAME}; + next unless(defined($masterDev)); + next if ($masterDev ne $device); + + return $defs{$d}{NAME}; + } + return undef; +} +############################################## +# get a web link to edit a profile from weekprofile from a assoziated master device +sub weekprofile_getEditLNK_MasterDev($$) +{ + my ($aszDev, $prf) = @_; + + my $device = weekprofile_findPRFDev($aszDev); + return "" if (!defined($device)); + + my $iconName = AttrVal($device, "icon", "edit_settings"); + + my $editIcon = FW_iconName($iconName) ? FW_makeImage($iconName,$iconName,"icon") : ""; + my $script = '"; + + my $lnk = "$script$editIcon"; + return ($lnk,0); +} 1; =pod