Responsive Menu - Version 3.1.8

Version Description

(26th October 2017) = * Requires PHP 5.4 * Added a new dark admin theme * Updated the old light admin theme * Added a "hide pro options" button to remove some of the clutter * Improved UI interface * Made the Word Wrap option a free feature * Change database option value type to LONGTEXT to accept longer values * Fixed bug with Enable Gestures option - Pro * Complete overhaul of the Desktop Menu options including Mega Menus and more - Pro * Added vw and vh sizing units - Pro

Download this release

Release Info

Developer peterfeatherstone
Plugin Icon 128x128 Responsive Menu
Version 3.1.8
Comparing to
See all releases

Code changes from version 3.1.7 to 3.1.8

Files changed (48) hide show
  1. app/Database/Migrations/Migrate_0_0_1_0_0_2.php +2 -2
  2. app/Database/Migrations/Migrate_0_0_2_0_0_3.php +2 -2
  3. app/Database/Migrations/Migrate_0_0_5_0_0_6.php +1 -1
  4. app/Database/Migrations/Migrate_1_1_0_1_1_1.php +1 -1
  5. app/Database/Migrations/Migrate_3_1_0_3_1_1.php +1 -1
  6. app/Database/Migrations/Migrate_3_1_7_3_1_8.php +21 -0
  7. config/default_options.php +11 -3
  8. config/routing.php +14 -2
  9. config/twig.php +36 -6
  10. config/wp/scripts.php +22 -5
  11. migration.php +1 -2
  12. public/css/admin/additional.css +112 -0
  13. public/css/admin/admin.css +0 -512
  14. public/css/admin/base.css +785 -0
  15. public/css/admin/themes/dark.css +178 -0
  16. public/css/admin/themes/light.css +194 -0
  17. public/css/app.css.twig +3 -0
  18. public/js/admin/additional.js +61 -0
  19. public/js/admin/admin.js +0 -167
  20. public/js/admin/base.js +207 -0
  21. readme.txt +22 -8
  22. responsive-menu.php +1 -1
  23. views/admin/alerts.html.twig +6 -1
  24. views/admin/banners.html.twig +60 -16
  25. views/admin/macros.html.twig +41 -14
  26. views/admin/main.html.twig +50 -7
  27. views/admin/options.html.twig +17 -10
  28. views/admin/sections/advanced.html.twig +42 -0
  29. views/admin/sections/button.html.twig +50 -43
  30. views/admin/sections/container.html.twig +108 -0
  31. views/admin/sections/custom-css.html.twig +0 -8
  32. views/admin/sections/desktop-menu.html.twig +67 -0
  33. views/admin/sections/header-bar.html.twig +38 -60
  34. views/admin/sections/import-export.html.twig +0 -38
  35. views/admin/sections/initial-setup.html.twig +14 -11
  36. views/admin/sections/license.html.twig +15 -0
  37. views/admin/sections/menu.html.twig +44 -196
  38. views/admin/sections/modules/container-ordering.html.twig +23 -0
  39. views/admin/sections/modules/desktop-menu-settings.html.twig +274 -0
  40. views/admin/sections/modules/font-icons.html.twig +83 -0
  41. views/admin/sections/modules/header-bar-ordering.html.twig +25 -0
  42. views/admin/sections/modules/license-key.html.twig +33 -0
  43. views/admin/sections/modules/rebuild.html.twig +25 -0
  44. views/admin/sections/modules/transfer.html.twig +25 -0
  45. views/admin/sections/single-menu.html.twig +0 -58
  46. views/admin/sections/sub-menus.html.twig +52 -49
  47. views/admin/sections/technical.html.twig +32 -15
  48. views/admin/tabs.html.twig +16 -12
app/Database/Migrations/Migrate_0_0_1_0_0_2.php CHANGED
@@ -23,7 +23,7 @@ class Migrate_0_0_1_0_0_2 extends Migrate {
23
  endforeach;
24
  $options['sun'] = $new_sun;
25
  endif;
26
-
27
  }
28
 
29
- }
23
  endforeach;
24
  $options['sun'] = $new_sun;
25
  endif;
26
+ return $options;
27
  }
28
 
29
+ }
app/Database/Migrations/Migrate_0_0_2_0_0_3.php CHANGED
@@ -19,7 +19,7 @@ class Migrate_0_0_2_0_0_3 extends Migrate {
19
  endforeach;
20
  $options['sun'] = $new_sun;
21
  endif;
22
-
23
  }
24
 
25
- }
19
  endforeach;
20
  $options['sun'] = $new_sun;
21
  endif;
22
+ return $options;
23
  }
24
 
25
+ }
app/Database/Migrations/Migrate_0_0_5_0_0_6.php CHANGED
@@ -8,4 +8,4 @@ class Migrate_0_0_5_0_0_6 extends Migrate {
8
  'moon' => 'baz'
9
  ];
10
 
11
- }
8
  'moon' => 'baz'
9
  ];
10
 
11
+ }
app/Database/Migrations/Migrate_1_1_0_1_1_1.php CHANGED
@@ -4,4 +4,4 @@ namespace ResponsiveMenu\Database\Migrations;
4
 
5
  class Migrate_1_1_0_1_1_1 extends Migrate {
6
 
7
- }
4
 
5
  class Migrate_1_1_0_1_1_1 extends Migrate {
6
 
7
+ }
app/Database/Migrations/Migrate_3_1_0_3_1_1.php CHANGED
@@ -11,4 +11,4 @@ class Migrate_3_1_0_3_1_1 extends Migrate {
11
  'menu_container_background_colour' => 'menu_background_colour',
12
  ];
13
 
14
- }
11
  'menu_container_background_colour' => 'menu_background_colour',
12
  ];
13
 
14
+ }
app/Database/Migrations/Migrate_3_1_7_3_1_8.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace ResponsiveMenu\Database\Migrations;
4
+ use ResponsiveMenu\Collections\OptionsCollection;
5
+
6
+ class Migrate_3_1_7_3_1_8 extends Migrate {
7
+
8
+ protected $migrations = [
9
+ 'use_desktop_menu' => 'use_single_menu'
10
+ ];
11
+
12
+ protected $migration_scripts = [
13
+ 'setOldTheme'
14
+ ];
15
+
16
+ protected function setOldTheme(OptionsCollection $options) {
17
+ $options['admin_theme'] = 'light';
18
+ return $options;
19
+ }
20
+
21
+ }
config/default_options.php CHANGED
@@ -184,7 +184,12 @@ function get_responsive_menu_default_options() {
184
  'custom_walker' => null,
185
  'custom_css' => null,
186
 
187
- 'use_single_menu' => 'off',
 
 
 
 
 
188
 
189
  'single_menu_height' => '80',
190
  'single_menu_height_unit' => 'px',
@@ -233,7 +238,10 @@ function get_responsive_menu_default_options() {
233
  'fade_submenus_speed' => 500,
234
 
235
  'use_slide_effect' => 'off',
236
- 'slide_effect_back_to_text' => 'Back'
 
 
 
237
  ];
238
 
239
- };
184
  'custom_walker' => null,
185
  'custom_css' => null,
186
 
187
+ 'use_desktop_menu' => false,
188
+ 'desktop_menu_options' => '{}',
189
+ 'desktop_menu_positioning' => 'fixed',
190
+ 'desktop_menu_width' => '',
191
+ 'desktop_menu_width_unit' => 'px',
192
+ 'desktop_menu_side' => '',
193
 
194
  'single_menu_height' => '80',
195
  'single_menu_height_unit' => 'px',
238
  'fade_submenus_speed' => 500,
239
 
240
  'use_slide_effect' => 'off',
241
+ 'slide_effect_back_to_text' => 'Back',
242
+
243
+ 'admin_theme' => 'dark'
244
+
245
  ];
246
 
247
+ };
config/routing.php CHANGED
@@ -2,7 +2,8 @@
2
 
3
  if(is_admin()):
4
  add_action('admin_menu', function() {
5
- if(isset($_POST['responsive-menu-export'])):
 
6
  header('Cache-Control: no-cache, no-store, must-revalidate');
7
  header('Pragma: no-cache');
8
  header('Expires: 0');
@@ -11,9 +12,12 @@ if(is_admin()):
11
  $controller = get_responsive_menu_service('admin_controller');
12
  echo $controller->export();
13
  exit();
14
- elseif(isset($_POST['responsive-menu-rebuild-db'])):
 
15
  update_option('responsive_menu_version', '2.8.9');
 
16
  endif;
 
17
  add_menu_page(
18
  'Responsive Menu',
19
  'Responsive Menu',
@@ -30,18 +34,26 @@ if(is_admin()):
30
  update_option('responsive_menu_current_page', $_POST['responsive-menu-current-page']);
31
 
32
  if(isset($_POST['responsive-menu-submit'])):
 
33
  $valid_nonce = wp_verify_nonce($_POST['responsive-menu-nonce'], 'update');
34
  echo $controller->update($valid_nonce, wp_unslash($_POST['menu']), $menus_array, $location_menus);
 
35
  elseif(isset($_POST['responsive-menu-reset'])):
 
36
  echo $controller->reset(get_responsive_menu_default_options(), $menus_array, $location_menus);
 
37
  elseif(isset($_POST['responsive-menu-import'])):
38
  $file = $_FILES['responsive-menu-import-file'];
39
  $file_options = isset($file['tmp_name']) ? (array) json_decode(file_get_contents($file['tmp_name'])) : null;
40
  echo $controller->import($file_options, $menus_array, $location_menus);
 
41
  elseif(isset($_POST['responsive-menu-rebuild-db'])):
 
42
  echo $controller->rebuild($menus_array, $location_menus);
 
43
  else:
44
  echo $controller->index($menus_array, $location_menus);
 
45
  endif;
46
  },
47
  'dashicons-menu');
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');
12
  $controller = get_responsive_menu_service('admin_controller');
13
  echo $controller->export();
14
  exit();
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
  endif;
20
+
21
  add_menu_page(
22
  'Responsive Menu',
23
  'Responsive Menu',
34
  update_option('responsive_menu_current_page', $_POST['responsive-menu-current-page']);
35
 
36
  if(isset($_POST['responsive-menu-submit'])):
37
+ update_option('hide_pro_options', isset($_POST['hide-pro-options']) ? "yes" : "no");
38
  $valid_nonce = wp_verify_nonce($_POST['responsive-menu-nonce'], 'update');
39
  echo $controller->update($valid_nonce, wp_unslash($_POST['menu']), $menus_array, $location_menus);
40
+
41
  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);
44
+
45
  elseif(isset($_POST['responsive-menu-import'])):
46
  $file = $_FILES['responsive-menu-import-file'];
47
  $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);
49
+
50
  elseif(isset($_POST['responsive-menu-rebuild-db'])):
51
+ update_option('hide_pro_options', "no");
52
  echo $controller->rebuild($menus_array, $location_menus);
53
+
54
  else:
55
  echo $controller->index($menus_array, $location_menus);
56
+
57
  endif;
58
  },
59
  'dashicons-menu');
config/twig.php CHANGED
@@ -3,8 +3,9 @@
3
  $twig = new Twig_Environment(new Twig_Loader_Filesystem([
4
  dirname(dirname(__FILE__)) . '/views',
5
  dirname(dirname(__FILE__)) . '/public',
6
- ]), ['autoescape' => false]);
7
 
 
8
  if(!is_admin()):
9
 
