diff options
author | kongr45gpen <kongr45gpen@helit.org> | 2013-07-24 20:11:19 +0300 |
---|---|---|
committer | kongr45gpen <kongr45gpen@helit.org> | 2013-07-24 20:11:19 +0300 |
commit | 5eb4b08dde1178d871e2b75906497b5ea141d774 (patch) | |
tree | c421fe8186e8076ad3120b5545ed7d8e2062a491 /plugin.py | |
parent | 07980e9c4e96874ec7f0777e5362c321584d1706 (diff) | |
download | supybot_github-5eb4b08dde1178d871e2b75906497b5ea141d774.tar.gz supybot_github-5eb4b08dde1178d871e2b75906497b5ea141d774.tar.bz2 supybot_github-5eb4b08dde1178d871e2b75906497b5ea141d774.zip |
Improve functionality of wiki reports
Add colouring to created/deleted messages
Add comparison link
Diffstat (limited to 'plugin.py')
-rw-r--r-- | plugin.py | 17 |
1 files changed, 11 insertions, 6 deletions
@@ -48,7 +48,11 @@ def plural(number, s, p): return s def colorAction(action): - """Get an action string (e.g. opened, edited) and get a nice IRC colouring""" + """Get an action string (e.g. created, edited) and get a nice IRC colouring""" + if action == "created": + return ircutils.bold(ircutils.mircColor(action, "green")) + if action == "deleted": + return ircutils.bold(ircutils.mircColor(action, "red")) return action def registryValue(plugin, name, channel=None, value=True): @@ -87,7 +91,7 @@ class GithubHandler(BaseHTTPServer.BaseHTTPRequestHandler): s.wfile.write('</body></html>') s.wfile.write(vars(s)) - #print json.dumps(data, sort_keys=True, indent=4, separators=(',', ': ')) + print json.dumps(data, sort_keys=True, indent=4, separators=(',', ': ')) for irc in world.ircs: # Handle different event types @@ -138,25 +142,26 @@ class GithubHandler(BaseHTTPServer.BaseHTTPRequestHandler): pageno = len(data['pages']) - msgs.append( ircmsgs.privmsg(registryValue("Github",'channel'), "%s: %s modified %s wiki %s (%s/wiki):" % ( + msgs.append( ircmsgs.privmsg(registryValue("Github",'channel'), "%s: %s modified %s wiki %s (%s/wiki/_compare/%s):" % ( ircutils.bold(data['repository']['name']), ircutils.mircColor(data['sender']['login'], "green"), ircutils.bold(str(pageno)), plural(pageno, "page", "pages"), - data['repository']['html_url'] + data['repository']['html_url'], + data['pages'][0]['sha'] )) ) for page in data['pages']: # TODO: Add support for multi-line commit messages - msgs.append( ircmsgs.privmsg(registryValue("Github",'channel'), "%s: %s %s %s * %s (%s) %s " % ( + # Unfortunately github doesn't support edit summaries :( + msgs.append( ircmsgs.privmsg(registryValue("Github",'channel'), "%s: %s %s %s * %s (%s)" % ( ircutils.bold(data['repository']['name']), ircutils.mircColor(data['sender']['login'], "green"), colorAction(page['action']), ircutils.bold(ircutils.mircColor(page['page_name'], "blue")), ircutils.bold(page['sha'][0:6]), page['html_url'], - page['summary'] )) ) return msgs |