jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/374051 )

Change subject: Show user rights expiry in user rights notification message
......................................................................


Show user rights expiry in user rights notification message

Bug: T164204
Change-Id: I572153dc5566378e55713dcb137f08828adeeb2a
---
M StewardBot/StewardBot.py
1 file changed, 41 insertions(+), 1 deletion(-)

Approvals:
  Melos: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/StewardBot/StewardBot.py b/StewardBot/StewardBot.py
index aad2e29..d7e2b7c 100644
--- a/StewardBot/StewardBot.py
+++ b/StewardBot/StewardBot.py
@@ -3,6 +3,7 @@
 
 from ircbot import SingleServerIRCBot
 from irclib import nm_to_n
+from datetime import datetime
 import MySQLdb
 import os
 import random
@@ -11,6 +12,8 @@
 import sys
 import threading
 import time
+import urllib
+import json
 
 import config
 
@@ -1073,6 +1076,43 @@
                 state1 = found.group('state1')
                 state2 = found.group('state2')
                 extra = found.group('extra')
+                # check expiry via api
+                urlapi = 
("https://meta.wikimedia.org/w/api.php?action=query&format=json&list=logevents&letype=rights&letitle=User:";
 + usertarget + "&lelimit=1")
+                response = urllib.urlopen(urlapi)
+                data = json.loads(response.read())
+                oldright = data['query']['logevents'][0]['params']['oldgroups']
+                newright = data['query']['logevents'][0]['params']['newgroups']
+                lennewrights = len(newright) + 1
+                lenoldrights = len(oldright) + 1
+                chrightsn = ""
+                chrightso = ""
+                n = 1
+                o = 1
+                while o < lenoldrights:
+                    oldrightfield = 
data['query']['logevents'][0]['params']['oldgroups'][o-1]
+                    oldrightfieldexpiry = 
data['query']['logevents'][0]['params']['oldmetadata'][o-1]['expiry']
+                    if oldrightfieldexpiry != "infinity":
+                        chrightso = chrightso + oldrightfield + " (expiry: " + 
datetime.strptime(oldrightfieldexpiry, "%Y-%m-%dT%H:%M:%SZ").strftime('%H:%M, 
%d %B %Y') + ")"
+                    else:
+                        chrightso = chrightso + oldrightfield
+                    if o != lenoldrights - 1:
+                        chrightso = chrightso + ", "
+                    o = o+1
+                if chrightso == "":
+                    chrightso = "(none)"
+                while n < lennewrights:
+                    newrightfield = 
data['query']['logevents'][0]['params']['newgroups'][n-1]
+                    newrightfieldexpiry = 
data['query']['logevents'][0]['params']['newmetadata'][n-1]['expiry']
+                    if newrightfieldexpiry != "infinity":
+                        chrightsn = chrightsn + newrightfield + " (expiry: " + 
datetime.strptime(newrightfieldexpiry, "%Y-%m-%dT%H:%M:%SZ").strftime('%H:%M, 
%d %B %Y') + ")"
+                    else:
+                        chrightsn = chrightsn + newrightfield
+                    if n != lennewrights - 1:
+                        chrightsn = chrightsn + ", "
+                    n = n+1
+                if chrightsn == "":
+                    chrightsn = "(none)"
+                # end of check expiry
                 if extra:
                     print "!!! There are extra parameters!"
                 comment = found.group('comment')
@@ -1092,7 +1132,7 @@
                     bott = "06(bot) "
                 bot1.msg(
                     "%s%s03%s changed user rights for %s from 04%s to 
04%s%s" %
-                    (selff, bott, usersource, usertarget, state1, state2, 
comment))
+                    (selff, bott, usersource, usertarget, chrightso, 
chrightsn, comment))
             elif "Special:Log/gblblock" in a:
                 if "gblock2" in a:
                     # [[Special:Log/gblblock]] gblock2  * Pathoschild *  
globally blocked [[User:190.198.116.53]] (anonymous only, expires 15:18, 28 
April 2009): crosswiki abuse, likely proxy

-- 
To view, visit https://gerrit.wikimedia.org/r/374051
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I572153dc5566378e55713dcb137f08828adeeb2a
Gerrit-PatchSet: 4
Gerrit-Project: labs/tools/stewardbots
Gerrit-Branch: master
Gerrit-Owner: Melos <[email protected]>
Gerrit-Reviewer: BryanDavis <[email protected]>
Gerrit-Reviewer: MarcoAurelio <[email protected]>
Gerrit-Reviewer: Melos <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to