10
  $twig->addFilter(new Twig_SimpleFilter('shortcode', function($string) {
@@ -42,20 +43,49 @@ if(!is_admin()):
42
 
43
  else:
44
 
 
 
 
 
 
 
 
 
45
  $twig->addFunction(new Twig_SimpleFunction('header_bar_items', function($items) {
46
  if(isset($items['button']))
47
  unset($items['button']);
48
  return $items;
49
  }));
50
 
51
- $twig->addGlobal('admin_url', get_admin_url());
52
 
53
- $twig->addFunction(new Twig_SimpleFunction('csrf', function() {
54
- return wp_nonce_field('update', 'responsive-menu-nonce', true, false);
 
 
 
 
 
 
55
  }));
56
 
57
- $twig->addFunction(new Twig_SimpleFunction('current_page', function() {
58
- return get_option('responsive_menu_current_page', 'initial-setup');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
  }));
60
 
61
  endif;
3
  $twig = new Twig_Environment(new Twig_Loader_Filesystem([
4
  dirname(dirname(__FILE__)) . '/views',
5
  dirname(dirname(__FILE__)) . '/public',
6
+ ]), ['autoescape' => false, 'debug' => false]);
7
 
8
+ //$twig->addExtension(new Twig_Extension_Debug());
9
  if(!is_admin()):
10
 
11
  $twig->addFilter(new Twig_SimpleFilter('shortcode', function($string) {
43
 
44
  else:
45
 
46
+ $twig->addFunction(new Twig_SimpleFunction('csrf', function() {
47
+ return wp_nonce_field('update', 'responsive-menu-nonce', true, false);
48
+ }));
49
+
50
+ $twig->addFunction(new Twig_SimpleFunction('current_page', function() {
51
+ return get_option('responsive_menu_current_page', 'initial-setup');
52
+ }));
53
+
54
  $twig->addFunction(new Twig_SimpleFunction('header_bar_items', function($items) {
55
  if(isset($items['button']))
56
  unset($items['button']);
57
  return $items;
58
  }));
59
 
60
+ $twig->addFunction(new Twig_SimpleFunction('menu_items', function($options) {
61
 
62
+ if($options['theme_location_menu'])
63
+ $menu = get_term(get_nav_menu_locations()[$options['theme_location_menu']], 'nav_menu')->name;
64
+ elseif($options['menu_to_use'])
65
+ $menu = $options['menu_to_use'];
66
+ else
67
+ $menu = get_terms('nav_menu')[0]->slug;
68
+
69
+ return wp_get_nav_menu_items($menu);
70
  }));
71
 
72
+ $twig->addFunction(new Twig_SimpleFunction('font_icons', function($array) {
73
+ $new_array = [];
74
+ for($i=0; $i < count($array['id']); $i++):
75
+ $new_array[$i] = [
76
+ 'id' => $array['id'][$i],
77
+ 'icon' => $array['icon'][$i],
78
+ 'type' => $array['type'][$i]
79
+ ];
80
+ endfor;
81
+ return $new_array;
82
+ }));
83
+
84
+ $twig->addGlobal('admin_url', get_admin_url());
85
+ $twig->addGlobal('shortcode', '[responsive_menu]');
86
+
87
+ $twig->addFunction(new Twig_SimpleFunction('hide_pro_options', function() {
88
+ return get_option('hide_pro_options', 'no');
89
  }));
90
 
91
  endif;
config/wp/scripts.php CHANGED
@@ -25,13 +25,30 @@ if(isset($_GET['page']) && $_GET['page'] == 'responsive-menu'):
25
  wp_enqueue_style('responsive-menu-selectize-css', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/css/admin/selectize.css', null, null);
26
 
27
  wp_enqueue_script('jquery-ui-core');
 
 
28
 
29
- wp_register_style('responsive-menu-admin-css', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/css/admin/admin.css', false, null);
30
- wp_enqueue_style('responsive-menu-admin-css');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
32
- wp_register_script('responsive-menu-admin-js', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/js/admin/admin.js', 'jquery', null);
33
- wp_localize_script('responsive-menu-admin-js', 'WP_HOME_URL', home_url('/'));
34
- wp_enqueue_script('responsive-menu-admin-js');
35
  });
36
  endif;
37
 
25
  wp_enqueue_style('responsive-menu-selectize-css', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/css/admin/selectize.css', null, null);
26
 
27
  wp_enqueue_script('jquery-ui-core');
28
+ wp_enqueue_script('jquery-ui-sortable');
29
+ wp_enqueue_script('jquery-ui-draggable');
30
 
31
+ wp_register_style('responsive-menu-base-css', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/css/admin/base.css', false, null);
32
+ wp_enqueue_style('responsive-menu-base-css');
33
+
34
+ wp_register_style('responsive-menu-additional-css', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/css/admin/additional.css', false, null);
35
+ wp_enqueue_style('responsive-menu-additional-css');
36
+
37
+ $options = get_responsive_menu_service('option_manager')->all();
38
+ if(isset($options['admin_theme']) || isset($_POST['menu']['admin_theme'])):
39
+ $theme = isset($_POST['menu']['admin_theme']) ? $_POST['menu']['admin_theme'] : $options['admin_theme'];
40
+ wp_register_style('responsive-menu-admin-css-theme' . $theme, plugin_dir_url(dirname(dirname(__FILE__))) . 'public/css/admin/themes/' . $theme . '.css', false, null);
41
+ wp_enqueue_style('responsive-menu-admin-css-theme' . $theme);
42
+ endif;
43
+
44
+ wp_register_script('responsive-menu-base-js', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/js/admin/base.js', 'jquery', null);
45
+ wp_localize_script('responsive-menu-base-js', 'WP_HOME_URL', home_url('/'));
46
+ wp_enqueue_script('responsive-menu-base-js');
47
+
48
+ wp_register_script('responsive-menu-additional-js', plugin_dir_url(dirname(dirname(__FILE__))) . 'public/js/admin/additional.js', 'jquery', null);
49
+ wp_localize_script('responsive-menu-additional-js', 'WP_HOME_URL', home_url('/'));
50
+ wp_enqueue_script('responsive-menu-additional-js');
51
 
 
 
 
52
  });
53
  endif;
54
 
migration.php CHANGED
@@ -6,7 +6,6 @@ add_action('init', function() {
6
  $plugin_data = get_file_data(dirname(__FILE__) . '/responsive-menu.php', ['version']);
7
  $new_version = $plugin_data[0];
8
 
9
- // TODO: Remove and just use new version number in April 2018
10
  $old_version = get_option('responsive_menu_version') ? get_option('responsive_menu_version') : get_option('RMVer');
11
 
12
  $migration = new ResponsiveMenu\Database\Migration(
@@ -23,7 +22,7 @@ add_action('init', function() {
23
  $wpdb->prefix . 'responsive_menu',
24
  "CREATE TABLE " . $wpdb->prefix . "responsive_menu (
25
  name varchar(50) NOT NULL,
26
- value varchar(5000) DEFAULT NULL,
27
  PRIMARY KEY (name)
28
  ) " . $wpdb->get_charset_collate() . ";"
29
  );
6
  $plugin_data = get_file_data(dirname(__FILE__) . '/responsive-menu.php', ['version']);
7
  $new_version = $plugin_data[0];
8
 
 
9
  $old_version = get_option('responsive_menu_version') ? get_option('responsive_menu_version') : get_option('RMVer');
10
 
11
  $migration = new ResponsiveMenu\Database\Migration(
22
  $wpdb->prefix . 'responsive_menu',
23
  "CREATE TABLE " . $wpdb->prefix . "responsive_menu (
24
  name varchar(50) NOT NULL,
25
+ value LONGTEXT DEFAULT NULL,
26
  PRIMARY KEY (name)
27
  ) " . $wpdb->get_charset_collate() . ";"
28
  );
public/css/admin/additional.css ADDED
@@ -0,0 +1,112 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #responsive-menu-admin .pro::before,
2
+ #responsive-menu-admin .semi-pro::before {
3
+ content: "PRO";
4
+ float: right;
5
+ color: #DE4B42;
6
+ font-weight: bold;
7
+ font-size: 9px;
8
+ margin-top: 10px;
9
+ border-left: 1px solid #DE4B42;
10
+ padding-left: 8px;
11
+ padding-right: 8px;
12
+ }
13
+
14
+ #responsive-menu-admin .semi-pro::before {
15
+ content: "SEMI PRO";
16
+ color: #333;
17
+ border-color: #333;
18
+ }
19
+
20
+ #responsive-menu-admin tr.pro-row:hover {
21
+ position: relative;
22
+ }
23
+
24
+ #responsive-menu-admin .responsive-menu-pro-overlay {
25
+ display: none;
26
+ position: absolute;
27
+ top: 0;
28
+ right: 0;
29
+ left: 0;
30
+ bottom: 0;
31
+ background: rgba(222, 75, 66, 0.6);
32
+ text-align: center;
33
+ z-index: 3;
34
+ }
35
+
36
+ #responsive-menu-admin .responsive-menu-pro-overlay a {
37
+ top: 50%;
38
+ transform: translateY(-50%);
39
+ position: relative;
40
+ color: white;
41
+ font-size: 17px;
42
+ display: block;
43
+ }
44
+
45
+ #responsive-menu-admin .pro-container:hover .responsive-menu-pro-overlay,
46
+ #responsive-menu-admin tr.pro-row:hover .responsive-menu-pro-overlay {
47
+ display: block;
48
+ }
49
+
50
+ #responsive-menu-admin #hide-pro-options-label {
51
+ text-align: right;
52
+ }
53
+
54
+ #responsive-menu-admin #hide-pro-options {
55
+ display: inline-block;
56
+ width: auto !important;
57
+ vertical-align: sub;
58
+ }
59
+
60
+ .rtl #responsive-menu-admin .pro::before,
61
+ .rtl #responsive-menu-admin .semi-pro::before {
62
+ float: left;
63
+ }
64
+
65
+ #responsive-menu-admin #upgrade-banner {
66
+ padding: 25px 5%;
67
+ background: #DE4B42;
68
+ color: #fff;
69
+ border: 1px solid #D33C34;
70
+ border-radius: 2px;
71
+ text-align: center;
72
+ margin-bottom: 15px;
73
+ }
74
+
75
+ #responsive-menu-admin #upgrade-banner i {
76
+ margin-right: 5px;
77
+ }
78
+
79
+ #responsive-menu-admin #upgrade-banner {
80
+ font-size: 18px;
81
+ font-weight: bold;
82
+ line-height: 24px;
83
+ }
84
+
85
+ #responsive-menu-admin #upgrade-banner .glyphicon {
86
+ margin-right: 5px;
87
+ }
88
+
89
+ #responsive-menu-admin #upgrade-banner ul {
90
+ margin: 25px 0 35px 0;
91
+ }
92
+
93
+ #responsive-menu-admin #upgrade-banner li {
94
+ list-style: none;
95
+ font-weight: bold;
96
+ font-size: 12px;
97
+ line-height: 18px;
98
+ }
99
+
100
+ #responsive-menu-admin .nav-tabs > li:first-child {
101
+ display: none;
102
+ }
103
+
104
+ #responsive-menu-admin #hide-pro-options-label {
105
+ padding: 10px;
106
+ font-size: 12px;
107
+ display: inline;
108
+ }
109
+
110
+ #responsive-menu-admin #hide-pro-options-label input {
111
+ margin-left: 5px;
112
+ }
public/css/admin/admin.css DELETED
@@ -1,512 +0,0 @@
1
- .container-fluid #banner-area,
2
- .container-fluid #options-area {
3
- display: inline-block;
4
- width: 75%;
5
- vertical-align: top;
6
- }
7
-
8
- .container-fluid #banner-area {
9
- width: 20%;
10
- margin-left: 5%;
11
- }
12
-
13
- .container-fluid form.form-horizontal .input-group {
14
- width:100%;
15
- }
16
-
17
- .container-fluid form.form-horizontal .input-group-btn {
18
- width:189px;
19
- }
20
-
21
- .container-fluid form.form-horizontal .toggle.btn {
22
- width: 50px !important;
23
- }
24
-
25
- .container-fluid form.form-horizontal label {
26
- display: block;
27
- width: 100%;
28
- text-align: left;
29
- }
30
-
31
- .container-fluid form.form-horizontal #header-bar-items-order-container label {
32
- text-align: center;
33
- }
34
-
35
- .container-fluid form.form-horizontal .selectize-input,
36
- .container-fluid form.form-horizontal .bootstrap-select,
37
- .container-fluid form.form-horizontal input,
38
- .container-fluid form.form-horizontal textarea {
39
- width: calc(100% - 75px) !important;
40
- display: inline-block;
41
- }
42
-
43
- .container-fluid form.form-horizontal input#responsive-menu-button-trigger-type-selectized {
44
- width: auto !important;
45
- }
46
-
47
- .container-fluid form.form-horizontal .input-group input {
48
- width: 100% !important;
49
- }
50
-
51
- .container-fluid form.form-horizontal .bootstrap-filestyle,
52
- .container-fluid form.form-horizontal input.has-unit {
53
- width: calc(100% - 179px) !important;
54
- }
55
-
56
- .container-fluid form.form-horizontal input.font-icon-input {
57
- width: 70% !important;
58
- }
59
-
60
- .container-fluid form.form-horizontal .font-icon-select {
61
- width: calc(30% - 75px) !important;
62
- }
63
-
64
- .container-fluid form.form-horizontal .bootstrap-select.is-unit {
65
- width: 100px !important;
66
- }
67
-
68
- .container-fluid form.form-horizontal td {
69
- vertical-align: middle;
70
- }
71
-
72
- .container-fluid form.form-horizontal td {
73
- padding: 15px;
74
- }
75
-
76
- .container-fluid form.form-horizontal ul {
77
- margin-bottom: 0;
78
- }
79
-
80
- .container-fluid form.form-horizontal #font-icon-container {
81
- width: 100%;
82
- }
83
-
84
- .container-fluid form.form-horizontal #font-icon-container td {
85
- padding: 0 0 10px 0;
86
- }
87
-
88
- .container-fluid form.form-horizontal #font-icon-container td input {
89
- width: 95% !important;
90
- }
91
-
92
- .container-fluid form.form-horizontal #font-icon-container td:first-child {
93
- width: 150px;
94
- }
95
-
96
- .container-fluid form.form-horizontal .panel {
97
- border-radius: 0;
98
- }
99
-
100
- .container-fluid form.form-horizontal .panel-body {
101
- font-weight: bold;
102
- font-size: 16px;
103
- }
104
-
105
- .container-fluid form.form-horizontal .panel-body small {
106
- display: none;
107
- float: right;
108
- color: #333;
109
- font-weight: normal;
110
- line-height: 22px;
111
- }
112
-
113
- .container-fluid form.form-horizontal .delete-font-icon-row {
114
- cursor: pointer;
115
- }
116
-
117
- .container-fluid form.form-horizontal .glyphicon.glyphicon-ok {
118
- color: green;
119
- }
120
-
121
- .container-fluid .alert,
122
- .container-fluid ul.nav-tabs {
123
- margin-top: 25px;
124
- }
125
-
126
- .container-fluid form.form-horizontal input#filter-options {
127
- padding: 0 15px;
128
- width: 100% !important;
129
- height: 50px;
130
- }
131
-
132
- .container-fluid form.form-horizontal #filter-options-container {
133
- margin: 25px 0;
134
- background: #F5F5F5;
135
- padding: 15px;
136
- border: 1px solid #ddd;
137
- }
138
-
139
- .container-fluid form.form-horizontal ul.nav-tabs .btn-default {
140
- margin-right: 5px;
141
- }
142
-
143
- .selectize-control.multi .selectize-input > div,
144
- .selectize-control.multi .selectize-input > div.active {
145
- background: #5cb85c;
146
- color: white;
147
- }
148
-
149
- .selectize-control.multi.keyboard-shortcuts .selectize-input .item,
150
- .selectize-control.multi .selectize-input > div[data-value="mouseover"],
151
- .selectize-control.multi .selectize-input > div.active[data-value="mouseover"] {
152
- background: #DE4B42;
153
- }
154
-
155
- .pro::before,
156
- .semi-pro::before {
157
- content: "PRO";
158
- float: right;
159
- color: #DE4B42;
160
- font-weight: bold;
161
- font-size: 9px;
162
- margin-top: 10px;
163
- border-left: 1px solid #DE4B42;
164
- padding-left: 8px;
165
- padding-right: 8px;
166
- }
167
-
168
- .semi-pro::before {
169
- content: "SEMI PRO";
170
- color: #333;
171
- border-color: #333;
172
- }
173
-
174
- .sub-text {
175
- color: #777;
176
- padding-top: 5px;
177
- font-size: 13px;
178
- font-weight: normal;
179
- }
180
-
181
- .sub_sub_title {
182
- padding-top: 2px;
183
- color: dimgray;
184
- font-size: 10px;
185
- font-style: italic;
186
- font-weight: normal;
187
- }
188
-
189
- .unit {
190
- font-size: 12px;
191
- margin-left: 5px;
192
- }
193
-
194
- .option-highlight .well,
195
- .option-highlight,
196
- .table-hover > tbody > tr.option-highlight
197
- .table-hover > tbody > tr.option-highlight:hover,
198
- .table-hover > tbody > tr.option-highlight td,
199
- .table-hover > tbody > tr.option-highlight td:hover {
200
- background-color: #ffff99 !important;
201
- }
202
-
203
- .draggable {
204
- border-radius: 2px;
205
- background: #EFEFEF;
206
- padding: 10px 0;
207
- margin: 4px 0;
208
- cursor: move;
209
- padding-left: 65px;
210
- box-sizing: border-box;
211
- border: 1px solid #ccc;
212
- }
213
-
214
- .draggable input {
215
- display: none !important;
216
- }
217
-
218
- .menu-order-option-switch,
219
- .order-option-switch {
220
- background: #DE4B42;
221
- color: white;
222
- position: absolute;
223
- left: 0;
224
- top: 0;
225
- bottom: 0;
226
- line-height: 40px;
227
- padding: 0 5px;
228
- width: 50px;
229
- text-align: center;
230
- cursor: pointer;
231
- }
232
-
233
- .menu-order-option-switch.menu-order-option-switch-on,
234
- .order-option-switch.order-option-switch-on {
235
- background: #5cb85c;
236
- }
237
-
238
- .menu-order-option-switch:after,
239
- .order-option-switch:after {
240
- content: "OFF";
241
- }
242
-
243
- .menu-order-option-switch.menu-order-option-switch-on:after,
244
- .order-option-switch.order-option-switch-on:after {
245
- content: "ON";
246
- }
247
-
248
- li.draggable {
249
- position: relative;
250
- }
251
-
252
- #upgrade-banner {
253
- padding: 25px 5%;
254
- background: #DE4B42;
255
- color: #fff;
256
- border: 1px solid #D33C34;
257
- border-radius: 2px;
258
- text-align: center;
259
- }
260
-
261
- #upgrade-banner i {
262
- margin-right: 5px;
263
- }
264
-
265
- #docs-banner {
266
- background: #FAB719;
267
- padding: 35px;
268
- color: #333;
269
- margin-top: 15px;
270
- text-align: center;
271
- }
272
-
273
- #upgrade-banner,
274
- #docs-banner {
275
- font-size: 18px;
276
- font-weight: bold;
277
- line-height: 24px;
278
- }
279
-
280
- #upgrade-banner .glyphicon {
281
- margin-right: 5px;
282
- }
283
-
284
- #upgrade-banner li {
285
- list-style: none;
286
- font-weight: bold;
287
- font-size: 11px;
288
- }
289
-
290
- #docs-banner .button,
291
- #upgrade-banner .button {
292
- background: white;
293
- padding: 0 25px;
294
- height: 50px;
295
- line-height: 50px;
296
- font-weight: bold;
297
- font-size: 13px;
298
- color: #333;
299
- display: block;
300
- margin: auto;
301
- width: auto;
302
- text-align: center;
303
- }
304
-
305
- #docs-banner .button {
306
- margin-top: 15px;
307
- }
308
-
309
- .key-container {
310
- margin: 15px 0;
311
- background: white;
312
- text-align: center;
313
- padding: 15px;
314
- border: 1px solid #ccc;
315
- border-radius: 2px;
316
- }
317
-
318
- .key-container .key-title {
319
- font-weight: bold;
320
- display: inline-block;
321
- margin-right: 10px;
322
- }
323
-
324
- .key-container .key {
325
- display: inline-block;
326
- font-size: 9px;
327
- border: 1px solid #DADADA;
328
- border-radius: 2px;
329
- padding: 5px 15px 5px 5px;
330
- background: white;
331
- }
332
-
333
- .key-container .key span {
334
- border-right: 1px solid #de4b42;
335
- display: inline-block;
336
- padding-right: 5px;
337
- margin-right: 10px;
338
- color: #de4b42;
339
- font-size: 9px;
340
- font-weight: bold;
341
- }
342
-
343
- .key-container .key.key-semi-pro span {
344
- color: #333;
345
- border-color: #333;
346
- }
347
-
348
- .key-container .key.key-pro {
349
- margin-bottom: 15px;
350
- }
351
-
352
- .key-container a {
353
- text-decoration: none;
354
- color: #333;
355
- }
356
-
357
- #add-font-icon {
358
- margin-top: 15px;
359
- }
360
-
361
- .mini-colours {
362
- cursor: pointer;
363
- }
364
-
365
- #header-bar-items-order-container td {
366
- width: 100%;
367
- display: block;
368
- padding: 20px;
369
- border: 0;
370
- box-sizing: border-box;
371
- text-align: center;
372
- }
373
-
374
- #header-bar-items-order-container .draggable {
375
- display: inline-block;
376
- width: 19%;
377
- text-align: left;
378
- }
379
-
380
- .container-fluid form.form-horizontal td.well .sub-text ul {
381
- margin: 15px;
382
- }
383
-
384
- .container-fluid form.form-horizontal td.well .sub-text ul li {
385
- list-style: disc;
386
- }
387
-
388
- .container-fluid form.form-horizontal td.pro {
389
- position: relative;
390
- }
391
-
392
- .container-fluid form.form-horizontal td.pro .responsive-menu-pro-overlay {
393
- display: none;
394
- position: absolute;
395
- top: 0;
396
- right: 0;
397
- left: 0;
398
- bottom: 0;
399
- background: rgba(222, 75, 66, 0.6);
400
- text-align: center;
401
- z-index: 3;
402
- }
403
-
404
- .container-fluid form.form-horizontal td.pro .responsive-menu-pro-overlay a {
405
- top: 50%;
406
- transform: translateY(-50%);
407
- position: relative;
408
- color: white;
409
- font-size: 17px;
410
- display: block;
411
- }
412
-
413
- .container-fluid form.form-horizontal td.pro:hover .responsive-menu-pro-overlay {
414
- display: block;
415
- }
416
-
417
- #responsive-menu-header-bar-html-content,
418
- #responsive-menu-menu-additional-content {
419
- height: 250px;
420
- }
421
-
422
- #responsive-menu-custom-css {
423
- height: 500px
424
- }
425
-
426
- .rtl #header-bar-items-order-container .draggable,
427
- .rtl .container-fluid form.form-horizontal label,
428
- .rtl .bootstrap-select.btn-group .dropdown-toggle .filter-option,
429
- .rtl .bootstrap-select.btn-group .dropdown-menu.inner {
430
- text-align: right;
431
- }
432
-
433
- .rtl .input-group .form-control:last-child,
434
- .rtl .input-group-addon:last-child, .input-group-btn:first-child > .btn-group:not(:first-child) > .btn,
435
- .rtl .input-group-btn:first-child > .btn:not(:first-child),
436
- .rtl .input-group-btn:last-child > .btn,
437
- .rtl .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle {
438
- border-radius: 4px 0 0 4px;
439
- }
440
-
441
- .rtl .draggable {
442
- padding-right: 25px;
443
- }
444
-
445
- .rtl .btn-group-lg > .btn, .btn-lg,
446
- .rtl .container-fluid form.form-horizontal .panel-body small {
447
- margin-left: 15px;
448
- }
449
-
450
- .rtl .toggle-off {
451
- right: -50%;
452
- text-align: left !important;
453
- }
454
-
455
- .rtl .pro::before,
456
- .rtl .semi-pro::before {
457
- float: left;
458
- }
459
-
460
- .rtl .minicolors-theme-bootstrap .minicolors-swatch {
461
- left: 75px;
462
- }
463
-
464
- .rtl .container-fluid form.form-horizontal .minicolors input {
465
- width: calc(100% - 125px) !important;
466
- }
467
-
468
- .rtl .container-fluid #banner-area {
469
- margin-left: 0;
470
- margin-right: 5%;
471
- }
472
-
473
- .rtl .key-container .key span {
474
- margin-left: 10px;
475
- margin-right: 0;
476
- }
477
-
478
- .rtl .key-container .key {
479
- padding-left: 10px;
480
- }
481
-
482
- @media screen and (max-width: 1200px) {
483
- .container-fluid #banner-area,
484
- .container-fluid #options-area {
485
- width: 100%;
486
- display: block;
487
- }
488
- .container-fluid #banner-area {
489
- margin: 25px 0 25px 0;
490
- }
491
- }
492
-
493
- @media screen and (max-width: 1000px) {
494
- .nav.nav-tabs > li {
495
- width: 49%;
496
- display: inline-block;
497
- float: none;
498
- margin: 0;
499
- text-align: center;
500
- }
501
-
502
- .nav.nav-tabs > li.pull-right {
503
- display: none;
504
- }
505
- .container-fluid form.form-horizontal td {
506
- width: 100%;
507
- display: block;
508
- }
509
- .container-fluid form.form-horizontal td.well {
510
- margin-bottom: 0;
511
- }
512
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
public/css/admin/base.css ADDED
@@ -0,0 +1,785 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ Responsive Menu CSS file.
3
+ Safe to Copy
4
+ **/
5
+
6
+ /* vietnamese */
7
+ @font-face {
8
+ font-family: 'Montserrat';
9
+ font-style: normal;
10
+ font-weight: 400;
11
+ src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v10/SKK6Nusyv8QPNMtI4j9J2yEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
12
+ unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
13
+ }
14
+ /* latin-ext */
15
+ @font-face {
16
+ font-family: 'Montserrat';
17
+ font-style: normal;
18
+ font-weight: 400;
19
+ src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v10/gFXtEMCp1m_YzxsBpKl68iEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
20
+ unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
21
+ }
22
+ /* latin */
23
+ @font-face {
24
+ font-family: 'Montserrat';
25
+ font-style: normal;
26
+ font-weight: 400;
27
+ src: local('Montserrat Regular'), local('Montserrat-Regular'), url(https://fonts.gstatic.com/s/montserrat/v10/zhcz-_WihjSQC0oHJ9TCYPk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
28
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
29
+ }
30
+
31
+
32
+ #responsive-menu-admin {
33
+ font-family: "Montserrat";
34
+ }
35
+
36
+ #responsive-menu-admin #banner-area,
37
+ #responsive-menu-admin #options-area {
38
+ display: inline-block;
39
+ width: 75%;
40
+ vertical-align: top;
41
+ }
42
+
43
+ #responsive-menu-admin #banner-area {
44
+ width: 20%;
45
+ margin-left: 5%;
46
+ margin-top: 25px;
47
+ }
48
+
49
+ #responsive-menu-admin #banner-area #guide-banner {
50
+ background: white;
51
+ padding: 15px;
52
+ margin-top: 15px;
53
+ }
54
+
55
+ #responsive-menu-admin #banner-area #guide-banner .guide-active > .guide-wrapper,
56
+ #responsive-menu-admin #banner-area #guide-banner #guide-menu-wrapper:hover,
57
+ #responsive-menu-admin #banner-area #guide-banner #guide-submenu-wrapper:hover,
58
+ #responsive-menu-admin #banner-area #guide-banner #guide-container-wrapper:hover,
59
+ #responsive-menu-admin #banner-area #guide-banner #guide-button-wrapper:hover {
60
+ outline: 4px solid #15A4FA;
61
+ }
62
+
63
+ #responsive-menu-admin #banner-area #guide-banner .guide-active > .guide-wrapper {
64
+ outline-color: yellow;
65
+ }
66
+
67
+ #responsive-menu-admin #banner-area #guide-banner #guide-button-wrapper {
68
+ height: 50px;
69
+ width: 50px;
70
+ background: #3E4960;
71
+ padding-top: 10px;
72
+ }
73
+
74
+ #responsive-menu-admin #banner-area #guide-banner #guide-button-container {
75
+
76
+ float: right;
77
+ }
78
+
79
+ #responsive-menu-admin #banner-area #guide-banner #guide-button-container .guide-button-line {
80
+ background: white;
81
+ width: 75%;
82
+ height: 3px;
83
+ margin: 0 auto 10px auto;
84
+ }
85
+
86
+ #responsive-menu-admin #banner-area #guide-banner #guide-container-container {
87
+ width: 75%;
88
+ }
89
+
90
+ #responsive-menu-admin #banner-area #guide-banner #guide-container-wrapper {
91
+ background: #3E4960;
92
+ padding: 10px;
93
+ }
94
+
95
+ #responsive-menu-admin #banner-area #guide-banner #guide-title {
96
+ font-weight: bold;
97
+ margin-bottom: 10px;
98
+ }
99
+
100
+ #responsive-menu-admin #banner-area #guide-banner #guide-title small {
101
+ font-weight: normal;
102
+ }
103
+
104
+ #responsive-menu-admin #banner-area #guide-banner #guide-menu-container {
105
+ background: #E9F0FA;
106
+ }
107
+
108
+ #responsive-menu-admin #banner-area #guide-banner #guide-container-container .guide-menu-text {
109
+ color: white;
110
+ padding: 5px 0;
111
+ }
112
+
113
+ #responsive-menu-admin #banner-area #guide-banner #guide-menu-container .guide-menu-item {
114
+ border-bottom: 1px solid #D4E2F5;
115
+ padding: 5px;
116
+ }
117
+
118
+ #responsive-menu-admin #banner-area #guide-banner #guide-menu-container .guide-menu-item.guide-submenu-item {
119
+ padding-left: 25px;
120
+ background: #D4E2F5;
121
+ border-color: #E9F0FA;
122
+ }
123
+
124
+ #responsive-menu-admin #banner-area #guide-banner .guide-helper-container {
125
+ position: relative;
126
+ }
127
+
128
+ #responsive-menu-admin #banner-area #guide-banner .guide-helper {
129
+ position: absolute;
130
+ top: -35px;
131
+ background: rgba(0, 0, 0, 0.8);
132
+ color: white;
133
+ padding: 5px;
134
+ display: none;
135
+ left: -5px;
136
+ }
137
+
138
+ #responsive-menu-admin #banner-area #guide-banner .guide-helper.guide-helper-submenus {
139
+ left: 0;
140
+ }
141
+
142
+ #responsive-menu-admin #banner-area #guide-banner .guide-active > .guide-helper,
143
+ #responsive-menu-admin #banner-area #guide-banner .guide-helper-container:hover > .guide-helper {
144
+ display: block;
145
+ }
146
+
147
+ #responsive-menu-admin .input-group {
148
+ width:100%;
149
+ }
150
+
151
+ #responsive-menu-admin .input-group-btn {
152
+ width:189px;
153
+ }
154
+
155
+ #responsive-menu-admin .toggle.btn {
156
+ width: 50px !important;
157
+ }
158
+
159
+ #responsive-menu-admin label {
160
+ display: block;
161
+ width: 100%;
162
+ text-align: left;
163
+ }
164
+
165
+ #responsive-menu-admin .selectize-input,
166
+ #responsive-menu-admin .bootstrap-select,
167
+ #responsive-menu-admin input,
168
+ #responsive-menu-admin textarea {
169
+ width: calc(100% - 75px) !important;
170
+ display: inline-block;
171
+ }
172
+
173
+ #responsive-menu-admin .selectize-input input,
174
+ #responsive-menu-admin input#responsive-menu-button-trigger-type-selectized {
175
+ width: auto !important;
176
+ }
177
+
178
+ #responsive-menu-admin .input-group input {
179
+ width: 100% !important;
180
+ }
181
+
182
+ #responsive-menu-admin .bootstrap-filestyle,
183
+ #responsive-menu-admin input.has-unit {
184
+ width: calc(100% - 179px) !important;
185
+ }
186
+
187
+ #responsive-menu-admin input.font-icon-input {
188
+ width: 70% !important;
189
+ }
190
+
191
+ #responsive-menu-admin .font-icon-select {
192
+ width: calc(30% - 75px) !important;
193
+ }
194
+
195
+ #responsive-menu-admin .bootstrap-select.is-unit {
196
+ width: 100px !important;
197
+ }
198
+
199
+ #responsive-menu-admin td {
200
+ vertical-align: middle;
201
+ }
202
+
203
+ #responsive-menu-admin td {
204
+ padding: 15px;
205
+ }
206
+
207
+ #responsive-menu-admin ul {
208
+ margin-bottom: 0;
209
+ }
210
+
211
+ #responsive-menu-admin #font-icon-container {
212
+ width: 100%;
213
+ }
214
+
215
+ #responsive-menu-admin #font-icon-container td {
216
+ padding: 0 0 10px 0;
217
+ }
218
+
219
+ #responsive-menu-admin #font-icon-container td input {
220
+ width: 95% !important;
221
+ }
222
+
223
+ #responsive-menu-admin #font-icon-container td:first-child {
224
+ width: 150px;
225
+ }
226
+
227
+ #responsive-menu-admin .panel {
228
+ border-radius: 0;
229
+ }
230
+
231
+ #responsive-menu-admin .panel-body {
232
+ font-weight: bold;
233
+ font-size: 16px;
234
+ }
235
+
236
+ #responsive-menu-admin .panel-header .glyphicon,
237
+ #responsive-menu-admin .panel-body .glyphicon {
238
+ margin-right: 10px;
239
+ }
240
+
241
+ #responsive-menu-admin .panel-body small {
242
+ display: none;
243
+ float: right;
244
+ font-weight: normal;
245
+ line-height: 22px;
246
+ }
247
+
248
+ #responsive-menu-admin .delete-font-icon-row {
249
+ cursor: pointer;
250
+ }
251
+
252
+ #responsive-menu-admin .glyphicon.glyphicon-ok {
253
+ color: green;
254
+ }
255
+
256
+ #responsive-menu-admin .top-submit-buttons,
257
+ #responsive-menu-admin .alert,
258
+ #responsive-menu-admin ul.nav-tabs {
259
+ margin-top: 25px;
260
+ }
261
+
262
+ #responsive-menu-admin .top-submit-buttons {
263
+ padding: 0;
264
+ }
265
+
266
+ #responsive-menu-admin .top-submit-buttons button {
267
+ margin-left: 5px;
268
+ }
269
+
270
+ #responsive-menu-admin .nav-tabs {
271
+ border: none;
272
+ padding: 0;
273
+ }
274
+
275
+ #responsive-menu-admin .nav-tabs > li > a {
276
+ background: none;
277
+ border: 0;
278
+ border-radius: 0;
279
+ }
280
+
281
+ #responsive-menu-admin .nav-tabs > li.active > a,
282
+ #responsive-menu-admin .nav-tabs > li.active > a:focus,
283
+ #responsive-menu-admin .nav-tabs > li.active > a:hover {
284
+ border: 0;
285
+ border-radius: 0;
286
+ }
287
+
288
+ #responsive-menu-admin .nav-tabs .label {
289
+ margin: 0 10px;
290
+ vertical-align: middle;
291
+ }
292
+
293
+ #responsive-menu-admin .nav-tabs > li {
294
+ margin-bottom: 0;
295
+ }
296
+
297
+ #responsive-menu-admin .nav > li > a {
298
+ padding: 10px;
299
+ }
300
+
301
+ #responsive-menu-admin input#filter-options {
302
+ padding: 0 15px;
303
+ width: 100% !important;
304
+ height: 50px;
305
+ }
306
+
307
+ #responsive-menu-admin #filter-options-container {
308
+ margin-top: 25px;
309
+ }
310
+
311
+ #responsive-menu-admin ul.nav-tabs .btn-default {
312
+ margin-right: 5px;
313
+ }
314
+
315
+ #responsive-menu-admin .input-group-btn .btn,
316
+ #responsive-menu-admin .btn.btn-rm {
317
+ border-radius: 0;
318
+ border: 0;
319
+ padding: 12px;
320
+ }
321
+
322
+ #responsive-menu-admin .selectize-control.multi .selectize-input > div,
323
+ #responsive-menu-admin .selectize-control.multi .selectize-input > div.active {
324
+ background: #5cb85c;
325
+ color: white;
326
+ }
327
+
328
+ #responsive-menu-admin .sub-text {
329
+ color: #777;
330
+ padding-top: 5px;
331
+ font-size: 13px;
332
+ font-weight: normal;
333
+ margin-bottom: 15px;
334
+ }
335
+
336
+ #responsive-menu-admin .sub_sub_title {
337
+ padding-top: 2px;
338
+ color: dimgray;
339
+ font-size: 10px;
340
+ font-style: italic;
341
+ font-weight: normal;
342
+ }
343
+
344
+ #responsive-menu-admin .unit {
345
+ font-size: 12px;
346
+ margin-left: 5px;
347
+ }
348
+
349
+ #responsive-menu-admin .option-highlight .col-left,
350
+ #responsive-menu-admin .option-highlight,
351
+ #responsive-menu-admin .table-hover > tbody > tr.option-highlight,
352
+ #responsive-menu-admin .table-hover > tbody > tr.option-highlight:hover,
353
+ #responsive-menu-admin .table-hover > tbody > tr.option-highlight td,
354
+ #responsive-menu-admin .table-hover > tbody > tr.option-highlight td:hover {
355
+ background-color: #ffff99 !important;
356
+ }
357
+
358
+ #responsive-menu-admin .panel table tr.option-highlight td.col-right,
359
+ #responsive-menu-admin .panel table tr.option-highlight td.col-left label,
360
+ #responsive-menu-admin .panel table tr.option-highlight td.col-left .sub-text,
361
+ #responsive-menu-admin .panel table tr.option-highlight td.col-left .sub_sub_title {
362
+ color: #333;
363
+ }
364
+
365
+ #responsive-menu-admin .draggable {
366
+ border-radius: 2px;
367
+ background: #EFEFEF;
368
+ padding: 10px 0;
369
+ margin: 4px 0;
370
+ cursor: move;
371
+ padding-left: 65px;
372
+ box-sizing: border-box;
373
+ border: 1px solid #ccc;
374
+ }
375
+
376
+ #responsive-menu-admin .draggable input {
377
+ display: none !important;
378
+ }
379
+
380
+ #responsive-menu-admin .menu-order-option-switch,
381
+ #responsive-menu-admin .order-option-switch {
382
+ background: #DE4B42;
383
+ color: white;
384
+ position: absolute;
385
+ left: 0;
386
+ top: 0;
387
+ bottom: 0;
388
+ line-height: 40px;
389
+ padding: 0 5px;
390
+ width: 50px;
391
+ text-align: center;
392
+ cursor: pointer;
393
+ }
394
+
395
+ #responsive-menu-admin .menu-order-option-switch.menu-order-option-switch-on,
396
+ #responsive-menu-admin .order-option-switch.order-option-switch-on {
397
+ background: #5cb85c;
398
+ }
399
+
400
+ #responsive-menu-admin .menu-order-option-switch:after,
401
+ #responsive-menu-admin .order-option-switch:after {
402
+ content: "OFF";
403
+ }
404
+
405
+ #responsive-menu-admin .menu-order-option-switch.menu-order-option-switch-on:after,
406
+ #responsive-menu-admin .order-option-switch.order-option-switch-on:after {
407
+ content: "ON";
408
+ }
409
+
410
+ #responsive-menu-admin li.draggable {
411
+ position: relative;
412
+ }
413
+
414
+ #responsive-menu-admin #upgrade-banner,
415
+ #responsive-menu-admin #docs-banner {
416
+ background: #FAB719;
417
+ padding: 35px;
418
+ color: #333;
419
+ text-align: center;
420
+ font-size: 18px;
421
+ font-weight: bold;
422
+ line-height: 24px;
423
+ }
424
+
425
+ #responsive-menu-admin #upgrade-banner .button,
426
+ #responsive-menu-admin #docs-banner .button {
427
+ background: white;
428
+ padding: 0 25px;
429
+ height: 50px;
430
+ line-height: 50px;
431
+ font-weight: bold;
432
+ font-size: 13px;
433
+ color: #333;
434
+ display: block;
435
+ margin: auto;
436
+ width: auto;
437
+ text-align: center;
438
+ margin-top: 15px;
439
+ }
440
+
441
+ #responsive-menu-admin #add-font-icon {
442
+ margin-top: 15px;
443
+ }
444
+
445
+ #responsive-menu-admin .mini-colours {
446
+ cursor: pointer;
447
+ }
448
+
449
+ #responsive-menu-admin #header-bar-items-order-container .draggable {
450
+ display: inline-block;
451
+ width: 19%;
452
+ text-align: left;
453
+ }
454
+
455
+ #responsive-menu-admin td.col-left .sub-text ul {
456
+ margin: 15px;
457
+ }
458
+
459
+ #responsive-menu-admin td.col-left .sub-text ul li {
460
+ list-style: disc;
461
+ }
462
+
463
+ #responsive-menu-admin .panel,
464
+ #responsive-menu-admin .panel table,
465
+ #responsive-menu-admin .panel table td,
466
+ #responsive-menu-admin .panel table th,
467
+ #responsive-menu-admin .panel table td.col-left {
468
+ border: 0;
469
+ }
470
+
471
+ #responsive-menu-admin a.remove {
472
+ color: white;
473
+ }
474
+
475
+ #responsive-menu-admin .panel table td.col-left {
476
+ border-radius: 0;
477
+ box-shadow: none;
478
+ }
479
+
480
+ #responsive-menu-admin .panel table td.col-left,
481
+ #responsive-menu-admin .panel table td.col-right {
482
+ border-bottom-width: 1px;
483
+ border-bottom-style: solid;
484
+ }
485
+
486
+ #responsive-menu-admin .panel table td.col-left {
487
+ border-right-width: 1px;
488
+ border-right-style: solid;
489
+ }
490
+
491
+ #responsive-menu-admin .panel table tr:last-child td.col-left {
492
+ border-bottom: 0;
493
+ }
494
+
495
+ #responsive-menu-admin .panel table td.col-left label {
496
+ font-weight: normal;
497
+ }
498
+
499
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget {
500
+ border-width: 1px;
501
+ border-style: solid;
502
+ }
503
+
504
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget.responsive-menu-desktop-menu-image-widget .responsive-menu-desktop-menu-widget-body {
505
+ padding-left: 37.5px;
506
+ }
507
+
508
+ #responsive-menu-admin .panel #font-icon-container td {
509
+ border-bottom: 0;
510
+ }
511
+
512
+ #responsive-menu-admin #responsive-menu-header-bar-html-content,
513
+ #responsive-menu-admin #responsive-menu-menu-additional-content {
514
+ height: 250px;
515
+ }
516
+
517
+ #responsive-menu-admin #responsive-menu-custom-css {
518
+ height: 500px
519
+ }
520
+
521
+ .rtl #responsive-menu-admin #header-bar-items-order-container .draggable,
522
+ .rtl #responsive-menu-admin label,
523
+ .rtl #responsive-menu-admin .bootstrap-select.btn-group .dropdown-toggle .filter-option,
524
+ .rtl #responsive-menu-admin .bootstrap-select.btn-group .dropdown-menu.inner {
525
+ text-align: right;
526
+ }
527
+
528
+ .rtl #responsive-menu-admin .input-group .form-control:last-child,
529
+ .rtl #responsive-menu-admin .input-group-addon:last-child, .input-group-btn:first-child > .btn-group:not(:first-child) > .btn,
530
+ .rtl #responsive-menu-admin .input-group-btn:first-child > .btn:not(:first-child),
531
+ .rtl #responsive-menu-admin .input-group-btn:last-child > .btn,
532
+ .rtl #responsive-menu-admin .input-group-btn:last-child > .btn-group > .btn, .input-group-btn:last-child > .dropdown-toggle {
533
+ border-radius: 4px 0 0 4px;
534
+ }
535
+
536
+ .rtl #responsive-menu-admin .draggable {
537
+ padding-right: 25px;
538
+ }
539
+
540
+ .rtl #responsive-menu-admin .btn-group-lg > .btn, .btn-lg,
541
+ .rtl #responsive-menu-admin .panel-body small {
542
+ margin-left: 15px;
543
+ }
544
+
545
+ .rtl #responsive-menu-admin .toggle-off {
546
+ right: -50%;
547
+ text-align: left !important;
548
+ }
549
+
550
+ .rtl #responsive-menu-admin #banner-area {
551
+ margin-left: 0;
552
+ margin-right: 5%;
553
+ }
554
+
555
+ #responsive-menu-admin #responsive-menu-desktop-menu-container {
556
+ border-top: 1px solid #ddd;
557
+ }
558
+
559
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container {
560
+ background: #F5F5F5;
561
+ padding: 0;
562
+ }
563
+
564
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container,
565
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-options-wrapper {
566
+ min-height: 600px;
567
+ }
568
+
569
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-header,
570
+ #responsive-menu-admin .responsive-menu-desktop-menu-top-level-label,
571
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-menu-label,
572
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-menu-label {
573
+ cursor: pointer;
574
+ }
575
+
576
+ #responsive-menu-admin .responsive-menu-desktop-menu-top-level-label,
577
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-menu-label,
578
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-menu-label,
579
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-body,
580
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-header {
581
+ padding: 10px;
582
+ }
583
+
584
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-body {
585
+ background: white;
586
+ padding: 25px 0;
587
+ }
588
+
589
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-body input,
590
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-body textarea {
591
+ padding: 10px;
592
+ color: #333;
593
+ }
594
+
595
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-header {
596
+ border-bottom: 1px solid #ddd;
597
+ font-weight: bold;
598
+ }
599
+
600
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget {
601
+ border-left: 1px solid #ddd;
602
+ width: 100%;
603
+ background: #F5F5F5;
604
+ margin-bottom: 10px;
605
+ }
606
+
607
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-menu-label {
608
+ padding-left: 25px;
609
+ }
610
+
611
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-menu-label {
612
+ padding-left: 45px;
613
+ }
614
+
615
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-menu-label,
616
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-menu-label,
617
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-sub-menu-label {
618
+ background: white;
619
+ border-bottom: 0;
620
+ border-top: 0;
621
+ display: block;
622
+ }
623
+
624
+ #responsive-menu-admin .responsive-menu-desktop-menu-options-container,
625
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-container {
626
+ display: none;
627
+ }
628
+
629
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-container {
630
+ background: white;
631
+ padding: 15px;
632
+ border: 1px solid #DDDDDD;
633
+ }
634
+
635
+ #responsive-menu-admin .responsive-menu-desktop-menu-options-container {
636
+ padding: 15px 0;
637
+ }
638
+
639
+ #responsive-menu-admin .responsive-menu-desktop-menu-options-container:first-child {
640
+ display: block;
641
+ }
642
+
643
+ #responsive-menu-admin .responsive-menu-desktop-menu-label-active {
644
+ background: #0073AA;
645
+ color: white;
646
+ }
647
+
648
+ #responsive-menu-admin .docs {
649
+ float: right;
650
+ margin-left: 15px;
651
+ font-weight: 100;
652
+ }
653
+
654
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container-grid {
655
+ border: 2px solid #DDDDDD;
656
+ padding: 25px;
657
+ text-align: center;
658
+ background: white;
659
+ min-height: 136px;
660
+ }
661
+
662
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container-grid:empty:after {
663
+ content: "Drag widgets here to begin";
664
+ color: #8c8c8c;
665
+ position: relative;
666
+ font-size: 18px;
667
+ font-weight: bold;
668
+ top: 25px;
669
+ }
670
+
671
+ #responsive-menu-admin .label-info {
672
+ border-radius: 0;
673
+ }
674
+
675
+ #responsive-menu-admin #responsive-menu-desktop-menu-container {
676
+ border: 0;
677
+ position: relative;
678
+ }
679
+
680
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container-grid .responsive-menu-desktop-menu-widget {
681
+ width: 100% !important;
682
+ background: #F5F5F5;
683
+ margin-bottom: 15px;
684
+ }
685
+
686
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container-grid .responsive-menu-desktop-menu-widget {
687
+ height: auto !important;
688
+ }
689
+
690
+ #responsive-menu-admin .dropdown-menu {
691
+ padding: 0;
692
+ margin: 0;
693
+ }
694
+
695
+ #responsive-menu-admin .dropdown-menu li {
696
+ margin: 0;
697
+ }
698
+
699
+ #responsive-menu-admin .dropdown-menu > li > a {
700
+ padding: 10px 15px;
701
+ }
702
+
703
+ #responsive-menu-admin .dropdown-menu > li > a .glyphicon {
704
+ top: 9px;
705
+ }
706
+
707
+ #responsive-menu-admin .dropdown-menu > li > a:focus {
708
+ box-shadow: none;
709
+ }
710
+
711
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-container .responsive-menu-desktop-menu-widget .responsive-menu-desktop-menu-widget-header .glyphicon,
712
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget .responsive-menu-desktop-menu-widget-body {
713
+ display: none;
714
+ }
715
+
716
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget .responsive-menu-desktop-menu-widget-header {
717
+ position: relative;
718
+ text-align: center;
719
+ }
720
+
721
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget .responsive-menu-desktop-menu-widget-header .glyphicon {
722
+ position: absolute;
723
+ top: 13px;
724
+ font-size: 12px;
725
+ right: 11px;
726
+ color: #333;
727
+ }
728
+
729
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container {
730
+ margin-bottom: 15px;
731
+ background: #F5F5F5;
732
+ padding: 15px;
733
+ border: 1px solid #DDDDDD;
734
+ border-radius: 2px;
735
+ }
736
+
737
+ #responsive-menu-admin .responsive-menu-desktop-menu-widgets-container {
738
+ margin-top: 25px;
739
+ }
740
+
741
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-badges {
742
+ margin-right: 8px;
743
+ }
744
+
745
+ @media screen and (max-width: 1600px) {
746
+
747
+ #responsive-menu-admin .top-submit-buttons,
748
+ #responsive-menu-admin ul.nav-tabs,
749
+ #responsive-menu-admin #banner-area,
750
+ #responsive-menu-admin #options-area {
751
+ width: 100%;
752
+ display: block;
753
+ float: none;
754
+ }
755
+
756
+ #responsive-menu-admin #banner-area {
757
+ margin: 25px 0 25px 0;
758
+ }
759
+
760
+ }
761
+
762
+ @media screen and (max-width: 1100px) {
763
+
764
+ #responsive-menu-admin .nav.nav-tabs > li {
765
+ width: 49%;
766
+ display: inline-block;
767
+ float: none;
768
+ margin: 0;
769
+ text-align: center;
770
+ }
771
+
772
+ #responsive-menu-admin .nav.nav-tabs > li.pull-right {
773
+ display: none;
774
+ }
775
+
776
+ #responsive-menu-admin td {
777
+ width: 100%;
778
+ display: block;
779
+ }
780
+
781
+ #responsive-menu-admin td.col-left {
782
+ margin-bottom: 0;
783
+ }
784
+
785
+ }
public/css/admin/themes/dark.css ADDED
@@ -0,0 +1,178 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ Responsive Menu CSS file.
3
+ Safe to Copy
4
+ **/
5
+
6
+ #responsive-menu-admin .draggable,
7
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-menu-label,
8
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-sub-menu-label {
9
+ background: white;
10
+ }
11
+
12
+ #wpfooter,
13
+ #wpfooter a,
14
+ #responsive-menu-admin .panel-body,
15
+ #responsive-menu-admin .panel-body small,
16
+ #responsive-menu-admin .panel table td.col-left label,
17
+ #responsive-menu-admin .nav-tabs > li.active > a,
18
+ #responsive-menu-admin .nav-tabs > li.active > a:focus,
19
+ #responsive-menu-admin .nav-tabs > li.active > a:hover,
20
+ #responsive-menu-admin .nav-tabs > li > a,
21
+ #responsive-menu-admin .nav-tabs > li > a:focus,
22
+ #responsive-menu-admin .nav-tabs > li > a:hover,
23
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget,
24
+ #responsive-menu-admin .responsive-menu-desktop-menu-top-level-label,
25
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-menu-label,
26
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-menu-label,
27
+ #responsive-menu-admin .panel table td.col-left .sub_sub_title,
28
+ #responsive-menu-admin .responsive-menu-desktop-menu-links-container,
29
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container {
30
+ color: white;
31
+ }
32
+
33
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-label-active,
34
+ #responsive-menu-admin .label-info {
35
+ background: #15A4FA;
36
+ }
37
+
38
+ #responsive-menu-admin a {
39
+ color: #15A4FA;
40
+ }
41
+
42
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget {
43
+ border-color: #CCCCCC;
44
+ }
45
+
46
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-label-active,
47
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-menu-label.responsive-menu-desktop-menu-label-active,
48
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-sub-menu-label.responsive-menu-desktop-menu-label-active {
49
+ color: white;
50
+ }
51
+
52
+
53
+ #responsive-menu-admin .valid-license {
54
+ color: #00FF87;
55
+ }
56
+
57
+ /*
58
+ --> Start page background styles
59
+ */
60
+ #wpwrap {
61
+ background: #7D7F8C;
62
+ }
63
+ /*
64
+ <-- End page background styles
65
+ */
66
+
67
+ /*
68
+ --> Start nav tabs styles
69
+ */
70
+ #responsive-menu-admin .nav-tabs > li.active > a,
71
+ #responsive-menu-admin .nav-tabs > li.active > a:focus,
72
+ #responsive-menu-admin .nav-tabs > li.active > a:hover {
73
+ background: #15A4FA;
74
+ }
75
+ /*
76
+ <-- End nav tabs styles
77
+ */
78
+
79
+ /*
80
+ --> Start Header panel styles
81
+ */
82
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container,
83
+ #responsive-menu-admin .nav-tabs,
84
+ #responsive-menu-admin .panel-body {
85
+ background: #3E4960;
86
+ }
87
+ /*
88
+ <-- End Header panel styles
89
+ */
90
+
91
+ /*
92
+ --> Left hand panel styles
93
+ */
94
+ #responsive-menu-admin .panel table td.col-left,
95
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label,
96
+ #responsive-menu-admin .responsive-menu-desktop-menu-links-container,
97
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container,
98
+ #responsive-menu-admin .nav-tabs > li > a:focus,
99
+ #responsive-menu-admin .nav-tabs > li > a:hover {
100
+ background: #333C4E;
101
+ }
102
+
103
+ #responsive-menu-admin .bootstrap-select a,
104
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-menu-label,
105
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-sub-menu-label,
106
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-header {
107
+ color: #333C4E;
108
+ }
109
+
110
+ /* --> Sub Text */
111
+ #responsive-menu-admin .panel table td.col-left .sub-text,
112
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container .sub-text {
113
+ color: #8795AC;
114
+ }
115
+
116
+ #responsive-menu-admin .panel table td.col-left {
117
+ border-bottom-color: #28303E;
118
+ border-right-color: #28303E;
119
+ }
120
+
121
+ /* --> Hover */
122
+ #responsive-menu-admin .panel tr:hover td.col-left {
123
+ background: #28303E;
124
+ }
125
+ /*
126
+ --> End Left hand panel styles
127
+ */
128
+
129
+ /*
130
+ --> Right hand panel styles
131
+ */
132
+ #responsive-menu-admin .panel table td.col-right,
133
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-body,
134
+ #responsive-menu-admin #responsive-menu-desktop-menu-container,
135
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-options-wrapper {
136
+ background: #E9F0FA;
137
+ }
138
+
139
+ #responsive-menu-admin .panel table td.col-right {
140
+ border-bottom-color: #D4E2F5;
141
+ }
142
+
143
+ /* --> Hover */
144
+ #responsive-menu-admin .panel tr:hover td.col-right {
145
+ background: #D4E2F5;
146
+ }
147
+ /*
148
+ --> End Right hand panel styles
149
+ */
150
+
151
+ /*
152
+ --> Start button styles
153
+ */
154
+ #responsive-menu-admin .btn.btn-rm.btn-primary {
155
+ background: #15A4FA;
156
+ }
157
+
158
+ #responsive-menu-admin .btn.btn-rm.btn-primary:hover {
159
+ background: #1293E1;
160
+ }
161
+
162
+ #responsive-menu-admin .btn.btn-rm.btn-default {
163
+ background: #FFFFFF;
164
+ }
165
+
166
+ #responsive-menu-admin .btn.btn-rm.btn-default:hover {
167
+ background: #E6E6E6;
168
+ }
169
+ /*
170
+ <-- End button styles
171
+ */
172
+
173
+ /* --> Start specific theme styles */
174
+ #responsive-menu-admin #hide-pro-options-label {
175
+ background: #3E4960;
176
+ color: white;
177
+ }
178
+ /* <-- End specific theme styles */
public/css/admin/themes/light.css ADDED
@@ -0,0 +1,194 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ Responsive Menu CSS file.
3
+ Safe to Copy
4
+ **/
5
+
6
+ #responsive-menu-admin .draggable,
7
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-menu-label,
8
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-sub-menu-label {
9
+ background: white;
10
+ }
11
+
12
+ #wpfooter,
13
+ #wpfooter a,
14
+ #responsive-menu-admin .panel-body,
15
+ #responsive-menu-admin .panel-body small,
16
+ #responsive-menu-admin .panel table td.col-left label,
17
+ #responsive-menu-admin .nav-tabs > li.active > a,
18
+ #responsive-menu-admin .nav-tabs > li.active > a:focus,
19
+ #responsive-menu-admin .nav-tabs > li.active > a:hover,
20
+ #responsive-menu-admin .nav-tabs > li > a,
21
+ #responsive-menu-admin .nav-tabs > li > a:focus,
22
+ #responsive-menu-admin .nav-tabs > li > a:hover,
23
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget,
24
+ #responsive-menu-admin .responsive-menu-desktop-menu-top-level-label,
25
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-menu-label,
26
+ #responsive-menu-admin .responsive-menu-desktop-menu-sub-sub-menu-label,
27
+ #responsive-menu-admin .panel table td.col-left .sub_sub_title,
28
+ #responsive-menu-admin .responsive-menu-desktop-menu-links-container,
29
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container {
30
+ color: #333;
31
+ }
32
+
33
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-label-active,
34
+ #responsive-menu-admin .label-info {
35
+ background: #15A4FA;
36
+ }
37
+
38
+ #responsive-menu-admin a {
39
+ color: #15A4FA;
40
+ }
41
+
42
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget {
43
+ border-color: #CCCCCC;
44
+ }
45
+
46
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-label-active,
47
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-menu-label.responsive-menu-desktop-menu-label-active,
48
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-sub-menu-label.responsive-menu-desktop-menu-label-active {
49
+ color: white;
50
+ }
51
+
52
+ #responsive-menu-admin .valid-license {
53
+ color: green;
54
+ }
55
+
56
+ /*
57
+ --> Start page background styles
58
+ */
59
+ #wpwrap {
60
+ background: #FFFFFF;
61
+ }
62
+ /*
63
+ <-- End page background styles
64
+ */
65
+
66
+ /*
67
+ --> Start nav tabs styles
68
+ */
69
+ #responsive-menu-admin .nav-tabs > li.active > a,
70
+ #responsive-menu-admin .nav-tabs > li.active > a:focus,
71
+ #responsive-menu-admin .nav-tabs > li.active > a:hover {
72
+ background: #F5F5F5;
73
+ }
74
+ /*
75
+ <-- End nav tabs styles
76
+ */
77
+
78
+ /*
79
+ --> Start Header panel styles
80
+ */
81
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container,
82
+ #responsive-menu-admin .nav-tabs,
83
+ #responsive-menu-admin .panel-body {
84
+ background: #FFFFFF;
85
+ }
86
+ /*
87
+ <-- End Header panel styles
88
+ */
89
+
90
+ /*
91
+ --> Start left hand panel styles
92
+ */
93
+ #responsive-menu-admin .panel table td.col-left,
94
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label,
95
+ #responsive-menu-admin .responsive-menu-desktop-menu-links-container,
96
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container,
97
+ #responsive-menu-admin .nav-tabs > li > a:focus,
98
+ #responsive-menu-admin .nav-tabs > li > a:hover {
99
+ background: #F5F5F5;
100
+ }
101
+
102
+ #responsive-menu-admin .bootstrap-select a,
103
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-menu-label,
104
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-links-container .responsive-menu-desktop-menu-label.responsive-menu-desktop-menu-sub-sub-menu-label,
105
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-header {
106
+ color: #333;
107
+ }
108
+
109
+ /* --> Sub Text */
110
+ #responsive-menu-admin .panel table td.col-left .sub-text,
111
+ #responsive-menu-admin .responsive-menu-desktop-menu-option-container .sub-text{
112
+ color: #666666;
113
+ }
114
+
115
+ #responsive-menu-admin .panel table td.col-left {
116
+ border-bottom-color: #DCDCDC;
117
+ border-right-color: #DCDCDC;
118
+ }
119
+
120
+ /* --> Hover */
121
+ #responsive-menu-admin .panel tr:hover td.col-left {
122
+ background: #DCDCDC;
123
+ }
124
+ /*
125
+ <-- End left hand panel styles
126
+ */
127
+
128
+ /*
129
+ --> Start right hand panel styles
130
+ */
131
+ #responsive-menu-admin .panel table td.col-right,
132
+ #responsive-menu-admin .responsive-menu-desktop-menu-widget-body,
133
+ #responsive-menu-admin #responsive-menu-desktop-menu-container,
134
+ #responsive-menu-admin #responsive-menu-desktop-menu-container .responsive-menu-desktop-menu-options-wrapper {
135
+ background: #FFFFFF;
136
+ }
137
+
138
+ #responsive-menu-admin .panel table td.col-right {
139
+ border-bottom-color: #F6F6F6;
140
+ }
141
+
142
+ /* --> Hover */
143
+ #responsive-menu-admin .panel tr:hover td.col-right {
144
+ background: #F6F6F6;
145
+ }
146
+ /*
147
+ <-- End right hand panel styles
148
+ */
149
+
150
+ /*
151
+ --> Start button styles
152
+ */
153
+ #responsive-menu-admin .btn.btn-rm.btn-primary {
154
+ background: #15A4FA;
155
+ }
156
+
157
+ #responsive-menu-admin .btn.btn-rm.btn-primary:hover {
158
+ background: #1293E1;
159
+ }
160
+
161
+ #responsive-menu-admin .btn.btn-rm.btn-default {
162
+ background: #F5F5F5;
163
+ }
164
+
165
+ #responsive-menu-admin .btn.btn-rm.btn-default:hover {
166
+ background: #E6E6E6;
167
+ }
168
+ /*
169
+ <-- End button styles
170
+ */
171
+
172
+ /* --> Start specific theme styles */
173
+ #responsive-menu-admin .panel {
174
+ border: 1px solid #C4C4C4;
175
+ }
176
+
177
+ #responsive-menu-admin .panel .panel-body {
178
+ border-bottom: 1px solid #C4C4C4;
179
+ }
180
+
181
+ #responsive-menu-admin #hide-pro-options-label {
182
+ padding-right: 0;
183
+ }
184
+ /* <-- End specific theme styles */
185
+
186
+ /* --> Start Mini Admin guide theme styles */
187
+ #responsive-menu-admin #guide-banner {
188
+ border: 1px solid #C4C4C4;
189
+ }
190
+ #responsive-menu-admin #banner-area #guide-banner #guide-container-wrapper,
191
+ #responsive-menu-admin #banner-area #guide-banner #guide-button-wrapper {
192
+ background: #DE4B42;
193
+ }
194
+ /* <-- End Mini Admin guide theme styles */
public/css/app.css.twig CHANGED
@@ -470,6 +470,9 @@ button#responsive-menu-button,
470
  border-bottom: {{ options.menu_border_width }}px solid {{ options.menu_item_border_colour }};
