Skip to content

Commit b2cc1d0

Browse files
committed
[spalenque] - #13191 * add checkbox to send email in rsvp report
1 parent e523177 commit b2cc1d0

3 files changed

Lines changed: 31 additions & 7 deletions

File tree

summit/code/interfaces/restfull_api/SummitAppReportsApi.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -415,8 +415,8 @@ public function getRsvpReport(SS_HTTPRequest $request){
415415
try
416416
{
417417
$query_string = $request->getVars();
418-
$page = (isset($query_string['page'])) ? Convert::raw2sql($query_string['page']) : '';
419-
$page_size = (isset($query_string['items'])) ? Convert::raw2sql($query_string['items']) : '';
418+
$page = 1;//(isset($query_string['page'])) ? Convert::raw2sql($query_string['page']) : '';
419+
$page_size = PHP_INT_MAX;//(isset($query_string['items'])) ? Convert::raw2sql($query_string['items']) : '';
420420
$search_term = (isset($query_string['term'])) ? Convert::raw2sql($query_string['term']) : '';
421421
$summit_id = intval($request->param('SUMMIT_ID'));
422422
$summit = $this->summit_repository->getById($summit_id);
@@ -454,7 +454,8 @@ public function getRsvpReport(SS_HTTPRequest $request){
454454
'attendee' => ['id' => $rsvp->SubmittedBy()->ID, 'emailed' => $emailed, 'email' => $email],
455455
'date' => $rsvp->LastEdited,
456456
'emails' => $emails,
457-
'rsvp' => $rsvp_array_template
457+
'rsvp' => $rsvp_array_template,
458+
'send_email' => !$emailed
458459
)
459460
;
460461
foreach ($rsvp->Answers() as $answer) {

summit/css/summit-admin-reports.css

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,4 +65,10 @@ th .fa {
6565

6666
.rsvp-table .email-popover {
6767
cursor: pointer;
68+
}
69+
70+
.rsvp-table .send_toggle {
71+
bottom: -3px;
72+
position: relative;
73+
margin-left: 10px;
6874
}

summit/ui/source/js/admin/reports/reports-admin-rsvp-report.tag

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@
2323
<th>Date</th>
2424
<th each={ header in headers }>{ header }</th>
2525
<th style="width:15%">Emails Sent</th>
26+
<th>
27+
Send To
28+
<input type="checkbox" class="send_toggle" onclick={ toggleAllEmail } />
29+
</th>
2630
</tr>
2731
</thead>
2832
<tbody>
@@ -36,13 +40,17 @@
3640
* { email.subject }
3741
</div>
3842
</td>
43+
<td class="center_text">
44+
<input type="checkbox" class="send-to" checked={ rsvp.send_email } onclick={ toggleEmail }/>
45+
</td>
3946
</tr>
4047
</tbody>
4148
</table>
4249
</div>
43-
<nav>
50+
51+
<!--<nav>
4452
<ul id="report-pager" class="pagination"></ul>
45-
</nav>
53+
</nav>-->
4654

4755
<script>
4856
this.dispatcher = opts.dispatcher;
@@ -66,6 +74,15 @@
6674
self.getReport(1);
6775
}
6876

77+
toggleAllEmail(ev) {
78+
var checked = ev.target.checked;
79+
$('.send-to').attr('checked',checked);
80+
}
81+
82+
toggleEmail(ev) {
83+
self.rsvps[ev.item.i].send_email = ev.target.checked;
84+
}
85+
6986
getReport(page) {
7087
$('body').ajax_loader();
7188
var term = $('#search-term').val();
@@ -120,9 +137,9 @@
120137
self.dispatcher.on(self.dispatcher.OPEN_EMAIL_MODAL_RSVP_REPORT,function() {
121138
var emails = '';
122139
if (self.rsvps[0].rsvp.hasOwnProperty('Email')){
123-
emails = self.rsvps.filter(a => !a.attendee.emailed && a.rsvp.Email).map(r => r.rsvp.Email).join(',');
140+
emails = self.rsvps.filter(a => a.send_email && a.rsvp.Email).map(r => r.rsvp.Email).join(',');
124141
} else {
125-
emails = self.rsvps.filter(a => !a.attendee.emailed && a.attendee.email).map(r => r.attendee.email).join(',');
142+
emails = self.rsvps.filter(a => a.send_email && a.attendee.email).map(r => r.attendee.email).join(',');
126143
}
127144

128145
$('#email-from').val('');

0 commit comments

Comments
 (0)