You are here

function social_topic_form_taxonomy_term_topic_types_form_alter in Open Social 10.1.x

Same name and namespace in other branches
  1. 10.3.x modules/social_features/social_topic/social_topic.module \social_topic_form_taxonomy_term_topic_types_form_alter()
  2. 10.0.x modules/social_features/social_topic/social_topic.module \social_topic_form_taxonomy_term_topic_types_form_alter()
  3. 10.2.x modules/social_features/social_topic/social_topic.module \social_topic_form_taxonomy_term_topic_types_form_alter()

Implements hook_form_FORM_ID_alter().

File

modules/social_features/social_topic/social_topic.module, line 323
The Social topic module.

Code

function social_topic_form_taxonomy_term_topic_types_form_alter(&$form, FormStateInterface $form_state, $form_id) {
  if (!isset($form['field_topic_type_icon'])) {
    return;
  }
  $form['#attached']['library'][] = 'social_topic/admin';
  $default_icon = $form['field_topic_type_icon']['widget']['#default_value'][0];
  $form['field_topic_type_icon']['preview'] = [
    '#type' => 'inline_template',
    '#template' => '<div class="icon-svg-wrapper" data-href="#' . $default_icon . '"><svg class="selected-svg"><use xlink:href="#' . $default_icon . '"></use></svg>{{ svg_icons|raw }}</div>',
    '#context' => [
      'svg_icons' => file_get_contents(drupal_get_path('theme', 'socialbase') . '/assets/icons/icons.svg'),
    ],
  ];
  $form['field_topic_type_icon']['widget']['#ajax'] = [
    'callback' => '_social_topic_change_topic_icon_ajax',
    'event' => 'change',
  ];
}