EVOLUTION-MANAGER
Edit File: captive_portal.lua
-- -- (C) 2013-20 - ntop.org -- local dirs = ntop.getDirs() package.path = dirs.installdir .. "/scripts/lua/modules/?.lua;" .. package.path -- io.write ("Session:".._SESSION["session"].."\n") require "lua_utils" local page_utils = require("page_utils") sendHTTPContentTypeHeader('text/html') page_utils.print_header_minimal() local info = ntop.getInfo() print [[ <div class="container-narrow"> <style type="text/css"> body { padding-top: 40px; padding-bottom: 40px; background-color: #f5f5f5; } .form-signin { max-width: 400px; padding: 9px 29px 29px; margin: 0 auto 20px; background-color: #fff; border: 1px solid #e5e5e5; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.05); -moz-box-shadow: 0 1px 2px rgba(0,0,0,.05); box-shadow: 0 1px 2px rgba(0,0,0,.05); } .form-signin .form-signin-heading, .form-signin .checkbox { margin-bottom: 10px; } .form-signin input[type="text"], .form-signin input[type="password"] { font-size: 16px; height: auto; margin-bottom: 15px; padding: 7px 9px; } </style> <div class="container"> <form id="form_add_user" role="form" data-toggle="validator" class="form-signin" onsubmit="return makeUsernameLowercase();" action="]] print(ntop.getHttpPrefix()) print[[/lua/authorize_captive.lua]] local r = _GET["referer"] local additional_keys = { "host", "ifname", "ifid", "page" } for _,id in ipairs(additional_keys) do if(_GET[id] ~= nil) then r = r .. "&" .. id .. "=" .._GET[id] end end if not isEmptyString(r) then print("?referer="..r) end print[[" method="POST"> <h2 class="form-signin-heading" style="font-weight: bold;">]] print(info["product"]) print [[ Access Portal</h2> <div class="form-group has-feedback"> <input type="hidden" class="form-control" name="username"> <input type="text" class="form-control" name="_username" placeholder="]] print(i18n("login.username")) print[[" pattern="^[\w\.%]{1,}$" required> <input type="password" class="form-control" name="password" placeholder="]] print(i18n("login.password")) print[[" pattern="]] print(getPasswordInputPattern()) print[[" required> <input type="text" class="form-control" name="label" placeholder="]] print(i18n("login.device_label")) print[[" pattern="^[ \w\.%]{1,}$" required> </div> <button class="btn btn-lg btn-primary btn-block" type="submit">]] print(i18n("login.login")) print[[</button> <div class="row"> <div > </div> <div class="col-lg-12"> <small> <p>]] print(i18n("login.enter_credentials")) print[[ </p> <p>]] print(info["copyright"]) print [[ </small> </div> </div> </form> <script> $("input:text:visible:first").focus(); //$('#form_add_user').validator(); function makeUsernameLowercase() { var target = $('#form_add_user input[name="username"]'); var origin = $('#form_add_user input[name="_username"]'); target.val(origin.val().toLowerCase()); origin.removeAttr("name"); return true; } </script> </div> <!-- /container --> </body> </html> ]]