471
  color: {{ options.menu_link_colour }};
472
  background-color: {{ options.menu_item_background_colour }};
 
 
 
473
  }
474
 
475
  #responsive-menu-container #responsive-menu li.responsive-menu-item a:hover {
470
  border-bottom: {{ options.menu_border_width }}px solid {{ options.menu_item_border_colour }};
471
  color: {{ options.menu_link_colour }};
472
  background-color: {{ options.menu_item_background_colour }};
473
+ {% if options.menu_word_wrap != 'off' %}
474
+ word-wrap: break-word;
475
+ {% endif %}
476
  }
477
 
478
  #responsive-menu-container #responsive-menu li.responsive-menu-item a:hover {
public/js/admin/additional.js ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ Responsive Menu JS file.
3
+ NOT Safe to Copy
4
+
5
+ Do Not Copy
6
+ **/
7
+
8
+ jQuery(function($) {
9
+
10
+ /* --> Colour Select Options */
11
+ $.minicolors.defaults = $.extend(
12
+ $.minicolors.defaults, {
13
+ format: 'hex',
14
+ opacity: false,
15
+ theme: 'bootstrap'
16
+ }
17
+ );
18
+ $('.mini-colours').minicolors();
19
+ /* <-- End Colour Select Options */
20
+
21
+ /* --> Upgrade Message Overlay */
22
+ $('.pro-row td.col-right, .pro-container').append(
23
+ '<div class="responsive-menu-pro-overlay">' +
24
+ '<a href="https://responsive.menu/pricing/?utm_source=free-plugin' +
25
+ '&utm_medium=option&utm_campaign=free-plugin-option-upgrade"' +
26
+ 'target="_blank">Click to upgrade now to use</a>' +
27
+ '</div>'
28
+ );
29
+ /* <-- End Upgrade Message Overlay */
30
+
31
+ /* --> Hide Pro Options */
32
+ $(document).on('change', '#hide-pro-options', function() {
33
+ if($(this).is(':checked')) {
34
+ $('.nav > li.pro-tab, ' +
35
+ '.fully-pro-container, ' +
36
+ '.responsive-menu-preview, ' +
37
+ '.pro-row'
38
+ ).hide();
39
+ } else {
40
+ $('.nav > li.pro-tab, ' +
41
+ '.fully-pro-container, ' +
42
+ '.responsive-menu-preview, ' +
43
+ '.pro-row'
44
+ ).show();
45
+ }
46
+ });
47
+ /* <-- End Hide Pro Options */
48
+
49
+ /* --> Preview Options */
50
+ $(document).on('click', '.responsive-menu-preview', function(e) {
51
+ e.preventDefault();
52
+ var form = $('#responsive-menu-form');
53
+ form.attr('action', WP_HOME_URL + '?responsive-menu-preview=true');
54
+ form.attr('target', '_blank');
55
+ form.submit();
56
+ form.attr('action', '');
57
+ form.attr('target', '');
58
+ });
59
+ /* <-- End Preview Options */
60
+
61
+ });
public/js/admin/admin.js DELETED
@@ -1,167 +0,0 @@
1
- jQuery(function($) {
2
-
3
- $.minicolors.defaults = $.extend($.minicolors.defaults, {
4
- format: 'hex',
5
- opacity: false,
6
- theme: 'bootstrap'
7
- });
8
- $('.mini-colours').minicolors();
9
-
10
- $(':file').filestyle({icon: false, buttonName: 'btn-primary', placeholder: 'No file'});
11
-
12
- var custom_uploader;
13
-
14
- $('.image_button').click(function (e) {
15
- e.preventDefault();
16
- window.imgFor = $(this).attr('for');
17
- //If the uploader object has already been created, reopen the dialog
18
- if (custom_uploader) {
19
- custom_uploader.open();
20
- return;
21
- }
22
- //Extend the wp.media object
23
- custom_uploader = wp.media.frames.file_frame = wp.media({
24
- title: 'Choose Image',
25
- button: {
26
- text: 'Choose Image',
27
- id: 'test'
28
- },
29
- multiple: false
30
- });
31
-
32
- //When a file is selected, grab the URL and set it as the text field's value
33
- custom_uploader.on('select', function () {
34
- attachment = custom_uploader.state().get('selection').first().toJSON();
35
- $('#' + window.imgFor).val(attachment.url);
36
- });
37
-
38
- //Open the uploader dialog
39
- custom_uploader.open();
40
- });
41
-
42
- $(document).on('click', '#responsive-menu-preview', function(e) {
43
- e.preventDefault();
44
- var form = $('#responsive-menu-form');
45
- form.attr('action', WP_HOME_URL + '?responsive-menu-preview=true');
46
- form.attr('target', '_blank');
47
- form.submit();
48
- form.attr('action', '');
49
- form.attr('target', '');
50
- });
51
-
52
- $(document).on('click', '.scroll-to-option', function(e) {
53
- e.preventDefault();
54
- var id_to_scroll_to = $(this).attr('href');
55
- var parent_panel_id = $(id_to_scroll_to).parents('.tab-pane').attr('id');
56
- var parent_tab = $('a[href="#' + parent_panel_id + '"]').parent('li');
57
-
58
- $('tr').removeClass('option-highlight');
59
- $('ul.nav-tabs li').removeClass('active');
60
- parent_tab.addClass('active');
61
-
62
- $('#responsive-menu-current-page').val(parent_panel_id);
63
-
64
- $('.tab-content .tab-pane').removeClass('active').removeClass('in');
65
-
66
- $('#' + parent_panel_id).addClass('active').addClass('in');
67
-
68
- $('html, body').animate({
69
- scrollTop: $(id_to_scroll_to).offset().top - 50
70
- }, 1000);
71
-
72
- $(id_to_scroll_to).closest('tr').addClass('option-highlight');
73
- });
74
-
75
- $(document).on('click', '.nav-tabs li a', function() {
76
- var tab_name = $(this).attr('href').replace('#', '');
77
- $('#responsive-menu-current-page').val(tab_name);
78
- });
79
-
80
- $(document).on('keyup', '#filter-options', function() {
81
- var search_query = $(this).val();
82
- var current_tab = $('.nav-tabs .active').attr('id');
83
- $('#options-area').css('width', '99%');
84
- $('.nav-tabs, #banner-area').hide();
85
-
86
- if(search_query) {
87
- $('.tab-pane').show().css('opacity', '1');
88
- $('.panel-body small').css('display', 'block');
89
-
90
- $('.control-label').closest('tr').hide();
91
- $('.control-label').each(function (i) {
92
- if ($(this).text().toLowerCase().indexOf(search_query.toLowerCase()) >= 0) {
93
- $(this).closest('tr').show();
94
- }
95
- });
96
-
97
- $('#options-area .table-bordered').each(function(i) {
98
-
99
- var visible_rows = $(this).children('tbody').children('tr').filter(function() {
100
- return $(this).css('display') == 'table-row';
101
- });
102
-
103
- if(visible_rows.length > 0) {
104
- $(this).parents('.panel').show();
105
- } else {
106
- $(this).parents('.panel').hide();
107
- }
108
- });
109
-
110
- } else {
111
- $('.tab-pane').css('display', '').css('opacity', '');
112
- $('.control-label').closest('tr').show();
113
- $('.nav-tabs, #banner-area, .panel').show();
114
- $('#options-area').css('width', '');
115
- $('.panel-body small').css('display', '');
116
- }
117
- });
118
-
119
- $('#responsive-menu-button-trigger-type').selectize({
120
- plugins: ['remove_button'],
121
- options: [
122
- {
123
- value:'click',
124
- text:'Click'
125
- },
126
- {
127
- value:'mouseover',
128
- text:'Hover'
129
- }
130
- ]
131
- });
132
-
133
- $('.keyboard-shortcuts').selectize({
134
- plugins: ['remove_button'],
135
- options: [
136
- {
137
- value:27,
138
- text:'Esc'
139
- },
140
- {
141
- value:13,
142
- text:'Enter'
143
- },
144
- {
145
- value:32,
146
- text:'Space'
147
- },
148
- {
149
- value:37,
150
- text:'Left'
151
- },
152
- {
153
- value:38,
154
- text:'Up'
155
- },
156
- {
157
- value:39,
158
- text:'Right'
159
- },
160
- {
161
- value:40,
162
- text:'Down'
163
- }
164
- ]
165
- });
166
-
167
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
public/js/admin/base.js ADDED
@@ -0,0 +1,207 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ Responsive Menu JS file.
3
+ Safe to Copy
4
+ **/
5
+
6
+ jQuery(function($) {
7
+
8
+ /* --> File Upload Options */
9
+ $(':file').filestyle({
10
+ icon: false,
11
+ buttonName: 'btn btn-primary btn-rm',
12
+ placeholder: 'No file'
13
+ });
14
+ /* <-- End File Upload Options */
15
+
16
+ /* --> Image Upload Options */
17
+ var custom_uploader;
18
+
19
+ $(document).on('click', '.image_button', function(e) {
20
+ e.preventDefault();
21
+ window.imgFor = $(this).attr('for');
22
+ //If the uploader object has already been created, reopen the dialog
23
+ if (custom_uploader) {
24
+ custom_uploader.open();
25
+ return;
26
+ }
27
+ //Extend the wp.media object
28
+ custom_uploader = wp.media.frames.file_frame = wp.media({
29
+ title: 'Choose Image',
30
+ button: {
31
+ text: 'Choose Image',
32
+ id: 'test'
33
+ },
34
+ multiple: false
35
+ });
36
+
37
+ //When a file is selected, grab the URL and set it as the text field's value
38
+ custom_uploader.on('select', function () {
39
+ attachment = custom_uploader.state().get('selection').first().toJSON();
40
+ $('#' + window.imgFor).val(attachment.url);
41
+ });
42
+
43
+ //Open the uploader dialog
44
+ custom_uploader.open();
45
+ });
46
+ /* <-- End Image Upload Options */
47
+
48
+ /* --> Scroll to Option */
49
+ $(document).on('click', '.scroll-to-option', function(e) {
50
+ e.preventDefault();
51
+ var id_to_scroll_to = $(this).attr('href');
52
+ var parent_panel_id = $(id_to_scroll_to).parents('.tab-pane').attr('id');
53
+ var parent_tab = $('a[href="#' + parent_panel_id + '"]').parent('li');
54
+
55
+ $('tr').removeClass('option-highlight');
56
+ $('ul.nav-tabs li').removeClass('active');
57
+ parent_tab.addClass('active');
58
+
59
+ $('#responsive-menu-current-page').val(parent_panel_id);
60
+
61
+ $('.tab-content .tab-pane').removeClass('active').removeClass('in');
62
+
63
+ $('#' + parent_panel_id).addClass('active').addClass('in');
64
+
65
+ $('html, body').animate({
66
+ scrollTop: $(id_to_scroll_to).offset().top - 50
67
+ }, 1000);
68
+
69
+ $(id_to_scroll_to).closest('tr').addClass('option-highlight');
70
+ });
71
+ /* <-- End Scroll to Option */
72
+
73
+ /* --> Filter Options */
74
+ $(document).on('keyup', '#filter-options', function() {
75
+ var search_query = $(this).val();
76
+ $('#options-area').css('width', '99%');
77
+ $('.nav-tabs, #banner-area, .top-submit-buttons').hide();
78
+
79
+ if(search_query) {
80
+ $('.tab-pane').show().css('opacity', '1');
81
+ $('.panel-body small').css('display', 'block');
82
+
83
+ $('.control-label').closest('tr').hide();
84
+ $('.control-label').each(function() {
85
+ if ($(this).text().toLowerCase().indexOf(search_query.toLowerCase()) >= 0) {
86
+ $(this).closest('tr').show();
87
+ }
88
+ });
89
+
90
+ $('#options-area .table-bordered').each(function() {
91
+
92
+ var visible_rows = $(this).children('tbody').children('tr').filter(function() {
93
+ return $(this).css('display') == 'table-row';
94
+ });
95
+
96
+ if(visible_rows.length > 0) {
97
+ $(this).parents('.panel').show();
98
+ } else {
99
+ $(this).parents('.panel').hide();
100
+ }
101
+ });
102
+
103
+ } else {
104
+ $('.tab-pane').css('display', '').css('opacity', '');
105
+ $('.control-label').closest('tr').show();
106
+ $('.nav-tabs, #banner-area, .panel, .top-submit-buttons').show();
107
+ $('#options-area').css('width', '');
108
+ $('.panel-body small').css('display', '');
109
+ }
110
+ });
111
+ /* <-- End Filter Options */
112
+
113
+ /* --> Navigation Tabs */
114
+ $(document).on('click', '.nav-tabs li a', function() {
115
+ var tab_name = $(this).attr('href').replace('#', '');
116
+ $('#responsive-menu-current-page').val(tab_name);
117
+
118
+ $('.guide-active').removeClass('guide-active');
119
+ switch(tab_name) {
120
+ case 'sub-menus':
121
+ $('#guide-submenu-container').addClass('guide-active');
122
+ break;
123
+ case 'menu':
124
+ $('#guide-menu-container').addClass('guide-active');
125
+ break;
126
+ case 'button':
127
+ $('#guide-button-container').addClass('guide-active');
128
+ break;
129
+ case 'container':
130
+ $('#guide-container-container').addClass('guide-active');
131
+ break;
132
+ }
133
+ });
134
+ /* <-- End Navigation Tabs */
135
+
136
+ /* --> Trigger Types */
137
+ $('#responsive-menu-button-trigger-type').selectize({
138
+ plugins: ['remove_button'],
139
+ options: [
140
+ {
141
+ value:'click',
142
+ text:'Click'
143
+ },
144
+ {
145
+ value:'mouseover',
146
+ text:'Hover'
147
+ }
148
+ ]
149
+ });
150
+ /* <-- End Trigger Types */
151
+
152
+ /* --> Keyboard Shortcuts */
153
+ $('.keyboard-shortcuts').selectize({
154
+ plugins: ['remove_button'],
155
+ options: [
156
+ {
157
+ value:27,
158
+ text:'Esc'
159
+ },
160
+ {
161
+ value:13,
162
+ text:'Enter'
163
+ },
164
+ {
165
+ value:32,
166
+ text:'Space'
167
+ },
168
+ {
169
+ value:37,
170
+ text:'Left'
171
+ },
172
+ {
173
+ value:38,
174
+ text:'Up'
175
+ },
176
+ {
177
+ value:39,
178
+ text:'Right'
179
+ },
180
+ {
181
+ value:40,
182
+ text:'Down'
183
+ }
184
+ ]
185
+ });
186
+ /* <-- End Keyboard Shortcuts */
187
+
188
+ /* --> Menu Order Scripts */
189
+ $(document).on('click', '.menu-order-option-switch', function() {
190
+ var siblings = $(this).siblings('input.orderable-item');
191
+ if(siblings.val() != 'on') {
192
+ siblings.val('on');
193
+ $(this).addClass('menu-order-option-switch-on');
194
+ } else {
195
+ siblings.val('');
196
+ $(this).removeClass('menu-order-option-switch-on');
197
+ }
198
+ });
199
+
200
+ $('#menu-sortable').sortable({
201
+ revert: true
202
+ });
203
+
204
+ $('#sortable, .draggable').disableSelection();
205
+ /* <-- End Menu Order Scripts */
206
+
207
+ });
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://responsive.menu/donate
4
  Tags: responsive, menu, responsive menu, mobile menu, wordpress responsive menu, wp responsive menu, tablet menu, hamburger menu, hamburger, mobile, tablet, 3 lines, 3 line, three line, three lines
5
  Requires at least: 3.6
6
  Tested up to: 4.8
7
- Stable tag: 3.1.7
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -96,21 +96,35 @@ To view our FAQ, please go to <a href="https://responsive.menu/faq">https://resp
96
  == Screenshots ==
97
 
98
  1. Animated Screencast
99
-
100
  2. Example Front End Menu Button
101
-
102
  3. Front End Expanded Menu with Background Image
103
-
104
  4. Alternative Example Front End Expanded Menu with Background Image
105
-
106
  5. Alternative Example Front End Expanded Menu with Background Image
107
-
108
  6. Alternative Example Front End Expanded Menu with Background Image
109
-
110
- 7. Fully customisable Admin Screen
 
 
 
 
 
 
 
111
 
112
  == Changelog ==
113
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  = 3.1.7 (22nd September 2017) =
115
  * **Requires PHP 5.4**
116
  * Added depth padding side option
4
  Tags: responsive, menu, responsive menu, mobile menu, wordpress responsive menu, wp responsive menu, tablet menu, hamburger menu, hamburger, mobile, tablet, 3 lines, 3 line, three line, three lines
5
  Requires at least: 3.6
6
  Tested up to: 4.8
7
+ Stable tag: 3.1.8
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
96
  == Screenshots ==
97
 
98
  1. Animated Screencast
 
99
  2. Example Front End Menu Button
 
100
  3. Front End Expanded Menu with Background Image
 
101
  4. Alternative Example Front End Expanded Menu with Background Image
 
102
  5. Alternative Example Front End Expanded Menu with Background Image
 
103
  6. Alternative Example Front End Expanded Menu with Background Image
104
+ 7. Admin Initial Setup Section
105
+ 8. Admin Container Section
106
+ 9. Admin Menu Section
107
+ 10. Admin Sub Menus Section
108
+ 11. Admin Button Section
109
+ 12. Admin Technical Section
110
+ 13. Admin Advanced Section
111
+ 14. Admin Header Bar Section
112
+ 15. Admin Desktop Menu Section
113
 
114
  == Changelog ==
115
 
116
+ = 3.1.8 (26th October 2017) =
117
+ * **Requires PHP 5.4**
118
+ * Added a new dark admin theme
119
+ * Updated the old light admin theme
120
+ * Added a "hide pro options" button to remove some of the clutter
121
+ * Improved UI interface
122
+ * Made the Word Wrap option a free feature
123
+ * Change database option value type to LONGTEXT to accept longer values
124
+ * Fixed bug with Enable Gestures option - Pro
125
+ * Complete overhaul of the Desktop Menu options including Mega Menus and more - Pro
126
+ * Added vw and vh sizing units - Pro
127
+
128
  = 3.1.7 (22nd September 2017) =
129
  * **Requires PHP 5.4**
130
  * Added depth padding side option
responsive-menu.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin Name: Responsive Menu
5
  Plugin URI: https://responsive.menu
6
  Description: Highly Customisable Responsive Menu Plugin for WordPress
7
- Version: 3.1.7
8
  Author: Peter Featherstone
9
  Text Domain: responsive-menu
10
  Author URI: https://peterfeatherstone.com
4
  Plugin Name: Responsive Menu
5
  Plugin URI: https://responsive.menu
6
  Description: Highly Customisable Responsive Menu Plugin for WordPress
7
+ Version: 3.1.8
8
  Author: Peter Featherstone
9
  Text Domain: responsive-menu
10
  Author URI: https://peterfeatherstone.com
views/admin/alerts.html.twig CHANGED
@@ -1,3 +1,8 @@
 
 
 
 
 
1
  {% if alert %}
2
  {% for type, msg in alert %}
3
  <div class="alert alert-{{ type }} alert-dismissible" role="alert">
@@ -21,4 +26,4 @@
21
  {% endif %}
22
  </div>
23
  {% endfor %}
24
- {% endif %}
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
  {% if alert %}
7
  {% for type, msg in alert %}
8
  <div class="alert alert-{{ type }} alert-dismissible" role="alert">
26
  {% endif %}
27
  </div>
28
  {% endfor %}
29
+ {% endif %}
views/admin/banners.html.twig CHANGED
@@ -1,15 +1,19 @@
 
 
 
 
 
1
  <div id="upgrade-banner">
2
- <div id="upgrade-banner-title">Upgrade today to unlock the following features:</div>
3
  <ul>
4
- <li><span class="glyphicon glyphicon-star"></span>Font Awesome Icon Support</li>
5
- <li><span class="glyphicon glyphicon-star"></span>Opacity Option for all Colours</li>
6
- <li><span class="glyphicon glyphicon-star"></span>15+ Button Animations</li>
7
- <li><span class="glyphicon glyphicon-star"></span>Create a Desktop Menu and style</li>
8
- <li><span class="glyphicon glyphicon-star"></span>Create a Header Bar and style</li>
9
- <li><span class="glyphicon glyphicon-star"></span>Keyboard shortcuts</li>
10
- <li><span class="glyphicon glyphicon-star"></span>Touch gestures</li>
11
- <li><span class="glyphicon glyphicon-star"></span>Auto-show menu on page load</li>
12
- <li><span class="glyphicon glyphicon-star"></span>Preview Changes</li>
13
  <li>And much more</li>
14
  </ul>
15
  <a target="_blank" href="https://responsive.menu/pricing/?utm_source=free-plugin&utm_medium=banner&utm_campaign=free-plugin-banner" class="button">Upgrade Now</a>
@@ -20,9 +24,49 @@
20
  <a target="_blank" href="https://responsive.menu/docs" class="button">View Docs</a>
21
  </div>
22
 
23
- <div class="key-container">
24
- <a href="https://responsive.menu/pricing/?utm_source=free-plugin&utm_medium=keys&utm_campaign=free-plugin-keys" target="_blank">
25
- <div class="key key-pro"><span>PRO</span>Only available in Pro version</div>
26
- <div class="key key-semi-pro"><span>SEMI PRO</span>Fully unlocked in Pro version</div>
27
- </a>
28
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
  <div id="upgrade-banner">
7
+ <div id="upgrade-banner-title">Upgrade today to unlock the following features</div>
8
  <ul>
9
+ <li>Desktop & Mega Menu</li>
10
+ <li>Header Bar</li>
11
+ <li>15+ Button Animations</li>
12
+ <li>FontAwesome and GlyphIcon Support</li>
13
+ <li>Keyboard Shortcuts</li>
14
+ <li>Touch gestures</li>
15
+ <li>Colour Opacity</li>
16
+ <li>Preview Changes</li>
 
17
  <li>And much more</li>
18
  </ul>
19
  <a target="_blank" href="https://responsive.menu/pricing/?utm_source=free-plugin&utm_medium=banner&utm_campaign=free-plugin-banner" class="button">Upgrade Now</a>
24
  <a target="_blank" href="https://responsive.menu/docs" class="button">View Docs</a>
25
  </div>
26
 
27
+ <div id="guide-banner">
28
+ <div id="guide-title">
29
+ Mini Admin Guide<br />
30
+ <small>Hover the items to find their sections</small>
31
+ </div>
32
+ <div id="guide-wrapper">
33
+ <a href="#responsive-menu-button-click-animation" class="scroll-to-option">
34
+ <div id="guide-button-container" class="guide-helper-container{% if current_page() == 'button' %} guide-active{% endif %}">
35
+ <div class="guide-helper">Button</div>
36
+ <div id="guide-button-wrapper" class="guide-wrapper">
37
+ <div class="guide-button-line"></div>
38
+ <div class="guide-button-line"></div>
39
+ <div class="guide-button-line"></div>
40
+ </div>
41
+ </div>
42
+ </a>
43
+ <a href="#responsive-menu-menu-width" class="scroll-to-option">
44
+ <div id="guide-container-container" class="guide-helper-container{% if current_page() == 'container' %} guide-active{% endif %}">
45
+ <div id="guide-helper-container" class="guide-helper">Container</div>
46
+ <div id="guide-container-wrapper" class="guide-wrapper">
47
+ <div class="guide-menu-text">Title</div>
48
+ <a href="#responsive-menu-menu-depth" class="scroll-to-option">
49
+ <div id="guide-menu-container" class="guide-helper-container{% if current_page() == 'menu' %} guide-active{% endif %}">
50
+ <div class="guide-helper">Menu</div>
51
+ <div id="guide-menu-wrapper" class="guide-wrapper">
52
+ <div class="guide-menu-item">Menu Item</div>
53
+ <div class="guide-menu-item">Menu Item</div>
54
+ <a href="#responsive-menu-arrow-position" class="scroll-to-option">
55
+ <div id="guide-submenu-container" class="guide-helper-container{% if current_page() == 'sub-menus' %} guide-active{% endif %}">
56
+ <div class="guide-helper guide-helper-submenus">Sub Menus</div>
57
+ <div id="guide-submenu-wrapper" class="guide-wrapper">
58
+ <div class="guide-menu-item guide-submenu-item">Sub Menu Item</div>
59
+ <div class="guide-menu-item guide-submenu-item">Sub Menu Item</div>
60
+ </div>
61
+ </div>
62
+ </a>
63
+ </div>
64
+ </div>
65
+ </a>
66
+ <div class="guide-menu-text">Additional Content</div>
67
+ <div class="guide-menu-text">Search</div>
68
+ </div>
69
+ </div>
70
+ </a>
71
+ </div>
72
+ </div>
views/admin/macros.html.twig CHANGED
@@ -1,9 +1,18 @@
 
 
 
 
 
 
 
1
  {% macro percentage_units(name, value) %}
2
  <select id='responsive-menu-{{ name|replace({'_': '-'}) }}' class='selectpicker show-tick is-unit' name='menu[{{ name }}]'>
3
  <option value='%' selected='selected'>%</option>
4
  <option value='px' disabled data-subtext='[PRO]'>px -</option>
5
  <option value='em' disabled data-subtext='[PRO]'>em -</option>
6
  <option value='rem' disabled data-subtext='[PRO]'>rem -</option>
 
 
7
  </select>
8
  {% endmacro %}
9
 
@@ -13,6 +22,8 @@
13
  <option value='%' disabled data-subtext='[PRO]'>% -</option>
14
  <option value='em' disabled data-subtext='[PRO]'>em -</option>
15
  <option value='rem' disabled data-subtext='[PRO]'>rem -</option>
 
 
16
  </select>
17
  {% endmacro %}
18
 
@@ -102,7 +113,7 @@
102
  <div class='input-group'>
103
  <input type='text' class='form-control' id='responsive-menu-{{ name|replace({'_': '-'}) }}' name='menu[{{ name }}]' value='{{ value }}' />
104
  <span class='input-group-btn'>
105
- <button type='button' class='image_button btn btn-primary' for='responsive-menu-{{ name|replace({'_': '-'}) }}'>Upload Image</button>
106
  </span>
107
  </div>
108
  {% endmacro %}
@@ -113,8 +124,8 @@
113
 
114
  {% macro row(name, title, type, options, errors, class='', pro='', select_type='', unit_type='', sub_title='', unit='', choices=[], sub_sub_title='') %}
115
  {% import _self as macros %}
116
- <tr{% if errors[name] %} class='danger'{% endif %}>
117
- <td class='well col-md-3'>
118
  {{ macros.label(name, title) }}
119
  {% if sub_title %}
120
  <div class='sub-text'>{{ sub_title|raw }}</div>
@@ -123,13 +134,7 @@
123
  <div class='sub_sub_title'><br />{{ sub_sub_title|raw }}</div>
124
  {% endif %}
125
  </td>
126
- <td{% if pro %} class='{{ pro }}'{% endif %}>
127
- {% if pro == 'pro' %}
128
- <div class='responsive-menu-pro-overlay'>
129
- <a href='https://responsive.menu/pricing/?utm_source=free-plugin&utm_medium=option&utm_campaign=free-plugin-option-upgrade'
130
- target='_blank'>Click to upgrade now to use</a>
131
- </div>
132
- {% endif %}
133
  {% if type == 'checkbox' %}
134
  {{ macros.checkbox(name, options[name]) }}
135
  {% elseif type == 'colour' %}
@@ -162,13 +167,19 @@
162
  'right': 'Right'
163
  } %}
