CORS moved to attribute

git-svn-id: https://fhem.svn.sourceforge.net/svnroot/fhem/trunk/fhem@2146 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig
2012-11-20 17:51:45 +00:00
parent b243759731
commit 1570284868
2 changed files with 42 additions and 31 deletions

56
CHANGED
View File

@@ -1,26 +1,33 @@
- SVN - SVN
- feature: new Module 59_HCS.pm for monitoring heating valves (FHT, HM-CC-VD) - feature: new Module 59_HCS.pm for monitoring heating valves (FHT, HM-CC-VD)
to contral a central heating unit. I thank Benjamin for his support! (M. Fischer) to contral a central heating unit. I thank Benjamin for his support! (M.
- feature: new Module 72_FB_CALLMONITOR for receiving telephone call events (Markus) Fischer)
- feature: new Module 72_FB_CALLMONITOR for receiving telephone call events
(Markus)
- feature: new Module 71_YAMAHA_AVR.pm for controlling Yamaha AV receivers - feature: new Module 71_YAMAHA_AVR.pm for controlling Yamaha AV receivers
over network (by Markus) over network (by Markus)
- feature: optional second parameter to fhem() to make it silent - feature: optional second parameter to fhem() to make it silent
- feature: autoloading commands, XmlList/etc renamed from 99 to 98. - feature: autoloading commands, XmlList/etc renamed from 99 to 98.
- feature: FHEMWEB returns external files in chunks to save memory - feature: FHEMWEB returns external files in chunks to save memory
- feature: commandref.html splitted: documentation is now appended to the modules. - feature: commandref.html splitted: documentation is now appended to the
modules.
- change: introduced readingsBulkUpdate, readingsSingleUpdate - change: introduced readingsBulkUpdate, readingsSingleUpdate
- change: added GPLv2 licensing information - change: added GPLv2 licensing information
- bugfix: FHEMWEB slider with min > 0
- change: FHEMWEB CORS moved to options
- 2012-10-28 (5.3) - 2012-10-28 (5.3)
- feature: added functions trim, ltrim, rtrim, UntoggleDirect, UntoggleIndirect - feature: added functions trim, ltrim, rtrim, UntoggleDirect,
UntoggleIndirect
- feature: added functions FB_mail, FB_WLANswitch - feature: added functions FB_mail, FB_WLANswitch
- rework: CUL_HM reworks with respect to protocol. - rework: CUL_HM reworks with respect to protocol. additions for several
additions for several devices and commands devices and commands
- feature: rfmode supports to listen to MAX if fw>1.46, 00_CUL.pm (Jens) - feature: rfmode supports to listen to MAX if fw>1.46, 00_CUL.pm (Jens)
- feature: Status and length on cmdStack in webinterface for 10_CUL_HM - feature: Status and length on cmdStack in webinterface for 10_CUL_HM
- feature: devicepair in 10_CUL_HM.pm supports unset - feature: devicepair in 10_CUL_HM.pm supports unset
- feature: devicepair for single Button in 10_CUL_HM.pm (by MartinP) - feature: devicepair for single Button in 10_CUL_HM.pm (by MartinP)
- feature: new Modules 75_MSG.pm, 76_MSGFile.pm and 76_MSGMail.pm (by R<>diger) - feature: new Modules 75_MSG.pm, 76_MSGFile.pm and 76_MSGMail.pm (by
R<>diger)
- feature: new Module 59_Twilight.pm to calculate current daylight - feature: new Module 59_Twilight.pm to calculate current daylight
- feature: internal NotifyOrderPrefix: 98_average.pm is more straightforward - feature: internal NotifyOrderPrefix: 98_average.pm is more straightforward
- feature: the usb command tries to flash unflashed CULs on linux - feature: the usb command tries to flash unflashed CULs on linux
@@ -30,7 +37,7 @@
- feature: additional groups from /etc/groups are applied (Christopher) - feature: additional groups from /etc/groups are applied (Christopher)
- feature: updatefhem backup is using tar+gzip now - feature: updatefhem backup is using tar+gzip now
- feature: EIB: introduce Get, interpret received values upon defined model - feature: EIB: introduce Get, interpret received values upon defined model
(by datapoint types) (Maz) (by datapoint types) (Maz)
- feature: NetIO230B module by Andy - feature: NetIO230B module by Andy
- feature: Retaining configfile comments (not within a define statement) - feature: Retaining configfile comments (not within a define statement)
- feature: EnOcean PM101 by Ignaz - feature: EnOcean PM101 by Ignaz
@@ -41,7 +48,8 @@
- feature: FHEMWEB icons (by Joerg) - feature: FHEMWEB icons (by Joerg)
- feature: FHEMWEB console (same as inform timer) - feature: FHEMWEB console (same as inform timer)
- feature: remove dependency on Google::Weather, major rewrite (Boris) - feature: remove dependency on Google::Weather, major rewrite (Boris)
- feature: started experimental interface implementation (fhem API v2) (Boris) - feature: started experimental interface implementation (fhem API v2)
(Boris)
- feature: sleep issued in at/notify/etc is not blocking fhem anymore - feature: sleep issued in at/notify/etc is not blocking fhem anymore
- feature: dummy got a setList attribute - feature: dummy got a setList attribute
- feature: new module 02_RSS.pm - feature: new module 02_RSS.pm
@@ -49,38 +57,38 @@
- feature: FHEMWEB attribute values via dropdown, slider for dimmer - feature: FHEMWEB attribute values via dropdown, slider for dimmer
- feature: new attribute group for FHEMWEB (Boris) - feature: new attribute group for FHEMWEB (Boris)
- change: 11_FHT.pm, 50_WS300.pm, 59_Weather.pm migrated to readingsUpdate - change: 11_FHT.pm, 50_WS300.pm, 59_Weather.pm migrated to readingsUpdate
mechanism (Boris) mechanism (Boris)
- change: 59_Weather.pm migrated from Google to Yahoo Weather API (Boris) - change: 59_Weather.pm migrated from Google to Yahoo Weather API (Boris)
- change: updatefhem modifications to support a clean install of fhem and - change: updatefhem modifications to support a clean install of fhem and
pgm2 installation, see commandref.html (M. Fischer) pgm2 installation, see commandref.html (M. Fischer)
- change: FHEMWEB support for the new www/pgm2 directroy added (M. Fischer) - change: FHEMWEB support for the new www/pgm2 directroy added (M. Fischer)
- change: Makefile support for for the new www/pgm2 directroy and new targets - change: Makefile support for for the new www/pgm2 directroy and new
backup and uninstall added. More verbose output. (M. Fischer) targets backup and uninstall added. More verbose output. (M. Fischer)
- change: backup separated from updatefhem to a new command (M. Fischer) - change: backup separated from updatefhem to a new command (M. Fischer)
- feature: new command backup added (M. Fischer) - feature: new command backup added (M. Fischer) new global attribute
new global attribute <backupsymlink> added <backupsymlink> added new global attribute <backupcmd> added new global
new global attribute <backupcmd> added attribute <backup_before_update> added
new global attribute <backup_before_update> added
- feature: new module 57_Calendar.pm (Boris) - feature: new module 57_Calendar.pm (Boris)
- feature: new parameter <changed> for updatefhem added (M. Fischer) - feature: new parameter <changed> for updatefhem added (M. Fischer) new
new global attribute <exclude_from_update> added (M. Fischer) global attribute <exclude_from_update> added (M. Fischer)
- feature: optional telnet password added / telnet port is optional - feature: optional telnet password added / telnet port is optional
- feature: holiday returns all matches, not only the first. - feature: holiday returns all matches, not only the first.
- change: CULflash separated from updatefhem to a new module (M. Fischer) - change: CULflash separated from updatefhem to a new module (M. Fischer)
- feature: time and internet helper routines added to fhem.pl (Boris) - feature: time and internet helper routines added to fhem.pl (Boris)
- change: separating common functions used by the FHEM modules into - change: separating common functions used by the FHEM modules into
*Utils.pm files from fhem.pl *Utils.pm files from fhem.pl
- feature: portpassword and basicAuth may use evaluated functions - feature: portpassword and basicAuth may use evaluated functions
- feature: motd with SecurityCheck added - feature: motd with SecurityCheck added
- feature: telnet module added, attr global port moved. allowfrom changed. - feature: telnet module added, attr global port moved. allowfrom changed.
- feature: FhemUtils/release.pm for the new update process added. (M. Fischer) - feature: FhemUtils/release.pm for the new update process added. (M.
Fischer)
- bugfix: correct one-time relative at commands after reboot - bugfix: correct one-time relative at commands after reboot
- feature: ZWave added - feature: ZWave added
- feature: module IPCAM added. (M. Fischer) - feature: module IPCAM added. (M. Fischer)
- feature: module HTTPSRV added (Boris) - feature: module HTTPSRV added (Boris)
- feature: module FLOORPLAN added (Uli Maass) - feature: module FLOORPLAN added (Uli Maass)
- bugfix: FHEMWEB: weblink with group attribute is shown together with other - bugfix: FHEMWEB: weblink with group attribute is shown together with other
elements elements
- feature: FHEMWEB: timepicker added - feature: FHEMWEB: timepicker added
- feature: FHEMWEB: support for modul specific icons added (M. Fischer) - feature: FHEMWEB: support for modul specific icons added (M. Fischer)

