Skip to content

Commit 12a8868

Browse files
committed
code cleanup
1 parent 3e49dd7 commit 12a8868

1 file changed

Lines changed: 65 additions & 61 deletions

File tree

Calendar/Calendar.py

Lines changed: 65 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
import calendar
22
import datetime
3+
# noinspection PyUnresolvedReferences
34
from clr import Convert
5+
# noinspection PyUnresolvedReferences
46
from System import DateTime
57

8+
global model, Data, q
9+
610
def get_events(dt):
711
return q.QuerySql("""
812
SELECT
@@ -20,7 +24,8 @@ def get_events(dt):
2024
ORDER BY MeetingDate, o.DivisionId
2125
""".format(dt))
2226

23-
def get_reservables(typ):
27+
def get_reservables():
28+
# noinspection SqlResolve
2429
return q.QuerySql("""
2530
SELECT ReservableId,
2631
ParentId,
@@ -32,17 +37,16 @@ def get_reservables(typ):
3237
IsCountable,
3338
Quantity
3439
FROM Reservable
35-
WHERE 1=1
40+
WHERE IsDeleted = 0
3641
-- AND ReservableTypeId = 1
37-
AND IsDeleted = 0
3842
AND IsEnabled = 1
3943
4044
ORDER BY ReservableTypeId, Name
4145
;
4246
""")
4347

4448

