|
@@ -32,6 +32,31 @@ class Group < ApplicationRecord
|
32
|
32
|
self.activities.where('start > ?', DateTime.now)
|
33
|
33
|
end
|
34
|
34
|
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+ def current_activities(reference = Time.zone.now)
|
|
43
|
+ currently_active = self.activities
|
|
44
|
+ .where('start < ?', reference)
|
|
45
|
+ .where('end > ?', reference)
|
|
46
|
+
|
|
47
|
+ previous = self.activities
|
|
48
|
+ .where('end < ?', reference)
|
|
49
|
+ .order(end: :desc)
|
|
50
|
+ .limit(3)
|
|
51
|
+
|
|
52
|
+ upcoming = self.activities
|
|
53
|
+ .where('start > ?', reference)
|
|
54
|
+ .where('start < ?', reference.days_since(2))
|
|
55
|
+ .order(start: :asc)
|
|
56
|
+
|
|
57
|
+ return [currently_active, previous, upcoming].flatten
|
|
58
|
+ end
|
|
59
|
+
|
35
|
60
|
|
36
|
61
|
def is_member?(person)
|
37
|
62
|
Member.exists?(
|