X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=plugins%2Fmod_http_errors.lua;h=0c37e1044eed1ea5b3df81491ac7e1cbcc2e041f;hb=f1578bdc4e0a3b10a46adbe3ebd9ae39fbc682a0;hp=820bcc2f27366ff643ec8d2b65827efc320f7f95;hpb=f5ca059581a1a81ad9b2e055e7479d345e90e9f5;p=prosody.git diff --git a/plugins/mod_http_errors.lua b/plugins/mod_http_errors.lua index 820bcc2f..0c37e104 100644 --- a/plugins/mod_http_errors.lua +++ b/plugins/mod_http_errors.lua @@ -1,12 +1,11 @@ module:set_global(); -module:depends("http"); local server = require "net.http.server"; local codes = require "net.http.codes"; -local termcolours = require "util.termcolours"; local show_private = module:get_option_boolean("http_errors_detailed", false); - +local always_serve = module:get_option_boolean("http_errors_always_show", true); +local default_message = { module:get_option_string("http_errors_default_message", "That's all I know.") }; local default_messages = { [400] = { "What kind of request do you call that??" }; [403] = { "You're not allowed to do that." }; @@ -54,12 +53,13 @@ local entities = { local function tohtml(plain) return (plain:gsub("[<>&'\"\n]", entities)); - + end local function get_page(code, extra) local message = messages[code]; - if message then + if always_serve or message then + message = message or default_message; return (html:gsub("$(%a+)", { title = rawget(codes, code) or ("Code "..tostring(code)); message = message[1]:gsub("%%", function ()