File tree 2 files changed +37
-0
lines changed
2 files changed +37
-0
lines changed Original file line number Diff line number Diff line change
1
+ import datetime
2
+ from typing import Optional
3
+
4
+ from django import template
5
+
6
+ from ..models import DeadlineRuleDeviation
7
+
8
+
9
+ register = template .Library ()
10
+
11
+
12
+ @register .simple_tag
13
+ def new_deviation_minutes (
14
+ deviation : DeadlineRuleDeviation ,
15
+ minutes : Optional [int ],
16
+ date : Optional [datetime .datetime ]
17
+ ) -> int :
18
+ """
19
+ Get the extra minutes for a deadline deviation after being overridden.
20
+ """
21
+ if date :
22
+ return deviation .exercise .delta_in_minutes_from_closing_to_date (date )
23
+ return minutes
24
+
25
+
26
+ @register .simple_tag
27
+ def new_deviation_date (
28
+ deviation : DeadlineRuleDeviation ,
29
+ minutes : Optional [int ],
30
+ date : Optional [datetime .datetime ]
31
+ ) -> datetime .datetime :
32
+ """
33
+ Get the new deadline for a deadline deviation after being overridden.
34
+ """
35
+ if date :
36
+ return date
37
+ return deviation .exercise .course_module .closing_time + datetime .timedelta (minutes = minutes )
You can’t perform that action at this time.
0 commit comments