public function afterSaveCommit(CakeEvent $cakeEvent, Event $event, ArrayObject $options)
 {
     if (!empty($event->admin_status_override)) {
         return;
     }
     if ($event->isNew() && !empty($event->parent_event_id)) {
         //This is an instantiation of a recurring event, so no further
         //notifications necessary
         return;
     }
     if ($event->status == $event->getOriginal('status') && !$event->isNew()) {
         //No status change, so no further notifications
         return;
     }
     if (empty($event->club) && !empty($event->club_id)) {
         //All notification letters refer to event's Club name,
         //so ensure that club data is available
         $event->club = $this->Clubs->get($event->club_id);
     }
     if ($event->status == 'Pending') {
         $data = ['settings' => ['to' => TableRegistry::get('Users')->roleEmails(['admin', 'student_admin']), 'subject' => "Club Event Submitted - {$event->title}", 'template' => 'Admin/event_submitted', 'emailFormat' => 'both'], 'vars' => ['modified' => $event->getOriginal('status') == 'Modifications Requested', 'event' => $event]];
         QueueBYUEmailTask::createJob($data);
     } elseif ($event->status == 'Advisor Pending') {
         $this->Clubs->notifyAdvisor($event->club_id, 'Club Event Submitted', 'Advisor/event_submitted', compact('event'));
     } elseif ($event->status == 'Modifications Requested') {
         $this->Clubs->notifyPresident($event->club_id, 'Modifications requested for BYU Club Event', 'Officer/event_modifications_requested', compact('event'));
     } elseif ($event->status == 'Approved') {
         //TODO: notfiy advisor AND president
         $this->instantiateRecurrences($event);
     }
 }