164
  {{ macros.select(name, options[name], choices) }}
165
- {% elseif select_type == 'position' %}
166
  {% set choices = {
167
- 'fixed': 'Fixed',
168
- 'absolute': 'Absolute',
169
- 'relative': 'Relative'
170
  } %}
171
  {{ macros.select(name, options[name], choices) }}
 
 
 
 
 
 
172
  {% elseif select_type == 'animation' %}
173
  {{ macros.animation_select(name, options[name]) }}
174
  {% elseif select_type == 'depth' %}
@@ -196,6 +207,12 @@
196
  '_top': 'Full Window Body'
197
  } %}
198
  {{ macros.select(name, options[name], choices) }}
 
 
 
 
 
 
199
  {% elseif select_type == 'custom' %}
200
  {{ macros.select(name, options[name], choices) }}
201
  {% elseif select_type == 'button_animation' %}
@@ -211,4 +228,14 @@
211
  {% endif %}
212
  </td>
213
  </tr>
 
 
 
 
 
 
 
 
 
 
214
  {% endmacro %}
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ NOT Safe to Copy
4
+
5
+ Do Not Copy
6
+ #}
7
+
8
  {% macro percentage_units(name, value) %}
9
  <select id='responsive-menu-{{ name|replace({'_': '-'}) }}' class='selectpicker show-tick is-unit' name='menu[{{ name }}]'>
10
  <option value='%' selected='selected'>%</option>
11
  <option value='px' disabled data-subtext='[PRO]'>px -</option>
12
  <option value='em' disabled data-subtext='[PRO]'>em -</option>
13
  <option value='rem' disabled data-subtext='[PRO]'>rem -</option>
14
+ <option value='vw' disabled data-subtext='[PRO]'>vw -</option>
15
+ <option value='vh' disabled data-subtext='[PRO]'>vh -</option>
16
  </select>
17
  {% endmacro %}
18
 
22
  <option value='%' disabled data-subtext='[PRO]'>% -</option>
23
  <option value='em' disabled data-subtext='[PRO]'>em -</option>
24
  <option value='rem' disabled data-subtext='[PRO]'>rem -</option>
25
+ <option value='vw' disabled data-subtext='[PRO]'>vw -</option>
26
+ <option value='vh' disabled data-subtext='[PRO]'>vh -</option>
27
  </select>
28
  {% endmacro %}
29
 
113
  <div class='input-group'>
114
  <input type='text' class='form-control' id='responsive-menu-{{ name|replace({'_': '-'}) }}' name='menu[{{ name }}]' value='{{ value }}' />
115
  <span class='input-group-btn'>
116
+ <button type='button' class='image_button btn btn-primary btn-rm' for='responsive-menu-{{ name|replace({'_': '-'}) }}'>Upload Image</button>
117
  </span>
118
  </div>
119
  {% endmacro %}
124
 
125
  {% macro row(name, title, type, options, errors, class='', pro='', select_type='', unit_type='', sub_title='', unit='', choices=[], sub_sub_title='') %}
126
  {% import _self as macros %}
127
+ <tr class="{% if errors[name] %} danger {% endif %} {% if pro == 'pro' %} pro-row {% endif %}" >
128
+ <td class='col-left col-md-3'>
129
  {{ macros.label(name, title) }}
130
  {% if sub_title %}
131
  <div class='sub-text'>{{ sub_title|raw }}</div>
134
  <div class='sub_sub_title'><br />{{ sub_sub_title|raw }}</div>
135
  {% endif %}
136
  </td>
137
+ <td class='col-right {% if pro %} {{ pro }}{% endif %}'>
 
 
 
 
 
 
138
  {% if type == 'checkbox' %}
139
  {{ macros.checkbox(name, options[name]) }}
140
  {% elseif type == 'colour' %}
167
  'right': 'Right'
168
  } %}
169
  {{ macros.select(name, options[name], choices) }}
170
+ {% elseif select_type == 'left_right_with_none' %}
171
  {% set choices = {
172
+ '': 'None',
173
+ 'left': 'Left',
174
+ 'right': 'Right'
175
  } %}
176
  {{ macros.select(name, options[name], choices) }}
177
+ {% elseif select_type == 'position' %}
178
+ <select id='responsive-menu-{{ name|replace({'_': '-'}) }}' class='selectpicker show-tick' name='menu[{{ name }}]'>
179
+ <option data-subtext='Will stay in position as you scroll down the page.' value='fixed' {% if options[name] == 'fixed' %}selected='selected'{% endif %}>Fixed</option>
180
+ <option data-subtext='Will disappear as you scroll down the page.' value='absolute' {% if options[name] == 'absolute' %}selected='selected'{% endif %}>Absolute</option>
181
+ <option data-subtext='Will stay in a specific position on your page.' value='relative' {% if options[name] == 'Fixed' %}selected='selected'{% endif %} >Relative</option>
182
+ </select>
183
  {% elseif select_type == 'animation' %}
184
  {{ macros.animation_select(name, options[name]) }}
185
  {% elseif select_type == 'depth' %}
207
  '_top': 'Full Window Body'
208
  } %}
209
  {{ macros.select(name, options[name], choices) }}
210
+ {% elseif select_type == 'theme' %}
211
+ {% set choices = {
212
+ 'dark': 'Dark',
213
+ 'light': 'Light'
214
+ } %}
215
+ {{ macros.select(name, options[name], choices) }}
216
  {% elseif select_type == 'custom' %}
217
  {{ macros.select(name, options[name], choices) }}
218
  {% elseif select_type == 'button_animation' %}
228
  {% endif %}
229
  </td>
230
  </tr>
231
+ {% endmacro %}
232
+
233
+ {% macro header(title, section, url=false) %}
234
+ <div class='panel-body'>
235
+ {{ title }}
236
+ {% if url %}
237
+ <a class="docs" href="https://responsive.menu/docs/{{ url }}" target="_blank">Docs</a>
238
+ {% endif %}
239
+ <small>{{ section }}</small>
240
+ </div>
241
  {% endmacro %}
views/admin/main.html.twig CHANGED
@@ -1,17 +1,60 @@
1
- <div class='container-fluid'>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  <form class='form-horizontal form-inline' id='responsive-menu-form' action='' method='post' enctype='multipart/form-data'>
3
  {{ csrf() }}
4
  {% include 'admin/alerts.html.twig' %}
5
  {% include 'admin/tabs.html.twig' %}
 
 
 
 
 
 
 
 
 
6
  <div id='options-area'>
7
- <div id="filter-options-container">
8
- <label for="filter-options">Filter Options</label>
9
- <input type="search" class="form-control" name="filter-options" id="filter-options" placeholder="Start typing to filter options" />
 
 
 
 
10
  </div>
11
  {% include 'admin/options.html.twig' %}
12
- <input type='hidden' id='responsive-menu-current-page' name='responsive-menu-current-page' value="{{ current_page() }}" />
13
- <button type='button' id='responsive-menu-preview' name='responsive-menu-preview' class='btn btn-default'>Preview Changes</button>
14
- <button type='submit' name='responsive-menu-submit' class='btn btn-primary'>Update Options</button>
 
 
 
 
 
 
 
 
 
 
 
 
15
  </div><!--
16
  --><div id='banner-area'>
17
  {% include 'admin/banners.html.twig' %}
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ NOT Safe to Copy
4
+
5
+ Do Not Copy
6
+ #}
7
+
8
+ {% if hide_pro_options() == 'yes' %}
9
+ <style>
10
+ .nav > li.pro-tab,
11
+ .fully-pro-container,
12
+ .responsive-menu-preview,
13
+ .pro-row {
14
+ display: none;
15
+ }
16
+ </style>
17
+ {% endif %}
18
+
19
+ <div id="responsive-menu-admin" class='container-fluid'>
20
  <form class='form-horizontal form-inline' id='responsive-menu-form' action='' method='post' enctype='multipart/form-data'>
21
  {{ csrf() }}
22
  {% include 'admin/alerts.html.twig' %}
23
  {% include 'admin/tabs.html.twig' %}
24
+ <div class="col-md-3 text-right top-submit-buttons">
25
+ <button type='button' name='responsive-menu-preview' class='btn btn-rm btn-default responsive-menu-preview'>
26
+ Preview Changes
27
+ <span class='label label-danger'>Pro</span>
28
+ </button>
29
+ <button type='submit' name='responsive-menu-submit' class='btn btn-rm btn-primary'>
30
+ Update Options
31
+ </button>
32
+ </div>
33
  <div id='options-area'>
34
+ <div class='panel panel-default' id='filter-options-container'>
35
+ <div class='panel-body'><span class="glyphicon glyphicon-search"></span>Filter Options</div>
36
+ <table class='table table-hover'>
37
+ <td class='well col-md-3'>
38
+ <input type="search" class="form-control" name="filter-options" id="filter-options" placeholder="Start typing to filter options" />
39
+ </td>
40
+ </table>
41
  </div>
42
  {% include 'admin/options.html.twig' %}
43
+ <div class="row">
44
+ <div class="col-md-8">
45
+ <input type='hidden' id='responsive-menu-current-page' name='responsive-menu-current-page' value='{{ current_page() }}' />
46
+ <button type='button' name='responsive-menu-preview' class='btn btn-rm btn-default responsive-menu-preview'>
47
+ Preview Changes
48
+ <span class='label label-danger'>Pro</span>
49
+ </button>
50
+ <button type='submit' name='responsive-menu-submit' class='btn btn-rm btn-primary'>Update Options</button>
51
+ </div>
52
+ <div class="col-md-4 text-right">
53
+ <label id="hide-pro-options-label">
54
+ Hide Pro Options <input type="checkbox" name="hide-pro-options" id="hide-pro-options" {% if hide_pro_options() == 'yes' %}checked="checked"{% endif %} />
55
+ </label>
56
+ </div>
57
+ </div>
58
  </div><!--
59
  --><div id='banner-area'>
60
  {% include 'admin/banners.html.twig' %}
views/admin/options.html.twig CHANGED
@@ -1,29 +1,36 @@
 
 
 
 
 
 
 
1
  <div class="tab-content">
2
  <div id="initial-setup" class="tab-pane fade{% if current_page() == 'initial-setup' %} in active{% endif %}">
3
  {% include 'admin/sections/initial-setup.html.twig' %}
4
  </div>
 
 
 
5
  <div id="menu" class="tab-pane fade{% if current_page() == 'menu' %} in active{% endif %}">
6
  {% include 'admin/sections/menu.html.twig' %}
7
  </div>
8
- <div id="button" class="tab-pane fade{% if current_page() == 'button' %} in active{% endif %}">
9
- {% include 'admin/sections/button.html.twig' %}
10
- </div>
11
  <div id="sub-menus" class="tab-pane fade{% if current_page() == 'sub-menus' %} in active{% endif %}">
12
  {% include 'admin/sections/sub-menus.html.twig' %}
13
  </div>
 
 
 
14
  <div id="technical" class="tab-pane fade{% if current_page() == 'technical' %} in active{% endif %}">
15
  {% include 'admin/sections/technical.html.twig' %}
16
  </div>
17
- <div id="custom-css" class="tab-pane fade{% if current_page() == 'custom-css' %} in active{% endif %}">
18
- {% include 'admin/sections/custom-css.html.twig' %}
19
- </div>
20
  <div id="header-bar" class="tab-pane fade{% if current_page() == 'header-bar' %} in active{% endif %}">
21
  {% include 'admin/sections/header-bar.html.twig' %}
22
  </div>
23
- <div id="single-menu" class="tab-pane fade{% if current_page() == 'single-menu' %} in active{% endif %}">
24
- {% include 'admin/sections/single-menu.html.twig' %}
25
  </div>
26
- <div id="import-export" class="tab-pane fade{% if current_page() == 'import-export' %} in active{% endif %}">
27
- {% include 'admin/sections/import-export.html.twig' %}
28
  </div>
29
  </div>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ NOT Safe to Copy
4
+
5
+ Do Not Copy
6
+ #}
7
+
8
  <div class="tab-content">
9
  <div id="initial-setup" class="tab-pane fade{% if current_page() == 'initial-setup' %} in active{% endif %}">
10
  {% include 'admin/sections/initial-setup.html.twig' %}
11
  </div>
12
+ <div id="container" class="tab-pane fade{% if current_page() == 'container' %} in active{% endif %}">
13
+ {% include 'admin/sections/container.html.twig' %}
14
+ </div>
15
  <div id="menu" class="tab-pane fade{% if current_page() == 'menu' %} in active{% endif %}">
16
  {% include 'admin/sections/menu.html.twig' %}
17
  </div>
 
 
 
18
  <div id="sub-menus" class="tab-pane fade{% if current_page() == 'sub-menus' %} in active{% endif %}">
19
  {% include 'admin/sections/sub-menus.html.twig' %}
20
  </div>
21
+ <div id="button" class="tab-pane fade{% if current_page() == 'button' %} in active{% endif %}">
22
+ {% include 'admin/sections/button.html.twig' %}
23
+ </div>
24
  <div id="technical" class="tab-pane fade{% if current_page() == 'technical' %} in active{% endif %}">
25
  {% include 'admin/sections/technical.html.twig' %}
26
  </div>
 
 
 
27
  <div id="header-bar" class="tab-pane fade{% if current_page() == 'header-bar' %} in active{% endif %}">
28
  {% include 'admin/sections/header-bar.html.twig' %}
29
  </div>
