PluginProbe
Responsive Menu – Create Mobile-Friendly Menu / 4.0.0
Responsive Menu – Create Mobile-Friendly Menu v4.0.0
4.7.3 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.10 4.1.11 4.1.12 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 All 90 releases
responsive-menu / config / routing.php

routing.php in Responsive Menu – Create Mobile-Friendly Menu 4.0.0, at config/routing.php

83 lines 3.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 if(is_admin()):
4 add_action('admin_menu', function() {
5
6 if(isset($_POST['responsive-menu-export']) && isset($_GET['page']) && $_GET['page'] == 'responsive-menu'):
7 header('Cache-Control: no-cache, no-store, must-revalidate');
8 header('Pragma: no-cache');
9 header('Expires: 0');
10 header('Content-Type: application/json; charset=utf-8');
11 header('Content-Disposition: attachment; filename=responsive-menu-settings.json');
12 $controller = get_responsive_menu_service('admin_controller');
13 echo $controller->export();
14 exit();
15
16 endif;
17
18 add_menu_page(
19 'Responsive Menu',
20 'Responsive Menu',
21 'manage_options',
22 'responsive-menu',
23 function() {
24 $controller = get_responsive_menu_service('admin_controller');
25
26 if(isset($_POST['responsive-menu-current-page']))
27 update_option('responsive_menu_current_page', $_POST['responsive-menu-current-page']);
28
29 if(isset($_POST['responsive-menu-submit'])):
30 update_option('hide_pro_options', isset($_POST['hide-pro-options']) ? 'yes' : 'no');
31 $valid_nonce = wp_verify_nonce($_POST['responsive-menu-nonce'], 'update');
32 echo $controller->update($valid_nonce, wp_unslash($_POST['menu']));
33
34 elseif(isset($_POST['responsive-menu-reset'])):
35 echo $controller->reset(get_responsive_menu_default_options());
36
37 elseif(isset($_POST['responsive-menu-theme'])):
38 echo $controller->apply_theme($_POST['menu']['menu_theme']);
39
40 elseif(isset($_POST['responsive-menu-import'])):
41 $file = $_FILES['responsive-menu-import-file'];
42 $file_options = isset($file['tmp_name']) ? (array) json_decode(file_get_contents($file['tmp_name'])) : null;
43 echo $controller->import($file_options);
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
52 elseif(isset($_POST['responsive-menu-rebuild-db'])):
53 echo $controller->rebuild();
54
55 else:
56 echo $controller->index();
57
58 endif;
59 },
60 'dashicons-menu');
61 });
62
63 /** Function to move to the new version */
64 add_action('wp_ajax_rmp_switch_version', function() {
65
66 if ( empty ( update_option( 'is_rmp_new_version', 1 ) ) ) {
67 add_option( 'is_rmp_new_version', 1 );
68 }
69
70 wp_send_json_success( ['redirect' => admin_url('edit.php?post_type=rmp_menu')] );
71
72 });
73
74 else:
75 add_action('template_redirect', function() {
76 $controller = get_responsive_menu_service('front_controller');
77 if(isset($_GET['responsive-menu-preview']) && isset($_POST['menu']))
78 echo $controller->preview();
79 else
80 $controller->index();
81 });
82 endif;
83