You are here

function social_mentions_form_alter in Open Social 8

Same name and namespace in other branches
  1. 8.9 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  2. 8.2 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  3. 8.3 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  4. 8.4 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  5. 8.5 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  6. 8.6 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  7. 8.7 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  8. 8.8 modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  9. 10.3.x modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  10. 10.0.x modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  11. 10.1.x modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()
  12. 10.2.x modules/social_features/social_mentions/social_mentions.module \social_mentions_form_alter()

Implements hook_form_alter().

File

modules/social_features/social_mentions/social_mentions.module, line 18
Contains social_mentions.module.

Code

function social_mentions_form_alter(&$form, FormStateInterface $form_state, $form_id) {
  $mentions_forms = [
    'social_post_entity_form',
    'comment_post_comment_form',
    'comment_comment_form',
  ];
  if (in_array($form_id, $mentions_forms)) {

    // Initialize variables.
    $prefix = '[~';
    $suffix = ']';
    $config = \Drupal::config('mentions.settings');
    if ($config
      ->get('suggestions_format') === 'username') {
      if ($usermention = MentionsType::load('UserMention')) {
        $usermention = $usermention
          ->getInputSettings();
        $prefix = $usermention['prefix'];
        $suffix = $usermention['suffix'];
      }
    }
    else {
      if ($profilemention = MentionsType::load('ProfileMention')) {
        $profilemention = $profilemention
          ->getInputSettings();
        $prefix = $profilemention['prefix'];
        $suffix = $profilemention['suffix'];
      }
    }
    $form['#attached']['library'][] = 'social_mentions/social_mentions';
    $form['#attached']['drupalSettings']['socialMentions'] = [
      'suggestionsFormat' => $config
        ->get('suggestions_format'),
      'prefix' => $prefix,
      'suffix' => $suffix,
    ];
  }
}