Skip to content

Commit 28da12a

Browse files
committed
Only get queue pos if in queue
1 parent 9ece135 commit 28da12a

File tree

4 files changed

+21
-13
lines changed

4 files changed

+21
-13
lines changed

conditional/blueprints/dashboard.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,12 @@ def display_dashboard():
6464
MemberHouseMeetingAttendance.query.filter(
6565
MemberHouseMeetingAttendance.uid == member.uid)]
6666
spring['hm_missed'] = len([h for h in h_meetings if h[1] == "Absent"])
67-
spring['status'] = SpringEval.query.filter(SpringEval.uid == member.uid
68-
and SpringEval.active).first().status
67+
eval_entry = SpringEval.query.filter(SpringEval.uid == member.uid
68+
and SpringEval.active).first()
69+
if eval_entry is not None:
70+
spring['status'] = eval_entry.status
71+
else:
72+
spring['status'] = None
6973

7074
data['spring'] = spring
7175

@@ -74,10 +78,7 @@ def display_dashboard():
7478
housing = dict()
7579
housing['points'] = member.housingPoints
7680
housing['room'] = member.roomNumber
77-
if housing['room'] is None:
78-
housing['queue_pos'] = "%s / %s" % get_queue_position(member.uid)
79-
else:
80-
housing['queue_pos'] = "N/A"
81+
housing['queue_pos'] = get_queue_position(member.uid)
8182
else:
8283
housing = None
8384

conditional/blueprints/spring_evals.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import uuid
2-
import structlog
32
import datetime
3+
import structlog
44

55
from flask import Blueprint, request
66

conditional/templates/dashboard.html

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ <h3 class="panel-title">Freshman Evaluations
108108
</div>
109109
</div>
110110
{% endif %}
111-
111+
{% if spring['status'] != None %}
112112
<div class="panel panel-default">
113113
<div class="panel-heading">
114114
<h3 class="panel-title">Membership Evaluations
@@ -157,7 +157,7 @@ <h3 class="panel-title">Membership Evaluations
157157
</table>
158158
</div>
159159
</div>
160-
160+
{% endif %}
161161
{% if conditionals_len != 0 %}
162162
<div class="panel panel-default">
163163
<div class="panel-heading">
@@ -266,14 +266,21 @@ <h3 class="panel-title">Housing Status</h3>
266266
<td class="title">Housing Points</td>
267267
<td><span class="pull-right">{{housing['points']}}</span></td>
268268
</tr>
269-
{% if active %}
269+
270+
{% if housing['room'] != None %}
270271
<tr>
271272
<td class="title">Room Number</td>
272273
<td><span class="pull-right">{{housing['room']}}</span></td>
273274
</tr>
275+
{% endif %}
276+
{% if housing['queue_pos'][0] != None and housing['room'] == None %}
274277
<tr>
275278
<td class="title">Housing Queue Position</td>
276-
<td><span class="pull-right">{{housing['queue_pos']}}</span></td>
279+
<td>
280+
<span class="pull-right">
281+
{{housing['queue_pos'][0]}} / {{housing['queue_pos'][1]}}
282+
</span>
283+
</td>
277284
</tr>
278285
{% endif %}
279286
</tbody>

conditional/util/housing.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,6 @@ def get_queue_position(username):
4343
try:
4444
index = next(index for (index, d) in enumerate(get_housing_queue())
4545
if d["uid"] == username) + 1
46-
except KeyError:
47-
index = 0
46+
except (KeyError, StopIteration):
47+
index = None
4848
return (index, len(queue))

0 commit comments

Comments
 (0)