You are here

function simple_megamenu_menu_link_content_form_submit in Simple Mega Menu 2.0.x

Same name and namespace in other branches
  1. 8 simple_megamenu.module \simple_megamenu_menu_link_content_form_submit()

Submit function for menu add / edit form.

1 string reference to 'simple_megamenu_menu_link_content_form_submit'
simple_megamenu_form_menu_link_content_form_alter in ./simple_megamenu.module
Implements hook_form_BASE_FORM_ID_alter().

File

./simple_megamenu.module, line 158
Contains simple_megamenu.module.

Code

function simple_megamenu_menu_link_content_form_submit($form, FormStateInterface $form_state) {
  $menu_link = $form_state
    ->getFormObject()
    ->getEntity();
  $menu_link_options = $menu_link->link
    ->first()->options;
  if ($form_state
    ->getValue('simple_mega_menu')) {
    $data_simple_mega_menu = [
      'attributes' => [
        'data-simple-mega-menu' => $form_state
          ->getValue('simple_mega_menu'),
      ],
    ];
    $menu_link->link
      ->first()->options = array_merge_recursive($menu_link_options, $data_simple_mega_menu);
  }
  else {
    if (isset($menu_link_options['attributes']['data-simple-mega-menu'])) {
      unset($menu_link_options['attributes']['data-simple-mega-menu']);
    }
    $menu_link->link
      ->first()->options = $menu_link_options;
  }
  $menu_link
    ->save();
}