/**
  * Return the HTML to display in the 'Mega Menu' tab
  *
  * @since 1.7
  * @return string
  */
 public function add_mega_menu_tab($tabs, $menu_item_id, $menu_id, $menu_item_depth, $menu_item_meta)
 {
     if ($menu_item_depth > 0) {
         $tabs['mega_menu'] = array('title' => __('Mega Menu', 'megamenu'), 'content' => '<em>' . __("Mega Menus can only be created on top level menu items.", "megamenu") . '</em>');
         return $tabs;
     }
     $widget_manager = new Mega_Menu_Widget_Manager();
     $all_widgets = $widget_manager->get_available_widgets();
     $return = "<label for='mm_enable_mega_menu'>" . __("Sub menu display mode", "megamenu") . "</label>";
     $return .= "<select id='mm_enable_mega_menu' name='settings[type]'>";
     $return .= "    <option value='flyout'>" . __("Flyout Menu", "megamenu") . "</option>";
     $return .= "    <option id='megamenu' value='megamenu' " . selected($menu_item_meta['type'], 'megamenu', false) . ">" . __("Mega Menu", "megamenu") . "</option>";
     $return .= "</select>";
     $return .= "<select id='mm_number_of_columns' name='settings[panel_columns]'>";
     $return .= "    <option value='1' " . selected($menu_item_meta['panel_columns'], 1, false) . ">1 " . __("column", "megamenu") . "</option>";
     $return .= "    <option value='2' " . selected($menu_item_meta['panel_columns'], 2, false) . ">2 " . __("columns", "megamenu") . "</option>";
     $return .= "    <option value='3' " . selected($menu_item_meta['panel_columns'], 3, false) . ">3 " . __("columns", "megamenu") . "</option>";
     $return .= "    <option value='4' " . selected($menu_item_meta['panel_columns'], 4, false) . ">4 " . __("columns", "megamenu") . "</option>";
     $return .= "    <option value='5' " . selected($menu_item_meta['panel_columns'], 5, false) . ">5 " . __("columns", "megamenu") . "</option>";
     $return .= "    <option value='6' " . selected($menu_item_meta['panel_columns'], 6, false) . ">6 " . __("columns", "megamenu") . "</option>";
     $return .= "    <option value='7' " . selected($menu_item_meta['panel_columns'], 7, false) . ">7 " . __("columns", "megamenu") . "</option>";
     $return .= "    <option value='8' " . selected($menu_item_meta['panel_columns'], 8, false) . ">8 " . __("columns", "megamenu") . "</option>";
     $return .= "</select>";
     $return .= "<select id='mm_widget_selector'>";
     $return .= "    <option value='disabled'>" . __("Select a Widget to add to the panel", "megamenu") . "</option>";
     foreach ($all_widgets as $widget) {
         $return .= "<option value='" . $widget['value'] . "'>" . $widget['text'] . "</option>";
     }
     $return .= "</select>";
     $class = $menu_item_meta['type'] == 'megamenu' ? 'enabled' : 'disabled';
     $return .= "<div id='widgets' class='{$class}' data-columns='{$this->menu_item_meta['panel_columns']}'>";
     $second_level_items = $this->get_second_level_menu_items();
     $panel_widgets = $widget_manager->get_widgets_for_menu_id($menu_item_id);
     if (count($second_level_items)) {
         $return .= "<h5>" . __("Sub menu items", "megamenu") . "</h5>";
         foreach ($second_level_items as $item) {
             $return .= '<div class="widget sub_menu" data-columns="' . esc_attr($item['mega_columns']) . '" data-menu-item-id="' . esc_attr($item['id']) . '">';
             $return .= '    <div class="widget-top">';
             $return .= '        <div class="widget-title-action">';
             $return .= '            <a class="widget-option widget-contract"></a>';
             $return .= '            <a class="widget-option widget-expand"></a>';
             $return .= '        </div>';
             $return .= '        <div class="widget-title">';
             $return .= '            <h4>' . esc_html($item['title']) . '</h4>';
             $return .= '        </div>';
             $return .= '    </div>';
             $return .= '</div>';
         }
     }
     $return .= "<h5>" . __("Widgets", "megamenu") . "</h5>";
     if (count($panel_widgets)) {
         foreach ($panel_widgets as $widget) {
             $return .= '<div class="widget" data-columns="' . esc_attr($widget['mega_columns']) . '" id="' . esc_attr($widget['widget_id']) . '" data-widget-id="' . esc_attr($widget['widget_id']) . '">';
             $return .= '    <div class="widget-top">';
             $return .= '        <div class="widget-title-action">';
             $return .= '            <a class="widget-option widget-contract"></a>';
             $return .= '            <a class="widget-option widget-expand"></a>';
             $return .= '            <a class="widget-option widget-action"></a>';
             $return .= '        </div>';
             $return .= '        <div class="widget-title">';
             $return .= '            <h4>' . esc_html($widget['title']) . '</h4>';
             $return .= '        </div>';
             $return .= '    </div>';
             $return .= '    <div class="widget-inner"></div>';
             $return .= '</div>';
         }
     } else {
         $return .= "<p class='no_widgets'>" . __("No widgets found. Add a widget to this area using the Widget Selector (top right)") . "</p>";
     }
     $return .= "</div>";
     $tabs['mega_menu'] = array('title' => __('Mega Menu', 'megamenu'), 'content' => $return);
     return $tabs;
 }