aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/shorturl.py13
-rw-r--r--modules/title.py3
2 files changed, 12 insertions, 4 deletions
diff --git a/modules/shorturl.py b/modules/shorturl.py
index f20c46b7..668ac0a4 100644
--- a/modules/shorturl.py
+++ b/modules/shorturl.py
@@ -16,6 +16,7 @@ class Module(ModuleManager.BaseModule):
setting = utils.OptionsSetting("url-shortener", [],
"Set URL shortener service",
options_factory=self._shorturl_options_factory)
+ self.exports.add("channelset", setting)
self.exports.add("serverset", setting)
self.exports.add("botset", setting)
@@ -37,8 +38,14 @@ class Module(ModuleManager.BaseModule):
def _shorturl_any(self, url):
return self._call_shortener("bitly", url) or url
- def _shorturl(self, server, url):
- shortener_name = server.get_setting("url-shortener", "bitly")
+ def _shorturl(self, server, url, context=None):
+ shortener_name = None
+ if context:
+ shortener_name = context.get_setting("url-shortener",
+ server.get_setting("url-shortener", "bitly"))
+ else:
+ shortener_name = server.get_setting("url-shortener", "bitly")
+
if shortener_name == None:
return url
return self._call_shortener(shortener_name, url) or url
@@ -80,7 +87,7 @@ class Module(ModuleManager.BaseModule):
url = self._find_url(event["target"], event["args_split"])
event["stdout"].write("Shortened URL: %s" % self._shorturl(
- event["server"], url))
+ event["server"], url, context=event["target"]))
@utils.hook("received.command.unshorten")
def unshorten(self, event):
diff --git a/modules/title.py b/modules/title.py
index b585e687..703ea476 100644
--- a/modules/title.py
+++ b/modules/title.py
@@ -37,7 +37,8 @@ class Module(ModuleManager.BaseModule):
"\r", "").replace(" ", " ").strip()
if channel.get_setting("title-shorten", False):
- short_url = self.exports.get_one("shorturl")(server, url)
+ short_url = self.exports.get_one("shorturl")(server, url,
+ context=channel)
return "%s - %s" % (title, short_url)
return title
else: