diff --git a/fhem/FHEM/01_FHEMWEB.pm b/fhem/FHEM/01_FHEMWEB.pm
index cdd7bd2f8..3dea518d3 100755
--- a/fhem/FHEM/01_FHEMWEB.pm
+++ b/fhem/FHEM/01_FHEMWEB.pm
@@ -78,6 +78,7 @@ use vars qw($FW_cmdret); # Returned data by the fhem call
use vars qw($FW_room); # currently selected room
use vars qw($FW_formmethod);
use vars qw(%FW_visibleDeviceHash);
+use vars qw(@FW_httpheader); # HTTP header, line by line
$FW_formmethod = "post";
@@ -90,7 +91,6 @@ my $FW_lastHashUpdate = 0;
#########################
# As we are _not_ multithreaded, it is safe to use global variables.
# Note: for delivering SVG plots we fork
-my @FW_httpheader; # HTTP header, line by line
my @FW_enc; # Accepted encodings (browser header)
my $FW_data; # Filecontent from browser when editing a file
my %FW_icons; # List of icons
@@ -152,6 +152,7 @@ FHEMWEB_Initialize($)
ploteditor:always,onClick,never
plotfork:1,0
plotmode:gnuplot,gnuplot-scroll,SVG
+ plotEmbed:0,1
plotsize
nrAxis
redirectCmds:0,1
diff --git a/fhem/FHEM/98_SVG.pm b/fhem/FHEM/98_SVG.pm
index 459e0b6bc..f90706c8e 100755
--- a/fhem/FHEM/98_SVG.pm
+++ b/fhem/FHEM/98_SVG.pm
@@ -32,7 +32,7 @@ sub SVG_doround($$$);
sub SVG_fmtTime($$);
sub SVG_pO($);
sub SVG_readgplotfile($$);
-sub SVG_render($$$$$$$$$);
+sub SVG_render($$$$$$$$$;$$);
sub SVG_showLog($);
sub SVG_substcfg($$$$$$);
sub SVG_time_align($$);
@@ -182,8 +182,19 @@ SVG_FwFn($$$$)
if(AttrVal($d,"plotmode",$FW_plotmode) eq "SVG") {
my ($w, $h) = split(",", AttrVal($d,"plotsize",$FW_plotsize));
$ret .= "
";
- $ret .= "
";
} else {
@@ -761,11 +772,16 @@ SVG_calcOffsets($$)
sub
SVG_showLog($)
{
- my ($cmd) = @_;
- my $wl = $FW_webArgs{dev};
- my $d = $FW_webArgs{logdev};
- my $type = $FW_webArgs{gplotfile};
- my $file = $FW_webArgs{logfile};
+ return SVG_doShowLog($FW_webArgs{dev},
+ $FW_webArgs{logdev},
+ $FW_webArgs{gplotfile},
+ $FW_webArgs{logfile});
+}
+
+sub
+SVG_doShowLog($$$$$$)
+{
+ my ($wl, $d, $type, $file, $styleW, $styleH) = @_;
my $pm = AttrVal($wl,"plotmode",$FW_plotmode);
my $gplot_pgm = "$FW_gplotdir/$type.gplot";
@@ -881,7 +897,8 @@ SVG_showLog($)
FW_fC("get $d $file INT $f $t " . join(" ", @{$flog}), 1);
($cfg, $plot) = SVG_substcfg(1, $wl, $cfg, $plot, $file, "");
my $ret = SVG_render($wl, $f, $t, $cfg,
- $internal_data, $plot, $FW_wname, $FW_cssdir, $flog);
+ $internal_data, $plot, $FW_wname, $FW_cssdir, $flog,
+ $styleW, $styleH);
$internal_data = "";
FW_pO $ret;
if($SVGcache) {
@@ -961,7 +978,7 @@ SVG_openFile($$$)
#####################################
sub
-SVG_render($$$$$$$$$)
+SVG_render($$$$$$$$$;$$)
{
my $name = shift; # e.g. wl_8
my $from = shift; # e.g. 2008-01-01
@@ -972,6 +989,8 @@ SVG_render($$$$$$$$$)
my $parent_name = shift; # e.g. FHEMWEB instance name
my $parent_dir = shift; # FW_dir
my $flog = shift; # #FileLog lines, as array pointer
+ my $styleW = shift;
+ my $styleH = shift;
$SVG_RET="";
my $SVG_ss = AttrVal($parent_name, "smallscreen", 0);
@@ -1005,10 +1024,17 @@ SVG_render($$$$$$$$$)
######################
# Html Header
- SVG_pO '';
- SVG_pO '';
- SVG_pO '