diff --git a/rowers/management/commands/processalerts.py b/rowers/management/commands/processalerts.py index 6c0034c0..08e39bcc 100644 --- a/rowers/management/commands/processalerts.py +++ b/rowers/management/commands/processalerts.py @@ -44,24 +44,7 @@ class Command(BaseCommand): stats = alerts.alert_get_stats(alert) # explanatorytexts - if alert.measured.condition == 'between': - description = 'This alert measures strokes where {metric} is between {value1} and {value2}.'.format( - metric = alert.measured.metric, - value1 = alert.measured.value1, - value2 = alert.measured.value2, - ) - elif alert.measured.condition == '<': - description = 'This alert measures strokes where {metric} is smaller than {value1}.'.format( - metric = alert.measured.metric, - value1 = alert.measured.value1, - ) - else: - description = 'This alert measures strokes where {metric} is larger than {value1}.'.format( - metric = alert.measured.metric, - value1 = alert.measured.value1, - ) - - othertexts = [description] + othertexts = [alert.description()] # send email job = myqueue(queue,handle_send_email_alert, diff --git a/rowers/models.py b/rowers/models.py index 4c26ccd7..ec2f772e 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -1072,9 +1072,10 @@ class Alert(models.Model): def __str__(self): + metricdict = {key:value for (key,value) in parchoicesy1} stri = u'Alert {name} on {metric} for {workouttype} - running on {first_name} every {period} days'.format( name = self.name, - metric = self.measured.metric, + metric = metricdict[self.measured.metric], workouttype = self.workouttype, first_name = self.rower.user.first_name, period = self.period, @@ -1082,6 +1083,29 @@ class Alert(models.Model): return stri + def description(self): + metricdict = {key:value for (key,value) in parchoicesy1} + + if self.measured.condition == 'between': + description = 'This alert measures strokes where {metric} is between {value1} and {value2}.'.format( + metric = metricdict[self.measured.metric], + value1 = self.measured.value1, + value2 = self.measured.value2, + ) + elif self.measured.condition == '<': + description = 'This alert measures strokes where {metric} is smaller than {value1}.'.format( + metric = metricdict[self.measured.metric], + value1 = self.measured.value1, + ) + else: + description = 'This alert measures strokes where {metric} is larger than {value1}.'.format( + metric = metricdict[self.measured.metric], + value1 = self.measured.value1, + ) + + return description + + class AlertEditForm(ModelForm): class Meta: model = Alert diff --git a/rowers/templates/alert_stats.html b/rowers/templates/alert_stats.html index 713716f9..fb950332 100644 --- a/rowers/templates/alert_stats.html +++ b/rowers/templates/alert_stats.html @@ -14,9 +14,10 @@
{{ alert }}
+{{ alert.description }}
This is a page under construction. Currently with minimal information