From 4fe84ac7bb02a0727aee241bafe1c84be27b86d4 Mon Sep 17 00:00:00 2001
From: risiko79 <>
Date: Sun, 14 Feb 2016 13:17:05 +0000
Subject: [PATCH] 98_weekprofile: change edit on own page remove url parameter
git-svn-id: https://svn.fhem.de/fhem/trunk@10840 2b470e98-0d58-463d-a4d8-8e2adae1ed80
---
fhem/FHEM/98_weekprofile.pm | 8 +++-----
fhem/www/pgm2/fhemweb_weekprofile.js | 20 +++++++++-----------
2 files changed, 12 insertions(+), 16 deletions(-)
diff --git a/fhem/FHEM/98_weekprofile.pm b/fhem/FHEM/98_weekprofile.pm
index 564f1dd16..c647ea092 100644
--- a/fhem/FHEM/98_weekprofile.pm
+++ b/fhem/FHEM/98_weekprofile.pm
@@ -1057,11 +1057,10 @@ sub weekprofile_SummaryFn()
##############################################
sub weekprofile_editOnNewpage(@)
{
- my ($device, $prf,$backurl) = @_;
+ my ($device, $prf) = @_;
my $hash = $defs{$device};
- $backurl="?" if(!defined($backurl));
- my $args = "weekprofile,MODE:EDIT,BACKURL:$backurl";
+ my $args = "weekprofile,MODE:EDIT,JMPBACK:1";
my $html;
$html .= "";
@@ -1113,9 +1112,8 @@ sub weekprofile_getEditLNK_MasterDev($$)
my $editIcon = FW_iconName($iconName) ? FW_makeImage($iconName,$iconName,"icon") : "";
my $script = '";
my $lnk = "$script$editIcon";
diff --git a/fhem/www/pgm2/fhemweb_weekprofile.js b/fhem/www/pgm2/fhemweb_weekprofile.js
index aad179c70..a3c7ec5bc 100644
--- a/fhem/www/pgm2/fhemweb_weekprofile.js
+++ b/fhem/www/pgm2/fhemweb_weekprofile.js
@@ -137,13 +137,7 @@ function weekprofile_DoEditWeek(devName,newPage)
var widget = $('div[informid="'+devName+'"]').get(0);
if (newPage == 1) {
- var url = location.href;
- var pos = url.indexOf('?');
- if (pos >=0)
- url = url.substr(pos);
- else
- url='';
- window.location.assign(FW_root+'?cmd={weekprofile_editOnNewpage("'+widget.DEVICE+'","'+widget.CURTOPIC+':'+widget.CURPRF+'","'+url+'");;}');
+ window.location.assign(FW_root+'?cmd={weekprofile_editOnNewpage("'+widget.DEVICE+'","'+widget.CURTOPIC+':'+widget.CURPRF+'");;}');
} else {
widget.MODE = 'EDIT';
$(widget.MENU.BASE).hide();
@@ -655,8 +649,12 @@ function FW_weekprofilePrepAndSendProf(devName)
function FW_weekprofileBack(widget)
{
- if (widget.SHOWURL){
- window.location.assign(FW_root+widget.SHOWURL);
+ if (widget.JMPBACK){
+ var isInIframe = (window.location != window.parent.location) ? true : false;
+ if (isInIframe) {
+ parent.history.back();
+ } else
+ window.history.back();
}
else {
widget.MODE = "SHOW";
@@ -784,7 +782,7 @@ FW_weekprofileCreate(elName, devName, vArr, currVal, set, params, cmd)
$(widget.MENU.BASE.parentElement.parentElement).append(menuContent);
widget.MENU.CONTENT = $(widget.HEADER).find('div[id*="menu.content"]').get(0);
- widget.SHOWURL = null;
+ widget.JMPBACK = null;
widget.MODE = 'SHOW';
widget.USETOPICS = 0;
@@ -792,7 +790,7 @@ FW_weekprofileCreate(elName, devName, vArr, currVal, set, params, cmd)
var arg = vArr[i].split(':');
switch (arg[0]) {
case "MODE": widget.MODE = arg[1]; break;
- case "BACKURL": widget.SHOWURL = arg[1]; break;
+ case "JMPBACK": widget.JMPBACK = arg[1]; break;
case "MASTERDEV": widget.MASTERDEV = arg[1]; break;
case "USETOPICS": widget.USETOPICS = arg[1]; break;
}