You are here

function oa_events_message_view in Open Atrium Events 7.2

Implements hook_message_view().

File

./oa_events.module, line 531
Code for the OA Events feature.

Code

function oa_events_message_view($entity, $view_mode, $langcode) {
  if ($view_mode == 'message_notify_email_body') {
    if (($items = field_get_items('message', $entity, 'field_oa_node_ref')) && ($node = node_load($items[0]['target_id'])) && $node->type == 'oa_event') {

      // We communicate to the ical alters that we have an attendee.
      $display_id = 'oa_calendar_ical';
      if (($view = views_get_view('oa_fullcalendar')) && $view
        ->access($display_id)) {
        $account = user_load($entity->uid);
        $attendee =& drupal_static('oa_event_message_attendee');
        $attendee = $account->mail;

        // Turn off live_preview to prevent <pre> tags and check_plain and
        // various other side effects of view previews
        $view->live_preview = FALSE;
        $entity->email_attachments[] = array(
          'filecontent' => $view
            ->preview($display_id, array(
            $node->nid,
          )),
          'filename' => 'event-' . $node->nid . '.ics',
          'filemime' => 'text/calendar',
        );
      }
      $attendee = FALSE;
    }
  }
}