Software /
code /
prosody
Comparison
plugins/mod_admin_telnet.lua @ 4646:e0bd8587f2fb
mod_admin_telnet: module:list(): List global modules (part-fixes #228)
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Sat, 21 Apr 2012 20:39:52 +0100 |
parent | 4645:4539e99be743 |
child | 4647:57a4f863e48f |
comparison
equal
deleted
inserted
replaced
4645:4539e99be743 | 4646:e0bd8587f2fb |
---|---|
361 end | 361 end |
362 | 362 |
363 function def_env.module:list(hosts) | 363 function def_env.module:list(hosts) |
364 if hosts == nil then | 364 if hosts == nil then |
365 hosts = array.collect(keys(prosody.hosts)); | 365 hosts = array.collect(keys(prosody.hosts)); |
366 table.insert(hosts, 1, "*"); | |
366 end | 367 end |
367 if type(hosts) == "string" then | 368 if type(hosts) == "string" then |
368 hosts = { hosts }; | 369 hosts = { hosts }; |
369 end | 370 end |
370 if type(hosts) ~= "table" then | 371 if type(hosts) ~= "table" then |
371 return false, "Please supply a host or a list of hosts you would like to see"; | 372 return false, "Please supply a host or a list of hosts you would like to see"; |
372 end | 373 end |
373 | 374 |
374 local print = self.session.print; | 375 local print = self.session.print; |
375 for _, host in ipairs(hosts) do | 376 for _, host in ipairs(hosts) do |
376 print(host..":"); | 377 print((host == "*" and "Global" or host)..":"); |
377 local modules = array.collect(keys(prosody.hosts[host] and prosody.hosts[host].modules or {})):sort(); | 378 local modules = array.collect(keys(modulemanager.get_modules(host) or {})):sort(); |
378 if #modules == 0 then | 379 if #modules == 0 then |
379 if prosody.hosts[host] then | 380 if prosody.hosts[host] then |
380 print(" No modules loaded"); | 381 print(" No modules loaded"); |
381 else | 382 else |
382 print(" Host not found"); | 383 print(" Host not found"); |