From 9dc7a162c10379a9a4fccd867809041f29592e94 Mon Sep 17 00:00:00 2001 From: Brian Moe <brian.moe@ligo.org> Date: Thu, 13 Dec 2012 12:51:55 -0600 Subject: [PATCH] Refactor cli_label so REST API can use also. --- gracedb/views.py | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/gracedb/views.py b/gracedb/views.py index 150d63ec2..793a2bd99 100644 --- a/gracedb/views.py +++ b/gracedb/views.py @@ -366,9 +366,7 @@ def cli_tag(request): return response -def cli_label(request): - graceid = request.POST.get('graceid') - labelName = request.POST.get('label') +def create_label(graceid, labelName, creator, doAlert=True, doXMPP=True): d = {} event = graceid and Event.getByGraceid(graceid) @@ -385,18 +383,26 @@ def cli_label(request): labelling = Labelling( event = event, label = label, - creator = request.ligouser + creator = creator ) labelling.save() message = "Label: %s" % label.name - log = EventLog(event=event, issuer=request.ligouser, comment=message) + log = EventLog(event=event, issuer=creator, comment=message) log.save() try: - doxmpp = request.POST.get('alert') == "True" - issueAlertForLabel(event, label, doxmpp) + issueAlertForLabel(event, label, doXMPP) except Exception, e: d['warning'] = "Problem issuing alert (%s)" % str(e) + # XXX Strange return value. Just warnings. Can really be ignored, I think. + return d + +def cli_label(request): + graceid = request.POST.get('graceid') + labelName = request.POST.get('label') + + doxmpp = request.POST.get('alert') == "True" + d = create_label(graceid, labelName, request.ligouser, doXMPP=doxmpp) msg = str(d) response = HttpResponse(mimetype='application/json') -- GitLab