Mercurial > prosody-hg
comparison plugins/mod_http_errors.lua @ 11389:29e7ed75ed3f
mod_http_errors: Add way to reuse the error page template
module:fire_event("http-message", {title = "hello"; message = "world"})
Goal is to enable consistent messages from Prosody. Not necessarily
error messages, but warnings or just notices.
This does cause some drift in the purpose of mod_http_errors, but that's
okay.
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sun, 21 Feb 2021 06:13:19 +0100 |
| parents | 60a61c509d87 |
| children | 226fd5d3a295 |
comparison
equal
deleted
inserted
replaced
| 11388:60a61c509d87 | 11389:29e7ed75ed3f |
|---|---|
| 62 event.response.headers.content_type = "text/html; charset=utf-8"; | 62 event.response.headers.content_type = "text/html; charset=utf-8"; |
| 63 end | 63 end |
| 64 return get_page(event.code, (show_private and event.private_message) or event.message or (event.error and event.error.text)); | 64 return get_page(event.code, (show_private and event.private_message) or event.message or (event.error and event.error.text)); |
| 65 end); | 65 end); |
| 66 | 66 |
| 67 module:hook("http-message", function (event) | |
| 68 if event.response then | |
| 69 event.response.headers.content_type = "text/html; charset=utf-8"; | |
| 70 end | |
| 71 return render(html, event); | |
| 72 end); | |
| 73 | |
| 67 module:hook_object_event(server, "http-error", function (event) | 74 module:hook_object_event(server, "http-error", function (event) |
| 68 local request, response = event.request, event.response; | 75 local request, response = event.request, event.response; |
| 69 if request and response and request.path == "/" and response.status_code == 404 then | 76 if request and response and request.path == "/" and response.status_code == 404 then |
| 70 response.headers.content_type = "text/html; charset=utf-8"; | 77 response.headers.content_type = "text/html; charset=utf-8"; |
| 71 return render(html, { | 78 return render(html, { |
