diff options
-rwxr-xr-x | prosodyctl | 31 | ||||
-rw-r--r-- | util/pluginloader.lua | 23 |
2 files changed, 0 insertions, 54 deletions
@@ -499,37 +499,6 @@ function commands.unregister(arg) return 1; end -local http_errors = { - [404] = "Plugin not found, did you type the address correctly?" - }; - -function commands.addplugin(arg) - if not arg[1] or arg[1] == "--help" then - show_usage("addplugin URL", "Download and install a plugin from a URL"); - return 1; - end - local url = arg[1]; - if url:match("^http://") then - local http = require "socket.http"; - show_message("Fetching..."); - local code, err = http.request(url); - if not code or not tostring(err):match("^[23]") then - show_message("Failed: "..(http_errors[err] or ("HTTP error "..err))); - return 1; - end - if url:match("%.lua$") then - local ok, err = datamanager.store(url:match("/mod_([^/]+)$"), "*", "plugins", {code}); - if not ok then - show_message("Failed to save to data store: "..err); - return 1; - end - end - show_message("Saved. Don't forget to load the module using the config file or admin console!"); - else - show_message("Sorry, I don't understand how to fetch plugins from there."); - end -end - --------------------- if command and command:match("^mod_") then -- Is a command in a module diff --git a/util/pluginloader.lua b/util/pluginloader.lua index 90138a3e..956b92bd 100644 --- a/util/pluginloader.lua +++ b/util/pluginloader.lua @@ -16,12 +16,6 @@ local datamanager = require "util.datamanager"; module "pluginloader" -local function load_from_datastore(name) - local content = datamanager.load(name, nil, "plugins"); - if not content or not content[1] then return nil, "Resource not found"; end - return content[1], name; -end - local function load_file(name) local file, err = io_open(plugin_dir..name); if not file then return file, err; end @@ -40,26 +34,9 @@ function load_resource(plugin, resource, loader) if not content then content, err = loader(resource); end -- TODO add support for packed plugins - if not content and loader == load_file then - return load_resource(plugin, resource, load_from_datastore); - end - return content, err; end -function store_resource(plugin, resource, content, metadata) - if not resource then - resource = "mod_"..plugin..".lua"; - end - local store = { content }; - if metadata then - for k,v in pairs(metadata) do - store[k] = v; - end - end - datamanager.store(plugin.."/"..resource, nil, "plugins", store); -end - function load_code(plugin, resource) local content, err = load_resource(plugin, resource); if not content then return content, err; end |