Add very preliminary support for commits.

pull/1/head
Simon Quigley 6 years ago
parent 8d888dea87
commit b7d3569bc7

107
lugito

@ -77,65 +77,70 @@ def main():
print(data)
print
taskexists = True
exists = True
try:
tasksearch = phab.transaction.search(objectIdentifier=data["object"]["phid"])["data"]
search = phab.transaction.search(objectIdentifier=data["object"]["phid"])["data"]
except http.client.HTTPException:
taskexists = False
exists = False
if taskexists:
print("Task exists, checking to see if it's new.")
newtask = isnewtask(tasksearch)
if newtask:
print("Yes, it's a new task.")
else:
print("No, it's not a new task.")
if exists:
print("Object exists, checking to see if it's a task or a commit.")
if data["object"]["type"] == "TASK":
print("This is a task. Checking if it's new.")
newtask = isnewtask(search)
if newtask:
print("Yes, it's a new task.")
else:
print("No, it's not a new task.")
# If it's not a new task, let's see if it's a comment, and if it's just an edit
comment = None
commentid = None
edited = None
if not newtask:
# If it's not a new task, let's see if it's a comment, and if it's just an edit
comment = None
commentid = None
edited = False
for task in tasksearch:
dataepoch = data["action"]["epoch"]
datemodified = task["dateModified"]
# All comments within ten seconds of the request are fair game
if datemodified >= (dataepoch - 10) and datemodified <= (dataepoch + 10) and task["comments"] != []:
print("It's a comment, yes.")
comment = True
commentid = task["id"]
if datemodified != task["dateCreated"]:
print("The comment was edited.")
edited = True
edited = None
if not newtask:
commentid = None
edited = False
for task in search:
dataepoch = data["action"]["epoch"]
datemodified = task["dateModified"]
# All comments within ten seconds of the request are fair game
if datemodified >= (dataepoch - 10) and datemodified <= (dataepoch + 10) and task["comments"] != []:
print("It's a comment, yes.")
comment = True
commentid = task["id"]
if datemodified != task["dateCreated"]:
print("The comment was edited.")
edited = True
else:
print("The comment was NOT edited.")
edited = False
break
else:
print("The comment was NOT edited.")
edited = False
break
else:
comment = False
comment = False
if comment or edited or newtask:
# We should also know who did this thing
userlookup = tasksearch[0]["authorPHID"]
who = dict(phab.phid.query(phids=[userlookup]))[userlookup]["fullName"]
if comment or edited or newtask:
# We should also know who did this thing
userlookup = search[0]["authorPHID"]
who = dict(phab.phid.query(phids=[userlookup]))[userlookup]["fullName"]
fulltaskname = phab.phid.query(phids=[data["object"]["phid"]])[data["object"]["phid"]]["fullName"]
link = "\x032" + phab.phid.query(phids=[data["object"]["phid"]])[data["object"]["phid"]]["uri"]
if commentid:
link = link + "#" + str(commentid) + "\x03"
else:
link = link + "\x03"
message = "\x033[\x03\x0313"+ fulltaskname +"\x03\x033]\x03 \x0315" + str(who) + "\x03 "
if comment:
message = message + "commented on the task: " + link
elif edited:
message = message + "edited a message on the task: " + link
elif newtask:
message = message + "just created this task: " + link
print(message)
sendnotice(message)
fulltaskname = phab.phid.query(phids=[data["object"]["phid"]])[data["object"]["phid"]]["fullName"]
link = "\x032" + phab.phid.query(phids=[data["object"]["phid"]])[data["object"]["phid"]]["uri"]
if commentid:
link = link + "#" + str(commentid) + "\x03"
else:
link = link + "\x03"
message = "\x033[\x03\x0313"+ fulltaskname +"\x03\x033]\x03 \x0315" + str(who) + "\x03 "
if comment:
message = message + "commented on the task: " + link
elif edited:
message = message + "edited a message on the task: " + link
elif newtask:
message = message + "just created this task: " + link
print(message)
sendnotice(message)
elif data["object"]["type"] == "CMIT":
print("It's a commit!")
return "OK"

Loading…
Cancel
Save