| @@ -12,11 +12,8 @@ | ||
| 12 | 12 | $controller = get_responsive_menu_service('admin_controller'); |
| 13 | 13 | echo $controller->export(); |
| 14 | 14 | exit(); |
| 15 | 15 | |
| 16 | - elseif(isset($_POST['responsive-menu-rebuild-db']) && isset($_GET['page']) && $_GET['page'] == 'responsive-menu'): | |
| 17 | - update_option('responsive_menu_version', '2.8.9'); | |
| 18 | - | |
| 19 | 16 | endif; |
| 20 | 17 | |
| 21 | 18 | add_menu_page( |
| 22 | 19 | 'Responsive Menu', |
| @@ -24,36 +21,40 @@ | ||
| 24 | 21 | 'manage_options', |
| 25 | 22 | 'responsive-menu', |
| 26 | 23 | function() { |
| 27 | 24 | $controller = get_responsive_menu_service('admin_controller'); |
| 28 | - $menus_array = []; | |
| 29 | - $location_menus = ['' => 'None']; | |
| 30 | - foreach(get_terms('nav_menu') as $menu) $menus_array[$menu->slug] = $menu->name; | |
| 31 | - foreach(get_registered_nav_menus() as $location => $menu) $location_menus[$location] = $menu; | |
| 32 | 25 | |
| 33 | 26 | if(isset($_POST['responsive-menu-current-page'])) |
| 34 | 27 | update_option('responsive_menu_current_page', $_POST['responsive-menu-current-page']); |
| 35 | 28 | |
| 36 | 29 | if(isset($_POST['responsive-menu-submit'])): |
| 37 | - update_option('hide_pro_options', isset($_POST['hide-pro-options']) ? "yes" : "no"); | |
| 30 | + update_option('hide_pro_options', isset($_POST['hide-pro-options']) ? 'yes' : 'no'); | |
| 38 | 31 | $valid_nonce = wp_verify_nonce($_POST['responsive-menu-nonce'], 'update'); |
| 39 | - echo $controller->update($valid_nonce, wp_unslash($_POST['menu']), $menus_array, $location_menus); | |
| 32 | + echo $controller->update($valid_nonce, wp_unslash($_POST['menu'])); | |
| 40 | 33 | |
| 41 | 34 | elseif(isset($_POST['responsive-menu-reset'])): |
| 42 | - update_option('hide_pro_options', "no"); | |
| 43 | - echo $controller->reset(get_responsive_menu_default_options(), $menus_array, $location_menus); | |
| 35 | + echo $controller->reset(get_responsive_menu_default_options()); | |
| 44 | 36 | |
| 37 | + elseif(isset($_POST['responsive-menu-theme'])): | |
| 38 | + echo $controller->apply_theme($_POST['menu']['menu_theme']); | |
| 39 | + | |
| 45 | 40 | elseif(isset($_POST['responsive-menu-import'])): |
| 46 | 41 | $file = $_FILES['responsive-menu-import-file']; |
| 47 | 42 | $file_options = isset($file['tmp_name']) ? (array) json_decode(file_get_contents($file['tmp_name'])) : null; |
| 48 | - echo $controller->import($file_options, $menus_array, $location_menus); | |
| 43 | + echo $controller->import($file_options); | |
| 49 | 44 | |
| 45 | + | |
| 46 | + elseif(isset($_POST['responsive-menu-import-theme'])): | |
| 47 | + $file = $_FILES['responsive-menu-import-theme-file']; | |
| 48 | + $theme = isset($file['tmp_name']) && $file['tmp_name'] ? $file['tmp_name'] : null; | |
| 49 | + | |
| 50 | + echo $controller->import_theme($theme); | |
| 51 | + | |
| 50 | 52 | elseif(isset($_POST['responsive-menu-rebuild-db'])): |
| 51 | - update_option('hide_pro_options', "no"); | |
| 52 | - echo $controller->rebuild($menus_array, $location_menus); | |
| 53 | + echo $controller->rebuild(); | |
| 53 | 54 | |
| 54 | 55 | else: |
| 55 | - echo $controller->index($menus_array, $location_menus); | |
| 56 | + echo $controller->index(); | |
| 56 | 57 | |
| 57 | 58 | endif; |
| 58 | 59 | }, |
| 59 | 60 | 'dashicons-menu'); |