summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorManuel Munz <freifunk@somakoma.de>2013-09-03 17:40:55 +0000
committerManuel Munz <freifunk@somakoma.de>2013-09-03 17:40:55 +0000
commit3701d2ffbcedc50ae88954182544fe54b46d1763 (patch)
tree45b5f9f3f10139ef170f248ffe5b515654a220ff
parent1354c88aee5bc354b639b5798e3f3bb826246658 (diff)
core/sysauth: Redirect to https on login page if possible, #317
-rw-r--r--modules/admin-core/luasrc/view/sysauth.htm30
1 files changed, 28 insertions, 2 deletions
diff --git a/modules/admin-core/luasrc/view/sysauth.htm b/modules/admin-core/luasrc/view/sysauth.htm
index 8c4b19c7c8..7c39f0da51 100644
--- a/modules/admin-core/luasrc/view/sysauth.htm
+++ b/modules/admin-core/luasrc/view/sysauth.htm
@@ -9,8 +9,6 @@ You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
-$Id$
-
-%>
<%+header%>
@@ -51,4 +49,32 @@ $Id$
if (input)
input.focus();
//]]></script>
+
+<%
+local uci = require "luci.model.uci".cursor()
+local fs = require "nixio.fs"
+local https_key = uci:get("uhttpd", "main", "key")
+local https_port = uci:get("uhttpd", "main", "listen_https")
+if type(https_port) == "table" then
+ https_port = https_port[1]
+end
+
+if https_port and fs.access(https_key) then
+ https_port = https_port:match("(%d+)$")
+%>
+
+<script type="text/javascript">//<![CDATA[
+ if (document.location.protocol != 'https:') {
+ var url = 'https://' + window.location.hostname + ':' + '<%=https_port%>' + window.location.pathname;
+ var img=new Image;
+ img.onload=function(){window.location = url};
+ img.src='https://' + window.location.hostname + ':' + '<%=https_port%>' + '<%=resource%>/cbi/up.gif?' + Math.random();;
+ setTimeout(function(){
+ img.src=''
+ }, 5000);
+ }
+//]]></script>
+
+<% end %>
+
<%+footer%>