57_SSCal: contrib 1.6.0

git-svn-id: https://svn.fhem.de/fhem/trunk@21106 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
DS_Starter
2020-02-03 15:21:58 +00:00
parent e29c9e85b5
commit b820dce5e5

View File

@@ -158,7 +158,7 @@ sub SSCal_Initialize($) {
$hash->{AttrList} = "asyncMode:1,0 ". $hash->{AttrList} = "asyncMode:1,0 ".
"calendarShowInDetail:0,1 ". "calendarShowInDetail:0,1 ".
"calendarShowInRoom:0,1 ". "calendarShowInRoom:0,1 ".
"calOverviewFields:multiple-strict,Begin,End,Summary,Status,Location,Description,GPS,Calendar ". "calOverviewFields:multiple-strict,Begin,End,Summary,Status,Location,Description,GPS,Calendar,Completion ".
"cutOlderDays ". "cutOlderDays ".
"cutLaterDays ". "cutLaterDays ".
"disable:1,0 ". "disable:1,0 ".
@@ -3171,26 +3171,28 @@ sub SSCal_calAsHtml($) {
my ($name)= @_; my ($name)= @_;
my $hash = $defs{$name}; my $hash = $defs{$name};
my ($begin,$end,$summary,$location,$status,$desc,$gps,$cal); my ($begin,$end,$summary,$location,$status,$desc,$gps,$cal,$completion);
my %seen; my %seen;
my @cof = split(",", AttrVal($name, "calOverviewFields", "Begin,End,Summary,Status,Location")); my @cof = split(",", AttrVal($name, "calOverviewFields", "Begin,End,Summary,Status,Location"));
grep { !$seen{$_}++ } @cof; grep { !$seen{$_}++ } @cof;
my $out = "<html>"; my $out = "<html>";
$out .= "<style>TD.sscal {text-align: left; padding-left:15px; padding-right:15px; border-spacing:5px; margin-left:auto; margin-right:auto;}</style>"; $out .= "<style>TD.sscal {text-align: left; padding-left:15px; padding-right:15px; border-spacing:5px; margin-left:auto; margin-right:auto;}</style>";
$out .= "<style>TD.sscalbold {font-weight: bold;}</style>"; $out .= "<style>TD.sscalbold {font-weight: bold;}</style>";
$out .= "<style>TD.sscalcenter {text-align: center;}</style>";
$out .= "<table class='block'>"; $out .= "<table class='block'>";
$out .= "<tr>"; $out .= "<tr>";
$out .= "<td class='sscal sscalbold'> Begin </td>" if($seen{Begin}); $out .= "<td class='sscal sscalbold sscalcenter'> Begin </td>" if($seen{Begin});
$out .= "<td class='sscal sscalbold'> End </td>" if($seen{End}); $out .= "<td class='sscal sscalbold sscalcenter'> End </td>" if($seen{End});
$out .= "<td class='sscal sscalbold'> Summary </td>" if($seen{Summary}); $out .= "<td class='sscal sscalbold sscalcenter'> Summary </td>" if($seen{Summary});
$out .= "<td class='sscal sscalbold'> Description </td>" if($seen{Description}); $out .= "<td class='sscal sscalbold sscalcenter'> Description </td>" if($seen{Description});
$out .= "<td class='sscal sscalbold'> Status </td>" if($seen{Status}); $out .= "<td class='sscal sscalbold sscalcenter'> Status </td>" if($seen{Status});
$out .= "<td class='sscal sscalbold'> Location </td>" if($seen{Location}); $out .= "<td class='sscal sscalbold sscalcenter'> Completion<br>(%) </td>" if($seen{Completion});
$out .= "<td class='sscal sscalbold'> GPS </td>" if($seen{GPS}); $out .= "<td class='sscal sscalbold sscalcenter'> Location </td>" if($seen{Location});
$out .= "<td class='sscal sscalbold'> Calendar </td>" if($seen{Calendar}); $out .= "<td class='sscal sscalbold sscalcenter'> GPS </td>" if($seen{GPS});
$out .= "<td class='sscal sscalbold sscalcenter'> Calendar </td>" if($seen{Calendar});
$out .= "<tr><td> </td></tr>"; $out .= "<tr><td> </td></tr>";
$out .= "<tr><td> </td></tr>"; $out .= "<tr><td> </td></tr>";
@@ -3208,24 +3210,26 @@ sub SSCal_calAsHtml($) {
my $prestr = sprintf("%0$l.0f", $k); # Prestring erstellen my $prestr = sprintf("%0$l.0f", $k); # Prestring erstellen
last if(!ReadingsVal($name, $prestr."_05_EventId", "")); # keine Ausgabe wenn es keine EventId mit Blocknummer 0 gibt -> kein Event/Aufage vorhanden last if(!ReadingsVal($name, $prestr."_05_EventId", "")); # keine Ausgabe wenn es keine EventId mit Blocknummer 0 gibt -> kein Event/Aufage vorhanden
$summary = ReadingsVal($name, $prestr."_01_Summary", ""); $summary = ReadingsVal($name, $prestr."_01_Summary", "");
$begin = ReadingsVal($name, $prestr."_02_Begin", "not set"); $begin = ReadingsVal($name, $prestr."_02_Begin", "not set");
$end = ReadingsVal($name, $prestr."_03_End", "not set"); $end = ReadingsVal($name, $prestr."_03_End", "not set");
$desc = ReadingsVal($name, $prestr."_04_Description", ""); $desc = ReadingsVal($name, $prestr."_04_Description", "");
$location = ReadingsVal($name, $prestr."_07_Location", ""); $location = ReadingsVal($name, $prestr."_07_Location", "");
$gps = ReadingsVal($name, $prestr."_08_GPS", ""); $gps = ReadingsVal($name, $prestr."_08_GPS", "");
$status = ReadingsVal($name, $prestr."_10_Status", ""); $status = ReadingsVal($name, $prestr."_10_Status", "");
$cal = ReadingsVal($name, $prestr."_90_calName", ""); $completion = ReadingsVal($name, $prestr."_16_percentComplete", "");
$cal = ReadingsVal($name, $prestr."_90_calName", "");
$out .= "<tr class='odd'>"; $out .= "<tr class='odd'>";
$out .= "<td class='sscal'> $begin </td>" if($seen{Begin}); $out .= "<td class='sscal'> $begin </td>" if($seen{Begin});
$out .= "<td class='sscal'> $end </td>" if($seen{End}); $out .= "<td class='sscal'> $end </td>" if($seen{End});
$out .= "<td class='sscal'> $summary </td>" if($seen{Summary}); $out .= "<td class='sscal'> $summary </td>" if($seen{Summary});
$out .= "<td class='sscal'> $desc </td>" if($seen{Description}); $out .= "<td class='sscal'> $desc </td>" if($seen{Description});
$out .= "<td class='sscal'> $status </td>" if($seen{Status}); $out .= "<td class='sscal'> $status </td>" if($seen{Status});
$out .= "<td class='sscal'> $location </td>" if($seen{Location}); $out .= "<td class='sscal'> $completion </td>" if($seen{Completion});
$out .= "<td class='sscal'> $gps </td>" if($seen{GPS}); $out .= "<td class='sscal'> $location </td>" if($seen{Location});
$out .= "<td class='sscal'> $cal </td>" if($seen{Calendar}); $out .= "<td class='sscal'> $gps </td>" if($seen{GPS});
$out .= "<td class='sscal'> $cal </td>" if($seen{Calendar});
$out .= "</tr>"; $out .= "</tr>";
} }