Commit 857db0f4 authored by Alexander Hass's avatar Alexander Hass
Browse files

Issue #2934105 by hass: Use Drupal::messenger()

parent 06b44611
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -17,7 +17,8 @@ function google_analytics_install() {
  $role->grantPermission('opt-in or out of google analytics tracking');
  $success = $role->save();
  if ($success) {
    drupal_set_message(t('Module %module granted %permission permission to authenticated users.', ['%module' => 'Google Analytics', '%permission' => t('Opt-in or out of tracking')]), 'status');
    $messenger = \Drupal::messenger();
    $messenger->addStatus(t('Module %module granted %permission permission to authenticated users.', ['%module' => 'Google Analytics', '%permission' => t('Opt-in or out of tracking')]), 'status');
  }
}

+1 −1
Original line number Diff line number Diff line
@@ -142,7 +142,7 @@ function google_analytics_page_attachments(array &$page) {
        'error' => t('Error message'),
      ];

      foreach (drupal_get_messages(NULL, FALSE) as $type => $messages) {
      foreach (\Drupal::messenger()->all(NULL, FALSE) as $type => $messages) {
        // Track only the selected message types.
        if (in_array($type, $message_types)) {
          foreach ($messages as $message) {
+2 −2
Original line number Diff line number Diff line
@@ -48,7 +48,7 @@ class GoogleAnalyticsStatusMessagesTest extends WebTestBase {
    $this->assertRaw('ga("send", "event", "Messages", "Error message", "Password field is required.");', '[testGoogleAnalyticsStatusMessages]: Event message "Password field is required." is shown.');

    // Testing this drupal_set_message() requires an extra test module.
    $this->drupalGet('google-analytics-test/drupal-set-message');
    $this->drupalGet('google-analytics-test/drupal-messenger-add-message');
    $this->assertNoRaw('ga("send", "event", "Messages", "Status message", "Example status message.");', '[testGoogleAnalyticsStatusMessages]: Example status message is not enabled for tracking.');
    $this->assertNoRaw('ga("send", "event", "Messages", "Warning message", "Example warning message.");', '[testGoogleAnalyticsStatusMessages]: Example warning message is not enabled for tracking.');
    $this->assertRaw('ga("send", "event", "Messages", "Error message", "Example error message.");', '[testGoogleAnalyticsStatusMessages]: Example error message is shown.');
@@ -57,7 +57,7 @@ class GoogleAnalyticsStatusMessagesTest extends WebTestBase {
    // Enable logging of status, warnings and errors.
    $this->config('google_analytics.settings')->set('track.messages', ['status' => 'status', 'warning' => 'warning', 'error' => 'error'])->save();

    $this->drupalGet('google-analytics-test/drupal-set-message');
    $this->drupalGet('google-analytics-test/drupal-messenger-add-message');
    $this->assertRaw('ga("send", "event", "Messages", "Status message", "Example status message.");', '[testGoogleAnalyticsStatusMessages]: Example status message is enabled for tracking.');
    $this->assertRaw('ga("send", "event", "Messages", "Warning message", "Example warning message.");', '[testGoogleAnalyticsStatusMessages]: Example warning message is enabled for tracking.');
    $this->assertRaw('ga("send", "event", "Messages", "Error message", "Example error message.");', '[testGoogleAnalyticsStatusMessages]: Example error message is shown.');
+4 −4
Original line number Diff line number Diff line
google_analytics_test.drupal_set_message:
  path: '/google-analytics-test/drupal-set-message'
google_analytics_test.drupal_messenger_add_message:
  path: '/google-analytics-test/drupal-messenger-add-message'
  defaults:
    _title: 'Set messages with drupal_set_message()'
    _controller: '\Drupal\google_analytics_test\Controller\GoogleAnalyticsTestController::drupalSetMessageTest'
    _title: 'Set messages with Drupal::messenger()'
    _controller: '\Drupal\google_analytics_test\Controller\GoogleAnalyticsTestController::drupalAddMessageTest'
  requirements:
    _access: 'TRUE'
+6 −5
Original line number Diff line number Diff line
@@ -15,12 +15,13 @@ class GoogleAnalyticsTestController extends ControllerBase {
   * @return array
   *   Empty array, we just test the setting of messages.
   */
  public function drupalSetMessageTest() {
  public function drupalAddMessageTest() {
    // Set some messages.
    drupal_set_message('Example status message.', 'status');
    drupal_set_message('Example warning message.', 'warning');
    drupal_set_message('Example error message.', 'error');
    drupal_set_message('Example error <em>message</em> with html tags and <a href="https://example.com/">link</a>.', 'error');
    $messenger = \Drupal::messenger();
    $messenger->addMessage($this->t('Example status message.'), 'status');
    $messenger->addMessage($this->t('Example warning message.'), 'warning');
    $messenger->addMessage($this->t('Example error message.'), 'error');
    $messenger->addMessage($this->t('Example error <em>message</em> with html tags and <a href="http://example.com/">link</a>.'), 'error');

    return [];
  }