45-
def get_reservations(typ, dt):
49+
def get_reservations(dt):
4650
return q.QuerySql("""
4751
-- Room things
4852
SELECT
@@ -142,15 +146,15 @@ def generate_calendar_html(date):
142146

143147
html.append("<div class='nav-r'>")
144148
html.append("<strong>Month</strong>")
145-
html.append(" | <a href='?v=w&%s'>Week</a>" % (curr_link))
146-
html.append(" | <a href='?v=d&%s'>Day</a>" % (curr_link))
147-
html.append(" | <a href='?v=r&%s'>Reservables</a>" % (curr_link))
149+
html.append(" | <a href='?v=w&%s'>Week</a>" % curr_link)
150+
html.append(" | <a href='?v=d&%s'>Day</a>" % curr_link)
151+
html.append(" | <a href='?v=r&%s'>Reservables</a>" % curr_link)
148152
html.append("</div>")
149153
html.append("</div>")
150154

151155

152156
html.append("<table>")
153-
html.append("<tr>" + "".join("<th>%s</th>" % d for d in ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]) + "</tr>")
157+
html.append("<tr>" + "".join("<th>%s</th>" % dn for dn in ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]) + "</tr>")
154158

155159
for week in month_days:
156160
html.append("<tr>")
@@ -190,33 +194,33 @@ def generate_calendar_html(date):
190194
return "\n".join(html)
191195

192196

193-
def generate_calendar_vert_html(start_date, dayCount):
197+
def generate_calendar_vert_html(start_date, day_count):
194198
"""
195199
Generate an HTML week view calendar with overlap handling,
196200
horizontal hour/half-hour lines, scrollable, and auto-scroll to 8am.
197201
"""
198202
start_of_span = start_date
199-
if dayCount % 7 == 0:
203+
if day_count % 7 == 0:
200204
start_of_span = start_date - datetime.timedelta(days=start_date.weekday() + 1 if start_date.weekday() != 6 else 0)
201-
days = [start_of_span + datetime.timedelta(days=i) for i in range(dayCount)]
205+
days = [start_of_span + datetime.timedelta(days=i) for i in range(day_count)]
202206

203207
span_term = "Span"
204-
span_link = str(dayCount)
205-
if dayCount == 14:
208+
span_link = str(day_count)
209+
if day_count == 14:
206210
span_term = "Fortnight"
207-
elif dayCount == 7:
211+
elif day_count == 7:
208212
span_term = "Week"
209213
span_link = 'w'
210-
elif dayCount == 1:
214+
elif day_count == 1:
211215
span_term = "Day"
212216
span_link = 'd'
213217

214218
hour_height = 6 # vh per hour
215219
day_start = 0
216220
day_end = 24
217221

218-
prev_date = start_date - datetime.timedelta(days=dayCount)
219-
next_date = start_date + datetime.timedelta(days=dayCount)
222+
prev_date = start_date - datetime.timedelta(days=day_count)
223+
next_date = start_date + datetime.timedelta(days=day_count)
220224

221225
prev_link = "d=%d-%d-%d" % (prev_date.year, prev_date.month, prev_date.day)
222226
next_link = "d=%d-%d-%d" % (next_date.year, next_date.month, next_date.day)
@@ -253,17 +257,17 @@ def generate_calendar_vert_html(start_date, dayCount):
253257
html.append("</div>")
254258

255259
html.append("<div class='nav-r'>")
256-
html.append("<a href='?%s'>Month</a>" % (curr_link))
257-
if dayCount == 7:
260+
html.append("<a href='?%s'>Month</a>" % curr_link)
261+
if day_count == 7:
258262
html.append(" | <strong>Week</strong>")
259263
else:
260-
html.append(" | <a href='?v=w&%s'>Week</a>" % (curr_link))
261-
if dayCount == 1:
264+
html.append(" | <a href='?v=w&%s'>Week</a>" % curr_link)
265+
if day_count == 1:
262266
html.append(" | <strong>Day</strong>")
263267
else:
264-
html.append(" | <a href='?v=d&%s'>Day</a>" % (curr_link))
268+
html.append(" | <a href='?v=d&%s'>Day</a>" % curr_link)
265269

266-
html.append(" | <a href='?v=r&%s'>Reservables</a>" % (curr_link))
270+
html.append(" | <a href='?v=r&%s'>Reservables</a>" % curr_link)
267271

268272
html.append("</div>")
269273

@@ -309,7 +313,7 @@ def generate_calendar_vert_html(start_date, dayCount):
309313

310314
for ev in events:
311315
start_hour = 0 if ev.MeetingDate < day_c else ev.MeetingDate.Hour + ev.MeetingDate.Minute / 60.0
312-
end_hour = 24 if ev.MeetingEnd > tom_c else (ev.MeetingEnd.Hour + ev.MeetingEnd.Minute / 60.0) if ev.MeetingEnd else (start_hour)
316+
end_hour = 24 if ev.MeetingEnd > tom_c else (ev.MeetingEnd.Hour + ev.MeetingEnd.Minute / 60.0) if ev.MeetingEnd else start_hour
313317

314318
if start_hour < day_start: start_hour = day_start
315319
if end_hour > day_end: end_hour = day_end
@@ -350,8 +354,8 @@ def generate_calendar_vert_html(start_date, dayCount):
350354
return "\n".join(html)
351355

352356
def generate_room_gantt_html(date):
353-
reservables = get_reservables("r")
354-
reservations = get_reservations("r", date)
357+
reservables = get_reservables()
358+
reservations = get_reservations(date)
355359

356360
hour_width = 6 # vw per hour
357361
total_hours = 25
@@ -399,16 +403,16 @@ def time_to_vw(dt):
399403
html.append("<div class='nav-l'></div>")
400404

401405
html.append("<div class='nav-c'>")
402-
html.append("<a href='?v=r&%s'>&laquo; Previous</a> | " % (prev_link))
406+
html.append("<a href='?v=r&%s'>&laquo; Previous</a> | " % prev_link)
403407
html.append("<strong>%s %d, %d</strong>" % (calendar.month_name[date.month], date.day, date.year))
404-
html.append(" | <a href='?v=r&%s'>Next &raquo;</a>" % (next_link))
408+
html.append(" | <a href='?v=r&%s'>Next &raquo;</a>" % next_link)
405409
html.append("</div>")
406410

407411
html.append("<div class='nav-r'>")
408412

409-
html.append("<a href='?%s'>Month</a>" % (curr_link))
410-
html.append(" | <a href='?v=w&%s'>Week</a>" % (curr_link))
411-
html.append(" | <a href='?v=d&%s'>Day</a>" % (curr_link))
413+
html.append("<a href='?%s'>Month</a>" % curr_link)
414+
html.append(" | <a href='?v=w&%s'>Week</a>" % curr_link)
415+
html.append(" | <a href='?v=d&%s'>Day</a>" % curr_link)
412416
html.append(" | <strong>Reservables</strong>")
413417
html.append("</div>")
414418
html.append("</div>")
@@ -420,9 +424,9 @@ def time_to_vw(dt):
420424
html.append("<div class='gantt-wrapper'>")
421425

422426

423-
def assign_lanes(reservations):
427+
def assign_lanes(reses):
424428
lanes = []
425-
for res in reservations:
429+
for res in reses:
426430
placed = False
427431
for lane in lanes:
428432
if all(res.MeetingStart.AddMinutes(-res.SetupMinutes) >= r.MeetingEnd.AddMinutes(r.TeardownMinutes) or res.MeetingEnd.AddMinutes(res.TeardownMinutes) <= r.MeetingStart.AddMinutes(-r.SetupMinutes) for r in lane):
@@ -438,33 +442,33 @@ def assign_lanes(reservations):
438442
return lane_map, max(1, len(lanes))
439443

440444

441-
def reservable_has_reservations(rbl):
442-
if len(rbl._reservations) > 0:
445+
def reservable_has_reservations(rsbl):
446+
if len(rsbl._reservations) > 0:
443447
return True
444448

445-
for child in children.get(rbl.ReservableId, []):
449+
for child in children.get(rsbl.ReservableId, []):
446450
if reservable_has_reservations(child):
447451
return True
448452

449453
return False
450454

451455

452456
# Room rows and bars
453-
def render_row(rbl):
454-
if not reservable_has_reservations(rbl):
457+
def render_row(rsbl):
458+
if not reservable_has_reservations(rsbl):
455459
return
456460

457-
row_height = rbl._lanes[1] * 2
461+
row_height = rsbl._lanes[1] * 2
458462

459-
html.append("<div class='room-row' style='height:%dem'>" % (row_height))
460-
for res in rbl._reservations:
463+
html.append("<div class='room-row' style='height:%dem'>" % row_height)
464+
for res in rsbl._reservations:
461465
start = res.MeetingStart
462466
end = res.MeetingEnd
463467
setup_start = start.AddMinutes(-res.SetupMinutes)
464468
teardown_end = end.AddMinutes(res.TeardownMinutes)
465469

466-
left = time_to_vw(start)
467-
width = time_to_vw(end) - left
470+
l = time_to_vw(start)
471+
width = time_to_vw(end) - l
468472
setup_left = time_to_vw(setup_start)
469473
setup_width = time_to_vw(teardown_end) - setup_left
470474

@@ -473,30 +477,30 @@ def render_row(rbl):
473477
html.append("<a href='/Meeting/MeetingDetails/%s'>" % res.MeetingId)
474478

475479

476-
lane = rbl._lanes[0][res]
477-
top_offset = round(lane / (.01 * rbl._lanes[1]), 2)
478-
bot_offset = round(((rbl._lanes[1] - 1 - lane) / (.01 * rbl._lanes[1])), 2)
480+
lane = rsbl._lanes[0][res]
481+
top_offset = round(lane / (.01 * rsbl._lanes[1]), 2)
482+
bot_offset = round(((rsbl._lanes[1] - 1 - lane) / (.01 * rsbl._lanes[1])), 2)
479483

480484
if res.SetupMinutes > 0 or res.TeardownMinutes > 0:
481485
html.append("<div class='bar setup' style='left:%.2fvw; width:%.2fvw; background:%s; top:calc(%.2f%% + 1px); bottom:calc(%.2f%% + 1px);'></div>" % (
482486
setup_left, setup_width, color, top_offset, bot_offset
483487
))
484488

485489
html.append("<div class='bar' style='left:%.2fvw; width:%.2fvw; background:%s; top:calc(%.2f%% + 1px); bottom:calc(%.2f%% + 1px);' title=\"%s\">%s" % (
486-
left, width, color, top_offset, bot_offset, res.Name, res.Name
490+
l, width, color, top_offset, bot_offset, res.Name, res.Name
487491
))
488-
label = ""
492+
lbl = ""
489493
if res.Quantity > 0:
490-
label = "(%d) " % (res.Quantity)
494+
lbl = "(%d) " % res.Quantity
491495
if res.LeaderName is not None:
492-
label = "%s%s" % (label, res.LeaderName)
493-
if label != "":
494-
html.append("<small><br />%s</small>" % (label))
496+
lbl = "%s%s" % (lbl, res.LeaderName)
497+
if lbl != "":
498+
html.append("<small><br />%s</small>" % lbl)
495499
html.append("</div>")
496500
html.append("</a>")
497501
html.append("</div>")
498502

499-
for child in children.get(rbl.ReservableId, []):
503+
for child in children.get(rsbl.ReservableId, []):
500504
render_row(child)
501505

502506

@@ -507,14 +511,14 @@ def render_row(rbl):
507511
# Static room labels
508512
html.append("<div class='room-labels'>")
509513

510-
def render_labels(rbl, depth=0):
511-
if not reservable_has_reservations(rbl):
514+
def render_labels(rsbl, depth=0):
515+
if not reservable_has_reservations(rsbl):
512516
return
513517

514518
indent = "&nbsp;" * (depth * 4)
515-
height = rbl._lanes[1] * 2
516-
html.append("<div class='room-label' style='height:%dem;'>%s%s</div>" % (height, indent, rbl.Name))
517-
for child in children.get(rbl.ReservableId, []):
519+
height = rsbl._lanes[1] * 2
520+
html.append("<div class='room-label' style='height:%dem;'>%s%s</div>" % (height, indent, rsbl.Name))
521+
for child in children.get(rsbl.ReservableId, []):
518522
render_labels(child, depth + 1)
519523

520524

@@ -590,12 +594,12 @@ def render_labels(rbl, depth=0):
590594
vi = 1
591595

592596
if Data.v == 'r':
593-
print generate_room_gantt_html(d)
597+
print(generate_room_gantt_html(d))
594598

595599
elif vi > 0:
596-
print generate_calendar_vert_html(d, vi)
600+
print(generate_calendar_vert_html(d, vi))
597601

598602
else:
599-
print generate_calendar_html(d)
603+
print(generate_calendar_html(d))
600604

601605
#

0 commit comments

Comments
 (0)