bsw/jbe@5: ui.tag{ bsw/jbe@5: tag = "noscript", bsw/jbe@5: content = function() bsw@520: slot.put(_"JavaScript is disabled or not available.") bsw/jbe@5: end bsw/jbe@5: } bsw/jbe@5: bsw@729: ui.title(_"Login") jorges@105: app.html_title.title = _"Login" bsw/jbe@0: bsw/jbe@1309: ui.container{ attr = { class = "mdl-grid" }, content = function() bsw/jbe@1309: ui.container{ attr = { class = "mdl-cell mdl-cell--12-col" }, content = function() bsw/jbe@1309: execute.view{ module = "index", view = "_sidebar_motd_public" } bsw@1045: bsw/jbe@1309: execute.view{ module = "index", view = "_lang_chooser" } bsw/jbe@1309: bsw/jbe@1309: ui.heading{ level = 1, content = _"Login" } bsw@1045: bsw/jbe@1309: local redirect_params = {} bsw/jbe@1309: local redirect_params_string = param.get("redirect_params") bsw/jbe@1309: bsw/jbe@1309: if redirect_params_string then bsw/jbe@1309: local tmp = json.import(redirect_params_string) bsw/jbe@1309: if type(tmp) == "table" then bsw/jbe@1309: for k, v in pairs(tmp) do bsw/jbe@1309: if type(v) == "string" then bsw/jbe@1309: redirect_params[k] = v bsw/jbe@1309: end bsw/jbe@1309: end bsw@1045: end bsw/jbe@1309: end bsw/jbe@1309: bsw/jbe@1309: ui.form{ bsw/jbe@1309: module = 'index', bsw/jbe@1309: action = 'login', bsw/jbe@1309: routing = { bsw/jbe@1309: ok = { bsw/jbe@1309: mode = 'redirect', bsw/jbe@1309: module = param.get("redirect_module") or "index", bsw/jbe@1309: view = param.get("redirect_view") or "index", bsw/jbe@1309: id = param.get("redirect_id"), bsw/jbe@1309: params = redirect_params bsw/jbe@1309: }, bsw/jbe@1309: error = { bsw/jbe@1309: mode = 'redirect', bsw/jbe@1309: module = "index", bsw/jbe@1309: view = "login", bsw/jbe@1309: params = { bsw/jbe@1309: redirect_module = param.get("redirect_module"), bsw/jbe@1309: redirect_view = param.get("redirect_view"), bsw/jbe@1309: redirect_id = param.get("redirect_id"), bsw/jbe@1309: redirect_params = param.get("redirect_params") bsw@1045: } bsw@1045: } bsw/jbe@1309: }, bsw/jbe@1309: content = function() bsw/jbe@1309: if slot.get_content("error_code") == "invalid_credentials" then bsw/jbe@1309: ui.container{ attr = { class = "warning" }, content = _"Invalid login name or password!" } bsw/jbe@1309: end bsw/jbe@1309: ui.field.text{ bsw/jbe@1309: container_attr = { class = "mdl-textfield mdl-js-textfield mdl-textfield--floating-label" }, bsw/jbe@1309: attr = { id = "lf-login__username", class = "mdl-textfield__input" }, bsw/jbe@1309: label_attr = { class = "mdl-textfield__label", ["for"] = "lf-login__username" }, bsw/jbe@1309: label = _'Login name', bsw/jbe@1309: name = 'login', bsw/jbe@1309: value = '' bsw/jbe@1309: } bsw/jbe@1309: slot.put("
") bsw/jbe@1309: ui.field.password{ bsw/jbe@1309: container_attr = { class = "mdl-textfield mdl-js-textfield mdl-textfield--floating-label" }, bsw/jbe@1309: attr = { id = "lf-login__password", class = "mdl-textfield__input" }, bsw/jbe@1309: label_attr = { class = "mdl-textfield__label", ["for"] = "lf-login__password" }, bsw/jbe@1309: label = _'Password', bsw/jbe@1309: name = 'password', bsw/jbe@1309: value = '' bsw/jbe@1309: } bsw/jbe@1309: slot.put("

") bsw@1045: ui.tag{ bsw@1045: tag = "input", bsw@1045: attr = { bsw@1045: type = "submit", bsw/jbe@1309: class = "mdl-button mdl-js-button mdl-button--raised mdl-button--colored", bsw@1045: value = _'Login' bsw/jbe@1309: } bsw/jbe@1309: } bsw/jbe@1309: slot.put("   ") bsw/jbe@1309: ui.link{ bsw/jbe@1309: attr = { class = "mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect" }, bsw/jbe@1309: module = "index", view = "index", text = _"Cancel" bsw@1045: } bsw/jbe@1309: if not config.disable_registration then bsw/jbe@1309: slot.put("   ") bsw/jbe@1309: ui.link{ bsw/jbe@1309: attr = { class = "mdl-button mdl-js-button mdl-js-ripple-effect mdl-button--underlined" }, bsw/jbe@1309: module = "index", view = "register", text = _"No account yet?", params = { bsw/jbe@1309: redirect_module = param.get("redirect_module"), bsw/jbe@1309: redirect_view = param.get("redirect_view"), bsw/jbe@1309: redirect_id = param.get("redirect_id"), bsw/jbe@1309: redirect_params = param.get("redirect_params") bsw/jbe@1309: } bsw/jbe@1309: } bsw/jbe@1309: end bsw/jbe@1309: if config.self_registration then bsw/jbe@1309: slot.put("   ") bsw/jbe@1309: ui.link{ bsw/jbe@1309: attr = { class = "mdl-button mdl-js-button mdl-js-ripple-effect mdl-button--underlined" }, bsw/jbe@1309: module = "registration", view = "register", text = _"No account yet?", params = { bsw/jbe@1309: redirect_module = param.get("redirect_module"), bsw/jbe@1309: redirect_view = param.get("redirect_view"), bsw/jbe@1309: redirect_id = param.get("redirect_id"), bsw/jbe@1309: redirect_params = param.get("redirect_params") bsw/jbe@1309: } bsw/jbe@1309: } bsw/jbe@1309: end bsw/jbe@1309: slot.put("

") bsw/jbe@1309: ui.link{ bsw/jbe@1309: attr = { class = "mdl-button mdl-js-button mdl-js-ripple-effect mdl-button--underlined" }, bsw/jbe@1309: module = "index", view = "reset_password", text = _"Forgot password?", params = { bsw/jbe@1309: redirect_module = param.get("redirect_module"), bsw/jbe@1309: redirect_view = param.get("redirect_view"), bsw/jbe@1309: redirect_id = param.get("redirect_id"), bsw/jbe@1309: redirect_params = param.get("redirect_params") bsw/jbe@1309: } bsw/jbe@1309: } bsw/jbe@1309: slot.put("   ") bsw/jbe@1309: ui.link{ bsw/jbe@1309: attr = { class = "mdl-button mdl-js-button mdl-js-ripple-effect mdl-button--underlined" }, bsw/jbe@1309: module = "index", view = "send_login", text = _"Forgot login name?", params = { bsw/jbe@1309: redirect_module = param.get("redirect_module"), bsw/jbe@1309: redirect_view = param.get("redirect_view"), bsw/jbe@1309: redirect_id = param.get("redirect_id"), bsw/jbe@1309: redirect_params = param.get("redirect_params") bsw/jbe@1309: } bsw/jbe@1309: } bsw/jbe@1309: end bsw/jbe@1309: } bsw/jbe@1309: end } bsw/jbe@1309: end }