Skip to content
Snippets Groups Projects
Commit 4569353d authored by Tanner Prestegard's avatar Tanner Prestegard Committed by GraceDB
Browse files

removing intermediate 'alert_sent' state and GWA prefix

parent 9e9840b2
No related branches found
No related tags found
No related merge requests found
# -*- coding: utf-8 -*-
# Generated by Django 1.11.5 on 2018-05-25 19:32
from __future__ import unicode_literals
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('superevents', '0005_preferred_event_required'),
]
operations = [
migrations.RemoveField(
model_name='superevent',
name='alert_sent',
),
]
...@@ -35,17 +35,14 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel): ...@@ -35,17 +35,14 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel):
If there are multiple superevents on the same date, a letter prefix is If there are multiple superevents on the same date, a letter prefix is
added: S180101a, S180101b, etc., based on how many other added: S180101a, S180101b, etc., based on how many other
superevents exist for the given date. superevents exist for the given date.
Once an alert is sent out about a superevent, its prefix is changed to
'GWA': GWA180101a.
Once a superevent is confirmed as a GW, its prefix is changed to 'GW' Once a superevent is confirmed as a GW, its prefix is changed to 'GW'
and its suffix is recalculated in terms of how many confirmed GWs and its suffix is recalculated in terms of how many confirmed GWs
exist for the given date. Ex: S180101b -> GWA180101b -> GW180101A exist for the given date. Ex: S180101b -> GW180101A
""" """
DEFAULT_ID_PREFIX = 'S' DEFAULT_ID_PREFIX = 'S'
ALERT_ID_PREFIX = 'GWA'
GW_ID_PREFIX = 'GW' GW_ID_PREFIX = 'GW'
ID_REGEX = r'(({0}|{1})(\d+)([a-z]*)|({2})(\d+)([A-Z]*))'.format( ID_REGEX = r'(({0})(\d+)([a-z]*)|({1})(\d+)([A-Z]*))'.format(
DEFAULT_ID_PREFIX, ALERT_ID_PREFIX, GW_ID_PREFIX) DEFAULT_ID_PREFIX, GW_ID_PREFIX)
DATE_STR_FMT = '%y%m%d' DATE_STR_FMT = '%y%m%d'
AUTO_FIELD = 'base_date_number' AUTO_FIELD = 'base_date_number'
AUTO_CONSTRAINT = 't_0_date' AUTO_CONSTRAINT = 't_0_date'
...@@ -81,7 +78,6 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel): ...@@ -81,7 +78,6 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel):
editable=False) editable=False)
# Booleans # Booleans
alert_sent = models.BooleanField(default=False)
is_gw = models.BooleanField(default=False) is_gw = models.BooleanField(default=False)
# Meta class -------------------------------------------------------------- # Meta class --------------------------------------------------------------
...@@ -148,14 +144,6 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel): ...@@ -148,14 +144,6 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel):
self.preferred_event not in self.events.all()): self.preferred_event not in self.events.all()):
self.events.add(self.preferred_event) self.events.add(self.preferred_event)
def mark_as_alert_sent(self):
"""
Sets alert_sent to True. May add functionality to calculate an
'alert_date_number' if that becomes necessary
"""
self.alert_sent = True
self.save(update_fields=['alert_sent'])
def confirm_as_gw(self): def confirm_as_gw(self):
""" """
Sets is_gw to True, calculates the gw_date_number in the database, and Sets is_gw to True, calculates the gw_date_number in the database, and
...@@ -255,9 +243,6 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel): ...@@ -255,9 +243,6 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel):
date_number_key = 'gw_date_number' date_number_key = 'gw_date_number'
else: else:
date_number_key = 'base_date_number' date_number_key = 'base_date_number'
if prefix == cls.ALERT_ID_PREFIX:
# Require that alert_sent is True if using the ALERT_ID_PREFIX
q_kwargs['alert_sent'] = True
q_kwargs[date_number_key] = date_number q_kwargs[date_number_key] = date_number
return q_kwargs return q_kwargs
...@@ -289,13 +274,12 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel): ...@@ -289,13 +274,12 @@ class Superevent(CleanSaveModel, ModelToDictMixin, AutoIncrementModel):
@property @property
def superevent_id(self): def superevent_id(self):
id_prefix = self.DEFAULT_ID_PREFIX
letter_suffix = self.base_letter_suffix
if self.is_gw: if self.is_gw:
id_prefix = self.GW_ID_PREFIX id_prefix = self.GW_ID_PREFIX
letter_suffix = self.gw_letter_suffix if self.gw_letter_suffix else "" letter_suffix = self.gw_letter_suffix
elif self.alert_sent: else:
id_prefix = self.ALERT_ID_PREFIX id_prefix = self.DEFAULT_ID_PREFIX
letter_suffix = self.base_letter_suffix
return id_prefix + self.t_0_date.strftime(self.DATE_STR_FMT) + \ return id_prefix + self.t_0_date.strftime(self.DATE_STR_FMT) + \
letter_suffix letter_suffix
......
...@@ -38,8 +38,6 @@ def parse_superevent_id(name, toks, filter_prefix=None): ...@@ -38,8 +38,6 @@ def parse_superevent_id(name, toks, filter_prefix=None):
else: else:
fullQ &= Q(**{fp("gw_date_number"): letters_to_int(suffix)}) fullQ &= Q(**{fp("gw_date_number"): letters_to_int(suffix)})
else: else:
if prefix and prefix == Superevent.ALERT_ID_PREFIX:
fullQ &= Q(**{fp("alert_sent"): True})
if not suffix: if not suffix:
if not prefix: if not prefix:
...@@ -59,8 +57,8 @@ def parse_superevent_id(name, toks, filter_prefix=None): ...@@ -59,8 +57,8 @@ def parse_superevent_id(name, toks, filter_prefix=None):
# Construct an expression for date-based superevent ids # Construct an expression for date-based superevent ids
superevent_prefix = Optional(Or([CaselessLiteral(pref) for pref in superevent_prefix = Optional(Or([CaselessLiteral(pref) for pref in
Superevent.DEFAULT_ID_PREFIX, Superevent.ALERT_ID_PREFIX, Superevent.DEFAULT_ID_PREFIX, Superevent.GW_ID_PREFIX])
Superevent.GW_ID_PREFIX])).setResultsName('prefix') ).setResultsName('prefix')
superevent_date = Word(nums, exact=6).setResultsName('date') superevent_date = Word(nums, exact=6).setResultsName('date')
superevent_suffix = Optional(Word(alphas)).setResultsName('suffix') superevent_suffix = Optional(Word(alphas)).setResultsName('suffix')
superevent_expr = Combine(superevent_prefix + superevent_date + superevent_expr = Combine(superevent_prefix + superevent_date +
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment