sentry_io-1.0.3/sentry_io.module
sentry_io.module
<?php
/**
* @file
* Contains sentry_io.module.
*/
use Drupal\sentry_io\Form\SentryConfigForm;
/**
* Implements hook_page_attachments().
*/
function sentry_io_page_attachments(array &$page) {
$config = \Drupal::config('sentry_io.settings');
if ($config->get('javascript_error_handler')) {
// Other modules can attach Sentry browser client options to the page.
if (!isset($page['#attached']['drupalSettings']['sentry_io']['options'])) {
$page['#attached']['drupalSettings']['sentry_io']['options'] = new \stdClass();
}
$page['#attached']['drupalSettings']['sentry_io']['options']->dsn = empty($_SERVER['SENTRY_DSN']) ? $config->get('client_key') : $_SERVER['SENTRY_DSN'];
$page['#attached']['drupalSettings']['sentry_io']['options']->environment = empty($_SERVER['SENTRY_ENVIRONMENT']) ? ($config->get('environment') ?: \Drupal::getContainer()->getParameter('kernel.environment')) : $_SERVER['SENTRY_ENVIRONMENT'];
if (!empty($_SERVER['SENTRY_RELEASE'])) {
$page['#attached']['drupalSettings']['sentry_io']['options']->release = $_SERVER['SENTRY_RELEASE'];
}
elseif ($release = $config->get('release')) {
$page['#attached']['drupalSettings']['sentry_io']['options']->release = $release;
}
$page['#attached']['library'][] = 'sentry_io/sentry_io';
}
}
/**
* Implements hook_form_system_logging_settings_alter().
*/
function sentry_io_form_system_logging_settings_alter(array &$form) {
SentryConfigForm::buildForm($form);
}
