mod_motd: Send no message (instead of 'blank') if no message is set in the config...
[prosody.git] / plugins / mod_motd.lua
1 -- Prosody IM
2 -- Copyright (C) 2008-2010 Matthew Wild
3 -- Copyright (C) 2008-2010 Waqas Hussain
4 -- Copyright (C) 2010 Jeff Mitchell
5 -- 
6 -- This project is MIT/X11 licensed. Please see the
7 -- COPYING file in the source package for more information.
8 --
9
10 local host = module:get_host();
11 local motd_text = module:get_option("motd_text");
12 local motd_jid = module:get_option("motd_jid") or host;
13
14 if not motd_text then return; end
15
16 local st = require "util.stanza";
17
18 motd_text = motd_text:gsub("^%s*(.-)%s*$", "%1"):gsub("\n%s+", "\n"); -- Strip indentation from the config
19
20 module:hook("resource-bind",
21         function (event)
22                 local session = event.session;
23                 local motd_stanza =
24                         st.message({ to = session.username..'@'..session.host, from = motd_jid })
25                                 :tag("body"):text(motd_text);
26                 core_route_stanza(hosts[host], motd_stanza);
27                 module:log("debug", "MOTD send to user %s@%s", session.username, session.host);
28
29 end);