diff options
Diffstat (limited to 'modules/base/luasrc/view/sysauth.htm')
-rw-r--r-- | modules/base/luasrc/view/sysauth.htm | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/modules/base/luasrc/view/sysauth.htm b/modules/base/luasrc/view/sysauth.htm new file mode 100644 index 000000000..7c39f0da5 --- /dev/null +++ b/modules/base/luasrc/view/sysauth.htm @@ -0,0 +1,80 @@ +<%# +LuCI - Lua Configuration Interface +Copyright 2008 Steven Barth <steven@midlink.org> +Copyright 2008-2012 Jo-Philipp Wich <xm@subsignal.org> + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +-%> + +<%+header%> + +<form method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>"> + <div class="cbi-map"> + <h2><a id="content" name="content"><%:Authorization Required%></a></h2> + <div class="cbi-map-descr"> + <%:Please enter your username and password.%> + <%- if fuser then %> + <div class="error"><%:Invalid username and/or password! Please try again.%></div> + <br /> + <% end -%> + </div> + <fieldset class="cbi-section"><fieldset class="cbi-section-node"> + <div class="cbi-value"> + <label class="cbi-value-title"><%:Username%></label> + <div class="cbi-value-field"> + <input class="cbi-input-user" type="text" name="username" value="<%=duser%>" /> + </div> + </div> + <div class="cbi-value cbi-value-last"> + <label class="cbi-value-title"><%:Password%></label> + <div class="cbi-value-field"> + <input id="focus_password" class="cbi-input-password" type="password" name="password" /> + </div> + </div> + </fieldset></fieldset> + </div> + + <div> + <input type="submit" value="<%:Login%>" class="cbi-button cbi-button-apply" /> + <input type="reset" value="<%:Reset%>" class="cbi-button cbi-button-reset" /> + </div> +</form> +<script type="text/javascript">//<![CDATA[ + var input = document.getElementById('focus_password'); + 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%> |