30
+ <div id="desktop-menu" class="tab-pane fade{% if current_page() == 'desktop-menu' %} in active{% endif %}">
31
+ {% include 'admin/sections/desktop-menu.html.twig' %}
32
  </div>
33
+ <div id="advanced" class="tab-pane fade{% if current_page() == 'advanced' %} in active{% endif %}">
34
+ {% include 'admin/sections/advanced.html.twig' %}
35
  </div>
36
  </div>
views/admin/sections/advanced.html.twig ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ {% import 'admin/macros.html.twig' as macros %}
7
+
8
+ {% set section = 'Advanced' %}
9
+
10
+ <div class='panel panel-default'>
11
+ {{ macros.header('Animation Speeds', section, '/advanced-setup/advanced/#animation-speeds') }}
12
+ <table class='table table-bordered table-hover'>
13
+ {{ macros.row('animation_speed', 'Animation Speed', 'input', options, errors, '', '', '', '', 'Specify the speed at which the container slides in and sub menus open among other things.', 's') }}
14
+ {{ macros.row('transition_speed', 'Transition Speed', 'input', options, errors, '', '', '', '', 'Specify the speed at which background colours transition from dormant to active or hover states.', 's') }}
15
+ </table>
16
+ </div>
17
+
18
+ <div class='panel panel-default'>
19
+ {{ macros.header('Technical', section, '/advanced-setup/advanced/#technical') }}
20
+ <table class='table table-bordered table-hover'>
21
+ {{ macros.row('shortcode', 'Use Shortcode?', 'checkbox', options, errors, '', '', '', '', 'Please place ' ~ shortcode ~ ' in your files to use. Full documentation can be found <a href="https://responsive.menu/docs/advanced-setup/shortcode/" target="_blank">here</a>') }}
22
+ {{ macros.row('mobile_only', 'Show on mobile devices only?', 'checkbox', options, errors, '', 'pro', '', '', 'This will make it not a responsive menu but a "mobile menu". No HTML, CSS or JavaScript will be output unless the user is on a mobile specific device.') }}
23
+ {{ macros.row('show_menu_on_page_load', 'Show Menu on Page Load', 'checkbox', options, errors, '', 'pro', '', '', 'This will mean the menu container will show as opened and the button will be set to active on each page load.') }}
24
+ {{ macros.row('menu_adjust_for_wp_admin_bar', 'Adjust for WP Admin Bar', 'checkbox', options, errors, '', 'pro', '', '', 'If you use the WP Admin bar when logged in, this will bring the various elements down so they are not hidden behind it.') }}
25
+ {{ macros.row('menu_disable_scrolling', 'Disable Background Scrolling', 'checkbox', options, errors, '', 'pro', '', '', 'When the menu is open the background of the page cannot be scrolled.', '', '', 'Please ensure your theme follows WordPress theme development guidelines for this to work. Specifically that the html tag includes the language_attributes() function call.') }}
26
+ </table>
27
+ </div>
28
+
29
+ <div class='panel panel-default fully-pro-container'>
30
+ {{ macros.header('Page Overlay', section, '/advanced-setup/advanced/#page-overlay') }}
31
+ <table class='table table-bordered table-hover'>
32
+ {{ macros.row('menu_overlay', 'Enable', 'checkbox', options, errors, '', 'pro', '', '', 'When the menu is open the page will have an overlay covering all but the opened menu and button.') }}
33
+ {{ macros.row('menu_overlay_colour', 'Colour', 'colour', options, errors, '', 'pro', '', '', 'Set the colour of the page overlay when enabled.', '', '', 'Works nicely with a slight transparency.') }}
34
+ </table>
35
+ </div>
36
+
37
+ <div class='panel panel-default fully-pro-container'>
38
+ {{ macros.header('Custom CSS', section, '/advanced-setup/advanced/#custom-css') }}
39
+ <table class='table table-bordered table-hover'>
40
+ {{ macros.row('custom_css', 'Custom CSS', 'textarea', options, errors, '', 'pro', '', '', 'You can place any Custom CSS you want here. Very useful if you want to make minor tweaks to some margins, paddings or colours or even for whole new layouts or designs.', '', '', 'Accepts any valid CSS rules, including media queries.') }}
41
+ </table>
42
+ </div>
views/admin/sections/button.html.twig CHANGED
@@ -1,88 +1,95 @@
 
 
 
 
 
1
  {% import 'admin/macros.html.twig' as macros %}
2
 
 
 
3
  <div class='panel panel-default'>
4
- <div class='panel-body'>Animation<small>Button</small></div>
5
  <table class='table table-bordered table-hover'>
6
- {{ macros.row('button_click_animation', 'Type', 'select', options, errors, '', 'semi-pro', 'button_animation', '', 'To see all animations in action please visit <a href="https://jonsuh.com/hamburgers/" target="_blank">this page</a>.') }}
7
- {{ macros.row('button_trigger_type', 'Trigger Types', 'selectize', options, errors, '', 'semi-pro', '', '', 'Only click is available in the Free version.') }}
8
- {{ macros.row('button_position_type', 'Positioning', 'select', options, errors, '', '', 'position') }}
9
- {{ macros.row('button_push_with_animation', 'Push Button with Menu', 'checkbox', options, errors) }}
10
  </table>
11
  </div>
12
 
13
  <div class='panel panel-default'>
14
- <div class='panel-body'>Location<small>Button</small></div>
15
  <table class='table table-bordered table-hover'>
