I got a lot of requests for a calendar report that only prints the info needed for the Facilities team for setup. This report was contracted by Calvary Church of Santa Ana in Santa Ana, CA. And they were thrilled to let me share it here! Setup: You need two yes/no questions for each room. 1. A lockup Question. The default is "Room Unlock + Relock Needed" 2. A Setup Question. The default is "Room Setup Needed" You can change these default questions at the top of the report, but you do need both of them for the report to work. If either question is marked yes then that event will be displayed on the report. Type any additional instructions/notes that facilities team needs in the "Notes" section for that room when you are adding the event, and those notes will be displayed if the setup question is marked yes. Thanks again to Robert Carter at Calvary Church of Santa Ana for making this available to churches all over the world!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
<!-- Report Configuration ========================== -->
{% comment %}You need two questions on each room for this report to work properly. One question for Lockup/Lock,{% endcomment %}
{% comment %}and one question for Room Setup. Set the exact text of those questions below.{% endcomment %}
{% assign lockup_question = "Room Unlock + Relock Needed" %}
{% assign setup_question = "Room Setup Needed" %}
{% comment %}This setting determins if each event should be on it's own page or if you just want all events to print in as little space as possible.{% endcomment %}
{% assign new_page_per_event = false %}
<!-- @end Report Configuration ========================== -->
<!DOCTYPE html>
<html>
<head>
<title>{{ report.organization_name }} Facility Sheet</title>
<link rel="stylesheet" type="text/css" media="all" href="{{ report.stylesheet_href }}">
<style>
#logo {
float: right;
width: 100px;
height: auto;
}
#report-title {
float: right;
}
#org-name {
float: left;
}
</style>
</head>
<body>
<div class="report-wrapper">
{% if report.org_twenty_four_hour_time? %}
{% assign time_format = "%H:%M" %}
{% else %}
{% assign time_format = "%-I:%M%P" %}
{% endif %}
{% if report.org_day_month_dates? %}
{% assign date_format = "%d/%m/%Y" %}
{% else %}
{% assign date_format = "%m/%d/%Y" %}
{% endif %}
{% for day in days %}
{% capture day_name %}{{ day.date | date: '%A, %B %-d, %Y' }}{% endcapture %}
{% if day.instances.size != 0 %}
{% assign multiple_events = false %}
{% if day.instances.size > 1 %}
{% assign multiple_events = true %}
{% endif %}
{% for instance in day.instances %}
{% if instance.reservation.room_requests.size > 0 %}
{% assign room_setup_needed = false %}
{% assign room_lock_needed = false %}
{% for request in instance.reservation.complex_room_requests %}
{% if request.answers.size > 0 %}
{% for answer in request.answers %}
{% if answer.question == setup_question and answer.answer == "Yes" %}
{% assign room_setup_needed = true %}
{% endif %}
{% if answer.question == lock_question and answer.answer == "Yes" %}
{% assign room_lock_needed = true %}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}
{% if room_setup_needed or room_lock_needed %}
<div class="level-1">
<h3 id="report-title">Facilities Team - Setup Sheet</h3><br>
<img src="{{ report.organization_logo_url }}" width="100" id="logo"><br>
<div class="level-2 block">
<h2>{{ day_name }}</h2>
<ul>
<li class="gutter-bottom-large gutter-top-medium">
{% capture starts_at_day_name %}{{ instance.starts_at | date: '%A, %B %-d, %Y' }}{% endcapture %}
{% capture ends_at_day_name %}{{ instance.ends_at | date: '%A, %B %-d, %Y' }}{% endcapture %}
<!-- ===== Date Heading ========================== -->
<h3 class="header-medium gutter-bottom-small">
{% if instance.reservation.all_day_event? %}
All-day
{% elsif starts_at_day_name == day_name %}
{% if ends_at_day_name == day_name %}
{{ instance.starts_at | date: time_format | downcase }} - {{ instance.ends_at | date: time_format | downcase }}
{% else %}
Today, {{ instance.starts_at | date: time_format | downcase }} - {{ instance.ends_at | date: date_format }} ({{ instance.ends_at | date: time_format | downcase }})
{% endif %}
{% else %}
{% if ends_at_day_name == day_name %}
{{ instance.starts_at | date: date_format }} ({{ instance.starts_at | date: time_format | downcase }}) - Today, {{ instance.ends_at | date: time_format | downcase }}
{% else %}
{{ instance.starts_at | date: date_format }} ({{ instance.starts_at | date: time_format | downcase }}) - {{ instance.ends_at | date: date_format }} ({{ instance.ends_at | date: time_format | downcase }})
{% endif %}
{% endif %}
{% if instance.event.name != 0 %}
{{ instance.event.name }} <span
class="status {{ instance.event.approval_status }}">{{ instance.event.approval_status }}</span>
{% endif %}
</h3>
<!-- @end Date Heading ========================== -->
<!-- ===== Day Meta Info ========================== -->
<ul class="container-naked gutter-bottom-medium">
{% if instance.event.name != blank %}
{% if instance.event.owner %}
<li>
<strong>Owner:</strong> {{ instance.event.owner.name }}
</li>
{% endif %}
{% if instance.event.notes != blank %}
<li><strong>Notes:</strong></li>
<li style="white-space: pre-wrap;">{{ instance.event.notes }}</li>
{% endif %}
{% if instance.event.summary != blank %}
<li><strong>Summary:</strong></li>
<li style="white-space: pre-wrap;">
<em>{{ instance.event.summary }}</em></li>
{% endif %}
{% endif %}
{% if instance.reservation.location != blank %}
<li>
<strong>Location:</strong> {{ instance.reservation.location }}
</li>
{% endif %}
</ul>
<!-- @end Day Meta Info ========================== -->
<!-- ===== Event Schedule ========================== -->
{% unless instance.reservation.all_day_event? %}
<div class="level-3">
<h3 class="bg-soft header-medium gutter-bottom-small">
Event Schedule</h3>
{% if instance.event_times.size > 0 %}
<ul>
{% for event_time in instance.event_times %}
<li class="divider-soft pad-left item">
<strong>{{ event_time.starts_at | date: time_format | downcase }}
-{{ event_time.ends_at | date: time_format | downcase }}
:</strong> {{ event_time.name }}
</li>
{% endfor %}
</ul>
{% else %}
<p class="pad-left soft">(No event times
defined.)</p>
{% endif %}
</div>
{% endunless %}
<!-- @end Event Schedule ========================== -->
<!-- ===== Event Rooms ========================== -->
<div class="level-3">
<h3 class="bg-soft header-medium gutter-bottom-small">
Rooms</h3>
<ul>
{% for request in instance.reservation.simple_room_requests %}
<li class="gutter-bottom-small pad-left item item--inline">
<div class="gutter-bottom-small">
<span class="header-small txt-underline item-title">{{ request.room.name }}</span>
<span class="status {{ request.approval_status }}">{{ request.approval_status }}</span>
</div>
</li>
{% endfor %}
{% for request in instance.reservation.complex_room_requests %}
<li class="gutter-bottom-small pad-left item">
<div class="gutter-bottom-small">
<span class="header-small txt-underline item-title">{{ request.room.name }}</span>
<span class="status {{ request.approval_status }}">{{ request.approval_status }}</span>
</div>
<div class="level-3">
{% if request.room_setup %}
<div>
<strong>Setup:</strong> {{ request.room_setup.name }}
{% if request.room_setup.description != blank %}
— {{ request.room_setup.description }}
{% endif %}
</div>
{% endif %}
{% if request.answers.size > 0 %}
{% assign no_answer = false %}
{% for answer in request.answers %}
{% if answer.section_header? %}
{% if no_answer %}
<p class="question-description">None</p>
{% endif %}
<div>
<strong>{{ answer.label }}:</strong>
<p class="question-description">{{ answer.description }}</p>
</div>
{% assign no_answer = true %}
{% else %}
{% unless answer.answer == "No" or answer.answer == "(Unanswered)" %}
<div class="divider-soft">
<strong>{{ answer.question }}</strong>
— {{ answer.answer }}
</div>
{% assign no_answer = false %}
{% endunless %}
{% endif %}
{% endfor %}
{% endif %}
{% if request.notes != blank %}
<div>
<strong>Additional
notes:</strong> {{ request.notes }}
</div>
{% endif %}
<!-- ===== Resources for Rooms ========================== -->
{% if request.resource_requests.size > 0 %}
<h4 class="bg-soft header-medium gutter-bottom-small">
Resources for this room</h4>
<div class="level-4">
<ul>
{% for resource_request in request.simple_resource_requests %}
<li class="sub-item sub-item--inline gutter-bottom-small">
<h4 class="header-small">
<span class="txt-underline sub-item-title">{% if resource_request.quantity > 1 %}{{ resource_request.quantity }} {% endif %} {{ resource_request.resource.name }}</span>
<span class="status {{ resource_request.approval_status }}">{{ resource_request.approval_status }}</span>
</h4>
</li>
{% endfor %}
{% for resource_request in request.complex_resource_requests %}
<li class="sub-item">
<h4 class="header-small">
<span class="txt-underline sub-item-title">{% if resource_request.quantity > 1 %}{{ resource_request.quantity }} {% endif %} {{ resource_request.resource.name }}</span>
<span class="status {{ resource_request.approval_status }}">{{ resource_request.approval_status }}</span>
</h4>
{% if resource_request.notes != blank %}
<div>
<strong>Additional
notes:</strong> {{ resource_request.notes }}
</div>
{% endif %}
{% if resource_request.answers.size > 0 %}
<ul class="gutter-bottom-medium gutter-top-small pad-left">
{% for answer in resource_request.answers %}
{% if answer.section_header? %}
<li>
<strong>{{ answer.label }}</strong>
</li>
<p class="question-description">{{ answer.description }}</p>
{% else %}
<li class="divider-soft">
<strong>{{ answer.question }}</strong>
— {{ answer.answer }}
<p class="question-description">{{ answer.description }}</p>
</li>
{% endif %}
{% endfor %}
</ul>
{% endif %}
{% endfor %}
</li>
</ul>
</div>
{% endif %}
<!-- @end Resources for Rooms ========================== -->
</div>
</li>
{% endfor %}
</ul>
</div>
<!-- @end Event Rooms ========================== -->
<!-- ===== Event Resources ========================== -->
{% if instance.reservation.resource_requests.size > 0 %}
<div class="level-3">
<h3 class="txt-left bg-soft header-medium gutter-bottom-small">
Resources</h3>
<ul>
{% for request in instance.reservation.simple_resource_requests %}
<li class="gutter-bottom-small pad-left item item--inline">
<span class="header-small txt-underline">{{ request.quantity }} {{ request.room.name }}</span>
<span class="status {{ request.approval_status }}">{{ request.approval_status }}</span>
</li>
{% endfor %}
{% for request in instance.reservation.complex_resource_requests %}
<li class="gutter-bottom-small pad-left item">
<span class="header-small txt-underline">{{ request.quantity }} {{ request.room.name }}</span>
<span class="status {{ request.approval_status }}">{{ request.approval_status }}</span>
{% if request.notes != blank %}
<div>
<strong>Additional
notes:</strong> {{ request.notes }}
</div>
{% endif %}
<div class="gutter-bottom-small level-3">
{% for answer in request.answers %}
{% if answer.section_header? %}
<strong>{{ answer.label }}</strong>
<br/>
<p class="question-description">{{ answer.description }}</p>
{% else %}
<div class="divider-soft">
<strong>{{ answer.question }}
:</strong>
— {{ answer.answer }}
<p class="question-description">{{ answer.description }}</p>
</div>
{% endif %}
{% endfor %}
</div>
</li>
{% endfor %}
</ul>
</div>
{% endif %}
<!-- @end Event Resources ========================== -->
</li>
</ul>
</div>
</div>
{% if multiple_events and new_page_per_event %}
<p style="page-break-before: always;"> </p>
{% endif %}
{% else %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}
</div>
</body>
</html>