View File

@@ -10,7 +10,6 @@ use HttpUtils;
######################### #########################
# Forward declaration # Forward declaration
sub FW_IconURL($); sub FW_IconURL($);
sub FW_fC($@);
sub FW_answerCall($); sub FW_answerCall($);
sub FW_calcWeblink($$); sub FW_calcWeblink($$);
sub FW_dev2image($); sub FW_dev2image($);
@@ -100,7 +99,6 @@ my $FW_longpoll; # Set if longpoll (i.e. server notification) is active
my $FW_inform; my $FW_inform;
my $FW_XHR; # Data only answer, no HTML my $FW_XHR; # Data only answer, no HTML
my $FW_jsonp; # jasonp answer (sending function calls to the client) my $FW_jsonp; # jasonp answer (sending function calls to the client)
my $FW_cors; # Cross-origin resource sharing
my $FW_headercors; # my $FW_headercors; #
my $FW_chash; # client fhem hash my $FW_chash; # client fhem hash
#my $FW_encoding="ISO-8859-1"; #my $FW_encoding="ISO-8859-1";
@@ -128,7 +126,7 @@ FHEMWEB_Initialize($)
"plotmode:gnuplot,gnuplot-scroll,SVG plotsize refresh " . "plotmode:gnuplot,gnuplot-scroll,SVG plotsize refresh " .
"touchpad smallscreen plotfork basicAuth basicAuthMsg ". "touchpad smallscreen plotfork basicAuth basicAuthMsg ".
"stylesheetPrefix iconpath hiddenroom HTTPS longpoll:1,0 ". "stylesheetPrefix iconpath hiddenroom HTTPS longpoll:1,0 ".
"redirectCmds:0,1 reverseLogs:0,1 allowfrom "; "redirectCmds:0,1 reverseLogs:0,1 allowfrom CORS:0,1";
############### ###############
# Initialize internal structures # Initialize internal structures
@@ -247,9 +245,9 @@ FW_Read($)
@FW_httpheader = split("[\r\n]", $hash->{BUF}); @FW_httpheader = split("[\r\n]", $hash->{BUF});
my @origin = grep /Origin/, @FW_httpheader; my @origin = grep /Origin/, @FW_httpheader;
$FW_headercors = ($FW_cors ? $FW_headercors = (AttrVal($FW_wname, "CORS", 0) ?
"Access-Control-Allow-".$origin[0]."\r\n". "Access-Control-Allow-".$origin[0]."\r\n".
"Access-Control-Allow-Methods: GET\r\n". "Access-Control-Allow-Methods: GET OPTIONS\r\n".
"Access-Control-Allow-Headers: Origin, Authorization, Accept\r\n". "Access-Control-Allow-Headers: Origin, Authorization, Accept\r\n".
"Access-Control-Allow-Credentials: true\r\n". "Access-Control-Allow-Credentials: true\r\n".
"Access-Control-Max-Age:86400\r\n" : ""); "Access-Control-Max-Age:86400\r\n" : "");
@@ -633,7 +631,6 @@ FW_digestCgi($)
$FW_XHR = undef; $FW_XHR = undef;
$FW_jsonp = undef; $FW_jsonp = undef;
$FW_inform = undef; $FW_inform = undef;
$FW_cors = undef;
%FW_webArgs = (); %FW_webArgs = ();
$arg =~ s,^[?/],,; $arg =~ s,^[?/],,;
@@ -658,7 +655,6 @@ FW_digestCgi($)
if($p eq "XHR") { $FW_XHR = 1; } if($p eq "XHR") { $FW_XHR = 1; }
if($p eq "jsonp") { $FW_jsonp = $v; } if($p eq "jsonp") { $FW_jsonp = $v; }
if($p eq "inform") { $FW_inform = $v; } if($p eq "inform") { $FW_inform = $v; }
if($p eq "CORS") { $FW_cors = 1; }
} }
$cmd.=" $dev{$c}" if(defined($dev{$c})); $cmd.=" $dev{$c}" if(defined($dev{$c}));
@@ -2845,6 +2841,13 @@ FW_Set($@)
</li> </li>
<br> <br>
<a name="CORS"></a>
<li>CORS<br>
If set to 1, FHEMWEB will supply a "Cross origin resource sharing"
header, see the wikipedia for details.
</li>
<br>
</ul> </ul>
See also <a href="#room">room</a> and <a href="#group">group</a> attributes. See also <a href="#room">room</a> and <a href="#group">group</a> attributes.