author | Matthew Wild <mwild1@gmail.com> |
Thu, 28 Jan 2021 07:04:11 +0000 | |
changeset 4413 | 44f6537f6427 |
parent 4099 | de2390d6bbe4 |
child 4608 | f0efbb0b0b5b |
permissions | -rw-r--r-- |
4091
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 |
local mime_map = module:shared("/*/http_files/mime").types or { |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 |
css = "text/css", |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 |
js = "application/javascript", |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 |
}; |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
5 |
|
4099
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
6 |
local serve; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
7 |
if not pcall(function () |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
8 |
local http_files = require "net.http.files"; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
9 |
serve = http_files.serve; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
10 |
end) then |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
11 |
serve = module:depends"http_files".serve; |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
12 |
end |
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
13 |
|
4091
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 |
local libjs_path = module:get_option_string("libjs_path", "/usr/share/javascript"); |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 |
|
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 |
module:provides("http", { |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 |
default_path = "/share"; |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 |
route = { |
4099
de2390d6bbe4
mod_http_libjs: Add compatibility with Prosody 0.11.x
Matthew Wild <mwild1@gmail.com>
parents:
4091
diff
changeset
|
19 |
["GET /*"] = serve({ path = libjs_path, mime_map = mime_map }); |
4091
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 |
} |
88a469b285f5
mod_http_libjs: New module to serve common CSS/Javascript libraries
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
21 |
}); |