function extract_standard_logs($course_id, $last_notification_time) { global $DB, $CFG; $course_registration = $this->get_registration($course_id); $global_config = get_config('block_notifications'); // use the block_notification_courses table value if the passed time is null if (is_null($last_notification_time)) { $last_notification_time = $course_registration->last_notification_time; } $events = ''; //$standard_names = SupportedEvents::getStandardNames(); foreach (SupportedEvents::getShortNames() as $block_instance_setting => $platform_event_name) { $eventname = preg_replace('/\\\\/', '_', $platform_event_name); $eventname = preg_replace('/^_/', '', $eventname); if ($global_config->{$eventname} == 1 and $course_registration->{$block_instance_setting} == 1) { $events .= "'" . addslashes($platform_event_name) . "',"; } } // remove the last comma if (empty($events)) { return false; } else { $events = rtrim($events, ','); $logs = $this->logger->get_events_select("courseid = {$course_id} and eventname in ({$events}) and timecreated > {$last_notification_time}", array(), '', 0, 0); return $logs; } }
function set_data($defaults) { $block_config = new Object(); $block_config->notify_by_email = file_get_submitted_draft_itemid('notify_by_email'); $block_config->notify_by_sms = file_get_submitted_draft_itemid('notify_by_sms'); $block_config->notify_by_rss = file_get_submitted_draft_itemid('notify_by_rss'); $block_config->rss_shortname_url_param = file_get_submitted_draft_itemid('rss_shortname_url_param'); $block_config->email_notification_preset = file_get_submitted_draft_itemid('email_notification_preset'); $block_config->sms_notification_preset = file_get_submitted_draft_itemid('sms_notification_preset'); foreach (\block_notifications\SupportedEvents::getShortNames() as $block_instance_setting => $platform_event_name) { $block_config->{$block_instance_setting} = file_get_submitted_draft_itemid($block_instance_setting); } unset($this->block->config->text); parent::set_data($defaults); $this->block->config = $block_config; }