Software / code / prosody-modules
Comparison
mod_password_reset/mod_password_reset.lua @ 6263:10a1016d1c3a
Merge update
| author | Trần H. Trung <xmpp:trần.h.trung@trung.fun> |
|---|---|
| date | Sun, 01 Jun 2025 11:43:16 +0700 |
| parent | 6229:eb8659ba53e5 |
comparison
equal
deleted
inserted
replaced
| 6262:a72388da5cd4 | 6263:10a1016d1c3a |
|---|---|
| 6 local http_formdecode = require "net.http".formdecode; | 6 local http_formdecode = require "net.http".formdecode; |
| 7 local usermanager = require "core.usermanager"; | 7 local usermanager = require "core.usermanager"; |
| 8 local dataforms_new = require "util.dataforms".new; | 8 local dataforms_new = require "util.dataforms".new; |
| 9 local st = require "util.stanza"; | 9 local st = require "util.stanza"; |
| 10 local apply_template = require"util.interpolation".new("%b{}", st.xml_escape); | 10 local apply_template = require"util.interpolation".new("%b{}", st.xml_escape); |
| 11 local http_files = require "net.http.files"; | |
| 11 | 12 |
| 12 local reset_tokens = module:open_store(); | 13 local reset_tokens = module:open_store(); |
| 13 | 14 |
| 14 local max_token_age = module:get_option_number("password_reset_validity", 86400); | 15 local max_token_age = module:get_option_number("password_reset_validity", 86400); |
| 15 | |
| 16 local serve; | |
| 17 if prosody.process_type == "prosody" then | |
| 18 local http_files = require "net.http.files"; | |
| 19 serve = http_files.serve; | |
| 20 else | |
| 21 serve = module:depends"http_files".serve; | |
| 22 end | |
| 23 | 16 |
| 24 module:depends("adhoc"); | 17 module:depends("adhoc"); |
| 25 module:depends("http"); | 18 module:depends("http"); |
| 26 local password_policy = module:depends("password_policy"); | 19 local password_policy = module:depends("password_policy"); |
| 27 | 20 |
| 88 end | 81 end |
| 89 end | 82 end |
| 90 | 83 |
| 91 module:provides("http", { | 84 module:provides("http", { |
| 92 route = { | 85 route = { |
| 93 ["GET /bootstrap.min.css"] = serve(module:get_directory() .. "/password_reset/bootstrap.min.css"); | 86 ["GET /bootstrap.min.css"] = http_files.serve(module:get_directory() .. "/password_reset/bootstrap.min.css"); |
| 94 ["GET /reset"] = generate_page; | 87 ["GET /reset"] = generate_page; |
| 95 ["POST /reset"] = handle_form; | 88 ["POST /reset"] = handle_form; |
| 96 }; | 89 }; |
| 97 }); | 90 }); |
| 98 | 91 |