Max Mega Menu - Version 2.4.3

Version Description

Download this release

Release Info

Developer megamenu
Plugin Icon 128x128 Max Mega Menu
Version 2.4.3
Comparing to
See all releases

Code changes from version 2.4.2 to 2.4.3

classes/menu-item-manager.class.php CHANGED
@@ -485,7 +485,7 @@ class Mega_Menu_Menu_Item_Manager {
485
 
486
  $col_class = isset( $col_data['meta']['class'] ) ? $col_data['meta']['class'] : "";
487
 
488
- $return .= "<div class='mega-col' data-span='{$col_span}'>";
489
  $return .= " <div class='mega-col-wrap'>";
490
  $return .= " <div class='mega-col-header'>";
491
  $return .= " <div class='mega-col-description'>";
485
 
486
  $col_class = isset( $col_data['meta']['class'] ) ? $col_data['meta']['class'] : "";
487
 
488
+ $return = "<div class='mega-col' data-span='{$col_span}'>";
489
  $return .= " <div class='mega-col-wrap'>";
490
  $return .= " <div class='mega-col-header'>";
491
  $return .= " <div class='mega-col-description'>";
classes/settings.class.php CHANGED
@@ -264,17 +264,15 @@ class Mega_Menu_Settings {
264
 
265
  do_action("megamenu_delete_cache");
266
 
267
- // delete menu settings
268
  delete_option("megamenu_settings");
269
-
270
- // delete menu locations
271
  delete_option("megamenu_locations");
272
-
273
- // delete toggle blocks
274
  delete_option("megamenu_toggle_blocks");
275
-
276
- // delete version
277
  delete_option("megamenu_version");
 
 
 
 
278
 
279
  // delete all widgets assigned to menus
280
  $widget_manager = new Mega_Menu_Widget_Manager();
@@ -1135,7 +1133,7 @@ class Mega_Menu_Settings {
1135
  <div class='mega-description'><?php _e("Export a menu theme", "megamenu"); ?></div>
1136
  </td>
1137
  <td class='mega-value'>
1138
- <form method="post" action="<?php admin_url( "admin.php?page=maxmegamenu&tab=tools") ?>">
1139
 
1140
  <?php
1141
 
@@ -1652,7 +1650,7 @@ class Mega_Menu_Settings {
1652
  'line_height' => array(
1653
  'priority' => 30,
1654
  'title' => __( "Line Height", "megamenu" ),
1655
- 'description' => __( "Set the general line height to use in the panel contents.", "megamenu" ),
1656
  'settings' => array(
1657
  array(
1658
  'title' => "",
@@ -1664,7 +1662,7 @@ class Mega_Menu_Settings {
1664
  'z_index' => array(
1665
  'priority' => 40,
1666
  'title' => __( "Z Index", "megamenu" ),
1667
- 'description' => __( "Set the z-index to ensure the panels appear ontop of other content.", "megamenu" ),
1668
  'settings' => array(
1669
  array(
1670
  'title' => "",
@@ -2133,8 +2131,8 @@ class Mega_Menu_Settings {
2133
  'settings' => array(
2134
  'panel_background' => array(
2135
  'priority' => 10,
2136
- 'title' => __( "Panel Background", "megamenu" ),
2137
- 'description' => __( "Set a background color for a whole panel.", "megamenu" ),
2138
  'settings' => array(
2139
  array(
2140
  'title' => __( "From", "megamenu" ),
@@ -2155,11 +2153,12 @@ class Mega_Menu_Settings {
2155
  ),
2156
  'panel_width' => array(
2157
  'priority' => 20,
2158
- 'title' => __( "Panel Width", "megamenu" ),
2159
  'description' => __( "Mega Panel width.", "megamenu" ),
2160
  'info' => array(
2161
- __("A 100% wide panel will only ever be as wide as the menu itself. For a fixed panel width set this to a pixel value.", "megamenu"),
2162
- __("Advanced: Enter a jQuery selector to synchronize the width and position of the sub menu with existing page element (e.g. body, #container, .page).", "megamenu")
 
2163
  ),
2164
  'settings' => array(
2165
  array(
@@ -2176,8 +2175,8 @@ class Mega_Menu_Settings {
2176
  ),
2177
  'panel_padding' => array(
2178
  'priority' => 30,
2179
- 'title' => __( "Panel Padding", "megamenu" ),
2180
- 'description' => __( "Set the padding for the whole panel. Set these values 0px if you wish your panel content to go edge-to-edge.", "megamenu" ),
2181
  'settings' => array(
2182
  array(
2183
  'title' => __( "Top", "megamenu" ),
@@ -2207,8 +2206,8 @@ class Mega_Menu_Settings {
2207
  ),
2208
  'panel_border' => array(
2209
  'priority' => 40,
2210
- 'title' => __( "Panel Border", "megamenu" ),
2211
- 'description' => __( "Set the border to display on the Mega Panel.", "megamenu" ),
2212
  'settings' => array(
2213
  array(
2214
  'title' => __( "Color", "megamenu" ),
@@ -2243,8 +2242,8 @@ class Mega_Menu_Settings {
2243
  ),
2244
  'panel_border_radius' => array(
2245
  'priority' => 50,
2246
- 'title' => __( "Panel Border Radius", "megamenu" ),
2247
- 'description' => __( "Set rounded corners for the panel.", "megamenu" ),
2248
  'settings' => array(
2249
  array(
2250
  'title' => __( "Top Left", "megamenu" ),
@@ -2274,8 +2273,8 @@ class Mega_Menu_Settings {
2274
  ),
2275
  'widget_padding' => array(
2276
  'priority' => 60,
2277
- 'title' => __( "Item Padding", "megamenu" ),
2278
- 'description' => __( "Use this to define the spacing between each widget / set of menu items within the panel.", "megamenu" ),
2279
  'settings' => array(
2280
  array(
2281
  'title' => __( "Top", "megamenu" ),
@@ -2777,7 +2776,7 @@ class Mega_Menu_Settings {
2777
  'settings' => array(
2778
  'flyout_menu_background' => array(
2779
  'priority' => 10,
2780
- 'title' => __( "Menu Background", "megamenu" ),
2781
  'description' => __( "Set the background color for the flyout menu.", "megamenu" ),
2782
  'settings' => array(
2783
  array(
@@ -2799,7 +2798,7 @@ class Mega_Menu_Settings {
2799
  ),
2800
  'flyout_menu_width' => array(
2801
  'priority' => 20,
2802
- 'title' => __( "Menu Width", "megamenu" ),
2803
  'description' => __( "The width of each flyout menu. This must be a fixed pixel value.", "megamenu" ),
2804
  'info' => array(
2805
  __( "Set this value to the width of your longest menu item title to stop menu items wrapping onto 2 lines.", "megamenu" ),
@@ -2816,7 +2815,7 @@ class Mega_Menu_Settings {
2816
  ),
2817
  'flyout_menu_padding' => array(
2818
  'priority' => 30,
2819
- 'title' => __( "Menu Padding", "megamenu" ),
2820
  'description' => __( "Set the padding for the whole flyout menu.", "megamenu" ),
2821
  'info' => array( __( "Only suitable for single level flyout menus. If you're using multi level flyout menus set these values to 0px.", "megamenu" ) ),
2822
  'settings' => array(
@@ -2848,7 +2847,7 @@ class Mega_Menu_Settings {
2848
  ),
2849
  'flyout_menu_border' => array(
2850
  'priority' => 40,
2851
- 'title' => __( "Menu Border", "megamenu" ),
2852
  'description' => __( "Set the border for the flyout menu.", "megamenu" ),
2853
  'settings' => array(
2854
  array(
@@ -2884,7 +2883,7 @@ class Mega_Menu_Settings {
2884
  ),
2885
  'flyout_menu_border_radius' => array(
2886
  'priority' => 50,
2887
- 'title' => __( "Menu Border Radius", "megamenu" ),
2888
  'description' => __( "Set rounded corners for flyout menus. Rounded corners will be applied to all flyout menu levels.", "megamenu" ),
2889
  'settings' => array(
2890
  array(
@@ -2915,7 +2914,7 @@ class Mega_Menu_Settings {
2915
  ),
2916
  'flyout_menu_item_background' => array(
2917
  'priority' => 60,
2918
- 'title' => __( "Item Background", "megamenu" ),
2919
  'description' => __( "Set the background color for a flyout menu item.", "megamenu" ),
2920
  'settings' => array(
2921
  array(
@@ -2937,7 +2936,7 @@ class Mega_Menu_Settings {
2937
  ),
2938
  'flyout_menu_item_background_hover' => array(
2939
  'priority' => 70,
2940
- 'title' => __( "Item Background (Hover)", "megamenu" ),
2941
  'description' => __( "Set the background color for a flyout menu item (on hover).", "megamenu" ),
2942
  'settings' => array(
2943
  array(
@@ -2959,7 +2958,7 @@ class Mega_Menu_Settings {
2959
  ),
2960
  'flyout_menu_item_height' => array(
2961
  'priority' => 80,
2962
- 'title' => __( "Item Height", "megamenu" ),
2963
  'description' => __( "The height of each flyout menu item.", "megamenu" ),
2964
  'settings' => array(
2965
  array(
@@ -2972,7 +2971,7 @@ class Mega_Menu_Settings {
2972
  ),
2973
  'flyout_menu_item_padding' => array(
2974
  'priority' => 90,
2975
- 'title' => __( "Item Padding", "megamenu" ),
2976
  'description' => __( "Set the padding for each flyout menu item.", "megamenu" ),
2977
  'settings' => array(
2978
  array(
@@ -3003,7 +3002,7 @@ class Mega_Menu_Settings {
3003
  ),
3004
  'flyout_menu_item_font' => array(
3005
  'priority' => 100,
3006
- 'title' => __( "Item Font", "megamenu" ),
3007
  'description' => __( "Set the font for the flyout menu items.", "megamenu" ),
3008
  'settings' => array(
3009
  array(
@@ -3041,7 +3040,7 @@ class Mega_Menu_Settings {
3041
  ),
3042
  'flyout_menu_item_font_hover' => array(
3043
  'priority' => 110,
3044
- 'title' => __( "Item Font (Hover)", "megamenu" ),
3045
  'description' => __( "Set the font for the flyout menu items.", "megamenu" ),
3046
  'settings' => array(
3047
  array(
@@ -3063,7 +3062,7 @@ class Mega_Menu_Settings {
3063
  ),
3064
  'flyout_menu_item_divider' => array(
3065
  'priority' => 120,
3066
- 'title' => __( "Item Divider", "megamenu" ),
3067
  'description' => __( "Show a line divider below each menu item.", "megamenu" ),
3068
  'settings' => array(
3069
  array(
@@ -3881,7 +3880,12 @@ class Mega_Menu_Settings {
3881
  'dash-f343' => 'dashicons-arrow-up-alt2',
3882
  'dash-f347' => 'dashicons-arrow-down-alt2',
3883
  'dash-f341' => 'dashicons-arrow-left-alt2',
3884
- 'dash-f345' => 'dashicons-arrow-right-alt2'
 
 
 
 
 
3885
  );
3886
 
3887
  $icons = apply_filters( "megamenu_arrow_icons", $icons );
264
 
265
  do_action("megamenu_delete_cache");
266
 
267
+ // delete options
268
  delete_option("megamenu_settings");
 
 
269
  delete_option("megamenu_locations");
 
 
270
  delete_option("megamenu_toggle_blocks");
 
 
271
  delete_option("megamenu_version");
272
+ delete_option("megamenu_initial_version");
273
+ delete_option("megamenu_themes_last_updated");
274
+ delete_option("megamenu_multisite_share_themes");
275
+
276
 
277
  // delete all widgets assigned to menus
278
  $widget_manager = new Mega_Menu_Widget_Manager();
1133
  <div class='mega-description'><?php _e("Export a menu theme", "megamenu"); ?></div>
1134
  </td>
1135
  <td class='mega-value'>
1136
+ <form method="post" action="<?php echo admin_url( "admin.php?page=maxmegamenu_tools") ?>">
1137
 
1138
  <?php
1139
 
1650
  'line_height' => array(
1651
  'priority' => 30,
1652
  'title' => __( "Line Height", "megamenu" ),
1653
+ 'description' => __( "Set the general line height to use in the submenu contents.", "megamenu" ),
1654
  'settings' => array(
1655
  array(
1656
  'title' => "",
1662
  'z_index' => array(
1663
  'priority' => 40,
1664
  'title' => __( "Z Index", "megamenu" ),
1665
+ 'description' => __( "Set the z-index to ensure the submenus appear ontop of other content.", "megamenu" ),
1666
  'settings' => array(
1667
  array(
1668
  'title' => "",
2131
  'settings' => array(
2132
  'panel_background' => array(
2133
  'priority' => 10,
2134
+ 'title' => __( "Submenu Background", "megamenu" ),
2135
+ 'description' => __( "Set a background color for a whole submenu.", "megamenu" ),
2136
  'settings' => array(
2137
  array(
2138
  'title' => __( "From", "megamenu" ),
2153
  ),
2154
  'panel_width' => array(
2155
  'priority' => 20,
2156
+ 'title' => __( "Submenu Width", "megamenu" ),
2157
  'description' => __( "Mega Panel width.", "megamenu" ),
2158
  'info' => array(
2159
+ __("A 100% wide panel will only ever be as wide as the menu itself. For a fixed submenu width set this to a pixel value.", "megamenu"),
2160
+ __("Advanced: Enter a jQuery selector to synchronize the width and position of the submenu with existing page element (e.g. body, #container, .page).", "megamenu"),
2161
+ "<a href='https://www.megamenu.com/documentation/adjust-sub-menu-width/' target='blank'>" . __("Documentation: Configuring the sub menu width", "megamenu") . '</a>'
2162
  ),
2163
  'settings' => array(
2164
  array(
2175
  ),
2176
  'panel_padding' => array(
2177
  'priority' => 30,
2178
+ 'title' => __( "Submenu Padding", "megamenu" ),
2179
+ 'description' => __( "Set the padding for the whole submenu. Set these values 0px if you wish your submenu content to go edge-to-edge.", "megamenu" ),
2180
  'settings' => array(
2181
  array(
2182
  'title' => __( "Top", "megamenu" ),
2206
  ),
2207
  'panel_border' => array(
2208
  'priority' => 40,
2209
+ 'title' => __( "Submenu Border", "megamenu" ),
2210
+ 'description' => __( "Set the border to display on the submenu.", "megamenu" ),
2211
  'settings' => array(
2212
  array(
2213
  'title' => __( "Color", "megamenu" ),
2242
  ),
2243
  'panel_border_radius' => array(
2244
  'priority' => 50,
2245
+ 'title' => __( "Submenu Border Radius", "megamenu" ),
2246
+ 'description' => __( "Set rounded corners for the submenu.", "megamenu" ),
2247
  'settings' => array(
2248
  array(
2249
  'title' => __( "Top Left", "megamenu" ),
2273
  ),
2274
  'widget_padding' => array(
2275
  'priority' => 60,
2276
+ 'title' => __( "Submenu Items Padding", "megamenu" ),
2277
+ 'description' => __( "Use this to define the amount of space around each widget / set of menu items within the submenu.", "megamenu" ),
2278
  'settings' => array(
2279
  array(
2280
  'title' => __( "Top", "megamenu" ),
2776
  'settings' => array(
2777
  'flyout_menu_background' => array(
2778
  'priority' => 10,
2779
+ 'title' => __( "Submenu Background", "megamenu" ),
2780
  'description' => __( "Set the background color for the flyout menu.", "megamenu" ),
2781
  'settings' => array(
2782
  array(
2798
  ),
2799
  'flyout_menu_width' => array(
2800
  'priority' => 20,
2801
+ 'title' => __( "Submenu Width", "megamenu" ),
2802
  'description' => __( "The width of each flyout menu. This must be a fixed pixel value.", "megamenu" ),
2803
  'info' => array(
2804
  __( "Set this value to the width of your longest menu item title to stop menu items wrapping onto 2 lines.", "megamenu" ),
2815
  ),
2816
  'flyout_menu_padding' => array(
2817
  'priority' => 30,
2818
+ 'title' => __( "Submenu Padding", "megamenu" ),
2819
  'description' => __( "Set the padding for the whole flyout menu.", "megamenu" ),
2820
  'info' => array( __( "Only suitable for single level flyout menus. If you're using multi level flyout menus set these values to 0px.", "megamenu" ) ),
2821
  'settings' => array(
2847
  ),
2848
  'flyout_menu_border' => array(
2849
  'priority' => 40,
2850
+ 'title' => __( "Submenu Border", "megamenu" ),
2851
  'description' => __( "Set the border for the flyout menu.", "megamenu" ),
2852
  'settings' => array(
2853
  array(
2883
  ),
2884
  'flyout_menu_border_radius' => array(
2885
  'priority' => 50,
2886
+ 'title' => __( "Submenu Border Radius", "megamenu" ),
2887
  'description' => __( "Set rounded corners for flyout menus. Rounded corners will be applied to all flyout menu levels.", "megamenu" ),
2888
  'settings' => array(
2889
  array(
2914
  ),
2915
  'flyout_menu_item_background' => array(
2916
  'priority' => 60,
2917
+ 'title' => __( "Menu Item Background", "megamenu" ),
2918
  'description' => __( "Set the background color for a flyout menu item.", "megamenu" ),
2919
  'settings' => array(
2920
  array(
2936
  ),
2937
  'flyout_menu_item_background_hover' => array(
2938
  'priority' => 70,
2939
+ 'title' => __( "Menu Item Background (Hover)", "megamenu" ),
2940
  'description' => __( "Set the background color for a flyout menu item (on hover).", "megamenu" ),
2941
  'settings' => array(
2942
  array(
2958
  ),
2959
  'flyout_menu_item_height' => array(
2960
  'priority' => 80,
2961
+ 'title' => __( "Menu Item Height", "megamenu" ),
2962
  'description' => __( "The height of each flyout menu item.", "megamenu" ),
2963
  'settings' => array(
2964
  array(
2971
  ),
2972
  'flyout_menu_item_padding' => array(
2973
  'priority' => 90,
2974
+ 'title' => __( "Menu Item Padding", "megamenu" ),
2975
  'description' => __( "Set the padding for each flyout menu item.", "megamenu" ),
2976
  'settings' => array(
2977
  array(
3002
  ),
3003
  'flyout_menu_item_font' => array(
3004
  'priority' => 100,
3005
+ 'title' => __( "Menu Item Font", "megamenu" ),
3006
  'description' => __( "Set the font for the flyout menu items.", "megamenu" ),
3007
  'settings' => array(
3008
  array(
3040
  ),
3041
  'flyout_menu_item_font_hover' => array(
3042
  'priority' => 110,
3043
+ 'title' => __( "Menu Item Font (Hover)", "megamenu" ),
3044
  'description' => __( "Set the font for the flyout menu items.", "megamenu" ),
3045
  'settings' => array(
3046
  array(
3062
  ),
3063
  'flyout_menu_item_divider' => array(
3064
  'priority' => 120,
3065
+ 'title' => __( "Menu Item Divider", "megamenu" ),
3066
  'description' => __( "Show a line divider below each menu item.", "megamenu" ),
3067
  'settings' => array(
3068
  array(
3880
  'dash-f343' => 'dashicons-arrow-up-alt2',
3881
  'dash-f347' => 'dashicons-arrow-down-alt2',
3882
  'dash-f341' => 'dashicons-arrow-left-alt2',
3883
+ 'dash-f345' => 'dashicons-arrow-right-alt2',
3884
+ 'dash-f132' => 'dashicons-plus',
3885
+ 'dash-f460' => 'dashicons-minus',
3886
+ 'dash-f158' => 'dashicons-no',
3887
+ 'dash-f335' => 'dashicons-no-alt',
3888
+
3889
  );
3890
 
3891
  $icons = apply_filters( "megamenu_arrow_icons", $icons );
classes/style-manager.class.php CHANGED
@@ -812,7 +812,9 @@ final class Mega_Menu_Style_Manager {
812
 
813
  $js_path = MEGAMENU_BASE_URL . "js/maxmegamenu.js";
814
 
815
- wp_enqueue_script( 'megamenu', $js_path, array('jquery', 'hoverIntent'), MEGAMENU_VERSION, true );
 
 
816
 
817
  $params = apply_filters("megamenu_javascript_localisation",
818
  array(
812
 
813
  $js_path = MEGAMENU_BASE_URL . "js/maxmegamenu.js";
814
 
815
+ $dependencies = apply_filters("megamenu_javascript_dependencies", array('jquery', 'hoverIntent'));
816
+
817
+ wp_enqueue_script( 'megamenu', $js_path, $dependencies, MEGAMENU_VERSION, true );
818
 
819
  $params = apply_filters("megamenu_javascript_localisation",
820
  array(
classes/walker.class.php CHANGED
@@ -173,6 +173,10 @@ class Mega_Menu_Walker extends Walker_Nav_Menu {
173
  $item_output .= "</span>";
174
  }
175
 
 
 
 
 
176
  $item_output .= '</a>';
177
  $item_output .= $args->after;
178
 
173
  $item_output .= "</span>";
174
  }
175
 
176
+ if ( in_array('menu-item-has-children', $classes ) ) {
177
+ $item_output .= '<span class="mega-collapse"></span>';
178
+ }
179
+
180
  $item_output .= '</a>';
181
  $item_output .= $args->after;
182
 
css/admin/admin.css CHANGED
@@ -1,3 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  .nav-menus-php #cboxContent {
2
  padding: 0;
3
  -webkit-user-select: none;
@@ -119,7 +152,7 @@
119
  color: #444;
120
  width: 100%;
121
  display: block;
122
- padding: 10px 0px 10px 20px;
123
  box-sizing: border-box;
124
  outline: 0;
125
  position: relative;
@@ -549,7 +582,7 @@
549
  .nav-menus-php #cboxContent .mega_menu select#mm_enable_mega_menu {
550
  margin-bottom: 0;
551
  font-size: 0.9em;
552
- margin-left: 5px; }
553
  .nav-menus-php #cboxContent .mega_menu select#mm_widget_selector {
554
  font-size: 0.9em;
555
  float: right;
@@ -880,7 +913,6 @@
880
  .nav-menus-php #cboxContent table td.mega-name {
881
  width: 27%;
882
  line-height: 2em;
883
- padding-right: 30px;
884
  vertical-align: top;
885
  font-size: 12px; }
886
  .nav-menus-php #cboxContent table td.mega-name .mega-description {
@@ -912,11 +944,11 @@
912
  text-indent: 2px;
913
  margin-top: 5px; }
914
  .nav-menus-php #cboxContent table .mega-menu-item-align td.mega-value select {
915
- float: left;
916
- margin-right: 10px; }
917
  .nav-menus-php #cboxContent table .mega-menu-item-align td.mega-value .mega-description {
918
  float: left;
919
- margin-right: 10px; }
 
920
  .nav-menus-php #cboxContent table .mega-sub-menu-align td.mega-value select {
921
  float: left;
922
  margin-right: 10px; }
1
+ .rtl.nav-menus-php .mm_launch {
2
+ margin-left: 0;
3
+ margin-right: 10px; }
4
+ .rtl.nav-menus-php .mm_launch:before {
5
+ margin-left: 2px;
6
+ margin-right: 0; }
7
+
8
+ .rtl.nav-menus-php #cboxContent .mm_tab_container {
9
+ float: right; }
10
+
11
+ .rtl.nav-menus-php #cboxContent .mega_menu .mm_panel_options {
12
+ float: left; }
13
+
14
+ .rtl.nav-menus-php #cboxContent .mm_header_container .mm_title {
15
+ float: right; }
16
+
17
+ .rtl.nav-menus-php #cboxContent table .mega-menu-item-align td.mega-value select {
18
+ float: right; }
19
+
20
+ .rtl.nav-menus-php #cboxContent table .mega-menu-item-align td.mega-value .mega-description {
21
+ float: right;
22
+ margin-right: 10px; }
23
+
24
+ .rtl.nav-menus-php #cboxContent .mm_tab_container .mm_tab.active:after {
25
+ right: auto;
26
+ left: 0; }
27
+
28
+ .rtl.nav-menus-php #cboxContent .mega_menu .widget-title-action {
29
+ direction: ltr; }
30
+
31
+ .rtl.nav-menus-php .mega_menu_meta_box div table td:nth-child(2) {
32
+ text-align: left; }
33
+
34
  .nav-menus-php #cboxContent {
35
  padding: 0;
36
  -webkit-user-select: none;
152
  color: #444;
153
  width: 100%;
154
  display: block;
155
+ padding: 10px 10px 10px 20px;
156
  box-sizing: border-box;
157
  outline: 0;
158
  position: relative;
582
  .nav-menus-php #cboxContent .mega_menu select#mm_enable_mega_menu {
583
  margin-bottom: 0;
584
  font-size: 0.9em;
585
+ margin: 0 5px; }
586
  .nav-menus-php #cboxContent .mega_menu select#mm_widget_selector {
587
  font-size: 0.9em;
588
  float: right;
913
  .nav-menus-php #cboxContent table td.mega-name {
914
  width: 27%;
915
  line-height: 2em;
 
916
  vertical-align: top;
917
  font-size: 12px; }
918
  .nav-menus-php #cboxContent table td.mega-name .mega-description {
944
  text-indent: 2px;
945
  margin-top: 5px; }
946
  .nav-menus-php #cboxContent table .mega-menu-item-align td.mega-value select {
947
+ float: left; }
 
948
  .nav-menus-php #cboxContent table .mega-menu-item-align td.mega-value .mega-description {
949
  float: left;
950
+ margin-left: 10px;
951
+ font-style: italic; }
952
  .nav-menus-php #cboxContent table .mega-sub-menu-align td.mega-value select {
953
  float: left;
954
  margin-right: 10px; }
css/admin/admin.scss CHANGED
@@ -10,6 +10,43 @@ $red: #D0011B;
10
  $orange: #ffb900;
11
  $green: #46b450;
12
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  .nav-menus-php {
14
 
15
  #cboxContent {
@@ -184,7 +221,7 @@ $green: #46b450;
184
  color: $text_grey;
185
  width: 100%;
186
  display: block;
187
- padding: 10px 0px 10px 20px;
188
  box-sizing: border-box;
189
  outline: 0;
190
  position: relative;
@@ -638,7 +675,7 @@ $green: #46b450;
638
  select#mm_enable_mega_menu {
639
  margin-bottom: 0;
640
  font-size: 0.9em;
641
- margin-left: 5px;
642
  }
643
 
644
  select#mm_widget_selector {
@@ -1194,7 +1231,6 @@ $green: #46b450;
1194
  td.mega-name {
1195
  width: 27%;
1196
  line-height: 2em;
1197
- padding-right: 30px;
1198
  vertical-align: top;
1199
  font-size: 12px;
1200
 
@@ -1241,11 +1277,11 @@ $green: #46b450;
1241
  td.mega-value {
1242
  select {
1243
  float: left;
1244
- margin-right: 10px;
1245
  }
1246
  .mega-description {
1247
  float: left;
1248
- margin-right: 10px;
 
1249
  }
1250
  }
1251
  }
10
  $orange: #ffb900;
11
  $green: #46b450;
12
 
13
+ .rtl.nav-menus-php {
14
+ .mm_launch {
15
+ margin-left: 0;
16
+ margin-right: 10px;
17
+
18
+ &:before {
19
+ margin-left: 2px;
20
+ margin-right: 0;
21
+ }
22
+ }
23
+ #cboxContent .mm_tab_container {
24
+ float: right;
25
+ }
26
+ #cboxContent .mega_menu .mm_panel_options {
27
+ float: left;
28
+ }
29
+ #cboxContent .mm_header_container .mm_title {
30
+ float: right;
31
+ }
32
+ #cboxContent table .mega-menu-item-align td.mega-value select {
33
+ float: right;
34
+ }
35
+ #cboxContent table .mega-menu-item-align td.mega-value .mega-description {
36
+ float: right;
37
+ margin-right: 10px;
38
+ }
39
+ #cboxContent .mm_tab_container .mm_tab.active:after {
40
+ right: auto;
41
+ left: 0;
42
+ }
43
+ #cboxContent .mega_menu .widget-title-action {
44
+ direction: ltr;
45
+ }
46
+ .mega_menu_meta_box div table td:nth-child(2) {
47
+ text-align: left;
48
+ }
49
+ }
50
  .nav-menus-php {
51
 
52
  #cboxContent {
221
  color: $text_grey;
222
  width: 100%;
223
  display: block;
224
+ padding: 10px 10px 10px 20px;
225
  box-sizing: border-box;
226
  outline: 0;
227
  position: relative;
675
  select#mm_enable_mega_menu {
676
  margin-bottom: 0;
677
  font-size: 0.9em;
678
+ margin: 0 5px;
679
  }
680
 
681
  select#mm_widget_selector {
1231
  td.mega-name {
1232
  width: 27%;
1233
  line-height: 2em;
 
1234
  vertical-align: top;
1235
  font-size: 12px;
1236
 
1277
  td.mega-value {
1278
  select {
1279
  float: left;
 
1280
  }
1281
  .mega-description {
1282
  float: left;
1283
+ margin-left: 10px;
1284
+ font-style: italic;
1285
  }
1286
  }
1287
  }
css/megamenu.scss CHANGED
@@ -36,12 +36,14 @@
36
  line-height: $line_height;
37
  list-style-type: none;
38
  margin: 0;
39
- min-height: 0;
 
40
  opacity: 1;
41
  outline: none;
42
  overflow: visible;
43
  padding: 0;
44
  position: relative;
 
45
  right: auto;
46
  text-align: left;
47
  text-decoration: none;
@@ -267,6 +269,10 @@
267
  -webkit-font-smoothing: antialiased;
268
  -moz-osx-font-smoothing: grayscale;
269
  color: inherit;
 
 
 
 
270
  }
271
 
272
  li.mega-menu-item.mega-hide-text a.mega-menu-link:before {
@@ -534,10 +540,6 @@
534
  margin: 5px 0;
535
  }
536
 
537
- li.mega-menu-item-has-children a.mega-menu-link:after {
538
- display: none;
539
- }
540
-
541
  > li.mega-menu-item ul.mega-sub-menu {
542
  clear: both;
543
 
@@ -586,7 +588,7 @@
586
 
587
  // Second level menu items
588
  > a.mega-menu-link {
589
- color: $panel_second_level_font_color;
590
  font-family: $panel_second_level_font;
591
  font-size: $panel_second_level_font_size;
592
  text-transform: $panel_second_level_text_transform;
@@ -602,19 +604,17 @@
602
  border-bottom: $panel_second_level_border_bottom solid $panel_second_level_border_color;
603
  }
604
 
605
- // Second level menu item hover
606
  > a.mega-menu-link:hover,
607
  > a.mega-menu-link:focus {
608
- color: $panel_second_level_font_color_hover;
609
  font-weight: $panel_second_level_font_weight_hover;
610
  text-decoration: $panel_second_level_text_decoration_hover;
611
  @include background($panel_second_level_background_hover_from, $panel_second_level_background_hover_to);
612
  }
613
 
614
- // Third level menu items
615
  li.mega-menu-item {
616
  > a.mega-menu-link {
617
- color: $panel_third_level_font_color;
618
  font-family: $panel_third_level_font;
619
  font-size: $panel_third_level_font_size;
620
  text-transform: $panel_third_level_text_transform;
@@ -630,7 +630,7 @@
630
  // Third level menu items hover
631
  li.mega-menu-item > a.mega-menu-link:hover,
632
  li.mega-menu-item > a.mega-menu-link:focus {
633
- color: $panel_third_level_font_color_hover;
634
  font-weight: $panel_third_level_font_weight_hover;
635
  text-decoration: $panel_third_level_text_decoration_hover;
636
  @include background($panel_third_level_background_hover_from, $panel_third_level_background_hover_to);
@@ -808,7 +808,8 @@
808
  // Arrows
809
  li.mega-menu-item-has-children {
810
 
811
- > a.mega-menu-link:after {
 
812
  content: $arrow_down;
813
  display: inline-block;
814
  font-family: dashicons;
@@ -818,6 +819,20 @@
818
  -moz-osx-font-smoothing: grayscale;
819
  transform: rotate(0);
820
  color: inherit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
821
  }
822
 
823
  @include mobile {
@@ -825,8 +840,14 @@
825
  float: right;
826
  }
827
 
828
- &.mega-toggle-on > a.mega-menu-link:after {
829
- content: $arrow_up;
 
 
 
 
 
 
830
  }
831
 
832
  &.mega-hide-sub-menu-on-mobile > a.mega-menu-link:after {
@@ -836,7 +857,7 @@
836
  }
837
 
838
  // Hide arrows
839
- li.mega-menu-megamenu li.mega-menu-item-has-children > a.mega-menu-link:after,
840
  li.mega-menu-item-has-children.mega-hide-arrow > a.mega-menu-link:after {
841
  display: none;
842
  }
36
  line-height: $line_height;
37
  list-style-type: none;
38
  margin: 0;
39
+ min-height: auto;
40
+ max-height: none;
41
  opacity: 1;
42
  outline: none;
43
  overflow: visible;
44
  padding: 0;
45
  position: relative;
46
+ pointer-events: auto;
47
  right: auto;
48
  text-align: left;
49
  text-decoration: none;
269
  -webkit-font-smoothing: antialiased;
270
  -moz-osx-font-smoothing: grayscale;
271
  color: inherit;
272
+ background: transparent;
273
+ height: auto;
274
+ width: auto;
275
+ top: auto;
276
  }
277
 
278
  li.mega-menu-item.mega-hide-text a.mega-menu-link:before {
540
  margin: 5px 0;
541
  }
542
 
 
 
 
 
543
  > li.mega-menu-item ul.mega-sub-menu {
544
  clear: both;
545
 
588
 
589
  // Second level menu items
590
  > a.mega-menu-link {
591
+ color: $panel_second_level_font_color; /* Mega Menu > Menu Themes > Mega Menus > Second Level Menu Items */
592
  font-family: $panel_second_level_font;
593
  font-size: $panel_second_level_font_size;
594
  text-transform: $panel_second_level_text_transform;
604
  border-bottom: $panel_second_level_border_bottom solid $panel_second_level_border_color;
605
  }
606
 
 
607
  > a.mega-menu-link:hover,
608
  > a.mega-menu-link:focus {
609
+ color: $panel_second_level_font_color_hover; /* Mega Menu > Menu Themes > Mega Menus > Second Level Menu Items (Hover) */
610
  font-weight: $panel_second_level_font_weight_hover;
611
  text-decoration: $panel_second_level_text_decoration_hover;
612
  @include background($panel_second_level_background_hover_from, $panel_second_level_background_hover_to);
613
  }
614
 
 
615
  li.mega-menu-item {
616
  > a.mega-menu-link {
617
+ color: $panel_third_level_font_color; /* Mega Menu > Menu Themes > Mega Menus > Third Level Menu Items */
618
  font-family: $panel_third_level_font;
619
  font-size: $panel_third_level_font_size;
620
  text-transform: $panel_third_level_text_transform;
630
  // Third level menu items hover
631
  li.mega-menu-item > a.mega-menu-link:hover,
632
  li.mega-menu-item > a.mega-menu-link:focus {
633
+ color: $panel_third_level_font_color_hover; /* Mega Menu > Menu Themes > Mega Menus > Third Level Menu Items (Hover) */
634
  font-weight: $panel_third_level_font_weight_hover;
635
  text-decoration: $panel_third_level_text_decoration_hover;
636
  @include background($panel_third_level_background_hover_from, $panel_third_level_background_hover_to);
808
  // Arrows
809
  li.mega-menu-item-has-children {
810
 
811
+ > a.mega-menu-link:after,
812
+ > a.mega-menu-link span.mega-collapse:after {
813
  content: $arrow_down;
814
  display: inline-block;
815
  font-family: dashicons;
819
  -moz-osx-font-smoothing: grayscale;
820
  transform: rotate(0);
821
  color: inherit;
822
+ position: relative;
823
+ background: transparent;
824
+ height: auto;
825
+ width: auto;
826
+ }
827
+
828
+ > a.mega-menu-link > span.mega-collapse {
829
+ display: none;
830
+ float: right;
831
+ margin: 0 0 0 6px;
832
+
833
+ &:after {
834
+ content: $arrow_up;
835
+ }
836
  }
837
 
838
  @include mobile {
840
  float: right;
841
  }
842
 
843
+ &.mega-toggle-on > a.mega-menu-link {
844
+ &:after {
845
+ display: none;
846
+ }
847
+
848
+ > span.mega-collapse {
849
+ display: block;
850
+ }
851
  }
852
 
853
  &.mega-hide-sub-menu-on-mobile > a.mega-menu-link:after {
857
  }
858
 
859
  // Hide arrows
860
+ li.mega-menu-megamenu:not(.mega-menu-tabbed) li.mega-menu-item-has-children > a.mega-menu-link:after,
861
  li.mega-menu-item-has-children.mega-hide-arrow > a.mega-menu-link:after {
862
  display: none;
863
  }
js/admin.js CHANGED
@@ -130,10 +130,9 @@
130
  }
131
 
132
  if (idx === "general_settings") {
133
-
134
- $("select#mega-item-align").on("change", function() {
135
- var select = jQuery(this);
136
- var selected = jQuery(this).val();
137
  select.next().children().hide();
138
  select.next().children("." + selected).show();
139
  });
130
  }
131
 
132
  if (idx === "general_settings") {
133
+ content.find("select#mega-item-align").on("change", function() {
134
+ var select = $(this);
135
+ var selected = $(this).val();
 
136
  select.next().children().hide();
137
  select.next().children("." + selected).show();
138
  });
js/maxmegamenu.js CHANGED
@@ -183,7 +183,7 @@
183
  });
184
 
185
  $(document).on("click touchend", function(e) { // hide menu when clicked away from
186
- if (!dragging && plugin.settings.document_click === "collapse" && ! $(e.target).closest(".mega-menu li").length && ! $(e.target).closest(".mega-menu-toggle").length ) {
187
  plugin.hideAllPanels();
188
  }
189
  dragging = false;
@@ -237,7 +237,7 @@
237
  }
238
  },
239
  "mouseleave.megamenu" : function() {
240
- if ($(this).hasClass("mega-toggle-on") && ! $(this).parent().parent().hasClass("mega-menu-tabbed")) {
241
  plugin.hidePanel($(this).children("a.mega-menu-link"), false);
242
  }
243
  }
@@ -253,7 +253,7 @@
253
  }
254
  },
255
  out: function () {
256
- if ($(this).hasClass("mega-toggle-on") && ! $(this).parent().parent().hasClass("mega-menu-tabbed")) {
257
  plugin.hidePanel($(this).children("a.mega-menu-link"), false);
258
  }
259
  },
@@ -274,7 +274,7 @@
274
  plugin.hideAllPanels();
275
  }
276
 
277
- if ( $menu.parent().hasClass("mega-keyboard-navigation") && ! ( $(event.target).closest(".mega-menu li").length || $(event.target).closest(".mega-menu-toggle").length ) ) {
278
  $menu.parent().removeClass("mega-keyboard-navigation");
279
  plugin.hideAllPanels();
280
 
@@ -422,6 +422,12 @@
422
  }
423
  });
424
 
 
 
 
 
 
 
425
  if (plugin.settings.unbind_events == 'true') {
426
  plugin.unbindAllEvents();
427
  }
183
  });
184
 
185
  $(document).on("click touchend", function(e) { // hide menu when clicked away from
186
+ if (!dragging && plugin.settings.document_click === "collapse" && ! $(e.target).closest(".max-mega-menu li").length && ! $(e.target).closest(".mega-menu-toggle").length ) {
187
  plugin.hideAllPanels();
188
  }
189
  dragging = false;
237
  }
238
  },
239
  "mouseleave.megamenu" : function() {
240
+ if ($(this).hasClass("mega-toggle-on") && ! $(this).hasClass("mega-disable-collapse") && ! $(this).parent().parent().hasClass("mega-menu-tabbed")) {
241
  plugin.hidePanel($(this).children("a.mega-menu-link"), false);
242
  }
243
  }
253
  }
254
  },
255
  out: function () {
256
+ if ($(this).hasClass("mega-toggle-on") && ! $(this).hasClass("mega-disable-collapse") && ! $(this).parent().parent().hasClass("mega-menu-tabbed")) {
257
  plugin.hidePanel($(this).children("a.mega-menu-link"), false);
258
  }
259
  },
274
  plugin.hideAllPanels();
275
  }
276
 
277
+ if ( $menu.parent().hasClass("mega-keyboard-navigation") && ! ( $(e.target).closest(".max-mega-menu li").length || $(e.target).closest(".mega-menu-toggle").length ) ) {
278
  $menu.parent().removeClass("mega-keyboard-navigation");
279
  plugin.hideAllPanels();
280
 
422
  }
423
  });
424
 
425
+ $(".mega-collapse").on('click', function(e) {
426
+ e.preventDefault();
427
+ e.stopPropagation();
428
+ plugin.hidePanel($(this).parent());
429
+ });
430
+
431
  if (plugin.settings.unbind_events == 'true') {
432
  plugin.unbindAllEvents();
433
  }
megamenu.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Max Mega Menu
5
  * Plugin URI: https://www.megamenu.com
6
  * Description: Easy to use drag & drop WordPress Mega Menu plugin. Create Mega Menus using Widgets. Responsive, retina & touch ready.
7
- * Version: 2.4.2
8
  * Author: Tom Hemsley
9
  * Author URI: https://www.megamenu.com
10
  * License: GPL-2.0+
@@ -26,7 +26,7 @@ final class Mega_Menu {
26
  /**
27
  * @var string
28
  */
29
- public $version = '2.4.2';
30
 
31
 
32
  /**
@@ -246,6 +246,8 @@ final class Mega_Menu {
246
  } else {
247
 
248
  add_option( "megamenu_version", $this->version );
 
 
249
 
250
  do_action( "megamenu_after_install" );
251
 
@@ -1282,7 +1284,8 @@ if ( ! function_exists( 'max_mega_menu_is_enabled' ) ) {
1282
 
1283
  if ( ! function_exists('max_mega_menu_share_themes_across_multisite') ) {
1284
  /*
1285
- * Return saved themes
 
1286
  *
1287
  * @since 2.3.7
1288
  */
@@ -1292,6 +1295,14 @@ if ( ! function_exists('max_mega_menu_share_themes_across_multisite') ) {
1292
  return false;
1293
  }
1294
 
 
 
 
 
 
 
 
 
1295
  return apply_filters( 'megamenu_share_themes_across_multisite', true );
1296
 
1297
  }
4
  * Plugin Name: Max Mega Menu
5
  * Plugin URI: https://www.megamenu.com
6
  * Description: Easy to use drag & drop WordPress Mega Menu plugin. Create Mega Menus using Widgets. Responsive, retina & touch ready.
7
+ * Version: 2.4.3
8
  * Author: Tom Hemsley
9
  * Author URI: https://www.megamenu.com
10
  * License: GPL-2.0+
26
  /**
27
  * @var string
28
  */
29
+ public $version = '2.4.3';
30
 
31
 
32
  /**
246
  } else {
247
 
248
  add_option( "megamenu_version", $this->version );
249
+ add_option( "megamenu_initial_version", $this->version );
250
+ add_option( "megamenu_multisite_share_themes", 'false' );
251
 
252
  do_action( "megamenu_after_install" );
253
 
1284
 
1285
  if ( ! function_exists('max_mega_menu_share_themes_across_multisite') ) {
1286
  /*
1287
+ * In the first version of MMM, themes were (incorrectly) shared between all sites in a multi site network.
1288
+ * Themes will not be shared across sites for new users installing v2.4.3 onwards, but they will be shared for existing (older) users.
1289
  *
1290
  * @since 2.3.7
1291
  */
1295
  return false;
1296
  }
1297
 
1298
+ if ( defined('MEGAMENU_SHARE_THEMES_MULTISITE') && MEGAMENU_SHARE_THEMES_MULTISITE === true ) {
1299
+ return true;
1300
+ }
1301
+
1302
+ if ( get_option('megamenu_multisite_share_themes') === 'false' ) { // only exists if initially installed version is 2.4.3+
1303
+ return false;
1304
+ }
1305
+
1306
  return apply_filters( 'megamenu_share_themes_across_multisite', true );
1307
 
1308
  }
readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: megamenu
3
  Tags: menu, megamenu, mega menu, navigation, widget, dropdown menu, drag and drop, mobile, responsive, retina, theme editor, widget, shortcode, sidebar, icons, dashicons
4
  Requires at least: 3.8
5
  Tested up to: 4.9
6
- Stable tag: 2.4.1.5
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
@@ -108,6 +108,18 @@ See https://www.megamenu.com for more screenshots
108
 
109
  == Changelog ==
110
 
 
 
 
 
 
 
 
 
 
 
 
 
111
  = 2.4.2 =
112
 
113
  * Improvement: Add Mobile Font (Hover) and Mobile Menu Item Background (Hover) options to theme editor
3
  Tags: menu, megamenu, mega menu, navigation, widget, dropdown menu, drag and drop, mobile, responsive, retina, theme editor, widget, shortcode, sidebar, icons, dashicons
4
  Requires at least: 3.8
5
  Tested up to: 4.9
6
+ Stable tag: 2.4.2
7
  License: GPLv2 or later
8
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
9
 
108
 
109
  == Changelog ==
110
 
111
+ = 2.4.dev =
112
+
113
+ * New Feature: On mobile, clicking the "Up" arrow (indicating that a sub menu is open) will close the sub menu
114
+ * Fix: Menu Themes will no longer be shared across sites in a multi site network (for new installations only, existing installations will not be affected)
115
+ * Fix: PHP Warning in Mega_Menu_Menu_Item_Manager::get_grid_column()
116
+ * Fix: Theme export URL
117
+ * Improvement: Add megamenu_javascript_dependencies filter
118
+ * Improvement: Styling resets added (max-height, pointer-events and sub menu arrow indicators) for improved theme compatibility
119
+ * Improvement: Add support for "disable-collapse" class on menu items, to stop sub menus disappearing until the page background is clicked
120
+ * Improvement: Improved RTL admin styling
121
+
122
+
123
  = 2.4.2 =
124
 
125
  * Improvement: Add Mobile Font (Hover) and Mobile Menu Item Background (Hover) options to theme editor