11
11
from django .core .urlresolvers import reverse
12
12
13
13
def tonight (request , everyone = True ):
14
+ """
15
+ Renders a list of ``Event`` instances, which are selected mainly based on
16
+ two factors:
17
+
18
+ The ``everyone`` parameter:
19
+ If this is set to False, then we filter down the event list to be only
20
+ those events that were created by or attended by one of the people who
21
+ the user follows.
22
+
23
+ The user's authentication:
24
+ If the user is authenticated, the user's events are separated from the
25
+ other events.
26
+ """
14
27
events = Event .objects .today ().filter (latest = True )
15
28
if request .user .is_authenticated ():
16
29
my_events = events .filter (creator = request .user ) | events .filter (
17
30
attendance__user = request .user )
18
31
events = events .exclude (creator = request .user ).exclude (
19
32
attendance__user = request .user )
20
- following = request .user .following_set .all ().values_list ('to_user' ,
33
+ following = request .user .following_set .all ().values_list ('to_user' ,
21
34
flat = True )
22
35
else :
23
36
my_events = Event .objects .none ()
24
37
following = None
38
+ if not everyone :
39
+ events = events .filter (creator__in = following ) | events .filter (
40
+ attendance__user__in = following )
25
41
events = events .order_by ('-start_date' , '-creation_date' ).distinct ()
26
42
context = {
27
43
'events' : events ,
@@ -32,14 +48,23 @@ def tonight(request, everyone=True):
32
48
return render_to_response (
33
49
'events/tonight.html' ,
34
50
context ,
35
- context_instance = RequestContext (request ),
51
+ context_instance = RequestContext (request )
36
52
)
37
53
38
54
def archive (request , everyone = True ):
55
+ """
56
+ Renders a list of ``Event`` instances, which are selected mainly based on
57
+ one parameter:
58
+
59
+ ``everyone``:
60
+ If this is set to False, then we filter down the event list to be only
61
+ those events that were created by or attended by one of the people who
62
+ the user follows.
63
+ """
39
64
events = Event .objects .filter (latest = True ) | Event .objects .filter (
40
65
attendance__user__isnull = False )
41
66
if request .user .is_authenticated ():
42
- following = list (request .user .following_set .all ().values_list ('to_user' ,
67
+ following = list (request .user .following_set .all ().values_list ('to_user' ,
43
68
flat = True ))
44
69
else :
45
70
following = None
@@ -55,7 +80,7 @@ def archive(request, everyone=True):
55
80
return render_to_response (
56
81
'events/archive.html' ,
57
82
context ,
58
- context_instance = RequestContext (request ),
83
+ context_instance = RequestContext (request )
59
84
)
60
85
61
86
def event (request , id ):
0 commit comments