16
- {{ macros.row('button_distance_from_side', 'Distance from Side', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
17
- {{ macros.row('button_left_or_right', 'Side', 'select', options, errors, '', '', 'left_right') }}
18
- {{ macros.row('button_top', 'Distance from Top', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
 
19
  </table>
20
  </div>
21
 
22
  <div class='panel panel-default'>
23
- <div class='panel-body'>Container Sizing<small>Button</small></div>
24
  <table class='table table-bordered table-hover'>
25
- {{ macros.row('button_height', 'Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
26
- {{ macros.row('button_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
27
  </table>
28
  </div>
29
 
30
  <div class='panel panel-default'>
31
- <div class='panel-body'>Line Sizing<small>Button</small></div>
32
  <table class='table table-bordered table-hover'>
33
- {{ macros.row('button_line_height', 'Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
34
- {{ macros.row('button_line_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
35
- {{ macros.row('button_line_margin', 'Margin', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
36
  </table>
37
  </div>
38
 
39
  <div class='panel panel-default'>
40
- <div class='panel-body'>Background Colours<small>Button</small></div>
41
  <table class='table table-bordered table-hover'>
42
- {{ macros.row('button_background_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
43
- {{ macros.row('button_background_colour_hover', 'Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
44
- {{ macros.row('button_background_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro') }}
45
- {{ macros.row('button_transparent_background', 'Transparent Background', 'checkbox', options, errors) }}
46
  </table>
47
  </div>
48
 
49
  <div class='panel panel-default'>
50
- <div class='panel-body'>Line Colours<small>Button</small></div>
51
  <table class='table table-bordered table-hover'>
52
- {{ macros.row('button_line_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
53
- {{ macros.row('button_line_colour_hover', 'Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
54
- {{ macros.row('button_line_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro') }}
55
  </table>
56
  </div>
57
 
58
  <div class='panel panel-default'>
59
- <div class='panel-body'>Title<small>Button</small></div>
60
  <table class='table table-bordered table-hover'>
61
- {{ macros.row('button_title', 'Text', 'input', options, errors) }}
62
- {{ macros.row('button_title_open', 'Opened Text', 'input', options, errors) }}
63
- {{ macros.row('button_text_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
64
- {{ macros.row('button_title_position', 'Alignment', 'select', options, errors, '', '', 'side') }}
65
- {{ macros.row('button_font', 'Font', 'input', options, errors) }}
66
- {{ macros.row('button_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
67
- {{ macros.row('button_title_line_height', 'Line Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
68
  </table>
69
  </div>
70
 
71
  <div class='panel panel-default'>
72
- <div class='panel-body'>Image<small>Button</small></div>
73
  <table class='table table-bordered table-hover'>
74
- {{ macros.row('button_font_icon', 'Font Icon', 'font-icon', options, errors, '', 'pro') }}
75
- {{ macros.row('button_font_icon_when_clicked', 'Font Icon when Clicked', 'font-icon', options, errors, '', 'pro') }}
76
- {{ macros.row('button_image', 'Image', 'image', options, errors) }}
77
- {{ macros.row('button_image_alt', 'Alt Text', 'input', options, errors) }}
78
- {{ macros.row('button_image_when_clicked', 'Image when Clicked', 'image', options, errors) }}
79
- {{ macros.row('button_image_alt_when_clicked', 'Alt Text when Clicked', 'input', options, errors) }}
80
  </table>
81
  </div>
82
 
83
  <div class='panel panel-default'>
84
- <div class='panel-body'>Advanced<small>Button</small></div>
85
  <table class='table table-bordered table-hover'>
86
- {{ macros.row('button_click_trigger', 'Trigger', 'input', options, errors) }}
87
  </table>
88
- </div>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
  {% import 'admin/macros.html.twig' as macros %}
7
 
8
+ {% set section = 'Button' %}
9
+
10
  <div class='panel panel-default'>
11
+ {{ macros.header('Animation', section) }}
12
  <table class='table table-bordered table-hover'>
13
+ {{ macros.row('button_click_animation', 'Type', 'select', options, errors, '', 'semi-pro', 'button_animation', '', 'The plugin comes with many different button animations based on the wonderful work by <a href="https://jonsuh.com" target="_blank">Jon Suh</a>.', '', '', 'To see all animations in action please visit <a href="https://jonsuh.com/hamburgers/" target="_blank">this page</a>.') }}
14
+ {{ macros.row('button_trigger_type', 'Triggers', 'selectize', options, errors, '', 'semi-pro', '', '', 'Specify one or more trigger actions that will set off the button animation and cause the menu container to open.') }}
15
+ {{ macros.row('button_push_with_animation', 'Push Button with Menu', 'checkbox', options, errors, '', '', '', '', 'Force the button to move with the menu container as it opens. Useful if your button is on the same side as your menu container and overlaps when opened.') }}
 
16
  </table>
17
  </div>
18
 
19
  <div class='panel panel-default'>
20
+ {{ macros.header('Location', section, '/basic-setup/button/#animation') }}
21
  <table class='table table-bordered table-hover'>
22
+ {{ macros.row('button_position_type', 'Positioning', 'select', options, errors, '', '', 'position', '', 'Specify how you want the button to stick to your page.', '', '', 'Using relative positioning is useful when combined with the shortcode.') }}
23
+ {{ macros.row('button_left_or_right', 'Side', 'select', options, errors, '', '', 'left_right', '', 'Specify which side of the page you want the button to be displayed on.', '', '', 'Won\'t work if you have Relative positioning set.') }}
24
+ {{ macros.row('button_distance_from_side', 'Distance from Side', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Specify how far across from the side you want the button to display and it\'s unit.', '', '', 'Won\'t work if you have Relative positioning set.') }}
25
+ {{ macros.row('button_top', 'Distance from Top', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Specify how far from the top you want the button to display and it\'s unit.', '', '', 'Won\'t work if you have Relative positioning set.') }}
26
  </table>
27
  </div>
28
 
29
  <div class='panel panel-default'>
30
+ {{ macros.header('Container Sizing', section, '/basic-setup/button/#location') }}
31
  <table class='table table-bordered table-hover'>
32
+ {{ macros.row('button_height', 'Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the height of the buttons containing element and it\'s unit.') }}
33
+ {{ macros.row('button_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the width of the buttons containing element and it\'s unit.') }}
34
  </table>
35
  </div>
36
 
37
  <div class='panel panel-default'>
38
+ {{ macros.header('Line Sizing', section, '/basic-setup/button/#container-sizing') }}
39
  <table class='table table-bordered table-hover'>
40
+ {{ macros.row('button_line_height', 'Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the height of each individual button line and it\'s unit') }}
41
+ {{ macros.row('button_line_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the width of each individual button line and it\'s unit') }}
42
+ {{ macros.row('button_line_margin', 'Margin', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the margin between each individual button line and it\'s unit') }}
43
  </table>
44
  </div>
45
 
46
  <div class='panel panel-default'>
47
+ {{ macros.header('Container Background', section, '/basic-setup/button/#line-sizing') }}
48
  <table class='table table-bordered table-hover'>
49
+ {{ macros.row('button_background_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour of the button container.') }}
50
+ {{ macros.row('button_background_colour_hover', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover background colour of the button container.') }}
51
+ {{ macros.row('button_background_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the active background colour of the button container.') }}
52
+ {{ macros.row('button_transparent_background', 'Transparent Background', 'checkbox', options, errors, '', '', '', '', 'Set the button container to a transparent background.') }}
53
  </table>
54
  </div>
55
 
56
  <div class='panel panel-default'>
57
+ {{ macros.header('Line Colours', section, '/basic-setup/button/#line-colours') }}
58
  <table class='table table-bordered table-hover'>
59
+ {{ macros.row('button_line_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the individual line colour of the button.') }}
60
+ {{ macros.row('button_line_colour_hover', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the individual hover line colour of the button.') }}
61
+ {{ macros.row('button_line_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the individual active line colour of the button.') }}
62
  </table>
63
  </div>
64
 
65
  <div class='panel panel-default'>
66
+ {{ macros.header('Title', section, '/basic-setup/button/#title') }}
67
  <table class='table table-bordered table-hover'>
68
+ {{ macros.row('button_title', 'Text', 'input', options, errors, '', '', '', '', 'Set the button title text.') }}
69
+ {{ macros.row('button_title_open', 'Active Text', 'input', options, errors, '', '', '', '', 'Set the active button title text.') }}
70
+ {{ macros.row('button_text_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the button title colour.') }}
71
+ {{ macros.row('button_title_position', 'Alignment', 'select', options, errors, '', '', 'side', '', 'Set where the button title should be in respect to the button.') }}
72
+ {{ macros.row('button_font', 'Font', 'input', options, errors, '', '', '', '', 'Set the button title font.') }}
73
+ {{ macros.row('button_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the button title font size.') }}
74
+ {{ macros.row('button_title_line_height', 'Line Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the button title line height.') }}
75
  </table>
76
  </div>
77
 
78
  <div class='panel panel-default'>
79
+ {{ macros.header('Image', section, '/basic-setup/button/#image') }}
80
  <table class='table table-bordered table-hover'>
81
+ {{ macros.row('button_image', 'Image', 'image', options, errors, '', '', '', '', 'You can set a button image instead of the default 3 lines if desired.') }}
82
+ {{ macros.row('button_image_alt', 'Alt Text', 'input', options, errors, '', '', '', '', 'Button image alt text.') }}
83
+ {{ macros.row('button_image_when_clicked', 'Active Image', 'image', options, errors, '', '', '', '', 'You can set an active button image instead of the default 3 lines if desired.') }}
84
+ {{ macros.row('button_image_alt_when_clicked', 'Alt Text', 'input', options, errors, '', '', '', '', 'Active button image alt text.') }}
85
+ {{ macros.row('button_font_icon', 'Font Icon', 'font-icon', options, errors, '', 'pro', '', '', 'You can set a font icon instead of the default 3 lines if desired.') }}
86
+ {{ macros.row('button_font_icon_when_clicked', 'Active Font Icon', 'font-icon', options, errors, '', 'pro', '', '', 'You can set an active font icon instead of the default 3 lines if desired.') }}
87
  </table>
88
  </div>
89
 
90
  <div class='panel panel-default'>
91
+ {{ macros.header('Advanced', section, '/basic-setup/button/#advanced') }}
92
  <table class='table table-bordered table-hover'>
93
+ {{ macros.row('button_click_trigger', 'Trigger', 'input', options, errors, '', '', '', '', 'If you don\'t want to use the button that comes with the menu, you can specify your own container trigger here. Any CSS selector is accepted.', '', '', 'For example "#my-custom-trigger"') }}
94
  </table>
95
+ </div>
views/admin/sections/container.html.twig ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ {% import 'admin/macros.html.twig' as macros %}
7
+
8
+ {% set section = 'Container' %}
9
+
10
+ <div class='panel panel-default'>
11
+ {{ macros.header('Ordering', section, '/basic-setup/container/#ordering') }}
12
+ <table class='table table-bordered table-hover'>
13
+ {% include 'admin/sections/modules/container-ordering.html.twig' %}
14
+ </table>
15
+ </div>
16
+
17
+ <div class='panel panel-default'>
18
+ {{ macros.header('Sizing', section, '/basic-setup/container/#sizing') }}
19
+ <table class='table table-bordered table-hover'>
20
+ {{ macros.row('menu_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the width of the container once the button has been pressed.') }}
21
+ {{ macros.row('menu_maximum_width', 'Maximum Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set a maximum width on the container, useful if you don\'t want it to be unnecessarily large on wider screens.') }}
22
+ {{ macros.row('menu_minimum_width', 'Minimum Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set a minimum width on the container, useful if it becomes too small on smaller screens.') }}
23
+ {{ macros.row('menu_auto_height', 'Auto Height', 'checkbox', options, errors, 'semi-pro', 'pro', '', '', 'Makes the container height stop at the end of the last container item, rather than spanning the height of the page.') }}
24
+ </table>
25
+ </div>
26
+
27
+ <div class='panel panel-default'>
28
+ {{ macros.header('Background', section, '/basic-setup/container/#background') }}
29
+ <table class='table table-bordered table-hover'>
30
+ {{ macros.row('menu_background_image', 'Image', 'image', options, errors, '', '', '', '', 'Set a background image which covers the entire container.') }}
31
+ {{ macros.row('menu_container_background_colour', 'Container Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set a background colour for the container that stretches the full height of the screen.') }}
32
+ {{ macros.row('menu_background_colour', 'Inner Container Colour', 'colour', options, errors, '', 'semi-pro', '', '','Set a background colour for the inner container that contains the menu, title, additional HTML, search etc.') }}
33
+ </table>
34
+ </div>
35
+
36
+ <div class='panel panel-default'>
37
+ {{ macros.header('Title Text', section, '/basic-setup/container/#title-text') }}
38
+ <table class='table table-bordered table-hover'>
39
+ {{ macros.row('menu_title_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Specify a font size for the title') }}
40
+ {{ macros.row('menu_title', 'Text', 'input', options, errors, '', '', '', '', 'Set the title text to appear for the title section.') }}
41
+ {{ macros.row('menu_title_link', 'Link', 'input', options, errors, '', '', '', '', 'Specify a link for the title text to navigate to when clicked.') }}
42
+ {{ macros.row('menu_title_link_location', 'Link Target', 'select', options, errors, '', '', 'link_locations', '', 'Determine how the title link opens when clicked on.', '', '', 'You can specify for it to open in the same page, on a new tab or in a completely separate window.') }}
43
+ </table>
44
+ </div>
45
+
46
+ <div class='panel panel-default'>
47
+ {{ macros.header('Title Colours', section, '/basic-setup/container/#title-colours') }}
48
+ <table class='table table-bordered table-hover'>
49
+ {{ macros.row('menu_title_background_colour', 'Background', 'colour', options, errors, '', 'semi-pro', '', '', 'You can specify a separate background colour for the title section if you wish.') }}
50
+ {{ macros.row('menu_title_background_hover_colour', 'Background Hover', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the title section background colour when the mouse is rolled over it.') }}
51
+ {{ macros.row('menu_title_colour', 'Text', 'colour', options, errors, '', 'semi-pro', '', '', 'You can specify a separate text colour for the title section if you wish.') }}
52
+ {{ macros.row('menu_title_hover_colour', 'Text Hover', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the title section text colour when the mouse is rolled over it.') }}
53
+ </table>
54
+ </div>
55
+
56
+ <div class='panel panel-default'>
57
+ {{ macros.header('Title Image', section, '/basic-setup/container/#title-image') }}
58
+ <table class='table table-bordered table-hover'>
59
+ {{ macros.row('menu_title_image', 'Image', 'image', options, errors, '', '', '', '', 'Specify an image to show alongside the title.') }}
60
+ {{ macros.row('menu_title_image_alt', 'Alt Text', 'input', options, errors, '', '', '', '', 'Specify the alt text used with the title image if selected.') }}
61
+ {{ macros.row('menu_title_font_icon', 'Font Icon', 'font-icon', options, errors, '', 'pro', '', '', 'Specify a font icon to go alongside the title.', '', '', 'This will overwrite the image option above.') }}
62
+ </table>
63
+ </div>
64
+
65
+ <div class='panel panel-default'>
66
+ {{ macros.header('Additional Content', section, '/basic-setup/container/#additional-content') }}
67
+ <table class='table table-bordered table-hover'>
68
+ {{ macros.row('menu_additional_content', 'Content', 'textarea', options, errors, '', '', '', '', 'This section allows you to put any custom HTML, shortcodes, text or anything you like to supplement the other container items.<br /><br />It\'s particularly useful if you have social media icons, shopping cart information or anything else custom to your site.', '', '', 'HTML and shortcodes can be used here.') }}
69
+ {{ macros.row('menu_additional_content_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'You can set the text colour of the additional content here if you desire.') }}
70
+ </table>
71
+ </div>
72
+
73
+ <div class='panel panel-default'>
74
+ {{ macros.header('Animation', section, '/basic-setup/container/#animation') }}
75
+ <table class='table table-bordered table-hover'>
76
+ {{ macros.row('menu_appear_from', 'Appear From', 'select', options, errors, '', '', 'side', '', 'This determines which side of the screen the container appears from.') }}
77
+ {{ macros.row('animation_type', 'Type', 'select', options, errors, '', 'semi-pro', 'animation', '', 'You can choose the type of animation used for showing the container. Currently there are 3 options:<ul><li><strong>Slide</strong> - Slides the container in from the location specified above.</li><li><strong>Push</strong> - Used if you want to push your page across when the container slides in.</li><li><strong>Fade</strong> - Used if you want to fade the container in on the page rather than sliding in.</li></ul>') }}
78
+ {{ macros.row('page_wrapper', 'Push Wrapper', 'input', options, errors, '', '', 'animation', '', 'The CSS selector(s) of your page that you want pushed when using the push animation above.', '', '', 'For example #page-wrapper, #wrapper') }}
79
+ </table>
80
+ </div>
81
+
82
+ <div class='panel panel-default'>
83
+ {{ macros.header('Search', section, '/basic-setup/container/#search') }}
84
+ <table class='table table-bordered table-hover'>
85
+ {{ macros.row('menu_search_box_text_colour', 'Text Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the text colour of the search text that a user types in.') }}
86
+ {{ macros.row('menu_search_box_border_colour', 'Border Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour for the search box.') }}
87
+ {{ macros.row('menu_search_box_background_colour', 'Background Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour for the search box.') }}
88
+ {{ macros.row('menu_search_box_text', 'Placeholder Text', 'input', options, errors, '', 'pro', '', '', 'This is the text that shows up in the search box when empty or before someone starts typing as a hint.', '', '', 'For example "Type to search for products..."') }}
89
+ {{ macros.row('menu_search_box_placeholder_colour', 'Placeholder Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the colour of the placeholder text.', '', '', 'This won\'t work in many older browsers.') }}
90
+ </table>
91
+ </div>
92
+
93
+ <div class='panel panel-default'>
94
+ {{ macros.header('Technical', section, '/basic-setup/container/#technical') }}
95
+ <table class='table table-bordered table-hover'>
96
+ {{ macros.row('menu_close_on_body_click', 'Close on Page Clicks', 'checkbox', options, errors, '', '', '', '', 'Set this if you want the container to close whenever you click or tap on the page.') }}
97
+ {{ macros.row('menu_close_on_link_click', 'Close on Link Clicks', 'checkbox', options, errors, '', '', '', '', 'Set this if you want the container to close whenever you click or tap on any of the menu link items.', '', '', 'Useful on one page sites where the page doesn\'t reload.') }}
98
+ {{ macros.row('enable_touch_gestures', 'Enable Touch Gestures', 'checkbox', options, errors, '', 'pro', '', '', 'This will enable you to drag or swipe to close the container on touch devices.') }}
99
+ </table>
100
+ </div>
101
+
102
+ <div class='panel panel-default fully-pro-container'>
103
+ {{ macros.header('Keyboard Shortcuts', section, '/basic-setup/container/#keyboard-shortcuts') }}
104
+ <table class='table table-bordered table-hover'>
105
+ {{ macros.row('keyboard_shortcut_close_menu', 'Close', 'selectize', options, errors, 'keyboard-shortcuts', 'pro', '', '', 'Select some keyboard shortcuts that will close the container when pressed.') }}
106
+ {{ macros.row('keyboard_shortcut_open_menu', 'Open', 'selectize', options, errors, 'keyboard-shortcuts', 'pro', '', '', 'Select some keyboard shortcuts that will open the container when pressed.') }}
107
+ </table>
108
+ </div>
views/admin/sections/custom-css.html.twig DELETED
@@ -1,8 +0,0 @@
1
- {% import 'admin/macros.html.twig' as macros %}
2
-
3
- <div class='panel panel-default'>
4
- <div class='panel-body'>Custom CSS<small>Custom CSS</small></div>
5
- <table class='table table-bordered table-hover'>
6
- {{ macros.row('custom_css', 'Custom CSS', 'textarea', options, errors, '', 'pro') }}
7
- </table>
8
- </div>
 
 
 
 
 
 
 
 
views/admin/sections/desktop-menu.html.twig ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ {% import 'admin/macros.html.twig' as macros %}
7
+
8
+ {% set section = 'Desktop Menu' %}
9
+
10
+ <div class='panel panel-default fully-pro-container'>
11
+ {{ macros.header('Enable', section, '/advanced-setup/desktop-menu/#enable') }}
12
+ <table class='table table-bordered table-hover'>
13
+ {{ macros.row('use_desktop_menu', 'Enable', 'checkbox', options, errors, '', 'pro', '', '', 'Enable the Desktop Menu.') }}
14
+ </table>
15
+ </div>
16
+
17
+ <div class="panel panel-default fully-pro-container">
18
+ {{ macros.header('Settings', section, '/advanced-setup/desktop-menu/#settings') }}
19
+ {% include 'admin/sections/modules/desktop-menu-settings.html.twig' %}
20
+ </div>
21
+
22
+ <div class='panel panel-default fully-pro-container'>
23
+ {{ macros.header('General Setup', section, '/advanced-setup/desktop-menu/#general-setup') }}
24
+ <table class='table table-bordered table-hover'>
25
+ {{ macros.row('desktop_menu_positioning', 'Positioning', 'select', options, errors, '', 'pro', 'position', '', 'Specify how you want the menu to stick to your page.', '', '', 'Using relative positioning is useful when combined with the shortcode.') }}
26
+ {{ macros.row('desktop_menu_width', 'Width', 'input', options, errors, 'has-unit', 'pro', '', 'percentage', 'Set the width of the desktop menu and it\'s unit.', '', '', 'Leave blank to keep the width auto.') }}
27
+ {{ macros.row('desktop_menu_side', 'Side', 'select', options, errors, '', 'pro', 'left_right_with_none', '', 'Set which side of the screen the desktop menu will show on.') }}
28
+ </table>
29
+ </div>
30
+
31
+ <div class='panel panel-default fully-pro-container'>
32
+ {{ macros.header('Top Level Link Colours', section, '/advanced-setup/desktop-menu/#top-level-link-colours') }}
33
+ <table class='table table-bordered table-hover'>
34
+ {{ macros.row('single_menu_item_background_colour', 'Background', 'colour', options, errors, '', 'pro', '', '', 'Set the background colour for the top level menu items.') }}
35
+ {{ macros.row('single_menu_item_background_colour_hover', 'Background Hover', 'colour', options, errors, '', 'pro', '', '', 'Set the background hover colour for the top level menu items.') }}
36
+ {{ macros.row('single_menu_item_link_colour', 'Text', 'colour', options, errors, '', 'pro', '', '', 'Set the text colour for the top level menu items.') }}
37
+ {{ macros.row('single_menu_item_link_colour_hover', 'Text Hover', 'colour', options, errors, '', 'pro', '', '', 'Set the text hover colour for the top level menu items.') }}
38
+ </table>
39
+ </div>
40
+
41
+ <div class='panel panel-default fully-pro-container'>
42
+ {{ macros.header('Sub Menu Link Colours', section, '/advanced-setup/desktop-menu/#sub-menu-link-colours') }}
43
+ <table class='table table-bordered table-hover'>
44
+ {{ macros.row('single_menu_item_submenu_background_colour', 'Background', 'colour', options, errors, '', 'pro', '', '', 'Set the background colour for the sub menu items.') }}
45
+ {{ macros.row('single_menu_item_submenu_background_colour_hover', 'Background Hover', 'colour', options, errors, '', 'pro', '', '', 'Set the background hover colour for the sub menu items.') }}
46
+ {{ macros.row('single_menu_item_submenu_link_colour', 'Text', 'colour', options, errors, '', 'pro', '', '', 'Set the text colour for the sub menu items.') }}
47
+ {{ macros.row('single_menu_item_submenu_link_colour_hover', 'Text Hover', 'colour', options, errors, '', 'pro', '', '', 'Set the text hover colour for the sub menu items.') }}
48
+ </table>
49
+ </div>
50
+
51
+ <div class='panel panel-default'>
52
+ {{ macros.header('Top Level Styling', section, '/advanced-setup/desktop-menu/#top-level-styling') }}
53
+ <table class='table table-bordered table-hover'>
54
+ {{ macros.row('single_menu_font', 'Font', 'input', options, errors, '', 'pro', '', '', 'Set the font for the menu items. The font must already be installed as part of your theme or a browser inbuilt one.', '', '', 'For example "Open Sans"') }}
55
+ {{ macros.row('single_menu_font_size', 'Font size', 'input', options, errors, 'has-unit', 'pro', '', 'pixel', 'Set the text size of the menu items and their unit.') }}
56
+ {{ macros.row('single_menu_height', 'Height', 'input', options, errors, 'has-unit', 'pro', '', 'pixel', 'Set the height of the top level menu items and their unit.') }}
57
+ </table>
58
+ </div>
59
+
60
+ <div class='panel panel-default'>
61
+ {{ macros.header('Sub Menu Styling', section, '/advanced-setup/desktop-menu/#sub-menu-styling') }}
62
+ <table class='table table-bordered table-hover'>
63
+ {{ macros.row('single_menu_submenu_font', 'Font', 'input', options, errors, '', 'pro', '', '', 'Set the font for the sub menu items. The font must already be installed as part of your theme or a browser inbuilt one.', '', '', 'For example "Open Sans"') }}
64
+ {{ macros.row('single_menu_submenu_font_size', 'Font size', 'input', options, errors, 'has-unit', 'pro', '', 'pixel', 'Set the text size of the sub menu items and their unit.') }}
65
+ {{ macros.row('single_menu_submenu_height', 'Height', 'input', options, errors, 'has-unit', 'pro', '', 'pixel', 'Set the height of the sub menu items and their unit.') }}
66
+ </table>
67
+ </div>
views/admin/sections/header-bar.html.twig CHANGED
@@ -1,90 +1,68 @@
 
 
 
 
 
1
  {% import 'admin/macros.html.twig' as macros %}
2
 
3
- <div class='panel panel-default'>
4
- <div class='panel-body'>Initial Setup<small>Header Bar</small></div>
 
 
5
  <table class='table table-bordered table-hover'>
6
- {{ macros.row('use_header_bar', 'Use Header Bar', 'checkbox', options, errors, '', 'pro') }}
7
- {{ macros.row('header_bar_position_type', 'Positioning', 'select', options, errors, '', 'pro', 'position') }}
8
- {{ macros.row('header_bar_breakpoint', 'Breakpoint', 'input', options, errors, '', 'pro', '', '', '', 'px') }}
9
  </table>
10
  </div>
11
 
12
- <div class='panel panel-default'>
13
- <div class='panel-body'>Ordering<small>Header Bar</small></div>
14
- <table class='table table-bordered table-hover' id='header-bar-items-order-container'>
15
- <tr{% if errors.header_bar_items_order %} class='danger'{% endif %}>
16
- <td class='well col-md-3'>
17
- <label for='items_order' class='control-label'>Order of Header Bar Items</label>
18
- <div class='sub-text'>Drag the items to re-order and click to turn them on or off.</div>
19
- </td>
20
- <td class='pro'>
21
- <div class='responsive-menu-pro-overlay'>
22
- <a href='https://responsive.menu/pricing/?utm_source=free-plugin&utm_medium=option&utm_campaign=free-plugin-option-upgrade'
23
- target='_blank'>Click to upgrade now to use</a>
24
- </div>
25
- <ul id='header-bar-sortable'>
26
- {% for key, selected in header_bar_items(options.header_bar_items_order|json_decode) %}
27
- <li class='draggable'>
28
- {{ key|title }}
29
- <input type='text' class='orderable-item' value='{{ selected }}' name='menu[header_bar_items_order][{{ key }}]' />
30
- <div class='menu-order-option-switch{% if selected == 'on' %} menu-order-option-switch-on{% endif %}'></div>
31
- </li>
32
- {% endfor %}
33
- </ul>
34
- </td>
35
- </tr>
36
- </table>
37
- <script>
38
- jQuery(document).ready(function($) {
39
- $('#header-bar-sortable').sortable({
40
- revert: true
41
- });
42
- });
43
- </script>
44
  </div>
45
 
46
- <div class='panel panel-default'>
47
- <div class='panel-body'>Logo<small>Header Bar</small></div>
48
  <table class='table table-bordered table-hover'>
49
- {{ macros.row('header_bar_logo', 'Image', 'image', options, errors, '', 'pro') }}
50
- {{ macros.row('header_bar_logo_alt', 'Alt Text', 'input', options, errors, '', 'pro') }}
51
- {{ macros.row('header_bar_logo_link', 'Link', 'input', options, errors, '', 'pro') }}
52
  </table>
53
  </div>
54
 
55
- <div class='panel panel-default'>
56
- <div class='panel-body'>Title<small>Header Bar</small></div>
57
  <table class='table table-bordered table-hover'>
58
- {{ macros.row('header_bar_title', 'Text', 'input', options, errors, '', 'pro') }}
59
  </table>
60
  </div>
61
 
62
- <div class='panel panel-default'>
63
- <div class='panel-body'>Content<small>Header Bar</small></div>
64
  <table class='table table-bordered table-hover'>
65
- {{ macros.row('header_bar_html_content', 'HTML Content', 'textarea', options, errors, '', 'pro', '', '', 'HTML and shortcodes can be used here.') }}
66
  </table>
67
  </div>
68
 
69
- <div class='panel panel-default'>
70
- <div class='panel-body'>Text<small>Header Bar</small></div>
71
  <table class='table table-bordered table-hover'>
72
- {{ macros.row('header_bar_font', 'Font', 'input', options, errors, '', 'pro') }}
73
- {{ macros.row('header_bar_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'pro', '', 'pixel') }}
74
  </table>
75
  </div>
76
 
77
- <div class='panel panel-default'>
78
- <div class='panel-body'>Sizing<small>Header Bar</small></div>
79
  <table class='table table-bordered table-hover'>
80
- {{ macros.row('header_bar_height', 'Height', 'input', options, errors, 'has-unit', 'pro', '', 'pixel') }}
81
  </table>
82
  </div>
83
 
84
- <div class='panel panel-default'>
85
- <div class='panel-body'>Colours<small>Header Bar</small></div>
86
  <table class='table table-bordered table-hover'>
87
- {{ macros.row('header_bar_background_color', 'Background', 'colour', options, errors, '', 'pro') }}
88
- {{ macros.row('header_bar_text_color', 'Text', 'colour', options, errors, '', 'pro') }}
89
  </table>
90
- </div>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
  {% import 'admin/macros.html.twig' as macros %}
7
 
8
+ {% set section = 'Header Bar' %}
9
+
10
+ <div class='panel panel-default fully-pro-container'>
11
+ {{ macros.header('Initial Setup', section, '/advanced-setup/header-bar/#initial-setup') }}
12
  <table class='table table-bordered table-hover'>
13
+ {{ macros.row('use_header_bar', 'Enabled', 'checkbox', options, errors, '', 'pro', '', '', 'Turning this on will make the Header Bar show on your site automatically.') }}
14
+ {{ macros.row('header_bar_position_type', 'Positioning', 'select', options, errors, '', 'pro', 'position', '', 'Specify how you want the button to stick to your page.', '', '', 'Using relative positioning is useful when combined with the shortcode.') }}
15
+ {{ macros.row('header_bar_breakpoint', 'Breakpoint', 'input', options, errors, '', 'pro', '', '', 'This is the width of the screen in pixels at which point you would like the header bar to start showing.', 'px', '', 'Set to 80000 if you want the menu to appear on all devices.') }}
16
  </table>
17
  </div>
18
 
19
+ <div class='panel panel-default fully-pro-container'>
20
+ {{ macros.header('Ordering', section, '/advanced-setup/header-bar/#header-bar-ordering') }}
21
+ {% include 'admin/sections/modules/header-bar-ordering.html.twig' %}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  </div>
23
 
24
+ <div class='panel panel-default fully-pro-container'>
25
+ {{ macros.header('Logo', section, '/advanced-setup/header-bar/#logo') }}
26
  <table class='table table-bordered table-hover'>
27
+ {{ macros.row('header_bar_logo', 'Image', 'image', options, errors, '', 'pro', '', '', 'Set a logo image for use on the header bar.') }}
28
+ {{ macros.row('header_bar_logo_alt', 'Alt Text', 'input', options, errors, '', 'pro', '', '', 'Set the alt text for the logo image.') }}
29
+ {{ macros.row('header_bar_logo_link', 'Link', 'input', options, errors, '', 'pro', '', '', 'Set a link for the logo image.') }}
30
  </table>
31
  </div>
32
 
33
+ <div class='panel panel-default fully-pro-container'>
34
+ {{ macros.header('Title', section, '/advanced-setup/header-bar/#title') }}
35
  <table class='table table-bordered table-hover'>
36
+ {{ macros.row('header_bar_title', 'Text', 'input', options, errors, '', 'pro', '', '', 'Set a text title for use on the header bar.') }}
37
  </table>
38
  </div>
39
 
40
+ <div class='panel panel-default fully-pro-container'>
41
+ {{ macros.header('Content', section, '/advanced-setup/header-bar/#content') }}
42
  <table class='table table-bordered table-hover'>
43
+ {{ macros.row('header_bar_html_content', 'HTML Content', 'textarea', options, errors, '', 'pro', '', '', 'This section allows you to put any custom HTML, shortcodes, text or anything you like to the header bar.<br /><br />It\'s particularly useful if you have social media icons, shopping cart information or anything else custom to your site.', '', '', 'HTML and shortcodes can be used here.') }}
44
  </table>
45
  </div>
46
 
47
+ <div class='panel panel-default fully-pro-container'>
48
+ {{ macros.header('Text', section, '/advanced-setup/header-bar/#text') }}
49
  <table class='table table-bordered table-hover'>
50
+ {{ macros.row('header_bar_font', 'Font', 'input', options, errors, '', 'pro', '', '', 'Set the font for the header bar text. The font must already be installed as part of your theme or a browser inbuilt one.', '', '', 'For example "Open Sans"') }}
51
+ {{ macros.row('header_bar_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'pro', '', 'pixel', 'Set the text size of the header bar and it\'s unit.') }}
52
  </table>
53
  </div>
54
 
55
+ <div class='panel panel-default fully-pro-container'>
56
+ {{ macros.header('Sizing', section, '/advanced-setup/header-bar/#sizing') }}
57
  <table class='table table-bordered table-hover'>
58
+ {{ macros.row('header_bar_height', 'Height', 'input', options, errors, 'has-unit', 'pro', '', 'pixel', 'Set the height of the header bar and it\'s unit.') }}
59
  </table>
60
  </div>
61
 
62
+ <div class='panel panel-default fully-pro-container'>
63
+ {{ macros.header('Colours', section, '/advanced-setup/header-bar/#colours') }}
64
  <table class='table table-bordered table-hover'>
65
+ {{ macros.row('header_bar_background_color', 'Background', 'colour', options, errors, '', 'pro', '', '', 'Set the background colour for the header bar.') }}
66
+ {{ macros.row('header_bar_text_color', 'Text', 'colour', options, errors, '', 'pro', '', '', 'Set the text colour for the header bar text.') }}
67
  </table>
68
+ </div>
views/admin/sections/import-export.html.twig DELETED
@@ -1,38 +0,0 @@
1
- {% import 'admin/macros.html.twig' as macros %}
2
-
3
- <div class='panel panel-default'>
4
- <div class='panel-body'>Options to allow increased productivity.<small>Import/Export</small></div>
5
- <table class='table table-bordered table-hover'>
6
- <tr>
7
- <td class="well col-md-3">
8
- <label class="control-label">Import</label>
9
- <div class="sub-text">Warning: This is a destructive process and can't be undone.</div>
10
- </td>
11
- <td>
12
- <input type='file' name='responsive-menu-import-file' />
13
- <button name='responsive-menu-import' type='submit' class='btn btn-primary btn-lg pull-right'>Import</button>
14
- </td>
15
- </tr>
16
- <tr>
17
- <td class="well col-md-3">
18
- <label class="control-label">Export</label>
19
- <div class="sub-text">This will create an export file for transferring to other sites.</div>
20
- </td>
21
- <td><button name='responsive-menu-export' type='submit' class='btn btn-primary btn-lg pull-right'>Export</button></td>
22
- </tr>
23
- <tr>
24
- <td class="well col-md-3">
25
- <label class="control-label">Reset</label>
26
- <div class="sub-text">Warning: This is a destructive process and can't be undone.</div>
27
- </td>
28
- <td><button name='responsive-menu-reset' type='submit' class='btn btn-danger btn-lg pull-right'>Reset Options</button></td>
29
- </tr>
30
- <tr>
31
- <td class="well col-md-3">
32
- <label class="control-label">Rebuild database</label>
33
- <div class="sub-text">This will rebuild the database table if you are having issues.</div>
34
- </td>
35
- <td><button name='responsive-menu-rebuild-db' type='submit' class='btn btn-danger btn-lg pull-right'>Rebuild Database</button></td>
36
- </tr>
37
- </table>
38
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
views/admin/sections/initial-setup.html.twig CHANGED
@@ -1,14 +1,17 @@
1
- {% import "admin/macros.html.twig" as macros %}
 
 
 
2
 
3
- <div class="panel panel-default">
4
- <div class="panel-body">
5
- These are the options you probably want to set first to get you started.
6
- You can view the docs for this section by clicking <a href="https://responsive.menu/docs/initial-setup/" target="_blank">here.</a>
7
- <small>Initial Setup</small>
8
- </div>
9
- <table class="table table-bordered table-hover">
10
- {{ macros.row('breakpoint', 'Breakpoint', 'input', options, errors, '', '', '', '', 'This is the width of the screen in pixels at which point you would like the menu to start showing.', 'px', '', 'Set to 80000 if you want the menu to appear on all devices.') }}
11
  {{ macros.row('menu_to_use', 'Menu to Use', 'select', options, errors, '', '', 'custom', '', 'If no options appear here, make sure you have set them up under <strong>Appearance > Menus</strong> or click <a href="' ~ admin_url ~ 'nav-menus.php">here</a>.', '', nav_menus, 'Please note that the <a class="scroll-to-option" href="#responsive-menu-theme-location-menu">Theme Location</a> option will take precedence over this.') }}
12
- {{ macros.row('menu_to_hide', 'CSS Selector of Menu to Hide', 'input', options, errors, '', '', '', '', 'Any legal CSS selection criteria is valid here.', '', '', 'e.g: #nav-menu, nav, .other-nav') }}
13
  </table>
14
- </div>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
 
6
+ {% import 'admin/macros.html.twig' as macros %}
7
+
8
+ {% set section = 'Initial Setup' %}
9
+
10
+ <div class='panel panel-default'>
11
+ {{ macros.header('Initial Setup', section, 'initial-setup') }}
12
+ <table class='table table-bordered table-hover'>
13
+ {{ macros.row('breakpoint', 'Breakpoint', 'input', options, errors, '', '', '', '', 'This is the width of the screen in pixels at which point you would like the hamburger button to start showing.', 'px', '', 'Set to 80000 if you want the menu to appear on all devices.') }}
14
  {{ macros.row('menu_to_use', 'Menu to Use', 'select', options, errors, '', '', 'custom', '', 'If no options appear here, make sure you have set them up under <strong>Appearance > Menus</strong> or click <a href="' ~ admin_url ~ 'nav-menus.php">here</a>.', '', nav_menus, 'Please note that the <a class="scroll-to-option" href="#responsive-menu-theme-location-menu">Theme Location</a> option will take precedence over this.') }}
15
+ {{ macros.row('menu_to_hide', 'Original Menu to Hide', 'input', options, errors, '', '', '', '', 'To hide your current theme menu you need to put the CSS sleAny legal CSS selection criteria is valid here.', '', '', 'For example #nav-menu, nav, .other-nav') }}
16
  </table>
17
+ </div>
views/admin/sections/license.html.twig ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ {% import 'admin/macros.html.twig' as macros %}
7
+
8
+ {% set section = 'License' %}
9
+
10
+ <div class="panel panel-default fully-pro-container">
11
+ {{ macros.header('License', section) }}
12
+ <table class="table table-bordered table-hover">
13
+ {% include 'admin/sections/modules/license-key.html.twig' %}
14
+ </table>
15
+ </div>
views/admin/sections/menu.html.twig CHANGED
@@ -1,241 +1,89 @@
1
- {% import 'admin/macros.html.twig' as macros %}
2
-
3
- <div class='panel panel-default'>
4
- <div class='panel-body'>Here you can turn options on or off and re-arrange them accordingly.<small>Menu</small></div>
5
- <table class='table table-bordered table-hover'>
6
- <tr{% if errors.items_order %} class='danger'{% endif %}>
7
- <td class='well col-md-3'>
8
- <label for='items_order' class='control-label'>Order of Menu Items</label>
9
- <div class='sub-text'>Drag the items to re-order and click to turn them on or off.</div>
10
- </td>
11
- <td>
12
- <ul id='menu-sortable'>
13
- {% for key, selected in options.items_order|json_decode %}
14
- <li class='draggable'>
15
- {{ key|title }}
16
- <input type='text' class='orderable-item' value='{{ selected }}' name='menu[items_order][{{ key }}]' />
17
- <div class='menu-order-option-switch{% if selected == 'on' %} menu-order-option-switch-on{% endif %}'></div>
18
- </li>
19
- {% endfor %}
20
- </ul>
21
- </td>
22
- </tr>
23
- </table>
24
- </div>
25
-
26
- <script>
27
- jQuery(document).ready(function($) {
28
- $(document).on('click', '.menu-order-option-switch', function() {
29
- var siblings = $(this).siblings('input.orderable-item');
30
- if(siblings.val() != 'on') {
31
- siblings.val('on');
32
- $(this).addClass('menu-order-option-switch-on');
33
- } else {
34
- siblings.val('');
35
- $(this).removeClass('menu-order-option-switch-on');
36
- }
37
- });
38
- $('#menu-sortable').sortable({
39
- revert: true
40
- });
41
- $('#sortable, .draggable').disableSelection();
42
- });
43
- </script>
44
-
45
- <div class='panel panel-default'>
46
- <div class='panel-body'>Font Icons<small>Menu</small></div>
47
- <table class='table table-bordered table-hover'>
48
- <tr{% if errors.menu_font_icons %} class='danger'{% endif %}>
49
- <td class='well col-md-3'>
50
- <label for='items_order' class='control-label'>Font Icons</label>
51
- <div class='sub-text'>
52
- Responsive Menu gives you the opportunity to use a selection of brilliant font icon packages or to
53
- create your own custom ones. Currently we support the following:
54
- <ul>
55
- <li><a href='http://fontawesome.io/icons/' target='_blank'>Font Awesome</a></li>
56
- <li><a href='http://getbootstrap.com/components/#glyphicons' target='_blank'>GlyphIcons</a></li>
57
- <li>Custom HTML</li>
58
- </ul>
59
- For a guide on implementing icons in your menu and for more info please visit our dedicated doc page
60
- <a href='https://responsive.menu/docs/basic-setup/font-icons/' target='_blank'>here</a>.
61
- </div>
62
- </td>
63
- <td class='pro'>
64
- <div class='responsive-menu-pro-overlay'>
65
- <a href='https://responsive.menu/pricing/?utm_source=free-plugin&utm_medium=option&utm_campaign=free-plugin-option-upgrade'
66
- target='_blank'>Click to upgrade now to use</a>
67
- </div>
68
- <table id='font-icon-container'>
69
- <tr>
70
- <td style="width: 400px;">Menu Item</td>
71
- <td style="width: 200px;">Icon</td>
72
- <td style="width: 250px;">Type</td>
73
- <td></td>
74
- </tr>
75
- <tr>
76
- <td>
77
- <select class='selectpicker show-tick' name='menu[menu_font_icons][id][]'>
78
- <option value="">Select Menu Item</option>
79
- </select>
80
- </td>
81
- <td>
82
- <input type='text' class='form-control' name='menu[menu_font_icons][icon][]' placeholder='cog' />
83
- </td>
84
- <td>
85
- <select class='selectpicker show-tick' name='menu[menu_font_icons][type][]'>
86
- <option value='font-awesome' selected='selected'>FontAwesome</option>
87
- <option value='glyphicon'>GlyphIcon</option>
88
- <option value='custom'>Custom</option>
89
- </select>
90
- </td>
91
- <td><span class="label-danger label delete-font-icon-row">x</span></td>
92
- </tr>
93
- </table>
94
- <button id='add-font-icon' class='btn btn-primary' type='button'>Add Font Icon</button>
95
- </td>
96
- </tr>
97
- </table>
98
- </div>
99
-
100
- <div class='panel panel-default'>
101
- <div class='panel-body'>Sizing<small>Menu</small></div>
102
- <table class='table table-bordered table-hover'>
103
- {{ macros.row('menu_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
104
- {{ macros.row('menu_maximum_width', 'Maximum Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
105
- {{ macros.row('menu_minimum_width', 'Minimum Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
106
- {{ macros.row('menu_links_height', 'Links Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
107
- {{ macros.row('menu_border_width', 'Border Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
108
- {{ macros.row('menu_auto_height', 'Auto Height', 'checkbox', options, errors, '', 'pro') }}
109
- {{ macros.row('menu_adjust_for_wp_admin_bar', 'Adjust for WP Admin Bar', 'checkbox', options, errors, '', 'pro') }}
110
- </table>
111
- </div>
112
 
113
- <div class='panel panel-default'>
114
- <div class='panel-body'>Background<small>Menu</small></div>
115
- <table class='table table-bordered table-hover'>
116
- {{ macros.row('menu_background_image', 'Image', 'image', options, errors, '', '', '', '', 'Enabling this will deactivate all other colour options') }}
117
- {{ macros.row('menu_background_colour', 'Background Colour', 'colour', options, errors, '', 'semi-pro') }}
118
- {{ macros.row('menu_container_background_colour', 'Container Background Colour', 'colour', options, errors, '', 'semi-pro') }}
119
- {{ macros.row('menu_item_background_colour', 'Link Background Colour', 'colour', options, errors, '', 'semi-pro') }}
120
- {{ macros.row('menu_item_background_hover_colour', 'Link Background Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
121
- {{ macros.row('menu_current_item_background_colour', 'Current Link Background Colour', 'colour', options, errors, '', 'semi-pro') }}
122
- {{ macros.row('menu_current_item_background_hover_colour', 'Current Link Background Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
123
- </table>
124
- </div>
125
 
126
- <div class='panel panel-default'>
127
- <div class='panel-body'>Title<small>Menu</small></div>
128
- <table class='table table-bordered table-hover'>
129
- {{ macros.row('menu_title', 'Text', 'input', options, errors) }}
130
- {{ macros.row('menu_title_link', 'Link', 'input', options, errors) }}
131
- {{ macros.row('menu_title_link_location', 'Link Location', 'select', options, errors, '', '', 'link_locations') }}
132
- {{ macros.row('menu_title_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
133
- {{ macros.row('menu_title_font_icon', 'Font Icon', 'font-icon', options, errors, '', 'pro') }}
134
- {{ macros.row('menu_title_image', 'Image', 'image', options, errors) }}
135
- {{ macros.row('menu_title_image_alt', 'Alt Text', 'input', options, errors) }}
136
- {{ macros.row('menu_title_background_colour', 'Background Colour', 'colour', options, errors, '', 'semi-pro') }}
137
- {{ macros.row('menu_title_background_hover_colour', 'Background Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
138
- {{ macros.row('menu_title_colour', 'Text Colour', 'colour', options, errors, '', 'semi-pro') }}
139
- {{ macros.row('menu_title_hover_colour', 'Text Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
140
- </table>
141
- </div>
142
 
143
- <div class='panel panel-default'>
144
- <div class='panel-body'>Additional Content<small>Menu</small></div>
145
  <table class='table table-bordered table-hover'>
146
- {{ macros.row('menu_additional_content', 'Content', 'textarea', options, errors, '', '', '', '', 'HTML and shortcodes can be used here.') }}
147
- {{ macros.row('menu_additional_content_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
148
  </table>
149
  </div>
150
 
151
  <div class='panel panel-default'>
152
- <div class='panel-body'>Animation<small>Menu</small></div>
153
  <table class='table table-bordered table-hover'>
154
- {{ macros.row('menu_appear_from', 'Appear From', 'select', options, errors, '', '', 'side', '', 'This determines which side the menu slides in from.') }}
155
- {{ macros.row('animation_type', 'Type', 'select', options, errors, '', 'semi-pro', 'animation') }}
156
- {{ macros.row('page_wrapper', 'Push Wrapper', 'input', options, errors, '', '', 'animation', '', 'Only needed if you are using the push animation above.') }}
157
- {{ macros.row('enable_touch_gestures', 'Enable Touch Gestures', 'checkbox', options, errors, '', 'pro', '', '', 'This will enable swiping in and out to open and close the menu.') }}
158
- {{ macros.row('menu_close_on_body_click', 'Close on Body Clicks', 'checkbox', options, errors) }}
159
- {{ macros.row('menu_close_on_link_click', 'Close on Link Clicks', 'checkbox', options, errors) }}
160
  </table>
161
  </div>
162
 
163
  <div class='panel panel-default'>
164
- <div class='panel-body'>Search Box<small>Menu</small></div>
165
  <table class='table table-bordered table-hover'>
166
- {{ macros.row('menu_search_box_text', 'Placeholder Text', 'input', options, errors, '', 'pro') }}
167
- {{ macros.row('menu_search_box_text_colour', 'Text Colour', 'colour', options, errors, '', 'semi-pro') }}
168
- {{ macros.row('menu_search_box_border_colour', 'Border Colour', 'colour', options, errors, '', 'semi-pro') }}
169
- {{ macros.row('menu_search_box_background_colour', 'Background Colour', 'colour', options, errors, '', 'semi-pro') }}
170
- {{ macros.row('menu_search_box_placeholder_colour', 'Placeholder Colour', 'colour', options, errors, '', 'semi-pro') }}
171
  </table>
172
  </div>
173
 
174
  <div class='panel panel-default'>
175
- <div class='panel-body'>Link Borders<small>Menu</small></div>
176
  <table class='table table-bordered table-hover'>
177
- {{ macros.row('menu_item_border_colour', 'Link Border colour', 'colour', options, errors, '', 'semi-pro') }}
178
- {{ macros.row('menu_item_border_colour_hover', 'Link Border Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
179
- {{ macros.row('menu_current_item_border_colour', 'Current Link Border colour', 'colour', options, errors, '', 'semi-pro') }}
180
- {{ macros.row('menu_current_item_border_hover_colour', 'Current Link Border Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
 
181
  </table>
182
  </div>
183
 
184
  <div class='panel panel-default'>
185
- <div class='panel-body'>Link Colours<small>Menu</small></div>
186
  <table class='table table-bordered table-hover'>
187
- {{ macros.row('menu_link_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
188
- {{ macros.row('menu_link_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
189
- {{ macros.row('menu_current_link_colour', 'Current Link Colour', 'colour', options, errors, '', 'semi-pro') }}
190
- {{ macros.row('menu_current_link_hover_colour', 'Current Link Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
191
  </table>
192
  </div>
193
 
194
  <div class='panel panel-default'>
195
- <div class='panel-body'>Styling<small>Menu</small></div>
196
  <table class='table table-bordered table-hover'>
197
- {{ macros.row('menu_font', 'Font', 'input', options, errors) }}
198
- {{ macros.row('menu_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
199
- {{ macros.row('menu_text_alignment', 'Text Alignment', 'select', options, errors, '', '', 'alignment') }}
200
- {{ macros.row('menu_word_wrap', 'Word Wrap', 'checkbox', options, errors, '', 'pro') }}
201
  </table>
202
  </div>
203
 
204
  <div class='panel panel-default'>
205
- <div class='panel-body'>Keyboard Shortcuts<small>Menu</small></div>
206
  <table class='table table-bordered table-hover'>
207
- {{ macros.row('keyboard_shortcut_close_menu', 'Close Menu', 'selectize', options, errors, 'keyboard-shortcuts', 'pro') }}
208
- {{ macros.row('keyboard_shortcut_open_menu', 'Open Menu', 'selectize', options, errors, 'keyboard-shortcuts', 'pro') }}
209
  </table>
210
  </div>
211
 
212
- <div class='panel panel-default'>
213
- <div class='panel-body'>Page Overlay<small>Menu</small></div>
214
  <table class='table table-bordered table-hover'>
215
- {{ macros.row('menu_overlay', 'Enable', 'checkbox', options, errors, '', 'pro') }}
216
- {{ macros.row('menu_overlay_colour', 'Colour', 'colour', options, errors, '', 'pro') }}
 
 
217
  </table>
218
  </div>
219
 
220
  <div class='panel panel-default'>
221
- <div class='panel-body'>Depth<small>Menu</small></div>
222
  <table class='table table-bordered table-hover'>
223
- {{ macros.row('menu_depth', 'Depth', 'select', options, errors, '', '', 'depth', '', 'This determines how many levels deep your sub-menus will go.') }}
224
- {{ macros.row('menu_depth_side', 'Depth Padding Side', 'select', options, errors, '', '', 'left_right') }}
225
- {{ macros.row('menu_depth_0', 'Depth Level Zero Padding', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
226
- {{ macros.row('menu_depth_1', 'Depth Level One Padding', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
227
- {{ macros.row('menu_depth_2', 'Depth Level Two Padding', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
228
- {{ macros.row('menu_depth_3', 'Depth Level Three Padding', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
229
- {{ macros.row('menu_depth_4', 'Depth Level Four Padding', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
230
- {{ macros.row('menu_depth_5', 'Depth Level Five Padding', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage') }}
231
  </table>
232
  </div>
233
-
234
- <div class='panel panel-default'>
235
- <div class='panel-body'>Advanced<small>Menu</small></div>
236
- <table class='table table-bordered table-hover'>
237
- {{ macros.row('menu_disable_scrolling', 'Disable Background Scrolling', 'checkbox', options, errors, '', 'pro', '', '', 'Please ensure your theme follows WordPress theme development guidelines for this to work. Specifically that the html tag includes the language_attributes() function call.') }}
238
- {{ macros.row('show_menu_on_page_load', 'Show Menu on Page Load', 'checkbox', options, errors, '', 'pro') }}
239
- {{ macros.row('theme_location_menu', 'Theme Location Menu', 'select', options, errors, '', '', 'custom', '', '', '', location_menus, 'Please note that this will overwrite the <a class="scroll-to-option" href="#responsive-menu-menu-to-use">Menu to Use</a> option.') }}
240
- </table>
241
- </div>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
 
6
+ {% import 'admin/macros.html.twig' as macros %}
 
 
 
 
 
 
 
 
 
 
 
7
 
8
+ {% set section = 'Menu' %}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
 
10
+ <div class='panel panel-default fully-pro-container'>
11
+ {{ macros.header('Font Icons', section, '/specific-options/font-icons/') }}
12
  <table class='table table-bordered table-hover'>
13
+ {% include 'admin/sections/modules/font-icons.html.twig' %}
 
14
  </table>
15
  </div>
16
 
17
  <div class='panel panel-default'>
18
+ {{ macros.header('Depth', section, '/basic-setup/menu/#depth') }}
19
  <table class='table table-bordered table-hover'>
20
+ {{ macros.row('menu_depth', 'Depth', 'select', options, errors, '', '', 'depth', '', 'This determines how many levels deep your menu will go.') }}
 
 
 
 
 
21
  </table>
22
  </div>
23
 
24
  <div class='panel panel-default'>
25
+ {{ macros.header('Styling', section, '/basic-setup/menu/#styling') }}
26
  <table class='table table-bordered table-hover'>
27
+ {{ macros.row('menu_font', 'Font', 'input', options, errors, '', '', '', '', 'Set the font for the menu items. The font must already be installed as part of your theme or a browser inbuilt one.', '', '', 'For example "Open Sans"') }}
28
+ {{ macros.row('menu_font_size', 'Font Size', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the text size of the menu items and it\'s unit.') }}
29
+ {{ macros.row('menu_links_height', 'Item Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the height of each menu item and it\'s unit.') }}
30
+ {{ macros.row('menu_text_alignment', 'Text Alignment', 'select', options, errors, '', '', 'alignment', '', 'Set the alignment of the text for the menu items.') }}
31
+ {{ macros.row('menu_word_wrap', 'Word Wrap', 'checkbox', options, errors, '', '', '', '', 'Allow the menu items to wrap around to the next line.', '', '', 'Useful if you have particularly long menu item titles.') }}
32
  </table>
33
  </div>
34
 
35
  <div class='panel panel-default'>
36
+ {{ macros.header('Item Borders', section, '/basic-setup/menu/#item-borders') }}
37
  <table class='table table-bordered table-hover'>
38
+ {{ macros.row('menu_border_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the border size for each menu link and it\'s unit.') }}
39
+ {{ macros.row('menu_item_border_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour for each of the menu items.') }}
40
+ {{ macros.row('menu_item_border_colour_hover', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour when the mouse rolls over each menu item.') }}
41
+ {{ macros.row('menu_current_item_border_colour', 'Current Item Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour for the current menu item.') }}
42
+ {{ macros.row('menu_current_item_border_hover_colour', 'Current Item Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour when the mouse rolls over the current menu item.') }}
43
  </table>
44
  </div>
45
 
46
  <div class='panel panel-default'>
47
+ {{ macros.header('Item Text', section, '/basic-setup/menu/#item-text') }}
48
  <table class='table table-bordered table-hover'>
49
+ {{ macros.row('menu_link_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the text colour for each of the menu items.') }}
50
+ {{ macros.row('menu_link_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the text colour when the mouse rolls over each menu item.') }}
51
+ {{ macros.row('menu_current_link_colour', 'Current Item Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the text colour for the current menu item.') }}
52
+ {{ macros.row('menu_current_link_hover_colour', 'Current Item Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the text colour when the mouse rolls over the current menu item.') }}
53
  </table>
54
  </div>
55
 
56
  <div class='panel panel-default'>
57
+ {{ macros.header('Item Background', section, '/basic-setup/menu/#item-background') }}
58
  <table class='table table-bordered table-hover'>
59
+ {{ macros.row('menu_item_background_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour for each of the menu items.') }}
60
+ {{ macros.row('menu_item_background_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour when the mouse rolls over each menu item.') }}
61
+ {{ macros.row('menu_current_item_background_colour', 'Current Item Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour for the current menu item.') }}
62
+ {{ macros.row('menu_current_item_background_hover_colour', 'Current Item Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour when the mouse rolls over the current menu item.') }}
63
  </table>
64
  </div>
65
 
66
  <div class='panel panel-default'>
67
+ {{ macros.header('Descriptions', section, '/basic-setup/menu/#descriptions') }}
68
  <table class='table table-bordered table-hover'>
69
+ {{ macros.row('submenu_descriptions_on', 'Enabled', 'checkbox', options, errors, '', '', '', '', 'If you have set descriptions for your menu items, you can turn them on here.') }}
 
70
  </table>
71
  </div>
72
 
73
+ <div class='panel panel-default fully-pro-container'>
74
+ {{ macros.header('Fade Items In', section, '/basic-setup/menu/#fade-items-in') }}
75
  <table class='table table-bordered table-hover'>
76
+ {{ macros.row('fade_submenus', 'Enabled', 'checkbox', options, errors, '', 'pro', '', '', 'When enabled this makes the indidvidual menu items fade in when the button is clicked rather than simply appearing all at once.') }}
77
+ {{ macros.row('fade_submenus_side', 'Side', 'select', options, errors, '', 'pro', 'left_right', '', 'You can specify which side the items fade in from.') }}
78
+ {{ macros.row('fade_submenus_delay', 'Delay', 'input', options, errors, '', 'pro', '', '', 'Set the delay between each items fade finishing and the next one starting.', 'ms') }}
79
+ {{ macros.row('fade_submenus_speed', 'Speed', 'input', options, errors, '', 'pro', '', '', 'Set the speed at which the menu items fade in.', 'ms') }}
80
  </table>
81
  </div>
82
 
83
  <div class='panel panel-default'>
84
+ {{ macros.header('Advanced', section, '/basic-setup/menu/#advanced') }}
85
  <table class='table table-bordered table-hover'>
86
+ {{ macros.row('theme_location_menu', 'Theme Location Menu', 'select', options, errors, '', '', 'custom', '', 'If you want to use a theme location menu rather than a specific menu then you can select that here.', '', location_menus, 'Please note that this will overwrite the <a class="scroll-to-option" href="#responsive-menu-menu-to-use">Menu to Use</a> option.') }}
87
+ {{ macros.row('custom_walker', 'Custom Walker', 'input', options, errors, '', '', '', '', 'Set your own Walker class for customising the links HTML output.', '', '', 'Warning: For extremely advanced use only') }}
 
 
 
 
 
 
88
  </table>
89
  </div>
 
 
 
 
 
 
 
 
 
views/admin/sections/modules/container-ordering.html.twig ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <tr{% if errors.items_order %} class='danger'{% endif %}>
7
+ <td class='col-left col-md-3'>
8
+ <label for='items_order' class='control-label'>Order of Container Items</label>
9
+ <div class='sub-text'>Drag the container items up and down to re-order how they appear on the front end. You can also click to turn them on or off.</div>
10
+ <div class='sub_sub_title'>Leaving the relevant options empty below will effectively turn them off.</div>
11
+ </td>
12
+ <td class='col-right'>
13
+ <ul id='menu-sortable'>
14
+ {% for key, selected in options.items_order|json_decode %}
15
+ <li class='draggable'>
16
+ {{ key|title }}
17
+ <input type='text' class='orderable-item' value='{{ selected }}' name='menu[items_order][{{ key }}]' />
18
+ <div class='menu-order-option-switch{% if selected == 'on' %} menu-order-option-switch-on{% endif %}'></div>
19
+ </li>
20
+ {% endfor %}
21
+ </ul>
22
+ </td>
23
+ </tr>
views/admin/sections/modules/desktop-menu-settings.html.twig ADDED
@@ -0,0 +1,274 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ {% import 'admin/macros.html.twig' as macros %}
7
+
8
+ <div id="responsive-menu-desktop-menu-container" class="pro-container">
9
+
10
+ {% set desktop_menu_options = options.desktop_menu_options|json_decode %}
11
+ {% set menu_items = menu_items(options) %}
12
+
13
+ <div class="col-md-3 responsive-menu-desktop-menu-links-container">
14
+ {% for item in menu_items %}
15
+
16
+ {% set continue = false %}
17
+
18
+ {% if item.menu_item_parent == '0' %}
19
+ {% set parent_id = item.ID %}
20
+ {% set class = 'responsive-menu-desktop-menu-top-level-label' %}
21
+ {% set continue = true %}
22
+ {% elseif parent_id == item.menu_item_parent %}
23
+ {% set next_level_id = item.ID %}
24
+ {% set class = 'responsive-menu-desktop-menu-sub-menu-label' %}
25
+ {% set continue = true %}
26
+ {% endif %}
27
+
28
+ {# Stop us going too many levels deep #}
29
+ {% if continue %}
30
+ <div
31
+ data-id="{{ item.ID }}"
32
+ class="{% if loop.first %}responsive-menu-desktop-menu-label-active {% endif %}responsive-menu-desktop-menu-label {{ class }}">
33
+ {{ item.title }}
34
+ <div class="pull-right">
35
+ <span class="label label-info">
36
+ {{ desktop_menu_options[item.ID]['width']|default('auto') }}
37
+ </span>
38
+ </div>
39
+ </div>
40
+ {% endif %}
41
+
42
+ {% endfor %}
43
+ </div>
44
+
45
+ <div class="col-md-9 responsive-menu-desktop-menu-options-wrapper">
46
+ {% for item in menu_items %}
47
+ {% set has_title = false %}
48
+ <div class="responsive-menu-desktop-menu-options-container" id="responsive-menu-desktop-menu-option-{{ item.ID }}">
49
+
50
+ <div class="control-label pull-right responsive-menu-desktop-menu-option-badges">
51
+ <span class="label label-info">#{{ item.ID }}</span>
52
+ <span class="label label-info">{{ item.title }}</span>
53
+ </div>
54
+
55
+ {% if item.menu_item_parent == 0 %}
56
+ <div class="responsive-menu-desktop-menu-option-container">
57
+ <label class="control-label">Type</label>
58
+ <div class="sub-text">
59
+ Set the type of menu for this sub menu section.
60
+ </div>
61
+ <select class="selectpicker show-tick desktop-menu-type-switcher" name="menu[desktop_menu_options][{{ item.ID }}][type]">
62
+ {% set types = {
63
+ 'standard': 'Standard',
64
+ 'mega': 'Mega Menu'
65
+ } %}
66
+ {% for value, display in types %}
67
+ <option
68
+ value="{{ value }}"
69
+ {% if desktop_menu_options[item.ID]['type'] == value %}
70
+ selected="selected"
71
+ {% endif %}
72
+ >{{ display }}
73
+ </option>
74
+ {% endfor %}
75
+ </select>
76
+ </div>
77
+ {% endif %}
78
+
79
+ <div class="responsive-menu-desktop-menu-option-container">
80
+ <label class="control-label">Item Width</label>
81
+ <div class="sub-text">
82
+ Our Desktop Menu uses a 12 item width grid. You can specify the width of each item here as a fraction of 12, or keep them auto sized.
83
+ </div>
84
+ <select class="selectpicker show-tick" name="menu[desktop_menu_options][{{ item.ID }}][width]">
85
+ <option
86
+ value="auto"
87
+ {% if desktop_menu_options[item.ID]['width'] == 'auto' %}
88
+ selected="selected"
89
+ {% endif %}
90
+ >Auto
91
+ </option>
92
+ {% for i in range(1, 12) %}
93
+ <option
94
+ value="{{ i }}"
95
+ {% if desktop_menu_options[item.ID]['width'] == i %}
96
+ selected="selected"
97
+ {% endif %}
98
+ >{{ i }}
99
+ </option>
100
+ {% endfor %}
101
+ </select>
102
+ </div>
103
+
104
+ {% if item.menu_item_parent == 0 %}
105
+ <div class="responsive-menu-desktop-menu-option-container responsive-menu-desktop-menu-mega-menu-option{% if desktop_menu_options[item.ID]['type'] != 'mega' %} hidden{% endif %}">
106
+ <div>
107
+ <label class="control-label">Mega Menu Background Colour</label>
108
+ <div class="sub-text">
109
+ Sets the background colour for the mega menu container section.
110
+ </div>
111
+ <input type='text' class='form-control mini-colours' name='menu[desktop_menu_options][{{ item.ID }}][parent_background_colour]' value='{{ desktop_menu_options[item.ID]['parent_background_colour'] }}' />
112
+ </div>
113
+ </div>
114
+
115
+ <div class="responsive-menu-desktop-menu-option-container responsive-menu-desktop-menu-mega-menu-option{% if desktop_menu_options[item.ID]['type'] != 'mega' %} hidden{% endif %}">
116
+ <div>
117
+ <label class="control-label">Mega Menu Background Image</label>
118
+ <div class="sub-text">
119
+ Sets the background image for the mega menu container section.
120
+ </div>
121
+ <div class='input-group'>
122
+ <input type='text' class='form-control'
123
+ name="menu[desktop_menu_options][{{ item.ID }}][parent_background_image]"
124
+ value="{{ desktop_menu_options[item.ID]['parent_background_image'] }}"
125
+ id='responsive-menu-desktop-menu-mega-menu-background-image-{{ item.ID }}' />
126
+ <span class='input-group-btn'>
127
+ <button type='button' class='image_button btn btn-primary btn-rm'
128
+ for='responsive-menu-desktop-menu-mega-menu-background-image-{{ item.ID }}'>Upload Image</button>
129
+ </span>
130
+ </div>
131
+ </div>
132
+ </div>
133
+ {% endif %}
134
+
135
+ {% if item.menu_item_parent != '0' %}
136
+
137
+ <div class="responsive-menu-desktop-menu-option-container">
138
+ <label class="control-label">Widgets</label>
139
+ <div class="sub-text">
140
+ Drag the widgets and re-arrange them below.
141
+ </div>
142
+ <div class="row responsive-menu-desktop-menu-widgets-container">
143
+ <div class="col-md-9">
144
+ <div class="responsive-menu-desktop-menu-option-container-grid" id="responsive-menu-desktop-menu-option-container-grid-{{ item.ID }}">{% if desktop_menu_options[item.ID]['widgets'] %}
145
+ {% set count = 0 %}
146
+ {% for widget in desktop_menu_options[item.ID]['widgets'] %}
147
+ {% for type, value in widget %}
148
+ {% set count = count + 1 %}
149
+ {% if type == 'image' %}
150
+ <div class="responsive-menu-desktop-menu-widget responsive-menu-desktop-menu-image-widget responsive-menu-desktop-menu-widget-{{ item.ID }}">
151
+ <div class="responsive-menu-desktop-menu-widget-header">
152
+ Image <span class="glyphicon glyphicon-remove"></span>
153
+ </div>
154
+ <div class="responsive-menu-desktop-menu-widget-body">
155
+
156
+ <div class='input-group'>
157
+ <input type='text' class='form-control'
158
+ name="menu[desktop_menu_options][{{ item.ID }}][widgets][][image][url]"
159
+ value="{{ value['url'] }}"
160
+ id='responsive-menu-desktop-menu-{{ item.ID }}-{{ count }}' />
161
+ <span class='input-group-btn'>
162
+ <button type='button' class='image_button btn btn-primary btn-rm'
163
+ for='responsive-menu-desktop-menu-{{ item.ID }}-{{ count }}'>Upload Image</button>
164
+ </span>
165
+ </div>
166
+
167
+ </div>
168
+ </div>
169
+ {% elseif type == 'text' %}
170
+ <div class="responsive-menu-desktop-menu-widget responsive-menu-desktop-menu-widget-{{ item.ID }}">
171
+ <div class="responsive-menu-desktop-menu-widget-header">
172
+ Text <span class="glyphicon glyphicon-remove"></span>
173
+ </div>
174
+ <div class="responsive-menu-desktop-menu-widget-body">
175
+ <textarea type="text" name="menu[desktop_menu_options][{{ item.ID }}][widgets][][text][text]">{{ value['text'] }}</textarea>
176
+ </div>
177
+ </div>
178
+ {% elseif type == 'title' %}
179
+ {% set has_title = true %}
180
+ <div class="responsive-menu-desktop-menu-widget responsive-menu-desktop-menu-widget-{{ item.ID }}">
181
+ <div class="responsive-menu-desktop-menu-widget-header">
182
+ Title {{ item.title }}
183
+ <input type='hidden' class='form-control'
184
+ name="menu[desktop_menu_options][{{ item.ID }}][widgets][][title][enabled]"
185
+ value="true" />
186
+ </div>
187
+ </div>
188
+ {% endif %}
189
+ {% endfor %}
190
+
191
+ {% endfor %}
192
+
193
+ {% endif %}
194
+ {% if not has_title %}
195
+ <div class="responsive-menu-desktop-menu-widget responsive-menu-desktop-menu-widget-{{ item.ID }}">
196
+ Title {{ item.title }}
197
+ <div class="responsive-menu-desktop-menu-widget-header">
198
+ <input type='hidden' class='form-control'
199
+ name="menu[desktop_menu_options][{{ item.ID }}][widgets][][title][enabled]"
200
+ value="true" />
201
+ </div>
202
+ </div>
203
+ {% endif %}
204
+ </div>
205
+ </div>
206
+ <div class="col-md-3">
207
+ <div class="responsive-menu-desktop-menu-widget-container" id="responsive-menu-desktop-menu-widget-{{ item.ID }}">
208
+ <div class="responsive-menu-desktop-menu-widget responsive-menu-desktop-menu-image-widget responsive-menu-desktop-menu-widget-{{ item.ID }}">
209
+ <div class="responsive-menu-desktop-menu-widget-header">
210
+ Image <span class="glyphicon glyphicon-remove"></span>
211
+ </div>
212
+ <div class="responsive-menu-desktop-menu-widget-body">
213
+
214
+ <div class='input-group'>
215
+ <input type='text' class='form-control'
216
+ data-name="menu[desktop_menu_options][{{ item.ID }}][widgets][][image][url]"
217
+ data-id='responsive-menu-desktop-menu-{{ item.ID }}' />
218
+ <span class='input-group-btn'>
219
+ <button type='button' class='image_button btn btn-primary btn-rm' for='responsive-menu-desktop-menu-{{ item.ID }}'>Upload Image</button>
220
+ </span>
221
+ </div>
222
+
223
+ </div>
224
+ </div>
225
+ <div class="responsive-menu-desktop-menu-widget responsive-menu-desktop-menu-widget-{{ item.ID }}">
226
+ <div class="responsive-menu-desktop-menu-widget-header">
227
+ Text <span class="glyphicon glyphicon-remove"></span>
228
+ </div>
229
+ <div class="responsive-menu-desktop-menu-widget-body">
230
+ <textarea type="text" data-name="menu[desktop_menu_options][{{ item.ID }}][widgets][][text][text]"></textarea>
231
+ </div>
232
+ </div>
233
+ </div>
234
+ </div>
235
+ </div>
236
+ </div>
237
+ <script>
238
+ jQuery(function($) {
239
+ $(".col-md-3 .responsive-menu-desktop-menu-widget-{{ item.ID }}").draggable({
240
+ connectToSortable: "#responsive-menu-desktop-menu-option-container-grid-{{ item.ID }}",
241
+ helper: "clone",
242
+ revert: "invalid",
243
+ start: function(event, ui) {
244
+ var input = ui.helper.find('input, textarea');
245
+ var image_button = ui.helper.find('button.image_button');
246
+ var current_total_ids = $('input[id^="' + input.data('id') + '"]').length;
247
+ var next_id = current_total_ids + 1;
248
+
249
+ input.attr('name', input.data('name'));
250
+
251
+ if(input.data('id')) {
252
+ input.attr('id', input.data('id') + '-' + next_id);
253
+ }
254
+
255
+ if(image_button) {
256
+ image_button.attr('for', input.data('id') + '-' + next_id);
257
+ }
258
+
259
+ input.data('name', '');
260
+ input.data('id', '');
261
+ }
262
+ });
263
+
264
+ $('#responsive-menu-desktop-menu-option-container-grid-{{ item.ID }}').sortable({
265
+ revert: true
266
+ });
267
+ });
268
+ </script>
269
+ {% endif %}
270
+ </div>
271
+ {% endfor %}
272
+ </div>
273
+ <div class="clearfix"></div>
274
+ </div>
views/admin/sections/modules/font-icons.html.twig ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <tr class='pro-row{% if errors.menu_font_icons %} danger{% endif %}'>
7
+ <td class='col-left col-md-3'>
8
+ <label for='items_order' class='control-label'>Font Icons</label>
9
+ <div class='sub-text'>
10
+ Responsive Menu gives you the opportunity to use a selection of brilliant font icon packages or to
11
+ create your own custom ones. Currently we support the following:
12
+ <ul>
13
+ <li><a href='http://fontawesome.io/icons/' target='_blank'>Font Awesome</a></li>
14
+ <li><a href='http://getbootstrap.com/components/#glyphicons' target='_blank'>GlyphIcons</a></li>
15
+ <li>Custom HTML</li>
16
+ </ul>
17
+ For a guide on implementing icons in your menu and for more info please visit our dedicated doc page
18
+ <a href='https://responsive.menu/docs/basic-setup/font-icons/' target='_blank'>here</a>.
19
+ </div>
20
+ </td>
21
+ <td class='col-right pro'>
22
+ <table id='font-icon-container'>
23
+ <tr>
24
+ <td style="width: 400px;">Menu Item</td>
25
+ <td style="width: 200px;">Icon</td>
26
+ <td style="width: 250px;">Type</td>
27
+ <td></td>
28
+ </tr>
29
+ {% set icons = options.menu_font_icons|json_decode %}
30
+ {% if icons is iterable %}
31
+ {% set icon_list = font_icons(icons) %}
32
+ {% for icon in icon_list %}
33
+ {% if icon.type %}
34
+ <tr>
35
+ <td>
36
+ <select class='selectpicker show-tick' name='menu[menu_font_icons][id][]'>
37
+ <option value="">Select Menu Item</option>
38
+ {% for item in menu_items(options) %}
39
+ <option value='{{ item.ID }}' {% if icon.id == item.ID %}selected='selected'{% endif %}>{{ item.title }}</option>
40
+ {% endfor %}
41
+ </select>
42
+ </td>
43
+ <td>
44
+ <input type='text' class='form-control' value='{{ icon.icon|escape }}' name='menu[menu_font_icons][icon][]' placeholder='fa-cog' />
45
+ </td>
46
+ <td>
47
+ <select class='selectpicker show-tick' name='menu[menu_font_icons][type][]'>
48
+ <option value='font-awesome' {% if icon.type == 'font-awesome' %}selected='selected'{% endif %}>FontAwesome</option>
49
+ <option value='glyphicon' {% if icon.type == 'glyphicon' %}selected='selected'{% endif %}>GlyphIcon</option>
50
+ <option value='custom' {% if icon.type == 'custom' %}selected='selected'{% endif %}>Custom</option>
51
+ </select>
52
+ </td>
53
+ <td><span class="label-danger label delete-font-icon-row">x</span></td>
54
+ </tr>
55
+ {% endif %}
56
+ {% endfor %}
57
+ {% endif %}
58
+ <tr>
59
+ <td>
60
+ <select class='selectpicker show-tick' name='menu[menu_font_icons][id][]'>
61
+ <option value="">Select Menu Item</option>
62
+ {% for item in menu_items(options) %}
63
+ <option value='{{ item.ID }}'>{{ item.title }}</option>
64
+ {% endfor %}
65
+ </select>
66
+ </td>
67
+ <td>
68
+ <input type='text' class='form-control' name='menu[menu_font_icons][icon][]' placeholder='cog' />
69
+ </td>
70
+ <td>
71
+ <select class='selectpicker show-tick' name='menu[menu_font_icons][type][]'>
72
+ <option value='' selected='selected'>Please Select</option>
73
+ <option value='font-awesome'>FontAwesome</option>
74
+ <option value='glyphicon'>GlyphIcon</option>
75
+ <option value='custom'>Custom</option>
76
+ </select>
77
+ </td>
78
+ <td></td>
79
+ </tr>
80
+ </table>
81
+ <button id='add-font-icon' class='btn btn-rm btn-primary' type='button'>Add Font Icon</button>
82
+ </td>
83
+ </tr>
views/admin/sections/modules/header-bar-ordering.html.twig ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <table class='table table-bordered table-hover' id='header-bar-items-order-container'>
7
+ <tr class='pro-row{% if errors.header_bar_items_order %} danger{% endif %}'>
8
+ <td class='col-left col-md-3'>
9
+ <label for='items_order' class='control-label'>Order of Header Bar Items</label>
10
+ <div class='sub-text'>Drag the header bar items left and right to re-order how they appear on the front end. You can also click to turn them on or off.</div>
11
+ <div class='sub_sub_title'>Leaving the relevant options empty below will effectively turn them off.</div>
12
+ </td>
13
+ <td class="col-right pro text-center">
14
+ <ul id='header-bar-sortable'>
15
+ {% for key, selected in header_bar_items(options.header_bar_items_order|json_decode) %}
16
+ <li class='draggable'>
17
+ {{ key|title }}
18
+ <input type='text' class='orderable-item' value='{{ selected }}' name='menu[header_bar_items_order][{{ key }}]' />
19
+ <div class='menu-order-option-switch{% if selected == 'on' %} menu-order-option-switch-on{% endif %}'></div>
20
+ </li>
21
+ {% endfor %}
22
+ </ul>
23
+ </td>
24
+ </tr>
25
+ </table>
views/admin/sections/modules/license-key.html.twig ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <tr>
7
+ <td class='col-left col-md-3'>
8
+ <label for='responsive-menu-pro-license-key' class='control-label'>
9
+ License Key
10
+ </label>
11
+ <div class="sub-text">
12
+ {% if license_type() %}
13
+ <span class='valid-license'>Valid {{ license_type() }}</span>
14
+ {% else %}
15
+ <span class='invalid-license'>Invalid license</span>
16
+ {% endif %}
17
+ {% if not license_type() %}
18
+ <div class="sub_sub_title">
19
+ <br />Don't panic. The plugin will still function 100%, it is only automatic updates that will be affected.<br /><br />
20
+ You can read about troubleshooting license issues <a href="https://responsive.menu/faq/license-activation-issues/" target="_blank">here</a>.
21
+ </div>
22
+ {% endif %}
23
+ </div>
24
+ </td>
25
+ <td class="col-right">
26
+ <div class='input-group'>
27
+ <input type='password' name='responsive-menu-pro-license-key' value='{{ license_key() }}' class='form-control'>
28
+ <span class='input-group-btn'>
29
+ <button type='submit' name='responsive-menu-pro-add-license-key' class='btn btn-primary btn-rm'>Add License Key</button>
30
+ </span>
31
+ </div>
32
+ </td>
33
+ </tr>
views/admin/sections/modules/rebuild.html.twig ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <tr>
7
+ <td class="col-left col-md-3">
8
+ <label class="control-label">Reset Options</label>
9
+ <div class="sub-text">This will reset your plugin options back to their defaults.</div>
10
+ <div class="sub_sub_title">Warning: This is a destructive process and can't be undone.</div>
11
+ </td>
12
+ <td class="col-right text-right">
13
+ <button name='responsive-menu-reset' type='submit' class='btn btn-danger btn-lg btn-rm'>Reset Options</button>
14
+ </td>
15
+ </tr>
16
+ <tr>
17
+ <td class="col-left col-md-3">
18
+ <label class="control-label">Rebuild Database</label>
19
+ <div class="sub-text">This will rebuild the database table if you are having issues.</div>
20
+ <div class="sub_sub_title">Warning: This is a destructive process and can't be undone.</div>
21
+ </td>
22
+ <td class="col-right text-right">
23
+ <button name='responsive-menu-rebuild-db' type='submit' class='btn btn-danger btn-lg btn-rm'>Rebuild Database</button>
24
+ </td>
25
+ </tr>
views/admin/sections/modules/transfer.html.twig ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <tr>
7
+ <td class="col-left col-md-3">
8
+ <label class="control-label">Import</label>
9
+ <div class="sub-text">This will import settings created via the Export process below.</div>
10
+ <div class="sub_sub_title">Warning: This is a destructive process and can't be undone.</div>
11
+ </td>
12
+ <td class="col-right text-right">
13
+ <input type='file' name='responsive-menu-import-file' />
14
+ <button name='responsive-menu-import' type='submit' class='btn btn-primary btn-lg btn-rm'>Import</button>
15
+ </td>
16
+ </tr>
17
+ <tr>
18
+ <td class="col-left col-md-3">
19
+ <label class="control-label">Export</label>
20
+ <div class="sub-text">This will create an export file for transferring to other sites.</div>
21
+ </td>
22
+ <td class="col-right text-right">
23
+ <button name='responsive-menu-export' type='submit' class='btn btn-primary btn-lg btn-rm'>Export</button>
24
+ </td>
25
+ </tr>
views/admin/sections/single-menu.html.twig DELETED
@@ -1,58 +0,0 @@
1
- {% import 'admin/macros.html.twig' as macros %}
2
-
3
- <div class='panel panel-default'>
4
- <div class='panel-body'>Use Single Menu<small>Single Menu</small></div>
5
- <table class='table table-bordered table-hover'>
6
- {{ macros.row('use_single_menu', 'Use Single Menu', 'checkbox', options, errors, '', 'pro', '', '', 'To use this option you must turn the Shortcode option on and use the shortcode in your theme where you want the menu to appear.') }}
7
- </table>
8
- </div>
9
-
10
- <div class='panel panel-default'>
11
- <div class='panel-body'>Top Level Link Colours<small>Single Menu</small></div>
12
- <table class='table table-bordered table-hover'>
13
- {{ macros.row('single_menu_item_background_colour', 'Background', 'colour', options, errors, '', 'pro') }}
14
- {{ macros.row('single_menu_item_background_colour_hover', 'Background Hover', 'colour', options, errors, '', 'pro') }}
15
- {{ macros.row('single_menu_item_link_colour', 'Text', 'colour', options, errors, '', 'pro') }}
16
- {{ macros.row('single_menu_item_link_colour_hover', 'Text Hover', 'colour', options, errors, '', 'pro') }}
17
- </table>
18
- </div>
19
-
20
- <div class='panel panel-default'>
21
- <div class='panel-body'>Sub-Menu Link Colours<small>Single Menu</small></div>
22
- <table class='table table-bordered table-hover'>
23
- {{ macros.row('single_menu_item_submenu_background_colour', 'Background', 'colour', options, errors, '', 'pro') }}
24
- {{ macros.row('single_menu_item_submenu_background_colour_hover', 'Background Hover', 'colour', options, errors, '', 'pro') }}
25
- {{ macros.row('single_menu_item_submenu_link_colour', 'Text', 'colour', options, errors, '', 'pro') }}
26
- {{ macros.row('single_menu_item_submenu_link_colour_hover', 'Text Hover', 'colour', options, errors, '', 'pro') }}
27
- </table>
28
- </div>
29
-
30
- <div class='panel panel-default'>
31
- <div class='panel-body'>Top Level Styling<small>Single Menu</small></div>
32
- <table class='table table-bordered table-hover'>
33
- {{ macros.row('single_menu_font', 'Font', 'input', options, errors, '', 'pro') }}
34
- {{ macros.row('single_menu_font_size', 'Font size', 'input', options, errors, 'has-unit', 'pro', '', 'pixel') }}
35
- </table>
36
- </div>
37
-
38
- <div class='panel panel-default'>
39
- <div class='panel-body'>Sub-Menu Styling<small>Single Menu</small></div>
40
- <table class='table table-bordered table-hover'>
41
- {{ macros.row('single_menu_submenu_font', 'Font', 'input', options, errors, '', 'pro') }}
42
- {{ macros.row('single_menu_submenu_font_size', 'Font size', 'input', options, errors, 'has-unit', 'pro', '', 'pixel') }}
43
- </table>
44
- </div>
45
-
46
- <div class='panel panel-default'>
47
- <div class='panel-body'>Top Level Sizing<small>Single Menu</small></div>
48
- <table class='table table-bordered table-hover'>
49
- {{ macros.row('single_menu_height', 'Height', 'input', options, errors, 'has-unit', 'pro', '', 'pixel') }}
50
- </table>
51
- </div>
52
-
53
- <div class='panel panel-default'>
54
- <div class='panel-body'>Sub-Menu Sizing<small>Single Menu</small></div>
55
- <table class='table table-bordered table-hover'>
56
- {{ macros.row('single_menu_submenu_height', 'Height', 'input', options, errors, 'has-unit', 'pro', '', 'pixel') }}
57
- </table>
58
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
views/admin/sections/sub-menus.html.twig CHANGED
@@ -1,89 +1,92 @@
 
 
 
 
 
1
  {% import 'admin/macros.html.twig' as macros %}
2
 
3
- <div class='panel panel-default'>
4
- <div class='panel-body'>Sub-Menu Trigger Icon<small>Sub Menus</small></div>
5
- <table class='table table-bordered table-hover'>
6
- {{ macros.row('active_arrow_font_icon', 'Active Font Icon', 'font-icon', options, errors, '', 'pro') }}
7
- {{ macros.row('inactive_arrow_font_icon', 'Inactive Font Icon', 'font-icon', options, errors, '', 'pro') }}
8
- {{ macros.row('active_arrow_shape', 'Active Shape', 'input', options, errors) }}
9
- {{ macros.row('inactive_arrow_shape', 'Inactive Shape', 'input', options, errors) }}
10
- {{ macros.row('active_arrow_image', 'Active Image', 'image', options, errors) }}
11
- {{ macros.row('active_arrow_image_alt', 'Alt Text', 'input', options, errors) }}
12
- {{ macros.row('inactive_arrow_image', 'Inactive Image', 'image', options, errors) }}
13
- {{ macros.row('inactive_arrow_image_alt', 'Alt Text', 'input', options, errors) }}
14
- {{ macros.row('arrow_position', 'Position', 'select', options, errors, '', '', 'left_right') }}
15
- </table>
16
- </div>
17
 
18
  <div class='panel panel-default'>
19
- <div class='panel-body'>Sub-Menu Trigger Colours<small>Sub Menus</small></div>
20
  <table class='table table-bordered table-hover'>
21
- {{ macros.row('menu_sub_arrow_shape_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
22
- {{ macros.row('menu_sub_arrow_shape_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
23
- {{ macros.row('menu_sub_arrow_shape_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro') }}
24
- {{ macros.row('menu_sub_arrow_shape_hover_colour_active', 'Active Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
 
 
 
 
 
25
  </table>
26
  </div>
27
 
28
  <div class='panel panel-default'>
29
- <div class='panel-body'>Sub-Menu Trigger Background<small>Sub Menus</small></div>
30
  <table class='table table-bordered table-hover'>
31
- {{ macros.row('menu_sub_arrow_background_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
32
- {{ macros.row('menu_sub_arrow_background_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
33
- {{ macros.row('menu_sub_arrow_background_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro') }}
34
- {{ macros.row('menu_sub_arrow_background_hover_colour_active', 'Active Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
35
  </table>
36
  </div>
37
 
38
  <div class='panel panel-default'>
39
- <div class='panel-body'>Sub-Menu Trigger Border<small>Sub Menus</small></div>
40
  <table class='table table-bordered table-hover'>
41
- {{ macros.row('menu_sub_arrow_border_colour', 'Colour', 'colour', options, errors, '', 'semi-pro') }}
42
- {{ macros.row('menu_sub_arrow_border_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
43
- {{ macros.row('menu_sub_arrow_border_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro') }}
44
- {{ macros.row('menu_sub_arrow_border_hover_colour_active', 'Active Hover Colour', 'colour', options, errors, '', 'semi-pro') }}
45
  </table>
46
  </div>
47
 
48
  <div class='panel panel-default'>
49
- <div class='panel-body'>Sub-Menu Trigger Sizing<small>Sub Menus</small></div>
50
  <table class='table table-bordered table-hover'>
51
- {{ macros.row('submenu_arrow_height', 'Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
52
- {{ macros.row('submenu_arrow_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel') }}
 
 
53
  </table>
54
  </div>
55
 
56
  <div class='panel panel-default'>
57
- <div class='panel-body'>Animations<small>Sub Menus</small></div>
58
  <table class='table table-bordered table-hover'>
59
- {{ macros.row('accordion_animation', 'Use Accordion', 'checkbox', options, errors) }}
60
- {{ macros.row('auto_expand_all_submenus', 'Auto Expand all Sub-Menus', 'checkbox', options, errors) }}
61
- {{ macros.row('auto_expand_current_submenus', 'Auto Expand Current Page Sub-Menus', 'checkbox', options, errors) }}
62
- {{ macros.row('menu_item_click_to_trigger_submenu', 'Make Whole Sub-Menu bar Clickable', 'checkbox', options, errors) }}
63
- {{ macros.row('use_slide_effect', 'Use Slide Effect', 'checkbox', options, errors, '', 'pro', '', '', '<span class="label label-warning">beta</span>') }}
64
  </table>
65
  </div>
66
 
67
  <div class='panel panel-default'>
68
- <div class='panel-body'>Slide Effect Options<small>Sub Menus</small></div>
69
  <table class='table table-bordered table-hover'>
70
- {{ macros.row('slide_effect_back_to_text', 'Back Text', 'input', options, errors, '', 'pro') }}
 
 
 
 
 
 
71
  </table>
72
  </div>
73
 
74
  <div class='panel panel-default'>
75
- <div class='panel-body'>Fade in links<small>Sub Menus</small></div>
76
  <table class='table table-bordered table-hover'>
77
- {{ macros.row('fade_submenus', 'Enabled', 'checkbox', options, errors, '', 'pro') }}
78
- {{ macros.row('fade_submenus_side', 'Side to Fade From', 'select', options, errors, '', 'pro', 'left_right') }}
79
- {{ macros.row('fade_submenus_delay', 'Delay', 'input', options, errors, '', 'pro', '', '', '', 'ms') }}
80
- {{ macros.row('fade_submenus_speed', 'Speed', 'input', options, errors, '', 'pro', '', '', '', 'ms') }}
81
  </table>
82
  </div>
83
 
84
- <div class='panel panel-default'>
85
- <div class='panel-body'>Descriptions<small>Sub Menus</small></div>
86
  <table class='table table-bordered table-hover'>
87
- {{ macros.row('submenu_descriptions_on', 'Enabled', 'checkbox', options, errors, '', '', '', '', 'If you have set descriptions for your menu items, you can turn them on here.') }}
 
88
  </table>
89
- </div>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
  {% import 'admin/macros.html.twig' as macros %}
7
 
8
+ {% set section = 'Sub Menus' %}
 
 
 
 
 
 
 
 
 
 
 
 
 
9
 
10
  <div class='panel panel-default'>
11
+ {{ macros.header('Trigger Icon', section, '/basic-setup/sub-menus/#trigger-icon') }}
12
  <table class='table table-bordered table-hover'>
13
+ {{ macros.row('arrow_position', 'Position', 'select', options, errors, '', '', 'left_right', '', 'Set the side of the menu item that the sub menu trigger will appear.') }}
14
+ {{ macros.row('active_arrow_shape', 'Active Shape', 'input', options, errors, '', '', '', '', 'Set the trigger shape you want to use for the active state. A selection of shapes can be found <a href="https://responsive.menu/html-geometric-shapes/" target="_blank">here</a>.') }}
15
+ {{ macros.row('inactive_arrow_shape', 'Inactive Shape', 'input', options, errors, '', '', '', '', 'Set the trigger shape you want to use for the inactive state. A selection of shapes can be found <a href="https://responsive.menu/html-geometric-shapes/" target="_blank">here</a>.') }}
16
+ {{ macros.row('active_arrow_image', 'Active Image', 'image', options, errors, '', '', '', '', 'You can set an image for your active sub menu trigger instead if you would like. This will take precedence over the shape option above.') }}
17
+ {{ macros.row('active_arrow_image_alt', 'Alt Text', 'input', options, errors, '', '', '', '', 'If you use an image as your active sub menu trigger, you can set it\'s alt text here.') }}
18
+ {{ macros.row('inactive_arrow_image', 'Inactive Image', 'image', options, errors, '', '', '', '', 'You can set an image for your inactive sub menu trigger instead if you would like. This will take precedence over the shape option above.') }}
19
+ {{ macros.row('inactive_arrow_image_alt', 'Alt Text', 'input', options, errors, '', '', '', '', 'If you use an image as your inactive sub menu trigger, you can set it\'s alt text here.') }}
20
+ {{ macros.row('active_arrow_font_icon', 'Active Font Icon', 'font-icon', options, errors, '', 'pro', '', '', 'You can set an icon as your active sub menu trigger instead if you would like. This will take precedence over the image option above.') }}
21
+ {{ macros.row('inactive_arrow_font_icon', 'Inactive Font Icon', 'font-icon', options, errors, '', 'pro', '', '', 'You can set an icon as your inactive sub menu trigger instead if you would like. This will take precedence over the image option above.') }}
22
  </table>
23
  </div>
24
 
25
  <div class='panel panel-default'>
26
+ {{ macros.header('Trigger Sizing', section, '/basic-setup/sub-menus/#trigger-sizing') }}
27
  <table class='table table-bordered table-hover'>
28
+ {{ macros.row('submenu_arrow_height', 'Height', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the height of the menu trigger items and their units.') }}
29
+ {{ macros.row('submenu_arrow_width', 'Width', 'input', options, errors, 'has-unit', 'semi-pro', '', 'pixel', 'Set the width of the menu trigger items and their units.') }}
 
 
30
  </table>
31
  </div>
32
 
33
  <div class='panel panel-default'>
34
+ {{ macros.header('Trigger Colours', section, '/basic-setup/sub-menus/#trigger-colours') }}
35
  <table class='table table-bordered table-hover'>
36
+ {{ macros.row('menu_sub_arrow_shape_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the colour of the sub menu trigger.') }}
37
+ {{ macros.row('menu_sub_arrow_shape_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover colour of the sub menu trigger.') }}
38
+ {{ macros.row('menu_sub_arrow_shape_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the colour of the sub menu trigger when active.') }}
39
+ {{ macros.row('menu_sub_arrow_shape_hover_colour_active', 'Active Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover colour of the sub menu trigger when active.') }}
40
  </table>
41
  </div>
42
 
43
  <div class='panel panel-default'>
44
+ {{ macros.header('Trigger Background', section, '/basic-setup/sub-menus/#trigger-background') }}
45
  <table class='table table-bordered table-hover'>
46
+ {{ macros.row('menu_sub_arrow_background_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour of the sub menu trigger.') }}
47
+ {{ macros.row('menu_sub_arrow_background_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover background colour of the sub menu trigger.') }}
48
+ {{ macros.row('menu_sub_arrow_background_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the background colour of the sub menu trigger when active.') }}
49
+ {{ macros.row('menu_sub_arrow_background_hover_colour_active', 'Active Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover background colour of the sub menu trigger when active.') }}
50
  </table>
51
  </div>
52
 
53
  <div class='panel panel-default'>
54
+ {{ macros.header('Trigger Border', section, '/basic-setup/sub-menus/#trigger-border') }}
55
  <table class='table table-bordered table-hover'>
56
+ {{ macros.row('menu_sub_arrow_border_colour', 'Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour of the sub menu trigger.') }}
57
+ {{ macros.row('menu_sub_arrow_border_hover_colour', 'Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover border colour of the sub menu trigger.') }}
58
+ {{ macros.row('menu_sub_arrow_border_colour_active', 'Active Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the border colour of the sub menu trigger when active.') }}
59
+ {{ macros.row('menu_sub_arrow_border_hover_colour_active', 'Active Hover Colour', 'colour', options, errors, '', 'semi-pro', '', '', 'Set the hover border colour of the sub menu trigger when active.') }}
 
60
  </table>
61
  </div>
62
 
63
  <div class='panel panel-default'>
64
+ {{ macros.header('Padding', section, '/basic-setup/sub-menus/#padding') }}
65
  <table class='table table-bordered table-hover'>
66
+ {{ macros.row('menu_depth_side', 'Side', 'select', options, errors, '', '', 'left_right', '', 'You can set which side of the menu items the padding should be on.') }}
67
+ {{ macros.row('menu_depth_0', 'Top Level', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the padding size of the top level menu items and their unit.') }}
68
+ {{ macros.row('menu_depth_1', 'Child Level 1', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the padding size of the sub menu child level menu items and their unit.') }}
69
+ {{ macros.row('menu_depth_2', 'Child Level 2', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the padding size of the second sub menu child level menu items and their unit.') }}
70
+ {{ macros.row('menu_depth_3', 'Child Level 3', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the padding size of the third sub menu child level menu items and their unit.') }}
71
+ {{ macros.row('menu_depth_4', 'Child Level 4', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the padding size of the fourth sub menu child level menu items and their unit.') }}
72
+ {{ macros.row('menu_depth_5', 'Child Level 5', 'input', options, errors, 'has-unit', 'semi-pro', '', 'percentage', 'Set the padding size of the fifth sub menu child level menu items and their unit.') }}
73
  </table>
74
  </div>
75
 
76
  <div class='panel panel-default'>
77
+ {{ macros.header('Animations', section, '/basic-setup/sub-menus/#animations') }}
78
  <table class='table table-bordered table-hover'>
79
+ {{ macros.row('accordion_animation', 'Use Accordion', 'checkbox', options, errors, '', '', '', '', 'Expanding one sub menu level will close all the others in an accordion style.') }}
80
+ {{ macros.row('auto_expand_all_submenus', 'Auto Expand All Sub Menus', 'checkbox', options, errors, '', '', '', '', 'All sub menus will be opened on page load automatically.') }}
81
+ {{ macros.row('auto_expand_current_submenus', 'Auto Expand Current Page Sub Menus', 'checkbox', options, errors, '', '', '', '', 'All child sub menus of the current parent will be opened on page load automatically.') }}
82
+ {{ macros.row('menu_item_click_to_trigger_submenu', 'Expand Sub Menus on Parent Item Click', 'checkbox', options, errors, '', '', '', '', 'Clicking anywhere on a parent item with sub menu children will trigger the sub menu to open.', '', 'This will disable the links of all parent items.') }}
83
  </table>
84
  </div>
85
 
86
+ <div class='panel panel-default fully-pro-container'>
87
+ {{ macros.header('Slide Effect', section, '/basic-setup/sub-menus/#slide-effect') }}
88
  <table class='table table-bordered table-hover'>
89
+ {{ macros.row('use_slide_effect', 'Enabled', 'checkbox', options, errors, '', 'pro', '', '', 'The slide effect changes the way that sub-menus open and close. Instead of the standard drop-down animation they will slide over the top of eachother as in the demo site <a href="https://demo.responsive.menu/pro-example-one/" target="_blank">here</a>.<br /><br /><span class="label label-warning">beta</span>') }}
90
+ {{ macros.row('slide_effect_back_to_text', 'Back Text', 'input', options, errors, '', 'pro', '', '', 'You can specify the text used for clicking to get back to the previous level when using the slide effect.') }}
91
  </table>
92
+ </div>
views/admin/sections/technical.html.twig CHANGED
@@ -1,29 +1,46 @@
 
 
 
 
 
1
  {% import 'admin/macros.html.twig' as macros %}
2
 
 
 
3
  <div class='panel panel-default'>
4
- <div class='panel-body'>Scripts<small>Technical</small></div>
5
  <table class='table table-bordered table-hover'>
6
- {{ macros.row('external_files', 'Use external files?', 'checkbox', options, errors, '', '', '', '', 'This will create external files for CSS and JavaScript') }}
7
- {{ macros.row('minify_scripts', 'Minify scripts?', 'checkbox', options, errors, '', '', '', '', 'This will minify the CSS and JavaScript output') }}
8
- {{ macros.row('scripts_in_footer', 'Place scripts in footer?', 'checkbox', options, errors, '', '', '', '', 'This will place the JavaScript in the footer') }}
9
- {{ macros.row('remove_fontawesome', 'Remove FontAwesome scripts', 'checkbox', options, errors, '', 'pro', '', '', 'This will stop the plugins FontAwesome scripts from being loaded. Useful if you want to run your own FontAwesome version or already have it installed.') }}
10
- {{ macros.row('remove_bootstrap', 'Remove BootStrap scripts', 'checkbox', options, errors, '', 'pro', '', '', 'This will stop the plugins BootStrap scripts from being loaded. Useful if you want to run your own BootStrap version for GlyphIcons or already have it installed.') }}
11
  </table>
12
  </div>
13
 
14
  <div class='panel panel-default'>
15
- <div class='panel-body'>Menu<small>Technical</small></div>
16
  <table class='table table-bordered table-hover'>
17
- {{ macros.row('custom_walker', 'Custom Walker', 'input', options, errors, '', '', '', '', 'Warning: For extremely advanced use only') }}
18
- {{ macros.row('mobile_only', 'Show on mobile devices only?', 'checkbox', options, errors, '', 'pro', '', '', 'This will make it not a responsive menu but a "mobile menu"') }}
19
- {{ macros.row('shortcode', 'Use Shortcode?', 'checkbox', options, errors, '', '', '', '', 'Please place [responsive_menu] in your files to use. Full documentation can be found <a href="https://responsive.menu/docs/advanced-setup/shortcode/" target="_blank">here</a>') }}
 
 
 
 
 
 
 
 
20
  </table>
21
  </div>
22
 
23
  <div class='panel panel-default'>
24
- <div class='panel-body'>Animation Speeds<small>Technical</small></div>
25
  <table class='table table-bordered table-hover'>
26
- {{ macros.row('animation_speed', 'Animation Speed', 'input', options, errors, '', '', '', '', '', 's') }}
27
- {{ macros.row('transition_speed', 'Transition Speed', 'input', options, errors, '', '', '', '', '', 's') }}
28
- </table>
29
- </div>
 
 
 
 
 
 
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
  {% import 'admin/macros.html.twig' as macros %}
7
 
8
+ {% set section = 'Technical' %}
9
+
10
  <div class='panel panel-default'>
11
+ {{ macros.header('Theme', section, '/advanced-setup/technical/#theme') }}
12
  <table class='table table-bordered table-hover'>
13
+ {{ macros.row('admin_theme', 'Admin Theme', 'select', options, errors, '', '', 'theme', '', 'You can change the admin layout colour scheme to match your preference.') }}
 
 
 
 
14
  </table>
15
  </div>
16
 
17
  <div class='panel panel-default'>
18
+ {{ macros.header('Scripts', section, '/advanced-setup/technical/#scripts') }}
19
  <table class='table table-bordered table-hover'>
20
+ {{ macros.row('external_files', 'Use External Files', 'checkbox', options, errors, '', '', '', '', 'Create external files for the CSS and JavaScript created by this plugin.') }}
21
+ {{ macros.row('minify_scripts', 'Minify Scripts', 'checkbox', options, errors, '', '', '', '', 'Minify the CSS and JavaScript created by this plugin.') }}
22
+ {{ macros.row('scripts_in_footer', 'Place Scripts In Footer', 'checkbox', options, errors, '', '', '', '', 'Place the JavaScript created by this plugin in the footer.') }}
23
+ </table>
24
+ </div>
25
+
26
+ <div class='panel panel-default fully-pro-container'>
27
+ {{ macros.header('Remove Scripts', section, '/advanced-setup/technical/#remove-scripts') }}
28
+ <table class='table table-bordered table-hover'>
29
+ {{ macros.row('remove_fontawesome', 'Remove FontAwesome Scripts', 'checkbox', options, errors, '', 'pro', '', '', 'Stop this plugins FontAwesome scripts from being loaded. Useful if you want to run your own FontAwesome version or already have it installed.') }}
30
+ {{ macros.row('remove_bootstrap', 'Remove BootStrap Scripts', 'checkbox', options, errors, '', 'pro', '', '', 'Stop this plugins BootStrap scripts from being loaded. Useful if you want to run your own BootStrap version for GlyphIcons or already have it installed.') }}
31
  </table>
32
  </div>
33
 
34
  <div class='panel panel-default'>
35
+ {{ macros.header('Transfer', section, '/advanced-setup/technical/#transfer') }}
36
  <table class='table table-bordered table-hover'>
37
+ {% include 'admin/sections/modules/transfer.html.twig' %}
38
+ </table>
39
+ </div>
40
+
41
+ <div class='panel panel-default'>
42
+ {{ macros.header('Rebuild', section, '/advanced-setup/technical/#rebuild') }}
43
+ <table class='table table-bordered table-hover'>
44
+ {% include 'admin/sections/modules/rebuild.html.twig' %}
45
+ </table>
46
+ </div>
views/admin/tabs.html.twig CHANGED
@@ -1,13 +1,17 @@
1
- <ul class='nav nav-tabs'>
2
- <li{% if current_page() == 'initial-setup' %} class='active'{% endif %} id="initial-setup-tab"><a data-toggle='tab' href='#initial-setup'>Initial Setup <span class='badge'>3</span></a></li>
3
- <li{% if current_page() == 'menu' %} class='active'{% endif %} id="menu-tab"><a data-toggle='tab' href='#menu'>Menu <span class='badge'>62</span></a></li>
4
- <li{% if current_page() == 'button' %} class='active'{% endif %} id="button-tab"><a data-toggle='tab' href='#button'>Button <span class='badge'>33</span></a></li>
5
- <li{% if current_page() == 'sub-menus' %} class='active'{% endif %} id="sub-menus-tab"><a data-toggle='tab' href='#sub-menus'>Sub Menus <span class='badge'>34</span></a></li>
6
- <li{% if current_page() == 'technical' %} class='active'{% endif %} id="technical-tab"><a data-toggle='tab' href='#technical'>Technical <span class='badge'>10</span></a></li>
7
- <li{% if current_page() == 'import-export' %} class='active'{% endif %} id="import-export-tabZz"><a data-toggle='tab' href='#import-export'>Import/Export <span class='badge'>4</span></a></li>
8
- <li{% if current_page() == 'custom-css' %} class='active'{% endif %} id="custom-css-tab"><a data-toggle='tab' href='#custom-css'>Custom CSS <span class='badge progress-bar-danger'>Pro</span></a></li>
9
- <li{% if current_page() == 'header-bar' %} class='active'{% endif %} id="header-bar-tab"><a data-toggle='tab' href='#header-bar'>Header Bar <span class='badge progress-bar-danger'>Pro</span></a></li>
10
- <li{% if current_page() == 'single-menu' %} class='active'{% endif %} id="single-menu-tab"><a data-toggle='tab' href='#single-menu'>Single Menu <span class='badge progress-bar-danger'>Pro</span></a></li>
11
- <li class='pull-right'><button type='submit' name='responsive-menu-submit' class='btn btn-primary pull-right'>Update Options</button></li>
12
- <li class='pull-right'><button type='button' id='responsive-menu-preview' name='responsive-menu-preview' class='btn btn-default pull-right'>Preview Changes</button></li>
 
 
 
 
13
  </ul>
1
+ {#
2
+ Responsive Menu Jinja template file.
3
+ Safe to Copy
4
+ #}
5
+
6
+ <ul class='nav nav-tabs col-md-9'>
7
+ <li class='{% if current_page() == 'license' %}active{% endif %}'><a data-toggle='tab' href='#license'>License</a></li>
8
+ <li class='{% if current_page() == 'initial-setup' %}active{% endif %}'><a data-toggle='tab' href='#initial-setup'>Initial Setup</a></li>
9
+ <li class='{% if current_page() == 'container' %}active{% endif %}'><a data-toggle='tab' href='#container'>Container</a></li>
10
+ <li class='{% if current_page() == 'menu' %}active{% endif %}'><a data-toggle='tab' href='#menu'>Menu</a></li>
11
+ <li class='{% if current_page() == 'sub-menus' %}active{% endif %}'><a data-toggle='tab' href='#sub-menus'>Sub Menus</a></li>
12
+ <li class='{% if current_page() == 'button' %}active{% endif %}'><a data-toggle='tab' href='#button'>Button</a></li>
13
+ <li class='{% if current_page() == 'technical' %}active{% endif %}'><a data-toggle='tab' href='#technical'>Technical</a></li>
14
+ <li class='{% if current_page() == 'advanced' %}active{% endif %}'><a data-toggle='tab' href='#advanced'>Advanced</a></li>
15
+ <li class='{% if current_page() == 'header-bar' %}active {% endif %}pro-tab'><a data-toggle='tab' href='#header-bar'>Header Bar<span class='label label-danger'>Pro</span></a></li>
16
+ <li class='{% if current_page() == 'desktop-menu' %}active {% endif %}pro-tab'><a data-toggle='tab' href='#desktop-menu'>Desktop Menu<span class='label label-danger'>Pro</span></a></li>
17
  </ul>