WP Store Locator - Version 2.2

Version Description

Download this release

Release Info

Developer tijmensmit
Plugin Icon 128x128 WP Store Locator
Version 2.2
Comparing to
See all releases

Code changes from version 2.1.2 to 2.2

admin/class-admin.php CHANGED
@@ -61,7 +61,7 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
61
  }
62
 
63
  /**
64
- * Include all the required files.
65
  *
66
  * @since 2.0.0
67
  * @return void
@@ -72,7 +72,7 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
72
  require_once( WPSL_PLUGIN_DIR . 'admin/class-metaboxes.php' );
73
  require_once( WPSL_PLUGIN_DIR . 'admin/class-geocode.php' );
74
  require_once( WPSL_PLUGIN_DIR . 'admin/class-settings.php' );
75
- require_once( WPSL_PLUGIN_DIR . 'admin/upgrade.php' );
76
  }
77
 
78
  /**
@@ -89,8 +89,7 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
89
  }
90
 
91
  /**
92
- * Register a callback function for the settings page
93
- * and check if we need to show the "missing start point" warning.
94
  *
95
  * @since 1.0.0
96
  * @return void
@@ -100,12 +99,12 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
100
  global $current_user, $wpsl_settings;
101
 
102
  if ( ( current_user_can( 'install_plugins' ) ) && is_admin() ) {
103
- if ( ( empty( $wpsl_settings['zoom_latlng'] ) && !get_user_meta( $current_user->ID, 'wpsl_disable_location_warning' ) ) ) {
104
  add_action( 'wp_ajax_disable_location_warning', array( $this, 'disable_location_warning_ajax' ) );
105
- add_action( 'admin_footer', array( $this, 'show_location_warning' ) );
106
  }
107
  }
108
- }
109
 
110
  /**
111
  * Display an error message when no start location is defined.
@@ -115,9 +114,7 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
115
  */
116
  public function show_location_warning() {
117
 
118
- if ( isset( $_GET['page'] ) && ( $_GET['page'] == 'wpsl_settings' ) ) {
119
- echo "<div id='message' class='error'><p>" . sprintf( __( "Before adding the [wpsl] shortcode to a page, please don't forget to define a %sstart point%s. %sDismiss%s", "wpsl" ), "<a href='#wpsl-auto-locate'>", "</a>", "<a class='wpsl-dismiss' data-nonce='" . wp_create_nonce( 'wpsl-dismiss' ) . "' href='#'>", "</a>" ). "</p></div>";
120
- } else {
121
  echo "<div id='message' class='error'><p>" . sprintf( __( "Before adding the [wpsl] shortcode to a page, please don't forget to define a start point on the %ssettings%s page. %sDismiss%s", "wpsl" ), "<a href='" . admin_url( 'edit.php?post_type=wpsl_stores&page=wpsl_settings' ) . "'>", "</a>", "<a class='wpsl-dismiss' data-nonce='" . wp_create_nonce( 'wpsl-dismiss' ) . "' href='#'>", "</a>" ). "</p></div>";
122
  }
123
  }
@@ -156,6 +153,13 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
156
  'caps' => 'manage_wpsl_settings',
157
  'menu_slug' => 'wpsl_settings',
158
  'function' => array( $this, 'load_template' )
 
 
 
 
 
 
 
159
  )
160
  )
161
  );
@@ -174,7 +178,15 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
174
  * @return void
175
  */
176
  public function load_template() {
177
- require 'templates/map-settings.php';
 
 
 
 
 
 
 
 
178
  }
179
 
180
  /**
@@ -253,7 +265,7 @@ if ( !class_exists( 'WPSL_Admin' ) ) {
253
  * one from the Store Locator. It can break the autocomplete on the settings page.
254
  *
255
  * To make sure this doesn't happen we look for other Google Maps scripts,
256
- * and if they exists we deregister them one pages that are used by the store locator.
257
  *
258
  * @since 1.2.20
259
  * @return void
61
  }
62
 
63
  /**
64
+ * Include the required files.
65
  *
66
  * @since 2.0.0
67
  * @return void
72
  require_once( WPSL_PLUGIN_DIR . 'admin/class-metaboxes.php' );
73
  require_once( WPSL_PLUGIN_DIR . 'admin/class-geocode.php' );
74
  require_once( WPSL_PLUGIN_DIR . 'admin/class-settings.php' );
75
+ require_once( WPSL_PLUGIN_DIR . 'admin/upgrade.php' );
76
  }
77
 
78
  /**
89
  }
90
 
91
  /**
92
+ * Check if we need to show the "missing start point" warning.
 
93
  *
94
  * @since 1.0.0
95
  * @return void
99
  global $current_user, $wpsl_settings;
100
 
101
  if ( ( current_user_can( 'install_plugins' ) ) && is_admin() ) {
102
+ if ( ( empty( $wpsl_settings['start_latlng'] ) && !get_user_meta( $current_user->ID, 'wpsl_disable_location_warning' ) ) ) {
103
  add_action( 'wp_ajax_disable_location_warning', array( $this, 'disable_location_warning_ajax' ) );
104
+ add_action( 'admin_notices', array( $this, 'show_location_warning' ) );
105
  }
106
  }
107
+ }
108
 
109
  /**
110
  * Display an error message when no start location is defined.
114
  */
115
  public function show_location_warning() {
116
 
117
+ if ( isset( $_GET['page'] ) && ( $_GET['page'] !== 'wpsl_settings' ) ) {
 
 
118
  echo "<div id='message' class='error'><p>" . sprintf( __( "Before adding the [wpsl] shortcode to a page, please don't forget to define a start point on the %ssettings%s page. %sDismiss%s", "wpsl" ), "<a href='" . admin_url( 'edit.php?post_type=wpsl_stores&page=wpsl_settings' ) . "'>", "</a>", "<a class='wpsl-dismiss' data-nonce='" . wp_create_nonce( 'wpsl-dismiss' ) . "' href='#'>", "</a>" ). "</p></div>";
119
  }
120
  }
153
  'caps' => 'manage_wpsl_settings',
154
  'menu_slug' => 'wpsl_settings',
155
  'function' => array( $this, 'load_template' )
156
+ ),
157
+ array(
158
+ 'page_title' => __( 'Add-Ons', 'wpsl' ),
159
+ 'menu_title' => __( 'Add-Ons', 'wpsl' ),
160
+ 'caps' => 'manage_wpsl_settings',
161
+ 'menu_slug' => 'wpsl_add_ons',
162
+ 'function' => array( $this, 'load_template' )
163
  )
164
  )
165
  );
178
  * @return void
179
  */
180
  public function load_template() {
181
+
182
+ switch ( $_GET['page'] ) {
183
+ case 'wpsl_settings':
184
+ require 'templates/map-settings.php';
185
+ break;
186
+ case 'wpsl_add_ons':
187
+ require 'templates/add-ons.php';
188
+ break;
189
+ }
190
  }
191
 
192
  /**
265
  * one from the Store Locator. It can break the autocomplete on the settings page.
266
  *
267
  * To make sure this doesn't happen we look for other Google Maps scripts,
268
+ * and if they exists we deregister them on pages that are used by the store locator.
269
  *
270
  * @since 1.2.20
271
  * @return void
admin/class-geocode.php CHANGED
@@ -128,7 +128,7 @@ if ( !class_exists( 'WPSL_Geocode' ) ) {
128
 
129
  $address = $this->create_geocode_address( $store_data );
130
  $response = wpsl_call_geocode_api( $address );
131
-
132
  if ( is_wp_error( $response ) ) {
133
  $geo_response = sprintf( __( 'Something went wrong connecting to the Google Geocode API: %s %s Please try again later.', 'wpsl' ), $response->get_error_message(), '<br><br>' );
134
  } else {
@@ -155,7 +155,7 @@ if ( !class_exists( 'WPSL_Geocode' ) ) {
155
  $address[] = trim( $store_data[$address_part] );
156
  }
157
  }
158
-
159
  $geocode_address = implode( ',', $address );
160
 
161
  return $geocode_address;
128
 
129
  $address = $this->create_geocode_address( $store_data );
130
  $response = wpsl_call_geocode_api( $address );
131
+
132
  if ( is_wp_error( $response ) ) {
133
  $geo_response = sprintf( __( 'Something went wrong connecting to the Google Geocode API: %s %s Please try again later.', 'wpsl' ), $response->get_error_message(), '<br><br>' );
134
  } else {
155
  $address[] = trim( $store_data[$address_part] );
156
  }
157
  }
158
+
159
  $geocode_address = implode( ',', $address );
160
 
161
  return $geocode_address;
admin/class-notices.php CHANGED
@@ -30,7 +30,7 @@ if ( !class_exists( 'WPSL_Notices' ) ) {
30
 
31
  add_action( 'all_admin_notices', array( $this, 'show' ) );
32
  }
33
-
34
  /**
35
  * Show one or more notices.
36
  *
30
 
31
  add_action( 'all_admin_notices', array( $this, 'show' ) );
32
  }
33
+
34
  /**
35
  * Show one or more notices.
36
  *
admin/class-settings.php CHANGED
@@ -69,7 +69,7 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
69
  public function sanitize_settings() {
70
 
71
  global $wpsl_settings, $wpsl_admin;
72
-
73
  $ux_absints = array(
74
  'height',
75
  'infowindow_width',
@@ -95,18 +95,23 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
95
  'marker_zoom_to',
96
  'mouse_focus',
97
  'reset_map',
 
 
98
  'hide_distance'
99
  );
100
 
101
- $output['api_key'] = sanitize_text_field( $_POST['wpsl_api']['key'] );
 
102
  $output['api_language'] = wp_filter_nohtml_kses( $_POST['wpsl_api']['language'] );
103
  $output['api_region'] = wp_filter_nohtml_kses( $_POST['wpsl_api']['region'] );
104
  $output['api_geocode_component'] = isset( $_POST['wpsl_api']['geocode_component'] ) ? 1 : 0;
105
 
106
- // Do we need to show the dropdown filters?
107
- $output['results_dropdown'] = isset( $_POST['wpsl_search']['results_dropdown'] ) ? 1 : 0;
108
- $output['radius_dropdown'] = isset( $_POST['wpsl_search']['radius_dropdown'] ) ? 1 : 0;
109
- $output['category_dropdown'] = isset( $_POST['wpsl_search']['category_dropdown'] ) ? 1 : 0;
 
 
110
 
111
  $output['distance_unit'] = ( $_POST['wpsl_search']['distance_unit'] == 'km' ) ? 'km' : 'mi';
112
 
@@ -128,7 +133,6 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
128
 
129
  // Check if we have a valid zoom level, it has to be between 1 or 12. If not set it to the default of 3.
130
  $output['zoom_level'] = wpsl_valid_zoom_level( $_POST['wpsl_map']['zoom_level'] );
131
- $output['zoom_name'] = sanitize_text_field( $_POST['wpsl_map']['zoom_name'] );
132
 
133
  // Check for a valid max auto zoom level.
134
  $max_zoom_levels = wpsl_get_max_zoom_levels();
@@ -138,27 +142,46 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
138
  } else {
139
  $output['auto_zoom_level'] = wpsl_get_default_setting( 'auto_zoom_level' );
140
  }
141
-
142
- // If no location name is set to zoom to we also empty the latlng values from the hidden input field.
143
- if ( empty( $output['zoom_name'] ) ) {
 
 
144
  $this->settings_error( 'start_point' );
145
- $output['zoom_latlng'] = '';
146
  } else {
147
- $output['zoom_latlng'] = sanitize_text_field( $_POST['wpsl_map']['zoom_latlng'] );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
148
  }
149
 
150
  // Check if we have a valid map type.
151
  $output['map_type'] = wpsl_valid_map_type( $_POST['wpsl_map']['type'] );
152
  $output['auto_locate'] = isset( $_POST['wpsl_map']['auto_locate'] ) ? 1 : 0;
153
  $output['autoload'] = isset( $_POST['wpsl_map']['autoload'] ) ? 1 : 0;
154
-
155
  // Make sure the auto load limit is either empty or an int.
156
  if ( empty( $_POST['wpsl_map']['autoload_limit'] ) ) {
157
  $output['autoload_limit'] = '';
158
  } else {
159
  $output['autoload_limit'] = absint( $_POST['wpsl_map']['autoload_limit'] );
160
  }
161
-
162
  $output['streetview'] = isset( $_POST['wpsl_map']['streetview'] ) ? 1 : 0;
163
  $output['type_control'] = isset( $_POST['wpsl_map']['type_control'] ) ? 1 : 0;
164
  $output['scrollwheel'] = isset( $_POST['wpsl_map']['scrollwheel'] ) ? 1 : 0;
@@ -276,7 +299,7 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
276
  if ( $wpsl_settings['autoload'] ) {
277
  $this->set_delete_transient_option( $output );
278
  }
279
-
280
  return $output;
281
  }
282
 
@@ -311,14 +334,16 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
311
 
312
  // The options we need to check for changes.
313
  $options = array(
314
- 'zoom_name',
315
  'debug',
316
  'autoload',
317
  'autoload_limit',
318
  'more_info',
319
  'more_info_location',
320
  'hide_hours',
321
- 'hide_distance'
 
 
322
  );
323
 
324
  foreach ( $options as $option_name ) {
@@ -984,6 +1009,15 @@ if ( !class_exists( 'WPSL_Settings' ) ) {
984
  'id' => 'wpsl-address-format',
985
  'name' => 'wpsl_ux[address_format]',
986
  'selected' => $wpsl_settings['address_format']
 
 
 
 
 
 
 
 
 
987
  )
988
  );
989
 
69
  public function sanitize_settings() {
70
 
71
  global $wpsl_settings, $wpsl_admin;
72
+
73
  $ux_absints = array(
74
  'height',
75
  'infowindow_width',
95
  'marker_zoom_to',
96
  'mouse_focus',
97
  'reset_map',
98
+ 'show_contact_details',
99
+ 'hide_country',
100
  'hide_distance'
101
  );
102
 
103
+ $output['api_server_key'] = sanitize_text_field( $_POST['wpsl_api']['server_key'] );
104
+ $output['api_browser_key'] = sanitize_text_field( $_POST['wpsl_api']['browser_key'] );
105
  $output['api_language'] = wp_filter_nohtml_kses( $_POST['wpsl_api']['language'] );
106
  $output['api_region'] = wp_filter_nohtml_kses( $_POST['wpsl_api']['region'] );
107
  $output['api_geocode_component'] = isset( $_POST['wpsl_api']['geocode_component'] ) ? 1 : 0;
108
 
109
+ // Check the search filter.
110
+ $output['autocomplete'] = isset( $_POST['wpsl_search']['autocomplete'] ) ? 1 : 0;
111
+ $output['results_dropdown'] = isset( $_POST['wpsl_search']['results_dropdown'] ) ? 1 : 0;
112
+ $output['radius_dropdown'] = isset( $_POST['wpsl_search']['radius_dropdown'] ) ? 1 : 0;
113
+ $output['category_filter'] = isset( $_POST['wpsl_search']['category_filter'] ) ? 1 : 0;
114
+ $output['category_filter_type'] = ( $_POST['wpsl_search']['category_filter_type'] == 'dropdown' ) ? 'dropdown' : 'checkboxes';
115
 
116
  $output['distance_unit'] = ( $_POST['wpsl_search']['distance_unit'] == 'km' ) ? 'km' : 'mi';
117
 
133
 
134
  // Check if we have a valid zoom level, it has to be between 1 or 12. If not set it to the default of 3.
135
  $output['zoom_level'] = wpsl_valid_zoom_level( $_POST['wpsl_map']['zoom_level'] );
 
136
 
137
  // Check for a valid max auto zoom level.
138
  $max_zoom_levels = wpsl_get_max_zoom_levels();
142
  } else {
143
  $output['auto_zoom_level'] = wpsl_get_default_setting( 'auto_zoom_level' );
144
  }
145
+
146
+ $output['start_name'] = sanitize_text_field( $_POST['wpsl_map']['start_name'] );
147
+
148
+ // If no location name is then we also empty the latlng values from the hidden input field.
149
+ if ( empty( $output['start_name'] ) ) {
150
  $this->settings_error( 'start_point' );
151
+ $output['start_latlng'] = '';
152
  } else {
153
+
154
+ /*
155
+ * If the start latlng is empty, but a start location name is provided,
156
+ * then make a request to the Geocode API to get it.
157
+ *
158
+ * This can only happen if there is a JS error in the admin area that breaks the
159
+ * Google Maps Autocomplete. So this code is only used as fallback to make sure
160
+ * the provided start location is always geocoded.
161
+ */
162
+ if ( $wpsl_settings['start_name'] != $_POST['wpsl_map']['start_name']
163
+ && $wpsl_settings['start_latlng'] == $_POST['wpsl_map']['start_latlng']
164
+ || empty( $_POST['wpsl_map']['start_latlng'] ) ) {
165
+ $start_latlng = wpsl_get_address_latlng( $_POST['wpsl_map']['start_name'] );
166
+ } else {
167
+ $start_latlng = sanitize_text_field( $_POST['wpsl_map']['start_latlng'] );
168
+ }
169
+
170
+ $output['start_latlng'] = $start_latlng;
171
  }
172
 
173
  // Check if we have a valid map type.
174
  $output['map_type'] = wpsl_valid_map_type( $_POST['wpsl_map']['type'] );
175
  $output['auto_locate'] = isset( $_POST['wpsl_map']['auto_locate'] ) ? 1 : 0;
176
  $output['autoload'] = isset( $_POST['wpsl_map']['autoload'] ) ? 1 : 0;
177
+
178
  // Make sure the auto load limit is either empty or an int.
179
  if ( empty( $_POST['wpsl_map']['autoload_limit'] ) ) {
180
  $output['autoload_limit'] = '';
181
  } else {
182
  $output['autoload_limit'] = absint( $_POST['wpsl_map']['autoload_limit'] );
183
  }
184
+
185
  $output['streetview'] = isset( $_POST['wpsl_map']['streetview'] ) ? 1 : 0;
186
  $output['type_control'] = isset( $_POST['wpsl_map']['type_control'] ) ? 1 : 0;
187
  $output['scrollwheel'] = isset( $_POST['wpsl_map']['scrollwheel'] ) ? 1 : 0;
299
  if ( $wpsl_settings['autoload'] ) {
300
  $this->set_delete_transient_option( $output );
301
  }
302
+
303
  return $output;
304
  }
305
 
334
 
335
  // The options we need to check for changes.
336
  $options = array(
337
+ 'start_name',
338
  'debug',
339
  'autoload',
340
  'autoload_limit',
341
  'more_info',
342
  'more_info_location',
343
  'hide_hours',
344
+ 'hide_distance',
345
+ 'hide_country',
346
+ 'show_contact_details'
347
  );
348
 
349
  foreach ( $options as $option_name ) {
1009
  'id' => 'wpsl-address-format',
1010
  'name' => 'wpsl_ux[address_format]',
1011
  'selected' => $wpsl_settings['address_format']
1012
+ ),
1013
+ 'filter_types' => array(
1014
+ 'values' => array(
1015
+ 'dropdown' => __( 'Dropdown', 'wpsl' ),
1016
+ 'checkboxes' => __( 'Checkboxes', 'wpsl' )
1017
+ ),
1018
+ 'id' => 'wpsl-cat-filter-types',
1019
+ 'name' => 'wpsl_search[category_filter_type]',
1020
+ 'selected' => $wpsl_settings['category_filter_type']
1021
  )
1022
  );
1023
 
admin/css/style.css CHANGED
@@ -587,7 +587,7 @@ div.wpsl-active {
587
  content: '\e803';
588
  }
589
 
590
- .wpsl-icon-plus-circled:before {
591
  content: '\e805';
592
  }
593
 
@@ -602,4 +602,48 @@ div.wpsl-active {
602
  #wpsl-store-hours .wpsl-icon-plus-circled:hover,
603
  #wpsl-store-hours .wpsl-icon-cancel-circled:hover {
604
  color: #444;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
605
  }
587
  content: '\e803';
588
  }
589
 
590
+ .wpsl-icon-plus-circled:before {
591
  content: '\e805';
592
  }
593
 
602
  #wpsl-store-hours .wpsl-icon-plus-circled:hover,
603
  #wpsl-store-hours .wpsl-icon-cancel-circled:hover {
604
  color: #444;
605
+ }
606
+
607
+ .wpsl-add-on {
608
+ float: left;
609
+ position: relative;
610
+ width: 300px;
611
+ height: 240px;
612
+ background: #fff;
613
+ margin: 20px 20px 0 0;
614
+ border: 1px solid #e8e8e8;
615
+ border-radius: 3px;
616
+ }
617
+
618
+ .wpsl-add-on p {
619
+ margin-top: 0;
620
+ }
621
+
622
+ .wpsl-add-on img {
623
+ height: auto;
624
+ max-width: 100%;
625
+ vertical-align: bottom;
626
+ }
627
+
628
+ .wpsl-add-on > a {
629
+ width: 300px;
630
+ display: inline-block;
631
+ }
632
+
633
+ .wpsl-add-on a img:hover {
634
+ opacity: 0.95;
635
+ }
636
+
637
+ .wpsl-add-on .wpsl-add-on-desc {
638
+ padding: 20px;
639
+ }
640
+
641
+ .wpsl-add-on-status {
642
+ position: absolute;
643
+ left: 20px;
644
+ bottom: 20px;
645
+ }
646
+
647
+ .wpsl-add-on-status p {
648
+ margin: 0 0 4px 0;
649
  }
admin/css/style.min.css CHANGED
@@ -1 +1 @@
1
- #wpsl-wrap.wpsl-add-stores p,.wpsl-marker-list,.wpsl-store-meta p{overflow:hidden}.wpsl-info:before,[class*=" wpsl-icon-"]:before,[class^=wpsl-icon-]:before{font-family:fontello;font-style:normal;speak:none;text-decoration:inherit;font-variant:normal;text-transform:none;line-height:1em}@font-face{font-family:fontello;src:url(../font/fontello.eot?54620740);src:url(../font/fontello.eot?54620740#iefix) format('embedded-opentype'),url(../font/fontello.woff?54620740) format('woff'),url(../font/fontello.ttf?54620740) format('truetype'),url(../font/fontello.svg?54620740#fontello) format('svg');font-weight:400;font-style:normal}#wpsl-store-overview .widefat td,#wpsl-wrap .widefat td{padding:12px 7px}#wpsl-wrap.wpsl-settings h2{margin-bottom:15px}#wpsl-wrap .submit{padding:0!important;margin-bottom:-10px!important}#wpsl-store-overview .column-action a{float:left;margin-right:5px}#wpsl-store-overview p.search-box{margin:0 0 1em}.column-action{width:130px}#wpsl-delete-confirmation,.wpsl-hide{display:none}.wpsl-preloader{float:right;margin:4px 0 0 4px}#wpsl-mainnav{border-bottom:1px solid #CCC;float:left;margin-bottom:15px;padding-left:7px;width:99.4%}#wpsl-mainnav li a{display:block;padding:9px 12px;text-decoration:none}#wpsl-mainnav li{float:left;margin:0}#wpsl-wrap label,#wpsl-wrap.wpsl-add-stores label{width:85px;margin-top:6px}#wpsl-wrap.wpsl-add-stores label{float:left}#wpsl-wrap.wpsl-add-stores .wpsl-radioboxes label{float:none;margin-right:10px}#wpsl-wrap textarea{width:489px;resize:none}#wpsl-wrap textarea,.wpsl-tab #wpsl-hours{height:185px}#wpsl-wrap .wpsl-style-input textarea{width:509px;resize:none;margin-bottom:12px;height:165px}#wpsl-style-preview{float:left;margin-bottom:12px}.wpsl-style-preview-error{float:left;margin:6px 0 0 10px;color:#b91111}.wpsl-curve{float:left;border-radius:3px}.wpsl-store-meta .wpsl-error{border:1px solid #c01313}#wpsl-lookup-location{margin-bottom:7px}#wpsl-wrap input[type=email],#wpsl-wrap input[type=text],#wpsl-wrap input[type=url]{width:340px}#wpsl-wrap.wpsl-settings input[type=text].textinput{width:255px}.wpsl-add-store{float:left;width:100%;clear:both}#wpsl-wrap .metabox-holder{float:left;margin-right:20px}#wpsl-wrap .metabox-holder.wpsl-wide{width:100%;padding-top:0}#wpsl-wrap .wpsl-edit-header{margin-bottom:12px}#wpsl-wrap.wpsl-settings .metabox-holder{width:100%}#wpsl-wrap.wpsl-settings .metabox-holder h3:hover{cursor:auto}#wpsl-meta-nav li:hover,#wpsl-store-hours .dashicons:hover,.wpsl-add-period:hover,.wpsl-info:hover,[class*=" wpsl-icon-"]:hover,[class^=wpsl-icon-]:hover{cursor:pointer}#wpsl-gmap-wrap{float:left;width:100%;height:250px;border-radius:3px;margin-top:0;margin-bottom:20px}#wpsl-map-preview #wpsl-gmap-wrap{margin:6px 0 12px}#wpsl-gmap-wrap.wpsl-styles-preview{float:none;margin:0;border-radius:0;clear:both}#wpsl-style-url{display:none;margin:20px 0 0}.wpsl-marker-list li{float:left;padding:10px;margin-right:5px;text-align:center}.wpsl-marker-list li input[type=radio]{margin-right:0}.wpsl-marker-list img{display:block;margin-bottom:7px}.wpsl-active-marker,.wpsl-marker-list li:hover{background:#E4E4E4;border-radius:5px;cursor:pointer}#wpsl-license-form .postbox-container,#wpsl-settings-form .postbox-container{width:535px;clear:both}#wpsl-wrap .metabox-holder{padding-top:0}.wpsl-info{position:relative;margin-left:3px}.wpsl-info:before{content:'\e802';font-size:14px;font-weight:400;display:inline-block;width:1em;margin-right:.2em;text-align:center;margin-left:.2em}.wpsl-info.wpsl-required-setting:before{color:#b91111}.wpsl-info-text{position:absolute;padding:10px;left:-29px;bottom:28px;color:#eee;min-width:200px;background:#222;border-radius:3px}#wpsl-map-preview .wpsl-info-text{width:175px;min-width:0;left:-88px}#wpsl-map-preview .wpsl-info-text::after{left:auto;right:87px}#wpsl-map-preview .wpsl-info{position:absolute;margin-left:5px;top:5px}.wpsl-submit-wrap{position:relative;clear:both}.wpsl-search-settings .wpsl-info-text{white-space:nowrap}.wpsl-info-text:after{position:absolute;border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #222;content:"";left:27px;bottom:-10px}.wpsl-info-text a{color:#fff}#wpsl-settings-form label{position:relative;display:inline-block;font-weight:400;margin:0 10px 0 0;width:220px}#wpsl-save-settings{float:left;clear:both}#wpsl-settings-form .wpsl-radioboxes label{float:none;margin-right:10px;width:auto}#wpsl-faq dt{margin-bottom:4px;font-weight:700;font-size:110%}#wpsl-faq dd{margin-left:0}#wpsl-faq dl{margin-bottom:25px}.wp-list-table .column-action .button{margin:3px 5px 3px 0}.wpsl-store-meta label{float:left;width:95px;margin-top:3px}.wpsl-store-meta input[type=email],.wpsl-store-meta input[type=url],.wpsl-store-meta input[type=text],.wpsl-store-meta textarea{width:340px}.wpsl-store-meta textarea{resize:none}#wpsl-map-preview em,#wpsl-settings-form em,.wpsl-store-meta em{display:block}#wpsl-settings-form .wpsl-info em{display:inline}#wpsl-meta-nav{margin:19px 0 6px}#wpsl-meta-nav li{display:inline;margin-right:5px}#wpsl-meta-nav li a{padding:6px 9px;border-radius:3px 3px 0 0;border-bottom:none;text-decoration:none;outline:0}.wpsl-tab{padding:5px 15px;display:none;border:1px solid #eee;border-radius:0 3px 3px}div.wpsl-active{display:block;background:#fdfdfd}#wpsl-meta-nav .wpsl-active a{border:1px solid #eee;border-bottom:1px solid #fdfdfd;background:#fdfdfd;color:#444}.wpsl-star{color:#c01313}#wpsl-store-hours{border-collapse:collapse;margin:5px 0 20px}#wpsl-settings-form #wpsl-store-hours{width:100%}#wpsl-store-hours div{margin:0;padding:3px;background:#eee;border:1px solid #eee;border-radius:3px;white-space:nowrap}#wpsl-store-hours .wpsl-store-closed{border:none;background:0 0;margin-top:9px;margin-bottom:0}.wpsl-add-period,.wpsl-current-period{float:left}#wpsl-store-hours .wpsl-multiple-periods{float:left;clear:both;margin-top:8px}.wpsl-add-period span,.wpsl-current-period span{float:left;margin:6px 7px 0}.wpsl-add-period span{margin:6px 0 0 7px}#wpsl-store-hours .wpsl-remove-period{background:#999;border-radius:9px}.wpsl-add-period{border:none;background:#eee;border-radius:3px;font-size:13px;padding:3px 10px}.wpsl-default-hours{margin-top:25px}#wpsl-store-hours select{float:left}#wpsl-store-hours th{text-align:left;padding:8px 10px 8px 0;border-bottom:1px solid #eee}#wpsl-settings-form #wpsl-store-hours th{text-align:left}#wpsl-store-hours td{border-bottom:1px solid #eee;padding:7px 10px 7px 0;vertical-align:top}#wpsl-store-hours .wpsl-opening-day{min-width:80px;padding:17px 17px 0 0;text-align:left;vertical-align:top}.wpsl-twentyfour-format .wpsl-opening-hours{width:197px}.wpsl-twelve-format .wpsl-opening-hours{width:245px}#wpsl-settings-form #wpsl-store-hours .wpsl-opening-day{width:150px}#wpsl-settings-form #wpsl-store-hours td p{padding:10px 0 0;margin:0;text-align:left}#wpsl-store-hours .wpsl-add-period{height:30px}.wpsl-pre-38 .wpsl-add-period{height:27px}#wpsl-store-hours .dashicons{color:#999;margin:0 3px}#wpsl-store-hours .dashicons:hover,#wpsl-store-hours .wpsl-add-period:hover .dashicons{color:#444}#wpsl-wrap.wpsl-pre-38 .submit{margin-bottom:0!important}[class*=" wpsl-icon-"]:before,[class^=wpsl-icon-]:before{font-weight:400;display:inline-block;width:1em;margin-right:.2em;text-align:center;margin-left:.2em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wpsl-icon-location:before{content:'\e801'}.wpsl-icon-attention-circled:before{content:'\e802'}.wpsl-icon-cancel-circled:before{content:'\e803'}.wpsl-icon-plus-circled:before{content:'\e805'}#wpsl-store-hours .wpsl-icon-cancel-circled,#wpsl-store-hours .wpsl-icon-plus-circled{margin-top:1px;font-size:18px;display:inline-block;color:#999}#wpsl-store-hours .wpsl-icon-cancel-circled:hover,#wpsl-store-hours .wpsl-icon-plus-circled:hover{color:#444}
1
+ #wpsl-wrap.wpsl-add-stores p,.wpsl-marker-list,.wpsl-store-meta p{overflow:hidden}.wpsl-info:before,[class*=" wpsl-icon-"]:before,[class^=wpsl-icon-]:before{font-family:fontello;font-style:normal;speak:none;text-decoration:inherit;font-variant:normal;text-transform:none;line-height:1em}@font-face{font-family:fontello;src:url(../font/fontello.eot?54620740);src:url(../font/fontello.eot?54620740#iefix) format('embedded-opentype'),url(../font/fontello.woff?54620740) format('woff'),url(../font/fontello.ttf?54620740) format('truetype'),url(../font/fontello.svg?54620740#fontello) format('svg');font-weight:400;font-style:normal}#wpsl-store-overview .widefat td,#wpsl-wrap .widefat td{padding:12px 7px}#wpsl-wrap.wpsl-settings h2{margin-bottom:15px}#wpsl-wrap .submit{padding:0!important;margin-bottom:-10px!important}#wpsl-store-overview .column-action a{float:left;margin-right:5px}#wpsl-store-overview p.search-box{margin:0 0 1em}.column-action{width:130px}#wpsl-delete-confirmation,.wpsl-hide{display:none}.wpsl-preloader{float:right;margin:4px 0 0 4px}#wpsl-mainnav{border-bottom:1px solid #CCC;float:left;margin-bottom:15px;padding-left:7px;width:99.4%}#wpsl-mainnav li a{display:block;padding:9px 12px;text-decoration:none}#wpsl-mainnav li{float:left;margin:0}#wpsl-wrap label,#wpsl-wrap.wpsl-add-stores label{width:85px;margin-top:6px}#wpsl-wrap.wpsl-add-stores label{float:left}#wpsl-wrap.wpsl-add-stores .wpsl-radioboxes label{float:none;margin-right:10px}#wpsl-wrap textarea{width:489px;resize:none}#wpsl-wrap textarea,.wpsl-tab #wpsl-hours{height:185px}#wpsl-wrap .wpsl-style-input textarea{width:509px;resize:none;margin-bottom:12px;height:165px}#wpsl-style-preview{float:left;margin-bottom:12px}.wpsl-style-preview-error{float:left;margin:6px 0 0 10px;color:#b91111}.wpsl-curve{float:left;border-radius:3px}.wpsl-store-meta .wpsl-error{border:1px solid #c01313}#wpsl-lookup-location{margin-bottom:7px}#wpsl-wrap input[type=email],#wpsl-wrap input[type=text],#wpsl-wrap input[type=url]{width:340px}#wpsl-wrap.wpsl-settings input[type=text].textinput{width:255px}.wpsl-add-store{float:left;width:100%;clear:both}#wpsl-wrap .metabox-holder{float:left;margin-right:20px}#wpsl-wrap .metabox-holder.wpsl-wide{width:100%;padding-top:0}#wpsl-wrap .wpsl-edit-header{margin-bottom:12px}#wpsl-wrap.wpsl-settings .metabox-holder{width:100%}#wpsl-wrap.wpsl-settings .metabox-holder h3:hover{cursor:auto}#wpsl-meta-nav li:hover,#wpsl-store-hours .dashicons:hover,.wpsl-add-period:hover,.wpsl-info:hover,[class*=" wpsl-icon-"]:hover,[class^=wpsl-icon-]:hover{cursor:pointer}#wpsl-gmap-wrap{float:left;width:100%;height:250px;border-radius:3px;margin-top:0;margin-bottom:20px}#wpsl-map-preview #wpsl-gmap-wrap{margin:6px 0 12px}#wpsl-gmap-wrap.wpsl-styles-preview{float:none;margin:0;border-radius:0;clear:both}#wpsl-style-url{display:none;margin:20px 0 0}.wpsl-marker-list li{float:left;padding:10px;margin-right:5px;text-align:center}.wpsl-marker-list li input[type=radio]{margin-right:0}.wpsl-marker-list img{display:block;margin-bottom:7px}.wpsl-active-marker,.wpsl-marker-list li:hover{background:#E4E4E4;border-radius:5px;cursor:pointer}#wpsl-license-form .postbox-container,#wpsl-settings-form .postbox-container{width:535px;clear:both}#wpsl-wrap .metabox-holder{padding-top:0}.wpsl-info{position:relative;margin-left:3px}.wpsl-info:before{content:'\e802';font-size:14px;font-weight:400;display:inline-block;width:1em;margin-right:.2em;text-align:center;margin-left:.2em}.wpsl-info.wpsl-required-setting:before{color:#b91111}.wpsl-info-text{position:absolute;padding:10px;left:-29px;bottom:28px;color:#eee;min-width:200px;background:#222;border-radius:3px}#wpsl-map-preview .wpsl-info-text{width:175px;min-width:0;left:-88px}#wpsl-map-preview .wpsl-info-text::after{left:auto;right:87px}#wpsl-map-preview .wpsl-info{position:absolute;margin-left:5px;top:5px}.wpsl-submit-wrap{position:relative;clear:both}.wpsl-search-settings .wpsl-info-text{white-space:nowrap}.wpsl-info-text:after{position:absolute;border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #222;content:"";left:27px;bottom:-10px}.wpsl-info-text a{color:#fff}#wpsl-settings-form label{position:relative;display:inline-block;font-weight:400;margin:0 10px 0 0;width:220px}#wpsl-save-settings{float:left;clear:both}#wpsl-settings-form .wpsl-radioboxes label{float:none;margin-right:10px;width:auto}#wpsl-faq dt{margin-bottom:4px;font-weight:700;font-size:110%}#wpsl-faq dd{margin-left:0}#wpsl-faq dl{margin-bottom:25px}.wp-list-table .column-action .button{margin:3px 5px 3px 0}.wpsl-store-meta label{float:left;width:95px;margin-top:3px}.wpsl-store-meta input[type=email],.wpsl-store-meta input[type=url],.wpsl-store-meta input[type=text],.wpsl-store-meta textarea{width:340px}.wpsl-store-meta textarea{resize:none}#wpsl-map-preview em,#wpsl-settings-form em,.wpsl-store-meta em{display:block}#wpsl-settings-form .wpsl-info em{display:inline}#wpsl-meta-nav{margin:19px 0 6px}#wpsl-meta-nav li{display:inline;margin-right:5px}#wpsl-meta-nav li a{padding:6px 9px;border-radius:3px 3px 0 0;border-bottom:none;text-decoration:none;outline:0}.wpsl-tab{padding:5px 15px;display:none;border:1px solid #eee;border-radius:0 3px 3px}div.wpsl-active{display:block;background:#fdfdfd}#wpsl-meta-nav .wpsl-active a{border:1px solid #eee;border-bottom:1px solid #fdfdfd;background:#fdfdfd;color:#444}.wpsl-star{color:#c01313}#wpsl-store-hours{border-collapse:collapse;margin:5px 0 20px}#wpsl-settings-form #wpsl-store-hours{width:100%}#wpsl-store-hours div{margin:0;padding:3px;background:#eee;border:1px solid #eee;border-radius:3px;white-space:nowrap}#wpsl-store-hours .wpsl-store-closed{border:none;background:0 0;margin-top:9px;margin-bottom:0}.wpsl-add-period,.wpsl-current-period{float:left}#wpsl-store-hours .wpsl-multiple-periods{float:left;clear:both;margin-top:8px}.wpsl-add-period span,.wpsl-current-period span{float:left;margin:6px 7px 0}.wpsl-add-period span{margin:6px 0 0 7px}#wpsl-store-hours .wpsl-remove-period{background:#999;border-radius:9px}.wpsl-add-period{border:none;background:#eee;border-radius:3px;font-size:13px;padding:3px 10px}.wpsl-default-hours{margin-top:25px}#wpsl-store-hours select{float:left}#wpsl-store-hours th{text-align:left;padding:8px 10px 8px 0;border-bottom:1px solid #eee}#wpsl-settings-form #wpsl-store-hours th{text-align:left}#wpsl-store-hours td{border-bottom:1px solid #eee;padding:7px 10px 7px 0;vertical-align:top}#wpsl-store-hours .wpsl-opening-day{min-width:80px;padding:17px 17px 0 0;text-align:left;vertical-align:top}.wpsl-twentyfour-format .wpsl-opening-hours{width:197px}.wpsl-twelve-format .wpsl-opening-hours{width:245px}#wpsl-settings-form #wpsl-store-hours .wpsl-opening-day{width:150px}#wpsl-settings-form #wpsl-store-hours td p{padding:10px 0 0;margin:0;text-align:left}#wpsl-store-hours .wpsl-add-period{height:30px}.wpsl-pre-38 .wpsl-add-period{height:27px}#wpsl-store-hours .dashicons{color:#999;margin:0 3px}#wpsl-store-hours .dashicons:hover,#wpsl-store-hours .wpsl-add-period:hover .dashicons{color:#444}#wpsl-wrap.wpsl-pre-38 .submit{margin-bottom:0!important}[class*=" wpsl-icon-"]:before,[class^=wpsl-icon-]:before{font-weight:400;display:inline-block;width:1em;margin-right:.2em;text-align:center;margin-left:.2em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.wpsl-icon-location:before{content:'\e801'}.wpsl-icon-attention-circled:before{content:'\e802'}.wpsl-icon-cancel-circled:before{content:'\e803'}.wpsl-icon-plus-circled:before{content:'\e805'}#wpsl-store-hours .wpsl-icon-cancel-circled,#wpsl-store-hours .wpsl-icon-plus-circled{margin-top:1px;font-size:18px;display:inline-block;color:#999}#wpsl-store-hours .wpsl-icon-cancel-circled:hover,#wpsl-store-hours .wpsl-icon-plus-circled:hover{color:#444}.wpsl-add-on{float:left;position:relative;width:300px;height:240px;background:#fff;margin:20px 20px 0 0;border:1px solid #e8e8e8;border-radius:3px}.wpsl-add-on p{margin-top:0}.wpsl-add-on img{height:auto;max-width:100%;vertical-align:bottom}.wpsl-add-on>a{width:300px;display:inline-block}.wpsl-add-on a img:hover{opacity:.95}.wpsl-add-on .wpsl-add-on-desc{padding:20px}.wpsl-add-on-status{position:absolute;left:20px;bottom:20px}.wpsl-add-on-status p{margin:0 0 4px}
admin/js/wpsl-admin.js CHANGED
@@ -57,7 +57,7 @@ function checkEditStoreMarker() {
57
  }
58
 
59
  // If we have a city/country input field enable the autocomplete.
60
- if ( $( "#wpsl-zoom-name" ).length ) {
61
  activateAutoComplete();
62
  }
63
 
@@ -69,12 +69,12 @@ if ( $( "#wpsl-zoom-name" ).length ) {
69
  */
70
  function activateAutoComplete() {
71
  var latlng,
72
- input = document.getElementById( "wpsl-zoom-name" ),
73
  options = {
74
  types: ['geocode']
75
  },
76
  autocomplete = new google.maps.places.Autocomplete( input, options );
77
-
78
  google.maps.event.addListener( autocomplete, "place_changed", function() {
79
  latlng = autocomplete.getPlace().geometry.location;
80
  setLatlng( latlng, "zoom" );
@@ -327,17 +327,9 @@ $( ".wpsl-dismiss" ).click( function() {
327
  return false;
328
  });
329
 
330
- // Detect changes to the 'More info' and 'Load Locations' option on the settings page.
331
- $( "#wpsl-more-info" ).on( "change", function() {
332
- $( "#wpsl-more-info-options" ).toggle();
333
- });
334
-
335
- $( "#wpsl-autoload" ).on( "change", function() {
336
- $( "#wpsl-autoload-options" ).toggle();
337
- });
338
-
339
- $( "#wpsl-editor-hide-hours" ).on( "change", function() {
340
- $( ".wpsl-hours" ).toggle();
341
  });
342
 
343
  /*
@@ -370,16 +362,6 @@ $( "#wpsl-editor-hour-input" ).on( "change", function() {
370
  $( ".wpsl-hour-notice" ).toggle();
371
  });
372
 
373
- // If the marker cluster checkbox changes, show/hide the options.
374
- $( "#wpsl-marker-clusters" ).on( "change", function() {
375
- $( ".wpsl-cluster-options" ).toggle();
376
- });
377
-
378
- // If the permalink checkbox changes, show/hide the options.
379
- $( "#wpsl-permalinks-active" ).on( "change", function() {
380
- $( ".wpsl-permalink-option" ).toggle();
381
- });
382
-
383
  // Set the correct tab to active and show the correct content block.
384
  $( "#wpsl-meta-nav li" ).on( "click", function( e ) {
385
  var activeClass = $( this ).attr( "class" );
57
  }
58
 
59
  // If we have a city/country input field enable the autocomplete.
60
+ if ( $( "#wpsl-start-name" ).length ) {
61
  activateAutoComplete();
62
  }
63
 
69
  */
70
  function activateAutoComplete() {
71
  var latlng,
72
+ input = document.getElementById( "wpsl-start-name" ),
73
  options = {
74
  types: ['geocode']
75
  },
76
  autocomplete = new google.maps.places.Autocomplete( input, options );
77
+
78
  google.maps.event.addListener( autocomplete, "place_changed", function() {
79
  latlng = autocomplete.getPlace().geometry.location;
80
  setLatlng( latlng, "zoom" );
327
  return false;
328
  });
329
 
330
+ // Detect changes in checkboxes that have a conditional option.
331
+ $( ".wpsl-has-conditional-option" ).on( "change", function() {
332
+ $( this ).parent().next( ".wpsl-conditional-option" ).toggle();
 
 
 
 
 
 
 
 
333
  });
334
 
335
  /*
362
  $( ".wpsl-hour-notice" ).toggle();
363
  });
364
 
 
 
 
 
 
 
 
 
 
 
365
  // Set the correct tab to active and show the correct content block.
366
  $( "#wpsl-meta-nav li" ).on( "click", function( e ) {
367
  var activeClass = $( this ).attr( "class" );
admin/js/wpsl-admin.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){function s(){var e=wpslSettings.defaultLatLng.split(","),s=new google.maps.LatLng(e[0],e[1]),o={};o={zoom:parseInt(wpslSettings.defaultZoom),center:s,mapTypeId:google.maps.MapTypeId[wpslSettings.mapType.toUpperCase()],mapTypeControl:!1,streetViewControl:!1,zoomControlOptions:{position:google.maps.ControlPosition.RIGHT_TOP}},M=new google.maps.Geocoder,b=new google.maps.Map(document.getElementById("wpsl-gmap-wrap"),o),t()}function t(){var s,t=e("#wpsl-lat").val(),o=e("#wpsl-lng").val();t&&o&&(s=new google.maps.LatLng(t,o),b.setCenter(s),b.setZoom(16),l(s))}function o(){var e,s=document.getElementById("wpsl-zoom-name"),t={types:["geocode"]},o=new google.maps.places.Autocomplete(s,t);google.maps.event.addListener(o,"place_changed",function(){e=o.getPlace().geometry.location,n(e,"zoom")})}function l(e){var s=new google.maps.Marker({position:e,map:b,draggable:!0});k.push(s),google.maps.event.addListener(s,"dragend",function(){n(s.getPosition(),"store")})}function n(s,t){var o=d(s),l=c(o[0]),n=c(o[1]);"store"==t?(e("#wpsl-lat").val(l),e("#wpsl-lng").val(n)):"zoom"==t&&e("#wpsl-latlng").val(l+","+n)}function r(){var s,t;return a()?(w("first"),alert(wpslL10n.missingGeoData),!0):(t=i(),M.geocode({address:t},function(t,o){o===google.maps.GeocoderStatus.OK?("undefined"!=typeof k[0]&&k[0].draggable&&(k[0].setMap(null),k.splice(0,1)),b.setCenter(t[0].geometry.location),b.setZoom(16),l(t[0].geometry.location),n(t[0].geometry.location,"store"),s=p(t),e("#wpsl-country").val(s.country.long_name),e("#wpsl-country_iso").val(s.country.short_name)):alert(wpslL10n.geocodeFail+": "+o)}),!1)}function a(){var s,t,o=["address","city","country"],l=!1;for(e(".wpsl-store-meta input").removeClass("wpsl-error"),s=0;s<o.length;s++)t=e.trim(e("#wpsl-"+o[s]).val()),t||(e("#wpsl-"+o[s]).addClass("wpsl-error"),l=!0),t="";return l}function i(){var s,t,o=[],l=["address","city","state","zip","country"];for(s=0;s<l.length;s++)t=e.trim(e("#wpsl-"+l[s]).val()),t&&o.push(t),t="";return o.join()}function p(e){var s,t,o={},l={},n=e[0].address_components.length;for(s=0;n>s;s++)t=e[0].address_components[s].types,/^country,political$/.test(t)&&(o={long_name:e[0].address_components[s].long_name,short_name:e[0].address_components[s].short_name});return l={country:o}}function c(e){var s,t=6;return s=Math.round(e*Math.pow(10,t))/Math.pow(10,t)}function d(e){var s=[],t=e.toString(),o=t.split(",",2);return s[0]=o[0].replace("(",""),s[1]=o[1].replace(")",""),s}function w(s){s="first"==s?":first-child":"."+s,e("#wpsl-meta-nav li"+s+"-tab").hasClass("wpsl-active")||(e("#wpsl-meta-nav li"+s+"-tab").addClass("wpsl-active").siblings().removeClass("wpsl-active"),e(".wpsl-store-meta > div"+s).show().addClass("wpsl-active").siblings("div").hide().removeClass("wpsl-active"))}function u(e){var s={};return s={type:"id",val:e.attr("id")},"undefined"==typeof s.val&&(s={type:"class",val:e.attr("class")}),s}function h(){e("#wpsl-store-hours .wpsl-icon-cancel-circled").off(),e("#wpsl-store-hours .wpsl-icon-cancel-circled").on("click",function(){f(e(this))})}function f(e){var s=m(e),t=e.parents("tr"),o=t.find(".wpsl-opening-hours").attr("data-day");1==s&&t.find(".wpsl-opening-hours").html("<p class='wpsl-store-closed'>"+wpslL10n.closedDate+"<input type='hidden' name='wpsl[hours]["+o+"_open]' value='' /></p>"),e.parent().closest(".wpsl-current-period").remove(),t.find(".wpsl-opening-hours div:first-child").hasClass("wpsl-multiple-periods")&&t.find(".wpsl-opening-hours div:first-child").removeClass("wpsl-multiple-periods")}function m(e){var s=e.parents("tr").find(".wpsl-current-period").length;return s}function v(s){var t,o,l,n,r=!1,a="",i="",p=[],c={hours:{hr12:[0,1,2,3,4,5,6,7,8,9,10,11,12,1,2,3,4,5,6,7,8,9,10,11],hr24:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]},interval:["00","15","30","45"]};n=e("#wpsl-editor-hour-format").length?e("#wpsl-editor-hour-format").val():wpslSettings.hourFormat,e("#wpsl-store-hours td").removeAttr("style"),12==n?(e("#wpsl-store-hours").removeClass().addClass("wpsl-twelve-format"),t=c.hours.hr12):(e("#wpsl-store-hours").removeClass().addClass("wpsl-twentyfour-format"),t=c.hours.hr24),o=c.interval;for(var d=0;d<t.length;d++){l=t[d],12==n?(l>=12&&(r=!0),a=r?"PM":"AM"):24==n&&1==l.toString().length&&(l="0"+l);for(var w=0;w<o.length;w++)p.push(l+":"+o[w]+" "+a)}for(var d=0;d<p.length;d++)i=i+'<option value="'+e.trim(p[d])+'">'+e.trim(p[d])+"</option>";return s?i:void g(i,n)}function g(s,t){var o,l,n,r={};e(".wpsl-current-period").each(function(){n=e(this),r={open:e(this).find(".wpsl-open-hour").val(),close:e(this).find(".wpsl-close-hour").val()},e(this).find("select").html(s).promise().done(function(){for(var s in r)r.hasOwnProperty(s)&&(o=r[s].split(":"),12==t?(l="",0==r[s].charAt(0)?(r[s]=r[s].substr(1),l=" AM"):2==o[0].length&&o[0]>12?(r[s]=o[0]-12+":"+o[1],l=" PM"):o[0]<12?(r[s]=o[0]+":"+o[1],l=" AM"):12==o[0]&&(r[s]=o[0]+":"+o[1],l=" PM"),-1==o[1].indexOf("PM")&&-1==o[1].indexOf("AM")&&(r[s]=r[s]+l)):24==t&&(-1!=o[1].indexOf("PM")?12==o[0]?r[s]="12:"+o[1].replace(" PM",""):r[s]=+o[0]+12+":"+o[1].replace(" PM",""):-1!=o[1].indexOf("AM")?1==o[0].toString().length?r[s]="0"+o[0]+":"+o[1].replace(" AM",""):r[s]=o[0]+":"+o[1].replace(" AM",""):r[s]=o[0]+":"+o[1]),n.find(".wpsl-"+s+"-hour option[value='"+e.trim(r[s])+"']").attr("selected","selected"))})})}function y(){var s="",t=e.trim(e("#wpsl-map-style").val());e(".wpsl-style-preview-error").remove(),t&&(s=C(t),s||e("#wpsl-style-preview").after("<div class='wpsl-style-preview-error'>"+wpslL10n.styleError+"</div>")),b.setOptions({styles:s})}function C(e){try{var s=JSON.parse(e);if(s&&"object"==typeof s&&null!==s)return s}catch(t){}return!1}var b,M,k=[];e("#wpsl-gmap-wrap").length&&s(),e("#wpsl-zoom-name").length&&o(),e("#wpsl-lookup-location").on("click",function(e){e.preventDefault(),r()}),e(".wpsl-marker-list input[type=radio]").click(function(){e(this).parents(".wpsl-marker-list").find("li").removeClass(),e(this).parent("li").addClass("wpsl-active-marker")}),e(".wpsl-marker-list li").click(function(){e(this).parents(".wpsl-marker-list").find("input").prop("checked",!1),e(this).find("input").prop("checked",!0),e(this).siblings().removeClass(),e(this).addClass("wpsl-active-marker")}),e(".wpsl-dismiss").click(function(){var s=e(this),t={action:"disable_location_warning",_ajax_nonce:s.attr("data-nonce")};return e.post(ajaxurl,t),e(".wpsl-dismiss").parents(".error").remove(),!1}),e("#wpsl-more-info").on("change",function(){e("#wpsl-more-info-options").toggle()}),e("#wpsl-autoload").on("change",function(){e("#wpsl-autoload-options").toggle()}),e("#wpsl-editor-hide-hours").on("change",function(){e(".wpsl-hours").toggle()}),e("#wpsl-store-template").on("change",function(){var s=e("#wpsl-listing-below-no-scroll");"below_map"==e(this).val()?s.show():s.hide()}),e("#wpsl-api-region").on("change",function(){var s=e("#wpsl-geocode-component");e(this).val()?s.show():s.hide()}),e("#wpsl-editor-hour-input").on("change",function(){e(".wpsl-"+e(this).val()+"-hours").show().siblings("div").hide(),e(".wpsl-hour-notice").toggle()}),e("#wpsl-marker-clusters").on("change",function(){e(".wpsl-cluster-options").toggle()}),e("#wpsl-permalinks-active").on("change",function(){e(".wpsl-permalink-option").toggle()}),e("#wpsl-meta-nav li").on("click",function(s){var t=e(this).attr("class");t=t.split("-tab"),s.stopPropagation(),e(this).addClass("wpsl-active").siblings().removeClass("wpsl-active"),e(".wpsl-store-meta ."+t[0]).show().addClass("wpsl-active").siblings("div").hide().removeClass("wpsl-active")}),e("#wpsl-store-details").length&&e("#publish").click(function(){var s,t,o,l='<div id="message" class="error"><p>'+wpslL10n.requiredFields+"</p></div>",n=!1;return e("#wpbody-content .wrap #message").remove(),e(".wpsl-required").removeClass("wpsl-error"),e(".wpsl-required").each(function(){""==e(this).val()&&(e(this).addClass("wpsl-error"),"undefined"==typeof s&&(s=u(e(this))),n=!0)}),n?(e("#wpbody-content .wrap > h2").after(l),"undefined"!=typeof s.val&&("id"==s.type?(t=e("#"+s.val).parents(".wpsl-tab").attr("class"),e("html, body").scrollTop(Math.round(e("#"+s.val).offset().top-100))):"class"==s.type&&(o=s.val.replace(/wpsl-required|wpsl-error/g,""),t=e("."+o).parents(".wpsl-tab").attr("class"),e("html, body").scrollTop(Math.round(e("."+o).offset().top-100))),t=e.trim(t.replace(/wpsl-tab|wpsl-active/g,""))),w(t?t:"first"),e("#publish").removeClass("button-primary-disabled"),e(".spinner").hide(),!1):!0}),e("#wpsl-store-hours").length&&h(),e(".wpsl-add-period").on("click",function(s){var t,o={},l=!0,n=e(this).parents("tr"),r=m(e(this)),a=r>=1?"wpsl-current-period wpsl-multiple-periods":"wpsl-current-period",i=n.find(".wpsl-opening-hours").attr("data-day"),p=e("#wpsl-settings-form").length?"wpsl_editor[dropdown]":"wpsl[hours]";t='<div class="'+a+'">',t+='<select autocomplete="off" name="'+p+"["+i+'_open][]" class="wpsl-open-hour">'+v(l)+"</select>",t+="<span> - </span>",t+='<select autocomplete="off" name="'+p+"["+i+'_close][]" class="wpsl-close-hour">'+v(l)+"</select>",t+='<div class="wpsl-icon-cancel-circled"></div>',t+="</div>",n.find(".wpsl-store-closed").remove(),e("#wpsl-hours-"+i).append(t).end(),h(),o=24==e("#wpsl-editor-hour-format").val()?{open:"09:00",close:"17:00"}:{open:"9:00 AM",close:"5:00 PM"},n.find(".wpsl-open-hour:last option[value='"+o.open+"']").attr("selected","selected"),n.find(".wpsl-close-hour:last option[value='"+o.close+"']").attr("selected","selected"),s.preventDefault()}),e("#wpsl-editor-hour-format, #wpsl-editor-hour-interval").on("change",function(){v()}),e(".wpsl-info").on("mouseover",function(){e(this).find(".wpsl-info-text").show()}),e(".wpsl-info").on("mouseout",function(){e(this).find(".wpsl-info-text").hide()}),e("#wpsl-latlng").length&&!e("#wpsl-latlng").val()&&e("#wpsl-latlng").siblings("label").find(".wpsl-info").addClass("wpsl-required-setting"),e("#wpsl-map-style").val()&&y(),e("#wpsl-style-preview").on("click",function(){return y(),!1})});
1
+ jQuery(document).ready(function(e){function s(){var e=wpslSettings.defaultLatLng.split(","),s=new google.maps.LatLng(e[0],e[1]),o={};o={zoom:parseInt(wpslSettings.defaultZoom),center:s,mapTypeId:google.maps.MapTypeId[wpslSettings.mapType.toUpperCase()],mapTypeControl:!1,streetViewControl:!1,zoomControlOptions:{position:google.maps.ControlPosition.RIGHT_TOP}},M=new google.maps.Geocoder,b=new google.maps.Map(document.getElementById("wpsl-gmap-wrap"),o),t()}function t(){var s,t=e("#wpsl-lat").val(),o=e("#wpsl-lng").val();t&&o&&(s=new google.maps.LatLng(t,o),b.setCenter(s),b.setZoom(16),l(s))}function o(){var e,s=document.getElementById("wpsl-start-name"),t={types:["geocode"]},o=new google.maps.places.Autocomplete(s,t);google.maps.event.addListener(o,"place_changed",function(){e=o.getPlace().geometry.location,n(e,"zoom")})}function l(e){var s=new google.maps.Marker({position:e,map:b,draggable:!0});_.push(s),google.maps.event.addListener(s,"dragend",function(){n(s.getPosition(),"store")})}function n(s,t){var o=d(s),l=c(o[0]),n=c(o[1]);"store"==t?(e("#wpsl-lat").val(l),e("#wpsl-lng").val(n)):"zoom"==t&&e("#wpsl-latlng").val(l+","+n)}function r(){var s,t;return a()?(w("first"),alert(wpslL10n.missingGeoData),!0):(t=i(),M.geocode({address:t},function(t,o){o===google.maps.GeocoderStatus.OK?("undefined"!=typeof _[0]&&_[0].draggable&&(_[0].setMap(null),_.splice(0,1)),b.setCenter(t[0].geometry.location),b.setZoom(16),l(t[0].geometry.location),n(t[0].geometry.location,"store"),s=p(t),e("#wpsl-country").val(s.country.long_name),e("#wpsl-country_iso").val(s.country.short_name)):alert(wpslL10n.geocodeFail+": "+o)}),!1)}function a(){var s,t,o=["address","city","country"],l=!1;for(e(".wpsl-store-meta input").removeClass("wpsl-error"),s=0;s<o.length;s++)t=e.trim(e("#wpsl-"+o[s]).val()),t||(e("#wpsl-"+o[s]).addClass("wpsl-error"),l=!0),t="";return l}function i(){var s,t,o=[],l=["address","city","state","zip","country"];for(s=0;s<l.length;s++)t=e.trim(e("#wpsl-"+l[s]).val()),t&&o.push(t),t="";return o.join()}function p(e){var s,t,o={},l={},n=e[0].address_components.length;for(s=0;n>s;s++)t=e[0].address_components[s].types,/^country,political$/.test(t)&&(o={long_name:e[0].address_components[s].long_name,short_name:e[0].address_components[s].short_name});return l={country:o}}function c(e){var s,t=6;return s=Math.round(e*Math.pow(10,t))/Math.pow(10,t)}function d(e){var s=[],t=e.toString(),o=t.split(",",2);return s[0]=o[0].replace("(",""),s[1]=o[1].replace(")",""),s}function w(s){s="first"==s?":first-child":"."+s,e("#wpsl-meta-nav li"+s+"-tab").hasClass("wpsl-active")||(e("#wpsl-meta-nav li"+s+"-tab").addClass("wpsl-active").siblings().removeClass("wpsl-active"),e(".wpsl-store-meta > div"+s).show().addClass("wpsl-active").siblings("div").hide().removeClass("wpsl-active"))}function u(e){var s={};return s={type:"id",val:e.attr("id")},"undefined"==typeof s.val&&(s={type:"class",val:e.attr("class")}),s}function h(){e("#wpsl-store-hours .wpsl-icon-cancel-circled").off(),e("#wpsl-store-hours .wpsl-icon-cancel-circled").on("click",function(){v(e(this))})}function v(e){var s=f(e),t=e.parents("tr"),o=t.find(".wpsl-opening-hours").attr("data-day");1==s&&t.find(".wpsl-opening-hours").html("<p class='wpsl-store-closed'>"+wpslL10n.closedDate+"<input type='hidden' name='wpsl[hours]["+o+"_open]' value='' /></p>"),e.parent().closest(".wpsl-current-period").remove(),t.find(".wpsl-opening-hours div:first-child").hasClass("wpsl-multiple-periods")&&t.find(".wpsl-opening-hours div:first-child").removeClass("wpsl-multiple-periods")}function f(e){var s=e.parents("tr").find(".wpsl-current-period").length;return s}function m(s){var t,o,l,n,r=!1,a="",i="",p=[],c={hours:{hr12:[0,1,2,3,4,5,6,7,8,9,10,11,12,1,2,3,4,5,6,7,8,9,10,11],hr24:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]},interval:["00","15","30","45"]};n=e("#wpsl-editor-hour-format").length?e("#wpsl-editor-hour-format").val():wpslSettings.hourFormat,e("#wpsl-store-hours td").removeAttr("style"),12==n?(e("#wpsl-store-hours").removeClass().addClass("wpsl-twelve-format"),t=c.hours.hr12):(e("#wpsl-store-hours").removeClass().addClass("wpsl-twentyfour-format"),t=c.hours.hr24),o=c.interval;for(var d=0;d<t.length;d++){l=t[d],12==n?(l>=12&&(r=!0),a=r?"PM":"AM"):24==n&&1==l.toString().length&&(l="0"+l);for(var w=0;w<o.length;w++)p.push(l+":"+o[w]+" "+a)}for(var d=0;d<p.length;d++)i=i+'<option value="'+e.trim(p[d])+'">'+e.trim(p[d])+"</option>";return s?i:void g(i,n)}function g(s,t){var o,l,n,r={};e(".wpsl-current-period").each(function(){n=e(this),r={open:e(this).find(".wpsl-open-hour").val(),close:e(this).find(".wpsl-close-hour").val()},e(this).find("select").html(s).promise().done(function(){for(var s in r)r.hasOwnProperty(s)&&(o=r[s].split(":"),12==t?(l="",0==r[s].charAt(0)?(r[s]=r[s].substr(1),l=" AM"):2==o[0].length&&o[0]>12?(r[s]=o[0]-12+":"+o[1],l=" PM"):o[0]<12?(r[s]=o[0]+":"+o[1],l=" AM"):12==o[0]&&(r[s]=o[0]+":"+o[1],l=" PM"),-1==o[1].indexOf("PM")&&-1==o[1].indexOf("AM")&&(r[s]=r[s]+l)):24==t&&(-1!=o[1].indexOf("PM")?12==o[0]?r[s]="12:"+o[1].replace(" PM",""):r[s]=+o[0]+12+":"+o[1].replace(" PM",""):-1!=o[1].indexOf("AM")?1==o[0].toString().length?r[s]="0"+o[0]+":"+o[1].replace(" AM",""):r[s]=o[0]+":"+o[1].replace(" AM",""):r[s]=o[0]+":"+o[1]),n.find(".wpsl-"+s+"-hour option[value='"+e.trim(r[s])+"']").attr("selected","selected"))})})}function y(){var s="",t=e.trim(e("#wpsl-map-style").val());e(".wpsl-style-preview-error").remove(),t&&(s=C(t),s||e("#wpsl-style-preview").after("<div class='wpsl-style-preview-error'>"+wpslL10n.styleError+"</div>")),b.setOptions({styles:s})}function C(e){try{var s=JSON.parse(e);if(s&&"object"==typeof s&&null!==s)return s}catch(t){}return!1}var b,M,_=[];e("#wpsl-gmap-wrap").length&&s(),e("#wpsl-start-name").length&&o(),e("#wpsl-lookup-location").on("click",function(e){e.preventDefault(),r()}),e(".wpsl-marker-list input[type=radio]").click(function(){e(this).parents(".wpsl-marker-list").find("li").removeClass(),e(this).parent("li").addClass("wpsl-active-marker")}),e(".wpsl-marker-list li").click(function(){e(this).parents(".wpsl-marker-list").find("input").prop("checked",!1),e(this).find("input").prop("checked",!0),e(this).siblings().removeClass(),e(this).addClass("wpsl-active-marker")}),e(".wpsl-dismiss").click(function(){var s=e(this),t={action:"disable_location_warning",_ajax_nonce:s.attr("data-nonce")};return e.post(ajaxurl,t),e(".wpsl-dismiss").parents(".error").remove(),!1}),e(".wpsl-has-conditional-option").on("change",function(){e(this).parent().next(".wpsl-conditional-option").toggle()}),e("#wpsl-store-template").on("change",function(){var s=e("#wpsl-listing-below-no-scroll");"below_map"==e(this).val()?s.show():s.hide()}),e("#wpsl-api-region").on("change",function(){var s=e("#wpsl-geocode-component");e(this).val()?s.show():s.hide()}),e("#wpsl-editor-hour-input").on("change",function(){e(".wpsl-"+e(this).val()+"-hours").show().siblings("div").hide(),e(".wpsl-hour-notice").toggle()}),e("#wpsl-meta-nav li").on("click",function(s){var t=e(this).attr("class");t=t.split("-tab"),s.stopPropagation(),e(this).addClass("wpsl-active").siblings().removeClass("wpsl-active"),e(".wpsl-store-meta ."+t[0]).show().addClass("wpsl-active").siblings("div").hide().removeClass("wpsl-active")}),e("#wpsl-store-details").length&&e("#publish").click(function(){var s,t,o,l='<div id="message" class="error"><p>'+wpslL10n.requiredFields+"</p></div>",n=!1;return e("#wpbody-content .wrap #message").remove(),e(".wpsl-required").removeClass("wpsl-error"),e(".wpsl-required").each(function(){""==e(this).val()&&(e(this).addClass("wpsl-error"),"undefined"==typeof s&&(s=u(e(this))),n=!0)}),n?(e("#wpbody-content .wrap > h2").after(l),"undefined"!=typeof s.val&&("id"==s.type?(t=e("#"+s.val).parents(".wpsl-tab").attr("class"),e("html, body").scrollTop(Math.round(e("#"+s.val).offset().top-100))):"class"==s.type&&(o=s.val.replace(/wpsl-required|wpsl-error/g,""),t=e("."+o).parents(".wpsl-tab").attr("class"),e("html, body").scrollTop(Math.round(e("."+o).offset().top-100))),t=e.trim(t.replace(/wpsl-tab|wpsl-active/g,""))),w(t?t:"first"),e("#publish").removeClass("button-primary-disabled"),e(".spinner").hide(),!1):!0}),e("#wpsl-store-hours").length&&h(),e(".wpsl-add-period").on("click",function(s){var t,o={},l=!0,n=e(this).parents("tr"),r=f(e(this)),a=r>=1?"wpsl-current-period wpsl-multiple-periods":"wpsl-current-period",i=n.find(".wpsl-opening-hours").attr("data-day"),p=e("#wpsl-settings-form").length?"wpsl_editor[dropdown]":"wpsl[hours]";t='<div class="'+a+'">',t+='<select autocomplete="off" name="'+p+"["+i+'_open][]" class="wpsl-open-hour">'+m(l)+"</select>",t+="<span> - </span>",t+='<select autocomplete="off" name="'+p+"["+i+'_close][]" class="wpsl-close-hour">'+m(l)+"</select>",t+='<div class="wpsl-icon-cancel-circled"></div>',t+="</div>",n.find(".wpsl-store-closed").remove(),e("#wpsl-hours-"+i).append(t).end(),h(),o=24==e("#wpsl-editor-hour-format").val()?{open:"09:00",close:"17:00"}:{open:"9:00 AM",close:"5:00 PM"},n.find(".wpsl-open-hour:last option[value='"+o.open+"']").attr("selected","selected"),n.find(".wpsl-close-hour:last option[value='"+o.close+"']").attr("selected","selected"),s.preventDefault()}),e("#wpsl-editor-hour-format, #wpsl-editor-hour-interval").on("change",function(){m()}),e(".wpsl-info").on("mouseover",function(){e(this).find(".wpsl-info-text").show()}),e(".wpsl-info").on("mouseout",function(){e(this).find(".wpsl-info-text").hide()}),e("#wpsl-latlng").length&&!e("#wpsl-latlng").val()&&e("#wpsl-latlng").siblings("label").find(".wpsl-info").addClass("wpsl-required-setting"),e("#wpsl-map-style").val()&&y(),e("#wpsl-style-preview").on("click",function(){return y(),!1})});
admin/templates/add-ons.php ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if ( !defined( 'ABSPATH' ) ) exit;
3
+
4
+ $campaign_params = '?utm_source=wpsl-add-ons&utm_medium=banner&utm_campaign=add-ons';
5
+
6
+ // Load the add-on data from an existing transient, or grab new data from the remote URL.
7
+ if ( false === ( $add_ons = get_transient( 'wpsl_addons' ) ) ) {
8
+ $response = wp_remote_get( 'https://s3.amazonaws.com/wpsl/add-ons.json' );
9
+
10
+ if ( !is_wp_error( $response ) ) {
11
+ $add_ons = json_decode( wp_remote_retrieve_body( $response ) );
12
+
13
+ if ( $add_ons ) {
14
+ set_transient( 'wpsl_addons', $add_ons, WEEK_IN_SECONDS );
15
+ }
16
+ }
17
+ }
18
+ ?>
19
+
20
+ <div class="wrap wpsl-add-ons">
21
+ <h2><?php _e( 'WP Store Locator Add-Ons', 'wpsl' ); ?></h2>
22
+
23
+ <?php
24
+ if ( $add_ons ) {
25
+ foreach ( $add_ons as $add_on ) {
26
+ ?>
27
+ <div class="wpsl-add-on">
28
+ <?php if ( !empty( $add_on->url ) ) { ?>
29
+ <a title="<?php echo esc_attr( $add_on->name ); ?>" href="<?php echo esc_url( $add_on->url ) . $campaign_params; ?>">
30
+ <img src="<?php echo esc_url( $add_on->img ); ?>"/>
31
+ </a>
32
+ <?php } else { ?>
33
+ <img src="<?php echo esc_url( $add_on->img ); ?>"/>
34
+ <?php } ?>
35
+
36
+ <div class="wpsl-add-on-desc">
37
+ <p><?php echo esc_html( $add_on->desc ); ?></p>
38
+
39
+ <div class="wpsl-add-on-status">
40
+ <?php if ( !empty( $add_on->class ) && class_exists( $add_on->class ) ) { ?>
41
+ <p><strong><?php _e( 'Already Installed.', 'wpsl' ); ?></strong></p>
42
+ <?php } else if ( isset( $add_on->soon ) && $add_on->soon ) { ?>
43
+ <p><strong><?php _e( 'Coming soon!', 'wpsl' ); ?></strong></p>
44
+ <?php } else { ?>
45
+ <a class="button-primary" href="<?php echo esc_url( $add_on->url ) . $campaign_params; ?>">
46
+ <?php esc_html_e( 'Get This Add-On', 'wpsl' ); ?>
47
+ </a>
48
+ <?php } ?>
49
+ </div>
50
+ </div>
51
+ </div>
52
+ <?php
53
+ }
54
+ } else {
55
+ echo '<p>'. __( 'Failed to load the add-on list from the server.', 'wpsl' ) . '</p>';
56
+ echo '<p>'. __( 'Please try again later!', 'wpsl' ) . '</p>';
57
+ }
58
+ ?>
59
+ </div>
admin/templates/map-settings.php CHANGED
@@ -1,4 +1,4 @@
1
- <?php
2
  if ( !defined( 'ABSPATH' ) ) exit;
3
 
4
  global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
@@ -81,7 +81,6 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
81
  </form>
82
  <?php
83
  } else {
84
- //@todo add server / browser key fields for the Geocode API.
85
  ?>
86
 
87
  <div id="general">
@@ -92,8 +91,12 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
92
  <h3 class="hndle"><span><?php _e( 'Google Maps API', 'wpsl' ); ?></span></h3>
93
  <div class="inside">
94
  <p>
95
- <label for="wpsl-api-key"><?php _e( 'API key', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'A valid %sAPI key%s allows you to monitor the API usage and is required if you need to purchase additional quota.', 'wpsl' ), '<a href="https://developers.google.com/maps/documentation/javascript/tutorial#api_key" target="_blank">', '</a>' ); ?></span></span></label>
96
- <input type="text" value="<?php echo esc_attr( $wpsl_settings['api_key'] ); ?>" name="wpsl_api[key]" placeholder="<?php _e( 'Optional', 'wpsl' ); ?>" class="textinput" id="wpsl-api-key">
 
 
 
 
97
  </p>
98
  <p>
99
  <label for="wpsl-api-language"><?php _e( 'Map language', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php _e( 'If no map language is selected the browser\'s prefered language is used.', 'wpsl' ); ?></span></span></label>
@@ -125,19 +128,29 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
125
  <h3 class="hndle"><span><?php _e( 'Search', 'wpsl' ); ?></span></h3>
126
  <div class="inside">
127
  <p>
128
- <label for="wpsl-results-dropdown"><?php _e( 'Show the max results dropdown?', 'wpsl' ); ?></label>
 
 
 
 
129
  <input type="checkbox" value="" <?php checked( $wpsl_settings['results_dropdown'], true ); ?> name="wpsl_search[results_dropdown]" id="wpsl-results-dropdown">
130
  </p>
131
  <p>
132
- <label for="wpsl-radius-dropdown"><?php _e( 'Show the search radius dropdown?', 'wpsl' ); ?></label>
133
  <input type="checkbox" value="" <?php checked( $wpsl_settings['radius_dropdown'], true ); ?> name="wpsl_search[radius_dropdown]" id="wpsl-radius-dropdown">
134
  </p>
135
  <p>
136
- <label for="wpsl-category-dropdown"><?php _e( 'Show the category dropdown?', 'wpsl' ); ?></label>
137
- <input type="checkbox" value="" <?php checked( $wpsl_settings['category_dropdown'], true ); ?> name="wpsl_search[category_dropdown]" id="wpsl-category-dropdown">
138
  </p>
 
 
 
 
 
 
139
  <p>
140
- <label for="wpsl-distance-unit"><?php _e( 'Distance unit', 'wpsl' ); ?>:</label>
141
  <span class="wpsl-radioboxes">
142
  <input type="radio" autocomplete="off" value="km" <?php checked( 'km', $wpsl_settings['distance_unit'] ); ?> name="wpsl_search[distance_unit]" id="wpsl-distance-km">
143
  <label for="wpsl-distance-km"><?php _e( 'km', 'wpsl' ); ?></label>
@@ -172,16 +185,18 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
172
  </p>
173
  <p>
174
  <label for="wpsl-autoload"><?php _e( 'Load locations on page load', 'wpsl' ); ?>:</label>
175
- <input type="checkbox" value="" <?php checked( $wpsl_settings['autoload'], true ); ?> name="wpsl_map[autoload]" id="wpsl-autoload">
176
- </p>
177
- <p id="wpsl-autoload-options" <?php if ( !$wpsl_settings['autoload'] ) { echo 'style="display:none;"'; } ?>>
178
- <label for="wpsl-autoload-limit"><?php _e( 'Number of locations to show', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'Although the location data is cached after the first load, a lower number will result in the map being more responsive. %s If this field is left empty or set to 0, then all locations are loaded.', 'wpsl' ), '<br><br>' ); ?></span></span></label>
179
- <input type="text" value="<?php echo esc_attr( $wpsl_settings['autoload_limit'] ); ?>" name="wpsl_map[autoload_limit]" class="textinput" id="wpsl-autoload-limit">
180
  </p>
 
 
 
 
 
 
181
  <p>
182
- <label for="wpsl-zoom-name"><?php _e( 'Start point', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( '%sRequired field.%s %s If auto-locating the user is disabled or fails, the center of the provided city or country will be used as the initial starting point for the user.', 'wpsl' ), '<strong>', '</strong>', '<br><br>' ); ?></span></span></label>
183
- <input type="text" value="<?php echo esc_attr( $wpsl_settings['zoom_name'] ); ?>" name="wpsl_map[zoom_name]" class="textinput" id="wpsl-zoom-name">
184
- <input type="hidden" value="<?php echo esc_attr( $wpsl_settings['zoom_latlng'] ); ?>" name="wpsl_map[zoom_latlng]" id="wpsl-latlng" />
185
  </p>
186
  <p>
187
  <label for="wpsl-zoom-level"><?php _e( 'Initial zoom level', 'wpsl' ); ?>:</label>
@@ -280,12 +295,18 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
280
  <input type="checkbox" value="" <?php checked( $wpsl_settings['direction_redirect'], true ); ?> name="wpsl_ux[direction_redirect]" id="wpsl-direction-redirect">
281
  </p>
282
  <p>
283
- <label for="wpsl-more-info"><?php _e( 'Show a "More info" link in the store listings?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'This places a "More Info" link below the address and will show the phone, fax, email, opening hours and description once the link is clicked. %s If you for example want the contact details to always be visible, then please follow the instructions on %sthis%s page.', 'wpsl' ), '<br><br>', '<a href="http://wpstorelocator.co/document/include-contact-details-in-search-results/">', '</a>' ); ?></span></span></label>
284
- <input type="checkbox" value="" <?php checked( $wpsl_settings['more_info'], true ); ?> name="wpsl_ux[more_info]" id="wpsl-more-info">
285
- </p>
286
- <p id="wpsl-more-info-options" <?php if ( !$wpsl_settings['more_info'] ) { echo 'style="display:none;"'; } ?>>
287
- <label for="wpsl-more-info-list"><?php _e( 'Where do you want to show the "More info" details?', 'wpsl' ); ?></label>
288
- <?php echo $wpsl_admin->settings_page->create_dropdown( 'more_info' ); ?>
 
 
 
 
 
 
289
  </p>
290
  <p>
291
  <label for="wpsl-store-url"><?php _e( 'Make the store name clickable if a store URL exists?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'If %spermalinks%s are enabled, the store name will always link to the store page.', 'wpsl' ), '<a href="' . admin_url( 'edit.php?post_type=wpsl_stores&page=wpsl_settings#wpsl-permalink-settings' ) . '">', '</a>' ); ?></span></span></label>
@@ -311,6 +332,10 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
311
  <label for="wpsl-infowindow-style"><?php _e( 'Use the default style for the info window?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'If the default style is disabled the %sInfoBox%s library will be used instead. %s This enables you to easily change the look and feel of the info window through the .wpsl-infobox css class.', 'wpsl' ), '<a href="http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/docs/reference.html" target="_blank">', '</a>', '<br><br>' ); ?></span></span></label>
312
  <input type="checkbox" value="default" <?php checked( $wpsl_settings['infowindow_style'], 'default' ); ?> name="wpsl_ux[infowindow_style]" id="wpsl-infowindow-style">
313
  </p>
 
 
 
 
314
  <p>
315
  <label for="wpsl-hide-distance"><?php _e( 'Hide the distance in the search results?', 'wpsl' ); ?></label>
316
  <input type="checkbox" value="" <?php checked( $wpsl_settings['hide_distance'], true ); ?> name="wpsl_ux[hide_distance]" id="wpsl-hide-distance">
@@ -338,17 +363,19 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
338
  <div class="inside">
339
  <?php echo $wpsl_admin->settings_page->show_marker_options(); ?>
340
  <p>
341
- <label for="wpsl-marker-clusters"><?php _e( 'Enable marker clusters?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php _e( 'Recommended for maps with a large amount of markers.', 'wpsl' ); ?></span></span></label>
342
- <input type="checkbox" value="" <?php checked( $wpsl_settings['marker_clusters'], true ); ?> name="wpsl_map[marker_clusters]" id="wpsl-marker-clusters">
343
- </p>
344
- <p class="wpsl-cluster-options" <?php if ( !$wpsl_settings['marker_clusters'] ) { echo 'style="display:none;"'; } ?>>
345
- <label for="wpsl-marker-zoom"><?php _e( 'Max zoom level', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php _e( 'If this zoom level is reached or exceeded, then all markers are moved out of the marker cluster and shown as individual markers.', 'wpsl' ); ?></span></span></label>
346
- <?php echo $wpsl_admin->settings_page->show_cluster_options( 'cluster_zoom' ); ?>
347
- </p>
348
- <p class="wpsl-cluster-options" <?php if ( !$wpsl_settings['marker_clusters'] ) { echo 'style="display:none;"'; } ?>>
349
- <label for="wpsl-marker-cluster-size"><?php _e( 'Cluster size', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'The grid size of a cluster in pixels. %s A larger number will result in a lower amount of clusters and also make the algorithm run faster.', 'wpsl' ), '<br><br>' ); ?></span></span></label>
350
- <?php echo $wpsl_admin->settings_page->show_cluster_options( 'cluster_size' ); ?>
351
  </p>
 
 
 
 
 
 
 
 
 
 
352
  <p class="submit">
353
  <input type="submit" value="<?php _e( 'Save Changes', 'wpsl' ); ?>" class="button-primary">
354
  </p>
@@ -372,9 +399,9 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
372
  </p>
373
  <p>
374
  <label for="wpsl-editor-hide-hours"><?php _e( 'Hide the opening hours?', 'wpsl' ); ?></label>
375
- <input type="checkbox" value="" <?php checked( $wpsl_settings['hide_hours'], true ); ?> name="wpsl_editor[hide_hours]" id="wpsl-editor-hide-hours">
376
  </p>
377
- <div class="wpsl-hours" <?php if ( $wpsl_settings['hide_hours'] ) { echo 'style="display:none"'; } ?>>
378
  <?php if ( get_option( 'wpsl_legacy_support' ) ) { // Is only set for users who upgraded from 1.x ?>
379
  <p>
380
  <label for="wpsl-editor-hour-input"><?php _e( 'Opening hours input type', 'wpsl' ); ?>:</label>
@@ -414,17 +441,19 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
414
  <div class="inside">
415
  <p>
416
  <label for="wpsl-permalinks-active"><?php _e( 'Enable permalink?', 'wpsl' ); ?></label>
417
- <input type="checkbox" value="" <?php checked( $wpsl_settings['permalinks'], true ); ?> name="wpsl_permalinks[active]" id="wpsl-permalinks-active">
418
- </p>
419
- <p class="wpsl-permalink-option" <?php if ( !$wpsl_settings['permalinks'] ) { echo 'style="display:none;"'; } ?>>
420
- <label for="wpsl-permalinks-slug"><?php _e( 'Store slug', 'wpsl' ); ?>:</label>
421
- <input type="text" value="<?php echo esc_attr( $wpsl_settings['permalink_slug'] ); ?>" name="wpsl_permalinks[slug]" class="textinput" id="wpsl-permalinks-slug">
422
  </p>
423
- <p class="wpsl-permalink-option" <?php if ( !$wpsl_settings['permalinks'] ) { echo 'style="display:none;"'; } ?>>
424
- <label for="wpsl-category-slug"><?php _e( 'Category slug', 'wpsl' ); ?>:</label>
425
- <input type="text" value="<?php echo esc_attr( $wpsl_settings['category_slug'] ); ?>" name="wpsl_permalinks[category_slug]" class="textinput" id="wpsl-category-slug">
426
- </p>
427
- <em class="wpsl-permalink-option"><?php echo sprintf( __( 'The permalink slugs %smust be unique%s on your site.', 'wpsl' ), '<strong>', '</strong>' ); ?></em>
 
 
 
 
 
 
428
  <p class="submit">
429
  <input type="submit" value="<?php _e( 'Save Changes', 'wpsl' ); ?>" class="button-primary">
430
  </p>
@@ -477,6 +506,10 @@ global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
477
  <label for="wpsl-category"><?php _e( 'Category filter', 'wpsl' ); ?>:</label>
478
  <input type="text" value="<?php echo esc_attr( $wpsl->i18n->get_translation( 'category_label', __( 'Category', 'wpsl' ) ) ); ?>" name="wpsl_label[category]" class="textinput" id="wpsl-category">
479
  </p>
 
 
 
 
480
  <p>
481
  <label for="wpsl-more-info"><?php _e( 'More info', 'wpsl' ); ?>:</label>
482
  <input type="text" value="<?php echo esc_attr( $wpsl->i18n->get_translation( 'more_label', __( 'More info', 'wpsl' ) ) ); ?>" name="wpsl_label[more]" class="textinput" id="wpsl-more-info">
1
+ <?php
2
  if ( !defined( 'ABSPATH' ) ) exit;
3
 
4
  global $wpdb, $wpsl, $wpsl_admin, $wp_version, $wpsl_settings;
81
  </form>
82
  <?php
83
  } else {
 
84
  ?>
85
 
86
  <div id="general">
91
  <h3 class="hndle"><span><?php _e( 'Google Maps API', 'wpsl' ); ?></span></h3>
92
  <div class="inside">
93
  <p>
94
+ <label for="wpsl-api-server-key"><?php _e( 'Server key', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'A %sserver key%s allows you to monitor the usage of the Google Maps %sGeocoding API%s, and is required if you need to %spurchase%s additional quota.', 'wpsl' ), '<a href="https://developers.google.com/maps/documentation/geocoding/get-api-key#get-an-api-key" target="_blank">', '</a>', '<a href="https://developers.google.com/maps/documentation/geocoding/intro">', '</a>', '<a href="https://developers.google.com/maps/documentation/geocoding/usage-limits#increase-your-quota-by-enabling-pay-as-you-go-billing">', '</a>' ); ?></span></span></label>
95
+ <input type="text" value="<?php echo esc_attr( $wpsl_settings['api_server_key'] ); ?>" name="wpsl_api[server_key]" placeholder="<?php _e( 'Optional', 'wpsl' ); ?>" class="textinput" id="wpsl-api-server-key">
96
+ </p>
97
+ <p>
98
+ <label for="wpsl-api-browser-key"><?php _e( 'Browser key', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'A %sbrowser key%s allows you to monitor the usage of the Google Maps %sJavaScript API%s.', 'wpsl' ), '<a href="https://developers.google.com/maps/documentation/javascript/get-api-key#get-an-api-key" target="_blank">', '</a>', '<a href="https://developers.google.com/maps/documentation/javascript/">', '</a>' ); ?></span></span></label>
99
+ <input type="text" value="<?php echo esc_attr( $wpsl_settings['api_browser_key'] ); ?>" name="wpsl_api[browser_key]" placeholder="<?php _e( 'Optional', 'wpsl' ); ?>" class="textinput" id="wpsl-api-browser-key">
100
  </p>
101
  <p>
102
  <label for="wpsl-api-language"><?php _e( 'Map language', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php _e( 'If no map language is selected the browser\'s prefered language is used.', 'wpsl' ); ?></span></span></label>
128
  <h3 class="hndle"><span><?php _e( 'Search', 'wpsl' ); ?></span></h3>
129
  <div class="inside">
130
  <p>
131
+ <label for="wpsl-search-autocomplete"><?php _e( 'Enable autocomplete?', 'wpsl' ); ?></label>
132
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['autocomplete'], true ); ?> name="wpsl_search[autocomplete]" id="wpsl-search-autocomplete">
133
+ </p>
134
+ <p>
135
+ <label for="wpsl-results-dropdown"><?php _e( 'Show the max results dropdown?', 'wpsl' ); ?></label>
136
  <input type="checkbox" value="" <?php checked( $wpsl_settings['results_dropdown'], true ); ?> name="wpsl_search[results_dropdown]" id="wpsl-results-dropdown">
137
  </p>
138
  <p>
139
+ <label for="wpsl-radius-dropdown"><?php _e( 'Show the search radius dropdown?', 'wpsl' ); ?></label>
140
  <input type="checkbox" value="" <?php checked( $wpsl_settings['radius_dropdown'], true ); ?> name="wpsl_search[radius_dropdown]" id="wpsl-radius-dropdown">
141
  </p>
142
  <p>
143
+ <label for="wpsl-category-filters"><?php _e( 'Enable category filters?', 'wpsl' ); ?></label>
144
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['category_filter'], true ); ?> name="wpsl_search[category_filter]" id="wpsl-category-filters" class="wpsl-has-conditional-option">
145
  </p>
146
+ <div class="wpsl-conditional-option" <?php if ( !$wpsl_settings['category_filter'] ) { echo 'style="display:none;"'; } ?>>
147
+ <p>
148
+ <label for="wpsl-cat-filter-types"><?php _e( 'Filter type:', 'wpsl' ); ?></label>
149
+ <?php echo $wpsl_admin->settings_page->create_dropdown( 'filter_types' ); ?>
150
+ </p>
151
+ </div>
152
  <p>
153
+ <label for="wpsl-distance-unit"><?php _e( 'Distance unit', 'wpsl' ); ?>:</label>
154
  <span class="wpsl-radioboxes">
155
  <input type="radio" autocomplete="off" value="km" <?php checked( 'km', $wpsl_settings['distance_unit'] ); ?> name="wpsl_search[distance_unit]" id="wpsl-distance-km">
156
  <label for="wpsl-distance-km"><?php _e( 'km', 'wpsl' ); ?></label>
185
  </p>
186
  <p>
187
  <label for="wpsl-autoload"><?php _e( 'Load locations on page load', 'wpsl' ); ?>:</label>
188
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['autoload'], true ); ?> name="wpsl_map[autoload]" id="wpsl-autoload" class="wpsl-has-conditional-option">
 
 
 
 
189
  </p>
190
+ <div class="wpsl-conditional-option" <?php if ( !$wpsl_settings['autoload'] ) { echo 'style="display:none;"'; } ?>>
191
+ <p>
192
+ <label for="wpsl-autoload-limit"><?php _e( 'Number of locations to show', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'Although the location data is cached after the first load, a lower number will result in the map being more responsive. %s If this field is left empty or set to 0, then all locations are loaded.', 'wpsl' ), '<br><br>' ); ?></span></span></label>
193
+ <input type="text" value="<?php echo esc_attr( $wpsl_settings['autoload_limit'] ); ?>" name="wpsl_map[autoload_limit]" class="textinput" id="wpsl-autoload-limit">
194
+ </p>
195
+ </div>
196
  <p>
197
+ <label for="wpsl-start-name"><?php _e( 'Start point', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( '%sRequired field.%s %s If auto-locating the user is disabled or fails, the center of the provided city or country will be used as the initial starting point for the user.', 'wpsl' ), '<strong>', '</strong>', '<br><br>' ); ?></span></span></label>
198
+ <input type="text" value="<?php echo esc_attr( $wpsl_settings['start_name'] ); ?>" name="wpsl_map[start_name]" class="textinput" id="wpsl-start-name">
199
+ <input type="hidden" value="<?php echo esc_attr( $wpsl_settings['start_latlng'] ); ?>" name="wpsl_map[start_latlng]" id="wpsl-latlng" />
200
  </p>
201
  <p>
202
  <label for="wpsl-zoom-level"><?php _e( 'Initial zoom level', 'wpsl' ); ?>:</label>
295
  <input type="checkbox" value="" <?php checked( $wpsl_settings['direction_redirect'], true ); ?> name="wpsl_ux[direction_redirect]" id="wpsl-direction-redirect">
296
  </p>
297
  <p>
298
+ <label for="wpsl-more-info"><?php _e( 'Show a "More info" link in the store listings?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'This places a "More Info" link below the address and will show the phone, fax, email, opening hours and description once the link is clicked.', 'wpsl' ) ); ?></span></span></label>
299
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['more_info'], true ); ?> name="wpsl_ux[more_info]" id="wpsl-more-info" class="wpsl-has-conditional-option">
300
+ </p>
301
+ <div class="wpsl-conditional-option" <?php if ( !$wpsl_settings['more_info'] ) { echo 'style="display:none;"'; } ?>>
302
+ <p>
303
+ <label for="wpsl-more-info-list"><?php _e( 'Where do you want to show the "More info" details?', 'wpsl' ); ?></label>
304
+ <?php echo $wpsl_admin->settings_page->create_dropdown( 'more_info' ); ?>
305
+ </p>
306
+ </div>
307
+ <p>
308
+ <label for="wpsl-contact-details"><?php _e( 'Always show the contact details below the address in the search results?', 'wpsl' ); ?></label>
309
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['show_contact_details'], true ); ?> name="wpsl_ux[show_contact_details]" id="wpsl-contact-details">
310
  </p>
311
  <p>
312
  <label for="wpsl-store-url"><?php _e( 'Make the store name clickable if a store URL exists?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'If %spermalinks%s are enabled, the store name will always link to the store page.', 'wpsl' ), '<a href="' . admin_url( 'edit.php?post_type=wpsl_stores&page=wpsl_settings#wpsl-permalink-settings' ) . '">', '</a>' ); ?></span></span></label>
332
  <label for="wpsl-infowindow-style"><?php _e( 'Use the default style for the info window?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'If the default style is disabled the %sInfoBox%s library will be used instead. %s This enables you to easily change the look and feel of the info window through the .wpsl-infobox css class.', 'wpsl' ), '<a href="http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/docs/reference.html" target="_blank">', '</a>', '<br><br>' ); ?></span></span></label>
333
  <input type="checkbox" value="default" <?php checked( $wpsl_settings['infowindow_style'], 'default' ); ?> name="wpsl_ux[infowindow_style]" id="wpsl-infowindow-style">
334
  </p>
335
+ <p>
336
+ <label for="wpsl-hide-country"><?php _e( 'Hide the country in the search results?', 'wpsl' ); ?></label>
337
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['hide_country'], true ); ?> name="wpsl_ux[hide_country]" id="wpsl-hide-country">
338
+ </p>
339
  <p>
340
  <label for="wpsl-hide-distance"><?php _e( 'Hide the distance in the search results?', 'wpsl' ); ?></label>
341
  <input type="checkbox" value="" <?php checked( $wpsl_settings['hide_distance'], true ); ?> name="wpsl_ux[hide_distance]" id="wpsl-hide-distance">
363
  <div class="inside">
364
  <?php echo $wpsl_admin->settings_page->show_marker_options(); ?>
365
  <p>
366
+ <label for="wpsl-marker-clusters"><?php _e( 'Enable marker clusters?', 'wpsl' ); ?><span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php _e( 'Recommended for maps with a large amount of markers.', 'wpsl' ); ?></span></span></label>
367
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['marker_clusters'], true ); ?> name="wpsl_map[marker_clusters]" id="wpsl-marker-clusters" class="wpsl-has-conditional-option">
 
 
 
 
 
 
 
 
368
  </p>
369
+ <div class="wpsl-conditional-option" <?php if ( !$wpsl_settings['marker_clusters'] ) { echo 'style="display:none;"'; } ?>>
370
+ <p>
371
+ <label for="wpsl-marker-zoom"><?php _e( 'Max zoom level', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php _e( 'If this zoom level is reached or exceeded, then all markers are moved out of the marker cluster and shown as individual markers.', 'wpsl' ); ?></span></span></label>
372
+ <?php echo $wpsl_admin->settings_page->show_cluster_options( 'cluster_zoom' ); ?>
373
+ </p>
374
+ <p>
375
+ <label for="wpsl-marker-cluster-size"><?php _e( 'Cluster size', 'wpsl' ); ?>:<span class="wpsl-info"><span class="wpsl-info-text wpsl-hide"><?php echo sprintf( __( 'The grid size of a cluster in pixels. %s A larger number will result in a lower amount of clusters and also make the algorithm run faster.', 'wpsl' ), '<br><br>' ); ?></span></span></label>
376
+ <?php echo $wpsl_admin->settings_page->show_cluster_options( 'cluster_size' ); ?>
377
+ </p>
378
+ </div>
379
  <p class="submit">
380
  <input type="submit" value="<?php _e( 'Save Changes', 'wpsl' ); ?>" class="button-primary">
381
  </p>
399
  </p>
400
  <p>
401
  <label for="wpsl-editor-hide-hours"><?php _e( 'Hide the opening hours?', 'wpsl' ); ?></label>
402
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['hide_hours'], true ); ?> name="wpsl_editor[hide_hours]" id="wpsl-editor-hide-hours" class="wpsl-has-conditional-option">
403
  </p>
404
+ <div class="wpsl-conditional-option" <?php if ( $wpsl_settings['hide_hours'] ) { echo 'style="display:none"'; } ?>>
405
  <?php if ( get_option( 'wpsl_legacy_support' ) ) { // Is only set for users who upgraded from 1.x ?>
406
  <p>
407
  <label for="wpsl-editor-hour-input"><?php _e( 'Opening hours input type', 'wpsl' ); ?>:</label>
441
  <div class="inside">
442
  <p>
443
  <label for="wpsl-permalinks-active"><?php _e( 'Enable permalink?', 'wpsl' ); ?></label>
444
+ <input type="checkbox" value="" <?php checked( $wpsl_settings['permalinks'], true ); ?> name="wpsl_permalinks[active]" id="wpsl-permalinks-active" class="wpsl-has-conditional-option">
 
 
 
 
445
  </p>
446
+ <div class="wpsl-conditional-option" <?php if ( !$wpsl_settings['permalinks'] ) { echo 'style="display:none;"'; } ?>>
447
+ <p>
448
+ <label for="wpsl-permalinks-slug"><?php _e( 'Store slug', 'wpsl' ); ?>:</label>
449
+ <input type="text" value="<?php echo esc_attr( $wpsl_settings['permalink_slug'] ); ?>" name="wpsl_permalinks[slug]" class="textinput" id="wpsl-permalinks-slug">
450
+ </p>
451
+ <p>
452
+ <label for="wpsl-category-slug"><?php _e( 'Category slug', 'wpsl' ); ?>:</label>
453
+ <input type="text" value="<?php echo esc_attr( $wpsl_settings['category_slug'] ); ?>" name="wpsl_permalinks[category_slug]" class="textinput" id="wpsl-category-slug">
454
+ </p>
455
+ <em><?php echo sprintf( __( 'The permalink slugs %smust be unique%s on your site.', 'wpsl' ), '<strong>', '</strong>' ); ?></em>
456
+ </div>
457
  <p class="submit">
458
  <input type="submit" value="<?php _e( 'Save Changes', 'wpsl' ); ?>" class="button-primary">
459
  </p>
506
  <label for="wpsl-category"><?php _e( 'Category filter', 'wpsl' ); ?>:</label>
507
  <input type="text" value="<?php echo esc_attr( $wpsl->i18n->get_translation( 'category_label', __( 'Category', 'wpsl' ) ) ); ?>" name="wpsl_label[category]" class="textinput" id="wpsl-category">
508
  </p>
509
+ <p>
510
+ <label for="wpsl-category-default"><?php _e( 'Category first item', 'wpsl' ); ?>:</label>
511
+ <input type="text" value="<?php echo esc_attr( $wpsl->i18n->get_translation( 'category_default_label', __( 'Any', 'wpsl' ) ) ); ?>" name="wpsl_label[category_default]" class="textinput" id="wpsl-category-default">
512
+ </p>
513
  <p>
514
  <label for="wpsl-more-info"><?php _e( 'More info', 'wpsl' ); ?>:</label>
515
  <input type="text" value="<?php echo esc_attr( $wpsl->i18n->get_translation( 'more_label', __( 'More info', 'wpsl' ) ) ); ?>" name="wpsl_label[more]" class="textinput" id="wpsl-more-info">
admin/upgrade.php CHANGED
@@ -19,17 +19,14 @@ function wpsl_check_upgrade() {
19
 
20
  if ( version_compare( $current_version, '1.1', '<' ) ) {
21
  if ( is_array( $wpsl_settings ) ) {
22
- /* Add the default value for the reset map option */
23
  if ( empty( $wpsl_settings['reset_map'] ) ) {
24
  $wpsl_settings['reset_map'] = 0;
25
  }
26
 
27
- /* Add the default value for the way the store listings are shown, either below or next to the map */
28
  if ( empty( $wpsl_settings['auto_load'] ) ) {
29
  $wpsl_settings['auto_load'] = 1;
30
  }
31
 
32
- /* Add the default value for the route redirect */
33
  if ( empty( $wpsl_settings['new_window'] ) ) {
34
  $wpsl_settings['new_window'] = 0;
35
  }
@@ -40,12 +37,10 @@ function wpsl_check_upgrade() {
40
 
41
  if ( version_compare( $current_version, '1.2', '<' ) ) {
42
  if ( is_array( $wpsl_settings ) ) {
43
- /* Add the default value for the way the store listings are shown, either below or next to the map */
44
  if ( empty( $wpsl_settings['store_below'] ) ) {
45
  $wpsl_settings['store_below'] = 0;
46
  }
47
 
48
- /* Add the default value for the route redirect */
49
  if ( empty( $wpsl_settings['direction_redirect'] ) ) {
50
  $wpsl_settings['direction_redirect'] = 0;
51
  }
@@ -56,17 +51,14 @@ function wpsl_check_upgrade() {
56
 
57
  if ( version_compare( $current_version, '1.2.11', '<' ) ) {
58
  if ( is_array( $wpsl_settings ) ) {
59
- /* Add the default value for the 'more info' link option */
60
  if ( empty( $wpsl_settings['more_info'] ) ) {
61
  $wpsl_settings['more_info'] = 0;
62
  }
63
 
64
- /* Add the default value for the 'more info' label */
65
  if ( empty( $wpsl_settings['more_label'] ) ) {
66
  $wpsl_settings['more_label'] = __( 'More info', 'wpsl' );
67
  }
68
 
69
- /* Add the default value mouse focus option */
70
  if ( empty( $wpsl_settings['mouse_focus'] ) ) {
71
  $wpsl_settings['mouse_focus'] = 1;
72
  }
@@ -77,22 +69,18 @@ function wpsl_check_upgrade() {
77
 
78
  if ( version_compare( $current_version, '1.2.12', '<' ) ) {
79
  if ( is_array( $wpsl_settings ) ) {
80
- /* Add the default value for the 'more info link' link option */
81
  if ( empty( $wpsl_settings['more_info_location'] ) ) {
82
  $wpsl_settings['more_info_location'] = __( 'info window', 'wpsl' );
83
  }
84
 
85
- /* Add the default value for the back label */
86
  if ( empty( $wpsl_settings['back_label'] ) ) {
87
  $wpsl_settings['back_label'] = __( 'Back', 'wpsl' );
88
  }
89
 
90
- /* Add the default value for the reset label */
91
  if ( empty( $wpsl_settings['reset_label'] ) ) {
92
  $wpsl_settings['reset_label'] = __( 'Reset', 'wpsl' );
93
  }
94
 
95
- /* Add the default value for removing the scroll bar when the store listing is shown below the map */
96
  if ( empty( $wpsl_settings['store_below_scroll'] ) ) {
97
  $wpsl_settings['store_below_scroll'] = 0;
98
  }
@@ -107,10 +95,10 @@ function wpsl_check_upgrade() {
107
 
108
  $wpsl_table = $wpdb->prefix . 'wpsl_stores';
109
 
110
- /* Rename the street field to address */
111
  $wpdb->query( "ALTER TABLE $wpsl_table CHANGE street address VARCHAR(255)" );
112
 
113
- /* Add the second address field */
114
  $wpdb->query( "ALTER TABLE $wpsl_table ADD address2 VARCHAR(255) NULL AFTER address" );
115
 
116
  if ( is_array( $wpsl_settings ) ) {
@@ -238,7 +226,7 @@ function wpsl_check_upgrade() {
238
  $wpsl_settings['hide_hours'] = 0;
239
  }
240
 
241
- /* Either correct the existing map style format from the 2.0 beta or set it to empty */
242
  if ( isset( $wpsl_settings['map_style'] ) && is_array( $wpsl_settings['map_style'] ) && isset( $wpsl_settings['map_style']['id'] ) ) {
243
  switch( $wpsl_settings['map_style']['id'] ) {
244
  case 'custom':
@@ -282,7 +270,8 @@ function wpsl_check_upgrade() {
282
  $wpsl_settings['category_dropdown'] = 0;
283
  }
284
 
285
- /* Replace marker_bounce with marker_effect to better reflect what the option contains.
 
286
  *
287
  * If a user hovers over the result list then either the corresponding marker will bounce,
288
  * the info window will open, or nothing will happen.
@@ -294,20 +283,21 @@ function wpsl_check_upgrade() {
294
  unset( $wpsl_settings['marker_bounce'] );
295
  }
296
 
297
- /* The default input for the opening hours is set to textarea for current users,
 
298
  * for new users it will be set to dropdown ( easier to format in a table output and to use with schema.org in the future ).
299
  */
300
  if ( empty( $wpsl_settings['editor_hour_input'] ) ) {
301
  $wpsl_settings['editor_hour_input'] = 'textarea';
302
  }
303
 
304
- /* Rename store_below_scroll to listing_below_no_scroll, it better reflects what it does */
305
  if ( empty( $wpsl_settings['listing_below_no_scroll'] ) && isset( $wpsl_settings['store_below_scroll'] ) ) {
306
  $wpsl_settings['listing_below_no_scroll'] = $wpsl_settings['store_below_scroll'];
307
  unset( $wpsl_settings['store_below_scroll'] );
308
  }
309
 
310
- /* Change the template ids from number based to name based */
311
  if ( is_numeric( $wpsl_settings['template_id'] ) ) {
312
  $wpsl_settings['template_id'] = ( !$wpsl_settings['template_id'] ) ? 'default' : 'below_map';
313
  }
@@ -317,19 +307,21 @@ function wpsl_check_upgrade() {
317
  'search_radius' => $wpsl_settings['search_radius']
318
  );
319
 
320
- /* Replace the () with [], this fixes an issue with the mod_security module that is installed on some servers.
 
321
  * It triggerd a 'Possible SQL injection attack' warning probably because of the int,(int) format of the data.
322
  */
323
  foreach ( $replace_data as $index => $option_value ) {
324
  $wpsl_settings[$index] = str_replace( array( '(', ')' ), array( '[', ']' ), $option_value );
325
  }
326
 
327
- /* The reset button now uses an icon instead of text, so no need for the label anymore */
328
  unset( $wpsl_settings['reset_label'] );
329
 
330
  update_option( 'wpsl_settings', $wpsl_settings );
331
 
332
- /* Users upgrading from 1.x will be given the choice between the textarea or
 
333
  * dropdowns for the opening hours.
334
  *
335
  * New users don't get that choice, they will only get the dropdowns.
@@ -338,11 +330,11 @@ function wpsl_check_upgrade() {
338
  */
339
  update_option( 'wpsl_legacy_support', 1 );
340
 
341
- /* Add the WPSL roles and caps */
342
  wpsl_add_roles();
343
  wpsl_add_caps();
344
 
345
- /* If there is a wpsl_stores table, then we need to convert all the locations to the 'wpsl_stores' custom post type */
346
  if ( $wpdb->get_var( "SHOW TABLES LIKE '$wpsl_table'" ) && version_compare( $current_version, '1.9', '<' ) ) {
347
  if ( wpsl_remaining_cpt_count() ) {
348
  update_option( 'wpsl_convert_cpt', 'in_progress' );
@@ -363,12 +355,46 @@ function wpsl_check_upgrade() {
363
  }
364
 
365
  if ( version_compare( $current_version, '2.1.0', '<' ) ) {
366
- if ( empty( $wpsl_settings['api_geocode_component'] ) ) {
367
  $wpsl_settings['api_geocode_component'] = 0;
368
  }
369
 
370
  update_option( 'wpsl_settings', $wpsl_settings );
371
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
372
 
373
  update_option( 'wpsl_version', WPSL_VERSION_NUM );
374
  }
@@ -530,7 +556,7 @@ function wpsl_convert_cpt() {
530
  die( '-1' );
531
  check_ajax_referer( 'wpsl-cpt-fix' );
532
 
533
- /* Start the cpt coversion */
534
  wpsl_cpt_conversion();
535
 
536
  exit();
@@ -588,7 +614,8 @@ function wpsl_remaining_cpt_count() {
588
  $db_count = $wpdb->get_var( "SELECT COUNT(wpsl_id) FROM $table" );
589
  $difference = $db_count - $cpt_count;
590
 
591
- /* This prevents users who used the 2.0 beta, and later added
 
592
  * more stores from seeing the upgrade notice again.
593
  */
594
  $remaining = ( $difference < 0 ) ? false : $difference;
@@ -606,7 +633,7 @@ function wpsl_cpt_conversion() {
606
 
607
  global $wpdb;
608
 
609
- /* Try to disable the time limit to prevent timeouts */
610
  @set_time_limit( 0 );
611
 
612
  $meta_keys = array( 'address', 'address2', 'city', 'state', 'zip', 'country', 'country_iso', 'lat', 'lng', 'phone', 'fax', 'url', 'email', 'hours' );
@@ -616,7 +643,7 @@ function wpsl_cpt_conversion() {
616
 
617
  foreach ( $stores as $store ) {
618
 
619
- /* Make sure we set the correct post status */
620
  if ( $store->active ) {
621
  $post_status = 'publish';
622
  } else {
@@ -634,14 +661,14 @@ function wpsl_cpt_conversion() {
634
 
635
  if ( $post_id ) {
636
 
637
- /* Save the data from the wpsl_stores db table as post meta data */
638
  foreach ( $meta_keys as $meta_key ) {
639
  if ( isset( $store->{$meta_key} ) && !empty( $store->{$meta_key} ) ) {
640
  update_post_meta( $post_id, 'wpsl_' . $meta_key, $store->{$meta_key} );
641
  }
642
  }
643
 
644
- /* If we have a thumb ID set the post thumbnail for the inserted post */
645
  if ( $store->thumb_id ) {
646
  set_post_thumbnail( $post_id, $store->thumb_id );
647
  }
19
 
20
  if ( version_compare( $current_version, '1.1', '<' ) ) {
21
  if ( is_array( $wpsl_settings ) ) {
 
22
  if ( empty( $wpsl_settings['reset_map'] ) ) {
23
  $wpsl_settings['reset_map'] = 0;
24
  }
25
 
 
26
  if ( empty( $wpsl_settings['auto_load'] ) ) {
27
  $wpsl_settings['auto_load'] = 1;
28
  }
29
 
 
30
  if ( empty( $wpsl_settings['new_window'] ) ) {
31
  $wpsl_settings['new_window'] = 0;
32
  }
37
 
38
  if ( version_compare( $current_version, '1.2', '<' ) ) {
39
  if ( is_array( $wpsl_settings ) ) {
 
40
  if ( empty( $wpsl_settings['store_below'] ) ) {
41
  $wpsl_settings['store_below'] = 0;
42
  }
43
 
 
44
  if ( empty( $wpsl_settings['direction_redirect'] ) ) {
45
  $wpsl_settings['direction_redirect'] = 0;
46
  }
51
 
52
  if ( version_compare( $current_version, '1.2.11', '<' ) ) {
53
  if ( is_array( $wpsl_settings ) ) {
 
54
  if ( empty( $wpsl_settings['more_info'] ) ) {
55
  $wpsl_settings['more_info'] = 0;
56
  }
57
 
 
58
  if ( empty( $wpsl_settings['more_label'] ) ) {
59
  $wpsl_settings['more_label'] = __( 'More info', 'wpsl' );
60
  }
61
 
 
62
  if ( empty( $wpsl_settings['mouse_focus'] ) ) {
63
  $wpsl_settings['mouse_focus'] = 1;
64
  }
69
 
70
  if ( version_compare( $current_version, '1.2.12', '<' ) ) {
71
  if ( is_array( $wpsl_settings ) ) {
 
72
  if ( empty( $wpsl_settings['more_info_location'] ) ) {
73
  $wpsl_settings['more_info_location'] = __( 'info window', 'wpsl' );
74
  }
75
 
 
76
  if ( empty( $wpsl_settings['back_label'] ) ) {
77
  $wpsl_settings['back_label'] = __( 'Back', 'wpsl' );
78
  }
79
 
 
80
  if ( empty( $wpsl_settings['reset_label'] ) ) {
81
  $wpsl_settings['reset_label'] = __( 'Reset', 'wpsl' );
82
  }
83
 
 
84
  if ( empty( $wpsl_settings['store_below_scroll'] ) ) {
85
  $wpsl_settings['store_below_scroll'] = 0;
86
  }
95
 
96
  $wpsl_table = $wpdb->prefix . 'wpsl_stores';
97
 
98
+ // Rename the street field to address.
99
  $wpdb->query( "ALTER TABLE $wpsl_table CHANGE street address VARCHAR(255)" );
100
 
101
+ // Add the second address field.
102
  $wpdb->query( "ALTER TABLE $wpsl_table ADD address2 VARCHAR(255) NULL AFTER address" );
103
 
104
  if ( is_array( $wpsl_settings ) ) {
226
  $wpsl_settings['hide_hours'] = 0;
227
  }
228
 
229
+ // Either correct the existing map style format from the 2.0 beta or set it to empty.
230
  if ( isset( $wpsl_settings['map_style'] ) && is_array( $wpsl_settings['map_style'] ) && isset( $wpsl_settings['map_style']['id'] ) ) {
231
  switch( $wpsl_settings['map_style']['id'] ) {
232
  case 'custom':
270
  $wpsl_settings['category_dropdown'] = 0;
271
  }
272
 
273
+ /*
274
+ * Replace marker_bounce with marker_effect to better reflect what the option contains.
275
  *
276
  * If a user hovers over the result list then either the corresponding marker will bounce,
277
  * the info window will open, or nothing will happen.
283
  unset( $wpsl_settings['marker_bounce'] );
284
  }
285
 
286
+ /*
287
+ * The default input for the opening hours is set to textarea for current users,
288
  * for new users it will be set to dropdown ( easier to format in a table output and to use with schema.org in the future ).
289
  */
290
  if ( empty( $wpsl_settings['editor_hour_input'] ) ) {
291
  $wpsl_settings['editor_hour_input'] = 'textarea';
292
  }
293
 
294
+ // Rename store_below_scroll to listing_below_no_scroll, it better reflects what it does.
295
  if ( empty( $wpsl_settings['listing_below_no_scroll'] ) && isset( $wpsl_settings['store_below_scroll'] ) ) {
296
  $wpsl_settings['listing_below_no_scroll'] = $wpsl_settings['store_below_scroll'];
297
  unset( $wpsl_settings['store_below_scroll'] );
298
  }
299
 
300
+ // Change the template ids from number based to name based.
301
  if ( is_numeric( $wpsl_settings['template_id'] ) ) {
302
  $wpsl_settings['template_id'] = ( !$wpsl_settings['template_id'] ) ? 'default' : 'below_map';
303
  }
307
  'search_radius' => $wpsl_settings['search_radius']
308
  );
309
 
310
+ /*
311
+ * Replace the () with [], this fixes an issue with the mod_security module that is installed on some servers.
312
  * It triggerd a 'Possible SQL injection attack' warning probably because of the int,(int) format of the data.
313
  */
314
  foreach ( $replace_data as $index => $option_value ) {
315
  $wpsl_settings[$index] = str_replace( array( '(', ')' ), array( '[', ']' ), $option_value );
316
  }
317
 
318
+ // The reset button now uses an icon instead of text, so no need for the label anymore.
319
  unset( $wpsl_settings['reset_label'] );
320
 
321
  update_option( 'wpsl_settings', $wpsl_settings );
322
 
323
+ /*
324
+ * Users upgrading from 1.x will be given the choice between the textarea or
325
  * dropdowns for the opening hours.
326
  *
327
  * New users don't get that choice, they will only get the dropdowns.
330
  */
331
  update_option( 'wpsl_legacy_support', 1 );
332
 
333
+ // Add the WPSL roles and caps.
334
  wpsl_add_roles();
335
  wpsl_add_caps();
336
 
337
+ // If there is a wpsl_stores table, then we need to convert all the locations to the 'wpsl_stores' custom post type.
338
  if ( $wpdb->get_var( "SHOW TABLES LIKE '$wpsl_table'" ) && version_compare( $current_version, '1.9', '<' ) ) {
339
  if ( wpsl_remaining_cpt_count() ) {
340
  update_option( 'wpsl_convert_cpt', 'in_progress' );
355
  }
356
 
357
  if ( version_compare( $current_version, '2.1.0', '<' ) ) {
358
+ if ( !isset( $wpsl_settings['api_geocode_component'] ) ) {
359
  $wpsl_settings['api_geocode_component'] = 0;
360
  }
361
 
362
  update_option( 'wpsl_settings', $wpsl_settings );
363
  }
364
+
365
+ if ( version_compare( $current_version, '2.2', '<' ) ) {
366
+ $wpsl_settings['autocomplete'] = 0;
367
+ $wpsl_settings['category_default_label'] = __( 'Any', 'wpsl' );
368
+
369
+ // Rename the 'zoom_name' and 'zoom_latlng' to 'start_name' and 'start_latlng'.
370
+ if ( isset( $wpsl_settings['zoom_name'] ) ) {
371
+ $wpsl_settings['start_name'] = $wpsl_settings['zoom_name'];
372
+ unset( $wpsl_settings['zoom_name'] );
373
+ }
374
+
375
+ if ( isset( $wpsl_settings['zoom_latlng'] ) ) {
376
+ $wpsl_settings['start_latlng'] = $wpsl_settings['zoom_latlng'];
377
+ unset( $wpsl_settings['zoom_latlng'] );
378
+ }
379
+
380
+ if ( isset( $wpsl_settings['category_dropdown'] ) ) {
381
+ $wpsl_settings['category_filter'] = $wpsl_settings['category_dropdown'];
382
+ unset( $wpsl_settings['category_dropdown'] );
383
+ }
384
+
385
+ // We now have separate browser and server key fields, and assume the existing key is a server key.
386
+ if ( isset( $wpsl_settings['api_key'] ) ) {
387
+ $wpsl_settings['api_server_key'] = $wpsl_settings['api_key'];
388
+ unset( $wpsl_settings['api_key'] );
389
+ }
390
+
391
+ $wpsl_settings['api_browser_key'] = '';
392
+ $wpsl_settings['category_filter_type'] = 'dropdown';
393
+ $wpsl_settings['hide_country'] = 0;
394
+ $wpsl_settings['show_contact_details'] = 0;
395
+
396
+ update_option( 'wpsl_settings', $wpsl_settings );
397
+ }
398
 
399
  update_option( 'wpsl_version', WPSL_VERSION_NUM );
400
  }
556
  die( '-1' );
557
  check_ajax_referer( 'wpsl-cpt-fix' );
558
 
559
+ // Start the cpt coversion.
560
  wpsl_cpt_conversion();
561
 
562
  exit();
614
  $db_count = $wpdb->get_var( "SELECT COUNT(wpsl_id) FROM $table" );
615
  $difference = $db_count - $cpt_count;
616
 
617
+ /*
618
+ * This prevents users who used the 2.0 beta, and later added
619
  * more stores from seeing the upgrade notice again.
620
  */
621
  $remaining = ( $difference < 0 ) ? false : $difference;
633
 
634
  global $wpdb;
635
 
636
+ // Try to disable the time limit to prevent timeouts.
637
  @set_time_limit( 0 );
638
 
639
  $meta_keys = array( 'address', 'address2', 'city', 'state', 'zip', 'country', 'country_iso', 'lat', 'lng', 'phone', 'fax', 'url', 'email', 'hours' );
643
 
644
  foreach ( $stores as $store ) {
645
 
646
+ // Make sure we set the correct post status.
647
  if ( $store->active ) {
648
  $post_status = 'publish';
649
  } else {
661
 
662
  if ( $post_id ) {
663
 
664
+ // Save the data from the wpsl_stores db table as post meta data.
665
  foreach ( $meta_keys as $meta_key ) {
666
  if ( isset( $store->{$meta_key} ) && !empty( $store->{$meta_key} ) ) {
667
  update_post_meta( $post_id, 'wpsl_' . $meta_key, $store->{$meta_key} );
668
  }
669
  }
670
 
671
+ // If we have a thumb ID set the post thumbnail for the inserted post.
672
  if ( $store->thumb_id ) {
673
  set_post_thumbnail( $post_id, $store->thumb_id );
674
  }
css/styles.css CHANGED
@@ -58,6 +58,7 @@ div elements, we disable it to prevent it from messing up the map
58
  }
59
 
60
  #wpsl-wrap {
 
61
  width: 100%;
62
  overflow: hidden;
63
  clear: both;
@@ -69,6 +70,13 @@ div elements, we disable it to prevent it from messing up the map
69
  width: 100%;
70
  }
71
 
 
 
 
 
 
 
 
72
  /* Map Controls */
73
  #wpsl-gmap #wpsl-map-controls {
74
  position: absolute;
@@ -253,6 +261,10 @@ div elements, we disable it to prevent it from messing up the map
253
  background:#f4f3f3;
254
  }
255
 
 
 
 
 
256
  /* Result list */
257
  .wpsl-back {
258
  display: inline-block;
@@ -591,9 +603,15 @@ div elements, we disable it to prevent it from messing up the map
591
  .wpsl-dropdown li {
592
  position: relative;
593
  display: block;
594
- line-height: 1;
595
  color: #000;
596
  overflow: hidden;
 
 
 
 
 
 
597
  white-space: nowrap;
598
  }
599
 
@@ -654,6 +672,14 @@ div elements, we disable it to prevent it from messing up the map
654
  margin-bottom: 10px;
655
  }
656
 
 
 
 
 
 
 
 
 
657
  .wpsl-provided-by {
658
  float: right;
659
  padding: 5px 0;
@@ -731,6 +757,44 @@ table.wpsl-opening-hours td {
731
  left:38px;
732
  }
733
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
734
  @media (max-width: 825px) {
735
  #wpsl-search-input {
736
  width: 348px;
@@ -821,24 +885,29 @@ table.wpsl-opening-hours td {
821
  #wpsl-stores.wpsl-not-loaded {
822
  height: 25px;
823
  }
824
-
825
  #wpsl-reset-map {
826
  top: 25px;
827
  }
828
-
829
  #wpsl-gmap {
830
  margin-top: 10px;
831
  }
832
-
833
  .wpsl-no-filters #wpsl-search-wrap .wpsl-input,
834
  #wpsl-category, .wpsl-input, .wpsl-select-wrap,
835
  .wpsl-input, #wpsl-search-btn {
836
  margin-bottom: 0;
837
  }
838
-
839
  #wpsl-stores.wpsl-no-autoload {
840
  height: auto !important;
841
  }
 
 
 
 
 
842
  }
843
 
844
  @media (max-width: 570px) {
@@ -865,6 +934,10 @@ table.wpsl-opening-hours td {
865
  margin-top: 15px;
866
  }
867
 
 
 
 
 
868
  #wpsl-search-wrap div,
869
  #wpsl-search-btn {
870
  margin-right: 0;
@@ -904,4 +977,17 @@ table.wpsl-opening-hours td {
904
  .wpsl-no-filters #wpsl-search-input {
905
  width: 100% !important;
906
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
907
  }
58
  }
59
 
60
  #wpsl-wrap {
61
+ position: relative;
62
  width: 100%;
63
  overflow: hidden;
64
  clear: both;
70
  width: 100%;
71
  }
72
 
73
+ #wpsl-search-wrap form {
74
+ margin: 0;
75
+ padding: 0;
76
+ border: none;
77
+ outline: none;
78
+ }
79
+
80
  /* Map Controls */
81
  #wpsl-gmap #wpsl-map-controls {
82
  position: absolute;
261
  background:#f4f3f3;
262
  }
263
 
264
+ .wpsl-search.wpsl-checkboxes-enabled {
265
+ padding: 12px;
266
+ }
267
+
268
  /* Result list */
269
  .wpsl-back {
270
  display: inline-block;
603
  .wpsl-dropdown li {
604
  position: relative;
605
  display: block;
606
+ line-height: normal;
607
  color: #000;
608
  overflow: hidden;
609
+ }
610
+
611
+ #wpsl-radius .wpsl-dropdown .wpsl-selected-item,
612
+ #wpsl-radius .wpsl-dropdown li,
613
+ #wpsl-results .wpsl-dropdown .wpsl-selected-item,
614
+ #wpsl-results .wpsl-dropdown li {
615
  white-space: nowrap;
616
  }
617
 
672
  margin-bottom: 10px;
673
  }
674
 
675
+ #wpsl-search-wrap .wpsl-scroll-required div {
676
+ overflow-y: scroll;
677
+ }
678
+
679
+ .wpsl-scroll-required ul {
680
+ overflow: visible;
681
+ }
682
+
683
  .wpsl-provided-by {
684
  float: right;
685
  padding: 5px 0;
757
  left:38px;
758
  }
759
 
760
+ #wpsl-checkbox-filter {
761
+ display: block;
762
+ float: left;
763
+ margin: 5px 0 15px;
764
+ padding: 0;
765
+ width: 100%;
766
+ }
767
+
768
+ #wpsl-checkbox-filter li {
769
+ float: left;
770
+ list-style: none;
771
+ margin: 0 1% 0 0;
772
+ }
773
+
774
+ #wpsl-checkbox-filter.wpsl-checkbox-1-columns li {
775
+ width: 99%;
776
+ }
777
+
778
+ #wpsl-checkbox-filter.wpsl-checkbox-2-columns li {
779
+ width: 49%;
780
+ }
781
+
782
+ #wpsl-checkbox-filter.wpsl-checkbox-3-columns li {
783
+ width: 32%;
784
+ }
785
+
786
+ #wpsl-checkbox-filter.wpsl-checkbox-4-columns li {
787
+ width: 24%;
788
+ }
789
+
790
+ #wpsl-checkbox-filter input {
791
+ margin-right: 5px;
792
+ }
793
+
794
+ #wpsl-result-list .wpsl-contact-details span {
795
+ display: block !important;
796
+ }
797
+
798
  @media (max-width: 825px) {
799
  #wpsl-search-input {
800
  width: 348px;
885
  #wpsl-stores.wpsl-not-loaded {
886
  height: 25px;
887
  }
888
+
889
  #wpsl-reset-map {
890
  top: 25px;
891
  }
892
+
893
  #wpsl-gmap {
894
  margin-top: 10px;
895
  }
896
+
897
  .wpsl-no-filters #wpsl-search-wrap .wpsl-input,
898
  #wpsl-category, .wpsl-input, .wpsl-select-wrap,
899
  .wpsl-input, #wpsl-search-btn {
900
  margin-bottom: 0;
901
  }
902
+
903
  #wpsl-stores.wpsl-no-autoload {
904
  height: auto !important;
905
  }
906
+
907
+ #wpsl-checkbox-filter.wpsl-checkbox-3-columns li,
908
+ #wpsl-checkbox-filter.wpsl-checkbox-4-columns li {
909
+ width: 49%;
910
+ }
911
  }
912
 
913
  @media (max-width: 570px) {
934
  margin-top: 15px;
935
  }
936
 
937
+ .wpsl-checkboxes-enabled .wpsl-search-btn-wrap {
938
+ margin-top: 0;
939
+ }
940
+
941
  #wpsl-search-wrap div,
942
  #wpsl-search-btn {
943
  margin-right: 0;
977
  .wpsl-no-filters #wpsl-search-input {
978
  width: 100% !important;
979
  }
980
+ }
981
+
982
+ @media (max-width: 420px) {
983
+ #wpsl-checkbox-filter li {
984
+ margin: 0;
985
+ }
986
+
987
+ #wpsl-checkbox-filter.wpsl-checkbox-1-columns li,
988
+ #wpsl-checkbox-filter.wpsl-checkbox-2-columns li,
989
+ #wpsl-checkbox-filter.wpsl-checkbox-3-columns li,
990
+ #wpsl-checkbox-filter.wpsl-checkbox-4-columns li {
991
+ width: 100%;
992
+ }
993
  }
css/styles.min.css CHANGED
@@ -1 +1 @@
1
- #wpsl-wrap,.wpsl-gmap-canvas{margin-bottom:20px;width:100%}#wpsl-result-list a,#wpsl-wrap [class*=" wpsl-icon-"]:focus,#wpsl-wrap [class^=wpsl-icon-]:active{outline:0}#wpsl-map-controls div:hover,#wpsl-reset-map:hover,#wpsl-search-btn:hover,.wpsl-dropdown{cursor:pointer}#wpsl-wrap,.wpsl-clearfix:after,.wpsl-contact-details{clear:both}@font-face{font-family:wpsl-fontello;src:url(../font/fontello.eot?28897909);src:url(../font/fontello.eot?28897909#iefix) format('embedded-opentype'),url(../font/fontello.woff?28897909) format('woff'),url(../font/fontello.ttf?28897909) format('truetype'),url(../font/fontello.svg?28897909#fontello) format('svg');font-weight:400;font-style:normal}#wpsl-gmap{float:right;width:66.5%;height:350px;margin-bottom:0}.wpsl-store-below #wpsl-gmap{float:none;width:100%}.wpsl-gmap-canvas{height:300px}.gm-style-mtc,.gmnoprint{z-index:9999!important}#wpsl-gmap div,#wpsl-gmap img,.wpsl-gmap-canvas div,.wpsl-gmap-canvas img{box-shadow:none!important;max-width:none!important;background:0 0}#wpsl-gmap img,.wpsl-gmap-canvas img{display:inline!important;opacity:1!important;max-height:none!important}#wpsl-wrap{overflow:hidden}#wpsl-search-wrap{float:left;width:100%}#wpsl-gmap #wpsl-map-controls{position:absolute;height:28px;right:10px;bottom:24px;border-radius:2px;z-index:3;font-size:11px;white-space:nowrap;overflow:hidden}#wpsl-gmap #wpsl-map-controls.wpsl-street-view-exists{right:48px}#wpsl-map-controls .wpsl-direction-preloader{margin:5px 5px 0}#wpsl-map-controls div{float:left;background:#fff;border-radius:2px}#wpsl-wrap [class*=" wpsl-icon-"],#wpsl-wrap [class^=wpsl-icon-]{position:relative;float:left;padding:7px 9px 7px 8px;display:inline-block;font-family:wpsl-fontello;font-style:normal;font-weight:400;font-size:1.3em;color:#737373;speak:none;text-decoration:inherit;text-align:center;font-variant:normal;text-transform:none;line-height:1em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpsl-map-controls span{font-family:inherit;font-size:inherit}#wpsl-wrap .wpsl-ie [class*=" wpsl-icon-"],#wpsl-wrap .wpsl-ie [class^=wpsl-icon-]{padding:9px 8px 4px}#wpsl-wrap.wpsl-mobile [class*=" wpsl-icon-"],#wpsl-wrap.wpsl-mobile [class^=wpsl-icon-]{padding:8px 10px}#wpsl-wrap .wpsl-icon-reset{border-radius:2px 0 0 2px;z-index:2;padding-left:9px;padding-right:4px}#wpsl-wrap .wpsl-icon-direction{z-index:1}#wpsl-map-controls.wpsl-reset-exists .wpsl-icon-direction{border-radius:0 2px 2px 0}#wpsl-wrap .wpsl-active-icon,#wpsl-wrap [class*=" wpsl-icon-"]:hover,#wpsl-wrap [class^=wpsl-icon-]:hover{color:#000}#wpsl-wrap .wpsl-in-progress,#wpsl-wrap .wpsl-in-progress:hover{color:#c6c6c6}#wpsl-gmap #wpsl-reset-map{position:absolute;display:none;right:37px;top:37px;padding:6px 14px;background:#fff!important;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:2px;z-index:3}.gm-style-cc{word-wrap:normal}#wpsl-search-wrap .wpsl-input,#wpsl-search-wrap .wpsl-select-wrap{display:table}#wpsl-search-btn,#wpsl-search-wrap #wpsl-radius,#wpsl-search-wrap #wpsl-results,#wpsl-search-wrap .wpsl-input input,#wpsl-search-wrap .wpsl-input label{display:table-cell}#wpsl-search-wrap label{margin-bottom:0}#wpsl-search-input{width:179px;height:auto;padding:7px 12px;font-size:100%;margin:0}#wpsl-search-btn,#wpsl-search-wrap input{border:1px solid #d2d2d2;border-radius:3px}#wpsl-search-btn{padding:7px 10px;line-height:1.428571429;font-weight:400;color:#7c7c7c;background-color:#e6e6e6;background-repeat:repeat-x;background-image:-moz-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:-ms-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:-webkit-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:-o-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:linear-gradient(top,#f4f4f4,#e6e6e6);box-shadow:0 1px 2px rgba(64,64,64,.1);text-transform:none!important}#wpsl-search-input.wpsl-error{border:1px solid #bd0028!important}.wpsl-search{margin-bottom:12px;padding:12px 12px 0;background:#f4f3f3}.wpsl-back{display:inline-block}#wpsl-result-list{width:33%;margin-right:.5%}.wpsl-store-below #wpsl-result-list{width:100%;margin:12px 0 0}#wpsl-direction-details,#wpsl-stores{height:350px;overflow-y:auto}#wpsl-direction-details,.wpsl-hide{display:none}#wpsl-result-list p{padding-left:10px}.wpsl-store-below #wpsl-result-list p{padding-left:0}.wpsl-direction-before{margin:14px 0 21px;padding-left:10px}.wpsl-store-below .wpsl-direction-before{padding-left:0}.wpsl-direction-before div{margin-top:10px}#wpsl-wrap #wpsl-result-list li{padding:10px;border-bottom:1px dotted #ccc;margin-left:0;overflow:hidden;list-style:none!important;text-indent:0}#wpsl-wrap #wpsl-result-list li li{padding:0;border-bottom:0;margin-left:14px;overflow:visible}#wpsl-wrap #wpsl-result-list ul li{list-style:disc!important}#wpsl-wrap #wpsl-result-list ol li{list-style:decimal!important}#wpsl-wrap.wpsl-store-below #wpsl-result-list li{padding:10px 10px 10px 0}#wpsl-result-list li p{padding-left:0;margin:0 0 20px}.wpsl-store-details.wpsl-store-listing{position:relative;padding-right:20px}.wpsl-store-details.wpsl-store-listing.wpsl-active-details:before,.wpsl-store-details.wpsl-store-listing:before{position:absolute;content:'';bottom:6px;right:0;border-top:5px solid #000;border-left:6px solid transparent;border-right:6px solid transparent}.wpsl-store-details.wpsl-store-listing.wpsl-active-details:before{border-bottom:5px solid #000;border-top:none;border-left:6px solid transparent;border-right:6px solid transparent}#wpsl-stores .wpsl-store-thumb{float:right;border-radius:3px;margin:7px 0 0 10px;padding:0;border:none}.wpsl-direction-index{float:left;width:8%;margin:0 5% 0 0}.wpsl-direction-txt{float:left;width:62%}.wpsl-direction-distance{float:left;width:20%;margin:0 0 0 5%}.wpsl-direction-txt span{display:block;margin-top:10px}.wpsl-country,.wpsl-directions,.wpsl-street{display:block;border-bottom:none!important}#wpsl-wrap #wpsl-result-list li.wpsl-preloader{position:relative;border-bottom:none;padding:10px 10px 10px 35px}.wpsl-preloader img{position:absolute;left:10px;top:50%;margin-top:-8px;box-shadow:none!important;border:none!important}.wpsl-preloader span{float:left;margin:-5px 0 0 11px}#wpsl-search-btn,#wpsl-search-wrap div{margin-right:10px;float:left}#wpsl-search-wrap .wpsl-select-wrap{position:relative;z-index:2;margin-right:0}#wpsl-search-wrap .wpsl-input-field{position:relative}#wpsl-radius,#wpsl-results{float:left;margin-right:15px;display:inline}#wpsl-category{z-index:1;clear:both}#wpsl-search-wrap .wpsl-dropdown div{position:absolute;float:none;margin:-1px 0 0;top:100%;left:-1px;right:-1px;border:1px solid #ccc;background:#fff;border-top:1px solid #eee;border-radius:0 0 3px 3px;opacity:0;overflow:hidden;-webkit-transition:all 150ms ease-in-out;-moz-transition:all 150ms ease-in-out;-ms-transition:all 150ms ease-in-out;transition:all 150ms ease-in-out}#wpsl-search-wrap .wpsl-dropdown.wpsl-active div{opacity:1}#wpsl-search-wrap .wpsl-input label{margin-right:0}#wpsl-radius{margin-right:10px}#wpsl-search select,#wpsl-search-wrap select,.wpsl-direction-details{display:none}#wpsl-search-wrap div label{float:left;margin-right:10px;line-height:32px}#wpsl-results label{width:auto}#wpsl-result-list ul{list-style:none;margin:0;padding:0}#wpsl-gmap .wpsl-info-window,.wpsl-gmap-canvas .wpsl-info-window{max-width:225px}.wpsl-info-window span,.wpsl-more-info-listings span{display:block}.wpsl-info-window .wpsl-no-margin{margin:0}.wpsl-more-info-listings{display:none}.wpsl-info-window span span{display:inline!important}#wpsl-wrap .wpsl-info-window p{margin:0 0 10px}.wpsl-store-hours{margin-top:10px}.wpsl-store-hours strong{display:block}#wpsl-gmap .wpsl-info-actions{display:block;margin:10px 0!important}.wpsl-info-actions a{float:left;margin-right:7px}.wpsl-info-actions .wpsl-zoom-here{margin-right:0}.wpsl-dropdown{position:relative;width:90px;border:1px solid #ccc;background:#fff;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-right:0!important;z-index:2}#wpsl-results .wpsl-dropdown{width:70px}.wpsl-dropdown ul{position:absolute;left:0;width:100%;height:100%;padding:0!important;margin:0!important;list-style:none;overflow:hidden}.wpsl-dropdown:hover{box-shadow:0 0 5px rgba(0,0,0,.15)}.wpsl-dropdown .wpsl-selected-item,.wpsl-dropdown li{position:relative;display:block;line-height:1;color:#000;overflow:hidden;white-space:nowrap}.wpsl-selected-item:after{position:absolute;content:"";right:12px;top:50%;margin-top:-4px;border:6px solid transparent;border-top:8px solid #000}.wpsl-active .wpsl-selected-item:after{margin-top:-10px;border:6px solid transparent;border-bottom:8px solid #000}.wpsl-dropdown li:hover{background:#f8f9f8;position:relative;z-index:3;color:#000}.wpsl-dropdown .wpsl-selected-item,.wpsl-dropdown li,.wpsl-selected-item{list-style:none;padding:9px 12px!important;margin:0!important}.wpsl-selected-dropdown{font-weight:700}.wpsl-clearfix:after,.wpsl-clearfix:before{content:" ";display:table}#wpsl-wrap .wpsl-selected-item{position:static;padding-right:35px!important}#wpsl-category,.wpsl-input,.wpsl-select-wrap{position:relative;margin-bottom:10px}.wpsl-provided-by{float:right;padding:5px 0;text-align:right;font-size:12px;width:100%}#wpsl-wrap .wpsl-results-only label{width:auto}.wpsl-contact-details,.wpsl-location-address,.wpsl-locations-details{margin-bottom:15px}table.wpsl-opening-hours td{vertical-align:top;padding:0 15px 0 0;text-align:left}table.wpsl-opening-hours time{display:block}table.wpsl-opening-hours{width:auto!important;font-size:100%!important}table.wpsl-opening-hours,table.wpsl-opening-hours td{border:none!important}.wpsl-gmap-canvas .wpsl-infobox{min-width:155px;max-width:350px!important;padding:10px;border-radius:4px;font-size:13px;font-weight:300;border:1px solid #ccc;background:#fff!important}.wpsl-gmap-canvas .wpsl-infobox:after,.wpsl-gmap-canvas .wpsl-infobox:before{position:absolute;content:"";left:40px;bottom:-11px}.wpsl-gmap-canvas .wpsl-infobox:after{border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #fff}.wpsl-gmap-canvas .wpsl-infobox:before{border-left:13px solid transparent;border-right:13px solid transparent;border-top:13px solid #ccc;bottom:-13px;left:38px}@media (max-width:825px){#wpsl-search-input{width:348px}.wpsl-results-only #wpsl-search-wrap .wpsl-dropdown{width:70px}#wpsl-search-wrap .wpsl-input{width:100%;margin-bottom:10px}#wpsl-category label,#wpsl-radius label,.wpsl-cat-results-filter #wpsl-search-wrap .wpsl-input,.wpsl-input label,.wpsl-no-filters #wpsl-search-wrap .wpsl-input,.wpsl-results-only #wpsl-search-wrap .wpsl-input{width:auto}}@media (max-width:720px){#wpsl-search-wrap .wpsl-dropdown{width:114px}}@media (max-width:675px){#wpsl-search-wrap #wpsl-search-btn{float:left;margin:0 5px 0 0}.wpsl-dropdown,.wpsl-results-only #wpsl-search-wrap .wpsl-input{width:100%}.wpsl-search{padding:2%}#wpsl-result-list p,#wpsl-wrap #wpsl-result-list li,.wpsl-direction-before{padding-left:0}.wpsl-input{margin-right:0}#wpsl-gmap,#wpsl-result-list{float:none;width:100%}#wpsl-gmap{margin-bottom:15px;margin-top:10px}#wpsl-result-list,.wpsl-cat-results-filter .wpsl-select-wrap,.wpsl-filter .wpsl-select-wrap{margin-bottom:10px}#wpsl-wrap #wpsl-result-list li.wpsl-preloader{padding-left:25px}.wpsl-preloader img{left:0}#wpsl-stores.wpsl-not-loaded{height:25px}#wpsl-reset-map{top:25px}#wpsl-category,#wpsl-search-btn,.wpsl-input,.wpsl-no-filters #wpsl-search-wrap .wpsl-input,.wpsl-select-wrap{margin-bottom:0}#wpsl-stores.wpsl-no-autoload{height:auto!important}}@media (max-width:570px){#wpsl-search-wrap #wpsl-search-btn{margin-bottom:5px}.wpsl-search{padding:4%}#wpsl-search-input{width:98%!important}.wpsl-cat-results-filter #wpsl-search-input,.wpsl-cat-results-filter #wpsl-search-wrap .wpsl-input,.wpsl-no-results #wpsl-search-input,.wpsl-results-only #wpsl-search-input{width:100%!important}.wpsl-search-btn-wrap{margin-top:15px;clear:both}#wpsl-search-btn,#wpsl-search-wrap div{margin-right:0}#wpsl-search-wrap div label{display:block;width:100%}.wpsl-select-wrap{width:100%}#wpsl-radius,#wpsl-results{width:50%}#wpsl-radius{margin-right:4%}#wpsl-search-wrap .wpsl-dropdown{width:96%!important}.wpsl-no-filters #wpsl-search-input,.wpsl-no-filters #wpsl-search-wrap .wpsl-input{width:100%!important}}
1
+ #wpsl-wrap,.wpsl-gmap-canvas{margin-bottom:20px;width:100%}#wpsl-result-list a,#wpsl-wrap [class*=" wpsl-icon-"]:focus,#wpsl-wrap [class^=wpsl-icon-]:active{outline:0}#wpsl-map-controls div:hover,#wpsl-reset-map:hover,#wpsl-search-btn:hover,.wpsl-dropdown{cursor:pointer}#wpsl-wrap,.wpsl-clearfix:after,.wpsl-contact-details{clear:both}@font-face{font-family:wpsl-fontello;src:url(../font/fontello.eot?28897909);src:url(../font/fontello.eot?28897909#iefix) format('embedded-opentype'),url(../font/fontello.woff?28897909) format('woff'),url(../font/fontello.ttf?28897909) format('truetype'),url(../font/fontello.svg?28897909#fontello) format('svg');font-weight:400;font-style:normal}#wpsl-gmap{float:right;width:66.5%;height:350px;margin-bottom:0}.wpsl-store-below #wpsl-gmap{float:none;width:100%}.wpsl-gmap-canvas{height:300px}.gm-style-mtc,.gmnoprint{z-index:9999!important}#wpsl-gmap div,#wpsl-gmap img,.wpsl-gmap-canvas div,.wpsl-gmap-canvas img{box-shadow:none!important;max-width:none!important;background:0 0}#wpsl-gmap img,.wpsl-gmap-canvas img{display:inline!important;opacity:1!important;max-height:none!important}#wpsl-wrap{position:relative;overflow:hidden}#wpsl-search-wrap{float:left;width:100%}#wpsl-search-wrap form{margin:0;padding:0;border:none;outline:0}#wpsl-gmap #wpsl-map-controls{position:absolute;height:28px;right:10px;bottom:24px;border-radius:2px;z-index:3;font-size:11px;white-space:nowrap;overflow:hidden}#wpsl-gmap #wpsl-map-controls.wpsl-street-view-exists{right:48px}#wpsl-map-controls .wpsl-direction-preloader{margin:5px 5px 0}#wpsl-map-controls div{float:left;background:#fff;border-radius:2px}#wpsl-wrap [class*=" wpsl-icon-"],#wpsl-wrap [class^=wpsl-icon-]{position:relative;float:left;padding:7px 9px 7px 8px;display:inline-block;font-family:wpsl-fontello;font-style:normal;font-weight:400;font-size:1.3em;color:#737373;speak:none;text-decoration:inherit;text-align:center;font-variant:normal;text-transform:none;line-height:1em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#wpsl-map-controls span{font-family:inherit;font-size:inherit}#wpsl-wrap .wpsl-ie [class*=" wpsl-icon-"],#wpsl-wrap .wpsl-ie [class^=wpsl-icon-]{padding:9px 8px 4px}#wpsl-wrap.wpsl-mobile [class*=" wpsl-icon-"],#wpsl-wrap.wpsl-mobile [class^=wpsl-icon-]{padding:8px 10px}#wpsl-wrap .wpsl-icon-reset{border-radius:2px 0 0 2px;z-index:2;padding-left:9px;padding-right:4px}#wpsl-wrap .wpsl-icon-direction{z-index:1}#wpsl-map-controls.wpsl-reset-exists .wpsl-icon-direction{border-radius:0 2px 2px 0}#wpsl-wrap .wpsl-active-icon,#wpsl-wrap [class*=" wpsl-icon-"]:hover,#wpsl-wrap [class^=wpsl-icon-]:hover{color:#000}#wpsl-wrap .wpsl-in-progress,#wpsl-wrap .wpsl-in-progress:hover{color:#c6c6c6}#wpsl-gmap #wpsl-reset-map{position:absolute;display:none;right:37px;top:37px;padding:6px 14px;background:#fff!important;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:2px;z-index:3}.gm-style-cc{word-wrap:normal}#wpsl-search-wrap .wpsl-input,#wpsl-search-wrap .wpsl-select-wrap{display:table}#wpsl-search-btn,#wpsl-search-wrap #wpsl-radius,#wpsl-search-wrap #wpsl-results,#wpsl-search-wrap .wpsl-input input,#wpsl-search-wrap .wpsl-input label{display:table-cell}#wpsl-search-wrap label{margin-bottom:0}#wpsl-search-input{width:179px;height:auto;padding:7px 12px;font-size:100%;margin:0}#wpsl-search-btn,#wpsl-search-wrap input{border:1px solid #d2d2d2;border-radius:3px}#wpsl-search-btn{padding:7px 10px;line-height:1.428571429;font-weight:400;color:#7c7c7c;background-color:#e6e6e6;background-repeat:repeat-x;background-image:-moz-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:-ms-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:-webkit-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:-o-linear-gradient(top,#f4f4f4,#e6e6e6);background-image:linear-gradient(top,#f4f4f4,#e6e6e6);box-shadow:0 1px 2px rgba(64,64,64,.1);text-transform:none!important}#wpsl-search-input.wpsl-error{border:1px solid #bd0028!important}.wpsl-search{margin-bottom:12px;padding:12px 12px 0;background:#f4f3f3}.wpsl-search.wpsl-checkboxes-enabled{padding:12px}.wpsl-back{display:inline-block}#wpsl-result-list{width:33%;margin-right:.5%}.wpsl-store-below #wpsl-result-list{width:100%;margin:12px 0 0}#wpsl-direction-details,#wpsl-stores{height:350px;overflow-y:auto}#wpsl-direction-details,.wpsl-hide{display:none}#wpsl-result-list p{padding-left:10px}.wpsl-store-below #wpsl-result-list p{padding-left:0}.wpsl-direction-before{margin:14px 0 21px;padding-left:10px}.wpsl-store-below .wpsl-direction-before{padding-left:0}.wpsl-direction-before div{margin-top:10px}#wpsl-wrap #wpsl-result-list li{padding:10px;border-bottom:1px dotted #ccc;margin-left:0;overflow:hidden;list-style:none!important;text-indent:0}#wpsl-wrap #wpsl-result-list li li{padding:0;border-bottom:0;margin-left:14px;overflow:visible}#wpsl-wrap #wpsl-result-list ul li{list-style:disc!important}#wpsl-wrap #wpsl-result-list ol li{list-style:decimal!important}#wpsl-wrap.wpsl-store-below #wpsl-result-list li{padding:10px 10px 10px 0}#wpsl-result-list li p{padding-left:0;margin:0 0 20px}.wpsl-store-details.wpsl-store-listing{position:relative;padding-right:20px}.wpsl-store-details.wpsl-store-listing.wpsl-active-details:before,.wpsl-store-details.wpsl-store-listing:before{position:absolute;content:'';bottom:6px;right:0;border-top:5px solid #000;border-left:6px solid transparent;border-right:6px solid transparent}.wpsl-store-details.wpsl-store-listing.wpsl-active-details:before{border-bottom:5px solid #000;border-top:none;border-left:6px solid transparent;border-right:6px solid transparent}#wpsl-stores .wpsl-store-thumb{float:right;border-radius:3px;margin:7px 0 0 10px;padding:0;border:none}.wpsl-direction-index{float:left;width:8%;margin:0 5% 0 0}.wpsl-direction-txt{float:left;width:62%}.wpsl-direction-distance{float:left;width:20%;margin:0 0 0 5%}.wpsl-direction-txt span{display:block;margin-top:10px}.wpsl-country,.wpsl-directions,.wpsl-street{display:block;border-bottom:none!important}#wpsl-wrap #wpsl-result-list li.wpsl-preloader{position:relative;border-bottom:none;padding:10px 10px 10px 35px}.wpsl-preloader img{position:absolute;left:10px;top:50%;margin-top:-8px;box-shadow:none!important;border:none!important}.wpsl-preloader span{float:left;margin:-5px 0 0 11px}#wpsl-search-btn,#wpsl-search-wrap div{margin-right:10px;float:left}#wpsl-search-wrap .wpsl-select-wrap{position:relative;z-index:2;margin-right:0}#wpsl-search-wrap .wpsl-input-field{position:relative}#wpsl-radius,#wpsl-results{float:left;margin-right:15px;display:inline}#wpsl-category{z-index:1;clear:both}#wpsl-search-wrap .wpsl-dropdown div{position:absolute;float:none;margin:-1px 0 0;top:100%;left:-1px;right:-1px;border:1px solid #ccc;background:#fff;border-top:1px solid #eee;border-radius:0 0 3px 3px;opacity:0;overflow:hidden;-webkit-transition:all 150ms ease-in-out;-moz-transition:all 150ms ease-in-out;-ms-transition:all 150ms ease-in-out;transition:all 150ms ease-in-out}#wpsl-search-wrap .wpsl-dropdown.wpsl-active div{opacity:1}#wpsl-search-wrap .wpsl-input label{margin-right:0}#wpsl-radius{margin-right:10px}#wpsl-search select,#wpsl-search-wrap select,.wpsl-direction-details{display:none}#wpsl-search-wrap div label{float:left;margin-right:10px;line-height:32px}#wpsl-results label{width:auto}#wpsl-result-list ul{list-style:none;margin:0;padding:0}#wpsl-gmap .wpsl-info-window,.wpsl-gmap-canvas .wpsl-info-window{max-width:225px}.wpsl-info-window span,.wpsl-more-info-listings span{display:block}.wpsl-info-window .wpsl-no-margin{margin:0}.wpsl-more-info-listings{display:none}.wpsl-info-window span span{display:inline!important}#wpsl-wrap .wpsl-info-window p{margin:0 0 10px}.wpsl-store-hours{margin-top:10px}.wpsl-store-hours strong{display:block}#wpsl-gmap .wpsl-info-actions{display:block;margin:10px 0!important}.wpsl-info-actions a{float:left;margin-right:7px}.wpsl-info-actions .wpsl-zoom-here{margin-right:0}.wpsl-dropdown{position:relative;width:90px;border:1px solid #ccc;background:#fff;border-radius:3px;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-right:0!important;z-index:2}#wpsl-results .wpsl-dropdown{width:70px}.wpsl-dropdown ul{position:absolute;left:0;width:100%;height:100%;padding:0!important;margin:0!important;list-style:none;overflow:hidden}.wpsl-dropdown:hover{box-shadow:0 0 5px rgba(0,0,0,.15)}.wpsl-dropdown .wpsl-selected-item,.wpsl-dropdown li{position:relative;display:block;line-height:normal;color:#000;overflow:hidden}#wpsl-radius .wpsl-dropdown .wpsl-selected-item,#wpsl-radius .wpsl-dropdown li,#wpsl-results .wpsl-dropdown .wpsl-selected-item,#wpsl-results .wpsl-dropdown li{white-space:nowrap}.wpsl-selected-item:after{position:absolute;content:"";right:12px;top:50%;margin-top:-4px;border:6px solid transparent;border-top:8px solid #000}.wpsl-active .wpsl-selected-item:after{margin-top:-10px;border:6px solid transparent;border-bottom:8px solid #000}.wpsl-dropdown li:hover{background:#f8f9f8;position:relative;z-index:3;color:#000}.wpsl-dropdown .wpsl-selected-item,.wpsl-dropdown li,.wpsl-selected-item{list-style:none;padding:9px 12px!important;margin:0!important}.wpsl-selected-dropdown{font-weight:700}.wpsl-clearfix:after,.wpsl-clearfix:before{content:" ";display:table}#wpsl-wrap .wpsl-selected-item{position:static;padding-right:35px!important}#wpsl-category,.wpsl-input,.wpsl-select-wrap{position:relative;margin-bottom:10px}#wpsl-search-wrap .wpsl-scroll-required div{overflow-y:scroll}.wpsl-scroll-required ul{overflow:visible}.wpsl-provided-by{float:right;padding:5px 0;text-align:right;font-size:12px;width:100%}#wpsl-wrap .wpsl-results-only label{width:auto}.wpsl-contact-details,.wpsl-location-address,.wpsl-locations-details{margin-bottom:15px}table.wpsl-opening-hours td{vertical-align:top;padding:0 15px 0 0;text-align:left}table.wpsl-opening-hours time{display:block}table.wpsl-opening-hours{width:auto!important;font-size:100%!important}table.wpsl-opening-hours,table.wpsl-opening-hours td{border:none!important}.wpsl-gmap-canvas .wpsl-infobox{min-width:155px;max-width:350px!important;padding:10px;border-radius:4px;font-size:13px;font-weight:300;border:1px solid #ccc;background:#fff!important}.wpsl-gmap-canvas .wpsl-infobox:after,.wpsl-gmap-canvas .wpsl-infobox:before{position:absolute;content:"";left:40px;bottom:-11px}.wpsl-gmap-canvas .wpsl-infobox:after{border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #fff}.wpsl-gmap-canvas .wpsl-infobox:before{border-left:13px solid transparent;border-right:13px solid transparent;border-top:13px solid #ccc;bottom:-13px;left:38px}#wpsl-checkbox-filter{display:block;float:left;margin:5px 0 15px;padding:0;width:100%}#wpsl-checkbox-filter li{float:left;list-style:none;margin:0 1% 0 0}#wpsl-checkbox-filter.wpsl-checkbox-1-columns li{width:99%}#wpsl-checkbox-filter.wpsl-checkbox-2-columns li{width:49%}#wpsl-checkbox-filter.wpsl-checkbox-3-columns li{width:32%}#wpsl-checkbox-filter.wpsl-checkbox-4-columns li{width:24%}#wpsl-checkbox-filter input{margin-right:5px}#wpsl-result-list .wpsl-contact-details span{display:block!important}@media (max-width:825px){#wpsl-search-input{width:348px}.wpsl-results-only #wpsl-search-wrap .wpsl-dropdown{width:70px}#wpsl-search-wrap .wpsl-input{width:100%;margin-bottom:10px}#wpsl-category label,#wpsl-radius label,.wpsl-cat-results-filter #wpsl-search-wrap .wpsl-input,.wpsl-input label,.wpsl-no-filters #wpsl-search-wrap .wpsl-input,.wpsl-results-only #wpsl-search-wrap .wpsl-input{width:auto}}@media (max-width:720px){#wpsl-search-wrap .wpsl-dropdown{width:114px}}@media (max-width:675px){#wpsl-search-wrap #wpsl-search-btn{float:left;margin:0 5px 0 0}.wpsl-dropdown,.wpsl-results-only #wpsl-search-wrap .wpsl-input{width:100%}.wpsl-search{padding:2%}#wpsl-result-list p,#wpsl-wrap #wpsl-result-list li,.wpsl-direction-before{padding-left:0}.wpsl-input{margin-right:0}#wpsl-gmap,#wpsl-result-list{float:none;width:100%}#wpsl-gmap{margin-bottom:15px;margin-top:10px}#wpsl-result-list,.wpsl-cat-results-filter .wpsl-select-wrap,.wpsl-filter .wpsl-select-wrap{margin-bottom:10px}#wpsl-wrap #wpsl-result-list li.wpsl-preloader{padding-left:25px}.wpsl-preloader img{left:0}#wpsl-stores.wpsl-not-loaded{height:25px}#wpsl-reset-map{top:25px}#wpsl-category,#wpsl-search-btn,.wpsl-input,.wpsl-no-filters #wpsl-search-wrap .wpsl-input,.wpsl-select-wrap{margin-bottom:0}#wpsl-stores.wpsl-no-autoload{height:auto!important}#wpsl-checkbox-filter.wpsl-checkbox-3-columns li,#wpsl-checkbox-filter.wpsl-checkbox-4-columns li{width:49%}}@media (max-width:570px){#wpsl-search-wrap #wpsl-search-btn{margin-bottom:5px}.wpsl-search{padding:4%}#wpsl-search-input{width:98%!important}.wpsl-cat-results-filter #wpsl-search-input,.wpsl-cat-results-filter #wpsl-search-wrap .wpsl-input,.wpsl-no-results #wpsl-search-input,.wpsl-results-only #wpsl-search-input{width:100%!important}.wpsl-search-btn-wrap{margin-top:15px;clear:both}.wpsl-checkboxes-enabled .wpsl-search-btn-wrap{margin-top:0}#wpsl-search-btn,#wpsl-search-wrap div{margin-right:0}#wpsl-search-wrap div label{display:block;width:100%}.wpsl-select-wrap{width:100%}#wpsl-radius,#wpsl-results{width:50%}#wpsl-radius{margin-right:4%}#wpsl-search-wrap .wpsl-dropdown{width:96%!important}.wpsl-no-filters #wpsl-search-input,.wpsl-no-filters #wpsl-search-wrap .wpsl-input{width:100%!important}}@media (max-width:420px){#wpsl-checkbox-filter li{margin:0}#wpsl-checkbox-filter.wpsl-checkbox-1-columns li,#wpsl-checkbox-filter.wpsl-checkbox-2-columns li,#wpsl-checkbox-filter.wpsl-checkbox-3-columns li,#wpsl-checkbox-filter.wpsl-checkbox-4-columns li{width:100%}}
frontend/class-frontend.php CHANGED
@@ -278,9 +278,8 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
278
 
279
  global $wpsl_settings, $wpsl;
280
 
281
- $all_stores = array();
282
- $include_post_content = apply_filters( 'wpsl_include_post_content', false );
283
-
284
  // Get the list of store fields that we need to filter out of the post meta data.
285
  $meta_field_map = $this->frontend_meta_fields();
286
 
@@ -302,7 +301,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
302
 
303
  if ( isset( $custom_fields[$meta_key][0] ) ) {
304
  if ( ( isset( $meta_value['type'] ) ) && ( !empty( $meta_value['type'] ) ) ) {
305
- $meta_type = $meta_value['type'];
306
  } else {
307
  $meta_type = '';
308
  }
@@ -324,7 +323,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
324
  $meta_data = esc_url( $custom_fields[$meta_key][0] );
325
  break;
326
  case 'hours':
327
- $meta_data = $this->get_opening_hours( $custom_fields[$meta_key][0], $hide_closed = false );
328
  break;
329
  case 'wp_editor':
330
  case 'textarea':
@@ -345,7 +344,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
345
  * Include the post content if the "More info" option is enabled on the settings page,
346
  * or if $include_post_content is set to true through the 'wpsl_include_post_content' filter.
347
  */
348
- if ( ( $wpsl_settings['more_info'] && $wpsl_settings['more_info_location'] == 'store listings' ) || $include_post_content ) {
349
  $page_object = get_post( $store->ID );
350
  $store_meta['description'] = apply_filters( 'the_content', strip_shortcodes( $page_object->post_content ) );
351
  }
@@ -602,7 +601,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
602
  }
603
 
604
  if ( $term_ids ) {
605
- $this->sl_shortcode_atts['categoryIds'] = implode( ',', $term_ids );
606
  }
607
  }
608
 
@@ -621,24 +620,22 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
621
  * or if a transient with the start latlng already exists.
622
  */
623
  if ( false === ( $start_latlng = get_transient( $transient_name ) ) ) {
624
- $response = wpsl_call_geocode_api( $atts['start_location'] );
625
-
626
- if ( !is_wp_error( $response ) ) {
627
- $response = json_decode( $response['body'], true );
628
-
629
- if ( $response['status'] == 'OK' ) {
630
- $start_latlng = $response['results'][0]['geometry']['location']['lat'] . ',' . $response['results'][0]['geometry']['location']['lng'];
631
-
632
- set_transient( $transient_name, $start_latlng, 0 );
633
- }
634
- }
635
  }
636
 
637
  if ( isset( $start_latlng ) && $start_latlng ) {
638
- // @todo change the name of zoomLatLng into something that makes more sense like startLatLng in the JS / settings code!
639
- $this->sl_shortcode_atts['zoomLatlng'] = $start_latlng;
640
  }
641
  }
 
 
 
 
 
 
 
 
642
  }
643
 
644
  /**
@@ -653,9 +650,11 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
653
  global $wpsl_settings;
654
 
655
  $atts = shortcode_atts( array(
656
- 'template' => $wpsl_settings['template_id'],
657
- 'category' => '',
658
- 'start_location' => ''
 
 
659
  ), $atts );
660
 
661
  $this->check_sl_shortcode_atts( $atts );
@@ -696,7 +695,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
696
 
697
  global $post, $wpsl_settings, $wpsl;
698
 
699
- $atts = $this->bool_check( shortcode_atts( apply_filters( 'wpsl_address_shortcode_defaults', array(
700
  'id' => '',
701
  'name' => true,
702
  'address' => true,
@@ -818,9 +817,11 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
818
 
819
  global $post;
820
 
821
- $atts = $this->bool_check( shortcode_atts( apply_filters( 'wpsl_hour_shortcode_defaults', array(
 
 
822
  'id' => '',
823
- 'hide_closed' => false
824
  ) ), $atts ) );
825
 
826
  if ( get_post_type() == 'wpsl_stores' ) {
@@ -843,28 +844,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
843
  return $output;
844
  }
845
  }
846
-
847
- /**
848
- * Make sure the shortcode attributes are booleans
849
- * when they are expected to be.
850
- *
851
- * @since 2.0.4
852
- * @param array $atts Shortcode attributes
853
- * @return array $atts Shortcode attributes
854
- */
855
- public function bool_check( $atts ) {
856
-
857
- foreach ( $atts as $key => $val ) {
858
- if ( in_array( $val, array( 'true', '1', 'yes', 'on' ) ) ) {
859
- $atts[$key] = true;
860
- } else if ( in_array( $val, array( 'false', '0', 'no', 'off' ) ) ) {
861
- $atts[$key] = false;
862
- }
863
- }
864
 
865
- return $atts;
866
- }
867
-
868
  /**
869
  * Handle the [wpsl_map] shortcode.
870
  *
@@ -943,7 +923,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
943
  foreach ( $store_ids as $store_id ) {
944
  $lat = get_post_meta( $store_id, 'wpsl_lat', true );
945
  $lng = get_post_meta( $store_id, 'wpsl_lng', true );
946
-
947
  // Make sure the latlng is numeric before collecting the other meta data.
948
  if ( is_numeric( $lat ) && is_numeric( $lng ) ) {
949
  $store_meta[$i] = apply_filters( 'wpsl_cpt_info_window_meta_fields', array(
@@ -1162,7 +1142,7 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1162
  * If the category dropdowns are enabled then we make it
1163
  * the same width as the search input field.
1164
  */
1165
- if ( $wpsl_settings['category_dropdown'] ) {
1166
  $cat_elem = ',#wpsl-category .wpsl-dropdown';
1167
  } else {
1168
  $cat_elem = '';
@@ -1188,17 +1168,21 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1188
 
1189
  $classes = array();
1190
 
1191
- if ( $wpsl_settings['category_dropdown'] && $wpsl_settings['results_dropdown'] && !$wpsl_settings['radius_dropdown'] ) {
1192
  $classes[] = 'wpsl-cat-results-filter';
1193
- } else if ( $wpsl_settings['category_dropdown'] && ( $wpsl_settings['results_dropdown'] || $wpsl_settings['radius_dropdown'] ) ) {
1194
  $classes[] = 'wpsl-filter';
1195
  }
1196
-
1197
- if ( !$wpsl_settings['category_dropdown'] && !$wpsl_settings['results_dropdown'] && !$wpsl_settings['radius_dropdown'] ) {
1198
  $classes[] = 'wpsl-no-filters';
1199
  }
1200
 
1201
- if ( $wpsl_settings['results_dropdown'] && !$wpsl_settings['category_dropdown'] && !$wpsl_settings['radius_dropdown'] ) {
 
 
 
 
1202
  $classes[] = 'wpsl-results-only';
1203
  }
1204
 
@@ -1210,8 +1194,8 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1210
  }
1211
 
1212
  /**
1213
- * Collect all the attributes (language, key, region)
1214
- * we need before making a request to the Google Maps API.
1215
  *
1216
  * @since 1.0.0
1217
  * @param string $list_type The name of the list we need to load data for
@@ -1250,35 +1234,84 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1250
  /**
1251
  * Create the category filter.
1252
  *
 
 
 
 
1253
  * @since 2.0.0
1254
  * @return string|void $category The HTML for the category dropdown, or nothing if no terms exist.
1255
  */
1256
  public function create_category_filter() {
1257
 
1258
- global $wpsl;
1259
 
1260
  /*
1261
  * If the category attr is set on the wpsl shortcode, then
1262
  * there is no need to ouput an extra category dropdown.
1263
  */
1264
- if ( isset( $this->sl_shortcode_atts['categoryIds'] ) ) {
1265
  return;
1266
  }
1267
 
1268
  $terms = get_terms( 'wpsl_store_category' );
1269
 
1270
  if ( count( $terms ) > 0 ) {
1271
- $category = '<div id="wpsl-category">' . "\r\n";
1272
- $category .= '<label for="wpsl-category-list">' . esc_html( $wpsl->i18n->get_translation( 'category_label', __( 'Category', 'wpsl' ) ) ) . '</label>' . "\r\n";
1273
- $category .= '<select autocomplete="off" name="wpsl-category" id="wpsl-category-list" class="wpsl-dropdown">';
1274
- $category .= '<option value="0">'. __( 'Any' , 'wpsl' ) .'</option>';
1275
 
1276
- foreach ( $terms as $term ) {
1277
- $category .= '<option value="' . $term->term_id . '" '. $this->set_selected_category( $term->term_id ) .'>' . $term->name . '</option>';
 
 
 
1278
  }
1279
 
1280
- $category .= '</select>';
1281
- $category .= '</div>' . "\r\n";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1282
 
1283
  return $category;
1284
  }
@@ -1288,16 +1321,24 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1288
  * Set the selected category item.
1289
  *
1290
  * @since 2.1.2
1291
- * @todo add support to make it check a query string for set cat
1292
- * @param integer The term id.
1293
- * @return string|void $category The 'selected' attribute or nothing.
1294
  */
1295
- public function set_selected_category( $term_id ) {
1296
-
1297
- $selected = apply_filters( 'wpsl_selected_category', $term_id );
1298
-
1299
- if ( $selected ) {
1300
- return $selected;
 
 
 
 
 
 
 
 
 
1301
  }
1302
  }
1303
 
@@ -1484,28 +1525,32 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1484
 
1485
  $dropdown_defaults = $this->get_dropdown_defaults();
1486
 
1487
- wp_enqueue_script( 'wpsl-gmap', ( 'https://maps.google.com/maps/api/js' . wpsl_get_gmap_api_params() ), '', null, true );
1488
 
1489
  $base_settings = array(
1490
- 'storeMarker' => $this->create_retina_filename( $wpsl_settings['store_marker'] ),
1491
- 'mapType' => $wpsl_settings['map_type'],
1492
- 'mapTypeControl' => $wpsl_settings['type_control'],
1493
- 'zoomLevel' => $wpsl_settings['zoom_level'],
1494
- 'zoomLatlng' => $wpsl_settings['zoom_latlng'], // @todo change name into startLatlng
1495
- 'autoZoomLevel' => $wpsl_settings['auto_zoom_level'],
1496
- 'scrollWheel' => $wpsl_settings['scrollwheel'],
1497
- 'controlPosition' => $wpsl_settings['control_position'],
1498
- 'url' => WPSL_URL,
1499
- 'markerIconProps' => $this->get_marker_props(),
1500
- 'draggable' => $this->maybe_draggable(),
1501
- 'storeUrl' => $wpsl_settings['store_url'],
1502
- 'mapTabAnchor' => apply_filters( 'wpsl_map_tab_anchor', 'wpsl-map-tab' )
 
 
 
1503
  );
1504
-
1505
  $locator_map_settings = array(
1506
  'startMarker' => $this->create_retina_filename( $wpsl_settings['start_marker'] ),
1507
  'markerClusters' => $wpsl_settings['marker_clusters'],
1508
  'streetView' => $wpsl_settings['streetview'],
 
1509
  'autoLocate' => $wpsl_settings['auto_locate'],
1510
  'autoLoad' => $wpsl_settings['autoload'],
1511
  'markerEffect' => $wpsl_settings['marker_effect'],
@@ -1526,7 +1571,18 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1526
  'mapControls' => $this->get_map_controls()
1527
  );
1528
 
1529
- /*
 
 
 
 
 
 
 
 
 
 
 
1530
  * If enabled, include the component filter settings.
1531
  *
1532
  * See https://developers.google.com/maps/documentation/javascript/geocoding#ComponentFiltering
@@ -1548,9 +1604,9 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1548
  // Check if we need to include the infobox script and settings.
1549
  if ( $wpsl_settings['infowindow_style'] == 'infobox' ) {
1550
  wp_enqueue_script( 'wpsl-infobox', WPSL_URL . 'js/infobox'. $min .'.js', array( 'wpsl-gmap' ), WPSL_VERSION_NUM, true ); // Not minified version is in the /js folder
1551
-
1552
  $base_settings['infoWindowStyle'] = $wpsl_settings['infowindow_style'];
1553
- $base_settings = $this->get_infobox_settings( $base_settings );
1554
  }
1555
 
1556
  // Include the map style.
@@ -1586,9 +1642,9 @@ if ( !class_exists( 'WPSL_Frontend' ) ) {
1586
  $settings = $base_settings;
1587
  }
1588
 
1589
- // Check if we need to overwrite settings that are set through the [wpsl] shortcode.
1590
- if ( $this->sl_shortcode_atts ) {
1591
- foreach ( $this->sl_shortcode_atts as $shortcode_key => $shortcode_val ) {
1592
  $settings[$shortcode_key] = $shortcode_val;
1593
  }
1594
  }
278
 
279
  global $wpsl_settings, $wpsl;
280
 
281
+ $all_stores = array();
282
+
 
283
  // Get the list of store fields that we need to filter out of the post meta data.
284
  $meta_field_map = $this->frontend_meta_fields();
285
 
301
 
302
  if ( isset( $custom_fields[$meta_key][0] ) ) {
303
  if ( ( isset( $meta_value['type'] ) ) && ( !empty( $meta_value['type'] ) ) ) {
304
+ $meta_type = $meta_value['type'];
305
  } else {
306
  $meta_type = '';
307
  }
323
  $meta_data = esc_url( $custom_fields[$meta_key][0] );
324
  break;
325
  case 'hours':
326
+ $meta_data = $this->get_opening_hours( $custom_fields[$meta_key][0], apply_filters( 'wpsl_hide_closed_hours', false ) );
327
  break;
328
  case 'wp_editor':
329
  case 'textarea':
344
  * Include the post content if the "More info" option is enabled on the settings page,
345
  * or if $include_post_content is set to true through the 'wpsl_include_post_content' filter.
346
  */
347
+ if ( ( $wpsl_settings['more_info'] && $wpsl_settings['more_info_location'] == 'store listings' ) || apply_filters( 'wpsl_include_post_content', false ) ) {
348
  $page_object = get_post( $store->ID );
349
  $store_meta['description'] = apply_filters( 'the_content', strip_shortcodes( $page_object->post_content ) );
350
  }
601
  }
602
 
603
  if ( $term_ids ) {
604
+ $this->sl_shortcode_atts['js']['categoryIds'] = implode( ',', $term_ids );
605
  }
606
  }
607
 
620
  * or if a transient with the start latlng already exists.
621
  */
622
  if ( false === ( $start_latlng = get_transient( $transient_name ) ) ) {
623
+ $start_latlng = wpsl_get_address_latlng( $atts['start_location'] );
624
+ set_transient( $transient_name, $start_latlng, 0 );
 
 
 
 
 
 
 
 
 
625
  }
626
 
627
  if ( isset( $start_latlng ) && $start_latlng ) {
628
+ $this->sl_shortcode_atts['js']['startLatlng'] = $start_latlng;
 
629
  }
630
  }
631
+
632
+ if ( isset( $atts['category_filter_type'] ) && in_array( $atts['category_filter_type'], array( 'dropdown', 'checkboxes' ) ) ) {
633
+ $this->sl_shortcode_atts['category_filter_type'] = $atts['category_filter_type'];
634
+ }
635
+
636
+ if ( isset( $atts['checkbox_columns'] ) && is_numeric( $atts['checkbox_columns'] ) ) {
637
+ $this->sl_shortcode_atts['checkbox_columns'] = $atts['checkbox_columns'];
638
+ }
639
  }
640
 
641
  /**
650
  global $wpsl_settings;
651
 
652
  $atts = shortcode_atts( array(
653
+ 'template' => $wpsl_settings['template_id'],
654
+ 'category' => '',
655
+ 'category_filter_type' => '',
656
+ 'start_location' => '',
657
+ 'checkbox_columns' => '3'
658
  ), $atts );
659
 
660
  $this->check_sl_shortcode_atts( $atts );
695
 
696
  global $post, $wpsl_settings, $wpsl;
697
 
698
+ $atts = wpsl_bool_check( shortcode_atts( apply_filters( 'wpsl_address_shortcode_defaults', array(
699
  'id' => '',
700
  'name' => true,
701
  'address' => true,
817
 
818
  global $post;
819
 
820
+ $hide_closed = apply_filters( 'wpsl_hide_closed_hours', false );
821
+
822
+ $atts = wpsl_bool_check( shortcode_atts( apply_filters( 'wpsl_hour_shortcode_defaults', array(
823
  'id' => '',
824
+ 'hide_closed' => $hide_closed
825
  ) ), $atts ) );
826
 
827
  if ( get_post_type() == 'wpsl_stores' ) {
844
  return $output;
845
  }
846
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
847
 
 
 
 
848
  /**
849
  * Handle the [wpsl_map] shortcode.
850
  *
923
  foreach ( $store_ids as $store_id ) {
924
  $lat = get_post_meta( $store_id, 'wpsl_lat', true );
925
  $lng = get_post_meta( $store_id, 'wpsl_lng', true );
926
+
927
  // Make sure the latlng is numeric before collecting the other meta data.
928
  if ( is_numeric( $lat ) && is_numeric( $lng ) ) {
929
  $store_meta[$i] = apply_filters( 'wpsl_cpt_info_window_meta_fields', array(
1142
  * If the category dropdowns are enabled then we make it
1143
  * the same width as the search input field.
1144
  */
1145
+ if ( $wpsl_settings['category_filter'] && $wpsl_settings['category_filter_type'] == 'dropdown' || isset( $this->sl_shortcode_atts['category_filter_type'] ) && $this->sl_shortcode_atts['category_filter_type'] == 'dropdown' ) {
1146
  $cat_elem = ',#wpsl-category .wpsl-dropdown';
1147
  } else {
1148
  $cat_elem = '';
1168
 
1169
  $classes = array();
1170
 
1171
+ if ( $wpsl_settings['category_filter'] && $wpsl_settings['results_dropdown'] && !$wpsl_settings['radius_dropdown'] ) {
1172
  $classes[] = 'wpsl-cat-results-filter';
1173
+ } else if ( $wpsl_settings['category_filter'] && ( $wpsl_settings['results_dropdown'] || $wpsl_settings['radius_dropdown'] ) ) {
1174
  $classes[] = 'wpsl-filter';
1175
  }
1176
+ // checkboxes class toevoegen?
1177
+ if ( !$wpsl_settings['category_filter'] && !$wpsl_settings['results_dropdown'] && !$wpsl_settings['radius_dropdown'] ) {
1178
  $classes[] = 'wpsl-no-filters';
1179
  }
1180
 
1181
+ if ( $wpsl_settings['category_filter'] && $wpsl_settings['category_filter_type'] == 'checkboxes' ) {
1182
+ $classes[] = 'wpsl-checkboxes-enabled';
1183
+ }
1184
+
1185
+ if ( $wpsl_settings['results_dropdown'] && !$wpsl_settings['category_filter'] && !$wpsl_settings['radius_dropdown'] ) {
1186
  $classes[] = 'wpsl-results-only';
1187
  }
1188
 
1194
  }
1195
 
1196
  /**
1197
+ * Create a dropdown list holding the search radius or
1198
+ * max search results options.
1199
  *
1200
  * @since 1.0.0
1201
  * @param string $list_type The name of the list we need to load data for
1234
  /**
1235
  * Create the category filter.
1236
  *
1237
+ * @todo create another func that accepts a meta key param to generate
1238
+ * a dropdown with unique values. So for example create_filter( 'restaurant' ) will output a
1239
+ * filter with all restaurant types. This can be used in a custom theme template.
1240
+ *
1241
  * @since 2.0.0
1242
  * @return string|void $category The HTML for the category dropdown, or nothing if no terms exist.
1243
  */
1244
  public function create_category_filter() {
1245
 
1246
+ global $wpsl, $wpsl_settings;
1247
 
1248
  /*
1249
  * If the category attr is set on the wpsl shortcode, then
1250
  * there is no need to ouput an extra category dropdown.
1251
  */
1252
+ if ( isset( $this->sl_shortcode_atts['js']['categoryIds'] ) ) {
1253
  return;
1254
  }
1255
 
1256
  $terms = get_terms( 'wpsl_store_category' );
1257
 
1258
  if ( count( $terms ) > 0 ) {
 
 
 
 
1259
 
1260
+ // Either use the shortcode atts filter type or the one from the settings page.
1261
+ if ( isset( $this->sl_shortcode_atts['category_filter_type'] ) ) {
1262
+ $filter_type = $this->sl_shortcode_atts['category_filter_type'];
1263
+ } else {
1264
+ $filter_type = $wpsl_settings['category_filter_type'];
1265
  }
1266
 
1267
+ // Check if we need to show the filter as checkboxes or a dropdown list
1268
+ if ( $filter_type == 'checkboxes' ) {
1269
+ if ( isset( $this->sl_shortcode_atts['checkbox_columns'] ) ) {
1270
+ $checkbox_columns = absint( $this->sl_shortcode_atts['checkbox_columns'] );
1271
+ }
1272
+
1273
+ if ( isset( $checkbox_columns ) && $checkbox_columns ) {
1274
+ $column_count = $checkbox_columns;
1275
+ } else {
1276
+ $column_count = 3;
1277
+ }
1278
+
1279
+ $category = '<ul id="wpsl-checkbox-filter" class="wpsl-checkbox-' . $column_count . '-columns">';
1280
+
1281
+ foreach ( $terms as $term ) {
1282
+ $category .= '<li>';
1283
+ $category .= '<label>';
1284
+ $category .= '<input type="checkbox" value="' . esc_attr( $term->term_id ) . '" ' . $this->set_selected_category( $filter_type, $term->term_id ) . ' />';
1285
+ $category .= esc_html( $term->name );
1286
+ $category .= '</label>';
1287
+ $category .= '</li>';
1288
+ }
1289
+
1290
+ $category .= '</ul>';
1291
+ } else {
1292
+ $category = '<div id="wpsl-category">' . "\r\n";
1293
+ $category .= '<label for="wpsl-category-list">' . esc_html( $wpsl->i18n->get_translation( 'category_label', __( 'Category', 'wpsl' ) ) ) . '</label>' . "\r\n";
1294
+
1295
+ $args = apply_filters( 'wpsl_dropdown_category_args', array(
1296
+ 'show_option_none' => $wpsl->i18n->get_translation( 'category_default_label', __( 'Any', 'wpsl' ) ),
1297
+ 'option_none_value' => '0',
1298
+ 'orderby' => 'NAME',
1299
+ 'order' => 'ASC',
1300
+ 'echo' => 0,
1301
+ 'selected' => $this->set_selected_category( $filter_type ),
1302
+ 'hierarchical' => 1,
1303
+ 'name' => 'wpsl-category',
1304
+ 'id' => 'wpsl-category-list',
1305
+ 'class' => 'wpsl-dropdown',
1306
+ 'taxonomy' => 'wpsl_store_category',
1307
+ 'hide_if_empty' => true
1308
+ )
1309
+ );
1310
+
1311
+ $category .= wp_dropdown_categories( $args );
1312
+
1313
+ $category .= '</div>' . "\r\n";
1314
+ }
1315
 
1316
  return $category;
1317
  }
1321
  * Set the selected category item.
1322
  *
1323
  * @since 2.1.2
1324
+ * @todo maybe add support in the future to make it check a query string for set cat?
1325
+ * @return string|void $category The ID of the selected option.
 
1326
  */
1327
+ public function set_selected_category( $filter_type, $id = '' ) {
1328
+
1329
+ $selected_id = isset( $_REQUEST['wpsl-widget-categories'] ) ? ( absint( $_REQUEST['wpsl-widget-categories'] ) ) : '';
1330
+
1331
+ if ( $selected_id ) {
1332
+
1333
+ /*
1334
+ * Based on the filter type, either return the ID of the selected category,
1335
+ * or check if the checkbox needs to be set to checked="checked.
1336
+ */
1337
+ if ( $filter_type == 'dropdown' ) {
1338
+ return $selected_id;
1339
+ } else {
1340
+ return checked( $selected_id, $id, false );
1341
+ }
1342
  }
1343
  }
1344
 
1525
 
1526
  $dropdown_defaults = $this->get_dropdown_defaults();
1527
 
1528
+ wp_enqueue_script( 'wpsl-gmap', ( 'https://maps.google.com/maps/api/js' . wpsl_get_gmap_api_params( 'browser_key' ) . '' ), '', null, true );
1529
 
1530
  $base_settings = array(
1531
+ 'storeMarker' => $this->create_retina_filename( $wpsl_settings['store_marker'] ),
1532
+ 'mapType' => $wpsl_settings['map_type'],
1533
+ 'mapTypeControl' => $wpsl_settings['type_control'],
1534
+ 'zoomLevel' => $wpsl_settings['zoom_level'],
1535
+ 'startLatlng' => $wpsl_settings['start_latlng'],
1536
+ 'autoZoomLevel' => $wpsl_settings['auto_zoom_level'],
1537
+ 'scrollWheel' => $wpsl_settings['scrollwheel'],
1538
+ 'controlPosition' => $wpsl_settings['control_position'],
1539
+ 'url' => WPSL_URL,
1540
+ 'markerIconProps' => $this->get_marker_props(),
1541
+ 'draggable' => $this->maybe_draggable(),
1542
+ 'storeUrl' => $wpsl_settings['store_url'],
1543
+ 'maxDropdownHeight' => apply_filters( 'wpsl_max_dropdown_height', 300 ),
1544
+ 'enableStyledDropdowns' => apply_filters( 'wpsl_enable_styled_dropdowns', true ),
1545
+ 'mapTabAnchor' => apply_filters( 'wpsl_map_tab_anchor', 'wpsl-map-tab' ),
1546
+ 'mapTabAnchorReturn' => apply_filters( 'wpsl_map_tab_anchor_return', false )
1547
  );
1548
+
1549
  $locator_map_settings = array(
1550
  'startMarker' => $this->create_retina_filename( $wpsl_settings['start_marker'] ),
1551
  'markerClusters' => $wpsl_settings['marker_clusters'],
1552
  'streetView' => $wpsl_settings['streetview'],
1553
+ 'autoComplete' => $wpsl_settings['autocomplete'],
1554
  'autoLocate' => $wpsl_settings['auto_locate'],
1555
  'autoLoad' => $wpsl_settings['autoload'],
1556
  'markerEffect' => $wpsl_settings['marker_effect'],
1571
  'mapControls' => $this->get_map_controls()
1572
  );
1573
 
1574
+ /*
1575
+ * If no results are found then by default it will just show the
1576
+ * "No results found" text. This filter makes it possible to show
1577
+ * a custom HTML block instead of the "No results found" text.
1578
+ */
1579
+ $no_results_msg = apply_filters( 'wpsl_no_results', '' );
1580
+
1581
+ if ( $no_results_msg ) {
1582
+ $locator_map_settings['noResults'] = $no_results_msg;
1583
+ }
1584
+
1585
+ /*
1586
  * If enabled, include the component filter settings.
1587
  *
1588
  * See https://developers.google.com/maps/documentation/javascript/geocoding#ComponentFiltering
1604
  // Check if we need to include the infobox script and settings.
1605
  if ( $wpsl_settings['infowindow_style'] == 'infobox' ) {
1606
  wp_enqueue_script( 'wpsl-infobox', WPSL_URL . 'js/infobox'. $min .'.js', array( 'wpsl-gmap' ), WPSL_VERSION_NUM, true ); // Not minified version is in the /js folder
1607
+
1608
  $base_settings['infoWindowStyle'] = $wpsl_settings['infowindow_style'];
1609
+ $base_settings = $this->get_infobox_settings( $base_settings );
1610
  }
1611
 
1612
  // Include the map style.
1642
  $settings = $base_settings;
1643
  }
1644
 
1645
+ // Check if we need to overwrite JS settings that are set through the [wpsl] shortcode.
1646
+ if ( $this->sl_shortcode_atts && isset( $this->sl_shortcode_atts['js'] ) ) {
1647
+ foreach ( $this->sl_shortcode_atts['js'] as $shortcode_key => $shortcode_val ) {
1648
  $settings[$shortcode_key] = $shortcode_val;
1649
  }
1650
  }
frontend/templates/default.php CHANGED
@@ -7,9 +7,10 @@ $autoload_class = ( !$wpsl_settings['autoload'] ) ? 'class="wpsl-not-loaded"' :
7
  $output .= '<div id="wpsl-wrap">' . "\r\n";
8
  $output .= "\t" . '<div class="wpsl-search wpsl-clearfix ' . $this->get_css_classes() . '">' . "\r\n";
9
  $output .= "\t\t" . '<div id="wpsl-search-wrap">' . "\r\n";
 
10
  $output .= "\t\t\t" . '<div class="wpsl-input">' . "\r\n";
11
  $output .= "\t\t\t\t" . '<div><label for="wpsl-search-input">' . esc_html( $wpsl->i18n->get_translation( 'search_label', __( 'Your location', 'wpsl' ) ) ) . '</label></div>' . "\r\n";
12
- $output .= "\t\t\t\t" . '<input autocomplete="off" id="wpsl-search-input" type="text" value="' . apply_filters( 'wpsl_search_input', '' ) . '" name="wpsl-search-input" />' . "\r\n";
13
  $output .= "\t\t\t" . '</div>' . "\r\n";
14
 
15
  if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] ) {
@@ -18,7 +19,7 @@ if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] )
18
  if ( $wpsl_settings['radius_dropdown'] ) {
19
  $output .= "\t\t\t\t" . '<div id="wpsl-radius">' . "\r\n";
20
  $output .= "\t\t\t\t\t" . '<label for="wpsl-radius-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'radius_label', __( 'Search radius', 'wpsl' ) ) ) . '</label>' . "\r\n";
21
- $output .= "\t\t\t\t\t" . '<select autocomplete="off" id="wpsl-radius-dropdown" class="wpsl-dropdown" name="wpsl-radius">' . "\r\n";
22
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'search_radius' ) . "\r\n";
23
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
24
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
@@ -27,7 +28,7 @@ if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] )
27
  if ( $wpsl_settings['results_dropdown'] ) {
28
  $output .= "\t\t\t\t" . '<div id="wpsl-results">' . "\r\n";
29
  $output .= "\t\t\t\t\t" . '<label for="wpsl-results-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'results_label', __( 'Results', 'wpsl' ) ) ) . '</label>' . "\r\n";
30
- $output .= "\t\t\t\t\t" . '<select autocomplete="off" id="wpsl-results-dropdown" class="wpsl-dropdown" name="wpsl-results">' . "\r\n";
31
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'max_results' ) . "\r\n";
32
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
33
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
@@ -36,12 +37,13 @@ if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] )
36
  $output .= "\t\t\t" . '</div>' . "\r\n";
37
  }
38
 
39
- if ( $wpsl_settings['category_dropdown'] ) {
40
  $output .= $this->create_category_filter();
41
  }
42
-
43
  $output .= "\t\t\t\t" . '<div class="wpsl-search-btn-wrap"><input id="wpsl-search-btn" type="submit" value="' . esc_attr( $wpsl->i18n->get_translation( 'search_btn_label', __( 'Search', 'wpsl' ) ) ) . '"></div>' . "\r\n";
44
 
 
45
  $output .= "\t\t" . '</div>' . "\r\n";
46
  $output .= "\t" . '</div>' . "\r\n";
47
 
7
  $output .= '<div id="wpsl-wrap">' . "\r\n";
8
  $output .= "\t" . '<div class="wpsl-search wpsl-clearfix ' . $this->get_css_classes() . '">' . "\r\n";
9
  $output .= "\t\t" . '<div id="wpsl-search-wrap">' . "\r\n";
10
+ $output .= "\t\t\t" . '<form autocomplete="off">' . "\r\n";
11
  $output .= "\t\t\t" . '<div class="wpsl-input">' . "\r\n";
12
  $output .= "\t\t\t\t" . '<div><label for="wpsl-search-input">' . esc_html( $wpsl->i18n->get_translation( 'search_label', __( 'Your location', 'wpsl' ) ) ) . '</label></div>' . "\r\n";
13
+ $output .= "\t\t\t\t" . '<input id="wpsl-search-input" type="text" value="' . apply_filters( 'wpsl_search_input', '' ) . '" name="wpsl-search-input" placeholder="" aria-required="true" />' . "\r\n";
14
  $output .= "\t\t\t" . '</div>' . "\r\n";
15
 
16
  if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] ) {
19
  if ( $wpsl_settings['radius_dropdown'] ) {
20
  $output .= "\t\t\t\t" . '<div id="wpsl-radius">' . "\r\n";
21
  $output .= "\t\t\t\t\t" . '<label for="wpsl-radius-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'radius_label', __( 'Search radius', 'wpsl' ) ) ) . '</label>' . "\r\n";
22
+ $output .= "\t\t\t\t\t" . '<select id="wpsl-radius-dropdown" class="wpsl-dropdown" name="wpsl-radius">' . "\r\n";
23
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'search_radius' ) . "\r\n";
24
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
25
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
28
  if ( $wpsl_settings['results_dropdown'] ) {
29
  $output .= "\t\t\t\t" . '<div id="wpsl-results">' . "\r\n";
30
  $output .= "\t\t\t\t\t" . '<label for="wpsl-results-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'results_label', __( 'Results', 'wpsl' ) ) ) . '</label>' . "\r\n";
31
+ $output .= "\t\t\t\t\t" . '<select id="wpsl-results-dropdown" class="wpsl-dropdown" name="wpsl-results">' . "\r\n";
32
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'max_results' ) . "\r\n";
33
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
34
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
37
  $output .= "\t\t\t" . '</div>' . "\r\n";
38
  }
39
 
40
+ if ( $wpsl_settings['category_filter'] ) {
41
  $output .= $this->create_category_filter();
42
  }
43
+
44
  $output .= "\t\t\t\t" . '<div class="wpsl-search-btn-wrap"><input id="wpsl-search-btn" type="submit" value="' . esc_attr( $wpsl->i18n->get_translation( 'search_btn_label', __( 'Search', 'wpsl' ) ) ) . '"></div>' . "\r\n";
45
 
46
+ $output .= "\t\t" . '</form>' . "\r\n";
47
  $output .= "\t\t" . '</div>' . "\r\n";
48
  $output .= "\t" . '</div>' . "\r\n";
49
 
frontend/templates/store-listings-below.php CHANGED
@@ -7,9 +7,10 @@ $autoload_class = ( !$wpsl_settings['autoload'] ) ? 'class="wpsl-not-loaded"' :
7
  $output .= '<div id="wpsl-wrap" class="wpsl-store-below">' . "\r\n";
8
  $output .= "\t" . '<div class="wpsl-search wpsl-clearfix ' . $this->get_css_classes() . '">' . "\r\n";
9
  $output .= "\t\t" . '<div id="wpsl-search-wrap">' . "\r\n";
 
10
  $output .= "\t\t\t" . '<div class="wpsl-input">' . "\r\n";
11
  $output .= "\t\t\t\t" . '<div><label for="wpsl-search-input">' . esc_html( $wpsl->i18n->get_translation( 'search_label', __( 'Your location', 'wpsl' ) ) ) . '</label></div>' . "\r\n";
12
- $output .= "\t\t\t\t" . '<input autocomplete="off" id="wpsl-search-input" type="text" value="' . apply_filters( 'wpsl_search_input', '' ) . '" name="wpsl-search-input" />' . "\r\n";
13
  $output .= "\t\t\t" . '</div>' . "\r\n";
14
 
15
  if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] ) {
@@ -18,7 +19,7 @@ if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] )
18
  if ( $wpsl_settings['radius_dropdown'] ) {
19
  $output .= "\t\t\t\t" . '<div id="wpsl-radius">' . "\r\n";
20
  $output .= "\t\t\t\t\t" . '<label for="wpsl-radius-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'radius_label', __( 'Search radius', 'wpsl' ) ) ) . '</label>' . "\r\n";
21
- $output .= "\t\t\t\t\t" . '<select autocomplete="off" id="wpsl-radius-dropdown" class="wpsl-dropdown" name="wpsl-radius">' . "\r\n";
22
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'search_radius' ) . "\r\n";
23
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
24
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
@@ -27,7 +28,7 @@ if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] )
27
  if ( $wpsl_settings['results_dropdown'] ) {
28
  $output .= "\t\t\t\t" . '<div id="wpsl-results">' . "\r\n";
29
  $output .= "\t\t\t\t\t" . '<label for="wpsl-results-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'results_label', __( 'Results', 'wpsl' ) ) ) . '</label>' . "\r\n";
30
- $output .= "\t\t\t\t\t" . '<select autocomplete="off" id="wpsl-results-dropdown" class="wpsl-dropdown" name="wpsl-results">' . "\r\n";
31
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'max_results' ) . "\r\n";
32
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
33
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
@@ -36,12 +37,13 @@ if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] )
36
  $output .= "\t\t\t" . '</div>' . "\r\n";
37
  }
38
 
39
- if ( $wpsl_settings['category_dropdown'] ) {
40
  $output .= $this->create_category_filter();
41
  }
42
 
43
  $output .= "\t\t\t\t" . '<div class="wpsl-search-btn-wrap"><input id="wpsl-search-btn" type="submit" value="' . esc_attr( $wpsl->i18n->get_translation( 'search_btn_label', __( 'Search', 'wpsl' ) ) ) . '"></div>' . "\r\n";
44
 
 
45
  $output .= "\t\t" . '</div>' . "\r\n";
46
  $output .= "\t" . '</div>' . "\r\n";
47
 
7
  $output .= '<div id="wpsl-wrap" class="wpsl-store-below">' . "\r\n";
8
  $output .= "\t" . '<div class="wpsl-search wpsl-clearfix ' . $this->get_css_classes() . '">' . "\r\n";
9
  $output .= "\t\t" . '<div id="wpsl-search-wrap">' . "\r\n";
10
+ $output .= "\t\t\t" . '<form autocomplete="off">' . "\r\n";
11
  $output .= "\t\t\t" . '<div class="wpsl-input">' . "\r\n";
12
  $output .= "\t\t\t\t" . '<div><label for="wpsl-search-input">' . esc_html( $wpsl->i18n->get_translation( 'search_label', __( 'Your location', 'wpsl' ) ) ) . '</label></div>' . "\r\n";
13
+ $output .= "\t\t\t\t" . '<input id="wpsl-search-input" type="text" value="' . apply_filters( 'wpsl_search_input', '' ) . '" name="wpsl-search-input" placeholder="" aria-required="true" />' . "\r\n";
14
  $output .= "\t\t\t" . '</div>' . "\r\n";
15
 
16
  if ( $wpsl_settings['radius_dropdown'] || $wpsl_settings['results_dropdown'] ) {
19
  if ( $wpsl_settings['radius_dropdown'] ) {
20
  $output .= "\t\t\t\t" . '<div id="wpsl-radius">' . "\r\n";
21
  $output .= "\t\t\t\t\t" . '<label for="wpsl-radius-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'radius_label', __( 'Search radius', 'wpsl' ) ) ) . '</label>' . "\r\n";
22
+ $output .= "\t\t\t\t\t" . '<select id="wpsl-radius-dropdown" class="wpsl-dropdown" name="wpsl-radius">' . "\r\n";
23
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'search_radius' ) . "\r\n";
24
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
25
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
28
  if ( $wpsl_settings['results_dropdown'] ) {
29
  $output .= "\t\t\t\t" . '<div id="wpsl-results">' . "\r\n";
30
  $output .= "\t\t\t\t\t" . '<label for="wpsl-results-dropdown">' . esc_html( $wpsl->i18n->get_translation( 'results_label', __( 'Results', 'wpsl' ) ) ) . '</label>' . "\r\n";
31
+ $output .= "\t\t\t\t\t" . '<select id="wpsl-results-dropdown" class="wpsl-dropdown" name="wpsl-results">' . "\r\n";
32
  $output .= "\t\t\t\t\t\t" . $this->get_dropdown_list( 'max_results' ) . "\r\n";
33
  $output .= "\t\t\t\t\t" . '</select>' . "\r\n";
34
  $output .= "\t\t\t\t" . '</div>' . "\r\n";
37
  $output .= "\t\t\t" . '</div>' . "\r\n";
38
  }
39
 
40
+ if ( $wpsl_settings['category_filter'] ) {
41
  $output .= $this->create_category_filter();
42
  }
43
 
44
  $output .= "\t\t\t\t" . '<div class="wpsl-search-btn-wrap"><input id="wpsl-search-btn" type="submit" value="' . esc_attr( $wpsl->i18n->get_translation( 'search_btn_label', __( 'Search', 'wpsl' ) ) ) . '"></div>' . "\r\n";
45
 
46
+ $output .= "\t\t" . '</form>' . "\r\n";
47
  $output .= "\t\t" . '</div>' . "\r\n";
48
  $output .= "\t" . '</div>' . "\r\n";
49
 
frontend/underscore-functions.php CHANGED
@@ -51,8 +51,28 @@ function wpsl_create_underscore_templates( $template ) {
51
  $listing_template .= "\t\t\t\t" . '<span class="wpsl-street"><%= address2 %></span>' . "\r\n";
52
  $listing_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
53
  $listing_template .= "\t\t\t\t" . '<span>' . wpsl_address_format_placeholders() . '</span>' . "\r\n"; // Use the correct address format
54
- $listing_template .= "\t\t\t\t" . '<span class="wpsl-country"><%= country %></span>' . "\r\n";
 
 
 
 
55
  $listing_template .= "\t\t\t" . '</p>' . "\r\n";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
56
  $listing_template .= "\t\t\t" . wpsl_more_info_template() . "\r\n"; // Check if we need to show the 'More Info' link and info
57
  $listing_template .= "\t\t" . '</div>' . "\r\n";
58
  $listing_template .= "\t\t" . '<div class="wpsl-direction-wrap">' . "\r\n";
@@ -81,7 +101,11 @@ function wpsl_create_underscore_templates( $template ) {
81
  $cpt_info_window_template .= "\t\t\t" . '<span><%= address2 %></span>' . "\r\n";
82
  $cpt_info_window_template .= "\t\t\t" . '<% } %>' . "\r\n";
83
  $cpt_info_window_template .= "\t\t\t" . '<span>' . wpsl_address_format_placeholders() . '</span>' . "\r\n"; // Use the correct address format
84
- $cpt_info_window_template .= "\t\t\t" . '<span class="wpsl-country"><%= country %></span>' . "\r\n";
 
 
 
 
85
  $cpt_info_window_template .= "\t\t" . '</p>' . "\r\n";
86
  $cpt_info_window_template .= "\t" . '</div>';
87
 
@@ -116,17 +140,20 @@ function wpsl_more_info_template() {
116
  $more_info_template .= "\t\t\t\t" . '<% if ( description ) { %>' . "\r\n";
117
  $more_info_template .= "\t\t\t\t" . '<%= description %>' . "\r\n";
118
  $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
119
- $more_info_template .= "\t\t\t\t" . '<p>' . "\r\n";
120
- $more_info_template .= "\t\t\t\t" . '<% if ( phone ) { %>' . "\r\n";
121
- $more_info_template .= "\t\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'phone_label', __( 'Phone', 'wpsl' ) ) ) . '</strong>: <%= formatPhoneNumber( phone ) %></span>' . "\r\n";
122
- $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
123
- $more_info_template .= "\t\t\t\t" . '<% if ( fax ) { %>' . "\r\n";
124
- $more_info_template .= "\t\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'fax_label', __( 'Fax', 'wpsl' ) ) ) . '</strong>: <%= fax %></span>' . "\r\n";
125
- $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
126
- $more_info_template .= "\t\t\t\t" . '<% if ( email ) { %>' . "\r\n";
127
- $more_info_template .= "\t\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'email_label', __( 'Email', 'wpsl' ) ) ) . '</strong>: <%= email %></span>' . "\r\n";
128
- $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
129
- $more_info_template .= "\t\t\t\t" . '</p>' . "\r\n";
 
 
 
130
 
131
  if ( !$wpsl_settings['hide_hours'] ) {
132
  $more_info_template .= "\t\t\t\t" . '<% if ( hours ) { %>' . "\r\n";
@@ -175,8 +202,8 @@ function wpsl_store_header_template( $location = 'info_window' ) {
175
  if ( $wpsl_settings['permalinks'] ) {
176
 
177
  /**
178
- * It's possible the permalinks are enabled, but not included in
179
- * the location data on pages where the [wpsl_map] shortcode is used.
180
  *
181
  * So we need to check for undefined, which isn't necesary in all other cases.
182
  */
51
  $listing_template .= "\t\t\t\t" . '<span class="wpsl-street"><%= address2 %></span>' . "\r\n";
52
  $listing_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
53
  $listing_template .= "\t\t\t\t" . '<span>' . wpsl_address_format_placeholders() . '</span>' . "\r\n"; // Use the correct address format
54
+
55
+ if ( !$wpsl_settings['hide_country'] ) {
56
+ $listing_template .= "\t\t\t\t" . '<span class="wpsl-country"><%= country %></span>' . "\r\n";
57
+ }
58
+
59
  $listing_template .= "\t\t\t" . '</p>' . "\r\n";
60
+
61
+ // Show the phone, fax or email data if they exist.
62
+ if ( $wpsl_settings['show_contact_details'] ) {
63
+ $listing_template .= "\t\t\t" . '<p class="wpsl-contact-details">' . "\r\n";
64
+ $listing_template .= "\t\t\t" . '<% if ( phone ) { %>' . "\r\n";
65
+ $listing_template .= "\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'phone_label', __( 'Phone', 'wpsl' ) ) ) . '</strong>: <%= formatPhoneNumber( phone ) %></span>' . "\r\n";
66
+ $listing_template .= "\t\t\t" . '<% } %>' . "\r\n";
67
+ $listing_template .= "\t\t\t" . '<% if ( fax ) { %>' . "\r\n";
68
+ $listing_template .= "\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'fax_label', __( 'Fax', 'wpsl' ) ) ) . '</strong>: <%= fax %></span>' . "\r\n";
69
+ $listing_template .= "\t\t\t" . '<% } %>' . "\r\n";
70
+ $listing_template .= "\t\t\t" . '<% if ( email ) { %>' . "\r\n";
71
+ $listing_template .= "\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'email_label', __( 'Email', 'wpsl' ) ) ) . '</strong>: <%= email %></span>' . "\r\n";
72
+ $listing_template .= "\t\t\t" . '<% } %>' . "\r\n";
73
+ $listing_template .= "\t\t\t" . '</p>' . "\r\n";
74
+ }
75
+
76
  $listing_template .= "\t\t\t" . wpsl_more_info_template() . "\r\n"; // Check if we need to show the 'More Info' link and info
77
  $listing_template .= "\t\t" . '</div>' . "\r\n";
78
  $listing_template .= "\t\t" . '<div class="wpsl-direction-wrap">' . "\r\n";
101
  $cpt_info_window_template .= "\t\t\t" . '<span><%= address2 %></span>' . "\r\n";
102
  $cpt_info_window_template .= "\t\t\t" . '<% } %>' . "\r\n";
103
  $cpt_info_window_template .= "\t\t\t" . '<span>' . wpsl_address_format_placeholders() . '</span>' . "\r\n"; // Use the correct address format
104
+
105
+ if ( !$wpsl_settings['hide_country'] ) {
106
+ $cpt_info_window_template .= "\t\t\t" . '<span class="wpsl-country"><%= country %></span>' . "\r\n";
107
+ }
108
+
109
  $cpt_info_window_template .= "\t\t" . '</p>' . "\r\n";
110
  $cpt_info_window_template .= "\t" . '</div>';
111
 
140
  $more_info_template .= "\t\t\t\t" . '<% if ( description ) { %>' . "\r\n";
141
  $more_info_template .= "\t\t\t\t" . '<%= description %>' . "\r\n";
142
  $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
143
+
144
+ if ( !$wpsl_settings['show_contact_details'] ) {
145
+ $more_info_template .= "\t\t\t\t" . '<p>' . "\r\n";
146
+ $more_info_template .= "\t\t\t\t" . '<% if ( phone ) { %>' . "\r\n";
147
+ $more_info_template .= "\t\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'phone_label', __( 'Phone', 'wpsl' ) ) ) . '</strong>: <%= formatPhoneNumber( phone ) %></span>' . "\r\n";
148
+ $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
149
+ $more_info_template .= "\t\t\t\t" . '<% if ( fax ) { %>' . "\r\n";
150
+ $more_info_template .= "\t\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'fax_label', __( 'Fax', 'wpsl' ) ) ) . '</strong>: <%= fax %></span>' . "\r\n";
151
+ $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
152
+ $more_info_template .= "\t\t\t\t" . '<% if ( email ) { %>' . "\r\n";
153
+ $more_info_template .= "\t\t\t\t" . '<span><strong>' . esc_html( $wpsl->i18n->get_translation( 'email_label', __( 'Email', 'wpsl' ) ) ) . '</strong>: <%= email %></span>' . "\r\n";
154
+ $more_info_template .= "\t\t\t\t" . '<% } %>' . "\r\n";
155
+ $more_info_template .= "\t\t\t\t" . '</p>' . "\r\n";
156
+ }
157
 
158
  if ( !$wpsl_settings['hide_hours'] ) {
159
  $more_info_template .= "\t\t\t\t" . '<% if ( hours ) { %>' . "\r\n";
202
  if ( $wpsl_settings['permalinks'] ) {
203
 
204
  /**
205
+ * It's possible the permalinks are enabled, but not included in the location data on
206
+ * pages where the [wpsl_map] shortcode is used.
207
  *
208
  * So we need to check for undefined, which isn't necesary in all other cases.
209
  */
inc/wpsl-functions.php CHANGED
@@ -5,31 +5,47 @@
5
  * we need before making a request to the Google Maps API.
6
  *
7
  * @since 1.0.0
8
- * @return string $api_params The api parameters
 
 
9
  */
10
- function wpsl_get_gmap_api_params( $geocode_params = false ) {
11
 
12
  global $wpsl_settings;
13
 
14
  $api_params = '';
15
- $api_keys = array( 'language', 'key', 'region' );
16
-
17
  /*
18
  * The geocode params are included after the address so we need to
19
  * use a '&' as the first char, but when the maps script is included on
20
  * the front-end it does need to start with a '?'.
21
  */
22
- $first_sep = ( $geocode_params ) ? '&' : '?';
 
 
 
 
 
 
 
23
 
24
- foreach ( $api_keys as $api_key ) {
25
- if ( !empty( $wpsl_settings['api_'.$api_key] ) ) {
26
- $api_params .= $api_key . '=' . $wpsl_settings['api_'.$api_key] . '&';
 
27
  }
 
28
  }
29
 
30
  if ( $api_params ) {
31
  $api_params = $first_sep . rtrim( $api_params, '&' );
32
  }
 
 
 
 
 
33
 
34
  return apply_filters( 'wpsl_gmap_api_params', $api_params );
35
  }
@@ -43,7 +59,8 @@ function wpsl_get_gmap_api_params( $geocode_params = false ) {
43
  function wpsl_get_default_settings() {
44
 
45
  $default_settings = array(
46
- 'api_key' => '',
 
47
  'api_language' => 'en',
48
  'api_region' => '',
49
  'api_geocode_component' => 0,
@@ -53,13 +70,16 @@ function wpsl_get_default_settings() {
53
  'marker_effect' => 'bounce',
54
  'address_format' => 'city_state_zip',
55
  'hide_distance' => 0,
 
 
56
  'auto_locate' => 1,
 
57
  'autoload' => 1,
58
  'autoload_limit' => 50,
59
  'zoom_level' => 3,
60
  'auto_zoom_level' => 15,
61
- 'zoom_name' => '',
62
- 'zoom_latlng' => '',
63
  'height' => 350,
64
  'map_type' => 'roadmap',
65
  'map_style' => '',
@@ -67,7 +87,8 @@ function wpsl_get_default_settings() {
67
  'streetview' => 0,
68
  'results_dropdown' => 1,
69
  'radius_dropdown' => 1,
70
- 'category_dropdown' => 0,
 
71
  'infowindow_width' => 225,
72
  'search_width' => 179,
73
  'label_width' => 95,
@@ -122,7 +143,8 @@ function wpsl_get_default_settings() {
122
  'email_label' => __( 'Email', 'wpsl' ),
123
  'url_label' => __( 'Url', 'wpsl' ),
124
  'hours_label' => __( 'Hours', 'wpsl' ),
125
- 'category_label' => __( 'Category filter', 'wpsl' )
 
126
  );
127
 
128
  return $default_settings;
@@ -381,7 +403,8 @@ function wpsl_labels() {
381
  'hours',
382
  'start',
383
  'limit',
384
- 'category'
 
385
  );
386
 
387
  return $labels;
@@ -416,13 +439,63 @@ function wpsl_is_multi_array( $array ) {
416
 
417
  /**
418
  * @since 2.1.1
419
- * @param string $address The address to geocode
420
  * @return array $response Either a WP_Error or the response from the Geocode API.
421
  */
422
  function wpsl_call_geocode_api( $address ) {
423
 
424
- $url = 'https://maps.googleapis.com/maps/api/geocode/json?address=' . urlencode( $address ) . wpsl_get_gmap_api_params( true );
425
  $response = wp_remote_get( $url );
426
-
427
  return $response;
428
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  * we need before making a request to the Google Maps API.
6
  *
7
  * @since 1.0.0
8
+ * @param string $api_key_type The type of API key we need to include ( server or browser ).
9
+ * @param boolean $geocode_params
10
+ * @return string $api_params The API parameters.
11
  */
12
+ function wpsl_get_gmap_api_params( $api_key_type, $geocode_params = false ) {
13
 
14
  global $wpsl_settings;
15
 
16
  $api_params = '';
17
+ $param_keys = array( 'language', 'region', 'key' );
18
+
19
  /*
20
  * The geocode params are included after the address so we need to
21
  * use a '&' as the first char, but when the maps script is included on
22
  * the front-end it does need to start with a '?'.
23
  */
24
+ $first_sep = ( $geocode_params ) ? '&' : '?';
25
+
26
+ foreach ( $param_keys as $param_key ) {
27
+ if ( $param_key !== 'key' ) {
28
+ $option_key = $param_key;
29
+ } else {
30
+ $option_key = $api_key_type;
31
+ }
32
 
33
+ $param_val = $wpsl_settings['api_' . $option_key];
34
+
35
+ if ( !empty( $param_val ) ) {
36
+ $api_params .= $param_key . '=' . $param_val . '&';
37
  }
38
+
39
  }
40
 
41
  if ( $api_params ) {
42
  $api_params = $first_sep . rtrim( $api_params, '&' );
43
  }
44
+
45
+ // Do we need to include the autocomplete library? This is only necessary on the front-end.
46
+ if ( $wpsl_settings['autocomplete'] && $api_key_type == 'browser_key' ) {
47
+ $api_params .= '&libraries=places';
48
+ }
49
 
50
  return apply_filters( 'wpsl_gmap_api_params', $api_params );
51
  }
59
  function wpsl_get_default_settings() {
60
 
61
  $default_settings = array(
62
+ 'api_browser_key' => '',
63
+ 'api_server_key' => '',
64
  'api_language' => 'en',
65
  'api_region' => '',
66
  'api_geocode_component' => 0,
70
  'marker_effect' => 'bounce',
71
  'address_format' => 'city_state_zip',
72
  'hide_distance' => 0,
73
+ 'hide_country' => 0,
74
+ 'show_contact_details' => 0,
75
  'auto_locate' => 1,
76
+ 'autocomplete' => 0,
77
  'autoload' => 1,
78
  'autoload_limit' => 50,
79
  'zoom_level' => 3,
80
  'auto_zoom_level' => 15,
81
+ 'start_name' => '',
82
+ 'start_latlng' => '',
83
  'height' => 350,
84
  'map_type' => 'roadmap',
85
  'map_style' => '',
87
  'streetview' => 0,
88
  'results_dropdown' => 1,
89
  'radius_dropdown' => 1,
90
+ 'category_filter' => 0,
91
+ 'category_filter_type' => 'dropdown',
92
  'infowindow_width' => 225,
93
  'search_width' => 179,
94
  'label_width' => 95,
143
  'email_label' => __( 'Email', 'wpsl' ),
144
  'url_label' => __( 'Url', 'wpsl' ),
145
  'hours_label' => __( 'Hours', 'wpsl' ),
146
+ 'category_label' => __( 'Category filter', 'wpsl' ),
147
+ 'category_default_label' => __( 'Any', 'wpsl' )
148
  );
149
 
150
  return $default_settings;
403
  'hours',
404
  'start',
405
  'limit',
406
+ 'category',
407
+ 'category_default'
408
  );
409
 
410
  return $labels;
439
 
440
  /**
441
  * @since 2.1.1
442
+ * @param string $address The address to geocode.
443
  * @return array $response Either a WP_Error or the response from the Geocode API.
444
  */
445
  function wpsl_call_geocode_api( $address ) {
446
 
447
+ $url = 'https://maps.googleapis.com/maps/api/geocode/json?address=' . urlencode( $address ) . wpsl_get_gmap_api_params( 'server_key', true );
448
  $response = wp_remote_get( $url );
449
+
450
  return $response;
451
+ }
452
+
453
+ /**
454
+ * Get the latlng for the provided address.
455
+ *
456
+ * This is used to geocode the address set as the start point on
457
+ * the settings page in case the autocomplete fails
458
+ * ( only happens when there is a JS error on the page ),
459
+ * or to get the latlng when the 'start_location' attr is set
460
+ * on the wpsl shortcode.
461
+ *
462
+ * @since 2.2
463
+ * @param string $address The address to geocode.
464
+ * @return array|void $latlng The returned latlng or nothing if there was an error.
465
+ */
466
+ function wpsl_get_address_latlng( $address ) {
467
+
468
+ $latlng = '';
469
+ $response = wpsl_call_geocode_api( $address );
470
+
471
+ if ( !is_wp_error( $response ) ) {
472
+ $response = json_decode( $response['body'], true );
473
+
474
+ if ( $response['status'] == 'OK' ) {
475
+ $latlng = $response['results'][0]['geometry']['location']['lat'] . ',' . $response['results'][0]['geometry']['location']['lng'];
476
+ }
477
+ }
478
+
479
+ return $latlng;
480
+ }
481
+
482
+ /**
483
+ * Make sure the shortcode attributes are booleans
484
+ * when they are expected to be.
485
+ *
486
+ * @since 2.0.4
487
+ * @param array $atts Shortcode attributes
488
+ * @return array $atts Shortcode attributes
489
+ */
490
+ function wpsl_bool_check( $atts ) {
491
+
492
+ foreach ( $atts as $key => $val ) {
493
+ if ( in_array( $val, array( 'true', '1', 'yes', 'on' ) ) ) {
494
+ $atts[$key] = true;
495
+ } else if ( in_array( $val, array( 'false', '0', 'no', 'off' ) ) ) {
496
+ $atts[$key] = false;
497
+ }
498
+ }
499
+
500
+ return $atts;
501
+ }
js/wpsl-gmap.js CHANGED
@@ -1,5 +1,5 @@
1
  jQuery( document ).ready( function( $ ) {
2
- var geocoder, map, directionsDisplay, directionsService, geolocationLatlng,
3
  activeWindowMarkerId, infoWindow, markerClusterer, startMarkerData, startAddress,
4
  openInfoWindow = [],
5
  markersArray = [],
@@ -97,7 +97,7 @@ function initializeGmap( mapId, mapIndex ) {
97
  locationCount = mapData.length;
98
 
99
  // Loop over the map data, create the infowindow object and add each marker.
100
- $.each( mapData, function( index ) {
101
  latLng = new google.maps.LatLng( mapData[index].lat, mapData[index].lng );
102
  addMarker( latLng, mapData[index].id, mapData[index], false, infoWindow );
103
  bounds.extend( latLng );
@@ -118,7 +118,11 @@ function initializeGmap( mapId, mapIndex ) {
118
 
119
  // Only run this part if the store locator exist and we don't just have a basic map.
120
  if ( $( "#wpsl-gmap" ).length ) {
121
-
 
 
 
 
122
  /*
123
  * Not the most optimal solution, but we check the useragent if we should enable the styled dropdowns.
124
  *
@@ -126,11 +130,16 @@ function initializeGmap( mapId, mapIndex ) {
126
  * iOS and Android devices. So on mobile devices the dropdowns will be styled according
127
  * to the browser styles on that device.
128
  */
129
- if ( !checkMobileUserAgent() && $( ".wpsl-dropdown" ).length ) {
130
  createDropdowns();
131
  } else {
132
- $( "#wpsl-search-wrap select").show();
133
- $( "#wpsl-wrap" ).addClass( "wpsl-mobile" );
 
 
 
 
 
134
  }
135
 
136
  // Check if we need to autolocate the user, or autoload the store locations.
@@ -161,6 +170,38 @@ function initializeGmap( mapId, mapIndex ) {
161
  zoomChangedListener();
162
  }
163
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
164
  /**
165
  * Make sure that the 'Zoom here' link in the info window
166
  * doesn't zoom past the max auto zoom level.
@@ -243,8 +284,8 @@ function getStartLatlng( mapIndex ) {
243
  */
244
  if ( ( typeof firstLocation !== "undefined" && typeof firstLocation.lat !== "undefined" ) && ( typeof firstLocation.lng !== "undefined" ) ) {
245
  startLatLng = new google.maps.LatLng( firstLocation.lat, firstLocation.lng );
246
- } else if ( wpslSettings.zoomLatlng !== "" ) {
247
- latLng = wpslSettings.zoomLatlng.split( "," );
248
  startLatLng = new google.maps.LatLng( latLng[0], latLng[1] );
249
  } else {
250
  startLatLng = new google.maps.LatLng( 0,0 );
@@ -552,6 +593,7 @@ function handleGeolocationQuery( startLatLng, position, resetMap, infoWindow ) {
552
  * Handle clicks on the store locator search button.
553
  *
554
  * @since 1.0.0
 
555
  * @param {object} infoWindow The infoWindow object
556
  * @returns {void}
557
  */
@@ -568,16 +610,28 @@ function searchLocationBtn( infoWindow ) {
568
  $( "#wpsl-stores" ).show();
569
  $( ".wpsl-direction-before, .wpsl-direction-after" ).remove();
570
  $( "#wpsl-direction-details" ).hide();
571
-
572
  resetMap = false;
573
 
574
  // Force the open InfoBox info window to close.
575
  closeInfoBoxWindow();
576
-
577
  deleteOverlays( keepStartMarker );
578
  deleteStartMarker();
579
- codeAddress( infoWindow );
 
 
 
 
 
 
 
 
 
 
580
  }
 
 
581
  });
582
  }
583
 
@@ -717,14 +771,15 @@ function deleteStartMarker() {
717
  * @returns {void}
718
  */
719
  function resetDropdowns() {
720
- var i, arrayLength, dataValue, catText,
721
- defaultValues = [wpslSettings.searchRadius + ' ' + wpslSettings.distanceUnit, wpslSettings.maxResults],
722
- dropdowns = ["wpsl-radius", "wpsl-results"];
723
-
 
724
  for ( i = 0, arrayLength = dropdowns.length; i < arrayLength; i++ ) {
725
  $( "#" + dropdowns[i] + " select" ).val( parseInt( defaultValues[i] ) );
726
  $( "#" + dropdowns[i] + " li" ).removeClass();
727
-
728
  if ( dropdowns[i] == "wpsl-radius" ) {
729
  dataValue = wpslSettings.searchRadius;
730
  } else if ( dropdowns[i] == "wpsl-results" ) {
@@ -734,25 +789,44 @@ function resetDropdowns() {
734
  $( "#" + dropdowns[i] + " li" ).each( function() {
735
  if ( $( this ).text() === defaultValues[i] ) {
736
  $( this ).addClass( "wpsl-selected-dropdown" );
737
-
738
  $( "#" + dropdowns[i] + " .wpsl-selected-item" ).html( defaultValues[i] ).attr( "data-value", dataValue );
739
  }
740
  });
741
  }
742
-
743
  /**
744
- * Reset the category dropdown
745
  * @todo look for other way to do this in combination with above code. Maybe allow users to define a default cat on the settings page?
746
  */
747
  if ( $( "#wpsl-category" ).length ) {
748
  $( "#wpsl-category select" ).val( 0 );
749
  $( "#wpsl-category li" ).removeClass();
750
  $( "#wpsl-category li:first-child" ).addClass( "wpsl-selected-dropdown" );
751
-
752
- catText = $( "#wpsl-category li:first-child").text();
753
-
754
  $( "#wpsl-category .wpsl-selected-item" ).html( catText ).attr( "data-value", 0 );
755
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
756
  }
757
 
758
  // Handle the click on the back button when the route directions are displayed.
@@ -978,9 +1052,7 @@ function calcRoute( start, end ) {
978
  * @returns {void}
979
  */
980
  function codeAddress( infoWindow ) {
981
- var latLng,
982
- autoLoad = false,
983
- keepStartMarker = false,
984
  request = {
985
  'address': $( "#wpsl-search-input" ).val()
986
  };
@@ -994,18 +1066,31 @@ function codeAddress( infoWindow ) {
994
  if ( status == google.maps.GeocoderStatus.OK ) {
995
  latLng = response[0].geometry.location;
996
 
997
- // Remove any previous markers and add a new one.
998
- deleteOverlays( keepStartMarker );
999
- addMarker( latLng, 0, '', true, infoWindow ); // This marker is the 'start location' marker.
1000
-
1001
- // Try to find stores that match the radius, location criteria.
1002
- findStoreLocations( latLng, resetMap, autoLoad, infoWindow );
1003
  } else {
1004
  geocodeErrors( status );
1005
  }
1006
  });
1007
  }
1008
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1009
  /**
1010
  * Geocode the user input and set the returned zipcode in the input field.
1011
  *
@@ -1098,7 +1183,7 @@ function findFormattedAddress( latLng, callback ) {
1098
  }
1099
 
1100
  /**
1101
- * Make the Ajax request to load the store data.
1102
  *
1103
  * @since 1.2.0
1104
  * @param {object} startLatLng The latlng used as the starting point
@@ -1108,100 +1193,15 @@ function findFormattedAddress( latLng, callback ) {
1108
  * @returns {void}
1109
  */
1110
  function makeAjaxRequest( startLatLng, resetMap, autoLoad, infoWindow ) {
1111
- var latLng, maxResult, radius,
 
1112
  storeData = "",
1113
- categoryId = "",
1114
  draggable = false,
1115
- isMobile = $( "#wpsl-wrap" ).hasClass( "wpsl-mobile" ),
1116
  template = $( "#wpsl-listing-template" ).html(),
1117
  $storeList = $( "#wpsl-stores ul" ),
1118
- preloader = wpslSettings.url + "img/ajax-loader.gif",
1119
- ajaxData = {
1120
- action: "store_search",
1121
- lat: startLatLng.lat(),
1122
- lng: startLatLng.lng()
1123
- };
1124
-
1125
- /*
1126
- * If we reset the map we use the default dropdown values instead of the selected values.
1127
- * Otherwise we first make sure the filter val is valid before including the radius / max_results param
1128
- */
1129
- if ( resetMap ) {
1130
- ajaxData.max_results = wpslSettings.maxResults;
1131
- ajaxData.radius = wpslSettings.searchRadius;
1132
- } else {
1133
- if ( isMobile ) {
1134
- maxResult = parseInt( $( "#wpsl-results .wpsl-dropdown" ).val() );
1135
- radius = parseInt( $( "#wpsl-radius .wpsl-dropdown" ).val() );
1136
- } else {
1137
- maxResult = parseInt( $( "#wpsl-results .wpsl-selected-item" ).attr( "data-value" ) );
1138
- radius = parseInt( $( "#wpsl-radius .wpsl-selected-item" ).attr( "data-value" ) );
1139
- }
1140
-
1141
- // If the max resuls or radius filter values are NaN, then we use the default value.
1142
- if ( isNaN( maxResult ) ) {
1143
- ajaxData.max_results = wpslSettings.maxResults;
1144
- } else {
1145
- ajaxData.max_results = maxResult;
1146
- }
1147
-
1148
- if ( isNaN( radius ) ) {
1149
- ajaxData.radius = wpslSettings.searchRadius;
1150
- } else {
1151
- ajaxData.radius = radius;
1152
- }
1153
-
1154
- /*
1155
- * If category ids are set through the wpsl shortcode, then we always need to include them.
1156
- * Otherwise check if the category dropdown exist, and if so get the id.
1157
- */
1158
- if ( typeof wpslSettings.categoryIds !== "undefined" ) {
1159
- ajaxData.filter = wpslSettings.categoryIds;
1160
- } else if ( $( "#wpsl-category" ).length > 0 ) {
1161
- if ( isMobile ) {
1162
- categoryId = parseInt( $( "#wpsl-category .wpsl-dropdown" ).val() );
1163
- } else {
1164
- categoryId = parseInt( $( "#wpsl-category .wpsl-selected-item" ).attr( "data-value" ) );
1165
- }
1166
-
1167
- if ( ( !isNaN( categoryId ) && ( categoryId !== 0 ) ) ) {
1168
- ajaxData.filter = categoryId;
1169
- }
1170
- }
1171
-
1172
- /* @TODO: Look into adding support for extra user defined dropdowns?
1173
- *
1174
- * Create a check that will automatically include data from
1175
- * any additional dropdowns in the Ajax request.
1176
- */
1177
- }
1178
-
1179
- /*
1180
- * If the autoload option is enabled, then we need to check if the included latlng
1181
- * is based on a geolocation attempt before including the autoload param.
1182
- *
1183
- * Because if both the geolocation and autoload options are enabled,
1184
- * and the geolocation attempt was successfull, then we need to to include
1185
- * the skip_cache param.
1186
- *
1187
- * This makes sure the results don't come from an older transient based on the
1188
- * start location from the settings page, instead of the users actual location.
1189
- */
1190
- if ( autoLoad == 1 ) {
1191
- if ( typeof geolocationLatlng !== "undefined" ) {
1192
- ajaxData.skip_cache = 1;
1193
- } else {
1194
- ajaxData.autoload = 1;
1195
-
1196
- /*
1197
- * If the user set the 'category' attr on the wpsl shortcode, then include the cat ids
1198
- * to make sure only locations from the set categories are loaded on autoload.
1199
- */
1200
- if ( typeof wpslSettings.categoryIds !== "undefined" ) {
1201
- ajaxData.filter = wpslSettings.categoryIds;
1202
- }
1203
- }
1204
- }
1205
 
1206
  // Add the preloader.
1207
  $storeList.empty().append( "<li class='wpsl-preloader'><img src='" + preloader + "'/>" + wpslLabels.preloader + "</li>" );
@@ -1221,7 +1221,7 @@ function makeAjaxRequest( startLatLng, resetMap, autoLoad, infoWindow ) {
1221
  latLng = new google.maps.LatLng( response[index].lat, response[index].lng );
1222
  addMarker( latLng, response[index].id, response[index], draggable, infoWindow );
1223
 
1224
- // Create the html output with help from underscore js.
1225
  storeData = storeData + _.template( template )( response[index] );
1226
  });
1227
 
@@ -1243,14 +1243,18 @@ function makeAjaxRequest( startLatLng, resetMap, autoLoad, infoWindow ) {
1243
  // Do we need to create a marker cluster?
1244
  checkMarkerClusters();
1245
 
1246
- // Make sure everything fits on the screen.
1247
- fitBounds();
1248
-
1249
  $( "#wpsl-result-list p:empty" ).remove();
1250
  } else {
1251
- $storeList.html( "<li class='no-results'>" + wpslLabels.noResults + "</li>" );
 
 
 
 
1252
  }
1253
 
 
 
 
1254
  /*
1255
  * Store the default zoom and latlng values the first time
1256
  * all the stores are added to the map.
@@ -1291,12 +1295,171 @@ function makeAjaxRequest( startLatLng, resetMap, autoLoad, infoWindow ) {
1291
  }
1292
  }
1293
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1294
  /**
1295
  * Check if cluster markers are enabled.
1296
  * If so, init the marker clustering with the
1297
  * correct gridsize and max zoom.
1298
  *
1299
- * @since 1.2.20
1300
  * @return {void}
1301
  */
1302
  function checkMarkerClusters() {
@@ -1930,7 +2093,7 @@ $( "#wpsl-stores" ).on( "click", ".wpsl-store-details", function() {
1930
  });
1931
 
1932
  /**
1933
- * Create the dropdown filters.
1934
  *
1935
  * Inspired by https://github.com/patrickkunka/easydropdown
1936
  *
@@ -1938,6 +2101,7 @@ $( "#wpsl-stores" ).on( "click", ".wpsl-store-details", function() {
1938
  * @returns {void}
1939
  */
1940
  function createDropdowns() {
 
1941
 
1942
  $( ".wpsl-dropdown" ).each( function( index ) {
1943
  var active, maxHeight, $this = $( this );
@@ -1962,30 +2126,43 @@ function createDropdowns() {
1962
  $this.$dropdown.append( "<li data-value=" + $( this ).val() + " " + active + ">" + $( this ).text() + "</li>" );
1963
  });
1964
 
1965
-
1966
  $this.$dropdownElem.before( "<span data-value=" + $this.find( ":selected" ).val() + " class='wpsl-selected-item'>" + $this.find( ":selected" ).text() + "</span>" );
1967
  $this.$dropdownItem = $this.$dropdownElem.find( "li" );
1968
 
1969
  // Listen for clicks on the 'wpsl-dropdown' div.
1970
  $this.$dropdownWrap.on( "click", function( e ) {
1971
- closeDropdowns();
1972
-
 
 
 
 
 
 
 
 
1973
  $( this ).toggleClass( "wpsl-active" );
1974
  maxHeight = 0;
1975
-
1976
  // Either calculate the correct height for the <ul>, or set it to 0 to hide it.
1977
  if ( $( this ).hasClass( "wpsl-active" ) ) {
1978
  $this.$dropdownItem.each( function( index ) {
1979
  maxHeight += $( this ).outerHeight();
1980
  });
1981
-
1982
  $this.$dropdownElem.css( "height", maxHeight + 2 + "px" );
1983
  } else {
1984
  $this.$dropdownElem.css( "height", 0 );
1985
  }
1986
-
 
 
 
 
 
 
1987
  e.stopPropagation();
1988
- });
1989
 
1990
  // Listen for clicks on the individual dropdown items.
1991
  $this.$dropdownItem.on( "click", function( e ) {
@@ -1997,14 +2174,14 @@ function createDropdowns() {
1997
  $this.$dropdownItem.removeClass( "wpsl-selected-dropdown" );
1998
  $( this ).addClass( "wpsl-selected-dropdown" );
1999
 
2000
- closeDropdowns();
2001
 
2002
  e.stopPropagation();
2003
  });
2004
  });
2005
 
2006
  $( document ).click( function() {
2007
- closeDropdowns();
2008
  });
2009
  }
2010
 
@@ -2014,7 +2191,7 @@ function createDropdowns() {
2014
  * @since 1.2.24
2015
  * @returns {void}
2016
  */
2017
- function closeDropdowns() {
2018
  $( ".wpsl-dropdown" ).removeClass( "wpsl-active" );
2019
  $( ".wpsl-dropdown div" ).css( "height", 0 );
2020
  }
@@ -2039,7 +2216,8 @@ function closeDropdowns() {
2039
  */
2040
  if ( $( "a[href='#" + wpslSettings.mapTabAnchor + "']" ).length ) {
2041
  var mapZoom, mapCenter,
2042
- $wpsl_tab = $( "a[href='#" + wpslSettings.mapTabAnchor + "']" );
 
2043
 
2044
  $wpsl_tab.on( "click", function() {
2045
  setTimeout( function() {
@@ -2054,7 +2232,7 @@ if ( $( "a[href='#" + wpslSettings.mapTabAnchor + "']" ).length ) {
2054
  fitBounds();
2055
  }, 50 );
2056
 
2057
- return false;
2058
  });
2059
  }
2060
 
1
  jQuery( document ).ready( function( $ ) {
2
+ var geocoder, map, directionsDisplay, directionsService, geolocationLatlng, autoCompleteLatLng,
3
  activeWindowMarkerId, infoWindow, markerClusterer, startMarkerData, startAddress,
4
  openInfoWindow = [],
5
  markersArray = [],
97
  locationCount = mapData.length;
98
 
99
  // Loop over the map data, create the infowindow object and add each marker.
100
+ $.each( mapData, function( index ) {
101
  latLng = new google.maps.LatLng( mapData[index].lat, mapData[index].lng );
102
  addMarker( latLng, mapData[index].id, mapData[index], false, infoWindow );
103
  bounds.extend( latLng );
118
 
119
  // Only run this part if the store locator exist and we don't just have a basic map.
120
  if ( $( "#wpsl-gmap" ).length ) {
121
+
122
+ if ( wpslSettings.autoComplete == 1 ) {
123
+ activateAutocomplete();
124
+ }
125
+
126
  /*
127
  * Not the most optimal solution, but we check the useragent if we should enable the styled dropdowns.
128
  *
130
  * iOS and Android devices. So on mobile devices the dropdowns will be styled according
131
  * to the browser styles on that device.
132
  */
133
+ if ( !checkMobileUserAgent() && $( ".wpsl-dropdown" ).length && wpslSettings.enableStyledDropdowns == 1 ) {
134
  createDropdowns();
135
  } else {
136
+ $( "#wpsl-search-wrap select" ).show();
137
+
138
+ if ( checkMobileUserAgent() ) {
139
+ $( "#wpsl-wrap" ).addClass( "wpsl-mobile" );
140
+ } else {
141
+ $( "#wpsl-wrap" ).addClass( "wpsl-default-filters" );
142
+ }
143
  }
144
 
145
  // Check if we need to autolocate the user, or autoload the store locations.
170
  zoomChangedListener();
171
  }
172
 
173
+ /**
174
+ * Activate the autocomplete for the store search.
175
+ *
176
+ * @since 2.2.0
177
+ * @link https://developers.google.com/maps/documentation/javascript/places-autocomplete
178
+ * @returns {void}
179
+ */
180
+ function activateAutocomplete() {
181
+ var input, autocomplete, place,
182
+ options = {};
183
+
184
+ // Check if we need to set the geocode component restrictions.
185
+ if ( typeof wpslSettings.geocodeComponents !== "undefined" && !$.isEmptyObject( wpslSettings.geocodeComponents ) ) {
186
+ options.componentRestrictions = wpslSettings.geocodeComponents;
187
+ }
188
+
189
+ input = document.getElementById( "wpsl-search-input" );
190
+ autocomplete = new google.maps.places.Autocomplete( input, options );
191
+
192
+ autocomplete.addListener( "place_changed", function() {
193
+ place = autocomplete.getPlace();
194
+
195
+ /*
196
+ * Assign the returned latlng to the autoCompleteLatLng var.
197
+ * This var is used when the users submits the search.
198
+ */
199
+ if ( place.geometry ) {
200
+ autoCompleteLatLng = place.geometry.location;
201
+ }
202
+ });
203
+ }
204
+
205
  /**
206
  * Make sure that the 'Zoom here' link in the info window
207
  * doesn't zoom past the max auto zoom level.
284
  */
285
  if ( ( typeof firstLocation !== "undefined" && typeof firstLocation.lat !== "undefined" ) && ( typeof firstLocation.lng !== "undefined" ) ) {
286
  startLatLng = new google.maps.LatLng( firstLocation.lat, firstLocation.lng );
287
+ } else if ( wpslSettings.startLatlng !== "" ) {
288
+ latLng = wpslSettings.startLatlng.split( "," );
289
  startLatLng = new google.maps.LatLng( latLng[0], latLng[1] );
290
  } else {
291
  startLatLng = new google.maps.LatLng( 0,0 );
593
  * Handle clicks on the store locator search button.
594
  *
595
  * @since 1.0.0
596
+ * @todo disable button while AJAX request still runs.
597
  * @param {object} infoWindow The infoWindow object
598
  * @returns {void}
599
  */
610
  $( "#wpsl-stores" ).show();
611
  $( ".wpsl-direction-before, .wpsl-direction-after" ).remove();
612
  $( "#wpsl-direction-details" ).hide();
613
+
614
  resetMap = false;
615
 
616
  // Force the open InfoBox info window to close.
617
  closeInfoBoxWindow();
618
+
619
  deleteOverlays( keepStartMarker );
620
  deleteStartMarker();
621
+
622
+ /*
623
+ * Check if we need to geocode the user input,
624
+ * or if autocomplete is enabled and we already
625
+ * have the latlng values.
626
+ */
627
+ if ( wpslSettings.autoComplete == 1 && typeof autoCompleteLatLng !== "undefined" ) {
628
+ prepareStoreSearch( autoCompleteLatLng, infoWindow );
629
+ } else {
630
+ codeAddress( infoWindow );
631
+ }
632
  }
633
+
634
+ return false;
635
  });
636
  }
637
 
771
  * @returns {void}
772
  */
773
  function resetDropdowns() {
774
+ var i, arrayLength, dataValue, catText, $customDiv, $customFirstLi, customSelectedText, customSelectedData,
775
+ defaultFilters = $( "#wpsl-wrap" ).hasClass( "wpsl-default-filters" ),
776
+ defaultValues = [wpslSettings.searchRadius + ' ' + wpslSettings.distanceUnit, wpslSettings.maxResults],
777
+ dropdowns = ["wpsl-radius", "wpsl-results"];
778
+
779
  for ( i = 0, arrayLength = dropdowns.length; i < arrayLength; i++ ) {
780
  $( "#" + dropdowns[i] + " select" ).val( parseInt( defaultValues[i] ) );
781
  $( "#" + dropdowns[i] + " li" ).removeClass();
782
+
783
  if ( dropdowns[i] == "wpsl-radius" ) {
784
  dataValue = wpslSettings.searchRadius;
785
  } else if ( dropdowns[i] == "wpsl-results" ) {
789
  $( "#" + dropdowns[i] + " li" ).each( function() {
790
  if ( $( this ).text() === defaultValues[i] ) {
791
  $( this ).addClass( "wpsl-selected-dropdown" );
792
+
793
  $( "#" + dropdowns[i] + " .wpsl-selected-item" ).html( defaultValues[i] ).attr( "data-value", dataValue );
794
  }
795
  });
796
  }
797
+
798
  /**
799
+ * Reset the category dropdown.
800
  * @todo look for other way to do this in combination with above code. Maybe allow users to define a default cat on the settings page?
801
  */
802
  if ( $( "#wpsl-category" ).length ) {
803
  $( "#wpsl-category select" ).val( 0 );
804
  $( "#wpsl-category li" ).removeClass();
805
  $( "#wpsl-category li:first-child" ).addClass( "wpsl-selected-dropdown" );
806
+
807
+ catText = $( "#wpsl-category li:first-child" ).text();
808
+
809
  $( "#wpsl-category .wpsl-selected-item" ).html( catText ).attr( "data-value", 0 );
810
  }
811
+
812
+ // If any custom dropdowns exist, then we reset them as well.
813
+ if ( $( ".wpsl-custom-dropdown" ).length > 0 ) {
814
+ $( ".wpsl-custom-dropdown" ).each( function( index ) {
815
+
816
+ // Check if we are dealing with the styled dropdowns, or the default select dropdowns.
817
+ if ( !defaultFilters ) {
818
+ $customDiv = $( this ).siblings( "div" );
819
+ $customFirstLi = $customDiv.find( "li:first-child" );
820
+ customSelectedText = $customFirstLi.text();
821
+ customSelectedData = $customFirstLi.attr( "data-value" );
822
+
823
+ $customDiv.find( "li" ).removeClass();
824
+ $customDiv.prev().html( customSelectedText ).attr( "data-value", customSelectedData );
825
+ } else {
826
+ $( this ).find( "option" ).removeAttr( "selected" );
827
+ }
828
+ });
829
+ }
830
  }
831
 
832
  // Handle the click on the back button when the route directions are displayed.
1052
  * @returns {void}
1053
  */
1054
  function codeAddress( infoWindow ) {
1055
+ var latLng,
 
 
1056
  request = {
1057
  'address': $( "#wpsl-search-input" ).val()
1058
  };
1066
  if ( status == google.maps.GeocoderStatus.OK ) {
1067
  latLng = response[0].geometry.location;
1068
 
1069
+ prepareStoreSearch( latLng, infoWindow );
 
 
 
 
 
1070
  } else {
1071
  geocodeErrors( status );
1072
  }
1073
  });
1074
  }
1075
 
1076
+ /**
1077
+ * Prepare a new location search.
1078
+ *
1079
+ * @since 2.2.0
1080
+ * @param {object} latLng
1081
+ * @param {object} infoWindow The infoWindow object.
1082
+ * @returns {void}
1083
+ */
1084
+ function prepareStoreSearch( latLng, infoWindow ) {
1085
+ var autoLoad = false;
1086
+
1087
+ // Add a new start marker.
1088
+ addMarker( latLng, 0, '', true, infoWindow );
1089
+
1090
+ // Try to find stores that match the radius, location criteria.
1091
+ findStoreLocations( latLng, resetMap, autoLoad, infoWindow );
1092
+ }
1093
+
1094
  /**
1095
  * Geocode the user input and set the returned zipcode in the input field.
1096
  *
1183
  }
1184
 
1185
  /**
1186
+ * Make the AJAX request to load the store data.
1187
  *
1188
  * @since 1.2.0
1189
  * @param {object} startLatLng The latlng used as the starting point
1193
  * @returns {void}
1194
  */
1195
  function makeAjaxRequest( startLatLng, resetMap, autoLoad, infoWindow ) {
1196
+ var latLng, noResultsMsg,
1197
+ ajaxData = {},
1198
  storeData = "",
 
1199
  draggable = false,
 
1200
  template = $( "#wpsl-listing-template" ).html(),
1201
  $storeList = $( "#wpsl-stores ul" ),
1202
+ preloader = wpslSettings.url + "img/ajax-loader.gif";
1203
+
1204
+ ajaxData = collectAjaxData( startLatLng, resetMap, autoLoad );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1205
 
1206
  // Add the preloader.
1207
  $storeList.empty().append( "<li class='wpsl-preloader'><img src='" + preloader + "'/>" + wpslLabels.preloader + "</li>" );
1221
  latLng = new google.maps.LatLng( response[index].lat, response[index].lng );
1222
  addMarker( latLng, response[index].id, response[index], draggable, infoWindow );
1223
 
1224
+ // Create the HTML output with help from underscore js.
1225
  storeData = storeData + _.template( template )( response[index] );
1226
  });
1227
 
1243
  // Do we need to create a marker cluster?
1244
  checkMarkerClusters();
1245
 
 
 
 
1246
  $( "#wpsl-result-list p:empty" ).remove();
1247
  } else {
1248
+ addMarker( startLatLng, 0, '', true, infoWindow );
1249
+
1250
+ noResultsMsg = getNoResultsMsg();
1251
+
1252
+ $storeList.html( "<li class='no-results'>" + noResultsMsg + "</li>" );
1253
  }
1254
 
1255
+ // Make sure everything fits on the screen.
1256
+ fitBounds();
1257
+
1258
  /*
1259
  * Store the default zoom and latlng values the first time
1260
  * all the stores are added to the map.
1295
  }
1296
  }
1297
 
1298
+ /**
1299
+ * Collect the data we need to include in the AJAX request.
1300
+ *
1301
+ * @since 2.2.0
1302
+ * @param {object} startLatLng The latlng used as the starting point
1303
+ * @param {boolean} resetMap Whether we should reset the map or not
1304
+ * @param {string} autoLoad Check if we need to autoload all the stores
1305
+ * @returns {object} ajaxData The collected data.
1306
+ */
1307
+ function collectAjaxData( startLatLng, resetMap, autoLoad ) {
1308
+ var maxResult, radius, customName, customValue,
1309
+ categoryId = "",
1310
+ isMobile = $( "#wpsl-wrap" ).hasClass( "wpsl-mobile" ),
1311
+ defaultFilters = $( "#wpsl-wrap" ).hasClass( "wpsl-default-filters" ),
1312
+ ajaxData = {
1313
+ action: "store_search",
1314
+ lat: startLatLng.lat(),
1315
+ lng: startLatLng.lng()
1316
+ };
1317
+
1318
+ /*
1319
+ * If we reset the map we use the default dropdown values instead of the selected values.
1320
+ * Otherwise we first make sure the filter val is valid before including the radius / max_results param
1321
+ */
1322
+ if ( resetMap ) {
1323
+ ajaxData.max_results = wpslSettings.maxResults;
1324
+ ajaxData.radius = wpslSettings.searchRadius;
1325
+ } else {
1326
+ if ( isMobile || defaultFilters ) {
1327
+ maxResult = parseInt( $( "#wpsl-results .wpsl-dropdown" ).val() );
1328
+ radius = parseInt( $( "#wpsl-radius .wpsl-dropdown" ).val() );
1329
+ } else {
1330
+ maxResult = parseInt( $( "#wpsl-results .wpsl-selected-item" ).attr( "data-value" ) );
1331
+ radius = parseInt( $( "#wpsl-radius .wpsl-selected-item" ).attr( "data-value" ) );
1332
+ }
1333
+
1334
+ // If the max resuls or radius filter values are NaN, then we use the default value.
1335
+ if ( isNaN( maxResult ) ) {
1336
+ ajaxData.max_results = wpslSettings.maxResults;
1337
+ } else {
1338
+ ajaxData.max_results = maxResult;
1339
+ }
1340
+
1341
+ if ( isNaN( radius ) ) {
1342
+ ajaxData.radius = wpslSettings.searchRadius;
1343
+ } else {
1344
+ ajaxData.radius = radius;
1345
+ }
1346
+
1347
+ /*
1348
+ * If category ids are set through the wpsl shortcode, then we always need to include them.
1349
+ * Otherwise check if the category dropdown exist, or if the checkboxes are used.
1350
+ */
1351
+ if ( typeof wpslSettings.categoryIds !== "undefined" ) {
1352
+ ajaxData.filter = wpslSettings.categoryIds;
1353
+ } else if ( $( "#wpsl-category" ).length > 0 ) {
1354
+ if ( isMobile || defaultFilters ) {
1355
+ categoryId = parseInt( $( "#wpsl-category .wpsl-dropdown" ).val() );
1356
+ } else {
1357
+ categoryId = parseInt( $( "#wpsl-category .wpsl-selected-item" ).attr( "data-value" ) );
1358
+ }
1359
+
1360
+ if ( ( !isNaN( categoryId ) && ( categoryId !== 0 ) ) ) {
1361
+ ajaxData.filter = categoryId;
1362
+ }
1363
+ } else if ( $( "#wpsl-checkbox-filter" ).length > 0 ) {
1364
+ if ( $( "#wpsl-checkbox-filter input:checked" ).length > 0 ) {
1365
+ ajaxData.filter = getCheckboxIds();
1366
+ }
1367
+ }
1368
+
1369
+ // Include values from custom dropdowns.
1370
+ if ( $( ".wpsl-custom-dropdown" ).length > 0 ) {
1371
+ $( ".wpsl-custom-dropdown" ).each( function( index ) {
1372
+ customName = '';
1373
+ customValue = '';
1374
+
1375
+ if ( isMobile || defaultFilters ) {
1376
+ customName = $( this ).attr( "name" );
1377
+ customValue = $( this ).val();
1378
+ } else {
1379
+ customName = $( this ).attr( "name" );
1380
+ customValue = $( this ).next( ".wpsl-selected-item" ).attr( "data-value" );
1381
+ }
1382
+
1383
+ if ( customName && customValue ) {
1384
+ ajaxData[customName] = customValue;
1385
+ }
1386
+ });
1387
+ }
1388
+ }
1389
+
1390
+ /*
1391
+ * If the autoload option is enabled, then we need to check if the included latlng
1392
+ * is based on a geolocation attempt before including the autoload param.
1393
+ *
1394
+ * Because if both the geolocation and autoload options are enabled,
1395
+ * and the geolocation attempt was successfull, then we need to to include
1396
+ * the skip_cache param.
1397
+ *
1398
+ * This makes sure the results don't come from an older transient based on the
1399
+ * start location from the settings page, instead of the users actual location.
1400
+ */
1401
+ if ( autoLoad == 1 ) {
1402
+ if ( typeof geolocationLatlng !== "undefined" ) {
1403
+ ajaxData.skip_cache = 1;
1404
+ } else {
1405
+ ajaxData.autoload = 1;
1406
+
1407
+ /*
1408
+ * If the user set the 'category' attr on the wpsl shortcode, then include the cat ids
1409
+ * to make sure only locations from the set categories are loaded on autoload.
1410
+ */
1411
+ if ( typeof wpslSettings.categoryIds !== "undefined" ) {
1412
+ ajaxData.filter = wpslSettings.categoryIds;
1413
+ }
1414
+ }
1415
+ }
1416
+
1417
+ return ajaxData;
1418
+ }
1419
+
1420
+ /**
1421
+ * Check which no results msg we need to show.
1422
+ *
1423
+ * Either the default txt or a longer custom msg.
1424
+ *
1425
+ * @since 2.2.0
1426
+ * @return string noResults The no results msg to show.
1427
+ */
1428
+ function getNoResultsMsg() {
1429
+ var noResults;
1430
+
1431
+ if ( typeof wpslSettings.noResults !== "undefined" && wpslSettings.noResults !== "" ) {
1432
+ noResults = wpslSettings.noResults;
1433
+ } else {
1434
+ noResults = wpslLabels.noResults;
1435
+ }
1436
+
1437
+ return noResults;
1438
+ }
1439
+
1440
+ /**
1441
+ * Collect the ids of the checked checkboxes.
1442
+ *
1443
+ * @since 2.2.0
1444
+ * @return string catIds The cat ids from the checkboxes.
1445
+ */
1446
+ function getCheckboxIds() {
1447
+ var catIds = $( "#wpsl-checkbox-filter input:checked" ).map( function() {
1448
+ return $( this ).val();
1449
+ });
1450
+
1451
+ catIds = catIds.get();
1452
+ catIds = catIds.join(',');
1453
+
1454
+ return catIds;
1455
+ }
1456
+
1457
  /**
1458
  * Check if cluster markers are enabled.
1459
  * If so, init the marker clustering with the
1460
  * correct gridsize and max zoom.
1461
  *
1462
+ * @since 1.2.20
1463
  * @return {void}
1464
  */
1465
  function checkMarkerClusters() {
2093
  });
2094
 
2095
  /**
2096
+ * Create the styled dropdown filters.
2097
  *
2098
  * Inspired by https://github.com/patrickkunka/easydropdown
2099
  *
2101
  * @returns {void}
2102
  */
2103
  function createDropdowns() {
2104
+ var maxDropdownHeight = Number( wpslSettings.maxDropdownHeight );
2105
 
2106
  $( ".wpsl-dropdown" ).each( function( index ) {
2107
  var active, maxHeight, $this = $( this );
2126
  $this.$dropdown.append( "<li data-value=" + $( this ).val() + " " + active + ">" + $( this ).text() + "</li>" );
2127
  });
2128
 
 
2129
  $this.$dropdownElem.before( "<span data-value=" + $this.find( ":selected" ).val() + " class='wpsl-selected-item'>" + $this.find( ":selected" ).text() + "</span>" );
2130
  $this.$dropdownItem = $this.$dropdownElem.find( "li" );
2131
 
2132
  // Listen for clicks on the 'wpsl-dropdown' div.
2133
  $this.$dropdownWrap.on( "click", function( e ) {
2134
+
2135
+ // Check if we only need to close the current open dropdown.
2136
+ if ( $( this ).hasClass( "wpsl-active" ) ) {
2137
+ $( this ).removeClass( "wpsl-active" );
2138
+
2139
+ return;
2140
+ }
2141
+
2142
+ closeAllDropdowns();
2143
+
2144
  $( this ).toggleClass( "wpsl-active" );
2145
  maxHeight = 0;
2146
+
2147
  // Either calculate the correct height for the <ul>, or set it to 0 to hide it.
2148
  if ( $( this ).hasClass( "wpsl-active" ) ) {
2149
  $this.$dropdownItem.each( function( index ) {
2150
  maxHeight += $( this ).outerHeight();
2151
  });
2152
+
2153
  $this.$dropdownElem.css( "height", maxHeight + 2 + "px" );
2154
  } else {
2155
  $this.$dropdownElem.css( "height", 0 );
2156
  }
2157
+
2158
+ // Check if we need to enable the scrollbar in the dropdown filter.
2159
+ if ( maxHeight > maxDropdownHeight ) {
2160
+ $( this ).addClass( "wpsl-scroll-required" );
2161
+ $this.$dropdownElem.css( "height", ( maxDropdownHeight ) + "px" );
2162
+ }
2163
+
2164
  e.stopPropagation();
2165
+ });
2166
 
2167
  // Listen for clicks on the individual dropdown items.
2168
  $this.$dropdownItem.on( "click", function( e ) {
2174
  $this.$dropdownItem.removeClass( "wpsl-selected-dropdown" );
2175
  $( this ).addClass( "wpsl-selected-dropdown" );
2176
 
2177
+ closeAllDropdowns();
2178
 
2179
  e.stopPropagation();
2180
  });
2181
  });
2182
 
2183
  $( document ).click( function() {
2184
+ closeAllDropdowns();
2185
  });
2186
  }
2187
 
2191
  * @since 1.2.24
2192
  * @returns {void}
2193
  */
2194
+ function closeAllDropdowns() {
2195
  $( ".wpsl-dropdown" ).removeClass( "wpsl-active" );
2196
  $( ".wpsl-dropdown div" ).css( "height", 0 );
2197
  }
2216
  */
2217
  if ( $( "a[href='#" + wpslSettings.mapTabAnchor + "']" ).length ) {
2218
  var mapZoom, mapCenter,
2219
+ returnBool = Number( wpslSettings.mapTabAnchorReturn ) ? true : false,
2220
+ $wpsl_tab = $( "a[href='#" + wpslSettings.mapTabAnchor + "']" );
2221
 
2222
  $wpsl_tab.on( "click", function() {
2223
  setTimeout( function() {
2232
  fitBounds();
2233
  }, 50 );
2234
 
2235
+ return returnBool;
2236
  });
2237
  }
2238
 
js/wpsl-gmap.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){function t(t,n){var p,g,u,m,v,S,b,y=Number(wpslSettings.autoZoomLevel);g=o(n),u=i(),H=new google.maps.Geocoder,q=new google.maps.DirectionsRenderer,Y=new google.maps.DirectionsService,p={zoom:Number(g.zoomLevel),center:g.startLatLng,mapTypeId:google.maps.MapTypeId[g.mapType.toUpperCase()],mapTypeControl:Number(g.mapTypeControl)?!0:!1,scrollwheel:Number(g.scrollWheel)?!0:!1,streetViewControl:Number(g.streetView)?!0:!1,zoomControlOptions:{position:google.maps.ControlPosition[g.controlPosition.toUpperCase()+"_TOP"]}},le=a(),Q=new google.maps.Map(document.getElementById(t),p),l(Q),r(g.mapStyle),"undefined"!=typeof window["wpslMap_"+n]&&"undefined"!=typeof window["wpslMap_"+n].locations&&(v=new google.maps.LatLngBounds,S=window["wpslMap_"+n].locations,b=S.length,e.each(S,function(e){m=new google.maps.LatLng(S[e].lat,S[e].lng),O(m,S[e].id,S[e],!1,u),v.extend(m)}),Q.fitBounds(v),google.maps.event.addListenerOnce(Q,"bounds_changed",function(e){return function(){e.getZoom()>y&&e.setZoom(y)}}(Q))),e("#wpsl-gmap").length&&(!c()&&e(".wpsl-dropdown").length?j():(e("#wpsl-search-wrap select").show(),e("#wpsl-wrap").addClass("wpsl-mobile")),e(".wpsl-search").hasClass("wpsl-widget")||(1==wpslSettings.autoLocate?w(g.startLatLng,u):1==wpslSettings.autoLoad&&d(g.startLatLng,u)),1!=wpslSettings.mouseFocus||c()||e("#wpsl-search-input").focus(),f(u),h(g,Q,u),F()),s()}function s(){"undefined"!=typeof wpslSettings.markerZoomTo&&1==wpslSettings.markerZoomTo&&google.maps.event.addListener(Q,"zoom_changed",function(){Z()})}function o(e){var t,s,o,i=["zoomLevel","mapType","mapTypeControl","mapStyle","streetView","scrollWheel","controlPosition"],l={zoomLevel:wpslSettings.zoomLevel,mapType:wpslSettings.mapType,mapTypeControl:wpslSettings.mapTypeControl,mapStyle:wpslSettings.mapStyle,streetView:wpslSettings.streetView,scrollWheel:wpslSettings.scrollWheel,controlPosition:wpslSettings.controlPosition};if("undefined"!=typeof window["wpslMap_"+e]&&"undefined"!=typeof window["wpslMap_"+e].shortCode)for(t=0,s=i.length;s>t;t++)o=window["wpslMap_"+e].shortCode[i[t]],"undefined"!=typeof o&&(l[i[t]]=o);return l.startLatLng=n(e),l}function n(e){var t,s,o="";return"undefined"!=typeof window["wpslMap_"+e]&&"undefined"!=typeof window["wpslMap_"+e].locations&&(o=window["wpslMap_"+e].locations[0]),"undefined"!=typeof o&&"undefined"!=typeof o.lat&&"undefined"!=typeof o.lng?t=new google.maps.LatLng(o.lat,o.lng):""!==wpslSettings.zoomLatlng?(s=wpslSettings.zoomLatlng.split(","),t=new google.maps.LatLng(s[0],s[1])):t=new google.maps.LatLng(0,0),t}function i(){var e,t,s={};return"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle?(e=wpslSettings.infoBoxClearance.split(","),t=wpslSettings.infoBoxPixelOffset.split(","),s={alignBottom:!0,boxClass:wpslSettings.infoBoxClass,closeBoxMargin:wpslSettings.infoBoxCloseMargin,closeBoxURL:wpslSettings.infoBoxCloseUrl,content:"",disableAutoPan:Number(wpslSettings.infoBoxDisableAutoPan)?!0:!1,enableEventPropagation:Number(wpslSettings.infoBoxEnableEventPropagation)?!0:!1,infoBoxClearance:new google.maps.Size(Number(e[0]),Number(e[1])),pixelOffset:new google.maps.Size(Number(t[0]),Number(t[1])),zIndex:Number(wpslSettings.infoBoxZindex)},ee=new InfoBox(s)):ee=new google.maps.InfoWindow,ee}function l(t){var s=parseInt(wpslSettings.draggable.disableRes),o={draggable:Boolean(wpslSettings.draggable.enabled)};"NaN"!==s&&o.draggable&&(o.draggable=e(document).width()>s?!0:!1),t.setOptions(o)}function a(){var e,t=wpslSettings.markerIconProps,s={};"undefined"!=typeof t.url?s.url=t.url:s.url=wpslSettings.url+"img/markers/";for(var o in t)t.hasOwnProperty(o)&&(e=t[o].split(","),2==e.length&&(s[o]=e));return s}function r(e){e=p(e),e&&Q.setOptions({styles:e})}function p(e){try{var t=JSON.parse(e);if(t&&"object"==typeof t&&null!==t)return t}catch(s){}return!1}function d(e,t){O(e,0,"",!0,t),N(e,pe,ce,t)}function c(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)}function w(t,s){if(navigator.geolocation){var o,n,i=!1,l=Number(wpslSettings.geoLocationTimout);o=setInterval(function(){e(".wpsl-icon-direction").toggleClass("wpsl-active-icon")},600),n=setTimeout(function(){g(o),d(t,s)},l),navigator.geolocation.getCurrentPosition(function(e){g(o),clearTimeout(n),A(i),u(t,e,pe,s)},function(o){if(e(".wpsl-icon-direction").hasClass("wpsl-user-activated")){switch(o.code){case o.PERMISSION_DENIED:alert(wpslGeolocationErrors.denied);break;case o.POSITION_UNAVAILABLE:alert(wpslGeolocationErrors.unavailable);break;case o.TIMEOUT:alert(wpslGeolocationErrors.timeout);break;default:alert(wpslGeolocationErrors.generalError)}e(".wpsl-icon-direction").removeClass("wpsl-active-icon")}else clearTimeout(n),d(t,s)},{maximumAge:6e4,timeout:l,enableHighAccuracy:!0})}else alert(wpslGeolocationErrors.unavailable),d(t,s)}function g(t){clearInterval(t),e(".wpsl-icon-direction").removeClass("wpsl-active-icon")}function u(e,t,s,o){if("undefined"==typeof t)d(e,o);else{var n=new google.maps.LatLng(t.coords.latitude,t.coords.longitude);J=t,k(n),Q.setCenter(n),O(n,0,"",!0,o),N(n,s,ce,o)}}function f(t){e("#wpsl-search-btn").on("click",function(){var s=!1;e("#wpsl-search-input").removeClass(),e("#wpsl-search-input").val()?(e("#wpsl-result-list ul").empty(),e("#wpsl-stores").show(),e(".wpsl-direction-before, .wpsl-direction-after").remove(),e("#wpsl-direction-details").hide(),pe=!1,m(),A(s),S(),I(t)):e("#wpsl-search-input").addClass("wpsl-error").focus()})}function m(){"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle&&"undefined"!=typeof ne[0]&&ne[0].close()}function h(t,s,o){google.maps.event.addListenerOnce(s,"tilesloaded",function(){e(".gm-style").append(wpslSettings.mapControls),e(".wpsl-icon-reset, #wpsl-reset-map").length>0&&(v(t.startLatLng,o),e(".wpsl-icon-reset").hide()),e(".wpsl-icon-direction").on("click",function(){e(this).addClass("wpsl-user-activated"),w(t.startLatLng,o)})})}function v(t,s){e(".wpsl-icon-reset, #wpsl-reset-map").on("click",function(){var o=!1,n=!0;e(this).hasClass("wpsl-in-progress")||(1==wpslSettings.autoLoad&&(ce=1),(Q.getCenter().lat()!==re.centerLatlng.lat()||Q.getCenter().lng()!==re.centerLatlng.lng()||Q.getZoom()!==re.zoomLevel)&&(A(o),e("#wpsl-search-input").val("").removeClass(),e(".wpsl-icon-reset").addClass("wpsl-in-progress"),te&&te.clearMarkers(),S(),b(),1==wpslSettings.autoLocate?u(t,J,n,s):d(t,s)),e("#wpsl-stores").show(),e("#wpsl-direction-details").hide())})}function S(){"undefined"!=typeof se&&""!==se&&(se.setMap(null),se="")}function b(){var t,s,o,n,i=[wpslSettings.searchRadius+" "+wpslSettings.distanceUnit,wpslSettings.maxResults],l=["wpsl-radius","wpsl-results"];for(t=0,s=l.length;s>t;t++)e("#"+l[t]+" select").val(parseInt(i[t])),e("#"+l[t]+" li").removeClass(),"wpsl-radius"==l[t]?o=wpslSettings.searchRadius:"wpsl-results"==l[t]&&(o=wpslSettings.maxResults),e("#"+l[t]+" li").each(function(){e(this).text()===i[t]&&(e(this).addClass("wpsl-selected-dropdown"),e("#"+l[t]+" .wpsl-selected-item").html(i[t]).attr("data-value",o))});e("#wpsl-category").length&&(e("#wpsl-category select").val(0),e("#wpsl-category li").removeClass(),e("#wpsl-category li:first-child").addClass("wpsl-selected-dropdown"),n=e("#wpsl-category li:first-child").text(),e("#wpsl-category .wpsl-selected-item").html(n).attr("data-value",0))}function y(t){var s,o,n,i,l;for(m(),l=t.parents("li").length>0?t.parents("li").data("store-id"):t.parents(".wpsl-info-window").data("store-id"),"undefined"!=typeof se&&""!==se&&(o=se.getPosition()),ae={centerLatlng:Q.getCenter(),zoomLevel:Q.getZoom()},s=0,i=ie.length;i>s;s++)0!=ie[s].storeId||"undefined"!=typeof o&&""!==o?ie[s].storeId==l&&(n=ie[s].getPosition()):o=ie[s].getPosition();o&&n?(e("#wpsl-direction-details ul").empty(),e(".wpsl-direction-before, .wpsl-direction-after").remove(),C(o,n)):alert(wpslLabels.generalError)}function L(e,t){var s,o,n;for(s=0,o=ie.length;o>s;s++)ie[s].storeId==e&&(n=ie[s],"start"==t?n.setAnimation(google.maps.Animation.BOUNCE):n.setAnimation(null))}function C(t,s){var o,n,i,l,a,r,p,d,c,w="",g={};d="km"==wpslSettings.distanceUnit?"METRIC":"IMPERIAL",g={origin:t,destination:s,travelMode:google.maps.DirectionsTravelMode.DRIVING,unitSystem:google.maps.UnitSystem[d]},Y.route(g,function(t,s){if(s==google.maps.DirectionsStatus.OK){if(q.setMap(Q),q.setDirections(t),t.routes.length>0){for(a=t.routes[0],r=0;r<a.legs.length;r++)for(o=a.legs[r],p=0,n=o.steps.length;n>p;p++)i=o.steps[p],l=p+1,w=w+"<li><div class='wpsl-direction-index'>"+l+"</div><div class='wpsl-direction-txt'>"+i.instructions+"</div><div class='wpsl-direction-distance'>"+i.distance.text+"</div></li>";for(e("#wpsl-direction-details ul").append(w).before("<div class='wpsl-direction-before'><a class='wpsl-back' id='wpsl-direction-start' href='#'>"+wpslLabels.back+"</a><div><span class='wpsl-total-distance'>"+a.legs[0].distance.text+"</span> - <span class='wpsl-total-durations'>"+a.legs[0].duration.text+"</span></div></div>").after("<p class='wpsl-direction-after'>"+t.routes[0].copyrights+"</p>"),e("#wpsl-direction-details").show(),r=0,n=ie.length;n>r;r++)ie[r].setMap(null);te&&te.clearMarkers(),"undefined"!=typeof se&&""!==se&&se.setMap(null),e("#wpsl-stores").hide(),1==wpslSettings.templateId&&(c=e("#wpsl-gmap").offset(),e(window).scrollTop(c.top))}}else G(s)})}function I(t){var s,o=!1,n=!1,i={address:e("#wpsl-search-input").val()};"undefined"==typeof wpslSettings.geocodeComponents||e.isEmptyObject(wpslSettings.geocodeComponents)||(i.componentRestrictions=wpslSettings.geocodeComponents),H.geocode(i,function(e,i){i==google.maps.GeocoderStatus.OK?(s=e[0].geometry.location,A(n),O(s,0,"",!0,t),N(s,pe,o,t)):D(i)})}function k(t){var s;H.geocode({latLng:t},function(t,o){o==google.maps.GeocoderStatus.OK?(s=x(t),""!==s&&e("#wpsl-search-input").val(s)):D(o)})}function x(e){var t,s,o,n=e[0].address_components.length;for(o=0;n>o;o++)s=e[0].address_components[o].types,(/^postal_code$/.test(s)||/^postal_code_prefix,postal_code$/.test(s))&&(t=e[0].address_components[o].long_name);return t}function N(e,t,s,o){1==wpslSettings.directionRedirect?E(e,function(){M(e,t,s,o)}):M(e,t,s,o)}function E(e,t){H.geocode({latLng:e},function(e,s){s==google.maps.GeocoderStatus.OK?(oe=e[0].formatted_address,t()):D(s)})}function M(t,s,o,n){var i,l,a,r="",p="",d=!1,w=e("#wpsl-wrap").hasClass("wpsl-mobile"),g=e("#wpsl-listing-template").html(),u=e("#wpsl-stores ul"),f=wpslSettings.url+"img/ajax-loader.gif",m={action:"store_search",lat:t.lat(),lng:t.lng()};s?(m.max_results=wpslSettings.maxResults,m.radius=wpslSettings.searchRadius):(w?(l=parseInt(e("#wpsl-results .wpsl-dropdown").val()),a=parseInt(e("#wpsl-radius .wpsl-dropdown").val())):(l=parseInt(e("#wpsl-results .wpsl-selected-item").attr("data-value")),a=parseInt(e("#wpsl-radius .wpsl-selected-item").attr("data-value"))),isNaN(l)?m.max_results=wpslSettings.maxResults:m.max_results=l,isNaN(a)?m.radius=wpslSettings.searchRadius:m.radius=a,"undefined"!=typeof wpslSettings.categoryIds?m.filter=wpslSettings.categoryIds:e("#wpsl-category").length>0&&(p=w?parseInt(e("#wpsl-category .wpsl-dropdown").val()):parseInt(e("#wpsl-category .wpsl-selected-item").attr("data-value")),isNaN(p)||0===p||(m.filter=p))),1==o&&("undefined"!=typeof J?m.skip_cache=1:(m.autoload=1,"undefined"!=typeof wpslSettings.categoryIds&&(m.filter=wpslSettings.categoryIds))),u.empty().append("<li class='wpsl-preloader'><img src='"+f+"'/>"+wpslLabels.preloader+"</li>"),e.get(wpslSettings.ajaxurl,m,function(t){e(".wpsl-preloader, .no-results").remove(),t.length>0?(e.each(t,function(e){_.extend(t[e],he),i=new google.maps.LatLng(t[e].lat,t[e].lng),O(i,t[e].id,t[e],d,n),r+=_.template(g)(t[e])}),e("#wpsl-result-list").off("click",".wpsl-directions"),u.append(r),e("#wpsl-result-list").on("click",".wpsl-directions",function(){return 1!=wpslSettings.directionRedirect?(y(e(this)),!1):void 0}),P(),W(),e("#wpsl-result-list p:empty").remove()):u.html("<li class='no-results'>"+wpslLabels.noResults+"</li>"),1==wpslSettings.resetMap&&(e.isEmptyObject(re)&&google.maps.event.addListenerOnce(Q,"tilesloaded",function(){re={centerLatlng:Q.getCenter(),zoomLevel:Q.getZoom()},e("#wpsl-map-controls").addClass("wpsl-reset-exists"),e(".wpsl-icon-reset, #wpsl-reset-map").show()}),e(".wpsl-icon-reset").removeClass("wpsl-in-progress"))}),1!=wpslSettings.mouseFocus||c()||e("#wpsl-search-input").focus()}function P(){if(1==wpslSettings.markerClusters){var e=Number(wpslSettings.clusterZoom),t=Number(wpslSettings.clusterSize);isNaN(e)&&(e=""),isNaN(t)&&(t=""),te=new MarkerClusterer(Q,ie,{gridSize:t,maxZoom:e})}}function O(e,t,s,o,n){var i,l,a,r=!0;0===t?(s={store:wpslLabels.startPoint},i=le.url+wpslSettings.startMarker):i=le.url+wpslSettings.storeMarker,l={url:i,scaledSize:new google.maps.Size(Number(le.scaledSize[0]),Number(le.scaledSize[1])),origin:new google.maps.Point(Number(le.origin[0]),Number(le.origin[1])),anchor:new google.maps.Point(Number(le.anchor[0]),Number(le.anchor[1]))},a=new google.maps.Marker({position:e,map:Q,optimized:!1,title:R(s.store),draggable:o,storeId:t,icon:l}),ie.push(a),google.maps.event.addListener(a,"click",function(o){return function(){0!=t?"undefined"!=typeof wpslSettings.markerStreetView&&1==wpslSettings.markerStreetView?$(e,function(){T(a,U(s),n,o)}):T(a,U(s),n,o):T(a,wpslLabels.startPoint,n,o),google.maps.event.clearListeners(n,"domready"),google.maps.event.addListener(n,"domready",function(){z(a,o),Z()})}}(Q)),o&&google.maps.event.addListener(a,"dragend",function(e){A(r),Q.setCenter(e.latLng),k(e.latLng),N(e.latLng,pe,ce=!1,n)})}function R(e){return e?e.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(t)}):void 0}function T(e,t,s,o){ne.length=0,s.setContent(t),s.open(o,e),ne.push(s),"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle&&1==wpslSettings.markerClusters&&(X=e.storeId,s.setVisible(!0))}function z(t,s){e(".wpsl-info-actions a").on("click",function(o){var n=Number(wpslSettings.autoZoomLevel);if(o.stopImmediatePropagation(),e(this).hasClass("wpsl-directions")){if(1==wpslSettings.directionRedirect)return!0;y(e(this))}else e(this).hasClass("wpsl-streetview")?B(t,s):e(this).hasClass("wpsl-zoom-here")&&(s.setCenter(t.getPosition()),s.setZoom(n));return!1})}function Z(){var t=Q.getZoom();t>=wpslSettings.autoZoomLevel?e(".wpsl-zoom-here").hide():e(".wpsl-zoom-here").show()}function B(t,s){var o=s.getStreetView();o.setPosition(t.getPosition()),o.setVisible(!0),e("#wpsl-map-controls").hide(),V(o,s)}function V(t,s){google.maps.event.addListener(t,"visible_changed",function(){if(!t.getVisible()){var o=s.getZoom();e("#wpsl-map-controls").show(),s.setZoom(o-1),s.setZoom(o)}})}function $(e,t){var s=new google.maps.StreetViewService;s.getPanoramaByLocation(e,50,function(e,s){de=s==google.maps.StreetViewStatus.OK?!0:!1,t()})}function U(t){var s,o;return o=e("#wpsl-base-gmap_0").length?e("#wpsl-cpt-info-window-template").html():e("#wpsl-info-window-template").html(),s=_.template(o)(t)}function W(){var e,t,s=Number(wpslSettings.autoZoomLevel),o=new google.maps.LatLngBounds;for(google.maps.event.addListenerOnce(Q,"bounds_changed",function(e){this.getZoom()>s&&this.setZoom(s)}),e=0,t=ie.length;t>e;e++)o.extend(ie[e].position);Q.fitBounds(o)}function A(e){var t,s;if(q.setMap(null),ie){for(s=0,t=ie.length;t>s;s++)e?1!=ie[s].draggable?ie[s].setMap(null):se=ie[s]:ie[s].setMap(null);ie.length=0}te&&te.clearMarkers()}function D(e){var t;switch(e){case"ZERO_RESULTS":t=wpslLabels.noResults;break;case"OVER_QUERY_LIMIT":t=wpslLabels.queryLimit;break;default:t=wpslLabels.generalError}alert(t)}function G(e){var t;switch(e){case"NOT_FOUND":case"ZERO_RESULTS":t=wpslLabels.noDirectionsFound;break;case"OVER_QUERY_LIMIT":t=wpslLabels.queryLimit;break;default:t=wpslLabels.generalError}alert(t)}function j(){e(".wpsl-dropdown").each(function(t){var s,o,n=e(this);n.$dropdownWrap=n.wrap("<div class='wpsl-dropdown'></div>").parent(),n.$selectedVal=n.val(),n.$dropdownElem=e("<div><ul/></div>").appendTo(n.$dropdownWrap),n.$dropdown=n.$dropdownElem.find("ul"),n.$options=n.$dropdownWrap.find("option"),n.hide().removeClass("wpsl-dropdown"),e.each(n.$options,function(){s=e(this).val()==n.$selectedVal?'class="wpsl-selected-dropdown"':"",n.$dropdown.append("<li data-value="+e(this).val()+" "+s+">"+e(this).text()+"</li>")}),n.$dropdownElem.before("<span data-value="+n.find(":selected").val()+" class='wpsl-selected-item'>"+n.find(":selected").text()+"</span>"),n.$dropdownItem=n.$dropdownElem.find("li"),n.$dropdownWrap.on("click",function(t){K(),e(this).toggleClass("wpsl-active"),o=0,e(this).hasClass("wpsl-active")?(n.$dropdownItem.each(function(t){o+=e(this).outerHeight()}),n.$dropdownElem.css("height",o+2+"px")):n.$dropdownElem.css("height",0),t.stopPropagation()}),n.$dropdownItem.on("click",function(t){n.$dropdownWrap.find(e(".wpsl-selected-item")).html(e(this).text()).attr("data-value",e(this).attr("data-value")),n.$dropdownItem.removeClass("wpsl-selected-dropdown"),e(this).addClass("wpsl-selected-dropdown"),K(),t.stopPropagation()})}),e(document).click(function(){K()})}function K(){e(".wpsl-dropdown").removeClass("wpsl-active"),e(".wpsl-dropdown div").css("height",0)}function F(){e(".wpsl-search").hasClass("wpsl-widget")&&(e("#wpsl-search-btn").trigger("click"),e(".wpsl-search").removeClass("wpsl-widget"))}var H,Q,q,Y,J,X,ee,te,se,oe,ne=[],ie=[],le={},ae={},re={},pe=!1,de=!1,ce="undefined"!=typeof wpslSettings?wpslSettings.autoLoad:"";if(_.templateSettings={evaluate:/\<\%(.+?)\%\>/g,interpolate:/\<\%=(.+?)\%\>/g,escape:/\<\%-(.+?)\%\>/g},e(".wpsl-gmap-canvas").length&&(e("<img />").attr("src",wpslSettings.url+"img/ajax-loader.gif"),e(".wpsl-gmap-canvas").each(function(s){var o=e(this).attr("id");t(o,s)})),e("#wpsl-result-list").on("click",".wpsl-back",function(){var t,s;for(q.setMap(null),t=0,s=ie.length;s>t;t++)ie[t].setMap(Q);return"undefined"!=typeof se&&""!==se&&se.setMap(Q),te&&P(),Q.setCenter(ae.centerLatlng),Q.setZoom(ae.zoomLevel),e(".wpsl-direction-before, .wpsl-direction-after").remove(),e("#wpsl-stores").show(),e("#wpsl-direction-details").hide(),!1}),e("#wpsl-gmap").length&&("bounce"==wpslSettings.markerEffect?(e("#wpsl-stores").on("mouseenter","li",function(){L(e(this).data("store-id"),"start")}),e("#wpsl-stores").on("mouseleave","li",function(){L(e(this).data("store-id"),"stop")})):"info_window"==wpslSettings.markerEffect&&e("#wpsl-stores").on("mouseenter","li",function(){var t,s;for(t=0,s=ie.length;s>t;t++)ie[t].storeId==e(this).data("store-id")&&(google.maps.event.trigger(ie[t],"click"),Q.setCenter(ie[t].position))})),"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle&&1==wpslSettings.markerClusters){var we,ge,ue,fe,me;google.maps.event.addListener(Q,"zoom_changed",function(){google.maps.event.addListenerOnce(Q,"idle",function(){if("undefined"!=typeof te&&(we=te.clusters_,we.length))for(fe=0,ge=we.length;ge>fe;fe++)for(me=0,ue=we[fe].markers_.length;ue>me;me++)if(we[fe].markers_[me].storeId==X){ee.getVisible()&&null===we[fe].markers_[me].map?ee.setVisible(!1):ee.getVisible()||null===we[fe].markers_[me].map||ee.setVisible(!0);break}})})}var he={formatPhoneNumber:function(e){return 1==wpslSettings.phoneUrl&&c()&&(e="<a href='tel:"+he.formatClickablePhoneNumber(e)+"'>"+e+"</a>"),e},formatClickablePhoneNumber:function(e){return-1!=e.indexOf("+")&&-1!=e.indexOf("(0)")&&(e=e.replace("(0)","")),e.replace(/(-| |\(|\)|\.|)/g,"")},createInfoWindowActions:function(t){var s,o="",n="";return e("#wpsl-gmap").length&&(de&&(o="<a class='wpsl-streetview' href='#'>"+wpslLabels.streetView+"</a>"),1==wpslSettings.markerZoomTo&&(n="<a class='wpsl-zoom-here' href='#'>"+wpslLabels.zoomHere+"</a>"),s="<div class='wpsl-info-actions'>"+he.createDirectionUrl(t)+o+n+"</div>"),s},createDirectionUrl:function(t){var s,o,n,i={};return 1==wpslSettings.directionRedirect?("undefined"==typeof oe&&(oe=""),i.target="target='_blank'","undefined"!=typeof t?i.src=e("[data-store-id="+t+"] .wpsl-directions").attr("href"):(n=this.zip?this.zip+", ":"",o=this.address+", "+this.city+", "+n+this.country,i.src="https://maps.google.com/maps?saddr="+he.rfc3986EncodeURIComponent(oe)+"&daddr="+he.rfc3986EncodeURIComponent(o))):i={src:"#",target:""},s="<a class='wpsl-directions' "+i.target+" href='"+i.src+"'>"+wpslLabels.directions+"</a>"},rfc3986EncodeURIComponent:function(e){return encodeURIComponent(e).replace(/[!'()*]/g,escape)}};if(e("#wpsl-search-input").keydown(function(t){var s=t.keyCode||t.which;13==s&&e("#wpsl-search-btn").trigger("click")}),e("#wpsl-stores").on("click",".wpsl-store-details",function(){var t,s,o=e(this).parents("li"),n=o.data("store-id");if("info window"==wpslSettings.moreInfoLocation)for(t=0,s=ie.length;s>t;t++)ie[t].storeId==n&&google.maps.event.trigger(ie[t],"click");else o.find(".wpsl-more-info-listings").is(":visible")?e(this).removeClass("wpsl-active-details"):e(this).addClass("wpsl-active-details"),o.siblings().find(".wpsl-store-details").removeClass("wpsl-active-details"),o.siblings().find(".wpsl-more-info-listings").hide(),o.find(".wpsl-more-info-listings").toggle();return"default"!=wpslSettings.templateId||"store listings"==wpslSettings.moreInfoLocation?!1:void 0}),e("a[href='#"+wpslSettings.mapTabAnchor+"']").length){var ve,Se,be=e("a[href='#"+wpslSettings.mapTabAnchor+"']");be.on("click",function(){return setTimeout(function(){ve=Q.getZoom(),Se=Q.getCenter(),google.maps.event.trigger(Q,"resize"),Q.setZoom(ve),Q.setCenter(Se),W()},50),!1})}});
1
+ jQuery(document).ready(function(e){function t(t,l){var d,u,f,h,S,b,y,L=Number(wpslSettings.autoZoomLevel);u=n(l),f=i(),X=new google.maps.Geocoder,te=new google.maps.DirectionsRenderer,se=new google.maps.DirectionsService,d={zoom:Number(u.zoomLevel),center:u.startLatLng,mapTypeId:google.maps.MapTypeId[u.mapType.toUpperCase()],mapTypeControl:Number(u.mapTypeControl)?!0:!1,scrollwheel:Number(u.scrollWheel)?!0:!1,streetViewControl:Number(u.streetView)?!0:!1,zoomControlOptions:{position:google.maps.ControlPosition[u.controlPosition.toUpperCase()+"_TOP"]}},we=r(),ee=new google.maps.Map(document.getElementById(t),d),a(ee),p(u.mapStyle),"undefined"!=typeof window["wpslMap_"+l]&&"undefined"!=typeof window["wpslMap_"+l].locations&&(S=new google.maps.LatLngBounds,b=window["wpslMap_"+l].locations,y=b.length,e.each(b,function(e){h=new google.maps.LatLng(b[e].lat,b[e].lng),B(h,b[e].id,b[e],!1,f),S.extend(h)}),ee.fitBounds(S),google.maps.event.addListenerOnce(ee,"bounds_changed",function(e){return function(){e.getZoom()>L&&e.setZoom(L)}}(ee))),e("#wpsl-gmap").length&&(1==wpslSettings.autoComplete&&s(),!w()&&e(".wpsl-dropdown").length&&1==wpslSettings.enableStyledDropdowns?Q():(e("#wpsl-search-wrap select").show(),w()?e("#wpsl-wrap").addClass("wpsl-mobile"):e("#wpsl-wrap").addClass("wpsl-default-filters")),e(".wpsl-search").hasClass("wpsl-widget")||(1==wpslSettings.autoLocate?g(u.startLatLng,f):1==wpslSettings.autoLoad&&c(u.startLatLng,f)),1!=wpslSettings.mouseFocus||w()||e("#wpsl-search-input").focus(),m(f),v(u,ee,f),J()),o()}function s(){var t,s,o,n={};"undefined"==typeof wpslSettings.geocodeComponents||e.isEmptyObject(wpslSettings.geocodeComponents)||(n.componentRestrictions=wpslSettings.geocodeComponents),t=document.getElementById("wpsl-search-input"),s=new google.maps.places.Autocomplete(t,n),s.addListener("place_changed",function(){o=s.getPlace(),o.geometry&&(ne=o.geometry.location)})}function o(){"undefined"!=typeof wpslSettings.markerZoomTo&&1==wpslSettings.markerZoomTo&&google.maps.event.addListener(ee,"zoom_changed",function(){A()})}function n(e){var t,s,o,n=["zoomLevel","mapType","mapTypeControl","mapStyle","streetView","scrollWheel","controlPosition"],i={zoomLevel:wpslSettings.zoomLevel,mapType:wpslSettings.mapType,mapTypeControl:wpslSettings.mapTypeControl,mapStyle:wpslSettings.mapStyle,streetView:wpslSettings.streetView,scrollWheel:wpslSettings.scrollWheel,controlPosition:wpslSettings.controlPosition};if("undefined"!=typeof window["wpslMap_"+e]&&"undefined"!=typeof window["wpslMap_"+e].shortCode)for(t=0,s=n.length;s>t;t++)o=window["wpslMap_"+e].shortCode[n[t]],"undefined"!=typeof o&&(i[n[t]]=o);return i.startLatLng=l(e),i}function l(e){var t,s,o="";return"undefined"!=typeof window["wpslMap_"+e]&&"undefined"!=typeof window["wpslMap_"+e].locations&&(o=window["wpslMap_"+e].locations[0]),"undefined"!=typeof o&&"undefined"!=typeof o.lat&&"undefined"!=typeof o.lng?t=new google.maps.LatLng(o.lat,o.lng):""!==wpslSettings.startLatlng?(s=wpslSettings.startLatlng.split(","),t=new google.maps.LatLng(s[0],s[1])):t=new google.maps.LatLng(0,0),t}function i(){var e,t,s={};return"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle?(e=wpslSettings.infoBoxClearance.split(","),t=wpslSettings.infoBoxPixelOffset.split(","),s={alignBottom:!0,boxClass:wpslSettings.infoBoxClass,closeBoxMargin:wpslSettings.infoBoxCloseMargin,closeBoxURL:wpslSettings.infoBoxCloseUrl,content:"",disableAutoPan:Number(wpslSettings.infoBoxDisableAutoPan)?!0:!1,enableEventPropagation:Number(wpslSettings.infoBoxEnableEventPropagation)?!0:!1,infoBoxClearance:new google.maps.Size(Number(e[0]),Number(e[1])),pixelOffset:new google.maps.Size(Number(t[0]),Number(t[1])),zIndex:Number(wpslSettings.infoBoxZindex)},ie=new InfoBox(s)):ie=new google.maps.InfoWindow,ie}function a(t){var s=parseInt(wpslSettings.draggable.disableRes),o={draggable:Boolean(wpslSettings.draggable.enabled)};"NaN"!==s&&o.draggable&&(o.draggable=e(document).width()>s?!0:!1),t.setOptions(o)}function r(){var e,t=wpslSettings.markerIconProps,s={};"undefined"!=typeof t.url?s.url=t.url:s.url=wpslSettings.url+"img/markers/";for(var o in t)t.hasOwnProperty(o)&&(e=t[o].split(","),2==e.length&&(s[o]=e));return s}function p(e){e=d(e),e&&ee.setOptions({styles:e})}function d(e){try{var t=JSON.parse(e);if(t&&"object"==typeof t&&null!==t)return t}catch(s){}return!1}function c(e,t){B(e,0,"",!0,t),M(e,fe,he,t)}function w(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)}function g(t,s){if(navigator.geolocation){var o,n,l=!1,i=Number(wpslSettings.geoLocationTimout);o=setInterval(function(){e(".wpsl-icon-direction").toggleClass("wpsl-active-icon")},600),n=setTimeout(function(){u(o),c(t,s)},i),navigator.geolocation.getCurrentPosition(function(e){u(o),clearTimeout(n),F(l),f(t,e,fe,s)},function(o){if(e(".wpsl-icon-direction").hasClass("wpsl-user-activated")){switch(o.code){case o.PERMISSION_DENIED:alert(wpslGeolocationErrors.denied);break;case o.POSITION_UNAVAILABLE:alert(wpslGeolocationErrors.unavailable);break;case o.TIMEOUT:alert(wpslGeolocationErrors.timeout);break;default:alert(wpslGeolocationErrors.generalError)}e(".wpsl-icon-direction").removeClass("wpsl-active-icon")}else clearTimeout(n),c(t,s)},{maximumAge:6e4,timeout:i,enableHighAccuracy:!0})}else alert(wpslGeolocationErrors.unavailable),c(t,s)}function u(t){clearInterval(t),e(".wpsl-icon-direction").removeClass("wpsl-active-icon")}function f(e,t,s,o){if("undefined"==typeof t)c(e,o);else{var n=new google.maps.LatLng(t.coords.latitude,t.coords.longitude);oe=t,N(n),ee.setCenter(n),B(n,0,"",!0,o),M(n,s,he,o)}}function m(t){e("#wpsl-search-btn").on("click",function(){var s=!1;return e("#wpsl-search-input").removeClass(),e("#wpsl-search-input").val()?(e("#wpsl-result-list ul").empty(),e("#wpsl-stores").show(),e(".wpsl-direction-before, .wpsl-direction-after").remove(),e("#wpsl-direction-details").hide(),fe=!1,h(),F(s),b(),1==wpslSettings.autoComplete&&"undefined"!=typeof ne?x(ne,t):I(t)):e("#wpsl-search-input").addClass("wpsl-error").focus(),!1})}function h(){"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle&&"undefined"!=typeof de[0]&&de[0].close()}function v(t,s,o){google.maps.event.addListenerOnce(s,"tilesloaded",function(){e(".gm-style").append(wpslSettings.mapControls),e(".wpsl-icon-reset, #wpsl-reset-map").length>0&&(S(t.startLatLng,o),e(".wpsl-icon-reset").hide()),e(".wpsl-icon-direction").on("click",function(){e(this).addClass("wpsl-user-activated"),g(t.startLatLng,o)})})}function S(t,s){e(".wpsl-icon-reset, #wpsl-reset-map").on("click",function(){var o=!1,n=!0;e(this).hasClass("wpsl-in-progress")||(1==wpslSettings.autoLoad&&(he=1),(ee.getCenter().lat()!==ue.centerLatlng.lat()||ee.getCenter().lng()!==ue.centerLatlng.lng()||ee.getZoom()!==ue.zoomLevel)&&(F(o),e("#wpsl-search-input").val("").removeClass(),e(".wpsl-icon-reset").addClass("wpsl-in-progress"),ae&&ae.clearMarkers(),b(),y(),1==wpslSettings.autoLocate?f(t,oe,n,s):c(t,s)),e("#wpsl-stores").show(),e("#wpsl-direction-details").hide())})}function b(){"undefined"!=typeof re&&""!==re&&(re.setMap(null),re="")}function y(){var t,s,o,n,l,i,a,r,p=e("#wpsl-wrap").hasClass("wpsl-default-filters"),d=[wpslSettings.searchRadius+" "+wpslSettings.distanceUnit,wpslSettings.maxResults],c=["wpsl-radius","wpsl-results"];for(t=0,s=c.length;s>t;t++)e("#"+c[t]+" select").val(parseInt(d[t])),e("#"+c[t]+" li").removeClass(),"wpsl-radius"==c[t]?o=wpslSettings.searchRadius:"wpsl-results"==c[t]&&(o=wpslSettings.maxResults),e("#"+c[t]+" li").each(function(){e(this).text()===d[t]&&(e(this).addClass("wpsl-selected-dropdown"),e("#"+c[t]+" .wpsl-selected-item").html(d[t]).attr("data-value",o))});e("#wpsl-category").length&&(e("#wpsl-category select").val(0),e("#wpsl-category li").removeClass(),e("#wpsl-category li:first-child").addClass("wpsl-selected-dropdown"),n=e("#wpsl-category li:first-child").text(),e("#wpsl-category .wpsl-selected-item").html(n).attr("data-value",0)),e(".wpsl-custom-dropdown").length>0&&e(".wpsl-custom-dropdown").each(function(t){p?e(this).find("option").removeAttr("selected"):(l=e(this).siblings("div"),i=l.find("li:first-child"),a=i.text(),r=i.attr("data-value"),l.find("li").removeClass(),l.prev().html(a).attr("data-value",r))})}function L(t){var s,o,n,l,i;for(h(),i=t.parents("li").length>0?t.parents("li").data("store-id"):t.parents(".wpsl-info-window").data("store-id"),"undefined"!=typeof re&&""!==re&&(o=re.getPosition()),ge={centerLatlng:ee.getCenter(),zoomLevel:ee.getZoom()},s=0,l=ce.length;l>s;s++)0!=ce[s].storeId||"undefined"!=typeof o&&""!==o?ce[s].storeId==i&&(n=ce[s].getPosition()):o=ce[s].getPosition();o&&n?(e("#wpsl-direction-details ul").empty(),e(".wpsl-direction-before, .wpsl-direction-after").remove(),k(o,n)):alert(wpslLabels.generalError)}function C(e,t){var s,o,n;for(s=0,o=ce.length;o>s;s++)ce[s].storeId==e&&(n=ce[s],"start"==t?n.setAnimation(google.maps.Animation.BOUNCE):n.setAnimation(null))}function k(t,s){var o,n,l,i,a,r,p,d,c,w="",g={};d="km"==wpslSettings.distanceUnit?"METRIC":"IMPERIAL",g={origin:t,destination:s,travelMode:google.maps.DirectionsTravelMode.DRIVING,unitSystem:google.maps.UnitSystem[d]},se.route(g,function(t,s){if(s==google.maps.DirectionsStatus.OK){if(te.setMap(ee),te.setDirections(t),t.routes.length>0){for(a=t.routes[0],r=0;r<a.legs.length;r++)for(o=a.legs[r],p=0,n=o.steps.length;n>p;p++)l=o.steps[p],i=p+1,w=w+"<li><div class='wpsl-direction-index'>"+i+"</div><div class='wpsl-direction-txt'>"+l.instructions+"</div><div class='wpsl-direction-distance'>"+l.distance.text+"</div></li>";for(e("#wpsl-direction-details ul").append(w).before("<div class='wpsl-direction-before'><a class='wpsl-back' id='wpsl-direction-start' href='#'>"+wpslLabels.back+"</a><div><span class='wpsl-total-distance'>"+a.legs[0].distance.text+"</span> - <span class='wpsl-total-durations'>"+a.legs[0].duration.text+"</span></div></div>").after("<p class='wpsl-direction-after'>"+t.routes[0].copyrights+"</p>"),e("#wpsl-direction-details").show(),r=0,n=ce.length;n>r;r++)ce[r].setMap(null);ae&&ae.clearMarkers(),"undefined"!=typeof re&&""!==re&&re.setMap(null),e("#wpsl-stores").hide(),1==wpslSettings.templateId&&(c=e("#wpsl-gmap").offset(),e(window).scrollTop(c.top))}}else q(s)})}function I(t){var s,o={address:e("#wpsl-search-input").val()};"undefined"==typeof wpslSettings.geocodeComponents||e.isEmptyObject(wpslSettings.geocodeComponents)||(o.componentRestrictions=wpslSettings.geocodeComponents),X.geocode(o,function(e,o){o==google.maps.GeocoderStatus.OK?(s=e[0].geometry.location,x(s,t)):H(o)})}function x(e,t){var s=!1;B(e,0,"",!0,t),M(e,fe,s,t)}function N(t){var s;X.geocode({latLng:t},function(t,o){o==google.maps.GeocoderStatus.OK?(s=E(t),""!==s&&e("#wpsl-search-input").val(s)):H(o)})}function E(e){var t,s,o,n=e[0].address_components.length;for(o=0;n>o;o++)s=e[0].address_components[o].types,(/^postal_code$/.test(s)||/^postal_code_prefix,postal_code$/.test(s))&&(t=e[0].address_components[o].long_name);return t}function M(e,t,s,o){1==wpslSettings.directionRedirect?R(e,function(){P(e,t,s,o)}):P(e,t,s,o)}function R(e,t){X.geocode({latLng:e},function(e,s){s==google.maps.GeocoderStatus.OK?(pe=e[0].formatted_address,t()):H(s)})}function P(t,s,o,n){var l,i,a={},r="",p=!1,d=e("#wpsl-listing-template").html(),c=e("#wpsl-stores ul"),g=wpslSettings.url+"img/ajax-loader.gif";a=O(t,s,o),c.empty().append("<li class='wpsl-preloader'><img src='"+g+"'/>"+wpslLabels.preloader+"</li>"),e.get(wpslSettings.ajaxurl,a,function(s){e(".wpsl-preloader, .no-results").remove(),s.length>0?(e.each(s,function(e){_.extend(s[e],Ce),l=new google.maps.LatLng(s[e].lat,s[e].lng),B(l,s[e].id,s[e],p,n),r+=_.template(d)(s[e])}),e("#wpsl-result-list").off("click",".wpsl-directions"),c.append(r),e("#wpsl-result-list").on("click",".wpsl-directions",function(){return 1!=wpslSettings.directionRedirect?(L(e(this)),!1):void 0}),Z(),e("#wpsl-result-list p:empty").remove()):(B(t,0,"",!0,n),i=T(),c.html("<li class='no-results'>"+i+"</li>")),K(),1==wpslSettings.resetMap&&(e.isEmptyObject(ue)&&google.maps.event.addListenerOnce(ee,"tilesloaded",function(){ue={centerLatlng:ee.getCenter(),zoomLevel:ee.getZoom()},e("#wpsl-map-controls").addClass("wpsl-reset-exists"),e(".wpsl-icon-reset, #wpsl-reset-map").show()}),e(".wpsl-icon-reset").removeClass("wpsl-in-progress"))}),1!=wpslSettings.mouseFocus||w()||e("#wpsl-search-input").focus()}function O(t,s,o){var n,l,i,a,r="",p=e("#wpsl-wrap").hasClass("wpsl-mobile"),d=e("#wpsl-wrap").hasClass("wpsl-default-filters"),c={action:"store_search",lat:t.lat(),lng:t.lng()};return s?(c.max_results=wpslSettings.maxResults,c.radius=wpslSettings.searchRadius):(p||d?(n=parseInt(e("#wpsl-results .wpsl-dropdown").val()),l=parseInt(e("#wpsl-radius .wpsl-dropdown").val())):(n=parseInt(e("#wpsl-results .wpsl-selected-item").attr("data-value")),l=parseInt(e("#wpsl-radius .wpsl-selected-item").attr("data-value"))),isNaN(n)?c.max_results=wpslSettings.maxResults:c.max_results=n,isNaN(l)?c.radius=wpslSettings.searchRadius:c.radius=l,"undefined"!=typeof wpslSettings.categoryIds?c.filter=wpslSettings.categoryIds:e("#wpsl-category").length>0?(r=p||d?parseInt(e("#wpsl-category .wpsl-dropdown").val()):parseInt(e("#wpsl-category .wpsl-selected-item").attr("data-value")),isNaN(r)||0===r||(c.filter=r)):e("#wpsl-checkbox-filter").length>0&&e("#wpsl-checkbox-filter input:checked").length>0&&(c.filter=z()),e(".wpsl-custom-dropdown").length>0&&e(".wpsl-custom-dropdown").each(function(t){i="",a="",p||d?(i=e(this).attr("name"),a=e(this).val()):(i=e(this).attr("name"),a=e(this).next(".wpsl-selected-item").attr("data-value")),i&&a&&(c[i]=a)})),1==o&&("undefined"!=typeof oe?c.skip_cache=1:(c.autoload=1,"undefined"!=typeof wpslSettings.categoryIds&&(c.filter=wpslSettings.categoryIds))),c}function T(){var e;return e="undefined"!=typeof wpslSettings.noResults&&""!==wpslSettings.noResults?wpslSettings.noResults:wpslLabels.noResults}function z(){var t=e("#wpsl-checkbox-filter input:checked").map(function(){return e(this).val()});return t=t.get(),t=t.join(",")}function Z(){if(1==wpslSettings.markerClusters){var e=Number(wpslSettings.clusterZoom),t=Number(wpslSettings.clusterSize);isNaN(e)&&(e=""),isNaN(t)&&(t=""),ae=new MarkerClusterer(ee,ce,{gridSize:t,maxZoom:e})}}function B(e,t,s,o,n){var l,i,a,r=!0;0===t?(s={store:wpslLabels.startPoint},l=we.url+wpslSettings.startMarker):l=we.url+wpslSettings.storeMarker,i={url:l,scaledSize:new google.maps.Size(Number(we.scaledSize[0]),Number(we.scaledSize[1])),origin:new google.maps.Point(Number(we.origin[0]),Number(we.origin[1])),anchor:new google.maps.Point(Number(we.anchor[0]),Number(we.anchor[1]))},a=new google.maps.Marker({position:e,map:ee,optimized:!1,title:V(s.store),draggable:o,storeId:t,icon:i}),ce.push(a),google.maps.event.addListener(a,"click",function(o){return function(){0!=t?"undefined"!=typeof wpslSettings.markerStreetView&&1==wpslSettings.markerStreetView?G(e,function(){$(a,j(s),n,o)}):$(a,j(s),n,o):$(a,wpslLabels.startPoint,n,o),google.maps.event.clearListeners(n,"domready"),google.maps.event.addListener(n,"domready",function(){U(a,o),A()})}}(ee)),o&&google.maps.event.addListener(a,"dragend",function(e){F(r),ee.setCenter(e.latLng),N(e.latLng),M(e.latLng,fe,he=!1,n)})}function V(e){return e?e.replace(/&#(\d+);/g,function(e,t){return String.fromCharCode(t)}):void 0}function $(e,t,s,o){de.length=0,s.setContent(t),s.open(o,e),de.push(s),"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle&&1==wpslSettings.markerClusters&&(le=e.storeId,s.setVisible(!0))}function U(t,s){e(".wpsl-info-actions a").on("click",function(o){var n=Number(wpslSettings.autoZoomLevel);if(o.stopImmediatePropagation(),e(this).hasClass("wpsl-directions")){if(1==wpslSettings.directionRedirect)return!0;L(e(this))}else e(this).hasClass("wpsl-streetview")?W(t,s):e(this).hasClass("wpsl-zoom-here")&&(s.setCenter(t.getPosition()),s.setZoom(n));return!1})}function A(){var t=ee.getZoom();t>=wpslSettings.autoZoomLevel?e(".wpsl-zoom-here").hide():e(".wpsl-zoom-here").show()}function W(t,s){var o=s.getStreetView();o.setPosition(t.getPosition()),o.setVisible(!0),e("#wpsl-map-controls").hide(),D(o,s)}function D(t,s){google.maps.event.addListener(t,"visible_changed",function(){if(!t.getVisible()){var o=s.getZoom();e("#wpsl-map-controls").show(),s.setZoom(o-1),s.setZoom(o)}})}function G(e,t){var s=new google.maps.StreetViewService;s.getPanoramaByLocation(e,50,function(e,s){me=s==google.maps.StreetViewStatus.OK?!0:!1,t()})}function j(t){var s,o;return o=e("#wpsl-base-gmap_0").length?e("#wpsl-cpt-info-window-template").html():e("#wpsl-info-window-template").html(),s=_.template(o)(t)}function K(){var e,t,s=Number(wpslSettings.autoZoomLevel),o=new google.maps.LatLngBounds;for(google.maps.event.addListenerOnce(ee,"bounds_changed",function(e){this.getZoom()>s&&this.setZoom(s)}),e=0,t=ce.length;t>e;e++)o.extend(ce[e].position);ee.fitBounds(o)}function F(e){var t,s;if(te.setMap(null),ce){for(s=0,t=ce.length;t>s;s++)e?1!=ce[s].draggable?ce[s].setMap(null):re=ce[s]:ce[s].setMap(null);ce.length=0}ae&&ae.clearMarkers()}function H(e){var t;switch(e){case"ZERO_RESULTS":t=wpslLabels.noResults;break;case"OVER_QUERY_LIMIT":t=wpslLabels.queryLimit;break;default:t=wpslLabels.generalError}alert(t)}function q(e){var t;switch(e){case"NOT_FOUND":case"ZERO_RESULTS":t=wpslLabels.noDirectionsFound;break;case"OVER_QUERY_LIMIT":t=wpslLabels.queryLimit;break;default:t=wpslLabels.generalError}alert(t)}function Q(){var t=Number(wpslSettings.maxDropdownHeight);e(".wpsl-dropdown").each(function(s){var o,n,l=e(this);l.$dropdownWrap=l.wrap("<div class='wpsl-dropdown'></div>").parent(),l.$selectedVal=l.val(),l.$dropdownElem=e("<div><ul/></div>").appendTo(l.$dropdownWrap),l.$dropdown=l.$dropdownElem.find("ul"),l.$options=l.$dropdownWrap.find("option"),l.hide().removeClass("wpsl-dropdown"),e.each(l.$options,function(){o=e(this).val()==l.$selectedVal?'class="wpsl-selected-dropdown"':"",l.$dropdown.append("<li data-value="+e(this).val()+" "+o+">"+e(this).text()+"</li>")}),l.$dropdownElem.before("<span data-value="+l.find(":selected").val()+" class='wpsl-selected-item'>"+l.find(":selected").text()+"</span>"),l.$dropdownItem=l.$dropdownElem.find("li"),l.$dropdownWrap.on("click",function(s){return e(this).hasClass("wpsl-active")?void e(this).removeClass("wpsl-active"):(Y(),e(this).toggleClass("wpsl-active"),n=0,e(this).hasClass("wpsl-active")?(l.$dropdownItem.each(function(t){n+=e(this).outerHeight()}),l.$dropdownElem.css("height",n+2+"px")):l.$dropdownElem.css("height",0),n>t&&(e(this).addClass("wpsl-scroll-required"),l.$dropdownElem.css("height",t+"px")),void s.stopPropagation())}),l.$dropdownItem.on("click",function(t){l.$dropdownWrap.find(e(".wpsl-selected-item")).html(e(this).text()).attr("data-value",e(this).attr("data-value")),l.$dropdownItem.removeClass("wpsl-selected-dropdown"),e(this).addClass("wpsl-selected-dropdown"),Y(),t.stopPropagation()})}),e(document).click(function(){Y()})}function Y(){e(".wpsl-dropdown").removeClass("wpsl-active"),e(".wpsl-dropdown div").css("height",0)}function J(){e(".wpsl-search").hasClass("wpsl-widget")&&(e("#wpsl-search-btn").trigger("click"),e(".wpsl-search").removeClass("wpsl-widget"))}var X,ee,te,se,oe,ne,le,ie,ae,re,pe,de=[],ce=[],we={},ge={},ue={},fe=!1,me=!1,he="undefined"!=typeof wpslSettings?wpslSettings.autoLoad:"";if(_.templateSettings={evaluate:/\<\%(.+?)\%\>/g,interpolate:/\<\%=(.+?)\%\>/g,escape:/\<\%-(.+?)\%\>/g},e(".wpsl-gmap-canvas").length&&(e("<img />").attr("src",wpslSettings.url+"img/ajax-loader.gif"),e(".wpsl-gmap-canvas").each(function(s){var o=e(this).attr("id");t(o,s)})),e("#wpsl-result-list").on("click",".wpsl-back",function(){var t,s;for(te.setMap(null),t=0,s=ce.length;s>t;t++)ce[t].setMap(ee);return"undefined"!=typeof re&&""!==re&&re.setMap(ee),ae&&Z(),ee.setCenter(ge.centerLatlng),ee.setZoom(ge.zoomLevel),e(".wpsl-direction-before, .wpsl-direction-after").remove(),e("#wpsl-stores").show(),e("#wpsl-direction-details").hide(),!1}),e("#wpsl-gmap").length&&("bounce"==wpslSettings.markerEffect?(e("#wpsl-stores").on("mouseenter","li",function(){C(e(this).data("store-id"),"start")}),e("#wpsl-stores").on("mouseleave","li",function(){C(e(this).data("store-id"),"stop")})):"info_window"==wpslSettings.markerEffect&&e("#wpsl-stores").on("mouseenter","li",function(){var t,s;for(t=0,s=ce.length;s>t;t++)ce[t].storeId==e(this).data("store-id")&&(google.maps.event.trigger(ce[t],"click"),ee.setCenter(ce[t].position))})),"undefined"!=typeof wpslSettings.infoWindowStyle&&"infobox"==wpslSettings.infoWindowStyle&&1==wpslSettings.markerClusters){var ve,Se,be,ye,Le;google.maps.event.addListener(ee,"zoom_changed",function(){google.maps.event.addListenerOnce(ee,"idle",function(){if("undefined"!=typeof ae&&(ve=ae.clusters_,ve.length))for(ye=0,Se=ve.length;Se>ye;ye++)for(Le=0,be=ve[ye].markers_.length;be>Le;Le++)if(ve[ye].markers_[Le].storeId==le){ie.getVisible()&&null===ve[ye].markers_[Le].map?ie.setVisible(!1):ie.getVisible()||null===ve[ye].markers_[Le].map||ie.setVisible(!0);break}})})}var Ce={formatPhoneNumber:function(e){return 1==wpslSettings.phoneUrl&&w()&&(e="<a href='tel:"+Ce.formatClickablePhoneNumber(e)+"'>"+e+"</a>"),e},formatClickablePhoneNumber:function(e){return-1!=e.indexOf("+")&&-1!=e.indexOf("(0)")&&(e=e.replace("(0)","")),e.replace(/(-| |\(|\)|\.|)/g,"")},createInfoWindowActions:function(t){var s,o="",n="";return e("#wpsl-gmap").length&&(me&&(o="<a class='wpsl-streetview' href='#'>"+wpslLabels.streetView+"</a>"),1==wpslSettings.markerZoomTo&&(n="<a class='wpsl-zoom-here' href='#'>"+wpslLabels.zoomHere+"</a>"),s="<div class='wpsl-info-actions'>"+Ce.createDirectionUrl(t)+o+n+"</div>"),s},createDirectionUrl:function(t){var s,o,n,l={};return 1==wpslSettings.directionRedirect?("undefined"==typeof pe&&(pe=""),l.target="target='_blank'","undefined"!=typeof t?l.src=e("[data-store-id="+t+"] .wpsl-directions").attr("href"):(n=this.zip?this.zip+", ":"",o=this.address+", "+this.city+", "+n+this.country,l.src="https://maps.google.com/maps?saddr="+Ce.rfc3986EncodeURIComponent(pe)+"&daddr="+Ce.rfc3986EncodeURIComponent(o))):l={src:"#",target:""},s="<a class='wpsl-directions' "+l.target+" href='"+l.src+"'>"+wpslLabels.directions+"</a>"},rfc3986EncodeURIComponent:function(e){return encodeURIComponent(e).replace(/[!'()*]/g,escape)}};if(e("#wpsl-search-input").keydown(function(t){var s=t.keyCode||t.which;13==s&&e("#wpsl-search-btn").trigger("click")}),e("#wpsl-stores").on("click",".wpsl-store-details",function(){var t,s,o=e(this).parents("li"),n=o.data("store-id");if("info window"==wpslSettings.moreInfoLocation)for(t=0,s=ce.length;s>t;t++)ce[t].storeId==n&&google.maps.event.trigger(ce[t],"click");else o.find(".wpsl-more-info-listings").is(":visible")?e(this).removeClass("wpsl-active-details"):e(this).addClass("wpsl-active-details"),o.siblings().find(".wpsl-store-details").removeClass("wpsl-active-details"),o.siblings().find(".wpsl-more-info-listings").hide(),o.find(".wpsl-more-info-listings").toggle();return"default"!=wpslSettings.templateId||"store listings"==wpslSettings.moreInfoLocation?!1:void 0}),e("a[href='#"+wpslSettings.mapTabAnchor+"']").length){var ke,Ie,xe=Number(wpslSettings.mapTabAnchorReturn)?!0:!1,_e=e("a[href='#"+wpslSettings.mapTabAnchor+"']");_e.on("click",function(){return setTimeout(function(){ke=ee.getZoom(),Ie=ee.getCenter(),google.maps.event.trigger(ee,"resize"),ee.setZoom(ke),ee.setCenter(Ie),K()},50),xe})}});
languages/wpsl-nl_NL.mo CHANGED
Binary file
languages/wpsl-nl_NL.po CHANGED
@@ -1,9 +1,9 @@
1
  msgid ""
2
  msgstr ""
3
- "Project-Id-Version: WP Store Locator 2.0\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2015-12-12 11:53+0100\n"
6
- "PO-Revision-Date: 2015-12-12 12:09+0100\n"
7
  "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "Language: nl_NL\n"
@@ -23,79 +23,71 @@ msgstr ""
23
  #, php-format
24
  msgid ""
25
  "Before adding the [wpsl] shortcode to a page, please don't forget to define "
26
- "a %sstart point%s. %sDismiss%s"
27
- msgstr ""
28
- "Vergeet niet voordat je de [wpsl] shortcode op een pagina plaatst, om een "
29
- "%sstart locatie%s op te geven. %sSluit%s"
30
-
31
- #: admin/class-admin.php:120
32
- #, php-format
33
- msgid ""
34
- "Before adding the [wpsl] shortcode to a page, please don't forget to define "
35
  "a start point on the %ssettings%s page. %sDismiss%s"
36
  msgstr ""
37
  "Vergeet niet voordat je de [wpsl] shortcode op een pagina plaatst, om een "
38
  "start locatie op te geven op de %sinstellingen%s pagina. %sSluit%s"
39
 
40
- #: admin/class-admin.php:153 admin/class-admin.php:154
41
- #: admin/templates/map-settings.php:8
42
  msgid "Settings"
43
  msgstr "Instellingen"
44
 
45
- #: admin/class-admin.php:280
 
 
 
 
 
46
  msgid "Cannot determine the address at this location."
47
  msgstr "Er kan geen adres gevonden worden voor deze locatie."
48
 
49
- #: admin/class-admin.php:281
50
  msgid "Geocode was not successful for the following reason"
51
  msgstr "Geocode was niet succesvol om de volgende reden"
52
 
53
- #: admin/class-admin.php:282 admin/upgrade.php:414
54
  msgid "Security check failed, reload the page and try again."
55
  msgstr ""
56
  "Beveiligings controle mislukt, herlaad de pagina en probeer het nog een keer."
57
 
58
- #: admin/class-admin.php:283
59
  msgid "Please fill in all the required store details."
60
  msgstr "Vul alle verplichte velden in."
61
 
62
- #: admin/class-admin.php:284
63
  msgid "The map preview requires all the location details."
64
  msgstr ""
65
  "Alle locatie details moeten zijn ingevuld voordat de locatie op de kaart "
66
  "getoond kan worden."
67
 
68
- #: admin/class-admin.php:285 admin/class-metaboxes.php:505
69
- #: frontend/class-frontend.php:493
70
  msgid "Closed"
71
- msgstr "gesloten"
72
 
73
- #: admin/class-admin.php:286
74
  msgid "The code for the map style is invalid."
75
  msgstr "De code voor de map stijl is ongeldig."
76
 
77
- #: admin/class-admin.php:377
78
  msgid "Welcome to WP Store Locator"
79
  msgstr "Welkom bij WP Store Locator"
80
 
81
- #: admin/class-admin.php:378
82
  msgid "Sign up for the latest plugin updates and announcements."
83
  msgstr "Meld je aan voor de nieuwsbrief en ontvang het laatste nieuws."
84
 
85
- #: admin/class-admin.php:422
86
  msgid "Documentation"
87
  msgstr "Documentatie"
88
 
89
- #: admin/class-admin.php:425
90
- msgid "General Settings"
91
- msgstr "Instellingen"
92
-
93
- #: admin/class-admin.php:445
94
  #, php-format
95
  msgid "If you like this plugin please leave us a %s5 star%s rating."
96
  msgstr "Als je tevreden bent met deze plugin geef het dan %s5 sterren%s."
97
 
98
- #: admin/class-geocode.php:73
99
  msgid ""
100
  "The Google Geocoding API returned no results for the supplied address. "
101
  "Please change the address and try again."
@@ -103,7 +95,7 @@ msgstr ""
103
  "De Google Geocoding API gaf geen resultaten terug voor deze locatie. Wijzig "
104
  "de locatie details en probeer het nog een keer."
105
 
106
- #: admin/class-geocode.php:76
107
  #, php-format
108
  msgid ""
109
  "You have reached the daily allowed geocoding limit, you can read more %shere"
@@ -112,23 +104,23 @@ msgstr ""
112
  "Je hebt de dagelijkse toegestane geocoding limiet bereikt, je kan er %shier"
113
  "%s meer over lezen."
114
 
115
- #: admin/class-geocode.php:79
116
  #, php-format
117
  msgid "The Google Geocoding API returned REQUEST_DENIED. %s"
118
  msgstr "Er is een probleem met Google Geocoding API - REQUEST_DENIED. %s"
119
 
120
- #: admin/class-geocode.php:82
121
  msgid ""
122
  "The Google Geocoding API failed to return valid data, please try again later."
123
  msgstr ""
124
  "De Google Geocoding API geeft ongeldige data terug, probeer het nog een keer."
125
 
126
- #: admin/class-geocode.php:107
127
  #, php-format
128
  msgid "%sError message: %s"
129
  msgstr "%sFout melding: %s"
130
 
131
- #: admin/class-geocode.php:129
132
  #, php-format
133
  msgid ""
134
  "Something went wrong connecting to the Google Geocode API: %s %s Please try "
@@ -137,6 +129,44 @@ msgstr ""
137
  "Er kon geen verbinding gemaakt worden met de Google Geocode API: %s %s "
138
  "Probeer het later nogmaals."
139
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
140
  #: admin/class-metaboxes.php:33
141
  msgid "Store Details"
142
  msgstr "Winkel details"
@@ -175,7 +205,7 @@ msgstr "Land"
175
 
176
  #: admin/class-metaboxes.php:74
177
  msgid "Latitude"
178
- msgstr "breedtegraad"
179
 
180
  #: admin/class-metaboxes.php:77
181
  msgid "Longitude"
@@ -186,9 +216,9 @@ msgstr "Lengtegraad"
186
  msgid "Opening Hours"
187
  msgstr "Openingstijden"
188
 
189
- #: admin/class-metaboxes.php:82 admin/templates/map-settings.php:425
190
- #: admin/templates/map-settings.php:426 frontend/underscore-functions.php:133
191
- #: inc/wpsl-functions.php:124
192
  msgid "Hours"
193
  msgstr "Uren"
194
 
@@ -200,48 +230,49 @@ msgstr "Extra informatie"
200
  msgid "Tel"
201
  msgstr "Tel."
202
 
203
- #: admin/class-metaboxes.php:91 admin/templates/map-settings.php:413
204
- #: admin/templates/map-settings.php:414 frontend/class-frontend.php:677
205
- #: frontend/underscore-functions.php:32 frontend/underscore-functions.php:124
206
- #: inc/wpsl-functions.php:121
207
  msgid "Fax"
208
  msgstr "Fax"
209
 
210
- #: admin/class-metaboxes.php:94 admin/templates/map-settings.php:417
211
- #: admin/templates/map-settings.php:418 admin/upgrade.php:210
212
- #: frontend/class-frontend.php:681 frontend/underscore-functions.php:35
213
- #: frontend/underscore-functions.php:127 inc/wpsl-functions.php:122
 
214
  msgid "Email"
215
  msgstr "E-mail"
216
 
217
- #: admin/class-metaboxes.php:97 admin/templates/map-settings.php:421
218
- #: admin/templates/map-settings.php:422 admin/upgrade.php:214
219
- #: frontend/class-frontend.php:686 inc/wpsl-functions.php:123
220
  msgid "Url"
221
  msgstr "Url"
222
 
223
- #: admin/class-metaboxes.php:427
224
  msgid "Hour format"
225
  msgstr "Uur formaat"
226
 
227
- #: admin/class-metaboxes.php:434
228
  msgid "Days"
229
  msgstr "Dagen"
230
 
231
- #: admin/class-metaboxes.php:435
232
  msgid "Opening Periods"
233
  msgstr "Openingstijden"
234
 
235
- #: admin/class-metaboxes.php:682
236
  msgid "Failed to publish the store. Please fill in the required store details."
237
  msgstr ""
238
  "Het publiceren van de winkel is mislukt. Vul alle verplichte velden in."
239
 
240
- #: admin/class-metaboxes.php:818
241
  msgid "Preview Location"
242
  msgstr "Bekijk voorbeeld"
243
 
244
- #: admin/class-metaboxes.php:819
245
  #, php-format
246
  msgid ""
247
  "The map preview is based on the provided address, city and country details. "
@@ -250,57 +281,57 @@ msgstr ""
250
  "Het voorbeeld is gebaseerd op het adres, de stad en het opgegeven land. %s "
251
  "De opgegeven lengte en breedtegraad worden niet gebruikt."
252
 
253
- #: admin/class-metaboxes.php:820
254
  msgid "You can drag the marker to adjust the exact location of the marker."
255
  msgstr "Je kunt de locatie aanpassen door de marker te verslepen."
256
 
257
- #: admin/class-metaboxes.php:840 admin/class-metaboxes.php:843
258
  msgid "Store updated."
259
  msgstr "Winkel bijgewerkt."
260
 
261
- #: admin/class-metaboxes.php:841
262
  msgid "Custom field updated."
263
  msgstr "Custom veld bijgewerkt."
264
 
265
- #: admin/class-metaboxes.php:842
266
  msgid "Custom field deleted."
267
  msgstr "Custom veld verwijderd."
268
 
269
- #: admin/class-metaboxes.php:844
270
  #, php-format
271
  msgid "Store restored to revision from %s"
272
  msgstr "Winkel hersteld naar revisie %s"
273
 
274
- #: admin/class-metaboxes.php:845
275
  msgid "Store published."
276
  msgstr "Winkel gepubliceerd."
277
 
278
- #: admin/class-metaboxes.php:846
279
  msgid "Store saved."
280
  msgstr "Winkel opgeslagen."
281
 
282
- #: admin/class-metaboxes.php:847
283
  msgid "Store submitted."
284
  msgstr "Winkel ingediend."
285
 
286
- #: admin/class-metaboxes.php:849
287
  #, php-format
288
  msgid "Store scheduled for: <strong>%1$s</strong>."
289
  msgstr "Winkel ingepland voor: <strong>%1$s</strong>. "
290
 
291
- #: admin/class-metaboxes.php:850
292
  msgid "M j, Y @ G:i"
293
  msgstr "M j, Y @ G:i"
294
 
295
- #: admin/class-metaboxes.php:852
296
  msgid "Store draft updated."
297
  msgstr "Winkel concept bijgewerkt."
298
 
299
- #: admin/class-metaboxes.php:858
300
  msgid "View store"
301
  msgstr "Bekijk winkel"
302
 
303
- #: admin/class-metaboxes.php:864
304
  msgid "Preview store"
305
  msgstr "Winkel voorbeeld"
306
 
@@ -308,20 +339,20 @@ msgstr "Winkel voorbeeld"
308
  msgid "WP Store Locator Transients Cleared"
309
  msgstr "WP Store Locator transients verwijderd"
310
 
311
- #: admin/class-settings.php:372
312
  msgid ""
313
  "The max results field cannot be empty, the default value has been restored."
314
  msgstr ""
315
- "Het max zoek resulaten veld kan niet leeg zijn, de standaard waarde is "
316
  "hersteld."
317
 
318
- #: admin/class-settings.php:375
319
  msgid ""
320
  "The search radius field cannot be empty, the default value has been restored."
321
  msgstr ""
322
  "Het zoek radius veld kan niet leeg zijn, de standaard waarde is hersteld."
323
 
324
- #: admin/class-settings.php:378
325
  #, php-format
326
  msgid ""
327
  "Please provide the name of a city or country that can be used as a starting "
@@ -333,1108 +364,1116 @@ msgstr ""
333
  "automatische achterhalen van de gebruikers locatie mislukt, of het "
334
  "automatische achterhalen is uitgeschakeld."
335
 
336
- #: admin/class-settings.php:399
337
  msgid "Select your language"
338
  msgstr "Kies uw taal"
339
 
340
- #: admin/class-settings.php:400
341
  msgid "English"
342
  msgstr "Engels"
343
 
344
- #: admin/class-settings.php:401
345
  msgid "Arabic"
346
  msgstr "Arabisch"
347
 
348
- #: admin/class-settings.php:402
349
  msgid "Basque"
350
  msgstr "Bask"
351
 
352
- #: admin/class-settings.php:403
353
  msgid "Bulgarian"
354
  msgstr "Bulgaars"
355
 
356
- #: admin/class-settings.php:404
357
  msgid "Bengali"
358
  msgstr "Bengali"
359
 
360
- #: admin/class-settings.php:405
361
  msgid "Catalan"
362
  msgstr "Catalaans"
363
 
364
- #: admin/class-settings.php:406
365
  msgid "Czech"
366
  msgstr "Tjechisch"
367
 
368
- #: admin/class-settings.php:407
369
  msgid "Danish"
370
  msgstr "Deens"
371
 
372
- #: admin/class-settings.php:408
373
  msgid "German"
374
  msgstr "Duits"
375
 
376
- #: admin/class-settings.php:409
377
  msgid "Greek"
378
  msgstr "Grieks"
379
 
380
- #: admin/class-settings.php:410
381
  msgid "English (Australian)"
382
  msgstr "Engels (Australisch)"
383
 
384
- #: admin/class-settings.php:411
385
  msgid "English (Great Britain)"
386
  msgstr "Engels (Verenigd Koninkrijk)"
387
 
388
- #: admin/class-settings.php:412
389
  msgid "Spanish"
390
  msgstr "Spaans"
391
 
392
- #: admin/class-settings.php:413
393
  msgid "Farsi"
394
  msgstr "Farsi"
395
 
396
- #: admin/class-settings.php:414
397
  msgid "Finnish"
398
  msgstr "Fins"
399
 
400
- #: admin/class-settings.php:415
401
  msgid "Filipino"
402
  msgstr "Filipijns"
403
 
404
- #: admin/class-settings.php:416
405
  msgid "French"
406
  msgstr "Frans"
407
 
408
- #: admin/class-settings.php:417
409
  msgid "Galician"
410
  msgstr "Gallisch"
411
 
412
- #: admin/class-settings.php:418
413
  msgid "Gujarati"
414
  msgstr "Gujurati"
415
 
416
- #: admin/class-settings.php:419
417
  msgid "Hindi"
418
  msgstr "Hindi"
419
 
420
- #: admin/class-settings.php:420
421
  msgid "Croatian"
422
  msgstr "Kroatisch"
423
 
424
- #: admin/class-settings.php:421
425
  msgid "Hungarian"
426
  msgstr "Hongaars"
427
 
428
- #: admin/class-settings.php:422
429
  msgid "Indonesian"
430
  msgstr "Indonesisch"
431
 
432
- #: admin/class-settings.php:423
433
  msgid "Italian"
434
  msgstr "Italiaans"
435
 
436
- #: admin/class-settings.php:424
437
  msgid "Hebrew"
438
  msgstr "Hebreeuws"
439
 
440
- #: admin/class-settings.php:425
441
  msgid "Japanese"
442
  msgstr "Japans"
443
 
444
- #: admin/class-settings.php:426
445
  msgid "Kannada"
446
  msgstr "Kannada"
447
 
448
- #: admin/class-settings.php:427
449
  msgid "Korean"
450
  msgstr "Koreaans"
451
 
452
- #: admin/class-settings.php:428
453
  msgid "Lithuanian"
454
  msgstr "Litouws"
455
 
456
- #: admin/class-settings.php:429
457
  msgid "Latvian"
458
  msgstr "Lets"
459
 
460
- #: admin/class-settings.php:430
461
  msgid "Malayalam"
462
  msgstr "Malayalam"
463
 
464
- #: admin/class-settings.php:431
465
  msgid "Marathi"
466
  msgstr "Marathi"
467
 
468
- #: admin/class-settings.php:432
469
  msgid "Dutch"
470
  msgstr "Nederlands"
471
 
472
- #: admin/class-settings.php:433
473
  msgid "Norwegian"
474
  msgstr "Noors"
475
 
476
- #: admin/class-settings.php:434
477
  msgid "Norwegian Nynorsk"
478
  msgstr "Noors Nynorsk"
479
 
480
- #: admin/class-settings.php:435
481
  msgid "Polish"
482
  msgstr "Pools"
483
 
484
- #: admin/class-settings.php:436
485
  msgid "Portuguese"
486
  msgstr "Portugees"
487
 
488
- #: admin/class-settings.php:437
489
  msgid "Portuguese (Brazil)"
490
  msgstr "Portugees (Brazilië)"
491
 
492
- #: admin/class-settings.php:438
493
  msgid "Portuguese (Portugal)"
494
  msgstr "Portugees (Portugal)"
495
 
496
- #: admin/class-settings.php:439
497
  msgid "Romanian"
498
  msgstr "Roemeens"
499
 
500
- #: admin/class-settings.php:440
501
  msgid "Russian"
502
  msgstr "Russisch"
503
 
504
- #: admin/class-settings.php:441
505
  msgid "Slovak"
506
  msgstr "Slowaaks"
507
 
508
- #: admin/class-settings.php:442
509
  msgid "Slovenian"
510
  msgstr "Sloveens"
511
 
512
- #: admin/class-settings.php:443
513
  msgid "Serbian"
514
  msgstr "Servisch"
515
 
516
- #: admin/class-settings.php:444
517
  msgid "Swedish"
518
  msgstr "Zweeds"
519
 
520
- #: admin/class-settings.php:445
521
  msgid "Tagalog"
522
  msgstr "Tagalog"
523
 
524
- #: admin/class-settings.php:446
525
  msgid "Tamil"
526
  msgstr "Tamil"
527
 
528
- #: admin/class-settings.php:447
529
  msgid "Telugu"
530
  msgstr "Telugu"
531
 
532
- #: admin/class-settings.php:448
533
  msgid "Thai"
534
  msgstr "Thai"
535
 
536
- #: admin/class-settings.php:449
537
  msgid "Turkish"
538
  msgstr "Turks"
539
 
540
- #: admin/class-settings.php:450
541
  msgid "Ukrainian"
542
  msgstr "Oekraïens"
543
 
544
- #: admin/class-settings.php:451
545
  msgid "Vietnamese"
546
  msgstr "Vietnamees"
547
 
548
- #: admin/class-settings.php:452
549
  msgid "Chinese (Simplified)"
550
  msgstr "Chinees (Vereenvoudigd)"
551
 
552
- #: admin/class-settings.php:453
553
  msgid "Chinese (Traditional)"
554
  msgstr "Chinees (Traditioneel)"
555
 
556
- #: admin/class-settings.php:458
557
  msgid "Select your region"
558
  msgstr "Kies uw regio"
559
 
560
- #: admin/class-settings.php:459
561
  msgid "Afghanistan"
562
  msgstr "Afghanistan"
563
 
564
- #: admin/class-settings.php:460
565
  msgid "Albania"
566
  msgstr "Albanië"
567
 
568
- #: admin/class-settings.php:461
569
  msgid "Algeria"
570
  msgstr "Algerije"
571
 
572
- #: admin/class-settings.php:462
573
  msgid "American Samoa"
574
  msgstr "Amerikaans Samoa"
575
 
576
- #: admin/class-settings.php:463
577
  msgid "Andorra"
578
  msgstr "Andorra"
579
 
580
- #: admin/class-settings.php:464
581
  msgid "Anguilla"
582
  msgstr "Anguilla"
583
 
584
- #: admin/class-settings.php:465
585
  msgid "Angola"
586
  msgstr "Angola"
587
 
588
- #: admin/class-settings.php:466
589
  msgid "Antigua and Barbuda"
590
  msgstr "Antigua en Barbuda"
591
 
592
- #: admin/class-settings.php:467
593
  msgid "Argentina"
594
  msgstr "Argentinië"
595
 
596
- #: admin/class-settings.php:468
597
  msgid "Armenia"
598
  msgstr "Armenia"
599
 
600
- #: admin/class-settings.php:469
601
  msgid "Aruba"
602
  msgstr "Aruba"
603
 
604
- #: admin/class-settings.php:470
605
  msgid "Australia"
606
  msgstr "Australië"
607
 
608
- #: admin/class-settings.php:471
609
  msgid "Austria"
610
  msgstr "Oostenrijk"
611
 
612
- #: admin/class-settings.php:472
613
  msgid "Azerbaijan"
614
  msgstr "Azerbeidzjan"
615
 
616
- #: admin/class-settings.php:473
617
  msgid "Bahamas"
618
  msgstr "Bahamas"
619
 
620
- #: admin/class-settings.php:474
621
  msgid "Bahrain"
622
  msgstr "Bahrein"
623
 
624
- #: admin/class-settings.php:475
625
  msgid "Bangladesh"
626
  msgstr "Bangladesh"
627
 
628
- #: admin/class-settings.php:476
629
  msgid "Barbados"
630
  msgstr "Barbados"
631
 
632
- #: admin/class-settings.php:477
633
  msgid "Belarus"
634
  msgstr "Wit-Rusland"
635
 
636
- #: admin/class-settings.php:478
637
  msgid "Belgium"
638
  msgstr "België"
639
 
640
- #: admin/class-settings.php:479
641
  msgid "Belize"
642
  msgstr "Belize"
643
 
644
- #: admin/class-settings.php:480
645
  msgid "Benin"
646
  msgstr "Benin"
647
 
648
- #: admin/class-settings.php:481
649
  msgid "Bermuda"
650
  msgstr "Bermuda"
651
 
652
- #: admin/class-settings.php:482
653
  msgid "Bhutan"
654
  msgstr "Bhutan"
655
 
656
- #: admin/class-settings.php:483
657
  msgid "Bolivia"
658
  msgstr "Bolivia"
659
 
660
- #: admin/class-settings.php:484
661
  msgid "Bosnia and Herzegovina"
662
  msgstr "Bosnia en Herzegovina"
663
 
664
- #: admin/class-settings.php:485
665
  msgid "Botswana"
666
  msgstr "Botswana"
667
 
668
- #: admin/class-settings.php:486
669
  msgid "Brazil"
670
  msgstr "Brazilië"
671
 
672
- #: admin/class-settings.php:487
673
  msgid "British Indian Ocean Territory"
674
  msgstr "Brits Indische Oceaanterritorium"
675
 
676
- #: admin/class-settings.php:488
677
  msgid "Brunei"
678
  msgstr "Brunei"
679
 
680
- #: admin/class-settings.php:489
681
  msgid "Bulgaria"
682
  msgstr "Bulgarije"
683
 
684
- #: admin/class-settings.php:490
685
  msgid "Burkina Faso"
686
  msgstr "Burkina Faso"
687
 
688
- #: admin/class-settings.php:491
689
  msgid "Burundi"
690
  msgstr "Burundi"
691
 
692
- #: admin/class-settings.php:492
693
  msgid "Cambodia"
694
  msgstr "Cambodja"
695
 
696
- #: admin/class-settings.php:493
697
  msgid "Cameroon"
698
  msgstr "Kameroen"
699
 
700
- #: admin/class-settings.php:494
701
  msgid "Canada"
702
  msgstr "Canada"
703
 
704
- #: admin/class-settings.php:495
705
  msgid "Cape Verde"
706
  msgstr "Kaapverdië"
707
 
708
- #: admin/class-settings.php:496
709
  msgid "Cayman Islands"
710
  msgstr "Kaaimaneilanden"
711
 
712
- #: admin/class-settings.php:497
713
  msgid "Central African Republic"
714
  msgstr "Centraal-Afrikaanse Republiek"
715
 
716
- #: admin/class-settings.php:498
717
  msgid "Chad"
718
  msgstr "Chad"
719
 
720
- #: admin/class-settings.php:499
721
  msgid "Chile"
722
  msgstr "Chili"
723
 
724
- #: admin/class-settings.php:500
725
  msgid "China"
726
  msgstr "China"
727
 
728
- #: admin/class-settings.php:501
729
  msgid "Christmas Island"
730
  msgstr "Christmaseiland"
731
 
732
- #: admin/class-settings.php:502
733
  msgid "Cocos Islands"
734
  msgstr "Cocoseilanden"
735
 
736
- #: admin/class-settings.php:503
737
  msgid "Colombia"
738
  msgstr "Colombia"
739
 
740
- #: admin/class-settings.php:504
741
  msgid "Comoros"
742
  msgstr "Comoren"
743
 
744
- #: admin/class-settings.php:505
745
  msgid "Congo"
746
  msgstr "Congo"
747
 
748
- #: admin/class-settings.php:506
749
  msgid "Costa Rica"
750
  msgstr "Costa Rica"
751
 
752
- #: admin/class-settings.php:507
753
  msgid "Côte d'Ivoire"
754
  msgstr "Ivoorkust"
755
 
756
- #: admin/class-settings.php:508
757
  msgid "Croatia"
758
  msgstr "Kroatië"
759
 
760
- #: admin/class-settings.php:509
761
  msgid "Cuba"
762
  msgstr "Cuba"
763
 
764
- #: admin/class-settings.php:510
765
  msgid "Czech Republic"
766
  msgstr "Tsjechië"
767
 
768
- #: admin/class-settings.php:511
769
  msgid "Denmark"
770
  msgstr "Denemarken"
771
 
772
- #: admin/class-settings.php:512
773
  msgid "Djibouti"
774
  msgstr "Djibouti"
775
 
776
- #: admin/class-settings.php:513
777
  msgid "Democratic Republic of the Congo"
778
  msgstr "Democratische Republiek Congo"
779
 
780
- #: admin/class-settings.php:514
781
  msgid "Dominica"
782
  msgstr "Dominica"
783
 
784
- #: admin/class-settings.php:515
785
  msgid "Dominican Republic"
786
  msgstr "Dominicaanse Republiek"
787
 
788
- #: admin/class-settings.php:516
789
  msgid "Ecuador"
790
  msgstr "Ecuador"
791
 
792
- #: admin/class-settings.php:517
793
  msgid "Egypt"
794
  msgstr "Egypte"
795
 
796
- #: admin/class-settings.php:518
797
  msgid "El Salvador"
798
  msgstr "El Salvador"
799
 
800
- #: admin/class-settings.php:519
801
  msgid "Equatorial Guinea"
802
  msgstr "Equatoriaal-Guinea"
803
 
804
- #: admin/class-settings.php:520
805
  msgid "Eritrea"
806
  msgstr "Eritrea"
807
 
808
- #: admin/class-settings.php:521
809
  msgid "Estonia"
810
  msgstr "Estland"
811
 
812
- #: admin/class-settings.php:522
813
  msgid "Ethiopia"
814
  msgstr "Ethiopië"
815
 
816
- #: admin/class-settings.php:523
817
  msgid "Fiji"
818
  msgstr "Fiji"
819
 
820
- #: admin/class-settings.php:524
821
  msgid "Finland"
822
  msgstr "Finland"
823
 
824
- #: admin/class-settings.php:525
825
  msgid "France"
826
  msgstr "Frankrijk"
827
 
828
- #: admin/class-settings.php:526
829
  msgid "French Guiana"
830
  msgstr "Frans Guyana"
831
 
832
- #: admin/class-settings.php:527
833
  msgid "Gabon"
834
  msgstr "Gabon"
835
 
836
- #: admin/class-settings.php:528
837
  msgid "Gambia"
838
  msgstr "Gambia"
839
 
840
- #: admin/class-settings.php:529
841
  msgid "Germany"
842
  msgstr "Duitsland"
843
 
844
- #: admin/class-settings.php:530
845
  msgid "Ghana"
846
  msgstr "Ghana"
847
 
848
- #: admin/class-settings.php:531
849
  msgid "Greenland"
850
  msgstr "Groenland"
851
 
852
- #: admin/class-settings.php:532
853
  msgid "Greece"
854
  msgstr "Griekenland"
855
 
856
- #: admin/class-settings.php:533
857
  msgid "Grenada"
858
  msgstr "Grenada"
859
 
860
- #: admin/class-settings.php:534
861
  msgid "Guam"
862
  msgstr "Guam"
863
 
864
- #: admin/class-settings.php:535
865
  msgid "Guadeloupe"
866
  msgstr "Guadeloupe"
867
 
868
- #: admin/class-settings.php:536
869
  msgid "Guatemala"
870
  msgstr "Guatemala"
871
 
872
- #: admin/class-settings.php:537
873
  msgid "Guinea"
874
  msgstr "Guinee"
875
 
876
- #: admin/class-settings.php:538
877
  msgid "Guinea-Bissau"
878
  msgstr "Guinee-Bissau"
879
 
880
- #: admin/class-settings.php:539
881
  msgid "Haiti"
882
  msgstr "Haïti"
883
 
884
- #: admin/class-settings.php:540
885
  msgid "Honduras"
886
  msgstr "Honduras"
887
 
888
- #: admin/class-settings.php:541
889
  msgid "Hong Kong"
890
  msgstr "Hong Kong"
891
 
892
- #: admin/class-settings.php:542
893
  msgid "Hungary"
894
  msgstr "Hongarije"
895
 
896
- #: admin/class-settings.php:543
897
  msgid "Iceland"
898
  msgstr "IJsland"
899
 
900
- #: admin/class-settings.php:544
901
  msgid "India"
902
  msgstr "India"
903
 
904
- #: admin/class-settings.php:545
905
  msgid "Indonesia"
906
  msgstr "Indonesië"
907
 
908
- #: admin/class-settings.php:546
909
  msgid "Iran"
910
  msgstr "Iran"
911
 
912
- #: admin/class-settings.php:547
913
  msgid "Iraq"
914
  msgstr "Irak"
915
 
916
- #: admin/class-settings.php:548
917
  msgid "Ireland"
918
  msgstr "Ierland"
919
 
920
- #: admin/class-settings.php:549
921
  msgid "Israel"
922
  msgstr "Israël"
923
 
924
- #: admin/class-settings.php:550
925
  msgid "Italy"
926
  msgstr "Italië"
927
 
928
- #: admin/class-settings.php:551
929
  msgid "Jamaica"
930
  msgstr "Jamaica"
931
 
932
- #: admin/class-settings.php:552
933
  msgid "Japan"
934
  msgstr "Japan"
935
 
936
- #: admin/class-settings.php:553
937
  msgid "Jordan"
938
  msgstr "Jordanië"
939
 
940
- #: admin/class-settings.php:554
941
  msgid "Kazakhstan"
942
  msgstr "Kazachstan"
943
 
944
- #: admin/class-settings.php:555
945
  msgid "Kenya"
946
  msgstr "Kenia"
947
 
948
- #: admin/class-settings.php:556
949
  msgid "Kuwait"
950
  msgstr "Koeweit"
951
 
952
- #: admin/class-settings.php:557
953
  msgid "Kyrgyzstan"
954
  msgstr "Kirgizië"
955
 
956
- #: admin/class-settings.php:558
957
  msgid "Laos"
958
  msgstr "Laos"
959
 
960
- #: admin/class-settings.php:559
961
  msgid "Latvia"
962
  msgstr "Letland"
963
 
964
- #: admin/class-settings.php:560
965
  msgid "Lebanon"
966
  msgstr "Libanon"
967
 
968
- #: admin/class-settings.php:561
969
  msgid "Lesotho"
970
  msgstr "Lesotho"
971
 
972
- #: admin/class-settings.php:562
973
  msgid "Liberia"
974
  msgstr "Liberia"
975
 
976
- #: admin/class-settings.php:563
977
  msgid "Libya"
978
  msgstr "Libië"
979
 
980
- #: admin/class-settings.php:564
981
  msgid "Liechtenstein"
982
  msgstr "Liechtenstein"
983
 
984
- #: admin/class-settings.php:565
985
  msgid "Lithuania"
986
  msgstr "Litouwen"
987
 
988
- #: admin/class-settings.php:566
989
  msgid "Luxembourg"
990
  msgstr "Luxemburg"
991
 
992
- #: admin/class-settings.php:567
993
  msgid "Macau"
994
  msgstr "Macau"
995
 
996
- #: admin/class-settings.php:568
997
  msgid "Macedonia"
998
  msgstr "Macedonië"
999
 
1000
- #: admin/class-settings.php:569
1001
  msgid "Madagascar"
1002
  msgstr "Madagascar"
1003
 
1004
- #: admin/class-settings.php:570
1005
  msgid "Malawi"
1006
  msgstr "Malawi"
1007
 
1008
- #: admin/class-settings.php:571
1009
  msgid "Malaysia "
1010
  msgstr "Maleisie"
1011
 
1012
- #: admin/class-settings.php:572
1013
  msgid "Mali"
1014
  msgstr "Mali"
1015
 
1016
- #: admin/class-settings.php:573
1017
  msgid "Marshall Islands"
1018
  msgstr "Marshalleilanden"
1019
 
1020
- #: admin/class-settings.php:574
1021
  msgid "Martinique"
1022
  msgstr "Martinique"
1023
 
1024
- #: admin/class-settings.php:575
1025
  msgid "Mauritania"
1026
  msgstr "Mauritanië"
1027
 
1028
- #: admin/class-settings.php:576
1029
  msgid "Mauritius"
1030
  msgstr "Mauritius"
1031
 
1032
- #: admin/class-settings.php:577
1033
  msgid "Mexico"
1034
  msgstr "Mexico"
1035
 
1036
- #: admin/class-settings.php:578
1037
  msgid "Micronesia"
1038
  msgstr "Micronesia"
1039
 
1040
- #: admin/class-settings.php:579
1041
  msgid "Moldova"
1042
  msgstr "Moldavië"
1043
 
1044
- #: admin/class-settings.php:580
1045
  msgid "Monaco"
1046
  msgstr "Monaco"
1047
 
1048
- #: admin/class-settings.php:581
1049
  msgid "Mongolia"
1050
  msgstr "Mongolië"
1051
 
1052
- #: admin/class-settings.php:582
1053
  msgid "Montenegro"
1054
  msgstr "Montenegro"
1055
 
1056
- #: admin/class-settings.php:583
1057
  msgid "Montserrat"
1058
  msgstr "Montserrat "
1059
 
1060
- #: admin/class-settings.php:584
1061
  msgid "Morocco"
1062
  msgstr "Marokko"
1063
 
1064
- #: admin/class-settings.php:585
1065
  msgid "Mozambique"
1066
  msgstr "Mozambique"
1067
 
1068
- #: admin/class-settings.php:586
1069
  msgid "Myanmar"
1070
  msgstr "Myanmar"
1071
 
1072
- #: admin/class-settings.php:587
1073
  msgid "Namibia"
1074
  msgstr "Namibië"
1075
 
1076
- #: admin/class-settings.php:588
1077
  msgid "Nauru"
1078
  msgstr "Nauru"
1079
 
1080
- #: admin/class-settings.php:589
1081
  msgid "Nepal"
1082
  msgstr "Nepal"
1083
 
1084
- #: admin/class-settings.php:590
1085
  msgid "Netherlands"
1086
  msgstr "Nederland"
1087
 
1088
- #: admin/class-settings.php:591
1089
  msgid "Netherlands Antilles"
1090
  msgstr "Nederlandse Antillen"
1091
 
1092
- #: admin/class-settings.php:592
1093
  msgid "New Zealand"
1094
  msgstr "Nieuw Zeeland"
1095
 
1096
- #: admin/class-settings.php:593
1097
  msgid "Nicaragua"
1098
  msgstr "Nicaragua"
1099
 
1100
- #: admin/class-settings.php:594
1101
  msgid "Niger"
1102
  msgstr "Niger"
1103
 
1104
- #: admin/class-settings.php:595
1105
  msgid "Nigeria"
1106
  msgstr "Nigeria"
1107
 
1108
- #: admin/class-settings.php:596
1109
  msgid "Niue"
1110
  msgstr "Niue"
1111
 
1112
- #: admin/class-settings.php:597
1113
  msgid "Northern Mariana Islands"
1114
  msgstr "Noordelijke Marianen"
1115
 
1116
- #: admin/class-settings.php:598
1117
  msgid "Norway"
1118
  msgstr "Noorwegen"
1119
 
1120
- #: admin/class-settings.php:599
1121
  msgid "Oman"
1122
  msgstr "Oman"
1123
 
1124
- #: admin/class-settings.php:600
1125
  msgid "Pakistan"
1126
  msgstr "Pakistan"
1127
 
1128
- #: admin/class-settings.php:601
1129
  msgid "Panama"
1130
  msgstr "Panama"
1131
 
1132
- #: admin/class-settings.php:602
1133
  msgid "Papua New Guinea"
1134
  msgstr "Papoea-Nieuw-Guinea"
1135
 
1136
- #: admin/class-settings.php:603
1137
  msgid "Paraguay"
1138
  msgstr "Paraguay"
1139
 
1140
- #: admin/class-settings.php:604
1141
  msgid "Peru"
1142
  msgstr "Peru"
1143
 
1144
- #: admin/class-settings.php:605
1145
  msgid "Philippines"
1146
  msgstr "Filipijnen"
1147
 
1148
- #: admin/class-settings.php:606
1149
  msgid "Pitcairn Islands"
1150
  msgstr "Pitcairneilanden"
1151
 
1152
- #: admin/class-settings.php:607
1153
  msgid "Poland"
1154
  msgstr "Polen"
1155
 
1156
- #: admin/class-settings.php:608
1157
  msgid "Portugal"
1158
  msgstr "Portugal"
1159
 
1160
- #: admin/class-settings.php:609
1161
  msgid "Qatar"
1162
  msgstr "Qatar"
1163
 
1164
- #: admin/class-settings.php:610
1165
  msgid "Reunion"
1166
  msgstr "Réunion"
1167
 
1168
- #: admin/class-settings.php:611
1169
  msgid "Romania"
1170
  msgstr "Roemenië"
1171
 
1172
- #: admin/class-settings.php:612
1173
  msgid "Russia"
1174
  msgstr "Rusland"
1175
 
1176
- #: admin/class-settings.php:613
1177
  msgid "Rwanda"
1178
  msgstr "Rwanda"
1179
 
1180
- #: admin/class-settings.php:614
1181
  msgid "Saint Helena"
1182
  msgstr "Sint-Helena"
1183
 
1184
- #: admin/class-settings.php:615
1185
  msgid "Saint Kitts and Nevis"
1186
  msgstr "Saint Kitts en Nevis"
1187
 
1188
- #: admin/class-settings.php:616
1189
  msgid "Saint Vincent and the Grenadines"
1190
  msgstr "Saint Vincent en de Grenadines"
1191
 
1192
- #: admin/class-settings.php:617
1193
  msgid "Saint Lucia"
1194
  msgstr "Saint Lucia"
1195
 
1196
- #: admin/class-settings.php:618
1197
  msgid "Samoa"
1198
  msgstr "Samoa"
1199
 
1200
- #: admin/class-settings.php:619
1201
  msgid "San Marino"
1202
  msgstr "San Marino"
1203
 
1204
- #: admin/class-settings.php:620
1205
  msgid "São Tomé and Príncipe"
1206
  msgstr "Sao Tomé en Principe"
1207
 
1208
- #: admin/class-settings.php:621
1209
  msgid "Saudi Arabia"
1210
  msgstr "Saoedi-Arabië"
1211
 
1212
- #: admin/class-settings.php:622
1213
  msgid "Senegal"
1214
  msgstr "Senegal"
1215
 
1216
- #: admin/class-settings.php:623
1217
  msgid "Serbia"
1218
  msgstr "Servië"
1219
 
1220
- #: admin/class-settings.php:624
1221
  msgid "Seychelles"
1222
  msgstr "Seychellen"
1223
 
1224
- #: admin/class-settings.php:625
1225
  msgid "Sierra Leone"
1226
  msgstr "Sierra Leone"
1227
 
1228
- #: admin/class-settings.php:626
1229
  msgid "Singapore"
1230
  msgstr "Singapore"
1231
 
1232
- #: admin/class-settings.php:627
1233
  msgid "Slovakia"
1234
  msgstr "Slowakije"
1235
 
1236
- #: admin/class-settings.php:628
1237
  msgid "Solomon Islands"
1238
  msgstr "Salomonseilanden"
1239
 
1240
- #: admin/class-settings.php:629
1241
  msgid "Somalia"
1242
  msgstr "Somalie"
1243
 
1244
- #: admin/class-settings.php:630
1245
  msgid "South Africa"
1246
  msgstr "Zuid Afrika"
1247
 
1248
- #: admin/class-settings.php:631
1249
  msgid "South Korea"
1250
  msgstr "Zuid Korea"
1251
 
1252
- #: admin/class-settings.php:632
1253
  msgid "Spain"
1254
  msgstr "Spanje"
1255
 
1256
- #: admin/class-settings.php:633
1257
  msgid "Sri Lanka"
1258
  msgstr "Sri Lanka"
1259
 
1260
- #: admin/class-settings.php:634
1261
  msgid "Sudan"
1262
  msgstr "Sudan"
1263
 
1264
- #: admin/class-settings.php:635
1265
  msgid "Swaziland"
1266
  msgstr "Swaziland "
1267
 
1268
- #: admin/class-settings.php:636
1269
  msgid "Sweden"
1270
  msgstr "Zweden"
1271
 
1272
- #: admin/class-settings.php:637
1273
  msgid "Switzerland"
1274
  msgstr "Zwitserland"
1275
 
1276
- #: admin/class-settings.php:638
1277
  msgid "Syria"
1278
  msgstr "Syrië"
1279
 
1280
- #: admin/class-settings.php:639
1281
  msgid "Taiwan"
1282
  msgstr "Taiwan"
1283
 
1284
- #: admin/class-settings.php:640
1285
  msgid "Tajikistan"
1286
  msgstr "Tajikistan"
1287
 
1288
- #: admin/class-settings.php:641
1289
  msgid "Tanzania"
1290
  msgstr "Tanzania"
1291
 
1292
- #: admin/class-settings.php:642
1293
  msgid "Thailand"
1294
  msgstr "Thailand"
1295
 
1296
- #: admin/class-settings.php:643
1297
  msgid "Timor-Leste"
1298
  msgstr "Oost-Timor"
1299
 
1300
- #: admin/class-settings.php:644
1301
  msgid "Tokelau"
1302
  msgstr "Tokelau"
1303
 
1304
- #: admin/class-settings.php:645
1305
  msgid "Togo"
1306
  msgstr "Togo"
1307
 
1308
- #: admin/class-settings.php:646
1309
  msgid "Tonga"
1310
  msgstr "Tonga"
1311
 
1312
- #: admin/class-settings.php:647
1313
  msgid "Trinidad and Tobago"
1314
  msgstr "Trinidad en Tobago"
1315
 
1316
- #: admin/class-settings.php:648
1317
  msgid "Tunisia"
1318
  msgstr "Tunesië"
1319
 
1320
- #: admin/class-settings.php:649
1321
  msgid "Turkey"
1322
  msgstr "Turkije"
1323
 
1324
- #: admin/class-settings.php:650
1325
  msgid "Turkmenistan"
1326
  msgstr "Turkmenistan"
1327
 
1328
- #: admin/class-settings.php:651
1329
  msgid "Tuvalu"
1330
  msgstr "Tuvalu"
1331
 
1332
- #: admin/class-settings.php:652
1333
  msgid "Uganda"
1334
  msgstr "Uganda"
1335
 
1336
- #: admin/class-settings.php:653
1337
  msgid "Ukraine"
1338
  msgstr "Oekraïne"
1339
 
1340
- #: admin/class-settings.php:654
1341
  msgid "United Arab Emirates"
1342
  msgstr "Verenigde Arabische Emiraten"
1343
 
1344
- #: admin/class-settings.php:655
1345
  msgid "United Kingdom"
1346
  msgstr "Verenigd Koninkrijk"
1347
 
1348
- #: admin/class-settings.php:656
1349
  msgid "United States"
1350
  msgstr "Verenigde Staten"
1351
 
1352
- #: admin/class-settings.php:657
1353
  msgid "Uruguay"
1354
  msgstr "Uruguay"
1355
 
1356
- #: admin/class-settings.php:658
1357
  msgid "Uzbekistan"
1358
  msgstr "Uzbekistan"
1359
 
1360
- #: admin/class-settings.php:659
1361
  msgid "Wallis Futuna"
1362
  msgstr "Wallis en Futuna"
1363
 
1364
- #: admin/class-settings.php:660
1365
  msgid "Venezuela"
1366
  msgstr "Venezuela"
1367
 
1368
- #: admin/class-settings.php:661
1369
  msgid "Vietnam"
1370
  msgstr "Vietnam"
1371
 
1372
- #: admin/class-settings.php:662
1373
  msgid "Yemen"
1374
  msgstr "Yemen"
1375
 
1376
- #: admin/class-settings.php:663
1377
  msgid "Zambia"
1378
  msgstr "Zambia"
1379
 
1380
- #: admin/class-settings.php:664
1381
  msgid "Zimbabwe"
1382
  msgstr "Zimbabwe"
1383
 
1384
- #: admin/class-settings.php:707
1385
  msgid "World view"
1386
- msgstr "wereldkaart"
1387
 
1388
- #: admin/class-settings.php:710 admin/class-settings.php:824
1389
- #: inc/wpsl-functions.php:189
1390
  msgid "Default"
1391
- msgstr "standaard"
1392
 
1393
- #: admin/class-settings.php:713 inc/wpsl-functions.php:262
1394
  msgid "Roadmap"
1395
- msgstr "wegenkaart"
1396
 
1397
- #: admin/class-settings.php:854
1398
  msgid "Start location marker"
1399
  msgstr "Start locatie marker"
1400
 
1401
- #: admin/class-settings.php:856
1402
  msgid "Store location marker"
1403
  msgstr "Winkel locatie marker"
1404
 
1405
- #: admin/class-settings.php:938
1406
  msgid "Textarea"
1407
- msgstr "tekstvlak"
1408
 
1409
- #: admin/class-settings.php:939
1410
  msgid "Dropdowns (recommended)"
1411
- msgstr "dropdown (aangeraden)"
1412
 
1413
- #: admin/class-settings.php:947
1414
  msgid "Bounces up and down"
1415
- msgstr "beweegt op en neer"
1416
 
1417
- #: admin/class-settings.php:948
1418
  msgid "Will open the info window"
1419
- msgstr "opent de info window"
1420
 
1421
- #: admin/class-settings.php:949
1422
  msgid "Does not respond"
1423
- msgstr "reageert niet"
1424
 
1425
- #: admin/class-settings.php:957
1426
  msgid "In the store listings"
1427
  msgstr "In de locatie lijst"
1428
 
1429
- #: admin/class-settings.php:958
1430
  msgid "In the info window on the map"
1431
  msgstr "In de info window op de kaart"
1432
 
1433
- #: admin/class-settings.php:1014
 
 
 
 
 
 
 
 
1434
  msgid "12 Hours"
1435
  msgstr "12 uur"
1436
 
1437
- #: admin/class-settings.php:1015
1438
  msgid "24 Hours"
1439
  msgstr "24 uur"
1440
 
@@ -1442,42 +1481,97 @@ msgstr "24 uur"
1442
  msgid "Store Locator Manager"
1443
  msgstr "Store Locator Beheerder"
1444
 
1445
- #: admin/templates/map-settings.php:16
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1446
  msgid "Google Maps API"
1447
  msgstr "Google Maps API"
1448
 
1449
- #: admin/templates/map-settings.php:19
1450
- msgid "API key"
1451
- msgstr "API sleutel"
1452
 
1453
- #: admin/templates/map-settings.php:19
1454
  #, php-format
1455
  msgid ""
1456
- "A valid %sAPI key%s allows you to monitor the API usage and is required if "
1457
- "you need to purchase additional quota."
 
1458
  msgstr ""
1459
- "Een geldige %sAPI sleutel%s maakt het mogelijk om het gebruik van de API in "
1460
- "de gaten te houden en is verplicht als je de API limiet wil verhogen."
 
1461
 
1462
- #: admin/templates/map-settings.php:20
1463
  msgid "Optional"
1464
  msgstr "Optioneel"
1465
 
1466
- #: admin/templates/map-settings.php:23
 
 
 
 
 
 
 
 
 
 
 
 
 
1467
  msgid "Map language"
1468
  msgstr "Kaart taal"
1469
 
1470
- #: admin/templates/map-settings.php:23
1471
  msgid "If no map language is selected the browser's prefered language is used."
1472
  msgstr ""
1473
  "Als er geen kaart taal is geselecteerd, dan word de standaard browser taal "
1474
  "gebruikt."
1475
 
1476
- #: admin/templates/map-settings.php:29
1477
  msgid "Map region"
1478
  msgstr "Kaart regio"
1479
 
1480
- #: admin/templates/map-settings.php:29
1481
  #, php-format
1482
  msgid ""
1483
  "This will bias the %sgeocoding%s results towards the selected region. %s If "
@@ -1487,11 +1581,11 @@ msgstr ""
1487
  "voorkeur krijgen over resultaten uit andere regio's . %s Als er geen regio "
1488
  "is geselecteerd dan gaat de voorkeur uit naar de Verenigde Staten."
1489
 
1490
- #: admin/templates/map-settings.php:35
1491
  msgid "Restrict the geocoding results to the selected map region?"
1492
  msgstr "Limiteer de geocode resultaten tot de geselecteerde map regio?"
1493
 
1494
- #: admin/templates/map-settings.php:35
1495
  #, php-format
1496
  msgid ""
1497
  "If the %sgeocoding%s API finds more relevant results outside of the set map "
@@ -1506,73 +1600,73 @@ msgstr ""
1506
  "Om dit uit te sluiten kan je een restrictie plaatsen om dit te voorkomen. "
1507
  "%s Je kan de gebruikte restricties aanpassen met %sdeze%s filter."
1508
 
1509
- #: admin/templates/map-settings.php:39 admin/templates/map-settings.php:81
1510
- #: admin/templates/map-settings.php:158 admin/templates/map-settings.php:251
1511
- #: admin/templates/map-settings.php:277 admin/templates/map-settings.php:327
1512
- #: admin/templates/map-settings.php:353 admin/templates/map-settings.php:461
1513
- #: admin/templates/map-settings.php:482
1514
- msgid "Save Changes"
1515
- msgstr "Wijzigingen opslaan"
1516
-
1517
- #: admin/templates/map-settings.php:49 admin/templates/map-settings.php:389
1518
- #: admin/templates/map-settings.php:390 frontend/templates/default.php:43
1519
- #: frontend/templates/store-listings-below.php:43 inc/wpsl-functions.php:107
1520
  msgid "Search"
1521
  msgstr "Zoek"
1522
 
1523
- #: admin/templates/map-settings.php:52
 
 
 
 
1524
  msgid "Show the max results dropdown?"
1525
  msgstr "Toon de max resultaten dropdown?"
1526
 
1527
- #: admin/templates/map-settings.php:56
1528
  msgid "Show the search radius dropdown?"
1529
  msgstr "Toon de zoek radius dropdown?"
1530
 
1531
- #: admin/templates/map-settings.php:60
1532
- msgid "Show the category dropdown?"
1533
- msgstr "Toon de categorie dropdown?"
 
 
 
 
1534
 
1535
- #: admin/templates/map-settings.php:64
1536
  msgid "Distance unit"
1537
  msgstr "Afstands eenheid"
1538
 
1539
- #: admin/templates/map-settings.php:67
1540
  msgid "km"
1541
  msgstr "km"
1542
 
1543
- #: admin/templates/map-settings.php:69
1544
  msgid "mi"
1545
  msgstr "mi"
1546
 
1547
- #: admin/templates/map-settings.php:73
1548
  msgid "Max search results"
1549
  msgstr "Max zoek resultaten"
1550
 
1551
- #: admin/templates/map-settings.php:73 admin/templates/map-settings.php:77
1552
  msgid "The default value is set between the [ ]."
1553
  msgstr "* De standaard waarde staat tussen de []."
1554
 
1555
- #: admin/templates/map-settings.php:77
1556
  msgid "Search radius options"
1557
  msgstr "Zoek radius opties"
1558
 
1559
- #: admin/templates/map-settings.php:91
1560
  msgid "Map"
1561
  msgstr "Kaart"
1562
 
1563
- #: admin/templates/map-settings.php:94
1564
  msgid "Attempt to auto-locate the user"
1565
  msgstr "Probeer de locatie van de gebruiker automatische te achterhalen"
1566
 
1567
- #: admin/templates/map-settings.php:98
1568
  msgid "Load locations on page load"
1569
  msgstr "Toon alle locaties op de kaart zodra de pagina geladen is"
1570
 
1571
- #: admin/templates/map-settings.php:102
1572
  msgid "Number of locations to show"
1573
  msgstr "Aantal getoonde locaties"
1574
 
1575
- #: admin/templates/map-settings.php:102
1576
  #, php-format
1577
  msgid ""
1578
  "Although the location data is cached after the first load, a lower number "
@@ -1585,11 +1679,11 @@ msgstr ""
1585
  "Als het veld leeg blijft of er wordt 0 ingevuld, dan worden alle locaties "
1586
  "geladen."
1587
 
1588
- #: admin/templates/map-settings.php:106
1589
  msgid "Start point"
1590
  msgstr "Start locatie"
1591
 
1592
- #: admin/templates/map-settings.php:106
1593
  #, php-format
1594
  msgid ""
1595
  "%sRequired field.%s %s If auto-locating the user is disabled or fails, the "
@@ -1600,15 +1694,15 @@ msgstr ""
1600
  "locatie is uitgeschakeld of mislukt, dan wordt het middelpunt van de "
1601
  "opgegeven locatie als begin punt gebruikt."
1602
 
1603
- #: admin/templates/map-settings.php:111
1604
  msgid "Initial zoom level"
1605
  msgstr "Start zoom niveau"
1606
 
1607
- #: admin/templates/map-settings.php:115
1608
  msgid "Max auto zoom level"
1609
  msgstr "Max zoom niveau"
1610
 
1611
- #: admin/templates/map-settings.php:115
1612
  #, php-format
1613
  msgid ""
1614
  "This value sets the zoom level for the \"Zoom here\" link in the info "
@@ -1620,39 +1714,39 @@ msgstr ""
1620
  "limiteren als de viewport van de kaart verandert, wanneer geprobeerd wordt "
1621
  "om alle markers op het scherm te laten passen."
1622
 
1623
- #: admin/templates/map-settings.php:119
1624
  msgid "Show the street view controls?"
1625
  msgstr "Toon de street view controls?"
1626
 
1627
- #: admin/templates/map-settings.php:123
1628
  msgid "Show the map type control?"
1629
  msgstr "Toon de kaart type controls?"
1630
 
1631
- #: admin/templates/map-settings.php:127
1632
  msgid "Enable scroll wheel zooming?"
1633
  msgstr "Activeer het inzoomen met je scrollwheel?"
1634
 
1635
- #: admin/templates/map-settings.php:131
1636
  msgid "Zoom control position"
1637
  msgstr "Zoom bediening positie"
1638
 
1639
- #: admin/templates/map-settings.php:134
1640
  msgid "Left"
1641
- msgstr "links"
1642
 
1643
- #: admin/templates/map-settings.php:136
1644
  msgid "Right"
1645
- msgstr "rechts"
1646
 
1647
- #: admin/templates/map-settings.php:140
1648
  msgid "Map type"
1649
  msgstr "Kaart soort"
1650
 
1651
- #: admin/templates/map-settings.php:144
1652
  msgid "Map style"
1653
  msgstr "Kaart stijl"
1654
 
1655
- #: admin/templates/map-settings.php:144
1656
  msgid ""
1657
  "Custom map styles only work if the map type is set to \"Roadmap\" or "
1658
  "\"Terrain\"."
@@ -1660,18 +1754,18 @@ msgstr ""
1660
  "Custom map stijlen werken alleen maar als de kaart soort op \"Wegenkaart\" "
1661
  "of \"Terrein\" is gezet."
1662
 
1663
- #: admin/templates/map-settings.php:147
1664
  #, php-format
1665
  msgid ""
1666
  "You can use existing map styles from %sSnazzy Maps%s or %sMap Stylr%s and "
1667
  "paste it in the textarea below, or you can generate a custom map style "
1668
  "through the %sMap Style Editor%s or %sStyled Maps Wizard%s."
1669
  msgstr ""
1670
- "Je kan bestaande map stijlen van %sSnazzy Maps%s of %sMap Stylr%s kopieren "
1671
- "en in het onderstaande tekstvlak plaatsen. Of je kan de map stijl genereren "
1672
  "via de %sMap Style Editor%s of de %sStyled Maps Wizard%s."
1673
 
1674
- #: admin/templates/map-settings.php:148
1675
  #, php-format
1676
  msgid ""
1677
  "If you like to write the style code yourself, then you can find the "
@@ -1680,46 +1774,46 @@ msgstr ""
1680
  "Als je zelf de stijl code wil schrijven dan kun je de documentatie %shier%s "
1681
  "vinden."
1682
 
1683
- #: admin/templates/map-settings.php:150
1684
  msgid "Preview Map Style"
1685
  msgstr "Map stijl voorbeeld"
1686
 
1687
- #: admin/templates/map-settings.php:154
1688
  msgid "Show credits?"
1689
  msgstr "Toon credits?"
1690
 
1691
- #: admin/templates/map-settings.php:154
1692
  msgid ""
1693
  "This will place a \"Search provided by WP Store Locator\" backlink below the "
1694
  "map."
1695
  msgstr ""
1696
  "Dit plaatst een \"Ondersteund door WP Store Locator\" link onder de kaart."
1697
 
1698
- #: admin/templates/map-settings.php:168
1699
  msgid "User Experience"
1700
  msgstr "Gebruikers ervaring"
1701
 
1702
- #: admin/templates/map-settings.php:171
1703
  msgid "Store Locator height"
1704
  msgstr "Store Locator hoogte"
1705
 
1706
- #: admin/templates/map-settings.php:175
1707
  msgid "Max width for the info window content"
1708
  msgstr "Max breedte voor de info window inhoud"
1709
 
1710
- #: admin/templates/map-settings.php:179
1711
  msgid "Search field width"
1712
  msgstr "Zoekveld breedte"
1713
 
1714
- #: admin/templates/map-settings.php:183
1715
  msgid "Search and radius label width"
1716
  msgstr "Zoek en radius label breedte"
1717
 
1718
- #: admin/templates/map-settings.php:187
1719
  msgid "Store Locator template"
1720
  msgstr "Store locator template"
1721
 
1722
- #: admin/templates/map-settings.php:187
1723
  #, php-format
1724
  msgid ""
1725
  "The selected template is used with the [wpsl] shortcode. %s You can add a "
@@ -1728,19 +1822,19 @@ msgstr ""
1728
  "De geselecteerde template wordt gebruikt bij de [wpsl] shortcode. %s Je kunt "
1729
  "een custom template gebruiken met behulp van de %swpsl_templates%s filter."
1730
 
1731
- #: admin/templates/map-settings.php:191
1732
  msgid "Hide the scrollbar?"
1733
  msgstr "Verberg de scrollbar?"
1734
 
1735
- #: admin/templates/map-settings.php:195
1736
  msgid "Open links in a new window?"
1737
  msgstr "Open links in een nieuw venster?"
1738
 
1739
- #: admin/templates/map-settings.php:199
1740
  msgid "Show a reset map button?"
1741
  msgstr "Toon een knop om de kaart te resetten?"
1742
 
1743
- #: admin/templates/map-settings.php:203
1744
  msgid ""
1745
  "When a user clicks on \"Directions\", open a new window, and show the route "
1746
  "on google.com/maps ?"
@@ -1748,32 +1842,33 @@ msgstr ""
1748
  "Zodra een gebruiker op \"Route\" klikt, open een nieuwe venster en toon de "
1749
  "route op google.com/maps?"
1750
 
1751
- #: admin/templates/map-settings.php:207
1752
  msgid "Show a \"More info\" link in the store listings?"
1753
  msgstr "Toon een \"Meer info\" link in de locatie lijst?"
1754
 
1755
- #: admin/templates/map-settings.php:207
1756
- #, php-format
1757
  msgid ""
1758
  "This places a \"More Info\" link below the address and will show the phone, "
1759
- "fax, email, opening hours and description once the link is clicked. %s If "
1760
- "you for example want the contact details to always be visible, then please "
1761
- "follow the instructions on %sthis%s page."
1762
  msgstr ""
1763
- "Dit plaatst een \"Meer info\" link onder het adres, en toont zodra er op de "
1764
- "link geklikt wordt het telefoon / fax numer, email, openingstijden en "
1765
- "omschrijving. %s Als je bijvoorbeeld de contact gegevens altijd wil tonen, "
1766
- "volg dan de instructies op %sdeze%s pagina."
1767
 
1768
- #: admin/templates/map-settings.php:211
1769
  msgid "Where do you want to show the \"More info\" details?"
1770
  msgstr "Waar wil je de \"Meer info\" details tonen?"
1771
 
1772
- #: admin/templates/map-settings.php:215
 
 
 
 
 
1773
  msgid "Make the store name clickable if a store URL exists?"
1774
  msgstr "Als een winkel url bestaat, maak de winkel naam dan klikbaar?"
1775
 
1776
- #: admin/templates/map-settings.php:215
1777
  #, php-format
1778
  msgid ""
1779
  "If %spermalinks%s are enabled, the store name will always link to the store "
@@ -1782,11 +1877,11 @@ msgstr ""
1782
  "Als de %spermalinks%s zijn ingeschakeld dan zal de winkel naam altijd linken "
1783
  "naar de winkel pagina."
1784
 
1785
- #: admin/templates/map-settings.php:219
1786
  msgid "Make the phone number clickable on mobile devices?"
1787
  msgstr "Maak het telefoonnummer klikbaar op mobiele apparaten?"
1788
 
1789
- #: admin/templates/map-settings.php:223
1790
  msgid ""
1791
  "If street view is available for the current location, then show a \"Street "
1792
  "view\" link in the info window?"
@@ -1794,7 +1889,7 @@ msgstr ""
1794
  "Als voor de huidge locatie street view beschikbaar is, toon dan een \"Street "
1795
  "view\" link om vanuit de info window?"
1796
 
1797
- #: admin/templates/map-settings.php:223
1798
  #, php-format
1799
  msgid ""
1800
  "Enabling this option can sometimes result in a small delay in the opening of "
@@ -1806,11 +1901,11 @@ msgstr ""
1806
  "er een verzoek naar de Google Maps API word gemaakt om te controleren ofdat "
1807
  "street view wel beschikbaar is voor de huidige locatie."
1808
 
1809
- #: admin/templates/map-settings.php:227
1810
  msgid "Show a \"Zoom here\" link in the info window?"
1811
  msgstr "Toon een \"zoom hier\" link in de info window?"
1812
 
1813
- #: admin/templates/map-settings.php:227
1814
  #, php-format
1815
  msgid ""
1816
  "Clicking this link will make the map zoom in to the %s max auto zoom level "
@@ -1819,12 +1914,12 @@ msgstr ""
1819
  "Als er op deze link geklikt word dan zoomt de kaart in totdat de %s max auto "
1820
  "zoom level %s bereikt is."
1821
 
1822
- #: admin/templates/map-settings.php:231
1823
  msgid "On page load move the mouse cursor to the search field?"
1824
  msgstr ""
1825
  "Als de pagina wordt geladen, verplaats de muiscursor dan naar het invulveld?"
1826
 
1827
- #: admin/templates/map-settings.php:231
1828
  #, php-format
1829
  msgid ""
1830
  "If the store locator is not placed at the top of the page, enabling this "
@@ -1835,11 +1930,11 @@ msgstr ""
1835
  "instelling ervoor zorgen dat de pagina naar benenden schuift tijden het "
1836
  "laden. %s %sDeze optie staat uit op mobiele apparaten.%s"
1837
 
1838
- #: admin/templates/map-settings.php:235
1839
  msgid "Use the default style for the info window?"
1840
  msgstr "Gebruik de standaard style voor de info window?"
1841
 
1842
- #: admin/templates/map-settings.php:235
1843
  #, php-format
1844
  msgid ""
1845
  "If the default style is disabled the %sInfoBox%s library will be used "
@@ -1850,17 +1945,21 @@ msgstr ""
1850
  "gebruikt. %s Dit script maakt het mogelijk om makkelijk het ontwerp te "
1851
  "wijzigen met behulp van de .wpsl-infobox css class."
1852
 
1853
- #: admin/templates/map-settings.php:239
 
 
 
 
1854
  msgid "Hide the distance in the search results?"
1855
  msgstr "Verberg de afstand in de zoek resultaten?"
1856
 
1857
- #: admin/templates/map-settings.php:243
1858
  msgid "If a user hovers over the search results the store marker"
1859
  msgstr ""
1860
  "Als een gebruiker over de zoekresultaten beweegt met zijn muis de "
1861
  "bijbehorende marker"
1862
 
1863
- #: admin/templates/map-settings.php:243
1864
  #, php-format
1865
  msgid ""
1866
  "If marker clusters are enabled this option will not work as expected as long "
@@ -1875,11 +1974,11 @@ msgstr ""
1875
  "de marker cluster wordt omgezet naar losse markers. %s De info window wordt "
1876
  "wel geopend, maar het is niet duidelijk bij welke marker het hoort."
1877
 
1878
- #: admin/templates/map-settings.php:247
1879
  msgid "Address format"
1880
  msgstr "Adres formaat"
1881
 
1882
- #: admin/templates/map-settings.php:247
1883
  #, php-format
1884
  msgid ""
1885
  "You can add custom address formats with the %swpsl_address_formats%s filter."
@@ -1887,23 +1986,23 @@ msgstr ""
1887
  "Je kunt een nieuwe adres formaat toevoegen met de %swpsl_address_formats%s "
1888
  "filter."
1889
 
1890
- #: admin/templates/map-settings.php:261
1891
  msgid "Markers"
1892
  msgstr "Markers"
1893
 
1894
- #: admin/templates/map-settings.php:265
1895
  msgid "Enable marker clusters?"
1896
  msgstr "Activeer marker clusters?"
1897
 
1898
- #: admin/templates/map-settings.php:265
1899
  msgid "Recommended for maps with a large amount of markers."
1900
  msgstr "Aan te raden voor kaarten met grote hoeveelheden markers."
1901
 
1902
- #: admin/templates/map-settings.php:269
1903
  msgid "Max zoom level"
1904
  msgstr "Max zoom niveau"
1905
 
1906
- #: admin/templates/map-settings.php:269
1907
  msgid ""
1908
  "If this zoom level is reached or exceeded, then all markers are moved out of "
1909
  "the marker cluster and shown as individual markers."
@@ -1911,11 +2010,11 @@ msgstr ""
1911
  "Als dit zoom niveau bereikt is of gepasseerd, dan worden alle markers uit de "
1912
  "marker cluster gehaald en als losse markers getoond."
1913
 
1914
- #: admin/templates/map-settings.php:273
1915
  msgid "Cluster size"
1916
  msgstr "Cluster grote"
1917
 
1918
- #: admin/templates/map-settings.php:273
1919
  #, php-format
1920
  msgid ""
1921
  "The grid size of a cluster in pixels. %s A larger number will result in a "
@@ -1925,27 +2024,27 @@ msgstr ""
1925
  "voor dat er minder clusters zichtbaar zijn en het algoritme dus ook sneller "
1926
  "klaar is."
1927
 
1928
- #: admin/templates/map-settings.php:287
1929
  msgid "Store Editor"
1930
  msgstr "Winkel editor"
1931
 
1932
- #: admin/templates/map-settings.php:290
1933
  msgid "Default country"
1934
  msgstr "Standaard land"
1935
 
1936
- #: admin/templates/map-settings.php:294
1937
  msgid "Map type for the location preview"
1938
  msgstr "Kaart type voor het lokatie voorbeeld"
1939
 
1940
- #: admin/templates/map-settings.php:298
1941
  msgid "Hide the opening hours?"
1942
  msgstr "Verberg de openingstijden?"
1943
 
1944
- #: admin/templates/map-settings.php:304
1945
  msgid "Opening hours input type"
1946
  msgstr "Openingstijden formaat"
1947
 
1948
- #: admin/templates/map-settings.php:308
1949
  #, php-format
1950
  msgid ""
1951
  "Opening hours created in version 1.x %sare not%s automatically converted to "
@@ -1954,15 +2053,15 @@ msgstr ""
1954
  "De openingstijden die zijn aangemaakt in versie 1.x %sworden niet%s "
1955
  "automatische omgezet naar het dropdown formaat."
1956
 
1957
- #: admin/templates/map-settings.php:311 admin/templates/map-settings.php:320
1958
  msgid "The default opening hours"
1959
  msgstr "De standaard openingstijden"
1960
 
1961
- #: admin/templates/map-settings.php:317
1962
  msgid "Opening hours format"
1963
  msgstr "Openingstijden formaat"
1964
 
1965
- #: admin/templates/map-settings.php:324
1966
  msgid ""
1967
  "The default country and opening hours are only used when a new store is "
1968
  "created. So changing the default values will have no effect on existing "
@@ -1972,39 +2071,39 @@ msgstr ""
1972
  "gebruikt als een nieuwe locatie wordt aangemaakt. Het wijzigen van deze "
1973
  "waardes heeft dus geen enkele invloed op de bestaande locaties."
1974
 
1975
- #: admin/templates/map-settings.php:337
1976
  msgid "Permalink"
1977
  msgstr "Permalink"
1978
 
1979
- #: admin/templates/map-settings.php:340
1980
  msgid "Enable permalink?"
1981
  msgstr "Activeer permalink?"
1982
 
1983
- #: admin/templates/map-settings.php:344
1984
  msgid "Store slug"
1985
  msgstr "Winkel slug"
1986
 
1987
- #: admin/templates/map-settings.php:348
1988
  msgid "Category slug"
1989
  msgstr "Categorie slug"
1990
 
1991
- #: admin/templates/map-settings.php:351
1992
  #, php-format
1993
  msgid "The permalink slugs %smust be unique%s on your site."
1994
  msgstr "De permalink slug %smoet uniek%s zijn op je site."
1995
 
1996
- #: admin/templates/map-settings.php:363
1997
  msgid "Labels"
1998
  msgstr "Labels"
1999
 
2000
- #: admin/templates/map-settings.php:372
2001
  #, php-format
2002
  msgid "%sWarning!%s %sWPML%s, or a plugin using the WPML API is active."
2003
  msgstr ""
2004
  "%sWaarschuwing!%s %sWPML%s, of een plugin die de WPML API gebruikt is "
2005
  "actief."
2006
 
2007
- #: admin/templates/map-settings.php:373
2008
  msgid ""
2009
  "Please use the \"String Translations\" section in the used multilingual "
2010
  "plugin to change the labels. Changing them here will have no effect as long "
@@ -2014,115 +2113,125 @@ msgstr ""
2014
  "labels te wijzigen. Wijzigingen die in dit gedeelte worden aangebracht "
2015
  "hebben geen effect zolang de vertaal plugin actief is."
2016
 
2017
- #: admin/templates/map-settings.php:377 admin/templates/map-settings.php:378
2018
- #: frontend/templates/default.php:11
2019
- #: frontend/templates/store-listings-below.php:11 inc/wpsl-functions.php:106
2020
  msgid "Your location"
2021
  msgstr "Uw locatie"
2022
 
2023
- #: admin/templates/map-settings.php:381 admin/templates/map-settings.php:382
2024
- #: frontend/templates/default.php:20
2025
- #: frontend/templates/store-listings-below.php:20 inc/wpsl-functions.php:109
2026
  msgid "Search radius"
2027
  msgstr "Zoek radius"
2028
 
2029
- #: admin/templates/map-settings.php:385 admin/templates/map-settings.php:386
2030
- #: frontend/class-frontend.php:1408 inc/wpsl-functions.php:110
2031
  msgid "No results found"
2032
  msgstr "Geen resultaten gevonden"
2033
 
2034
- #: admin/templates/map-settings.php:393
2035
  msgid "Searching (preloader text)"
2036
  msgstr "Aan het zoeken (preloader tekst)"
2037
 
2038
- #: admin/templates/map-settings.php:394 frontend/class-frontend.php:1407
2039
- #: inc/wpsl-functions.php:108
2040
  msgid "Searching..."
2041
  msgstr "Zoeken..."
2042
 
2043
- #: admin/templates/map-settings.php:397 admin/templates/map-settings.php:398
2044
- #: frontend/templates/default.php:29
2045
- #: frontend/templates/store-listings-below.php:29 inc/wpsl-functions.php:111
2046
  msgid "Results"
2047
  msgstr "Resultaten"
2048
 
2049
- #: admin/templates/map-settings.php:401 admin/upgrade.php:218
2050
- #: inc/wpsl-functions.php:125
2051
  msgid "Category filter"
2052
  msgstr "Categorie filter"
2053
 
2054
- #: admin/templates/map-settings.php:402 frontend/class-frontend.php:1127
2055
  msgid "Category"
2056
  msgstr "Categorie"
2057
 
2058
- #: admin/templates/map-settings.php:405 admin/templates/map-settings.php:406
2059
- #: admin/upgrade.php:66 frontend/class-frontend.php:1409
2060
- #: frontend/underscore-functions.php:114 frontend/underscore-functions.php:141
2061
- #: inc/wpsl-functions.php:112
 
 
 
 
 
 
 
 
 
2062
  msgid "More info"
2063
  msgstr "Meer info"
2064
 
2065
- #: admin/templates/map-settings.php:409 admin/templates/map-settings.php:410
2066
- #: frontend/class-frontend.php:673 frontend/underscore-functions.php:29
2067
- #: frontend/underscore-functions.php:121 inc/wpsl-functions.php:120
 
2068
  msgid "Phone"
2069
  msgstr "Telefoon"
2070
 
2071
- #: admin/templates/map-settings.php:429 admin/templates/map-settings.php:430
2072
- #: frontend/class-frontend.php:1414 inc/wpsl-functions.php:105
2073
  msgid "Start location"
2074
  msgstr "Start locatie"
2075
 
2076
- #: admin/templates/map-settings.php:433
2077
  msgid "Get directions"
2078
  msgstr "Toon routebeschrijving"
2079
 
2080
- #: admin/templates/map-settings.php:434 frontend/class-frontend.php:1412
2081
- #: inc/wpsl-functions.php:113
2082
  msgid "Directions"
2083
  msgstr "Routebeschrijving"
2084
 
2085
- #: admin/templates/map-settings.php:437
2086
  msgid "No directions found"
2087
  msgstr "Geen routebeschrijving beschikbaar"
2088
 
2089
- #: admin/templates/map-settings.php:438 admin/upgrade.php:163
2090
- #: frontend/class-frontend.php:1413 inc/wpsl-functions.php:114
2091
  msgid "No route could be found between the origin and destination"
2092
  msgstr "Er kon geen route gevonden worden tussen het begin- en eindpunt"
2093
 
2094
- #: admin/templates/map-settings.php:441 admin/templates/map-settings.php:442
2095
- #: admin/upgrade.php:87 frontend/class-frontend.php:1415
2096
- #: inc/wpsl-functions.php:115
2097
  msgid "Back"
2098
  msgstr "Terug"
2099
 
2100
- #: admin/templates/map-settings.php:445 admin/templates/map-settings.php:446
2101
- #: admin/upgrade.php:155 frontend/class-frontend.php:1416
2102
- #: inc/wpsl-functions.php:116
2103
  msgid "Street view"
2104
  msgstr "Street view"
2105
 
2106
- #: admin/templates/map-settings.php:449 admin/templates/map-settings.php:450
2107
- #: admin/upgrade.php:159 frontend/class-frontend.php:1417
2108
- #: inc/wpsl-functions.php:117
2109
  msgid "Zoom here"
2110
  msgstr "Zoom hier"
2111
 
2112
- #: admin/templates/map-settings.php:453
2113
  msgid "General error"
2114
  msgstr "Foutmelding"
2115
 
2116
- #: admin/templates/map-settings.php:454 frontend/class-frontend.php:1410
2117
- #: inc/wpsl-functions.php:118
2118
  msgid "Something went wrong, please try again!"
2119
  msgstr "Er ging iets fout, probeer het nog een keer!"
2120
 
2121
- #: admin/templates/map-settings.php:457
2122
  msgid "Query limit error"
2123
  msgstr "Query limit foutmelding"
2124
 
2125
- #: admin/templates/map-settings.php:457
2126
  #, php-format
2127
  msgid ""
2128
  "You can raise the %susage limit%s by obtaining an API %skey%s, and fill in "
@@ -2131,20 +2240,20 @@ msgstr ""
2131
  "Je kan de %sgebruiks limiet%s verhogen door een API %ssleutel%s aan te "
2132
  "vragen en die in het \"API sleutel\" veld bovenaan de pagina in te vullen."
2133
 
2134
- #: admin/templates/map-settings.php:458 frontend/class-frontend.php:1411
2135
- #: inc/wpsl-functions.php:119
2136
  msgid "API usage limit reached"
2137
  msgstr "API gebruikslimiet bereikt"
2138
 
2139
- #: admin/templates/map-settings.php:471
2140
  msgid "Tools"
2141
  msgstr "Tools"
2142
 
2143
- #: admin/templates/map-settings.php:474
2144
  msgid "Enable store locator debug?"
2145
  msgstr "Activeer store locator debug?"
2146
 
2147
- #: admin/templates/map-settings.php:474
2148
  #, php-format
2149
  msgid ""
2150
  "This disables the WPSL transient cache. %sThe transient cache is only used "
@@ -2154,31 +2263,31 @@ msgstr ""
2154
  "alleen gebruikt als de %sToon alle locaties op de kaart zodra de pagina "
2155
  "geladen is%s optie is geactiveerd."
2156
 
2157
- #: admin/templates/map-settings.php:478
2158
  msgid "WPSL transients"
2159
  msgstr "WPSL transients"
2160
 
2161
- #: admin/templates/map-settings.php:479
2162
  msgid "Clear store locator transient cache"
2163
  msgstr "Verwijder het store locator transient cache."
2164
 
2165
- #: admin/upgrade.php:82
2166
  msgid "info window"
2167
  msgstr "info window"
2168
 
2169
- #: admin/upgrade.php:92
2170
  msgid "Reset"
2171
  msgstr "Herstel"
2172
 
2173
- #: admin/upgrade.php:186 inc/wpsl-functions.php:100
2174
  msgid "stores"
2175
  msgstr "winkels"
2176
 
2177
- #: admin/upgrade.php:190 inc/wpsl-functions.php:101
2178
  msgid "store-category"
2179
  msgstr "winkel-categorie"
2180
 
2181
- #: admin/upgrade.php:392
2182
  #, php-format
2183
  msgid ""
2184
  "Because you updated WP Store Locator from version 1.x, the %s current store "
@@ -2187,7 +2296,7 @@ msgstr ""
2187
  "Doordat je WP Store Locator update van versie 1.x, de %s huidige winkel "
2188
  "locaties moeten worden %somgezet%s naar custom post types."
2189
 
2190
- #: admin/upgrade.php:413
2191
  #, php-format
2192
  msgid ""
2193
  "The script converting the locations timed out. %s You can click the \"Start "
@@ -2197,7 +2306,7 @@ msgid ""
2197
  "execution time. %s The plugin tried to disable the maximum execution time, "
2198
  "but if you are reading this then that failed."
2199
  msgstr ""
2200
- "Het script wat de winkel locaties omzet timed out. %s Je kunt op de \"Begin "
2201
  "met omzetten\" knop klikken om het script opnieuw te starten. %s Als er "
2202
  "duizenden winkel locaties zijn die nog omgezet moeten worden en je blijft "
2203
  "deze boodschap zien dan kun je proberen om contact op te nemen met je host "
@@ -2205,15 +2314,15 @@ msgstr ""
2205
  "heeft al geprobeerd om de maximum execution time uit te zetten, maar als je "
2206
  "dit leest dan is dat mislukt."
2207
 
2208
- #: admin/upgrade.php:434
2209
  msgid "Store locations to convert:"
2210
  msgstr "Locaties die omgezet worden:"
2211
 
2212
- #: admin/upgrade.php:436
2213
  msgid "Start Converting"
2214
  msgstr "Begin met omzetten"
2215
 
2216
- #: admin/upgrade.php:558
2217
  #, php-format
2218
  msgid ""
2219
  "All the store locations are now converted to custom post types. %s You can "
@@ -2222,7 +2331,7 @@ msgstr ""
2222
  "Alle winkel locaties zijn nu omgezet naar custom post types. %s Je kunt ze "
2223
  "bekijken op de %sAlle Winkels%s pagina."
2224
 
2225
- #: frontend/class-frontend.php:610
2226
  msgid ""
2227
  "If you use the [wpsl_address] shortcode outside a store page you need to set "
2228
  "the ID attribute."
@@ -2230,7 +2339,7 @@ msgstr ""
2230
  "Als je de [wpsl_address] shortcode op een pagina gebruikt die geen winkel "
2231
  "pagina is dan is de ID attribute verplicht."
2232
 
2233
- #: frontend/class-frontend.php:722
2234
  msgid ""
2235
  "If you use the [wpsl_hours] shortcode outside a store page you need to set "
2236
  "the ID attribute."
@@ -2238,7 +2347,7 @@ msgstr ""
2238
  "Als je de [wpsl_hours] shortcode op een pagina gebruikt die geen winkel "
2239
  "pagina is dan is de ID attribute verplicht."
2240
 
2241
- #: frontend/class-frontend.php:791
2242
  msgid ""
2243
  "If you use the [wpsl_map] shortcode outside a store page, then you need to "
2244
  "set the ID or category attribute."
@@ -2246,29 +2355,25 @@ msgstr ""
2246
  "Als de [wpsl_map] shortcode buiten een winkel page is geplaatst, dan moet je "
2247
  "de ID of category attribute opgeven."
2248
 
2249
- #: frontend/class-frontend.php:1129
2250
- msgid "Any"
2251
- msgstr "Alle"
2252
-
2253
- #: frontend/class-frontend.php:1254
2254
  msgid "The application does not have permission to use the Geolocation API."
2255
  msgstr ""
2256
  "Deze applicatie heeft geen toestemming om de Geolocation API te gebruiken."
2257
 
2258
- #: frontend/class-frontend.php:1255
2259
  msgid "Location information is unavailable."
2260
  msgstr "Informatie over de huidige locatie is niet beschikbaar."
2261
 
2262
- #: frontend/class-frontend.php:1256
2263
  msgid "The geolocation request timed out."
2264
  msgstr "Het geolocation verzoek timed out."
2265
 
2266
- #: frontend/class-frontend.php:1257
2267
  msgid "An unknown error occurred."
2268
  msgstr " Er heeft zich een onbekende fout voorgedaan."
2269
 
2270
- #: frontend/templates/default.php:60
2271
- #: frontend/templates/store-listings-below.php:66
2272
  #, php-format
2273
  msgid "Search provided by %sWP Store Locator%s"
2274
  msgstr "Ondersteund door %sWP Store Locator%s"
@@ -2373,79 +2478,116 @@ msgstr "Voer winkel naam in"
2373
  msgid "Zip"
2374
  msgstr "Postcode"
2375
 
2376
- #: inc/wpsl-functions.php:194
2377
  msgid "Show the store list below the map"
2378
  msgstr "Toon the locatie lijst onder de kaart"
2379
 
2380
- #: inc/wpsl-functions.php:211
2381
  msgid "Monday"
2382
  msgstr "Maandag"
2383
 
2384
- #: inc/wpsl-functions.php:212
2385
  msgid "Tuesday"
2386
  msgstr "Dinsdag"
2387
 
2388
- #: inc/wpsl-functions.php:213
2389
  msgid "Wednesday"
2390
  msgstr "Woensdag"
2391
 
2392
- #: inc/wpsl-functions.php:214
2393
  msgid "Thursday"
2394
  msgstr "Donderdag"
2395
 
2396
- #: inc/wpsl-functions.php:215
2397
  msgid "Friday"
2398
  msgstr "Vrijdag"
2399
 
2400
- #: inc/wpsl-functions.php:216
2401
  msgid "Saturday"
2402
  msgstr "Zaterdag"
2403
 
2404
- #: inc/wpsl-functions.php:217
2405
  msgid "Sunday"
2406
  msgstr "Zondag"
2407
 
2408
- #: inc/wpsl-functions.php:247
2409
  #, php-format
2410
  msgid "Mon %sTue %sWed %sThu %sFri %sSat Closed %sSun Closed"
2411
  msgstr "ma %sdi %swoe %sdo %svrij %szat gesloten %szo gesloten"
2412
 
2413
- #: inc/wpsl-functions.php:263
2414
  msgid "Satellite"
2415
  msgstr "Satelliet"
2416
 
2417
- #: inc/wpsl-functions.php:264
2418
  msgid "Hybrid"
2419
  msgstr "Hybrid"
2420
 
2421
- #: inc/wpsl-functions.php:265
2422
  msgid "Terrain"
2423
  msgstr "Terrein"
2424
 
2425
- #: inc/wpsl-functions.php:280
2426
  msgid "(city) (state) (zip code)"
2427
  msgstr "(stad) (provincie) (postcode)"
2428
 
2429
- #: inc/wpsl-functions.php:281
2430
  msgid "(city), (state) (zip code)"
2431
  msgstr "(stad), (provincie), (postcode)"
2432
 
2433
- #: inc/wpsl-functions.php:282
2434
  msgid "(city) (zip code)"
2435
  msgstr "(stad) (postcode)"
2436
 
2437
- #: inc/wpsl-functions.php:283
2438
  msgid "(city), (zip code)"
2439
  msgstr "(stad), (postcode)"
2440
 
2441
- #: inc/wpsl-functions.php:284
2442
  msgid "(zip code) (city) (state)"
2443
  msgstr "(postcode) (stad) (provincie)"
2444
 
2445
- #: inc/wpsl-functions.php:285
2446
  msgid "(zip code) (city)"
2447
  msgstr "(postcode) (stad)"
2448
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2449
  #~ msgid ""
2450
  #~ "This will bias the geocoding results towards the selected region. %s If "
2451
  #~ "no region is selected the bias is set to the United States."
1
  msgid ""
2
  msgstr ""
3
+ "Project-Id-Version: WP Store Locator 2.2\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2016-03-13 11:56+0100\n"
6
+ "PO-Revision-Date: 2016-03-13 13:23+0100\n"
7
  "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "Language: nl_NL\n"
23
  #, php-format
24
  msgid ""
25
  "Before adding the [wpsl] shortcode to a page, please don't forget to define "
 
 
 
 
 
 
 
 
 
26
  "a start point on the %ssettings%s page. %sDismiss%s"
27
  msgstr ""
28
  "Vergeet niet voordat je de [wpsl] shortcode op een pagina plaatst, om een "
29
  "start locatie op te geven op de %sinstellingen%s pagina. %sSluit%s"
30
 
31
+ #: admin/class-admin.php:151 admin/class-admin.php:152
32
+ #: admin/class-admin.php:435 admin/templates/map-settings.php:11
33
  msgid "Settings"
34
  msgstr "Instellingen"
35
 
36
+ #: admin/class-admin.php:158 admin/class-admin.php:159
37
+ #: admin/class-admin.php:455
38
+ msgid "Add-Ons"
39
+ msgstr "Uitbreidingen"
40
+
41
+ #: admin/class-admin.php:293
42
  msgid "Cannot determine the address at this location."
43
  msgstr "Er kan geen adres gevonden worden voor deze locatie."
44
 
45
+ #: admin/class-admin.php:294
46
  msgid "Geocode was not successful for the following reason"
47
  msgstr "Geocode was niet succesvol om de volgende reden"
48
 
49
+ #: admin/class-admin.php:295 admin/upgrade.php:440
50
  msgid "Security check failed, reload the page and try again."
51
  msgstr ""
52
  "Beveiligings controle mislukt, herlaad de pagina en probeer het nog een keer."
53
 
54
+ #: admin/class-admin.php:296
55
  msgid "Please fill in all the required store details."
56
  msgstr "Vul alle verplichte velden in."
57
 
58
+ #: admin/class-admin.php:297
59
  msgid "The map preview requires all the location details."
60
  msgstr ""
61
  "Alle locatie details moeten zijn ingevuld voordat de locatie op de kaart "
62
  "getoond kan worden."
63
 
64
+ #: admin/class-admin.php:298 admin/class-metaboxes.php:525
65
+ #: frontend/class-frontend.php:541
66
  msgid "Closed"
67
+ msgstr "Gesloten"
68
 
69
+ #: admin/class-admin.php:299
70
  msgid "The code for the map style is invalid."
71
  msgstr "De code voor de map stijl is ongeldig."
72
 
73
+ #: admin/class-admin.php:390
74
  msgid "Welcome to WP Store Locator"
75
  msgstr "Welkom bij WP Store Locator"
76
 
77
+ #: admin/class-admin.php:391
78
  msgid "Sign up for the latest plugin updates and announcements."
79
  msgstr "Meld je aan voor de nieuwsbrief en ontvang het laatste nieuws."
80
 
81
+ #: admin/class-admin.php:454
82
  msgid "Documentation"
83
  msgstr "Documentatie"
84
 
85
+ #: admin/class-admin.php:477
 
 
 
 
86
  #, php-format
87
  msgid "If you like this plugin please leave us a %s5 star%s rating."
88
  msgstr "Als je tevreden bent met deze plugin geef het dan %s5 sterren%s."
89
 
90
+ #: admin/class-geocode.php:78
91
  msgid ""
92
  "The Google Geocoding API returned no results for the supplied address. "
93
  "Please change the address and try again."
95
  "De Google Geocoding API gaf geen resultaten terug voor deze locatie. Wijzig "
96
  "de locatie details en probeer het nog een keer."
97
 
98
+ #: admin/class-geocode.php:81
99
  #, php-format
100
  msgid ""
101
  "You have reached the daily allowed geocoding limit, you can read more %shere"
104
  "Je hebt de dagelijkse toegestane geocoding limiet bereikt, je kan er %shier"
105
  "%s meer over lezen."
106
 
107
+ #: admin/class-geocode.php:84
108
  #, php-format
109
  msgid "The Google Geocoding API returned REQUEST_DENIED. %s"
110
  msgstr "Er is een probleem met Google Geocoding API - REQUEST_DENIED. %s"
111
 
112
+ #: admin/class-geocode.php:87
113
  msgid ""
114
  "The Google Geocoding API failed to return valid data, please try again later."
115
  msgstr ""
116
  "De Google Geocoding API geeft ongeldige data terug, probeer het nog een keer."
117
 
118
+ #: admin/class-geocode.php:112
119
  #, php-format
120
  msgid "%sError message: %s"
121
  msgstr "%sFout melding: %s"
122
 
123
+ #: admin/class-geocode.php:133
124
  #, php-format
125
  msgid ""
126
  "Something went wrong connecting to the Google Geocode API: %s %s Please try "
129
  "Er kon geen verbinding gemaakt worden met de Google Geocode API: %s %s "
130
  "Probeer het later nogmaals."
131
 
132
+ #: admin/class-license-manager.php:183
133
+ #, php-format
134
+ msgid ""
135
+ "The %s license failed to deactivate, please try again later or contact "
136
+ "support!"
137
+ msgstr ""
138
+ "Het activeren van %s licensie is mislukt. Probeer het later nog een keer of "
139
+ "neem contact op met support!"
140
+
141
+ #: admin/class-license-manager.php:209 admin/templates/add-ons.php:56
142
+ msgid "Please try again later!"
143
+ msgstr "Probeer het later "
144
+
145
+ #: admin/class-license-manager.php:257
146
+ #, php-format
147
+ msgid "The %s license key does not belong to this add-on."
148
+ msgstr "De %s licensie sleutel hoort bij een andere uitbreiding."
149
+
150
+ #: admin/class-license-manager.php:260
151
+ #, php-format
152
+ msgid "The %s license key does not have any activations left."
153
+ msgstr "De %s licensie sleutel heeft het maximaal aantal activaties bereikt."
154
+
155
+ #: admin/class-license-manager.php:263
156
+ #, php-format
157
+ msgid "The %s license key is expired. Please renew it."
158
+ msgstr "De %s licensie sleutel is verlopen."
159
+
160
+ #: admin/class-license-manager.php:266
161
+ #, php-format
162
+ msgid ""
163
+ "There was a problem activating the license key for the %s, please try again "
164
+ "or contact support. Error code: %s"
165
+ msgstr ""
166
+ "Er is een probleem met het activeren van de licensie sleutel voor de %s. "
167
+ "Probeer het later nog een keer of neem contact op met support. Foutmeldings "
168
+ "code: %s"
169
+
170
  #: admin/class-metaboxes.php:33
171
  msgid "Store Details"
172
  msgstr "Winkel details"
205
 
206
  #: admin/class-metaboxes.php:74
207
  msgid "Latitude"
208
+ msgstr "Breedtegraad"
209
 
210
  #: admin/class-metaboxes.php:77
211
  msgid "Longitude"
216
  msgid "Opening Hours"
217
  msgstr "Openingstijden"
218
 
219
+ #: admin/class-metaboxes.php:82 admin/templates/map-settings.php:534
220
+ #: admin/templates/map-settings.php:535 frontend/underscore-functions.php:159
221
+ #: inc/wpsl-functions.php:145
222
  msgid "Hours"
223
  msgstr "Uren"
224
 
230
  msgid "Tel"
231
  msgstr "Tel."
232
 
233
+ #: admin/class-metaboxes.php:91 admin/templates/map-settings.php:522
234
+ #: admin/templates/map-settings.php:523 frontend/class-frontend.php:789
235
+ #: frontend/underscore-functions.php:32 frontend/underscore-functions.php:66
236
+ #: frontend/underscore-functions.php:149 inc/wpsl-functions.php:142
237
  msgid "Fax"
238
  msgstr "Fax"
239
 
240
+ #: admin/class-metaboxes.php:94 admin/templates/map-settings.php:526
241
+ #: admin/templates/map-settings.php:527 admin/upgrade.php:198
242
+ #: frontend/class-frontend.php:793 frontend/underscore-functions.php:35
243
+ #: frontend/underscore-functions.php:69 frontend/underscore-functions.php:152
244
+ #: inc/wpsl-functions.php:143
245
  msgid "Email"
246
  msgstr "E-mail"
247
 
248
+ #: admin/class-metaboxes.php:97 admin/templates/map-settings.php:530
249
+ #: admin/templates/map-settings.php:531 admin/upgrade.php:202
250
+ #: frontend/class-frontend.php:798 inc/wpsl-functions.php:144
251
  msgid "Url"
252
  msgstr "Url"
253
 
254
+ #: admin/class-metaboxes.php:447
255
  msgid "Hour format"
256
  msgstr "Uur formaat"
257
 
258
+ #: admin/class-metaboxes.php:454
259
  msgid "Days"
260
  msgstr "Dagen"
261
 
262
+ #: admin/class-metaboxes.php:455
263
  msgid "Opening Periods"
264
  msgstr "Openingstijden"
265
 
266
+ #: admin/class-metaboxes.php:703
267
  msgid "Failed to publish the store. Please fill in the required store details."
268
  msgstr ""
269
  "Het publiceren van de winkel is mislukt. Vul alle verplichte velden in."
270
 
271
+ #: admin/class-metaboxes.php:839
272
  msgid "Preview Location"
273
  msgstr "Bekijk voorbeeld"
274
 
275
+ #: admin/class-metaboxes.php:840
276
  #, php-format
277
  msgid ""
278
  "The map preview is based on the provided address, city and country details. "
281
  "Het voorbeeld is gebaseerd op het adres, de stad en het opgegeven land. %s "
282
  "De opgegeven lengte en breedtegraad worden niet gebruikt."
283
 
284
+ #: admin/class-metaboxes.php:841
285
  msgid "You can drag the marker to adjust the exact location of the marker."
286
  msgstr "Je kunt de locatie aanpassen door de marker te verslepen."
287
 
288
+ #: admin/class-metaboxes.php:861 admin/class-metaboxes.php:864
289
  msgid "Store updated."
290
  msgstr "Winkel bijgewerkt."
291
 
292
+ #: admin/class-metaboxes.php:862
293
  msgid "Custom field updated."
294
  msgstr "Custom veld bijgewerkt."
295
 
296
+ #: admin/class-metaboxes.php:863
297
  msgid "Custom field deleted."
298
  msgstr "Custom veld verwijderd."
299
 
300
+ #: admin/class-metaboxes.php:865
301
  #, php-format
302
  msgid "Store restored to revision from %s"
303
  msgstr "Winkel hersteld naar revisie %s"
304
 
305
+ #: admin/class-metaboxes.php:866
306
  msgid "Store published."
307
  msgstr "Winkel gepubliceerd."
308
 
309
+ #: admin/class-metaboxes.php:867
310
  msgid "Store saved."
311
  msgstr "Winkel opgeslagen."
312
 
313
+ #: admin/class-metaboxes.php:868
314
  msgid "Store submitted."
315
  msgstr "Winkel ingediend."
316
 
317
+ #: admin/class-metaboxes.php:870
318
  #, php-format
319
  msgid "Store scheduled for: <strong>%1$s</strong>."
320
  msgstr "Winkel ingepland voor: <strong>%1$s</strong>. "
321
 
322
+ #: admin/class-metaboxes.php:871
323
  msgid "M j, Y @ G:i"
324
  msgstr "M j, Y @ G:i"
325
 
326
+ #: admin/class-metaboxes.php:873
327
  msgid "Store draft updated."
328
  msgstr "Winkel concept bijgewerkt."
329
 
330
+ #: admin/class-metaboxes.php:879
331
  msgid "View store"
332
  msgstr "Bekijk winkel"
333
 
334
+ #: admin/class-metaboxes.php:885
335
  msgid "Preview store"
336
  msgstr "Winkel voorbeeld"
337
 
339
  msgid "WP Store Locator Transients Cleared"
340
  msgstr "WP Store Locator transients verwijderd"
341
 
342
+ #: admin/class-settings.php:397
343
  msgid ""
344
  "The max results field cannot be empty, the default value has been restored."
345
  msgstr ""
346
+ "Het max. zoek resulaten veld kan niet leeg zijn, de standaard waarde is "
347
  "hersteld."
348
 
349
+ #: admin/class-settings.php:400
350
  msgid ""
351
  "The search radius field cannot be empty, the default value has been restored."
352
  msgstr ""
353
  "Het zoek radius veld kan niet leeg zijn, de standaard waarde is hersteld."
354
 
355
+ #: admin/class-settings.php:403
356
  #, php-format
357
  msgid ""
358
  "Please provide the name of a city or country that can be used as a starting "
364
  "automatische achterhalen van de gebruikers locatie mislukt, of het "
365
  "automatische achterhalen is uitgeschakeld."
366
 
367
+ #: admin/class-settings.php:424
368
  msgid "Select your language"
369
  msgstr "Kies uw taal"
370
 
371
+ #: admin/class-settings.php:425
372
  msgid "English"
373
  msgstr "Engels"
374
 
375
+ #: admin/class-settings.php:426
376
  msgid "Arabic"
377
  msgstr "Arabisch"
378
 
379
+ #: admin/class-settings.php:427
380
  msgid "Basque"
381
  msgstr "Bask"
382
 
383
+ #: admin/class-settings.php:428
384
  msgid "Bulgarian"
385
  msgstr "Bulgaars"
386
 
387
+ #: admin/class-settings.php:429
388
  msgid "Bengali"
389
  msgstr "Bengali"
390
 
391
+ #: admin/class-settings.php:430
392
  msgid "Catalan"
393
  msgstr "Catalaans"
394
 
395
+ #: admin/class-settings.php:431
396
  msgid "Czech"
397
  msgstr "Tjechisch"
398
 
399
+ #: admin/class-settings.php:432
400
  msgid "Danish"
401
  msgstr "Deens"
402
 
403
+ #: admin/class-settings.php:433
404
  msgid "German"
405
  msgstr "Duits"
406
 
407
+ #: admin/class-settings.php:434
408
  msgid "Greek"
409
  msgstr "Grieks"
410
 
411
+ #: admin/class-settings.php:435
412
  msgid "English (Australian)"
413
  msgstr "Engels (Australisch)"
414
 
415
+ #: admin/class-settings.php:436
416
  msgid "English (Great Britain)"
417
  msgstr "Engels (Verenigd Koninkrijk)"
418
 
419
+ #: admin/class-settings.php:437
420
  msgid "Spanish"
421
  msgstr "Spaans"
422
 
423
+ #: admin/class-settings.php:438
424
  msgid "Farsi"
425
  msgstr "Farsi"
426
 
427
+ #: admin/class-settings.php:439
428
  msgid "Finnish"
429
  msgstr "Fins"
430
 
431
+ #: admin/class-settings.php:440
432
  msgid "Filipino"
433
  msgstr "Filipijns"
434
 
435
+ #: admin/class-settings.php:441
436
  msgid "French"
437
  msgstr "Frans"
438
 
439
+ #: admin/class-settings.php:442
440
  msgid "Galician"
441
  msgstr "Gallisch"
442
 
443
+ #: admin/class-settings.php:443
444
  msgid "Gujarati"
445
  msgstr "Gujurati"
446
 
447
+ #: admin/class-settings.php:444
448
  msgid "Hindi"
449
  msgstr "Hindi"
450
 
451
+ #: admin/class-settings.php:445
452
  msgid "Croatian"
453
  msgstr "Kroatisch"
454
 
455
+ #: admin/class-settings.php:446
456
  msgid "Hungarian"
457
  msgstr "Hongaars"
458
 
459
+ #: admin/class-settings.php:447
460
  msgid "Indonesian"
461
  msgstr "Indonesisch"
462
 
463
+ #: admin/class-settings.php:448
464
  msgid "Italian"
465
  msgstr "Italiaans"
466
 
467
+ #: admin/class-settings.php:449
468
  msgid "Hebrew"
469
  msgstr "Hebreeuws"
470
 
471
+ #: admin/class-settings.php:450
472
  msgid "Japanese"
473
  msgstr "Japans"
474
 
475
+ #: admin/class-settings.php:451
476
  msgid "Kannada"
477
  msgstr "Kannada"
478
 
479
+ #: admin/class-settings.php:452
480
  msgid "Korean"
481
  msgstr "Koreaans"
482
 
483
+ #: admin/class-settings.php:453
484
  msgid "Lithuanian"
485
  msgstr "Litouws"
486
 
487
+ #: admin/class-settings.php:454
488
  msgid "Latvian"
489
  msgstr "Lets"
490
 
491
+ #: admin/class-settings.php:455
492
  msgid "Malayalam"
493
  msgstr "Malayalam"
494
 
495
+ #: admin/class-settings.php:456
496
  msgid "Marathi"
497
  msgstr "Marathi"
498
 
499
+ #: admin/class-settings.php:457
500
  msgid "Dutch"
501
  msgstr "Nederlands"
502
 
503
+ #: admin/class-settings.php:458
504
  msgid "Norwegian"
505
  msgstr "Noors"
506
 
507
+ #: admin/class-settings.php:459
508
  msgid "Norwegian Nynorsk"
509
  msgstr "Noors Nynorsk"
510
 
511
+ #: admin/class-settings.php:460
512
  msgid "Polish"
513
  msgstr "Pools"
514
 
515
+ #: admin/class-settings.php:461
516
  msgid "Portuguese"
517
  msgstr "Portugees"
518
 
519
+ #: admin/class-settings.php:462
520
  msgid "Portuguese (Brazil)"
521
  msgstr "Portugees (Brazilië)"
522
 
523
+ #: admin/class-settings.php:463
524
  msgid "Portuguese (Portugal)"
525
  msgstr "Portugees (Portugal)"
526
 
527
+ #: admin/class-settings.php:464
528
  msgid "Romanian"
529
  msgstr "Roemeens"
530
 
531
+ #: admin/class-settings.php:465
532
  msgid "Russian"
533
  msgstr "Russisch"
534
 
535
+ #: admin/class-settings.php:466
536
  msgid "Slovak"
537
  msgstr "Slowaaks"
538
 
539
+ #: admin/class-settings.php:467
540
  msgid "Slovenian"
541
  msgstr "Sloveens"
542
 
543
+ #: admin/class-settings.php:468
544
  msgid "Serbian"
545
  msgstr "Servisch"
546
 
547
+ #: admin/class-settings.php:469
548
  msgid "Swedish"
549
  msgstr "Zweeds"
550
 
551
+ #: admin/class-settings.php:470
552
  msgid "Tagalog"
553
  msgstr "Tagalog"
554
 
555
+ #: admin/class-settings.php:471
556
  msgid "Tamil"
557
  msgstr "Tamil"
558
 
559
+ #: admin/class-settings.php:472
560
  msgid "Telugu"
561
  msgstr "Telugu"
562
 
563
+ #: admin/class-settings.php:473
564
  msgid "Thai"
565
  msgstr "Thai"
566
 
567
+ #: admin/class-settings.php:474
568
  msgid "Turkish"
569
  msgstr "Turks"
570
 
571
+ #: admin/class-settings.php:475
572
  msgid "Ukrainian"
573
  msgstr "Oekraïens"
574
 
575
+ #: admin/class-settings.php:476
576
  msgid "Vietnamese"
577
  msgstr "Vietnamees"
578
 
579
+ #: admin/class-settings.php:477
580
  msgid "Chinese (Simplified)"
581
  msgstr "Chinees (Vereenvoudigd)"
582
 
583
+ #: admin/class-settings.php:478
584
  msgid "Chinese (Traditional)"
585
  msgstr "Chinees (Traditioneel)"
586
 
587
+ #: admin/class-settings.php:483
588
  msgid "Select your region"
589
  msgstr "Kies uw regio"
590
 
591
+ #: admin/class-settings.php:484
592
  msgid "Afghanistan"
593
  msgstr "Afghanistan"
594
 
595
+ #: admin/class-settings.php:485
596
  msgid "Albania"
597
  msgstr "Albanië"
598
 
599
+ #: admin/class-settings.php:486
600
  msgid "Algeria"
601
  msgstr "Algerije"
602
 
603
+ #: admin/class-settings.php:487
604
  msgid "American Samoa"
605
  msgstr "Amerikaans Samoa"
606
 
607
+ #: admin/class-settings.php:488
608
  msgid "Andorra"
609
  msgstr "Andorra"
610
 
611
+ #: admin/class-settings.php:489
612
  msgid "Anguilla"
613
  msgstr "Anguilla"
614
 
615
+ #: admin/class-settings.php:490
616
  msgid "Angola"
617
  msgstr "Angola"
618
 
619
+ #: admin/class-settings.php:491
620
  msgid "Antigua and Barbuda"
621
  msgstr "Antigua en Barbuda"
622
 
623
+ #: admin/class-settings.php:492
624
  msgid "Argentina"
625
  msgstr "Argentinië"
626
 
627
+ #: admin/class-settings.php:493
628
  msgid "Armenia"
629
  msgstr "Armenia"
630
 
631
+ #: admin/class-settings.php:494
632
  msgid "Aruba"
633
  msgstr "Aruba"
634
 
635
+ #: admin/class-settings.php:495
636
  msgid "Australia"
637
  msgstr "Australië"
638
 
639
+ #: admin/class-settings.php:496
640
  msgid "Austria"
641
  msgstr "Oostenrijk"
642
 
643
+ #: admin/class-settings.php:497
644
  msgid "Azerbaijan"
645
  msgstr "Azerbeidzjan"
646
 
647
+ #: admin/class-settings.php:498
648
  msgid "Bahamas"
649
  msgstr "Bahamas"
650
 
651
+ #: admin/class-settings.php:499
652
  msgid "Bahrain"
653
  msgstr "Bahrein"
654
 
655
+ #: admin/class-settings.php:500
656
  msgid "Bangladesh"
657
  msgstr "Bangladesh"
658
 
659
+ #: admin/class-settings.php:501
660
  msgid "Barbados"
661
  msgstr "Barbados"
662
 
663
+ #: admin/class-settings.php:502
664
  msgid "Belarus"
665
  msgstr "Wit-Rusland"
666
 
667
+ #: admin/class-settings.php:503
668
  msgid "Belgium"
669
  msgstr "België"
670
 
671
+ #: admin/class-settings.php:504
672
  msgid "Belize"
673
  msgstr "Belize"
674
 
675
+ #: admin/class-settings.php:505
676
  msgid "Benin"
677
  msgstr "Benin"
678
 
679
+ #: admin/class-settings.php:506
680
  msgid "Bermuda"
681
  msgstr "Bermuda"
682
 
683
+ #: admin/class-settings.php:507
684
  msgid "Bhutan"
685
  msgstr "Bhutan"
686
 
687
+ #: admin/class-settings.php:508
688
  msgid "Bolivia"
689
  msgstr "Bolivia"
690
 
691
+ #: admin/class-settings.php:509
692
  msgid "Bosnia and Herzegovina"
693
  msgstr "Bosnia en Herzegovina"
694
 
695
+ #: admin/class-settings.php:510
696
  msgid "Botswana"
697
  msgstr "Botswana"
698
 
699
+ #: admin/class-settings.php:511
700
  msgid "Brazil"
701
  msgstr "Brazilië"
702
 
703
+ #: admin/class-settings.php:512
704
  msgid "British Indian Ocean Territory"
705
  msgstr "Brits Indische Oceaanterritorium"
706
 
707
+ #: admin/class-settings.php:513
708
  msgid "Brunei"
709
  msgstr "Brunei"
710
 
711
+ #: admin/class-settings.php:514
712
  msgid "Bulgaria"
713
  msgstr "Bulgarije"
714
 
715
+ #: admin/class-settings.php:515
716
  msgid "Burkina Faso"
717
  msgstr "Burkina Faso"
718
 
719
+ #: admin/class-settings.php:516
720
  msgid "Burundi"
721
  msgstr "Burundi"
722
 
723
+ #: admin/class-settings.php:517
724
  msgid "Cambodia"
725
  msgstr "Cambodja"
726
 
727
+ #: admin/class-settings.php:518
728
  msgid "Cameroon"
729
  msgstr "Kameroen"
730
 
731
+ #: admin/class-settings.php:519
732
  msgid "Canada"
733
  msgstr "Canada"
734
 
735
+ #: admin/class-settings.php:520
736
  msgid "Cape Verde"
737
  msgstr "Kaapverdië"
738
 
739
+ #: admin/class-settings.php:521
740
  msgid "Cayman Islands"
741
  msgstr "Kaaimaneilanden"
742
 
743
+ #: admin/class-settings.php:522
744
  msgid "Central African Republic"
745
  msgstr "Centraal-Afrikaanse Republiek"
746
 
747
+ #: admin/class-settings.php:523
748
  msgid "Chad"
749
  msgstr "Chad"
750
 
751
+ #: admin/class-settings.php:524
752
  msgid "Chile"
753
  msgstr "Chili"
754
 
755
+ #: admin/class-settings.php:525
756
  msgid "China"
757
  msgstr "China"
758
 
759
+ #: admin/class-settings.php:526
760
  msgid "Christmas Island"
761
  msgstr "Christmaseiland"
762
 
763
+ #: admin/class-settings.php:527
764
  msgid "Cocos Islands"
765
  msgstr "Cocoseilanden"
766
 
767
+ #: admin/class-settings.php:528
768
  msgid "Colombia"
769
  msgstr "Colombia"
770
 
771
+ #: admin/class-settings.php:529
772
  msgid "Comoros"
773
  msgstr "Comoren"
774
 
775
+ #: admin/class-settings.php:530
776
  msgid "Congo"
777
  msgstr "Congo"
778
 
779
+ #: admin/class-settings.php:531
780
  msgid "Costa Rica"
781
  msgstr "Costa Rica"
782
 
783
+ #: admin/class-settings.php:532
784
  msgid "Côte d'Ivoire"
785
  msgstr "Ivoorkust"
786
 
787
+ #: admin/class-settings.php:533
788
  msgid "Croatia"
789
  msgstr "Kroatië"
790
 
791
+ #: admin/class-settings.php:534
792
  msgid "Cuba"
793
  msgstr "Cuba"
794
 
795
+ #: admin/class-settings.php:535
796
  msgid "Czech Republic"
797
  msgstr "Tsjechië"
798
 
799
+ #: admin/class-settings.php:536
800
  msgid "Denmark"
801
  msgstr "Denemarken"
802
 
803
+ #: admin/class-settings.php:537
804
  msgid "Djibouti"
805
  msgstr "Djibouti"
806
 
807
+ #: admin/class-settings.php:538
808
  msgid "Democratic Republic of the Congo"
809
  msgstr "Democratische Republiek Congo"
810
 
811
+ #: admin/class-settings.php:539
812
  msgid "Dominica"
813
  msgstr "Dominica"
814
 
815
+ #: admin/class-settings.php:540
816
  msgid "Dominican Republic"
817
  msgstr "Dominicaanse Republiek"
818
 
819
+ #: admin/class-settings.php:541
820
  msgid "Ecuador"
821
  msgstr "Ecuador"
822
 
823
+ #: admin/class-settings.php:542
824
  msgid "Egypt"
825
  msgstr "Egypte"
826
 
827
+ #: admin/class-settings.php:543
828
  msgid "El Salvador"
829
  msgstr "El Salvador"
830
 
831
+ #: admin/class-settings.php:544
832
  msgid "Equatorial Guinea"
833
  msgstr "Equatoriaal-Guinea"
834
 
835
+ #: admin/class-settings.php:545
836
  msgid "Eritrea"
837
  msgstr "Eritrea"
838
 
839
+ #: admin/class-settings.php:546
840
  msgid "Estonia"
841
  msgstr "Estland"
842
 
843
+ #: admin/class-settings.php:547
844
  msgid "Ethiopia"
845
  msgstr "Ethiopië"
846
 
847
+ #: admin/class-settings.php:548
848
  msgid "Fiji"
849
  msgstr "Fiji"
850
 
851
+ #: admin/class-settings.php:549
852
  msgid "Finland"
853
  msgstr "Finland"
854
 
855
+ #: admin/class-settings.php:550
856
  msgid "France"
857
  msgstr "Frankrijk"
858
 
859
+ #: admin/class-settings.php:551
860
  msgid "French Guiana"
861
  msgstr "Frans Guyana"
862
 
863
+ #: admin/class-settings.php:552
864
  msgid "Gabon"
865
  msgstr "Gabon"
866
 
867
+ #: admin/class-settings.php:553
868
  msgid "Gambia"
869
  msgstr "Gambia"
870
 
871
+ #: admin/class-settings.php:554
872
  msgid "Germany"
873
  msgstr "Duitsland"
874
 
875
+ #: admin/class-settings.php:555
876
  msgid "Ghana"
877
  msgstr "Ghana"
878
 
879
+ #: admin/class-settings.php:556
880
  msgid "Greenland"
881
  msgstr "Groenland"
882
 
883
+ #: admin/class-settings.php:557
884
  msgid "Greece"
885
  msgstr "Griekenland"
886
 
887
+ #: admin/class-settings.php:558
888
  msgid "Grenada"
889
  msgstr "Grenada"
890
 
891
+ #: admin/class-settings.php:559
892
  msgid "Guam"
893
  msgstr "Guam"
894
 
895
+ #: admin/class-settings.php:560
896
  msgid "Guadeloupe"
897
  msgstr "Guadeloupe"
898
 
899
+ #: admin/class-settings.php:561
900
  msgid "Guatemala"
901
  msgstr "Guatemala"
902
 
903
+ #: admin/class-settings.php:562
904
  msgid "Guinea"
905
  msgstr "Guinee"
906
 
907
+ #: admin/class-settings.php:563
908
  msgid "Guinea-Bissau"
909
  msgstr "Guinee-Bissau"
910
 
911
+ #: admin/class-settings.php:564
912
  msgid "Haiti"
913
  msgstr "Haïti"
914
 
915
+ #: admin/class-settings.php:565
916
  msgid "Honduras"
917
  msgstr "Honduras"
918
 
919
+ #: admin/class-settings.php:566
920
  msgid "Hong Kong"
921
  msgstr "Hong Kong"
922
 
923
+ #: admin/class-settings.php:567
924
  msgid "Hungary"
925
  msgstr "Hongarije"
926
 
927
+ #: admin/class-settings.php:568
928
  msgid "Iceland"
929
  msgstr "IJsland"
930
 
931
+ #: admin/class-settings.php:569
932
  msgid "India"
933
  msgstr "India"
934
 
935
+ #: admin/class-settings.php:570
936
  msgid "Indonesia"
937
  msgstr "Indonesië"
938
 
939
+ #: admin/class-settings.php:571
940
  msgid "Iran"
941
  msgstr "Iran"
942
 
943
+ #: admin/class-settings.php:572
944
  msgid "Iraq"
945
  msgstr "Irak"
946
 
947
+ #: admin/class-settings.php:573
948
  msgid "Ireland"
949
  msgstr "Ierland"
950
 
951
+ #: admin/class-settings.php:574
952
  msgid "Israel"
953
  msgstr "Israël"
954
 
955
+ #: admin/class-settings.php:575
956
  msgid "Italy"
957
  msgstr "Italië"
958
 
959
+ #: admin/class-settings.php:576
960
  msgid "Jamaica"
961
  msgstr "Jamaica"
962
 
963
+ #: admin/class-settings.php:577
964
  msgid "Japan"
965
  msgstr "Japan"
966
 
967
+ #: admin/class-settings.php:578
968
  msgid "Jordan"
969
  msgstr "Jordanië"
970
 
971
+ #: admin/class-settings.php:579
972
  msgid "Kazakhstan"
973
  msgstr "Kazachstan"
974
 
975
+ #: admin/class-settings.php:580
976
  msgid "Kenya"
977
  msgstr "Kenia"
978
 
979
+ #: admin/class-settings.php:581
980
  msgid "Kuwait"
981
  msgstr "Koeweit"
982
 
983
+ #: admin/class-settings.php:582
984
  msgid "Kyrgyzstan"
985
  msgstr "Kirgizië"
986
 
987
+ #: admin/class-settings.php:583
988
  msgid "Laos"
989
  msgstr "Laos"
990
 
991
+ #: admin/class-settings.php:584
992
  msgid "Latvia"
993
  msgstr "Letland"
994
 
995
+ #: admin/class-settings.php:585
996
  msgid "Lebanon"
997
  msgstr "Libanon"
998
 
999
+ #: admin/class-settings.php:586
1000
  msgid "Lesotho"
1001
  msgstr "Lesotho"
1002
 
1003
+ #: admin/class-settings.php:587
1004
  msgid "Liberia"
1005
  msgstr "Liberia"
1006
 
1007
+ #: admin/class-settings.php:588
1008
  msgid "Libya"
1009
  msgstr "Libië"
1010
 
1011
+ #: admin/class-settings.php:589
1012
  msgid "Liechtenstein"
1013
  msgstr "Liechtenstein"
1014
 
1015
+ #: admin/class-settings.php:590
1016
  msgid "Lithuania"
1017
  msgstr "Litouwen"
1018
 
1019
+ #: admin/class-settings.php:591
1020
  msgid "Luxembourg"
1021
  msgstr "Luxemburg"
1022
 
1023
+ #: admin/class-settings.php:592
1024
  msgid "Macau"
1025
  msgstr "Macau"
1026
 
1027
+ #: admin/class-settings.php:593
1028
  msgid "Macedonia"
1029
  msgstr "Macedonië"
1030
 
1031
+ #: admin/class-settings.php:594
1032
  msgid "Madagascar"
1033
  msgstr "Madagascar"
1034
 
1035
+ #: admin/class-settings.php:595
1036
  msgid "Malawi"
1037
  msgstr "Malawi"
1038
 
1039
+ #: admin/class-settings.php:596
1040
  msgid "Malaysia "
1041
  msgstr "Maleisie"
1042
 
1043
+ #: admin/class-settings.php:597
1044
  msgid "Mali"
1045
  msgstr "Mali"
1046
 
1047
+ #: admin/class-settings.php:598
1048
  msgid "Marshall Islands"
1049
  msgstr "Marshalleilanden"
1050
 
1051
+ #: admin/class-settings.php:599
1052
  msgid "Martinique"
1053
  msgstr "Martinique"
1054
 
1055
+ #: admin/class-settings.php:600
1056
  msgid "Mauritania"
1057
  msgstr "Mauritanië"
1058
 
1059
+ #: admin/class-settings.php:601
1060
  msgid "Mauritius"
1061
  msgstr "Mauritius"
1062
 
1063
+ #: admin/class-settings.php:602
1064
  msgid "Mexico"
1065
  msgstr "Mexico"
1066
 
1067
+ #: admin/class-settings.php:603
1068
  msgid "Micronesia"
1069
  msgstr "Micronesia"
1070
 
1071
+ #: admin/class-settings.php:604
1072
  msgid "Moldova"
1073
  msgstr "Moldavië"
1074
 
1075
+ #: admin/class-settings.php:605
1076
  msgid "Monaco"
1077
  msgstr "Monaco"
1078
 
1079
+ #: admin/class-settings.php:606
1080
  msgid "Mongolia"
1081
  msgstr "Mongolië"
1082
 
1083
+ #: admin/class-settings.php:607
1084
  msgid "Montenegro"
1085
  msgstr "Montenegro"
1086
 
1087
+ #: admin/class-settings.php:608
1088
  msgid "Montserrat"
1089
  msgstr "Montserrat "
1090
 
1091
+ #: admin/class-settings.php:609
1092
  msgid "Morocco"
1093
  msgstr "Marokko"
1094
 
1095
+ #: admin/class-settings.php:610
1096
  msgid "Mozambique"
1097
  msgstr "Mozambique"
1098
 
1099
+ #: admin/class-settings.php:611
1100
  msgid "Myanmar"
1101
  msgstr "Myanmar"
1102
 
1103
+ #: admin/class-settings.php:612
1104
  msgid "Namibia"
1105
  msgstr "Namibië"
1106
 
1107
+ #: admin/class-settings.php:613
1108
  msgid "Nauru"
1109
  msgstr "Nauru"
1110
 
1111
+ #: admin/class-settings.php:614
1112
  msgid "Nepal"
1113
  msgstr "Nepal"
1114
 
1115
+ #: admin/class-settings.php:615
1116
  msgid "Netherlands"
1117
  msgstr "Nederland"
1118
 
1119
+ #: admin/class-settings.php:616
1120
  msgid "Netherlands Antilles"
1121
  msgstr "Nederlandse Antillen"
1122
 
1123
+ #: admin/class-settings.php:617
1124
  msgid "New Zealand"
1125
  msgstr "Nieuw Zeeland"
1126
 
1127
+ #: admin/class-settings.php:618
1128
  msgid "Nicaragua"
1129
  msgstr "Nicaragua"
1130
 
1131
+ #: admin/class-settings.php:619
1132
  msgid "Niger"
1133
  msgstr "Niger"
1134
 
1135
+ #: admin/class-settings.php:620
1136
  msgid "Nigeria"
1137
  msgstr "Nigeria"
1138
 
1139
+ #: admin/class-settings.php:621
1140
  msgid "Niue"
1141
  msgstr "Niue"
1142
 
1143
+ #: admin/class-settings.php:622
1144
  msgid "Northern Mariana Islands"
1145
  msgstr "Noordelijke Marianen"
1146
 
1147
+ #: admin/class-settings.php:623
1148
  msgid "Norway"
1149
  msgstr "Noorwegen"
1150
 
1151
+ #: admin/class-settings.php:624
1152
  msgid "Oman"
1153
  msgstr "Oman"
1154
 
1155
+ #: admin/class-settings.php:625
1156
  msgid "Pakistan"
1157
  msgstr "Pakistan"
1158
 
1159
+ #: admin/class-settings.php:626
1160
  msgid "Panama"
1161
  msgstr "Panama"
1162
 
1163
+ #: admin/class-settings.php:627
1164
  msgid "Papua New Guinea"
1165
  msgstr "Papoea-Nieuw-Guinea"
1166
 
1167
+ #: admin/class-settings.php:628
1168
  msgid "Paraguay"
1169
  msgstr "Paraguay"
1170
 
1171
+ #: admin/class-settings.php:629
1172
  msgid "Peru"
1173
  msgstr "Peru"
1174
 
1175
+ #: admin/class-settings.php:630
1176
  msgid "Philippines"
1177
  msgstr "Filipijnen"
1178
 
1179
+ #: admin/class-settings.php:631
1180
  msgid "Pitcairn Islands"
1181
  msgstr "Pitcairneilanden"
1182
 
1183
+ #: admin/class-settings.php:632
1184
  msgid "Poland"
1185
  msgstr "Polen"
1186
 
1187
+ #: admin/class-settings.php:633
1188
  msgid "Portugal"
1189
  msgstr "Portugal"
1190
 
1191
+ #: admin/class-settings.php:634
1192
  msgid "Qatar"
1193
  msgstr "Qatar"
1194
 
1195
+ #: admin/class-settings.php:635
1196
  msgid "Reunion"
1197
  msgstr "Réunion"
1198
 
1199
+ #: admin/class-settings.php:636
1200
  msgid "Romania"
1201
  msgstr "Roemenië"
1202
 
1203
+ #: admin/class-settings.php:637
1204
  msgid "Russia"
1205
  msgstr "Rusland"
1206
 
1207
+ #: admin/class-settings.php:638
1208
  msgid "Rwanda"
1209
  msgstr "Rwanda"
1210
 
1211
+ #: admin/class-settings.php:639
1212
  msgid "Saint Helena"
1213
  msgstr "Sint-Helena"
1214
 
1215
+ #: admin/class-settings.php:640
1216
  msgid "Saint Kitts and Nevis"
1217
  msgstr "Saint Kitts en Nevis"
1218
 
1219
+ #: admin/class-settings.php:641
1220
  msgid "Saint Vincent and the Grenadines"
1221
  msgstr "Saint Vincent en de Grenadines"
1222
 
1223
+ #: admin/class-settings.php:642
1224
  msgid "Saint Lucia"
1225
  msgstr "Saint Lucia"
1226
 
1227
+ #: admin/class-settings.php:643
1228
  msgid "Samoa"
1229
  msgstr "Samoa"
1230
 
1231
+ #: admin/class-settings.php:644
1232
  msgid "San Marino"
1233
  msgstr "San Marino"
1234
 
1235
+ #: admin/class-settings.php:645
1236
  msgid "São Tomé and Príncipe"
1237
  msgstr "Sao Tomé en Principe"
1238
 
1239
+ #: admin/class-settings.php:646
1240
  msgid "Saudi Arabia"
1241
  msgstr "Saoedi-Arabië"
1242
 
1243
+ #: admin/class-settings.php:647
1244
  msgid "Senegal"
1245
  msgstr "Senegal"
1246
 
1247
+ #: admin/class-settings.php:648
1248
  msgid "Serbia"
1249
  msgstr "Servië"
1250
 
1251
+ #: admin/class-settings.php:649
1252
  msgid "Seychelles"
1253
  msgstr "Seychellen"
1254
 
1255
+ #: admin/class-settings.php:650
1256
  msgid "Sierra Leone"
1257
  msgstr "Sierra Leone"
1258
 
1259
+ #: admin/class-settings.php:651
1260
  msgid "Singapore"
1261
  msgstr "Singapore"
1262
 
1263
+ #: admin/class-settings.php:652
1264
  msgid "Slovakia"
1265
  msgstr "Slowakije"
1266
 
1267
+ #: admin/class-settings.php:653
1268
  msgid "Solomon Islands"
1269
  msgstr "Salomonseilanden"
1270
 
1271
+ #: admin/class-settings.php:654
1272
  msgid "Somalia"
1273
  msgstr "Somalie"
1274
 
1275
+ #: admin/class-settings.php:655
1276
  msgid "South Africa"
1277
  msgstr "Zuid Afrika"
1278
 
1279
+ #: admin/class-settings.php:656
1280
  msgid "South Korea"
1281
  msgstr "Zuid Korea"
1282
 
1283
+ #: admin/class-settings.php:657
1284
  msgid "Spain"
1285
  msgstr "Spanje"
1286
 
1287
+ #: admin/class-settings.php:658
1288
  msgid "Sri Lanka"
1289
  msgstr "Sri Lanka"
1290
 
1291
+ #: admin/class-settings.php:659
1292
  msgid "Sudan"
1293
  msgstr "Sudan"
1294
 
1295
+ #: admin/class-settings.php:660
1296
  msgid "Swaziland"
1297
  msgstr "Swaziland "
1298
 
1299
+ #: admin/class-settings.php:661
1300
  msgid "Sweden"
1301
  msgstr "Zweden"
1302
 
1303
+ #: admin/class-settings.php:662
1304
  msgid "Switzerland"
1305
  msgstr "Zwitserland"
1306
 
1307
+ #: admin/class-settings.php:663
1308
  msgid "Syria"
1309
  msgstr "Syrië"
1310
 
1311
+ #: admin/class-settings.php:664
1312
  msgid "Taiwan"
1313
  msgstr "Taiwan"
1314
 
1315
+ #: admin/class-settings.php:665
1316
  msgid "Tajikistan"
1317
  msgstr "Tajikistan"
1318
 
1319
+ #: admin/class-settings.php:666
1320
  msgid "Tanzania"
1321
  msgstr "Tanzania"
1322
 
1323
+ #: admin/class-settings.php:667
1324
  msgid "Thailand"
1325
  msgstr "Thailand"
1326
 
1327
+ #: admin/class-settings.php:668
1328
  msgid "Timor-Leste"
1329
  msgstr "Oost-Timor"
1330
 
1331
+ #: admin/class-settings.php:669
1332
  msgid "Tokelau"
1333
  msgstr "Tokelau"
1334
 
1335
+ #: admin/class-settings.php:670
1336
  msgid "Togo"
1337
  msgstr "Togo"
1338
 
1339
+ #: admin/class-settings.php:671
1340
  msgid "Tonga"
1341
  msgstr "Tonga"
1342
 
1343
+ #: admin/class-settings.php:672
1344
  msgid "Trinidad and Tobago"
1345
  msgstr "Trinidad en Tobago"
1346
 
1347
+ #: admin/class-settings.php:673
1348
  msgid "Tunisia"
1349
  msgstr "Tunesië"
1350
 
1351
+ #: admin/class-settings.php:674
1352
  msgid "Turkey"
1353
  msgstr "Turkije"
1354
 
1355
+ #: admin/class-settings.php:675
1356
  msgid "Turkmenistan"
1357
  msgstr "Turkmenistan"
1358
 
1359
+ #: admin/class-settings.php:676
1360
  msgid "Tuvalu"
1361
  msgstr "Tuvalu"
1362
 
1363
+ #: admin/class-settings.php:677
1364
  msgid "Uganda"
1365
  msgstr "Uganda"
1366
 
1367
+ #: admin/class-settings.php:678
1368
  msgid "Ukraine"
1369
  msgstr "Oekraïne"
1370
 
1371
+ #: admin/class-settings.php:679
1372
  msgid "United Arab Emirates"
1373
  msgstr "Verenigde Arabische Emiraten"
1374
 
1375
+ #: admin/class-settings.php:680
1376
  msgid "United Kingdom"
1377
  msgstr "Verenigd Koninkrijk"
1378
 
1379
+ #: admin/class-settings.php:681
1380
  msgid "United States"
1381
  msgstr "Verenigde Staten"
1382
 
1383
+ #: admin/class-settings.php:682
1384
  msgid "Uruguay"
1385
  msgstr "Uruguay"
1386
 
1387
+ #: admin/class-settings.php:683
1388
  msgid "Uzbekistan"
1389
  msgstr "Uzbekistan"
1390
 
1391
+ #: admin/class-settings.php:684
1392
  msgid "Wallis Futuna"
1393
  msgstr "Wallis en Futuna"
1394
 
1395
+ #: admin/class-settings.php:685
1396
  msgid "Venezuela"
1397
  msgstr "Venezuela"
1398
 
1399
+ #: admin/class-settings.php:686
1400
  msgid "Vietnam"
1401
  msgstr "Vietnam"
1402
 
1403
+ #: admin/class-settings.php:687
1404
  msgid "Yemen"
1405
  msgstr "Yemen"
1406
 
1407
+ #: admin/class-settings.php:688
1408
  msgid "Zambia"
1409
  msgstr "Zambia"
1410
 
1411
+ #: admin/class-settings.php:689
1412
  msgid "Zimbabwe"
1413
  msgstr "Zimbabwe"
1414
 
1415
+ #: admin/class-settings.php:732
1416
  msgid "World view"
1417
+ msgstr "Wereldkaart"
1418
 
1419
+ #: admin/class-settings.php:735 admin/class-settings.php:849
1420
+ #: inc/wpsl-functions.php:211
1421
  msgid "Default"
1422
+ msgstr "Standaard"
1423
 
1424
+ #: admin/class-settings.php:738 inc/wpsl-functions.php:284
1425
  msgid "Roadmap"
1426
+ msgstr "Wegenkaart"
1427
 
1428
+ #: admin/class-settings.php:879
1429
  msgid "Start location marker"
1430
  msgstr "Start locatie marker"
1431
 
1432
+ #: admin/class-settings.php:881
1433
  msgid "Store location marker"
1434
  msgstr "Winkel locatie marker"
1435
 
1436
+ #: admin/class-settings.php:963
1437
  msgid "Textarea"
1438
+ msgstr "Tekstvlak"
1439
 
1440
+ #: admin/class-settings.php:964
1441
  msgid "Dropdowns (recommended)"
1442
+ msgstr "Dropdown (aangeraden)"
1443
 
1444
+ #: admin/class-settings.php:972
1445
  msgid "Bounces up and down"
1446
+ msgstr "Beweegt op en neer"
1447
 
1448
+ #: admin/class-settings.php:973
1449
  msgid "Will open the info window"
1450
+ msgstr "Opent de info window"
1451
 
1452
+ #: admin/class-settings.php:974
1453
  msgid "Does not respond"
1454
+ msgstr "Reageert niet"
1455
 
1456
+ #: admin/class-settings.php:982
1457
  msgid "In the store listings"
1458
  msgstr "In de locatie lijst"
1459
 
1460
+ #: admin/class-settings.php:983
1461
  msgid "In the info window on the map"
1462
  msgstr "In de info window op de kaart"
1463
 
1464
+ #: admin/class-settings.php:1015
1465
+ msgid "Dropdown"
1466
+ msgstr "Dropdown"
1467
+
1468
+ #: admin/class-settings.php:1016
1469
+ msgid "Checkboxes"
1470
+ msgstr "Checkboxes"
1471
+
1472
+ #: admin/class-settings.php:1048
1473
  msgid "12 Hours"
1474
  msgstr "12 uur"
1475
 
1476
+ #: admin/class-settings.php:1049
1477
  msgid "24 Hours"
1478
  msgstr "24 uur"
1479
 
1481
  msgid "Store Locator Manager"
1482
  msgstr "Store Locator Beheerder"
1483
 
1484
+ #: admin/templates/add-ons.php:21
1485
+ msgid "WP Store Locator Add-Ons"
1486
+ msgstr "WP Store Locator Uitbreidingen"
1487
+
1488
+ #: admin/templates/add-ons.php:41
1489
+ msgid "Already Installed."
1490
+ msgstr "Is al geinstalleerd."
1491
+
1492
+ #: admin/templates/add-ons.php:43
1493
+ msgid "Coming soon!"
1494
+ msgstr "Binnenkort beschikbaar!"
1495
+
1496
+ #: admin/templates/add-ons.php:55
1497
+ msgid "Failed to load the add-on list from the server."
1498
+ msgstr "De add-on lijst kon niet geladen worden van de server."
1499
+
1500
+ #: admin/templates/map-settings.php:43
1501
+ msgid "Add-On"
1502
+ msgstr "Uitbreiding"
1503
+
1504
+ #: admin/templates/map-settings.php:44
1505
+ msgid "License Key"
1506
+ msgstr "Licensie sleutel"
1507
+
1508
+ #: admin/templates/map-settings.php:45
1509
+ msgid "License Expiry Date"
1510
+ msgstr "Verloop datum licensie "
1511
+
1512
+ #: admin/templates/map-settings.php:59
1513
+ msgid "Deactivate License"
1514
+ msgstr "Deactiveer licensie"
1515
+
1516
+ #: admin/templates/map-settings.php:79 admin/templates/map-settings.php:118
1517
+ #: admin/templates/map-settings.php:170 admin/templates/map-settings.php:249
1518
+ #: admin/templates/map-settings.php:352 admin/templates/map-settings.php:380
1519
+ #: admin/templates/map-settings.php:430 admin/templates/map-settings.php:458
1520
+ #: admin/templates/map-settings.php:570 admin/templates/map-settings.php:591
1521
+ msgid "Save Changes"
1522
+ msgstr "Wijzigingen opslaan"
1523
+
1524
+ #: admin/templates/map-settings.php:91
1525
  msgid "Google Maps API"
1526
  msgstr "Google Maps API"
1527
 
1528
+ #: admin/templates/map-settings.php:94
1529
+ msgid "Server key"
1530
+ msgstr "Server sleutel"
1531
 
1532
+ #: admin/templates/map-settings.php:94
1533
  #, php-format
1534
  msgid ""
1535
+ "A %sserver key%s allows you to monitor the usage of the Google Maps "
1536
+ "%sGeocoding API%s, and is required if you need to %spurchase%s additional "
1537
+ "quota."
1538
  msgstr ""
1539
+ "Een %sserver sleutel%s maakt het mogelijk om het gebruik van de Google Maps "
1540
+ "%sGeocoding API%s in de gaten te houden, en is verplicht als je de %slimiet"
1541
+ "%s wil verhogen."
1542
 
1543
+ #: admin/templates/map-settings.php:95 admin/templates/map-settings.php:99
1544
  msgid "Optional"
1545
  msgstr "Optioneel"
1546
 
1547
+ #: admin/templates/map-settings.php:98
1548
+ msgid "Browser key"
1549
+ msgstr "Browser sleutel"
1550
+
1551
+ #: admin/templates/map-settings.php:98
1552
+ #, php-format
1553
+ msgid ""
1554
+ "A %sbrowser key%s allows you to monitor the usage of the Google Maps "
1555
+ "%sJavaScript API%s."
1556
+ msgstr ""
1557
+ "Een %sbrowser key%s maakt het mogelijk om het gebruik van de Google "
1558
+ "%sJavaScript API%s in de gaten te houden."
1559
+
1560
+ #: admin/templates/map-settings.php:102
1561
  msgid "Map language"
1562
  msgstr "Kaart taal"
1563
 
1564
+ #: admin/templates/map-settings.php:102
1565
  msgid "If no map language is selected the browser's prefered language is used."
1566
  msgstr ""
1567
  "Als er geen kaart taal is geselecteerd, dan word de standaard browser taal "
1568
  "gebruikt."
1569
 
1570
+ #: admin/templates/map-settings.php:108
1571
  msgid "Map region"
1572
  msgstr "Kaart regio"
1573
 
1574
+ #: admin/templates/map-settings.php:108
1575
  #, php-format
1576
  msgid ""
1577
  "This will bias the %sgeocoding%s results towards the selected region. %s If "
1581
  "voorkeur krijgen over resultaten uit andere regio's . %s Als er geen regio "
1582
  "is geselecteerd dan gaat de voorkeur uit naar de Verenigde Staten."
1583
 
1584
+ #: admin/templates/map-settings.php:114
1585
  msgid "Restrict the geocoding results to the selected map region?"
1586
  msgstr "Limiteer de geocode resultaten tot de geselecteerde map regio?"
1587
 
1588
+ #: admin/templates/map-settings.php:114
1589
  #, php-format
1590
  msgid ""
1591
  "If the %sgeocoding%s API finds more relevant results outside of the set map "
1600
  "Om dit uit te sluiten kan je een restrictie plaatsen om dit te voorkomen. "
1601
  "%s Je kan de gebruikte restricties aanpassen met %sdeze%s filter."
1602
 
1603
+ #: admin/templates/map-settings.php:128 admin/templates/map-settings.php:494
1604
+ #: admin/templates/map-settings.php:495 frontend/templates/default.php:40
1605
+ #: frontend/templates/store-listings-below.php:44 inc/wpsl-functions.php:128
 
 
 
 
 
 
 
 
1606
  msgid "Search"
1607
  msgstr "Zoek"
1608
 
1609
+ #: admin/templates/map-settings.php:131
1610
+ msgid "Enable autocomplete?"
1611
+ msgstr "Activeer autocomplete?"
1612
+
1613
+ #: admin/templates/map-settings.php:135
1614
  msgid "Show the max results dropdown?"
1615
  msgstr "Toon de max resultaten dropdown?"
1616
 
1617
+ #: admin/templates/map-settings.php:139
1618
  msgid "Show the search radius dropdown?"
1619
  msgstr "Toon de zoek radius dropdown?"
1620
 
1621
+ #: admin/templates/map-settings.php:143
1622
+ msgid "Enable category filters?"
1623
+ msgstr "Activeer de categorie filters?"
1624
+
1625
+ #: admin/templates/map-settings.php:148
1626
+ msgid "Filter type:"
1627
+ msgstr "Filter type:"
1628
 
1629
+ #: admin/templates/map-settings.php:153
1630
  msgid "Distance unit"
1631
  msgstr "Afstands eenheid"
1632
 
1633
+ #: admin/templates/map-settings.php:156
1634
  msgid "km"
1635
  msgstr "km"
1636
 
1637
+ #: admin/templates/map-settings.php:158
1638
  msgid "mi"
1639
  msgstr "mi"
1640
 
1641
+ #: admin/templates/map-settings.php:162
1642
  msgid "Max search results"
1643
  msgstr "Max zoek resultaten"
1644
 
1645
+ #: admin/templates/map-settings.php:162 admin/templates/map-settings.php:166
1646
  msgid "The default value is set between the [ ]."
1647
  msgstr "* De standaard waarde staat tussen de []."
1648
 
1649
+ #: admin/templates/map-settings.php:166
1650
  msgid "Search radius options"
1651
  msgstr "Zoek radius opties"
1652
 
1653
+ #: admin/templates/map-settings.php:180
1654
  msgid "Map"
1655
  msgstr "Kaart"
1656
 
1657
+ #: admin/templates/map-settings.php:183
1658
  msgid "Attempt to auto-locate the user"
1659
  msgstr "Probeer de locatie van de gebruiker automatische te achterhalen"
1660
 
1661
+ #: admin/templates/map-settings.php:187
1662
  msgid "Load locations on page load"
1663
  msgstr "Toon alle locaties op de kaart zodra de pagina geladen is"
1664
 
1665
+ #: admin/templates/map-settings.php:192
1666
  msgid "Number of locations to show"
1667
  msgstr "Aantal getoonde locaties"
1668
 
1669
+ #: admin/templates/map-settings.php:192
1670
  #, php-format
1671
  msgid ""
1672
  "Although the location data is cached after the first load, a lower number "
1679
  "Als het veld leeg blijft of er wordt 0 ingevuld, dan worden alle locaties "
1680
  "geladen."
1681
 
1682
+ #: admin/templates/map-settings.php:197
1683
  msgid "Start point"
1684
  msgstr "Start locatie"
1685
 
1686
+ #: admin/templates/map-settings.php:197
1687
  #, php-format
1688
  msgid ""
1689
  "%sRequired field.%s %s If auto-locating the user is disabled or fails, the "
1694
  "locatie is uitgeschakeld of mislukt, dan wordt het middelpunt van de "
1695
  "opgegeven locatie als begin punt gebruikt."
1696
 
1697
+ #: admin/templates/map-settings.php:202
1698
  msgid "Initial zoom level"
1699
  msgstr "Start zoom niveau"
1700
 
1701
+ #: admin/templates/map-settings.php:206
1702
  msgid "Max auto zoom level"
1703
  msgstr "Max zoom niveau"
1704
 
1705
+ #: admin/templates/map-settings.php:206
1706
  #, php-format
1707
  msgid ""
1708
  "This value sets the zoom level for the \"Zoom here\" link in the info "
1714
  "limiteren als de viewport van de kaart verandert, wanneer geprobeerd wordt "
1715
  "om alle markers op het scherm te laten passen."
1716
 
1717
+ #: admin/templates/map-settings.php:210
1718
  msgid "Show the street view controls?"
1719
  msgstr "Toon de street view controls?"
1720
 
1721
+ #: admin/templates/map-settings.php:214
1722
  msgid "Show the map type control?"
1723
  msgstr "Toon de kaart type controls?"
1724
 
1725
+ #: admin/templates/map-settings.php:218
1726
  msgid "Enable scroll wheel zooming?"
1727
  msgstr "Activeer het inzoomen met je scrollwheel?"
1728
 
1729
+ #: admin/templates/map-settings.php:222
1730
  msgid "Zoom control position"
1731
  msgstr "Zoom bediening positie"
1732
 
1733
+ #: admin/templates/map-settings.php:225
1734
  msgid "Left"
1735
+ msgstr "Links"
1736
 
1737
+ #: admin/templates/map-settings.php:227
1738
  msgid "Right"
1739
+ msgstr "Rechts"
1740
 
1741
+ #: admin/templates/map-settings.php:231
1742
  msgid "Map type"
1743
  msgstr "Kaart soort"
1744
 
1745
+ #: admin/templates/map-settings.php:235
1746
  msgid "Map style"
1747
  msgstr "Kaart stijl"
1748
 
1749
+ #: admin/templates/map-settings.php:235
1750
  msgid ""
1751
  "Custom map styles only work if the map type is set to \"Roadmap\" or "
1752
  "\"Terrain\"."
1754
  "Custom map stijlen werken alleen maar als de kaart soort op \"Wegenkaart\" "
1755
  "of \"Terrein\" is gezet."
1756
 
1757
+ #: admin/templates/map-settings.php:238
1758
  #, php-format
1759
  msgid ""
1760
  "You can use existing map styles from %sSnazzy Maps%s or %sMap Stylr%s and "
1761
  "paste it in the textarea below, or you can generate a custom map style "
1762
  "through the %sMap Style Editor%s or %sStyled Maps Wizard%s."
1763
  msgstr ""
1764
+ "Je kunt bestaande map stijlen van %sSnazzy Maps%s of %sMap Stylr%s kopieren "
1765
+ "en in het onderstaande tekstvlak plaatsen. Of je kunt de map stijl genereren "
1766
  "via de %sMap Style Editor%s of de %sStyled Maps Wizard%s."
1767
 
1768
+ #: admin/templates/map-settings.php:239
1769
  #, php-format
1770
  msgid ""
1771
  "If you like to write the style code yourself, then you can find the "
1774
  "Als je zelf de stijl code wil schrijven dan kun je de documentatie %shier%s "
1775
  "vinden."
1776
 
1777
+ #: admin/templates/map-settings.php:241
1778
  msgid "Preview Map Style"
1779
  msgstr "Map stijl voorbeeld"
1780
 
1781
+ #: admin/templates/map-settings.php:245
1782
  msgid "Show credits?"
1783
  msgstr "Toon credits?"
1784
 
1785
+ #: admin/templates/map-settings.php:245
1786
  msgid ""
1787
  "This will place a \"Search provided by WP Store Locator\" backlink below the "
1788
  "map."
1789
  msgstr ""
1790
  "Dit plaatst een \"Ondersteund door WP Store Locator\" link onder de kaart."
1791
 
1792
+ #: admin/templates/map-settings.php:259
1793
  msgid "User Experience"
1794
  msgstr "Gebruikers ervaring"
1795
 
1796
+ #: admin/templates/map-settings.php:262
1797
  msgid "Store Locator height"
1798
  msgstr "Store Locator hoogte"
1799
 
1800
+ #: admin/templates/map-settings.php:266
1801
  msgid "Max width for the info window content"
1802
  msgstr "Max breedte voor de info window inhoud"
1803
 
1804
+ #: admin/templates/map-settings.php:270
1805
  msgid "Search field width"
1806
  msgstr "Zoekveld breedte"
1807
 
1808
+ #: admin/templates/map-settings.php:274
1809
  msgid "Search and radius label width"
1810
  msgstr "Zoek en radius label breedte"
1811
 
1812
+ #: admin/templates/map-settings.php:278
1813
  msgid "Store Locator template"
1814
  msgstr "Store locator template"
1815
 
1816
+ #: admin/templates/map-settings.php:278
1817
  #, php-format
1818
  msgid ""
1819
  "The selected template is used with the [wpsl] shortcode. %s You can add a "
1822
  "De geselecteerde template wordt gebruikt bij de [wpsl] shortcode. %s Je kunt "
1823
  "een custom template gebruiken met behulp van de %swpsl_templates%s filter."
1824
 
1825
+ #: admin/templates/map-settings.php:282
1826
  msgid "Hide the scrollbar?"
1827
  msgstr "Verberg de scrollbar?"
1828
 
1829
+ #: admin/templates/map-settings.php:286
1830
  msgid "Open links in a new window?"
1831
  msgstr "Open links in een nieuw venster?"
1832
 
1833
+ #: admin/templates/map-settings.php:290
1834
  msgid "Show a reset map button?"
1835
  msgstr "Toon een knop om de kaart te resetten?"
1836
 
1837
+ #: admin/templates/map-settings.php:294
1838
  msgid ""
1839
  "When a user clicks on \"Directions\", open a new window, and show the route "
1840
  "on google.com/maps ?"
1842
  "Zodra een gebruiker op \"Route\" klikt, open een nieuwe venster en toon de "
1843
  "route op google.com/maps?"
1844
 
1845
+ #: admin/templates/map-settings.php:298
1846
  msgid "Show a \"More info\" link in the store listings?"
1847
  msgstr "Toon een \"Meer info\" link in de locatie lijst?"
1848
 
1849
+ #: admin/templates/map-settings.php:298
 
1850
  msgid ""
1851
  "This places a \"More Info\" link below the address and will show the phone, "
1852
+ "fax, email, opening hours and description once the link is clicked."
 
 
1853
  msgstr ""
1854
+ "Dit plaatst een \"Meer Info\" link onder het adres. Als een gebruiker hierop "
1855
+ "klikt dan wordt het telefoon / fax nummer, email, openings tijden en "
1856
+ "omschrijving getoond."
 
1857
 
1858
+ #: admin/templates/map-settings.php:303
1859
  msgid "Where do you want to show the \"More info\" details?"
1860
  msgstr "Waar wil je de \"Meer info\" details tonen?"
1861
 
1862
+ #: admin/templates/map-settings.php:308
1863
+ msgid ""
1864
+ "Always show the contact details below the address in the search results?"
1865
+ msgstr "Toon altijd de contact gegevens onder het adres in de zoek resultaten?"
1866
+
1867
+ #: admin/templates/map-settings.php:312
1868
  msgid "Make the store name clickable if a store URL exists?"
1869
  msgstr "Als een winkel url bestaat, maak de winkel naam dan klikbaar?"
1870
 
1871
+ #: admin/templates/map-settings.php:312
1872
  #, php-format
1873
  msgid ""
1874
  "If %spermalinks%s are enabled, the store name will always link to the store "
1877
  "Als de %spermalinks%s zijn ingeschakeld dan zal de winkel naam altijd linken "
1878
  "naar de winkel pagina."
1879
 
1880
+ #: admin/templates/map-settings.php:316
1881
  msgid "Make the phone number clickable on mobile devices?"
1882
  msgstr "Maak het telefoonnummer klikbaar op mobiele apparaten?"
1883
 
1884
+ #: admin/templates/map-settings.php:320
1885
  msgid ""
1886
  "If street view is available for the current location, then show a \"Street "
1887
  "view\" link in the info window?"
1889
  "Als voor de huidge locatie street view beschikbaar is, toon dan een \"Street "
1890
  "view\" link om vanuit de info window?"
1891
 
1892
+ #: admin/templates/map-settings.php:320
1893
  #, php-format
1894
  msgid ""
1895
  "Enabling this option can sometimes result in a small delay in the opening of "
1901
  "er een verzoek naar de Google Maps API word gemaakt om te controleren ofdat "
1902
  "street view wel beschikbaar is voor de huidige locatie."
1903
 
1904
+ #: admin/templates/map-settings.php:324
1905
  msgid "Show a \"Zoom here\" link in the info window?"
1906
  msgstr "Toon een \"zoom hier\" link in de info window?"
1907
 
1908
+ #: admin/templates/map-settings.php:324
1909
  #, php-format
1910
  msgid ""
1911
  "Clicking this link will make the map zoom in to the %s max auto zoom level "
1914
  "Als er op deze link geklikt word dan zoomt de kaart in totdat de %s max auto "
1915
  "zoom level %s bereikt is."
1916
 
1917
+ #: admin/templates/map-settings.php:328
1918
  msgid "On page load move the mouse cursor to the search field?"
1919
  msgstr ""
1920
  "Als de pagina wordt geladen, verplaats de muiscursor dan naar het invulveld?"
1921
 
1922
+ #: admin/templates/map-settings.php:328
1923
  #, php-format
1924
  msgid ""
1925
  "If the store locator is not placed at the top of the page, enabling this "
1930
  "instelling ervoor zorgen dat de pagina naar benenden schuift tijden het "
1931
  "laden. %s %sDeze optie staat uit op mobiele apparaten.%s"
1932
 
1933
+ #: admin/templates/map-settings.php:332
1934
  msgid "Use the default style for the info window?"
1935
  msgstr "Gebruik de standaard style voor de info window?"
1936
 
1937
+ #: admin/templates/map-settings.php:332
1938
  #, php-format
1939
  msgid ""
1940
  "If the default style is disabled the %sInfoBox%s library will be used "
1945
  "gebruikt. %s Dit script maakt het mogelijk om makkelijk het ontwerp te "
1946
  "wijzigen met behulp van de .wpsl-infobox css class."
1947
 
1948
+ #: admin/templates/map-settings.php:336
1949
+ msgid "Hide the country in the search results?"
1950
+ msgstr "Verberg het land in de zoekresultaten?"
1951
+
1952
+ #: admin/templates/map-settings.php:340
1953
  msgid "Hide the distance in the search results?"
1954
  msgstr "Verberg de afstand in de zoek resultaten?"
1955
 
1956
+ #: admin/templates/map-settings.php:344
1957
  msgid "If a user hovers over the search results the store marker"
1958
  msgstr ""
1959
  "Als een gebruiker over de zoekresultaten beweegt met zijn muis de "
1960
  "bijbehorende marker"
1961
 
1962
+ #: admin/templates/map-settings.php:344
1963
  #, php-format
1964
  msgid ""
1965
  "If marker clusters are enabled this option will not work as expected as long "
1974
  "de marker cluster wordt omgezet naar losse markers. %s De info window wordt "
1975
  "wel geopend, maar het is niet duidelijk bij welke marker het hoort."
1976
 
1977
+ #: admin/templates/map-settings.php:348
1978
  msgid "Address format"
1979
  msgstr "Adres formaat"
1980
 
1981
+ #: admin/templates/map-settings.php:348
1982
  #, php-format
1983
  msgid ""
1984
  "You can add custom address formats with the %swpsl_address_formats%s filter."
1986
  "Je kunt een nieuwe adres formaat toevoegen met de %swpsl_address_formats%s "
1987
  "filter."
1988
 
1989
+ #: admin/templates/map-settings.php:362
1990
  msgid "Markers"
1991
  msgstr "Markers"
1992
 
1993
+ #: admin/templates/map-settings.php:366
1994
  msgid "Enable marker clusters?"
1995
  msgstr "Activeer marker clusters?"
1996
 
1997
+ #: admin/templates/map-settings.php:366
1998
  msgid "Recommended for maps with a large amount of markers."
1999
  msgstr "Aan te raden voor kaarten met grote hoeveelheden markers."
2000
 
2001
+ #: admin/templates/map-settings.php:371
2002
  msgid "Max zoom level"
2003
  msgstr "Max zoom niveau"
2004
 
2005
+ #: admin/templates/map-settings.php:371
2006
  msgid ""
2007
  "If this zoom level is reached or exceeded, then all markers are moved out of "
2008
  "the marker cluster and shown as individual markers."
2010
  "Als dit zoom niveau bereikt is of gepasseerd, dan worden alle markers uit de "
2011
  "marker cluster gehaald en als losse markers getoond."
2012
 
2013
+ #: admin/templates/map-settings.php:375
2014
  msgid "Cluster size"
2015
  msgstr "Cluster grote"
2016
 
2017
+ #: admin/templates/map-settings.php:375
2018
  #, php-format
2019
  msgid ""
2020
  "The grid size of a cluster in pixels. %s A larger number will result in a "
2024
  "voor dat er minder clusters zichtbaar zijn en het algoritme dus ook sneller "
2025
  "klaar is."
2026
 
2027
+ #: admin/templates/map-settings.php:390
2028
  msgid "Store Editor"
2029
  msgstr "Winkel editor"
2030
 
2031
+ #: admin/templates/map-settings.php:393
2032
  msgid "Default country"
2033
  msgstr "Standaard land"
2034
 
2035
+ #: admin/templates/map-settings.php:397
2036
  msgid "Map type for the location preview"
2037
  msgstr "Kaart type voor het lokatie voorbeeld"
2038
 
2039
+ #: admin/templates/map-settings.php:401
2040
  msgid "Hide the opening hours?"
2041
  msgstr "Verberg de openingstijden?"
2042
 
2043
+ #: admin/templates/map-settings.php:407
2044
  msgid "Opening hours input type"
2045
  msgstr "Openingstijden formaat"
2046
 
2047
+ #: admin/templates/map-settings.php:411
2048
  #, php-format
2049
  msgid ""
2050
  "Opening hours created in version 1.x %sare not%s automatically converted to "
2053
  "De openingstijden die zijn aangemaakt in versie 1.x %sworden niet%s "
2054
  "automatische omgezet naar het dropdown formaat."
2055
 
2056
+ #: admin/templates/map-settings.php:414 admin/templates/map-settings.php:423
2057
  msgid "The default opening hours"
2058
  msgstr "De standaard openingstijden"
2059
 
2060
+ #: admin/templates/map-settings.php:420
2061
  msgid "Opening hours format"
2062
  msgstr "Openingstijden formaat"
2063
 
2064
+ #: admin/templates/map-settings.php:427
2065
  msgid ""
2066
  "The default country and opening hours are only used when a new store is "
2067
  "created. So changing the default values will have no effect on existing "
2071
  "gebruikt als een nieuwe locatie wordt aangemaakt. Het wijzigen van deze "
2072
  "waardes heeft dus geen enkele invloed op de bestaande locaties."
2073
 
2074
+ #: admin/templates/map-settings.php:440
2075
  msgid "Permalink"
2076
  msgstr "Permalink"
2077
 
2078
+ #: admin/templates/map-settings.php:443
2079
  msgid "Enable permalink?"
2080
  msgstr "Activeer permalink?"
2081
 
2082
+ #: admin/templates/map-settings.php:448
2083
  msgid "Store slug"
2084
  msgstr "Winkel slug"
2085
 
2086
+ #: admin/templates/map-settings.php:452
2087
  msgid "Category slug"
2088
  msgstr "Categorie slug"
2089
 
2090
+ #: admin/templates/map-settings.php:455
2091
  #, php-format
2092
  msgid "The permalink slugs %smust be unique%s on your site."
2093
  msgstr "De permalink slug %smoet uniek%s zijn op je site."
2094
 
2095
+ #: admin/templates/map-settings.php:468
2096
  msgid "Labels"
2097
  msgstr "Labels"
2098
 
2099
+ #: admin/templates/map-settings.php:477
2100
  #, php-format
2101
  msgid "%sWarning!%s %sWPML%s, or a plugin using the WPML API is active."
2102
  msgstr ""
2103
  "%sWaarschuwing!%s %sWPML%s, of een plugin die de WPML API gebruikt is "
2104
  "actief."
2105
 
2106
+ #: admin/templates/map-settings.php:478
2107
  msgid ""
2108
  "Please use the \"String Translations\" section in the used multilingual "
2109
  "plugin to change the labels. Changing them here will have no effect as long "
2113
  "labels te wijzigen. Wijzigingen die in dit gedeelte worden aangebracht "
2114
  "hebben geen effect zolang de vertaal plugin actief is."
2115
 
2116
+ #: admin/templates/map-settings.php:482 admin/templates/map-settings.php:483
2117
+ #: frontend/templates/default.php:12
2118
+ #: frontend/templates/store-listings-below.php:12 inc/wpsl-functions.php:127
2119
  msgid "Your location"
2120
  msgstr "Uw locatie"
2121
 
2122
+ #: admin/templates/map-settings.php:486 admin/templates/map-settings.php:487
2123
+ #: frontend/templates/default.php:21
2124
+ #: frontend/templates/store-listings-below.php:21 inc/wpsl-functions.php:130
2125
  msgid "Search radius"
2126
  msgstr "Zoek radius"
2127
 
2128
+ #: admin/templates/map-settings.php:490 admin/templates/map-settings.php:491
2129
+ #: frontend/class-frontend.php:1613 inc/wpsl-functions.php:131
2130
  msgid "No results found"
2131
  msgstr "Geen resultaten gevonden"
2132
 
2133
+ #: admin/templates/map-settings.php:498
2134
  msgid "Searching (preloader text)"
2135
  msgstr "Aan het zoeken (preloader tekst)"
2136
 
2137
+ #: admin/templates/map-settings.php:499 frontend/class-frontend.php:1612
2138
+ #: inc/wpsl-functions.php:129
2139
  msgid "Searching..."
2140
  msgstr "Zoeken..."
2141
 
2142
+ #: admin/templates/map-settings.php:502 admin/templates/map-settings.php:503
2143
+ #: frontend/templates/default.php:30
2144
+ #: frontend/templates/store-listings-below.php:30 inc/wpsl-functions.php:132
2145
  msgid "Results"
2146
  msgstr "Resultaten"
2147
 
2148
+ #: admin/templates/map-settings.php:506 admin/upgrade.php:206
2149
+ #: inc/wpsl-functions.php:146
2150
  msgid "Category filter"
2151
  msgstr "Categorie filter"
2152
 
2153
+ #: admin/templates/map-settings.php:507 frontend/class-frontend.php:1289
2154
  msgid "Category"
2155
  msgstr "Categorie"
2156
 
2157
+ #: admin/templates/map-settings.php:510
2158
+ msgid "Category first item"
2159
+ msgstr "Eerste categorie item"
2160
+
2161
+ #: admin/templates/map-settings.php:511 admin/upgrade.php:367
2162
+ #: frontend/class-frontend.php:1292 inc/wpsl-functions.php:147
2163
+ msgid "Any"
2164
+ msgstr "Alle"
2165
+
2166
+ #: admin/templates/map-settings.php:514 admin/templates/map-settings.php:515
2167
+ #: admin/upgrade.php:59 frontend/class-frontend.php:1614
2168
+ #: frontend/underscore-functions.php:137 frontend/underscore-functions.php:167
2169
+ #: inc/wpsl-functions.php:133
2170
  msgid "More info"
2171
  msgstr "Meer info"
2172
 
2173
+ #: admin/templates/map-settings.php:518 admin/templates/map-settings.php:519
2174
+ #: frontend/class-frontend.php:785 frontend/underscore-functions.php:29
2175
+ #: frontend/underscore-functions.php:63 frontend/underscore-functions.php:146
2176
+ #: inc/wpsl-functions.php:141
2177
  msgid "Phone"
2178
  msgstr "Telefoon"
2179
 
2180
+ #: admin/templates/map-settings.php:538 admin/templates/map-settings.php:539
2181
+ #: frontend/class-frontend.php:1619 inc/wpsl-functions.php:126
2182
  msgid "Start location"
2183
  msgstr "Start locatie"
2184
 
2185
+ #: admin/templates/map-settings.php:542
2186
  msgid "Get directions"
2187
  msgstr "Toon routebeschrijving"
2188
 
2189
+ #: admin/templates/map-settings.php:543 frontend/class-frontend.php:1617
2190
+ #: inc/wpsl-functions.php:134
2191
  msgid "Directions"
2192
  msgstr "Routebeschrijving"
2193
 
2194
+ #: admin/templates/map-settings.php:546
2195
  msgid "No directions found"
2196
  msgstr "Geen routebeschrijving beschikbaar"
2197
 
2198
+ #: admin/templates/map-settings.php:547 admin/upgrade.php:151
2199
+ #: frontend/class-frontend.php:1618 inc/wpsl-functions.php:135
2200
  msgid "No route could be found between the origin and destination"
2201
  msgstr "Er kon geen route gevonden worden tussen het begin- en eindpunt"
2202
 
2203
+ #: admin/templates/map-settings.php:550 admin/templates/map-settings.php:551
2204
+ #: admin/upgrade.php:77 frontend/class-frontend.php:1620
2205
+ #: inc/wpsl-functions.php:136
2206
  msgid "Back"
2207
  msgstr "Terug"
2208
 
2209
+ #: admin/templates/map-settings.php:554 admin/templates/map-settings.php:555
2210
+ #: admin/upgrade.php:143 frontend/class-frontend.php:1621
2211
+ #: inc/wpsl-functions.php:137
2212
  msgid "Street view"
2213
  msgstr "Street view"
2214
 
2215
+ #: admin/templates/map-settings.php:558 admin/templates/map-settings.php:559
2216
+ #: admin/upgrade.php:147 frontend/class-frontend.php:1622
2217
+ #: inc/wpsl-functions.php:138
2218
  msgid "Zoom here"
2219
  msgstr "Zoom hier"
2220
 
2221
+ #: admin/templates/map-settings.php:562
2222
  msgid "General error"
2223
  msgstr "Foutmelding"
2224
 
2225
+ #: admin/templates/map-settings.php:563 frontend/class-frontend.php:1615
2226
+ #: inc/wpsl-functions.php:139
2227
  msgid "Something went wrong, please try again!"
2228
  msgstr "Er ging iets fout, probeer het nog een keer!"
2229
 
2230
+ #: admin/templates/map-settings.php:566
2231
  msgid "Query limit error"
2232
  msgstr "Query limit foutmelding"
2233
 
2234
+ #: admin/templates/map-settings.php:566
2235
  #, php-format
2236
  msgid ""
2237
  "You can raise the %susage limit%s by obtaining an API %skey%s, and fill in "
2240
  "Je kan de %sgebruiks limiet%s verhogen door een API %ssleutel%s aan te "
2241
  "vragen en die in het \"API sleutel\" veld bovenaan de pagina in te vullen."
2242
 
2243
+ #: admin/templates/map-settings.php:567 frontend/class-frontend.php:1616
2244
+ #: inc/wpsl-functions.php:140
2245
  msgid "API usage limit reached"
2246
  msgstr "API gebruikslimiet bereikt"
2247
 
2248
+ #: admin/templates/map-settings.php:580
2249
  msgid "Tools"
2250
  msgstr "Tools"
2251
 
2252
+ #: admin/templates/map-settings.php:583
2253
  msgid "Enable store locator debug?"
2254
  msgstr "Activeer store locator debug?"
2255
 
2256
+ #: admin/templates/map-settings.php:583
2257
  #, php-format
2258
  msgid ""
2259
  "This disables the WPSL transient cache. %sThe transient cache is only used "
2263
  "alleen gebruikt als de %sToon alle locaties op de kaart zodra de pagina "
2264
  "geladen is%s optie is geactiveerd."
2265
 
2266
+ #: admin/templates/map-settings.php:587
2267
  msgid "WPSL transients"
2268
  msgstr "WPSL transients"
2269
 
2270
+ #: admin/templates/map-settings.php:588
2271
  msgid "Clear store locator transient cache"
2272
  msgstr "Verwijder het store locator transient cache."
2273
 
2274
+ #: admin/upgrade.php:73
2275
  msgid "info window"
2276
  msgstr "info window"
2277
 
2278
+ #: admin/upgrade.php:81
2279
  msgid "Reset"
2280
  msgstr "Herstel"
2281
 
2282
+ #: admin/upgrade.php:174 inc/wpsl-functions.php:121
2283
  msgid "stores"
2284
  msgstr "winkels"
2285
 
2286
+ #: admin/upgrade.php:178 inc/wpsl-functions.php:122
2287
  msgid "store-category"
2288
  msgstr "winkel-categorie"
2289
 
2290
+ #: admin/upgrade.php:418
2291
  #, php-format
2292
  msgid ""
2293
  "Because you updated WP Store Locator from version 1.x, the %s current store "
2296
  "Doordat je WP Store Locator update van versie 1.x, de %s huidige winkel "
2297
  "locaties moeten worden %somgezet%s naar custom post types."
2298
 
2299
+ #: admin/upgrade.php:439
2300
  #, php-format
2301
  msgid ""
2302
  "The script converting the locations timed out. %s You can click the \"Start "
2306
  "execution time. %s The plugin tried to disable the maximum execution time, "
2307
  "but if you are reading this then that failed."
2308
  msgstr ""
2309
+ "Het script dat de winkel locaties omzet timed out. %s Je kunt op de \"Begin "
2310
  "met omzetten\" knop klikken om het script opnieuw te starten. %s Als er "
2311
  "duizenden winkel locaties zijn die nog omgezet moeten worden en je blijft "
2312
  "deze boodschap zien dan kun je proberen om contact op te nemen met je host "
2314
  "heeft al geprobeerd om de maximum execution time uit te zetten, maar als je "
2315
  "dit leest dan is dat mislukt."
2316
 
2317
+ #: admin/upgrade.php:460
2318
  msgid "Store locations to convert:"
2319
  msgstr "Locaties die omgezet worden:"
2320
 
2321
+ #: admin/upgrade.php:462
2322
  msgid "Start Converting"
2323
  msgstr "Begin met omzetten"
2324
 
2325
+ #: admin/upgrade.php:584
2326
  #, php-format
2327
  msgid ""
2328
  "All the store locations are now converted to custom post types. %s You can "
2331
  "Alle winkel locaties zijn nu omgezet naar custom post types. %s Je kunt ze "
2332
  "bekijken op de %sAlle Winkels%s pagina."
2333
 
2334
+ #: frontend/class-frontend.php:722
2335
  msgid ""
2336
  "If you use the [wpsl_address] shortcode outside a store page you need to set "
2337
  "the ID attribute."
2339
  "Als je de [wpsl_address] shortcode op een pagina gebruikt die geen winkel "
2340
  "pagina is dan is de ID attribute verplicht."
2341
 
2342
+ #: frontend/class-frontend.php:836
2343
  msgid ""
2344
  "If you use the [wpsl_hours] shortcode outside a store page you need to set "
2345
  "the ID attribute."
2347
  "Als je de [wpsl_hours] shortcode op een pagina gebruikt die geen winkel "
2348
  "pagina is dan is de ID attribute verplicht."
2349
 
2350
+ #: frontend/class-frontend.php:884
2351
  msgid ""
2352
  "If you use the [wpsl_map] shortcode outside a store page, then you need to "
2353
  "set the ID or category attribute."
2355
  "Als de [wpsl_map] shortcode buiten een winkel page is geplaatst, dan moet je "
2356
  "de ID of category attribute opgeven."
2357
 
2358
+ #: frontend/class-frontend.php:1444
 
 
 
 
2359
  msgid "The application does not have permission to use the Geolocation API."
2360
  msgstr ""
2361
  "Deze applicatie heeft geen toestemming om de Geolocation API te gebruiken."
2362
 
2363
+ #: frontend/class-frontend.php:1445
2364
  msgid "Location information is unavailable."
2365
  msgstr "Informatie over de huidige locatie is niet beschikbaar."
2366
 
2367
+ #: frontend/class-frontend.php:1446
2368
  msgid "The geolocation request timed out."
2369
  msgstr "Het geolocation verzoek timed out."
2370
 
2371
+ #: frontend/class-frontend.php:1447
2372
  msgid "An unknown error occurred."
2373
  msgstr " Er heeft zich een onbekende fout voorgedaan."
2374
 
2375
+ #: frontend/templates/default.php:62
2376
+ #: frontend/templates/store-listings-below.php:68
2377
  #, php-format
2378
  msgid "Search provided by %sWP Store Locator%s"
2379
  msgstr "Ondersteund door %sWP Store Locator%s"
2478
  msgid "Zip"
2479
  msgstr "Postcode"
2480
 
2481
+ #: inc/wpsl-functions.php:216
2482
  msgid "Show the store list below the map"
2483
  msgstr "Toon the locatie lijst onder de kaart"
2484
 
2485
+ #: inc/wpsl-functions.php:233
2486
  msgid "Monday"
2487
  msgstr "Maandag"
2488
 
2489
+ #: inc/wpsl-functions.php:234
2490
  msgid "Tuesday"
2491
  msgstr "Dinsdag"
2492
 
2493
+ #: inc/wpsl-functions.php:235
2494
  msgid "Wednesday"
2495
  msgstr "Woensdag"
2496
 
2497
+ #: inc/wpsl-functions.php:236
2498
  msgid "Thursday"
2499
  msgstr "Donderdag"
2500
 
2501
+ #: inc/wpsl-functions.php:237
2502
  msgid "Friday"
2503
  msgstr "Vrijdag"
2504
 
2505
+ #: inc/wpsl-functions.php:238
2506
  msgid "Saturday"
2507
  msgstr "Zaterdag"
2508
 
2509
+ #: inc/wpsl-functions.php:239
2510
  msgid "Sunday"
2511
  msgstr "Zondag"
2512
 
2513
+ #: inc/wpsl-functions.php:269
2514
  #, php-format
2515
  msgid "Mon %sTue %sWed %sThu %sFri %sSat Closed %sSun Closed"
2516
  msgstr "ma %sdi %swoe %sdo %svrij %szat gesloten %szo gesloten"
2517
 
2518
+ #: inc/wpsl-functions.php:285
2519
  msgid "Satellite"
2520
  msgstr "Satelliet"
2521
 
2522
+ #: inc/wpsl-functions.php:286
2523
  msgid "Hybrid"
2524
  msgstr "Hybrid"
2525
 
2526
+ #: inc/wpsl-functions.php:287
2527
  msgid "Terrain"
2528
  msgstr "Terrein"
2529
 
2530
+ #: inc/wpsl-functions.php:302
2531
  msgid "(city) (state) (zip code)"
2532
  msgstr "(stad) (provincie) (postcode)"
2533
 
2534
+ #: inc/wpsl-functions.php:303
2535
  msgid "(city), (state) (zip code)"
2536
  msgstr "(stad), (provincie), (postcode)"
2537
 
2538
+ #: inc/wpsl-functions.php:304
2539
  msgid "(city) (zip code)"
2540
  msgstr "(stad) (postcode)"
2541
 
2542
+ #: inc/wpsl-functions.php:305
2543
  msgid "(city), (zip code)"
2544
  msgstr "(stad), (postcode)"
2545
 
2546
+ #: inc/wpsl-functions.php:306
2547
  msgid "(zip code) (city) (state)"
2548
  msgstr "(postcode) (stad) (provincie)"
2549
 
2550
+ #: inc/wpsl-functions.php:307
2551
  msgid "(zip code) (city)"
2552
  msgstr "(postcode) (stad)"
2553
 
2554
+ #~ msgid "Please try again later."
2555
+ #~ msgstr "Probeer het later nog een keer."
2556
+
2557
+ #~ msgid ""
2558
+ #~ "Before adding the [wpsl] shortcode to a page, please don't forget to "
2559
+ #~ "define a %sstart point%s. %sDismiss%s"
2560
+ #~ msgstr ""
2561
+ #~ "Vergeet niet voordat je de [wpsl] shortcode op een pagina plaatst, om een "
2562
+ #~ "%sstart locatie%s op te geven. %sSluit%s"
2563
+
2564
+ #~ msgid "General Settings"
2565
+ #~ msgstr "Instellingen"
2566
+
2567
+ #~ msgid "API key"
2568
+ #~ msgstr "API sleutel"
2569
+
2570
+ #~ msgid ""
2571
+ #~ "A valid %sAPI key%s allows you to monitor the API usage and is required "
2572
+ #~ "if you need to purchase additional quota."
2573
+ #~ msgstr ""
2574
+ #~ "Een geldige %sAPI sleutel%s maakt het mogelijk om het gebruik van de API "
2575
+ #~ "in de gaten te houden en is verplicht als je de API limiet wil verhogen."
2576
+
2577
+ #~ msgid "Show the category dropdown?"
2578
+ #~ msgstr "Toon de categorie dropdown?"
2579
+
2580
+ #~ msgid ""
2581
+ #~ "This places a \"More Info\" link below the address and will show the "
2582
+ #~ "phone, fax, email, opening hours and description once the link is "
2583
+ #~ "clicked. %s If you for example want the contact details to always be "
2584
+ #~ "visible, then please follow the instructions on %sthis%s page."
2585
+ #~ msgstr ""
2586
+ #~ "Dit plaatst een \"Meer info\" link onder het adres, en toont zodra er op "
2587
+ #~ "de link geklikt wordt het telefoon / fax numer, email, openingstijden en "
2588
+ #~ "omschrijving. %s Als je bijvoorbeeld de contact gegevens altijd wil "
2589
+ #~ "tonen, volg dan de instructies op %sdeze%s pagina."
2590
+
2591
  #~ msgid ""
2592
  #~ "This will bias the geocoding results towards the selected region. %s If "
2593
  #~ "no region is selected the bias is set to the United States."
languages/wpsl.pot CHANGED
@@ -1,9 +1,9 @@
1
  #, fuzzy
2
  msgid ""
3
  msgstr ""
4
- "Project-Id-Version: WP Store Locator v2.0\n"
5
  "Report-Msgid-Bugs-To: \n"
6
- "POT-Creation-Date: 2015-12-23 11:09+0100\n"
7
  "PO-Revision-Date: 2015-09-01 13:49+0100\n"
8
  "Last-Translator: \n"
9
  "Language-Team: \n"
@@ -20,127 +20,98 @@ msgstr ""
20
  "X-Textdomain-Support: yes\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
 
23
- #: admin/EDD_SL_Plugin_Updater.php:181
24
- #, php-format
25
- msgid ""
26
- "There is a new version of %1$s available. <a target=\"_blank\" class="
27
- "\"thickbox\" href=\"%2$s\">View version %3$s details</a>."
28
- msgstr ""
29
-
30
- #: admin/EDD_SL_Plugin_Updater.php:188
31
- #, php-format
32
- msgid ""
33
- "There is a new version of %1$s available. <a target=\"_blank\" class="
34
- "\"thickbox\" href=\"%2$s\">View version %3$s details</a> or <a href=\"%4$s"
35
- "\">update now</a>."
36
- msgstr ""
37
-
38
- #: admin/EDD_SL_Plugin_Updater.php:326
39
- msgid "You do not have permission to install plugin updates"
40
- msgstr ""
41
-
42
- #: admin/EDD_SL_Plugin_Updater.php:326
43
- msgid "Error"
44
- msgstr ""
45
-
46
- #: admin/class-admin.php:119
47
- #, php-format
48
- msgid ""
49
- "Before adding the [wpsl] shortcode to a page, please don't forget to define "
50
- "a %sstart point%s. %sDismiss%s"
51
- msgstr ""
52
-
53
- #: admin/class-admin.php:121
54
  #, php-format
55
  msgid ""
56
  "Before adding the [wpsl] shortcode to a page, please don't forget to define "
57
  "a start point on the %ssettings%s page. %sDismiss%s"
58
  msgstr ""
59
 
60
- #: admin/class-admin.php:154 admin/class-admin.php:155
61
- #: admin/templates/map-settings.php:11
62
  msgid "Settings"
63
  msgstr ""
64
 
65
- #: admin/class-admin.php:281
 
 
 
 
 
66
  msgid "Cannot determine the address at this location."
67
  msgstr ""
68
 
69
- #: admin/class-admin.php:282
70
  msgid "Geocode was not successful for the following reason"
71
  msgstr ""
72
 
73
- #: admin/class-admin.php:283 admin/upgrade.php:414
74
  msgid "Security check failed, reload the page and try again."
75
  msgstr ""
76
 
77
- #: admin/class-admin.php:284
78
  msgid "Please fill in all the required store details."
79
  msgstr ""
80
 
81
- #: admin/class-admin.php:285
82
  msgid "The map preview requires all the location details."
83
  msgstr ""
84
 
85
- #: admin/class-admin.php:286 admin/class-metaboxes.php:505
86
- #: frontend/class-frontend.php:493
87
  msgid "Closed"
88
  msgstr ""
89
 
90
- #: admin/class-admin.php:287
91
  msgid "The code for the map style is invalid."
92
  msgstr ""
93
 
94
- #: admin/class-admin.php:378
95
  msgid "Welcome to WP Store Locator"
96
  msgstr ""
97
 
98
- #: admin/class-admin.php:379
99
  msgid "Sign up for the latest plugin updates and announcements."
100
  msgstr ""
101
 
102
- #: admin/class-admin.php:423
103
  msgid "Documentation"
104
  msgstr ""
105
 
106
- #: admin/class-admin.php:426
107
- msgid "General Settings"
108
- msgstr ""
109
-
110
- #: admin/class-admin.php:446
111
  #, php-format
112
  msgid "If you like this plugin please leave us a %s5 star%s rating."
113
  msgstr ""
114
 
115
- #: admin/class-geocode.php:73
116
  msgid ""
117
  "The Google Geocoding API returned no results for the supplied address. "
118
  "Please change the address and try again."
119
  msgstr ""
120
 
121
- #: admin/class-geocode.php:76
122
  #, php-format
123
  msgid ""
124
  "You have reached the daily allowed geocoding limit, you can read more %shere"
125
  "%s."
126
  msgstr ""
127
 
128
- #: admin/class-geocode.php:79
129
  #, php-format
130
  msgid "The Google Geocoding API returned REQUEST_DENIED. %s"
131
  msgstr ""
132
 
133
- #: admin/class-geocode.php:82
134
  msgid ""
135
  "The Google Geocoding API failed to return valid data, please try again later."
136
  msgstr ""
137
 
138
- #: admin/class-geocode.php:107
139
  #, php-format
140
  msgid "%sError message: %s"
141
  msgstr ""
142
 
143
- #: admin/class-geocode.php:129
144
  #, php-format
145
  msgid ""
146
  "Something went wrong connecting to the Google Geocode API: %s %s Please try "
@@ -154,7 +125,7 @@ msgid ""
154
  "support!"
155
  msgstr ""
156
 
157
- #: admin/class-license-manager.php:209
158
  msgid "Please try again later!"
159
  msgstr ""
160
 
@@ -229,9 +200,9 @@ msgstr ""
229
  msgid "Opening Hours"
230
  msgstr ""
231
 
232
- #: admin/class-metaboxes.php:82 admin/templates/map-settings.php:500
233
- #: admin/templates/map-settings.php:501 frontend/underscore-functions.php:133
234
- #: inc/wpsl-functions.php:124
235
  msgid "Hours"
236
  msgstr ""
237
 
@@ -243,122 +214,123 @@ msgstr ""
243
  msgid "Tel"
244
  msgstr ""
245
 
246
- #: admin/class-metaboxes.php:91 admin/templates/map-settings.php:488
247
- #: admin/templates/map-settings.php:489 frontend/class-frontend.php:677
248
- #: frontend/underscore-functions.php:32 frontend/underscore-functions.php:124
249
- #: inc/wpsl-functions.php:121
250
  msgid "Fax"
251
  msgstr ""
252
 
253
- #: admin/class-metaboxes.php:94 admin/templates/map-settings.php:492
254
- #: admin/templates/map-settings.php:493 admin/upgrade.php:210
255
- #: frontend/class-frontend.php:681 frontend/underscore-functions.php:35
256
- #: frontend/underscore-functions.php:127 inc/wpsl-functions.php:122
 
257
  msgid "Email"
258
  msgstr ""
259
 
260
- #: admin/class-metaboxes.php:97 admin/templates/map-settings.php:496
261
- #: admin/templates/map-settings.php:497 admin/upgrade.php:214
262
- #: frontend/class-frontend.php:686 inc/wpsl-functions.php:123
263
  msgid "Url"
264
  msgstr ""
265
 
266
- #: admin/class-metaboxes.php:427
267
  msgid "Hour format"
268
  msgstr ""
269
 
270
- #: admin/class-metaboxes.php:434
271
  msgid "Days"
272
  msgstr ""
273
 
274
- #: admin/class-metaboxes.php:435
275
  msgid "Opening Periods"
276
  msgstr ""
277
 
278
- #: admin/class-metaboxes.php:682
279
  msgid "Failed to publish the store. Please fill in the required store details."
280
  msgstr ""
281
 
282
- #: admin/class-metaboxes.php:818
283
  msgid "Preview Location"
284
  msgstr ""
285
 
286
- #: admin/class-metaboxes.php:819
287
  #, php-format
288
  msgid ""
289
  "The map preview is based on the provided address, city and country details. "
290
  "%s It will ignore any custom latitude or longitude values."
291
  msgstr ""
292
 
293
- #: admin/class-metaboxes.php:820
294
  msgid "You can drag the marker to adjust the exact location of the marker."
295
  msgstr ""
296
 
297
- #: admin/class-metaboxes.php:840 admin/class-metaboxes.php:843
298
  msgid "Store updated."
299
  msgstr ""
300
 
301
- #: admin/class-metaboxes.php:841
302
  msgid "Custom field updated."
303
  msgstr ""
304
 
305
- #: admin/class-metaboxes.php:842
306
  msgid "Custom field deleted."
307
  msgstr ""
308
 
309
- #: admin/class-metaboxes.php:844
310
  #, php-format
311
  msgid "Store restored to revision from %s"
312
  msgstr ""
313
 
314
- #: admin/class-metaboxes.php:845
315
  msgid "Store published."
316
  msgstr ""
317
 
318
- #: admin/class-metaboxes.php:846
319
  msgid "Store saved."
320
  msgstr ""
321
 
322
- #: admin/class-metaboxes.php:847
323
  msgid "Store submitted."
324
  msgstr ""
325
 
326
- #: admin/class-metaboxes.php:849
327
  #, php-format
328
  msgid "Store scheduled for: <strong>%1$s</strong>."
329
  msgstr ""
330
 
331
- #: admin/class-metaboxes.php:850
332
  msgid "M j, Y @ G:i"
333
  msgstr ""
334
 
335
- #: admin/class-metaboxes.php:852
336
  msgid "Store draft updated."
337
  msgstr ""
338
 
339
- #: admin/class-metaboxes.php:858
340
  msgid "View store"
341
  msgstr ""
342
 
343
- #: admin/class-metaboxes.php:864
344
  msgid "Preview store"
345
  msgstr ""
346
 
347
- #: admin/class-settings.php:39
348
  msgid "WP Store Locator Transients Cleared"
349
  msgstr ""
350
 
351
- #: admin/class-settings.php:373
352
  msgid ""
353
  "The max results field cannot be empty, the default value has been restored."
354
  msgstr ""
355
 
356
- #: admin/class-settings.php:376
357
  msgid ""
358
  "The search radius field cannot be empty, the default value has been restored."
359
  msgstr ""
360
 
361
- #: admin/class-settings.php:379
362
  #, php-format
363
  msgid ""
364
  "Please provide the name of a city or country that can be used as a starting "
@@ -366,1108 +338,1116 @@ msgid ""
366
  "user fails, or the option itself is disabled."
367
  msgstr ""
368
 
369
- #: admin/class-settings.php:400
370
  msgid "Select your language"
371
  msgstr ""
372
 
373
- #: admin/class-settings.php:401
374
  msgid "English"
375
  msgstr ""
376
 
377
- #: admin/class-settings.php:402
378
  msgid "Arabic"
379
  msgstr ""
380
 
381
- #: admin/class-settings.php:403
382
  msgid "Basque"
383
  msgstr ""
384
 
385
- #: admin/class-settings.php:404
386
  msgid "Bulgarian"
387
  msgstr ""
388
 
389
- #: admin/class-settings.php:405
390
  msgid "Bengali"
391
  msgstr ""
392
 
393
- #: admin/class-settings.php:406
394
  msgid "Catalan"
395
  msgstr ""
396
 
397
- #: admin/class-settings.php:407
398
  msgid "Czech"
399
  msgstr ""
400
 
401
- #: admin/class-settings.php:408
402
  msgid "Danish"
403
  msgstr ""
404
 
405
- #: admin/class-settings.php:409
406
  msgid "German"
407
  msgstr ""
408
 
409
- #: admin/class-settings.php:410
410
  msgid "Greek"
411
  msgstr ""
412
 
413
- #: admin/class-settings.php:411
414
  msgid "English (Australian)"
415
  msgstr ""
416
 
417
- #: admin/class-settings.php:412
418
  msgid "English (Great Britain)"
419
  msgstr ""
420
 
421
- #: admin/class-settings.php:413
422
  msgid "Spanish"
423
  msgstr ""
424
 
425
- #: admin/class-settings.php:414
426
  msgid "Farsi"
427
  msgstr ""
428
 
429
- #: admin/class-settings.php:415
430
  msgid "Finnish"
431
  msgstr ""
432
 
433
- #: admin/class-settings.php:416
434
  msgid "Filipino"
435
  msgstr ""
436
 
437
- #: admin/class-settings.php:417
438
  msgid "French"
439
  msgstr ""
440
 
441
- #: admin/class-settings.php:418
442
  msgid "Galician"
443
  msgstr ""
444
 
445
- #: admin/class-settings.php:419
446
  msgid "Gujarati"
447
  msgstr ""
448
 
449
- #: admin/class-settings.php:420
450
  msgid "Hindi"
451
  msgstr ""
452
 
453
- #: admin/class-settings.php:421
454
  msgid "Croatian"
455
  msgstr ""
456
 
457
- #: admin/class-settings.php:422
458
  msgid "Hungarian"
459
  msgstr ""
460
 
461
- #: admin/class-settings.php:423
462
  msgid "Indonesian"
463
  msgstr ""
464
 
465
- #: admin/class-settings.php:424
466
  msgid "Italian"
467
  msgstr ""
468
 
469
- #: admin/class-settings.php:425
470
  msgid "Hebrew"
471
  msgstr ""
472
 
473
- #: admin/class-settings.php:426
474
  msgid "Japanese"
475
  msgstr ""
476
 
477
- #: admin/class-settings.php:427
478
  msgid "Kannada"
479
  msgstr ""
480
 
481
- #: admin/class-settings.php:428
482
  msgid "Korean"
483
  msgstr ""
484
 
485
- #: admin/class-settings.php:429
486
  msgid "Lithuanian"
487
  msgstr ""
488
 
489
- #: admin/class-settings.php:430
490
  msgid "Latvian"
491
  msgstr ""
492
 
493
- #: admin/class-settings.php:431
494
  msgid "Malayalam"
495
  msgstr ""
496
 
497
- #: admin/class-settings.php:432
498
  msgid "Marathi"
499
  msgstr ""
500
 
501
- #: admin/class-settings.php:433
502
  msgid "Dutch"
503
  msgstr ""
504
 
505
- #: admin/class-settings.php:434
506
  msgid "Norwegian"
507
  msgstr ""
508
 
509
- #: admin/class-settings.php:435
510
  msgid "Norwegian Nynorsk"
511
  msgstr ""
512
 
513
- #: admin/class-settings.php:436
514
  msgid "Polish"
515
  msgstr ""
516
 
517
- #: admin/class-settings.php:437
518
  msgid "Portuguese"
519
  msgstr ""
520
 
521
- #: admin/class-settings.php:438
522
  msgid "Portuguese (Brazil)"
523
  msgstr ""
524
 
525
- #: admin/class-settings.php:439
526
  msgid "Portuguese (Portugal)"
527
  msgstr ""
528
 
529
- #: admin/class-settings.php:440
530
  msgid "Romanian"
531
  msgstr ""
532
 
533
- #: admin/class-settings.php:441
534
  msgid "Russian"
535
  msgstr ""
536
 
537
- #: admin/class-settings.php:442
538
  msgid "Slovak"
539
  msgstr ""
540
 
541
- #: admin/class-settings.php:443
542
  msgid "Slovenian"
543
  msgstr ""
544
 
545
- #: admin/class-settings.php:444
546
  msgid "Serbian"
547
  msgstr ""
548
 
549
- #: admin/class-settings.php:445
550
  msgid "Swedish"
551
  msgstr ""
552
 
553
- #: admin/class-settings.php:446
554
  msgid "Tagalog"
555
  msgstr ""
556
 
557
- #: admin/class-settings.php:447
558
  msgid "Tamil"
559
  msgstr ""
560
 
561
- #: admin/class-settings.php:448
562
  msgid "Telugu"
563
  msgstr ""
564
 
565
- #: admin/class-settings.php:449
566
  msgid "Thai"
567
  msgstr ""
568
 
569
- #: admin/class-settings.php:450
570
  msgid "Turkish"
571
  msgstr ""
572
 
573
- #: admin/class-settings.php:451
574
  msgid "Ukrainian"
575
  msgstr ""
576
 
577
- #: admin/class-settings.php:452
578
  msgid "Vietnamese"
579
  msgstr ""
580
 
581
- #: admin/class-settings.php:453
582
  msgid "Chinese (Simplified)"
583
  msgstr ""
584
 
585
- #: admin/class-settings.php:454
586
  msgid "Chinese (Traditional)"
587
  msgstr ""
588
 
589
- #: admin/class-settings.php:459
590
  msgid "Select your region"
591
  msgstr ""
592
 
593
- #: admin/class-settings.php:460
594
  msgid "Afghanistan"
595
  msgstr ""
596
 
597
- #: admin/class-settings.php:461
598
  msgid "Albania"
599
  msgstr ""
600
 
601
- #: admin/class-settings.php:462
602
  msgid "Algeria"
603
  msgstr ""
604
 
605
- #: admin/class-settings.php:463
606
  msgid "American Samoa"
607
  msgstr ""
608
 
609
- #: admin/class-settings.php:464
610
  msgid "Andorra"
611
  msgstr ""
612
 
613
- #: admin/class-settings.php:465
614
  msgid "Anguilla"
615
  msgstr ""
616
 
617
- #: admin/class-settings.php:466
618
  msgid "Angola"
619
  msgstr ""
620
 
621
- #: admin/class-settings.php:467
622
  msgid "Antigua and Barbuda"
623
  msgstr ""
624
 
625
- #: admin/class-settings.php:468
626
  msgid "Argentina"
627
  msgstr ""
628
 
629
- #: admin/class-settings.php:469
630
  msgid "Armenia"
631
  msgstr ""
632
 
633
- #: admin/class-settings.php:470
634
  msgid "Aruba"
635
  msgstr ""
636
 
637
- #: admin/class-settings.php:471
638
  msgid "Australia"
639
  msgstr ""
640
 
641
- #: admin/class-settings.php:472
642
  msgid "Austria"
643
  msgstr ""
644
 
645
- #: admin/class-settings.php:473
646
  msgid "Azerbaijan"
647
  msgstr ""
648
 
649
- #: admin/class-settings.php:474
650
  msgid "Bahamas"
651
  msgstr ""
652
 
653
- #: admin/class-settings.php:475
654
  msgid "Bahrain"
655
  msgstr ""
656
 
657
- #: admin/class-settings.php:476
658
  msgid "Bangladesh"
659
  msgstr ""
660
 
661
- #: admin/class-settings.php:477
662
  msgid "Barbados"
663
  msgstr ""
664
 
665
- #: admin/class-settings.php:478
666
  msgid "Belarus"
667
  msgstr ""
668
 
669
- #: admin/class-settings.php:479
670
  msgid "Belgium"
671
  msgstr ""
672
 
673
- #: admin/class-settings.php:480
674
  msgid "Belize"
675
  msgstr ""
676
 
677
- #: admin/class-settings.php:481
678
  msgid "Benin"
679
  msgstr ""
680
 
681
- #: admin/class-settings.php:482
682
  msgid "Bermuda"
683
  msgstr ""
684
 
685
- #: admin/class-settings.php:483
686
  msgid "Bhutan"
687
  msgstr ""
688
 
689
- #: admin/class-settings.php:484
690
  msgid "Bolivia"
691
  msgstr ""
692
 
693
- #: admin/class-settings.php:485
694
  msgid "Bosnia and Herzegovina"
695
  msgstr ""
696
 
697
- #: admin/class-settings.php:486
698
  msgid "Botswana"
699
  msgstr ""
700
 
701
- #: admin/class-settings.php:487
702
  msgid "Brazil"
703
  msgstr ""
704
 
705
- #: admin/class-settings.php:488
706
  msgid "British Indian Ocean Territory"
707
  msgstr ""
708
 
709
- #: admin/class-settings.php:489
710
  msgid "Brunei"
711
  msgstr ""
712
 
713
- #: admin/class-settings.php:490
714
  msgid "Bulgaria"
715
  msgstr ""
716
 
717
- #: admin/class-settings.php:491
718
  msgid "Burkina Faso"
719
  msgstr ""
720
 
721
- #: admin/class-settings.php:492
722
  msgid "Burundi"
723
  msgstr ""
724
 
725
- #: admin/class-settings.php:493
726
  msgid "Cambodia"
727
  msgstr ""
728
 
729
- #: admin/class-settings.php:494
730
  msgid "Cameroon"
731
  msgstr ""
732
 
733
- #: admin/class-settings.php:495
734
  msgid "Canada"
735
  msgstr ""
736
 
737
- #: admin/class-settings.php:496
738
  msgid "Cape Verde"
739
  msgstr ""
740
 
741
- #: admin/class-settings.php:497
742
  msgid "Cayman Islands"
743
  msgstr ""
744
 
745
- #: admin/class-settings.php:498
746
  msgid "Central African Republic"
747
  msgstr ""
748
 
749
- #: admin/class-settings.php:499
750
  msgid "Chad"
751
  msgstr ""
752
 
753
- #: admin/class-settings.php:500
754
  msgid "Chile"
755
  msgstr ""
756
 
757
- #: admin/class-settings.php:501
758
  msgid "China"
759
  msgstr ""
760
 
761
- #: admin/class-settings.php:502
762
  msgid "Christmas Island"
763
  msgstr ""
764
 
765
- #: admin/class-settings.php:503
766
  msgid "Cocos Islands"
767
  msgstr ""
768
 
769
- #: admin/class-settings.php:504
770
  msgid "Colombia"
771
  msgstr ""
772
 
773
- #: admin/class-settings.php:505
774
  msgid "Comoros"
775
  msgstr ""
776
 
777
- #: admin/class-settings.php:506
778
  msgid "Congo"
779
  msgstr ""
780
 
781
- #: admin/class-settings.php:507
782
  msgid "Costa Rica"
783
  msgstr ""
784
 
785
- #: admin/class-settings.php:508
786
  msgid "Côte d'Ivoire"
787
  msgstr ""
788
 
789
- #: admin/class-settings.php:509
790
  msgid "Croatia"
791
  msgstr ""
792
 
793
- #: admin/class-settings.php:510
794
  msgid "Cuba"
795
  msgstr ""
796
 
797
- #: admin/class-settings.php:511
798
  msgid "Czech Republic"
799
  msgstr ""
800
 
801
- #: admin/class-settings.php:512
802
  msgid "Denmark"
803
  msgstr ""
804
 
805
- #: admin/class-settings.php:513
806
  msgid "Djibouti"
807
  msgstr ""
808
 
809
- #: admin/class-settings.php:514
810
  msgid "Democratic Republic of the Congo"
811
  msgstr ""
812
 
813
- #: admin/class-settings.php:515
814
  msgid "Dominica"
815
  msgstr ""
816
 
817
- #: admin/class-settings.php:516
818
  msgid "Dominican Republic"
819
  msgstr ""
820
 
821
- #: admin/class-settings.php:517
822
  msgid "Ecuador"
823
  msgstr ""
824
 
825
- #: admin/class-settings.php:518
826
  msgid "Egypt"
827
  msgstr ""
828
 
829
- #: admin/class-settings.php:519
830
  msgid "El Salvador"
831
  msgstr ""
832
 
833
- #: admin/class-settings.php:520
834
  msgid "Equatorial Guinea"
835
  msgstr ""
836
 
837
- #: admin/class-settings.php:521
838
  msgid "Eritrea"
839
  msgstr ""
840
 
841
- #: admin/class-settings.php:522
842
  msgid "Estonia"
843
  msgstr ""
844
 
845
- #: admin/class-settings.php:523
846
  msgid "Ethiopia"
847
  msgstr ""
848
 
849
- #: admin/class-settings.php:524
850
  msgid "Fiji"
851
  msgstr ""
852
 
853
- #: admin/class-settings.php:525
854
  msgid "Finland"
855
  msgstr ""
856
 
857
- #: admin/class-settings.php:526
858
  msgid "France"
859
  msgstr ""
860
 
861
- #: admin/class-settings.php:527
862
  msgid "French Guiana"
863
  msgstr ""
864
 
865
- #: admin/class-settings.php:528
866
  msgid "Gabon"
867
  msgstr ""
868
 
869
- #: admin/class-settings.php:529
870
  msgid "Gambia"
871
  msgstr ""
872
 
873
- #: admin/class-settings.php:530
874
  msgid "Germany"
875
  msgstr ""
876
 
877
- #: admin/class-settings.php:531
878
  msgid "Ghana"
879
  msgstr ""
880
 
881
- #: admin/class-settings.php:532
882
  msgid "Greenland"
883
  msgstr ""
884
 
885
- #: admin/class-settings.php:533
886
  msgid "Greece"
887
  msgstr ""
888
 
889
- #: admin/class-settings.php:534
890
  msgid "Grenada"
891
  msgstr ""
892
 
893
- #: admin/class-settings.php:535
894
  msgid "Guam"
895
  msgstr ""
896
 
897
- #: admin/class-settings.php:536
898
  msgid "Guadeloupe"
899
  msgstr ""
900
 
901
- #: admin/class-settings.php:537
902
  msgid "Guatemala"
903
  msgstr ""
904
 
905
- #: admin/class-settings.php:538
906
  msgid "Guinea"
907
  msgstr ""
908
 
909
- #: admin/class-settings.php:539
910
  msgid "Guinea-Bissau"
911
  msgstr ""
912
 
913
- #: admin/class-settings.php:540
914
  msgid "Haiti"
915
  msgstr ""
916
 
917
- #: admin/class-settings.php:541
918
  msgid "Honduras"
919
  msgstr ""
920
 
921
- #: admin/class-settings.php:542
922
  msgid "Hong Kong"
923
  msgstr ""
924
 
925
- #: admin/class-settings.php:543
926
  msgid "Hungary"
927
  msgstr ""
928
 
929
- #: admin/class-settings.php:544
930
  msgid "Iceland"
931
  msgstr ""
932
 
933
- #: admin/class-settings.php:545
934
  msgid "India"
935
  msgstr ""
936
 
937
- #: admin/class-settings.php:546
938
  msgid "Indonesia"
939
  msgstr ""
940
 
941
- #: admin/class-settings.php:547
942
  msgid "Iran"
943
  msgstr ""
944
 
945
- #: admin/class-settings.php:548
946
  msgid "Iraq"
947
  msgstr ""
948
 
949
- #: admin/class-settings.php:549
950
  msgid "Ireland"
951
  msgstr ""
952
 
953
- #: admin/class-settings.php:550
954
  msgid "Israel"
955
  msgstr ""
956
 
957
- #: admin/class-settings.php:551
958
  msgid "Italy"
959
  msgstr ""
960
 
961
- #: admin/class-settings.php:552
962
  msgid "Jamaica"
963
  msgstr ""
964
 
965
- #: admin/class-settings.php:553
966
  msgid "Japan"
967
  msgstr ""
968
 
969
- #: admin/class-settings.php:554
970
  msgid "Jordan"
971
  msgstr ""
972
 
973
- #: admin/class-settings.php:555
974
  msgid "Kazakhstan"
975
  msgstr ""
976
 
977
- #: admin/class-settings.php:556
978
  msgid "Kenya"
979
  msgstr ""
980
 
981
- #: admin/class-settings.php:557
982
  msgid "Kuwait"
983
  msgstr ""
984
 
985
- #: admin/class-settings.php:558
986
  msgid "Kyrgyzstan"
987
  msgstr ""
988
 
989
- #: admin/class-settings.php:559
990
  msgid "Laos"
991
  msgstr ""
992
 
993
- #: admin/class-settings.php:560
994
  msgid "Latvia"
995
  msgstr ""
996
 
997
- #: admin/class-settings.php:561
998
  msgid "Lebanon"
999
  msgstr ""
1000
 
1001
- #: admin/class-settings.php:562
1002
  msgid "Lesotho"
1003
  msgstr ""
1004
 
1005
- #: admin/class-settings.php:563
1006
  msgid "Liberia"
1007
  msgstr ""
1008
 
1009
- #: admin/class-settings.php:564
1010
  msgid "Libya"
1011
  msgstr ""
1012
 
1013
- #: admin/class-settings.php:565
1014
  msgid "Liechtenstein"
1015
  msgstr ""
1016
 
1017
- #: admin/class-settings.php:566
1018
  msgid "Lithuania"
1019
  msgstr ""
1020
 
1021
- #: admin/class-settings.php:567
1022
  msgid "Luxembourg"
1023
  msgstr ""
1024
 
1025
- #: admin/class-settings.php:568
1026
  msgid "Macau"
1027
  msgstr ""
1028
 
1029
- #: admin/class-settings.php:569
1030
  msgid "Macedonia"
1031
  msgstr ""
1032
 
1033
- #: admin/class-settings.php:570
1034
  msgid "Madagascar"
1035
  msgstr ""
1036
 
1037
- #: admin/class-settings.php:571
1038
  msgid "Malawi"
1039
  msgstr ""
1040
 
1041
- #: admin/class-settings.php:572
1042
  msgid "Malaysia "
1043
  msgstr ""
1044
 
1045
- #: admin/class-settings.php:573
1046
  msgid "Mali"
1047
  msgstr ""
1048
 
1049
- #: admin/class-settings.php:574
1050
  msgid "Marshall Islands"
1051
  msgstr ""
1052
 
1053
- #: admin/class-settings.php:575
1054
  msgid "Martinique"
1055
  msgstr ""
1056
 
1057
- #: admin/class-settings.php:576
1058
  msgid "Mauritania"
1059
  msgstr ""
1060
 
1061
- #: admin/class-settings.php:577
1062
  msgid "Mauritius"
1063
  msgstr ""
1064
 
1065
- #: admin/class-settings.php:578
1066
  msgid "Mexico"
1067
  msgstr ""
1068
 
1069
- #: admin/class-settings.php:579
1070
  msgid "Micronesia"
1071
  msgstr ""
1072
 
1073
- #: admin/class-settings.php:580
1074
  msgid "Moldova"
1075
  msgstr ""
1076
 
1077
- #: admin/class-settings.php:581
1078
  msgid "Monaco"
1079
  msgstr ""
1080
 
1081
- #: admin/class-settings.php:582
1082
  msgid "Mongolia"
1083
  msgstr ""
1084
 
1085
- #: admin/class-settings.php:583
1086
  msgid "Montenegro"
1087
  msgstr ""
1088
 
1089
- #: admin/class-settings.php:584
1090
  msgid "Montserrat"
1091
  msgstr ""
1092
 
1093
- #: admin/class-settings.php:585
1094
  msgid "Morocco"
1095
  msgstr ""
1096
 
1097
- #: admin/class-settings.php:586
1098
  msgid "Mozambique"
1099
  msgstr ""
1100
 
1101
- #: admin/class-settings.php:587
1102
  msgid "Myanmar"
1103
  msgstr ""
1104
 
1105
- #: admin/class-settings.php:588
1106
  msgid "Namibia"
1107
  msgstr ""
1108
 
1109
- #: admin/class-settings.php:589
1110
  msgid "Nauru"
1111
  msgstr ""
1112
 
1113
- #: admin/class-settings.php:590
1114
  msgid "Nepal"
1115
  msgstr ""
1116
 
1117
- #: admin/class-settings.php:591
1118
  msgid "Netherlands"
1119
  msgstr ""
1120
 
1121
- #: admin/class-settings.php:592
1122
  msgid "Netherlands Antilles"
1123
  msgstr ""
1124
 
1125
- #: admin/class-settings.php:593
1126
  msgid "New Zealand"
1127
  msgstr ""
1128
 
1129
- #: admin/class-settings.php:594
1130
  msgid "Nicaragua"
1131
  msgstr ""
1132
 
1133
- #: admin/class-settings.php:595
1134
  msgid "Niger"
1135
  msgstr ""
1136
 
1137
- #: admin/class-settings.php:596
1138
  msgid "Nigeria"
1139
  msgstr ""
1140
 
1141
- #: admin/class-settings.php:597
1142
  msgid "Niue"
1143
  msgstr ""
1144
 
1145
- #: admin/class-settings.php:598
1146
  msgid "Northern Mariana Islands"
1147
  msgstr ""
1148
 
1149
- #: admin/class-settings.php:599
1150
  msgid "Norway"
1151
  msgstr ""
1152
 
1153
- #: admin/class-settings.php:600
1154
  msgid "Oman"
1155
  msgstr ""
1156
 
1157
- #: admin/class-settings.php:601
1158
  msgid "Pakistan"
1159
  msgstr ""
1160
 
1161
- #: admin/class-settings.php:602
1162
  msgid "Panama"
1163
  msgstr ""
1164
 
1165
- #: admin/class-settings.php:603
1166
  msgid "Papua New Guinea"
1167
  msgstr ""
1168
 
1169
- #: admin/class-settings.php:604
1170
  msgid "Paraguay"
1171
  msgstr ""
1172
 
1173
- #: admin/class-settings.php:605
1174
  msgid "Peru"
1175
  msgstr ""
1176
 
1177
- #: admin/class-settings.php:606
1178
  msgid "Philippines"
1179
  msgstr ""
1180
 
1181
- #: admin/class-settings.php:607
1182
  msgid "Pitcairn Islands"
1183
  msgstr ""
1184
 
1185
- #: admin/class-settings.php:608
1186
  msgid "Poland"
1187
  msgstr ""
1188
 
1189
- #: admin/class-settings.php:609
1190
  msgid "Portugal"
1191
  msgstr ""
1192
 
1193
- #: admin/class-settings.php:610
1194
  msgid "Qatar"
1195
  msgstr ""
1196
 
1197
- #: admin/class-settings.php:611
1198
  msgid "Reunion"
1199
  msgstr ""
1200
 
1201
- #: admin/class-settings.php:612
1202
  msgid "Romania"
1203
  msgstr ""
1204
 
1205
- #: admin/class-settings.php:613
1206
  msgid "Russia"
1207
  msgstr ""
1208
 
1209
- #: admin/class-settings.php:614
1210
  msgid "Rwanda"
1211
  msgstr ""
1212
 
1213
- #: admin/class-settings.php:615
1214
  msgid "Saint Helena"
1215
  msgstr ""
1216
 
1217
- #: admin/class-settings.php:616
1218
  msgid "Saint Kitts and Nevis"
1219
  msgstr ""
1220
 
1221
- #: admin/class-settings.php:617
1222
  msgid "Saint Vincent and the Grenadines"
1223
  msgstr ""
1224
 
1225
- #: admin/class-settings.php:618
1226
  msgid "Saint Lucia"
1227
  msgstr ""
1228
 
1229
- #: admin/class-settings.php:619
1230
  msgid "Samoa"
1231
  msgstr ""
1232
 
1233
- #: admin/class-settings.php:620
1234
  msgid "San Marino"
1235
  msgstr ""
1236
 
1237
- #: admin/class-settings.php:621
1238
  msgid "São Tomé and Príncipe"
1239
  msgstr ""
1240
 
1241
- #: admin/class-settings.php:622
1242
  msgid "Saudi Arabia"
1243
  msgstr ""
1244
 
1245
- #: admin/class-settings.php:623
1246
  msgid "Senegal"
1247
  msgstr ""
1248
 
1249
- #: admin/class-settings.php:624
1250
  msgid "Serbia"
1251
  msgstr ""
1252
 
1253
- #: admin/class-settings.php:625
1254
  msgid "Seychelles"
1255
  msgstr ""
1256
 
1257
- #: admin/class-settings.php:626
1258
  msgid "Sierra Leone"
1259
  msgstr ""
1260
 
1261
- #: admin/class-settings.php:627
1262
  msgid "Singapore"
1263
  msgstr ""
1264
 
1265
- #: admin/class-settings.php:628
1266
  msgid "Slovakia"
1267
  msgstr ""
1268
 
1269
- #: admin/class-settings.php:629
1270
  msgid "Solomon Islands"
1271
  msgstr ""
1272
 
1273
- #: admin/class-settings.php:630
1274
  msgid "Somalia"
1275
  msgstr ""
1276
 
1277
- #: admin/class-settings.php:631
1278
  msgid "South Africa"
1279
  msgstr ""
1280
 
1281
- #: admin/class-settings.php:632
1282
  msgid "South Korea"
1283
  msgstr ""
1284
 
1285
- #: admin/class-settings.php:633
1286
  msgid "Spain"
1287
  msgstr ""
1288
 
1289
- #: admin/class-settings.php:634
1290
  msgid "Sri Lanka"
1291
  msgstr ""
1292
 
1293
- #: admin/class-settings.php:635
1294
  msgid "Sudan"
1295
  msgstr ""
1296
 
1297
- #: admin/class-settings.php:636
1298
  msgid "Swaziland"
1299
  msgstr ""
1300
 
1301
- #: admin/class-settings.php:637
1302
  msgid "Sweden"
1303
  msgstr ""
1304
 
1305
- #: admin/class-settings.php:638
1306
  msgid "Switzerland"
1307
  msgstr ""
1308
 
1309
- #: admin/class-settings.php:639
1310
  msgid "Syria"
1311
  msgstr ""
1312
 
1313
- #: admin/class-settings.php:640
1314
  msgid "Taiwan"
1315
  msgstr ""
1316
 
1317
- #: admin/class-settings.php:641
1318
  msgid "Tajikistan"
1319
  msgstr ""
1320
 
1321
- #: admin/class-settings.php:642
1322
  msgid "Tanzania"
1323
  msgstr ""
1324
 
1325
- #: admin/class-settings.php:643
1326
  msgid "Thailand"
1327
  msgstr ""
1328
 
1329
- #: admin/class-settings.php:644
1330
  msgid "Timor-Leste"
1331
  msgstr ""
1332
 
1333
- #: admin/class-settings.php:645
1334
  msgid "Tokelau"
1335
  msgstr ""
1336
 
1337
- #: admin/class-settings.php:646
1338
  msgid "Togo"
1339
  msgstr ""
1340
 
1341
- #: admin/class-settings.php:647
1342
  msgid "Tonga"
1343
  msgstr ""
1344
 
1345
- #: admin/class-settings.php:648
1346
  msgid "Trinidad and Tobago"
1347
  msgstr ""
1348
 
1349
- #: admin/class-settings.php:649
1350
  msgid "Tunisia"
1351
  msgstr ""
1352
 
1353
- #: admin/class-settings.php:650
1354
  msgid "Turkey"
1355
  msgstr ""
1356
 
1357
- #: admin/class-settings.php:651
1358
  msgid "Turkmenistan"
1359
  msgstr ""
1360
 
1361
- #: admin/class-settings.php:652
1362
  msgid "Tuvalu"
1363
  msgstr ""
1364
 
1365
- #: admin/class-settings.php:653
1366
  msgid "Uganda"
1367
  msgstr ""
1368
 
1369
- #: admin/class-settings.php:654
1370
  msgid "Ukraine"
1371
  msgstr ""
1372
 
1373
- #: admin/class-settings.php:655
1374
  msgid "United Arab Emirates"
1375
  msgstr ""
1376
 
1377
- #: admin/class-settings.php:656
1378
  msgid "United Kingdom"
1379
  msgstr ""
1380
 
1381
- #: admin/class-settings.php:657
1382
  msgid "United States"
1383
  msgstr ""
1384
 
1385
- #: admin/class-settings.php:658
1386
  msgid "Uruguay"
1387
  msgstr ""
1388
 
1389
- #: admin/class-settings.php:659
1390
  msgid "Uzbekistan"
1391
  msgstr ""
1392
 
1393
- #: admin/class-settings.php:660
1394
  msgid "Wallis Futuna"
1395
  msgstr ""
1396
 
1397
- #: admin/class-settings.php:661
1398
  msgid "Venezuela"
1399
  msgstr ""
1400
 
1401
- #: admin/class-settings.php:662
1402
  msgid "Vietnam"
1403
  msgstr ""
1404
 
1405
- #: admin/class-settings.php:663
1406
  msgid "Yemen"
1407
  msgstr ""
1408
 
1409
- #: admin/class-settings.php:664
1410
  msgid "Zambia"
1411
  msgstr ""
1412
 
1413
- #: admin/class-settings.php:665
1414
  msgid "Zimbabwe"
1415
  msgstr ""
1416
 
1417
- #: admin/class-settings.php:708
1418
  msgid "World view"
1419
  msgstr ""
1420
 
1421
- #: admin/class-settings.php:711 admin/class-settings.php:825
1422
- #: inc/wpsl-functions.php:189
1423
  msgid "Default"
1424
  msgstr ""
1425
 
1426
- #: admin/class-settings.php:714 inc/wpsl-functions.php:262
1427
  msgid "Roadmap"
1428
  msgstr ""
1429
 
1430
- #: admin/class-settings.php:855
1431
  msgid "Start location marker"
1432
  msgstr ""
1433
 
1434
- #: admin/class-settings.php:857
1435
  msgid "Store location marker"
1436
  msgstr ""
1437
 
1438
- #: admin/class-settings.php:939
1439
  msgid "Textarea"
1440
  msgstr ""
1441
 
1442
- #: admin/class-settings.php:940
1443
  msgid "Dropdowns (recommended)"
1444
  msgstr ""
1445
 
1446
- #: admin/class-settings.php:948
1447
  msgid "Bounces up and down"
1448
  msgstr ""
1449
 
1450
- #: admin/class-settings.php:949
1451
  msgid "Will open the info window"
1452
  msgstr ""
1453
 
1454
- #: admin/class-settings.php:950
1455
  msgid "Does not respond"
1456
  msgstr ""
1457
 
1458
- #: admin/class-settings.php:958
1459
  msgid "In the store listings"
1460
  msgstr ""
1461
 
1462
- #: admin/class-settings.php:959
1463
  msgid "In the info window on the map"
1464
  msgstr ""
1465
 
1466
  #: admin/class-settings.php:1015
1467
- msgid "12 Hours"
1468
  msgstr ""
1469
 
1470
  #: admin/class-settings.php:1016
 
 
 
 
 
 
 
 
1471
  msgid "24 Hours"
1472
  msgstr ""
1473
 
@@ -1475,6 +1455,22 @@ msgstr ""
1475
  msgid "Store Locator Manager"
1476
  msgstr ""
1477
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1478
  #: admin/templates/map-settings.php:43
1479
  msgid "Add-On"
1480
  msgstr ""
@@ -1491,11 +1487,11 @@ msgstr ""
1491
  msgid "Deactivate License"
1492
  msgstr ""
1493
 
1494
- #: admin/templates/map-settings.php:79 admin/templates/map-settings.php:114
1495
- #: admin/templates/map-settings.php:156 admin/templates/map-settings.php:233
1496
- #: admin/templates/map-settings.php:326 admin/templates/map-settings.php:352
1497
- #: admin/templates/map-settings.php:402 admin/templates/map-settings.php:428
1498
- #: admin/templates/map-settings.php:536 admin/templates/map-settings.php:557
1499
  msgid "Save Changes"
1500
  msgstr ""
1501
 
@@ -1504,44 +1500,56 @@ msgid "Google Maps API"
1504
  msgstr ""
1505
 
1506
  #: admin/templates/map-settings.php:94
1507
- msgid "API key"
1508
  msgstr ""
1509
 
1510
  #: admin/templates/map-settings.php:94
1511
  #, php-format
1512
  msgid ""
1513
- "A valid %sAPI key%s allows you to monitor the API usage and is required if "
1514
- "you need to purchase additional quota."
 
1515
  msgstr ""
1516
 
1517
- #: admin/templates/map-settings.php:95
1518
  msgid "Optional"
1519
  msgstr ""
1520
 
1521
  #: admin/templates/map-settings.php:98
1522
- msgid "Map language"
1523
  msgstr ""
1524
 
1525
  #: admin/templates/map-settings.php:98
 
 
 
 
 
 
 
 
 
 
 
1526
  msgid "If no map language is selected the browser's prefered language is used."
1527
  msgstr ""
1528
 
1529
- #: admin/templates/map-settings.php:104
1530
  msgid "Map region"
1531
  msgstr ""
1532
 
1533
- #: admin/templates/map-settings.php:104
1534
  #, php-format
1535
  msgid ""
1536
  "This will bias the %sgeocoding%s results towards the selected region. %s If "
1537
  "no region is selected the bias is set to the United States."
1538
  msgstr ""
1539
 
1540
- #: admin/templates/map-settings.php:110
1541
  msgid "Restrict the geocoding results to the selected map region?"
1542
  msgstr ""
1543
 
1544
- #: admin/templates/map-settings.php:110
1545
  #, php-format
1546
  msgid ""
1547
  "If the %sgeocoding%s API finds more relevant results outside of the set map "
@@ -1551,65 +1559,73 @@ msgid ""
1551
  "restrictions with %sthis%s filter."
1552
  msgstr ""
1553
 
1554
- #: admin/templates/map-settings.php:124 admin/templates/map-settings.php:464
1555
- #: admin/templates/map-settings.php:465 frontend/templates/default.php:43
1556
- #: frontend/templates/store-listings-below.php:43 inc/wpsl-functions.php:107
1557
  msgid "Search"
1558
  msgstr ""
1559
 
1560
- #: admin/templates/map-settings.php:127
 
 
 
 
1561
  msgid "Show the max results dropdown?"
1562
  msgstr ""
1563
 
1564
- #: admin/templates/map-settings.php:131
1565
  msgid "Show the search radius dropdown?"
1566
  msgstr ""
1567
 
1568
- #: admin/templates/map-settings.php:135
1569
- msgid "Show the category dropdown?"
1570
  msgstr ""
1571
 
1572
- #: admin/templates/map-settings.php:139
 
 
 
 
1573
  msgid "Distance unit"
1574
  msgstr ""
1575
 
1576
- #: admin/templates/map-settings.php:142
1577
  msgid "km"
1578
  msgstr ""
1579
 
1580
- #: admin/templates/map-settings.php:144
1581
  msgid "mi"
1582
  msgstr ""
1583
 
1584
- #: admin/templates/map-settings.php:148
1585
  msgid "Max search results"
1586
  msgstr ""
1587
 
1588
- #: admin/templates/map-settings.php:148 admin/templates/map-settings.php:152
1589
  msgid "The default value is set between the [ ]."
1590
  msgstr ""
1591
 
1592
- #: admin/templates/map-settings.php:152
1593
  msgid "Search radius options"
1594
  msgstr ""
1595
 
1596
- #: admin/templates/map-settings.php:166
1597
  msgid "Map"
1598
  msgstr ""
1599
 
1600
- #: admin/templates/map-settings.php:169
1601
  msgid "Attempt to auto-locate the user"
1602
  msgstr ""
1603
 
1604
- #: admin/templates/map-settings.php:173
1605
  msgid "Load locations on page load"
1606
  msgstr ""
1607
 
1608
- #: admin/templates/map-settings.php:177
1609
  msgid "Number of locations to show"
1610
  msgstr ""
1611
 
1612
- #: admin/templates/map-settings.php:177
1613
  #, php-format
1614
  msgid ""
1615
  "Although the location data is cached after the first load, a lower number "
@@ -1617,11 +1633,11 @@ msgid ""
1617
  "or set to 0, then all locations are loaded."
1618
  msgstr ""
1619
 
1620
- #: admin/templates/map-settings.php:181
1621
  msgid "Start point"
1622
  msgstr ""
1623
 
1624
- #: admin/templates/map-settings.php:181
1625
  #, php-format
1626
  msgid ""
1627
  "%sRequired field.%s %s If auto-locating the user is disabled or fails, the "
@@ -1629,15 +1645,15 @@ msgid ""
1629
  "point for the user."
1630
  msgstr ""
1631
 
1632
- #: admin/templates/map-settings.php:186
1633
  msgid "Initial zoom level"
1634
  msgstr ""
1635
 
1636
- #: admin/templates/map-settings.php:190
1637
  msgid "Max auto zoom level"
1638
  msgstr ""
1639
 
1640
- #: admin/templates/map-settings.php:190
1641
  #, php-format
1642
  msgid ""
1643
  "This value sets the zoom level for the \"Zoom here\" link in the info "
@@ -1645,45 +1661,45 @@ msgid ""
1645
  "is changed to make all the markers fit on the screen."
1646
  msgstr ""
1647
 
1648
- #: admin/templates/map-settings.php:194
1649
  msgid "Show the street view controls?"
1650
  msgstr ""
1651
 
1652
- #: admin/templates/map-settings.php:198
1653
  msgid "Show the map type control?"
1654
  msgstr ""
1655
 
1656
- #: admin/templates/map-settings.php:202
1657
  msgid "Enable scroll wheel zooming?"
1658
  msgstr ""
1659
 
1660
- #: admin/templates/map-settings.php:206
1661
  msgid "Zoom control position"
1662
  msgstr ""
1663
 
1664
- #: admin/templates/map-settings.php:209
1665
  msgid "Left"
1666
  msgstr ""
1667
 
1668
- #: admin/templates/map-settings.php:211
1669
  msgid "Right"
1670
  msgstr ""
1671
 
1672
- #: admin/templates/map-settings.php:215
1673
  msgid "Map type"
1674
  msgstr ""
1675
 
1676
- #: admin/templates/map-settings.php:219
1677
  msgid "Map style"
1678
  msgstr ""
1679
 
1680
- #: admin/templates/map-settings.php:219
1681
  msgid ""
1682
  "Custom map styles only work if the map type is set to \"Roadmap\" or "
1683
  "\"Terrain\"."
1684
  msgstr ""
1685
 
1686
- #: admin/templates/map-settings.php:222
1687
  #, php-format
1688
  msgid ""
1689
  "You can use existing map styles from %sSnazzy Maps%s or %sMap Stylr%s and "
@@ -1691,115 +1707,117 @@ msgid ""
1691
  "through the %sMap Style Editor%s or %sStyled Maps Wizard%s."
1692
  msgstr ""
1693
 
1694
- #: admin/templates/map-settings.php:223
1695
  #, php-format
1696
  msgid ""
1697
  "If you like to write the style code yourself, then you can find the "
1698
  "documentation from Google %shere%s."
1699
  msgstr ""
1700
 
1701
- #: admin/templates/map-settings.php:225
1702
  msgid "Preview Map Style"
1703
  msgstr ""
1704
 
1705
- #: admin/templates/map-settings.php:229
1706
  msgid "Show credits?"
1707
  msgstr ""
1708
 
1709
- #: admin/templates/map-settings.php:229
1710
  msgid ""
1711
  "This will place a \"Search provided by WP Store Locator\" backlink below the "
1712
  "map."
1713
  msgstr ""
1714
 
1715
- #: admin/templates/map-settings.php:243
1716
  msgid "User Experience"
1717
  msgstr ""
1718
 
1719
- #: admin/templates/map-settings.php:246
1720
  msgid "Store Locator height"
1721
  msgstr ""
1722
 
1723
- #: admin/templates/map-settings.php:250
1724
  msgid "Max width for the info window content"
1725
  msgstr ""
1726
 
1727
- #: admin/templates/map-settings.php:254
1728
  msgid "Search field width"
1729
  msgstr ""
1730
 
1731
- #: admin/templates/map-settings.php:258
1732
  msgid "Search and radius label width"
1733
  msgstr ""
1734
 
1735
- #: admin/templates/map-settings.php:262
1736
  msgid "Store Locator template"
1737
  msgstr ""
1738
 
1739
- #: admin/templates/map-settings.php:262
1740
  #, php-format
1741
  msgid ""
1742
  "The selected template is used with the [wpsl] shortcode. %s You can add a "
1743
  "custom template with the %swpsl_templates%s filter."
1744
  msgstr ""
1745
 
1746
- #: admin/templates/map-settings.php:266
1747
  msgid "Hide the scrollbar?"
1748
  msgstr ""
1749
 
1750
- #: admin/templates/map-settings.php:270
1751
  msgid "Open links in a new window?"
1752
  msgstr ""
1753
 
1754
- #: admin/templates/map-settings.php:274
1755
  msgid "Show a reset map button?"
1756
  msgstr ""
1757
 
1758
- #: admin/templates/map-settings.php:278
1759
  msgid ""
1760
  "When a user clicks on \"Directions\", open a new window, and show the route "
1761
  "on google.com/maps ?"
1762
  msgstr ""
1763
 
1764
- #: admin/templates/map-settings.php:282
1765
  msgid "Show a \"More info\" link in the store listings?"
1766
  msgstr ""
1767
 
1768
- #: admin/templates/map-settings.php:282
1769
- #, php-format
1770
  msgid ""
1771
  "This places a \"More Info\" link below the address and will show the phone, "
1772
- "fax, email, opening hours and description once the link is clicked. %s If "
1773
- "you for example want the contact details to always be visible, then please "
1774
- "follow the instructions on %sthis%s page."
1775
  msgstr ""
1776
 
1777
- #: admin/templates/map-settings.php:286
1778
  msgid "Where do you want to show the \"More info\" details?"
1779
  msgstr ""
1780
 
1781
- #: admin/templates/map-settings.php:290
 
 
 
 
 
1782
  msgid "Make the store name clickable if a store URL exists?"
1783
  msgstr ""
1784
 
1785
- #: admin/templates/map-settings.php:290
1786
  #, php-format
1787
  msgid ""
1788
  "If %spermalinks%s are enabled, the store name will always link to the store "
1789
  "page."
1790
  msgstr ""
1791
 
1792
- #: admin/templates/map-settings.php:294
1793
  msgid "Make the phone number clickable on mobile devices?"
1794
  msgstr ""
1795
 
1796
- #: admin/templates/map-settings.php:298
1797
  msgid ""
1798
  "If street view is available for the current location, then show a \"Street "
1799
  "view\" link in the info window?"
1800
  msgstr ""
1801
 
1802
- #: admin/templates/map-settings.php:298
1803
  #, php-format
1804
  msgid ""
1805
  "Enabling this option can sometimes result in a small delay in the opening of "
@@ -1807,22 +1825,22 @@ msgid ""
1807
  "Maps to check if street view is available for the current location."
1808
  msgstr ""
1809
 
1810
- #: admin/templates/map-settings.php:302
1811
  msgid "Show a \"Zoom here\" link in the info window?"
1812
  msgstr ""
1813
 
1814
- #: admin/templates/map-settings.php:302
1815
  #, php-format
1816
  msgid ""
1817
  "Clicking this link will make the map zoom in to the %s max auto zoom level "
1818
  "%s."
1819
  msgstr ""
1820
 
1821
- #: admin/templates/map-settings.php:306
1822
  msgid "On page load move the mouse cursor to the search field?"
1823
  msgstr ""
1824
 
1825
- #: admin/templates/map-settings.php:306
1826
  #, php-format
1827
  msgid ""
1828
  "If the store locator is not placed at the top of the page, enabling this "
@@ -1830,11 +1848,11 @@ msgid ""
1830
  "on mobile devices.%s"
1831
  msgstr ""
1832
 
1833
- #: admin/templates/map-settings.php:310
1834
  msgid "Use the default style for the info window?"
1835
  msgstr ""
1836
 
1837
- #: admin/templates/map-settings.php:310
1838
  #, php-format
1839
  msgid ""
1840
  "If the default style is disabled the %sInfoBox%s library will be used "
@@ -1842,15 +1860,19 @@ msgid ""
1842
  "window through the .wpsl-infobox css class."
1843
  msgstr ""
1844
 
1845
- #: admin/templates/map-settings.php:314
 
 
 
 
1846
  msgid "Hide the distance in the search results?"
1847
  msgstr ""
1848
 
1849
- #: admin/templates/map-settings.php:318
1850
  msgid "If a user hovers over the search results the store marker"
1851
  msgstr ""
1852
 
1853
- #: admin/templates/map-settings.php:318
1854
  #, php-format
1855
  msgid ""
1856
  "If marker clusters are enabled this option will not work as expected as long "
@@ -1860,295 +1882,305 @@ msgid ""
1860
  "it won't be clear to which marker it belongs to. "
1861
  msgstr ""
1862
 
1863
- #: admin/templates/map-settings.php:322
1864
  msgid "Address format"
1865
  msgstr ""
1866
 
1867
- #: admin/templates/map-settings.php:322
1868
  #, php-format
1869
  msgid ""
1870
  "You can add custom address formats with the %swpsl_address_formats%s filter."
1871
  msgstr ""
1872
 
1873
- #: admin/templates/map-settings.php:336
1874
  msgid "Markers"
1875
  msgstr ""
1876
 
1877
- #: admin/templates/map-settings.php:340
1878
  msgid "Enable marker clusters?"
1879
  msgstr ""
1880
 
1881
- #: admin/templates/map-settings.php:340
1882
  msgid "Recommended for maps with a large amount of markers."
1883
  msgstr ""
1884
 
1885
- #: admin/templates/map-settings.php:344
1886
  msgid "Max zoom level"
1887
  msgstr ""
1888
 
1889
- #: admin/templates/map-settings.php:344
1890
  msgid ""
1891
  "If this zoom level is reached or exceeded, then all markers are moved out of "
1892
  "the marker cluster and shown as individual markers."
1893
  msgstr ""
1894
 
1895
- #: admin/templates/map-settings.php:348
1896
  msgid "Cluster size"
1897
  msgstr ""
1898
 
1899
- #: admin/templates/map-settings.php:348
1900
  #, php-format
1901
  msgid ""
1902
  "The grid size of a cluster in pixels. %s A larger number will result in a "
1903
  "lower amount of clusters and also make the algorithm run faster."
1904
  msgstr ""
1905
 
1906
- #: admin/templates/map-settings.php:362
1907
  msgid "Store Editor"
1908
  msgstr ""
1909
 
1910
- #: admin/templates/map-settings.php:365
1911
  msgid "Default country"
1912
  msgstr ""
1913
 
1914
- #: admin/templates/map-settings.php:369
1915
  msgid "Map type for the location preview"
1916
  msgstr ""
1917
 
1918
- #: admin/templates/map-settings.php:373
1919
  msgid "Hide the opening hours?"
1920
  msgstr ""
1921
 
1922
- #: admin/templates/map-settings.php:379
1923
  msgid "Opening hours input type"
1924
  msgstr ""
1925
 
1926
- #: admin/templates/map-settings.php:383
1927
  #, php-format
1928
  msgid ""
1929
  "Opening hours created in version 1.x %sare not%s automatically converted to "
1930
  "the new dropdown format."
1931
  msgstr ""
1932
 
1933
- #: admin/templates/map-settings.php:386 admin/templates/map-settings.php:395
1934
  msgid "The default opening hours"
1935
  msgstr ""
1936
 
1937
- #: admin/templates/map-settings.php:392
1938
  msgid "Opening hours format"
1939
  msgstr ""
1940
 
1941
- #: admin/templates/map-settings.php:399
1942
  msgid ""
1943
  "The default country and opening hours are only used when a new store is "
1944
  "created. So changing the default values will have no effect on existing "
1945
  "store locations."
1946
  msgstr ""
1947
 
1948
- #: admin/templates/map-settings.php:412
1949
  msgid "Permalink"
1950
  msgstr ""
1951
 
1952
- #: admin/templates/map-settings.php:415
1953
  msgid "Enable permalink?"
1954
  msgstr ""
1955
 
1956
- #: admin/templates/map-settings.php:419
1957
  msgid "Store slug"
1958
  msgstr ""
1959
 
1960
- #: admin/templates/map-settings.php:423
1961
  msgid "Category slug"
1962
  msgstr ""
1963
 
1964
- #: admin/templates/map-settings.php:426
1965
  #, php-format
1966
  msgid "The permalink slugs %smust be unique%s on your site."
1967
  msgstr ""
1968
 
1969
- #: admin/templates/map-settings.php:438
1970
  msgid "Labels"
1971
  msgstr ""
1972
 
1973
- #: admin/templates/map-settings.php:447
1974
  #, php-format
1975
  msgid "%sWarning!%s %sWPML%s, or a plugin using the WPML API is active."
1976
  msgstr ""
1977
 
1978
- #: admin/templates/map-settings.php:448
1979
  msgid ""
1980
  "Please use the \"String Translations\" section in the used multilingual "
1981
  "plugin to change the labels. Changing them here will have no effect as long "
1982
  "as the multilingual plugin remains active."
1983
  msgstr ""
1984
 
1985
- #: admin/templates/map-settings.php:452 admin/templates/map-settings.php:453
1986
- #: frontend/templates/default.php:11
1987
- #: frontend/templates/store-listings-below.php:11 inc/wpsl-functions.php:106
1988
  msgid "Your location"
1989
  msgstr ""
1990
 
1991
- #: admin/templates/map-settings.php:456 admin/templates/map-settings.php:457
1992
- #: frontend/templates/default.php:20
1993
- #: frontend/templates/store-listings-below.php:20 inc/wpsl-functions.php:109
1994
  msgid "Search radius"
1995
  msgstr ""
1996
 
1997
- #: admin/templates/map-settings.php:460 admin/templates/map-settings.php:461
1998
- #: frontend/class-frontend.php:1408 inc/wpsl-functions.php:110
1999
  msgid "No results found"
2000
  msgstr ""
2001
 
2002
- #: admin/templates/map-settings.php:468
2003
  msgid "Searching (preloader text)"
2004
  msgstr ""
2005
 
2006
- #: admin/templates/map-settings.php:469 frontend/class-frontend.php:1407
2007
- #: inc/wpsl-functions.php:108
2008
  msgid "Searching..."
2009
  msgstr ""
2010
 
2011
- #: admin/templates/map-settings.php:472 admin/templates/map-settings.php:473
2012
- #: frontend/templates/default.php:29
2013
- #: frontend/templates/store-listings-below.php:29 inc/wpsl-functions.php:111
2014
  msgid "Results"
2015
  msgstr ""
2016
 
2017
- #: admin/templates/map-settings.php:476 admin/upgrade.php:218
2018
- #: inc/wpsl-functions.php:125
2019
  msgid "Category filter"
2020
  msgstr ""
2021
 
2022
- #: admin/templates/map-settings.php:477 frontend/class-frontend.php:1127
2023
  msgid "Category"
2024
  msgstr ""
2025
 
2026
- #: admin/templates/map-settings.php:480 admin/templates/map-settings.php:481
2027
- #: admin/upgrade.php:66 frontend/class-frontend.php:1409
2028
- #: frontend/underscore-functions.php:114 frontend/underscore-functions.php:141
2029
- #: inc/wpsl-functions.php:112
 
 
 
 
 
 
 
 
 
2030
  msgid "More info"
2031
  msgstr ""
2032
 
2033
- #: admin/templates/map-settings.php:484 admin/templates/map-settings.php:485
2034
- #: frontend/class-frontend.php:673 frontend/underscore-functions.php:29
2035
- #: frontend/underscore-functions.php:121 inc/wpsl-functions.php:120
 
2036
  msgid "Phone"
2037
  msgstr ""
2038
 
2039
- #: admin/templates/map-settings.php:504 admin/templates/map-settings.php:505
2040
- #: frontend/class-frontend.php:1414 inc/wpsl-functions.php:105
2041
  msgid "Start location"
2042
  msgstr ""
2043
 
2044
- #: admin/templates/map-settings.php:508
2045
  msgid "Get directions"
2046
  msgstr ""
2047
 
2048
- #: admin/templates/map-settings.php:509 frontend/class-frontend.php:1412
2049
- #: inc/wpsl-functions.php:113
2050
  msgid "Directions"
2051
  msgstr ""
2052
 
2053
- #: admin/templates/map-settings.php:512
2054
  msgid "No directions found"
2055
  msgstr ""
2056
 
2057
- #: admin/templates/map-settings.php:513 admin/upgrade.php:163
2058
- #: frontend/class-frontend.php:1413 inc/wpsl-functions.php:114
2059
  msgid "No route could be found between the origin and destination"
2060
  msgstr ""
2061
 
2062
- #: admin/templates/map-settings.php:516 admin/templates/map-settings.php:517
2063
- #: admin/upgrade.php:87 frontend/class-frontend.php:1415
2064
- #: inc/wpsl-functions.php:115
2065
  msgid "Back"
2066
  msgstr ""
2067
 
2068
- #: admin/templates/map-settings.php:520 admin/templates/map-settings.php:521
2069
- #: admin/upgrade.php:155 frontend/class-frontend.php:1416
2070
- #: inc/wpsl-functions.php:116
2071
  msgid "Street view"
2072
  msgstr ""
2073
 
2074
- #: admin/templates/map-settings.php:524 admin/templates/map-settings.php:525
2075
- #: admin/upgrade.php:159 frontend/class-frontend.php:1417
2076
- #: inc/wpsl-functions.php:117
2077
  msgid "Zoom here"
2078
  msgstr ""
2079
 
2080
- #: admin/templates/map-settings.php:528
2081
  msgid "General error"
2082
  msgstr ""
2083
 
2084
- #: admin/templates/map-settings.php:529 frontend/class-frontend.php:1410
2085
- #: inc/wpsl-functions.php:118
2086
  msgid "Something went wrong, please try again!"
2087
  msgstr ""
2088
 
2089
- #: admin/templates/map-settings.php:532
2090
  msgid "Query limit error"
2091
  msgstr ""
2092
 
2093
- #: admin/templates/map-settings.php:532
2094
  #, php-format
2095
  msgid ""
2096
  "You can raise the %susage limit%s by obtaining an API %skey%s, and fill in "
2097
  "the \"API key\" field at the top of this page."
2098
  msgstr ""
2099
 
2100
- #: admin/templates/map-settings.php:533 frontend/class-frontend.php:1411
2101
- #: inc/wpsl-functions.php:119
2102
  msgid "API usage limit reached"
2103
  msgstr ""
2104
 
2105
- #: admin/templates/map-settings.php:546
2106
  msgid "Tools"
2107
  msgstr ""
2108
 
2109
- #: admin/templates/map-settings.php:549
2110
  msgid "Enable store locator debug?"
2111
  msgstr ""
2112
 
2113
- #: admin/templates/map-settings.php:549
2114
  #, php-format
2115
  msgid ""
2116
  "This disables the WPSL transient cache. %sThe transient cache is only used "
2117
  "if the %sLoad locations on page load%s option is enabled."
2118
  msgstr ""
2119
 
2120
- #: admin/templates/map-settings.php:553
2121
  msgid "WPSL transients"
2122
  msgstr ""
2123
 
2124
- #: admin/templates/map-settings.php:554
2125
  msgid "Clear store locator transient cache"
2126
  msgstr ""
2127
 
2128
- #: admin/upgrade.php:82
2129
  msgid "info window"
2130
  msgstr ""
2131
 
2132
- #: admin/upgrade.php:92
2133
  msgid "Reset"
2134
  msgstr ""
2135
 
2136
- #: admin/upgrade.php:186 inc/wpsl-functions.php:100
2137
  msgid "stores"
2138
  msgstr ""
2139
 
2140
- #: admin/upgrade.php:190 inc/wpsl-functions.php:101
2141
  msgid "store-category"
2142
  msgstr ""
2143
 
2144
- #: admin/upgrade.php:392
2145
  #, php-format
2146
  msgid ""
2147
  "Because you updated WP Store Locator from version 1.x, the %s current store "
2148
  "locations need to be %sconverted%s to custom post types."
2149
  msgstr ""
2150
 
2151
- #: admin/upgrade.php:413
2152
  #, php-format
2153
  msgid ""
2154
  "The script converting the locations timed out. %s You can click the \"Start "
@@ -2159,61 +2191,57 @@ msgid ""
2159
  "but if you are reading this then that failed."
2160
  msgstr ""
2161
 
2162
- #: admin/upgrade.php:434
2163
  msgid "Store locations to convert:"
2164
  msgstr ""
2165
 
2166
- #: admin/upgrade.php:436
2167
  msgid "Start Converting"
2168
  msgstr ""
2169
 
2170
- #: admin/upgrade.php:558
2171
  #, php-format
2172
  msgid ""
2173
  "All the store locations are now converted to custom post types. %s You can "
2174
  "view them on the %sAll Stores%s page."
2175
  msgstr ""
2176
 
2177
- #: frontend/class-frontend.php:610
2178
  msgid ""
2179
  "If you use the [wpsl_address] shortcode outside a store page you need to set "
2180
  "the ID attribute."
2181
  msgstr ""
2182
 
2183
- #: frontend/class-frontend.php:722
2184
  msgid ""
2185
  "If you use the [wpsl_hours] shortcode outside a store page you need to set "
2186
  "the ID attribute."
2187
  msgstr ""
2188
 
2189
- #: frontend/class-frontend.php:791
2190
  msgid ""
2191
  "If you use the [wpsl_map] shortcode outside a store page, then you need to "
2192
  "set the ID or category attribute."
2193
  msgstr ""
2194
 
2195
- #: frontend/class-frontend.php:1129
2196
- msgid "Any"
2197
- msgstr ""
2198
-
2199
- #: frontend/class-frontend.php:1254
2200
  msgid "The application does not have permission to use the Geolocation API."
2201
  msgstr ""
2202
 
2203
- #: frontend/class-frontend.php:1255
2204
  msgid "Location information is unavailable."
2205
  msgstr ""
2206
 
2207
- #: frontend/class-frontend.php:1256
2208
  msgid "The geolocation request timed out."
2209
  msgstr ""
2210
 
2211
- #: frontend/class-frontend.php:1257
2212
  msgid "An unknown error occurred."
2213
  msgstr ""
2214
 
2215
- #: frontend/templates/default.php:60
2216
- #: frontend/templates/store-listings-below.php:66
2217
  #, php-format
2218
  msgid "Search provided by %sWP Store Locator%s"
2219
  msgstr ""
@@ -2318,75 +2346,75 @@ msgstr ""
2318
  msgid "Zip"
2319
  msgstr ""
2320
 
2321
- #: inc/wpsl-functions.php:194
2322
  msgid "Show the store list below the map"
2323
  msgstr ""
2324
 
2325
- #: inc/wpsl-functions.php:211
2326
  msgid "Monday"
2327
  msgstr ""
2328
 
2329
- #: inc/wpsl-functions.php:212
2330
  msgid "Tuesday"
2331
  msgstr ""
2332
 
2333
- #: inc/wpsl-functions.php:213
2334
  msgid "Wednesday"
2335
  msgstr ""
2336
 
2337
- #: inc/wpsl-functions.php:214
2338
  msgid "Thursday"
2339
  msgstr ""
2340
 
2341
- #: inc/wpsl-functions.php:215
2342
  msgid "Friday"
2343
  msgstr ""
2344
 
2345
- #: inc/wpsl-functions.php:216
2346
  msgid "Saturday"
2347
  msgstr ""
2348
 
2349
- #: inc/wpsl-functions.php:217
2350
  msgid "Sunday"
2351
  msgstr ""
2352
 
2353
- #: inc/wpsl-functions.php:247
2354
  #, php-format
2355
  msgid "Mon %sTue %sWed %sThu %sFri %sSat Closed %sSun Closed"
2356
  msgstr ""
2357
 
2358
- #: inc/wpsl-functions.php:263
2359
  msgid "Satellite"
2360
  msgstr ""
2361
 
2362
- #: inc/wpsl-functions.php:264
2363
  msgid "Hybrid"
2364
  msgstr ""
2365
 
2366
- #: inc/wpsl-functions.php:265
2367
  msgid "Terrain"
2368
  msgstr ""
2369
 
2370
- #: inc/wpsl-functions.php:280
2371
  msgid "(city) (state) (zip code)"
2372
  msgstr ""
2373
 
2374
- #: inc/wpsl-functions.php:281
2375
  msgid "(city), (state) (zip code)"
2376
  msgstr ""
2377
 
2378
- #: inc/wpsl-functions.php:282
2379
  msgid "(city) (zip code)"
2380
  msgstr ""
2381
 
2382
- #: inc/wpsl-functions.php:283
2383
  msgid "(city), (zip code)"
2384
  msgstr ""
2385
 
2386
- #: inc/wpsl-functions.php:284
2387
  msgid "(zip code) (city) (state)"
2388
  msgstr ""
2389
 
2390
- #: inc/wpsl-functions.php:285
2391
  msgid "(zip code) (city)"
2392
  msgstr ""
1
  #, fuzzy
2
  msgid ""
3
  msgstr ""
4
+ "Project-Id-Version: WP Store Locator v2.2\n"
5
  "Report-Msgid-Bugs-To: \n"
6
+ "POT-Creation-Date: 2016-03-13 11:55+0100\n"
7
  "PO-Revision-Date: 2015-09-01 13:49+0100\n"
8
  "Last-Translator: \n"
9
  "Language-Team: \n"
20
  "X-Textdomain-Support: yes\n"
21
  "X-Poedit-SearchPath-0: .\n"
22
 
23
+ #: admin/class-admin.php:118
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  #, php-format
25
  msgid ""
26
  "Before adding the [wpsl] shortcode to a page, please don't forget to define "
27
  "a start point on the %ssettings%s page. %sDismiss%s"
28
  msgstr ""
29
 
30
+ #: admin/class-admin.php:151 admin/class-admin.php:152
31
+ #: admin/class-admin.php:435 admin/templates/map-settings.php:11
32
  msgid "Settings"
33
  msgstr ""
34
 
35
+ #: admin/class-admin.php:158 admin/class-admin.php:159
36
+ #: admin/class-admin.php:455
37
+ msgid "Add-Ons"
38
+ msgstr ""
39
+
40
+ #: admin/class-admin.php:293
41
  msgid "Cannot determine the address at this location."
42
  msgstr ""
43
 
44
+ #: admin/class-admin.php:294
45
  msgid "Geocode was not successful for the following reason"
46
  msgstr ""
47
 
48
+ #: admin/class-admin.php:295 admin/upgrade.php:440
49
  msgid "Security check failed, reload the page and try again."
50
  msgstr ""
51
 
52
+ #: admin/class-admin.php:296
53
  msgid "Please fill in all the required store details."
54
  msgstr ""
55
 
56
+ #: admin/class-admin.php:297
57
  msgid "The map preview requires all the location details."
58
  msgstr ""
59
 
60
+ #: admin/class-admin.php:298 admin/class-metaboxes.php:525
61
+ #: frontend/class-frontend.php:541
62
  msgid "Closed"
63
  msgstr ""
64
 
65
+ #: admin/class-admin.php:299
66
  msgid "The code for the map style is invalid."
67
  msgstr ""
68
 
69
+ #: admin/class-admin.php:390
70
  msgid "Welcome to WP Store Locator"
71
  msgstr ""
72
 
73
+ #: admin/class-admin.php:391
74
  msgid "Sign up for the latest plugin updates and announcements."
75
  msgstr ""
76
 
77
+ #: admin/class-admin.php:454
78
  msgid "Documentation"
79
  msgstr ""
80
 
81
+ #: admin/class-admin.php:477
 
 
 
 
82
  #, php-format
83
  msgid "If you like this plugin please leave us a %s5 star%s rating."
84
  msgstr ""
85
 
86
+ #: admin/class-geocode.php:78
87
  msgid ""
88
  "The Google Geocoding API returned no results for the supplied address. "
89
  "Please change the address and try again."
90
  msgstr ""
91
 
92
+ #: admin/class-geocode.php:81
93
  #, php-format
94
  msgid ""
95
  "You have reached the daily allowed geocoding limit, you can read more %shere"
96
  "%s."
97
  msgstr ""
98
 
99
+ #: admin/class-geocode.php:84
100
  #, php-format
101
  msgid "The Google Geocoding API returned REQUEST_DENIED. %s"
102
  msgstr ""
103
 
104
+ #: admin/class-geocode.php:87
105
  msgid ""
106
  "The Google Geocoding API failed to return valid data, please try again later."
107
  msgstr ""
108
 
109
+ #: admin/class-geocode.php:112
110
  #, php-format
111
  msgid "%sError message: %s"
112
  msgstr ""
113
 
114
+ #: admin/class-geocode.php:133
115
  #, php-format
116
  msgid ""
117
  "Something went wrong connecting to the Google Geocode API: %s %s Please try "
125
  "support!"
126
  msgstr ""
127
 
128
+ #: admin/class-license-manager.php:209 admin/templates/add-ons.php:56
129
  msgid "Please try again later!"
130
  msgstr ""
131
 
200
  msgid "Opening Hours"
201
  msgstr ""
202
 
203
+ #: admin/class-metaboxes.php:82 admin/templates/map-settings.php:534
204
+ #: admin/templates/map-settings.php:535 frontend/underscore-functions.php:159
205
+ #: inc/wpsl-functions.php:145
206
  msgid "Hours"
207
  msgstr ""
208
 
214
  msgid "Tel"
215
  msgstr ""
216
 
217
+ #: admin/class-metaboxes.php:91 admin/templates/map-settings.php:522
218
+ #: admin/templates/map-settings.php:523 frontend/class-frontend.php:789
219
+ #: frontend/underscore-functions.php:32 frontend/underscore-functions.php:66
220
+ #: frontend/underscore-functions.php:149 inc/wpsl-functions.php:142
221
  msgid "Fax"
222
  msgstr ""
223
 
224
+ #: admin/class-metaboxes.php:94 admin/templates/map-settings.php:526
225
+ #: admin/templates/map-settings.php:527 admin/upgrade.php:198
226
+ #: frontend/class-frontend.php:793 frontend/underscore-functions.php:35
227
+ #: frontend/underscore-functions.php:69 frontend/underscore-functions.php:152
228
+ #: inc/wpsl-functions.php:143
229
  msgid "Email"
230
  msgstr ""
231
 
232
+ #: admin/class-metaboxes.php:97 admin/templates/map-settings.php:530
233
+ #: admin/templates/map-settings.php:531 admin/upgrade.php:202
234
+ #: frontend/class-frontend.php:798 inc/wpsl-functions.php:144
235
  msgid "Url"
236
  msgstr ""
237
 
238
+ #: admin/class-metaboxes.php:447
239
  msgid "Hour format"
240
  msgstr ""
241
 
242
+ #: admin/class-metaboxes.php:454
243
  msgid "Days"
244
  msgstr ""
245
 
246
+ #: admin/class-metaboxes.php:455
247
  msgid "Opening Periods"
248
  msgstr ""
249
 
250
+ #: admin/class-metaboxes.php:703
251
  msgid "Failed to publish the store. Please fill in the required store details."
252
  msgstr ""
253
 
254
+ #: admin/class-metaboxes.php:839
255
  msgid "Preview Location"
256
  msgstr ""
257
 
258
+ #: admin/class-metaboxes.php:840
259
  #, php-format
260
  msgid ""
261
  "The map preview is based on the provided address, city and country details. "
262
  "%s It will ignore any custom latitude or longitude values."
263
  msgstr ""
264
 
265
+ #: admin/class-metaboxes.php:841
266
  msgid "You can drag the marker to adjust the exact location of the marker."
267
  msgstr ""
268
 
269
+ #: admin/class-metaboxes.php:861 admin/class-metaboxes.php:864
270
  msgid "Store updated."
271
  msgstr ""
272
 
273
+ #: admin/class-metaboxes.php:862
274
  msgid "Custom field updated."
275
  msgstr ""
276
 
277
+ #: admin/class-metaboxes.php:863
278
  msgid "Custom field deleted."
279
  msgstr ""
280
 
281
+ #: admin/class-metaboxes.php:865
282
  #, php-format
283
  msgid "Store restored to revision from %s"
284
  msgstr ""
285
 
286
+ #: admin/class-metaboxes.php:866
287
  msgid "Store published."
288
  msgstr ""
289
 
290
+ #: admin/class-metaboxes.php:867
291
  msgid "Store saved."
292
  msgstr ""
293
 
294
+ #: admin/class-metaboxes.php:868
295
  msgid "Store submitted."
296
  msgstr ""
297
 
298
+ #: admin/class-metaboxes.php:870
299
  #, php-format
300
  msgid "Store scheduled for: <strong>%1$s</strong>."
301
  msgstr ""
302
 
303
+ #: admin/class-metaboxes.php:871
304
  msgid "M j, Y @ G:i"
305
  msgstr ""
306
 
307
+ #: admin/class-metaboxes.php:873
308
  msgid "Store draft updated."
309
  msgstr ""
310
 
311
+ #: admin/class-metaboxes.php:879
312
  msgid "View store"
313
  msgstr ""
314
 
315
+ #: admin/class-metaboxes.php:885
316
  msgid "Preview store"
317
  msgstr ""
318
 
319
+ #: admin/class-settings.php:38
320
  msgid "WP Store Locator Transients Cleared"
321
  msgstr ""
322
 
323
+ #: admin/class-settings.php:397
324
  msgid ""
325
  "The max results field cannot be empty, the default value has been restored."
326
  msgstr ""
327
 
328
+ #: admin/class-settings.php:400
329
  msgid ""
330
  "The search radius field cannot be empty, the default value has been restored."
331
  msgstr ""
332
 
333
+ #: admin/class-settings.php:403
334
  #, php-format
335
  msgid ""
336
  "Please provide the name of a city or country that can be used as a starting "
338
  "user fails, or the option itself is disabled."
339
  msgstr ""
340
 
341
+ #: admin/class-settings.php:424
342
  msgid "Select your language"
343
  msgstr ""
344
 
345
+ #: admin/class-settings.php:425
346
  msgid "English"
347
  msgstr ""
348
 
349
+ #: admin/class-settings.php:426
350
  msgid "Arabic"
351
  msgstr ""
352
 
353
+ #: admin/class-settings.php:427
354
  msgid "Basque"
355
  msgstr ""
356
 
357
+ #: admin/class-settings.php:428
358
  msgid "Bulgarian"
359
  msgstr ""
360
 
361
+ #: admin/class-settings.php:429
362
  msgid "Bengali"
363
  msgstr ""
364
 
365
+ #: admin/class-settings.php:430
366
  msgid "Catalan"
367
  msgstr ""
368
 
369
+ #: admin/class-settings.php:431
370
  msgid "Czech"
371
  msgstr ""
372
 
373
+ #: admin/class-settings.php:432
374
  msgid "Danish"
375
  msgstr ""
376
 
377
+ #: admin/class-settings.php:433
378
  msgid "German"
379
  msgstr ""
380
 
381
+ #: admin/class-settings.php:434
382
  msgid "Greek"
383
  msgstr ""
384
 
385
+ #: admin/class-settings.php:435
386
  msgid "English (Australian)"
387
  msgstr ""
388
 
389
+ #: admin/class-settings.php:436
390
  msgid "English (Great Britain)"
391
  msgstr ""
392
 
393
+ #: admin/class-settings.php:437
394
  msgid "Spanish"
395
  msgstr ""
396
 
397
+ #: admin/class-settings.php:438
398
  msgid "Farsi"
399
  msgstr ""
400
 
401
+ #: admin/class-settings.php:439
402
  msgid "Finnish"
403
  msgstr ""
404
 
405
+ #: admin/class-settings.php:440
406
  msgid "Filipino"
407
  msgstr ""
408
 
409
+ #: admin/class-settings.php:441
410
  msgid "French"
411
  msgstr ""
412
 
413
+ #: admin/class-settings.php:442
414
  msgid "Galician"
415
  msgstr ""
416
 
417
+ #: admin/class-settings.php:443
418
  msgid "Gujarati"
419
  msgstr ""
420
 
421
+ #: admin/class-settings.php:444
422
  msgid "Hindi"
423
  msgstr ""
424
 
425
+ #: admin/class-settings.php:445
426
  msgid "Croatian"
427
  msgstr ""
428
 
429
+ #: admin/class-settings.php:446
430
  msgid "Hungarian"
431
  msgstr ""
432
 
433
+ #: admin/class-settings.php:447
434
  msgid "Indonesian"
435
  msgstr ""
436
 
437
+ #: admin/class-settings.php:448
438
  msgid "Italian"
439
  msgstr ""
440
 
441
+ #: admin/class-settings.php:449
442
  msgid "Hebrew"
443
  msgstr ""
444
 
445
+ #: admin/class-settings.php:450
446
  msgid "Japanese"
447
  msgstr ""
448
 
449
+ #: admin/class-settings.php:451
450
  msgid "Kannada"
451
  msgstr ""
452
 
453
+ #: admin/class-settings.php:452
454
  msgid "Korean"
455
  msgstr ""
456
 
457
+ #: admin/class-settings.php:453
458
  msgid "Lithuanian"
459
  msgstr ""
460
 
461
+ #: admin/class-settings.php:454
462
  msgid "Latvian"
463
  msgstr ""
464
 
465
+ #: admin/class-settings.php:455
466
  msgid "Malayalam"
467
  msgstr ""
468
 
469
+ #: admin/class-settings.php:456
470
  msgid "Marathi"
471
  msgstr ""
472
 
473
+ #: admin/class-settings.php:457
474
  msgid "Dutch"
475
  msgstr ""
476
 
477
+ #: admin/class-settings.php:458
478
  msgid "Norwegian"
479
  msgstr ""
480
 
481
+ #: admin/class-settings.php:459
482
  msgid "Norwegian Nynorsk"
483
  msgstr ""
484
 
485
+ #: admin/class-settings.php:460
486
  msgid "Polish"
487
  msgstr ""
488
 
489
+ #: admin/class-settings.php:461
490
  msgid "Portuguese"
491
  msgstr ""
492
 
493
+ #: admin/class-settings.php:462
494
  msgid "Portuguese (Brazil)"
495
  msgstr ""
496
 
497
+ #: admin/class-settings.php:463
498
  msgid "Portuguese (Portugal)"
499
  msgstr ""
500
 
501
+ #: admin/class-settings.php:464
502
  msgid "Romanian"
503
  msgstr ""
504
 
505
+ #: admin/class-settings.php:465
506
  msgid "Russian"
507
  msgstr ""
508
 
509
+ #: admin/class-settings.php:466
510
  msgid "Slovak"
511
  msgstr ""
512
 
513
+ #: admin/class-settings.php:467
514
  msgid "Slovenian"
515
  msgstr ""
516
 
517
+ #: admin/class-settings.php:468
518
  msgid "Serbian"
519
  msgstr ""
520
 
521
+ #: admin/class-settings.php:469
522
  msgid "Swedish"
523
  msgstr ""
524
 
525
+ #: admin/class-settings.php:470
526
  msgid "Tagalog"
527
  msgstr ""
528
 
529
+ #: admin/class-settings.php:471
530
  msgid "Tamil"
531
  msgstr ""
532
 
533
+ #: admin/class-settings.php:472
534
  msgid "Telugu"
535
  msgstr ""
536
 
537
+ #: admin/class-settings.php:473
538
  msgid "Thai"
539
  msgstr ""
540
 
541
+ #: admin/class-settings.php:474
542
  msgid "Turkish"
543
  msgstr ""
544
 
545
+ #: admin/class-settings.php:475
546
  msgid "Ukrainian"
547
  msgstr ""
548
 
549
+ #: admin/class-settings.php:476
550
  msgid "Vietnamese"
551
  msgstr ""
552
 
553
+ #: admin/class-settings.php:477
554
  msgid "Chinese (Simplified)"
555
  msgstr ""
556
 
557
+ #: admin/class-settings.php:478
558
  msgid "Chinese (Traditional)"
559
  msgstr ""
560
 
561
+ #: admin/class-settings.php:483
562
  msgid "Select your region"
563
  msgstr ""
564
 
565
+ #: admin/class-settings.php:484
566
  msgid "Afghanistan"
567
  msgstr ""
568
 
569
+ #: admin/class-settings.php:485
570
  msgid "Albania"
571
  msgstr ""
572
 
573
+ #: admin/class-settings.php:486
574
  msgid "Algeria"
575
  msgstr ""
576
 
577
+ #: admin/class-settings.php:487
578
  msgid "American Samoa"
579
  msgstr ""
580
 
581
+ #: admin/class-settings.php:488
582
  msgid "Andorra"
583
  msgstr ""
584
 
585
+ #: admin/class-settings.php:489
586
  msgid "Anguilla"
587
  msgstr ""
588
 
589
+ #: admin/class-settings.php:490
590
  msgid "Angola"
591
  msgstr ""
592
 
593
+ #: admin/class-settings.php:491
594
  msgid "Antigua and Barbuda"
595
  msgstr ""
596
 
597
+ #: admin/class-settings.php:492
598
  msgid "Argentina"
599
  msgstr ""
600
 
601
+ #: admin/class-settings.php:493
602
  msgid "Armenia"
603
  msgstr ""
604
 
605
+ #: admin/class-settings.php:494
606
  msgid "Aruba"
607
  msgstr ""
608
 
609
+ #: admin/class-settings.php:495
610
  msgid "Australia"
611
  msgstr ""
612
 
613
+ #: admin/class-settings.php:496
614
  msgid "Austria"
615
  msgstr ""
616
 
617
+ #: admin/class-settings.php:497
618
  msgid "Azerbaijan"
619
  msgstr ""
620
 
621
+ #: admin/class-settings.php:498
622
  msgid "Bahamas"
623
  msgstr ""
624
 
625
+ #: admin/class-settings.php:499
626
  msgid "Bahrain"
627
  msgstr ""
628
 
629
+ #: admin/class-settings.php:500
630
  msgid "Bangladesh"
631
  msgstr ""
632
 
633
+ #: admin/class-settings.php:501
634
  msgid "Barbados"
635
  msgstr ""
636
 
637
+ #: admin/class-settings.php:502
638
  msgid "Belarus"
639
  msgstr ""
640
 
641
+ #: admin/class-settings.php:503
642
  msgid "Belgium"
643
  msgstr ""
644
 
645
+ #: admin/class-settings.php:504
646
  msgid "Belize"
647
  msgstr ""
648
 
649
+ #: admin/class-settings.php:505
650
  msgid "Benin"
651
  msgstr ""
652
 
653
+ #: admin/class-settings.php:506
654
  msgid "Bermuda"
655
  msgstr ""
656
 
657
+ #: admin/class-settings.php:507
658
  msgid "Bhutan"
659
  msgstr ""
660
 
661
+ #: admin/class-settings.php:508
662
  msgid "Bolivia"
663
  msgstr ""
664
 
665
+ #: admin/class-settings.php:509
666
  msgid "Bosnia and Herzegovina"
667
  msgstr ""
668
 
669
+ #: admin/class-settings.php:510
670
  msgid "Botswana"
671
  msgstr ""
672
 
673
+ #: admin/class-settings.php:511
674
  msgid "Brazil"
675
  msgstr ""
676
 
677
+ #: admin/class-settings.php:512
678
  msgid "British Indian Ocean Territory"
679
  msgstr ""
680
 
681
+ #: admin/class-settings.php:513
682
  msgid "Brunei"
683
  msgstr ""
684
 
685
+ #: admin/class-settings.php:514
686
  msgid "Bulgaria"
687
  msgstr ""
688
 
689
+ #: admin/class-settings.php:515
690
  msgid "Burkina Faso"
691
  msgstr ""
692
 
693
+ #: admin/class-settings.php:516
694
  msgid "Burundi"
695
  msgstr ""
696
 
697
+ #: admin/class-settings.php:517
698
  msgid "Cambodia"
699
  msgstr ""
700
 
701
+ #: admin/class-settings.php:518
702
  msgid "Cameroon"
703
  msgstr ""
704
 
705
+ #: admin/class-settings.php:519
706
  msgid "Canada"
707
  msgstr ""
708
 
709
+ #: admin/class-settings.php:520
710
  msgid "Cape Verde"
711
  msgstr ""
712
 
713
+ #: admin/class-settings.php:521
714
  msgid "Cayman Islands"
715
  msgstr ""
716
 
717
+ #: admin/class-settings.php:522
718
  msgid "Central African Republic"
719
  msgstr ""
720
 
721
+ #: admin/class-settings.php:523
722
  msgid "Chad"
723
  msgstr ""
724
 
725
+ #: admin/class-settings.php:524
726
  msgid "Chile"
727
  msgstr ""
728
 
729
+ #: admin/class-settings.php:525
730
  msgid "China"
731
  msgstr ""
732
 
733
+ #: admin/class-settings.php:526
734
  msgid "Christmas Island"
735
  msgstr ""
736
 
737
+ #: admin/class-settings.php:527
738
  msgid "Cocos Islands"
739
  msgstr ""
740
 
741
+ #: admin/class-settings.php:528
742
  msgid "Colombia"
743
  msgstr ""
744
 
745
+ #: admin/class-settings.php:529
746
  msgid "Comoros"
747
  msgstr ""
748
 
749
+ #: admin/class-settings.php:530
750
  msgid "Congo"
751
  msgstr ""
752
 
753
+ #: admin/class-settings.php:531
754
  msgid "Costa Rica"
755
  msgstr ""
756
 
757
+ #: admin/class-settings.php:532
758
  msgid "Côte d'Ivoire"
759
  msgstr ""
760
 
761
+ #: admin/class-settings.php:533
762
  msgid "Croatia"
763
  msgstr ""
764
 
765
+ #: admin/class-settings.php:534
766
  msgid "Cuba"
767
  msgstr ""
768
 
769
+ #: admin/class-settings.php:535
770
  msgid "Czech Republic"
771
  msgstr ""
772
 
773
+ #: admin/class-settings.php:536
774
  msgid "Denmark"
775
  msgstr ""
776
 
777
+ #: admin/class-settings.php:537
778
  msgid "Djibouti"
779
  msgstr ""
780
 
781
+ #: admin/class-settings.php:538
782
  msgid "Democratic Republic of the Congo"
783
  msgstr ""
784
 
785
+ #: admin/class-settings.php:539
786
  msgid "Dominica"
787
  msgstr ""
788
 
789
+ #: admin/class-settings.php:540
790
  msgid "Dominican Republic"
791
  msgstr ""
792
 
793
+ #: admin/class-settings.php:541
794
  msgid "Ecuador"
795
  msgstr ""
796
 
797
+ #: admin/class-settings.php:542
798
  msgid "Egypt"
799
  msgstr ""
800
 
801
+ #: admin/class-settings.php:543
802
  msgid "El Salvador"
803
  msgstr ""
804
 
805
+ #: admin/class-settings.php:544
806
  msgid "Equatorial Guinea"
807
  msgstr ""
808
 
809
+ #: admin/class-settings.php:545
810
  msgid "Eritrea"
811
  msgstr ""
812
 
813
+ #: admin/class-settings.php:546
814
  msgid "Estonia"
815
  msgstr ""
816
 
817
+ #: admin/class-settings.php:547
818
  msgid "Ethiopia"
819
  msgstr ""
820
 
821
+ #: admin/class-settings.php:548
822
  msgid "Fiji"
823
  msgstr ""
824
 
825
+ #: admin/class-settings.php:549
826
  msgid "Finland"
827
  msgstr ""
828
 
829
+ #: admin/class-settings.php:550
830
  msgid "France"
831
  msgstr ""
832
 
833
+ #: admin/class-settings.php:551
834
  msgid "French Guiana"
835
  msgstr ""
836
 
837
+ #: admin/class-settings.php:552
838
  msgid "Gabon"
839
  msgstr ""
840
 
841
+ #: admin/class-settings.php:553
842
  msgid "Gambia"
843
  msgstr ""
844
 
845
+ #: admin/class-settings.php:554
846
  msgid "Germany"
847
  msgstr ""
848
 
849
+ #: admin/class-settings.php:555
850
  msgid "Ghana"
851
  msgstr ""
852
 
853
+ #: admin/class-settings.php:556
854
  msgid "Greenland"
855
  msgstr ""
856
 
857
+ #: admin/class-settings.php:557
858
  msgid "Greece"
859
  msgstr ""
860
 
861
+ #: admin/class-settings.php:558
862
  msgid "Grenada"
863
  msgstr ""
864
 
865
+ #: admin/class-settings.php:559
866
  msgid "Guam"
867
  msgstr ""
868
 
869
+ #: admin/class-settings.php:560
870
  msgid "Guadeloupe"
871
  msgstr ""
872
 
873
+ #: admin/class-settings.php:561
874
  msgid "Guatemala"
875
  msgstr ""
876
 
877
+ #: admin/class-settings.php:562
878
  msgid "Guinea"
879
  msgstr ""
880
 
881
+ #: admin/class-settings.php:563
882
  msgid "Guinea-Bissau"
883
  msgstr ""
884
 
885
+ #: admin/class-settings.php:564
886
  msgid "Haiti"
887
  msgstr ""
888
 
889
+ #: admin/class-settings.php:565
890
  msgid "Honduras"
891
  msgstr ""
892
 
893
+ #: admin/class-settings.php:566
894
  msgid "Hong Kong"
895
  msgstr ""
896
 
897
+ #: admin/class-settings.php:567
898
  msgid "Hungary"
899
  msgstr ""
900
 
901
+ #: admin/class-settings.php:568
902
  msgid "Iceland"
903
  msgstr ""
904
 
905
+ #: admin/class-settings.php:569
906
  msgid "India"
907
  msgstr ""
908
 
909
+ #: admin/class-settings.php:570
910
  msgid "Indonesia"
911
  msgstr ""
912
 
913
+ #: admin/class-settings.php:571
914
  msgid "Iran"
915
  msgstr ""
916
 
917
+ #: admin/class-settings.php:572
918
  msgid "Iraq"
919
  msgstr ""
920
 
921
+ #: admin/class-settings.php:573
922
  msgid "Ireland"
923
  msgstr ""
924
 
925
+ #: admin/class-settings.php:574
926
  msgid "Israel"
927
  msgstr ""
928
 
929
+ #: admin/class-settings.php:575
930
  msgid "Italy"
931
  msgstr ""
932
 
933
+ #: admin/class-settings.php:576
934
  msgid "Jamaica"
935
  msgstr ""
936
 
937
+ #: admin/class-settings.php:577
938
  msgid "Japan"
939
  msgstr ""
940
 
941
+ #: admin/class-settings.php:578
942
  msgid "Jordan"
943
  msgstr ""
944
 
945
+ #: admin/class-settings.php:579
946
  msgid "Kazakhstan"
947
  msgstr ""
948
 
949
+ #: admin/class-settings.php:580
950
  msgid "Kenya"
951
  msgstr ""
952
 
953
+ #: admin/class-settings.php:581
954
  msgid "Kuwait"
955
  msgstr ""
956
 
957
+ #: admin/class-settings.php:582
958
  msgid "Kyrgyzstan"
959
  msgstr ""
960
 
961
+ #: admin/class-settings.php:583
962
  msgid "Laos"
963
  msgstr ""
964
 
965
+ #: admin/class-settings.php:584
966
  msgid "Latvia"
967
  msgstr ""
968
 
969
+ #: admin/class-settings.php:585
970
  msgid "Lebanon"
971
  msgstr ""
972
 
973
+ #: admin/class-settings.php:586
974
  msgid "Lesotho"
975
  msgstr ""
976
 
977
+ #: admin/class-settings.php:587
978
  msgid "Liberia"
979
  msgstr ""
980
 
981
+ #: admin/class-settings.php:588
982
  msgid "Libya"
983
  msgstr ""
984
 
985
+ #: admin/class-settings.php:589
986
  msgid "Liechtenstein"
987
  msgstr ""
988
 
989
+ #: admin/class-settings.php:590
990
  msgid "Lithuania"
991
  msgstr ""
992
 
993
+ #: admin/class-settings.php:591
994
  msgid "Luxembourg"
995
  msgstr ""
996
 
997
+ #: admin/class-settings.php:592
998
  msgid "Macau"
999
  msgstr ""
1000
 
1001
+ #: admin/class-settings.php:593
1002
  msgid "Macedonia"
1003
  msgstr ""
1004
 
1005
+ #: admin/class-settings.php:594
1006
  msgid "Madagascar"
1007
  msgstr ""
1008
 
1009
+ #: admin/class-settings.php:595
1010
  msgid "Malawi"
1011
  msgstr ""
1012
 
1013
+ #: admin/class-settings.php:596
1014
  msgid "Malaysia "
1015
  msgstr ""
1016
 
1017
+ #: admin/class-settings.php:597
1018
  msgid "Mali"
1019
  msgstr ""
1020
 
1021
+ #: admin/class-settings.php:598
1022
  msgid "Marshall Islands"
1023
  msgstr ""
1024
 
1025
+ #: admin/class-settings.php:599
1026
  msgid "Martinique"
1027
  msgstr ""
1028
 
1029
+ #: admin/class-settings.php:600
1030
  msgid "Mauritania"
1031
  msgstr ""
1032
 
1033
+ #: admin/class-settings.php:601
1034
  msgid "Mauritius"
1035
  msgstr ""
1036
 
1037
+ #: admin/class-settings.php:602
1038
  msgid "Mexico"
1039
  msgstr ""
1040
 
1041
+ #: admin/class-settings.php:603
1042
  msgid "Micronesia"
1043
  msgstr ""
1044
 
1045
+ #: admin/class-settings.php:604
1046
  msgid "Moldova"
1047
  msgstr ""
1048
 
1049
+ #: admin/class-settings.php:605
1050
  msgid "Monaco"
1051
  msgstr ""
1052
 
1053
+ #: admin/class-settings.php:606
1054
  msgid "Mongolia"
1055
  msgstr ""
1056
 
1057
+ #: admin/class-settings.php:607
1058
  msgid "Montenegro"
1059
  msgstr ""
1060
 
1061
+ #: admin/class-settings.php:608
1062
  msgid "Montserrat"
1063
  msgstr ""
1064
 
1065
+ #: admin/class-settings.php:609
1066
  msgid "Morocco"
1067
  msgstr ""
1068
 
1069
+ #: admin/class-settings.php:610
1070
  msgid "Mozambique"
1071
  msgstr ""
1072
 
1073
+ #: admin/class-settings.php:611
1074
  msgid "Myanmar"
1075
  msgstr ""
1076
 
1077
+ #: admin/class-settings.php:612
1078
  msgid "Namibia"
1079
  msgstr ""
1080
 
1081
+ #: admin/class-settings.php:613
1082
  msgid "Nauru"
1083
  msgstr ""
1084
 
1085
+ #: admin/class-settings.php:614
1086
  msgid "Nepal"
1087
  msgstr ""
1088
 
1089
+ #: admin/class-settings.php:615
1090
  msgid "Netherlands"
1091
  msgstr ""
1092
 
1093
+ #: admin/class-settings.php:616
1094
  msgid "Netherlands Antilles"
1095
  msgstr ""
1096
 
1097
+ #: admin/class-settings.php:617
1098
  msgid "New Zealand"
1099
  msgstr ""
1100
 
1101
+ #: admin/class-settings.php:618
1102
  msgid "Nicaragua"
1103
  msgstr ""
1104
 
1105
+ #: admin/class-settings.php:619
1106
  msgid "Niger"
1107
  msgstr ""
1108
 
1109
+ #: admin/class-settings.php:620
1110
  msgid "Nigeria"
1111
  msgstr ""
1112
 
1113
+ #: admin/class-settings.php:621
1114
  msgid "Niue"
1115
  msgstr ""
1116
 
1117
+ #: admin/class-settings.php:622
1118
  msgid "Northern Mariana Islands"
1119
  msgstr ""
1120
 
1121
+ #: admin/class-settings.php:623
1122
  msgid "Norway"
1123
  msgstr ""
1124
 
1125
+ #: admin/class-settings.php:624
1126
  msgid "Oman"
1127
  msgstr ""
1128
 
1129
+ #: admin/class-settings.php:625
1130
  msgid "Pakistan"
1131
  msgstr ""
1132
 
1133
+ #: admin/class-settings.php:626
1134
  msgid "Panama"
1135
  msgstr ""
1136
 
1137
+ #: admin/class-settings.php:627
1138
  msgid "Papua New Guinea"
1139
  msgstr ""
1140
 
1141
+ #: admin/class-settings.php:628
1142
  msgid "Paraguay"
1143
  msgstr ""
1144
 
1145
+ #: admin/class-settings.php:629
1146
  msgid "Peru"
1147
  msgstr ""
1148
 
1149
+ #: admin/class-settings.php:630
1150
  msgid "Philippines"
1151
  msgstr ""
1152
 
1153
+ #: admin/class-settings.php:631
1154
  msgid "Pitcairn Islands"
1155
  msgstr ""
1156
 
1157
+ #: admin/class-settings.php:632
1158
  msgid "Poland"
1159
  msgstr ""
1160
 
1161
+ #: admin/class-settings.php:633
1162
  msgid "Portugal"
1163
  msgstr ""
1164
 
1165
+ #: admin/class-settings.php:634
1166
  msgid "Qatar"
1167
  msgstr ""
1168
 
1169
+ #: admin/class-settings.php:635
1170
  msgid "Reunion"
1171
  msgstr ""
1172
 
1173
+ #: admin/class-settings.php:636
1174
  msgid "Romania"
1175
  msgstr ""
1176
 
1177
+ #: admin/class-settings.php:637
1178
  msgid "Russia"
1179
  msgstr ""
1180
 
1181
+ #: admin/class-settings.php:638
1182
  msgid "Rwanda"
1183
  msgstr ""
1184
 
1185
+ #: admin/class-settings.php:639
1186
  msgid "Saint Helena"
1187
  msgstr ""
1188
 
1189
+ #: admin/class-settings.php:640
1190
  msgid "Saint Kitts and Nevis"
1191
  msgstr ""
1192
 
1193
+ #: admin/class-settings.php:641
1194
  msgid "Saint Vincent and the Grenadines"
1195
  msgstr ""
1196
 
1197
+ #: admin/class-settings.php:642
1198
  msgid "Saint Lucia"
1199
  msgstr ""
1200
 
1201
+ #: admin/class-settings.php:643
1202
  msgid "Samoa"
1203
  msgstr ""
1204
 
1205
+ #: admin/class-settings.php:644
1206
  msgid "San Marino"
1207
  msgstr ""
1208
 
1209
+ #: admin/class-settings.php:645
1210
  msgid "São Tomé and Príncipe"
1211
  msgstr ""
1212
 
1213
+ #: admin/class-settings.php:646
1214
  msgid "Saudi Arabia"
1215
  msgstr ""
1216
 
1217
+ #: admin/class-settings.php:647
1218
  msgid "Senegal"
1219
  msgstr ""
1220
 
1221
+ #: admin/class-settings.php:648
1222
  msgid "Serbia"
1223
  msgstr ""
1224
 
1225
+ #: admin/class-settings.php:649
1226
  msgid "Seychelles"
1227
  msgstr ""
1228
 
1229
+ #: admin/class-settings.php:650
1230
  msgid "Sierra Leone"
1231
  msgstr ""
1232
 
1233
+ #: admin/class-settings.php:651
1234
  msgid "Singapore"
1235
  msgstr ""
1236
 
1237
+ #: admin/class-settings.php:652
1238
  msgid "Slovakia"
1239
  msgstr ""
1240
 
1241
+ #: admin/class-settings.php:653
1242
  msgid "Solomon Islands"
1243
  msgstr ""
1244
 
1245
+ #: admin/class-settings.php:654
1246
  msgid "Somalia"
1247
  msgstr ""
1248
 
1249
+ #: admin/class-settings.php:655
1250
  msgid "South Africa"
1251
  msgstr ""
1252
 
1253
+ #: admin/class-settings.php:656
1254
  msgid "South Korea"
1255
  msgstr ""
1256
 
1257
+ #: admin/class-settings.php:657
1258
  msgid "Spain"
1259
  msgstr ""
1260
 
1261
+ #: admin/class-settings.php:658
1262
  msgid "Sri Lanka"
1263
  msgstr ""
1264
 
1265
+ #: admin/class-settings.php:659
1266
  msgid "Sudan"
1267
  msgstr ""
1268
 
1269
+ #: admin/class-settings.php:660
1270
  msgid "Swaziland"
1271
  msgstr ""
1272
 
1273
+ #: admin/class-settings.php:661
1274
  msgid "Sweden"
1275
  msgstr ""
1276
 
1277
+ #: admin/class-settings.php:662
1278
  msgid "Switzerland"
1279
  msgstr ""
1280
 
1281
+ #: admin/class-settings.php:663
1282
  msgid "Syria"
1283
  msgstr ""
1284
 
1285
+ #: admin/class-settings.php:664
1286
  msgid "Taiwan"
1287
  msgstr ""
1288
 
1289
+ #: admin/class-settings.php:665
1290
  msgid "Tajikistan"
1291
  msgstr ""
1292
 
1293
+ #: admin/class-settings.php:666
1294
  msgid "Tanzania"
1295
  msgstr ""
1296
 
1297
+ #: admin/class-settings.php:667
1298
  msgid "Thailand"
1299
  msgstr ""
1300
 
1301
+ #: admin/class-settings.php:668
1302
  msgid "Timor-Leste"
1303
  msgstr ""
1304
 
1305
+ #: admin/class-settings.php:669
1306
  msgid "Tokelau"
1307
  msgstr ""
1308
 
1309
+ #: admin/class-settings.php:670
1310
  msgid "Togo"
1311
  msgstr ""
1312
 
1313
+ #: admin/class-settings.php:671
1314
  msgid "Tonga"
1315
  msgstr ""
1316
 
1317
+ #: admin/class-settings.php:672
1318
  msgid "Trinidad and Tobago"
1319
  msgstr ""
1320
 
1321
+ #: admin/class-settings.php:673
1322
  msgid "Tunisia"
1323
  msgstr ""
1324
 
1325
+ #: admin/class-settings.php:674
1326
  msgid "Turkey"
1327
  msgstr ""
1328
 
1329
+ #: admin/class-settings.php:675
1330
  msgid "Turkmenistan"
1331
  msgstr ""
1332
 
1333
+ #: admin/class-settings.php:676
1334
  msgid "Tuvalu"
1335
  msgstr ""
1336
 
1337
+ #: admin/class-settings.php:677
1338
  msgid "Uganda"
1339
  msgstr ""
1340
 
1341
+ #: admin/class-settings.php:678
1342
  msgid "Ukraine"
1343
  msgstr ""
1344
 
1345
+ #: admin/class-settings.php:679
1346
  msgid "United Arab Emirates"
1347
  msgstr ""
1348
 
1349
+ #: admin/class-settings.php:680
1350
  msgid "United Kingdom"
1351
  msgstr ""
1352
 
1353
+ #: admin/class-settings.php:681
1354
  msgid "United States"
1355
  msgstr ""
1356
 
1357
+ #: admin/class-settings.php:682
1358
  msgid "Uruguay"
1359
  msgstr ""
1360
 
1361
+ #: admin/class-settings.php:683
1362
  msgid "Uzbekistan"
1363
  msgstr ""
1364
 
1365
+ #: admin/class-settings.php:684
1366
  msgid "Wallis Futuna"
1367
  msgstr ""
1368
 
1369
+ #: admin/class-settings.php:685
1370
  msgid "Venezuela"
1371
  msgstr ""
1372
 
1373
+ #: admin/class-settings.php:686
1374
  msgid "Vietnam"
1375
  msgstr ""
1376
 
1377
+ #: admin/class-settings.php:687
1378
  msgid "Yemen"
1379
  msgstr ""
1380
 
1381
+ #: admin/class-settings.php:688
1382
  msgid "Zambia"
1383
  msgstr ""
1384
 
1385
+ #: admin/class-settings.php:689
1386
  msgid "Zimbabwe"
1387
  msgstr ""
1388
 
1389
+ #: admin/class-settings.php:732
1390
  msgid "World view"
1391
  msgstr ""
1392
 
1393
+ #: admin/class-settings.php:735 admin/class-settings.php:849
1394
+ #: inc/wpsl-functions.php:211
1395
  msgid "Default"
1396
  msgstr ""
1397
 
1398
+ #: admin/class-settings.php:738 inc/wpsl-functions.php:284
1399
  msgid "Roadmap"
1400
  msgstr ""
1401
 
1402
+ #: admin/class-settings.php:879
1403
  msgid "Start location marker"
1404
  msgstr ""
1405
 
1406
+ #: admin/class-settings.php:881
1407
  msgid "Store location marker"
1408
  msgstr ""
1409
 
1410
+ #: admin/class-settings.php:963
1411
  msgid "Textarea"
1412
  msgstr ""
1413
 
1414
+ #: admin/class-settings.php:964
1415
  msgid "Dropdowns (recommended)"
1416
  msgstr ""
1417
 
1418
+ #: admin/class-settings.php:972
1419
  msgid "Bounces up and down"
1420
  msgstr ""
1421
 
1422
+ #: admin/class-settings.php:973
1423
  msgid "Will open the info window"
1424
  msgstr ""
1425
 
1426
+ #: admin/class-settings.php:974
1427
  msgid "Does not respond"
1428
  msgstr ""
1429
 
1430
+ #: admin/class-settings.php:982
1431
  msgid "In the store listings"
1432
  msgstr ""
1433
 
1434
+ #: admin/class-settings.php:983
1435
  msgid "In the info window on the map"
1436
  msgstr ""
1437
 
1438
  #: admin/class-settings.php:1015
1439
+ msgid "Dropdown"
1440
  msgstr ""
1441
 
1442
  #: admin/class-settings.php:1016
1443
+ msgid "Checkboxes"
1444
+ msgstr ""
1445
+
1446
+ #: admin/class-settings.php:1048
1447
+ msgid "12 Hours"
1448
+ msgstr ""
1449
+
1450
+ #: admin/class-settings.php:1049
1451
  msgid "24 Hours"
1452
  msgstr ""
1453
 
1455
  msgid "Store Locator Manager"
1456
  msgstr ""
1457
 
1458
+ #: admin/templates/add-ons.php:21
1459
+ msgid "WP Store Locator Add-Ons"
1460
+ msgstr ""
1461
+
1462
+ #: admin/templates/add-ons.php:41
1463
+ msgid "Already Installed."
1464
+ msgstr ""
1465
+
1466
+ #: admin/templates/add-ons.php:43
1467
+ msgid "Coming soon!"
1468
+ msgstr ""
1469
+
1470
+ #: admin/templates/add-ons.php:55
1471
+ msgid "Failed to load the add-on list from the server."
1472
+ msgstr ""
1473
+
1474
  #: admin/templates/map-settings.php:43
1475
  msgid "Add-On"
1476
  msgstr ""
1487
  msgid "Deactivate License"
1488
  msgstr ""
1489
 
1490
+ #: admin/templates/map-settings.php:79 admin/templates/map-settings.php:118
1491
+ #: admin/templates/map-settings.php:170 admin/templates/map-settings.php:249
1492
+ #: admin/templates/map-settings.php:352 admin/templates/map-settings.php:380
1493
+ #: admin/templates/map-settings.php:430 admin/templates/map-settings.php:458
1494
+ #: admin/templates/map-settings.php:570 admin/templates/map-settings.php:591
1495
  msgid "Save Changes"
1496
  msgstr ""
1497
 
1500
  msgstr ""
1501
 
1502
  #: admin/templates/map-settings.php:94
1503
+ msgid "Server key"
1504
  msgstr ""
1505
 
1506
  #: admin/templates/map-settings.php:94
1507
  #, php-format
1508
  msgid ""
1509
+ "A %sserver key%s allows you to monitor the usage of the Google Maps "
1510
+ "%sGeocoding API%s, and is required if you need to %spurchase%s additional "
1511
+ "quota."
1512
  msgstr ""
1513
 
1514
+ #: admin/templates/map-settings.php:95 admin/templates/map-settings.php:99
1515
  msgid "Optional"
1516
  msgstr ""
1517
 
1518
  #: admin/templates/map-settings.php:98
1519
+ msgid "Browser key"
1520
  msgstr ""
1521
 
1522
  #: admin/templates/map-settings.php:98
1523
+ #, php-format
1524
+ msgid ""
1525
+ "A %sbrowser key%s allows you to monitor the usage of the Google Maps "
1526
+ "%sJavaScript API%s."
1527
+ msgstr ""
1528
+
1529
+ #: admin/templates/map-settings.php:102
1530
+ msgid "Map language"
1531
+ msgstr ""
1532
+
1533
+ #: admin/templates/map-settings.php:102
1534
  msgid "If no map language is selected the browser's prefered language is used."
1535
  msgstr ""
1536
 
1537
+ #: admin/templates/map-settings.php:108
1538
  msgid "Map region"
1539
  msgstr ""
1540
 
1541
+ #: admin/templates/map-settings.php:108
1542
  #, php-format
1543
  msgid ""
1544
  "This will bias the %sgeocoding%s results towards the selected region. %s If "
1545
  "no region is selected the bias is set to the United States."
1546
  msgstr ""
1547
 
1548
+ #: admin/templates/map-settings.php:114
1549
  msgid "Restrict the geocoding results to the selected map region?"
1550
  msgstr ""
1551
 
1552
+ #: admin/templates/map-settings.php:114
1553
  #, php-format
1554
  msgid ""
1555
  "If the %sgeocoding%s API finds more relevant results outside of the set map "
1559
  "restrictions with %sthis%s filter."
1560
  msgstr ""
1561
 
1562
+ #: admin/templates/map-settings.php:128 admin/templates/map-settings.php:494
1563
+ #: admin/templates/map-settings.php:495 frontend/templates/default.php:40
1564
+ #: frontend/templates/store-listings-below.php:44 inc/wpsl-functions.php:128
1565
  msgid "Search"
1566
  msgstr ""
1567
 
1568
+ #: admin/templates/map-settings.php:131
1569
+ msgid "Enable autocomplete?"
1570
+ msgstr ""
1571
+
1572
+ #: admin/templates/map-settings.php:135
1573
  msgid "Show the max results dropdown?"
1574
  msgstr ""
1575
 
1576
+ #: admin/templates/map-settings.php:139
1577
  msgid "Show the search radius dropdown?"
1578
  msgstr ""
1579
 
1580
+ #: admin/templates/map-settings.php:143
1581
+ msgid "Enable category filters?"
1582
  msgstr ""
1583
 
1584
+ #: admin/templates/map-settings.php:148
1585
+ msgid "Filter type:"
1586
+ msgstr ""
1587
+
1588
+ #: admin/templates/map-settings.php:153
1589
  msgid "Distance unit"
1590
  msgstr ""
1591
 
1592
+ #: admin/templates/map-settings.php:156
1593
  msgid "km"
1594
  msgstr ""
1595
 
1596
+ #: admin/templates/map-settings.php:158
1597
  msgid "mi"
1598
  msgstr ""
1599
 
1600
+ #: admin/templates/map-settings.php:162
1601
  msgid "Max search results"
1602
  msgstr ""
1603
 
1604
+ #: admin/templates/map-settings.php:162 admin/templates/map-settings.php:166
1605
  msgid "The default value is set between the [ ]."
1606
  msgstr ""
1607
 
1608
+ #: admin/templates/map-settings.php:166
1609
  msgid "Search radius options"
1610
  msgstr ""
1611
 
1612
+ #: admin/templates/map-settings.php:180
1613
  msgid "Map"
1614
  msgstr ""
1615
 
1616
+ #: admin/templates/map-settings.php:183
1617
  msgid "Attempt to auto-locate the user"
1618
  msgstr ""
1619
 
1620
+ #: admin/templates/map-settings.php:187
1621
  msgid "Load locations on page load"
1622
  msgstr ""
1623
 
1624
+ #: admin/templates/map-settings.php:192
1625
  msgid "Number of locations to show"
1626
  msgstr ""
1627
 
1628
+ #: admin/templates/map-settings.php:192
1629
  #, php-format
1630
  msgid ""
1631
  "Although the location data is cached after the first load, a lower number "
1633
  "or set to 0, then all locations are loaded."
1634
  msgstr ""
1635
 
1636
+ #: admin/templates/map-settings.php:197
1637
  msgid "Start point"
1638
  msgstr ""
1639
 
1640
+ #: admin/templates/map-settings.php:197
1641
  #, php-format
1642
  msgid ""
1643
  "%sRequired field.%s %s If auto-locating the user is disabled or fails, the "
1645
  "point for the user."
1646
  msgstr ""
1647
 
1648
+ #: admin/templates/map-settings.php:202
1649
  msgid "Initial zoom level"
1650
  msgstr ""
1651
 
1652
+ #: admin/templates/map-settings.php:206
1653
  msgid "Max auto zoom level"
1654
  msgstr ""
1655
 
1656
+ #: admin/templates/map-settings.php:206
1657
  #, php-format
1658
  msgid ""
1659
  "This value sets the zoom level for the \"Zoom here\" link in the info "
1661
  "is changed to make all the markers fit on the screen."
1662
  msgstr ""
1663
 
1664
+ #: admin/templates/map-settings.php:210
1665
  msgid "Show the street view controls?"
1666
  msgstr ""
1667
 
1668
+ #: admin/templates/map-settings.php:214
1669
  msgid "Show the map type control?"
1670
  msgstr ""
1671
 
1672
+ #: admin/templates/map-settings.php:218
1673
  msgid "Enable scroll wheel zooming?"
1674
  msgstr ""
1675
 
1676
+ #: admin/templates/map-settings.php:222
1677
  msgid "Zoom control position"
1678
  msgstr ""
1679
 
1680
+ #: admin/templates/map-settings.php:225
1681
  msgid "Left"
1682
  msgstr ""
1683
 
1684
+ #: admin/templates/map-settings.php:227
1685
  msgid "Right"
1686
  msgstr ""
1687
 
1688
+ #: admin/templates/map-settings.php:231
1689
  msgid "Map type"
1690
  msgstr ""
1691
 
1692
+ #: admin/templates/map-settings.php:235
1693
  msgid "Map style"
1694
  msgstr ""
1695
 
1696
+ #: admin/templates/map-settings.php:235
1697
  msgid ""
1698
  "Custom map styles only work if the map type is set to \"Roadmap\" or "
1699
  "\"Terrain\"."
1700
  msgstr ""
1701
 
1702
+ #: admin/templates/map-settings.php:238
1703
  #, php-format
1704
  msgid ""
1705
  "You can use existing map styles from %sSnazzy Maps%s or %sMap Stylr%s and "
1707
  "through the %sMap Style Editor%s or %sStyled Maps Wizard%s."
1708
  msgstr ""
1709
 
1710
+ #: admin/templates/map-settings.php:239
1711
  #, php-format
1712
  msgid ""
1713
  "If you like to write the style code yourself, then you can find the "
1714
  "documentation from Google %shere%s."
1715
  msgstr ""
1716
 
1717
+ #: admin/templates/map-settings.php:241
1718
  msgid "Preview Map Style"
1719
  msgstr ""
1720
 
1721
+ #: admin/templates/map-settings.php:245
1722
  msgid "Show credits?"
1723
  msgstr ""
1724
 
1725
+ #: admin/templates/map-settings.php:245
1726
  msgid ""
1727
  "This will place a \"Search provided by WP Store Locator\" backlink below the "
1728
  "map."
1729
  msgstr ""
1730
 
1731
+ #: admin/templates/map-settings.php:259
1732
  msgid "User Experience"
1733
  msgstr ""
1734
 
1735
+ #: admin/templates/map-settings.php:262
1736
  msgid "Store Locator height"
1737
  msgstr ""
1738
 
1739
+ #: admin/templates/map-settings.php:266
1740
  msgid "Max width for the info window content"
1741
  msgstr ""
1742
 
1743
+ #: admin/templates/map-settings.php:270
1744
  msgid "Search field width"
1745
  msgstr ""
1746
 
1747
+ #: admin/templates/map-settings.php:274
1748
  msgid "Search and radius label width"
1749
  msgstr ""
1750
 
1751
+ #: admin/templates/map-settings.php:278
1752
  msgid "Store Locator template"
1753
  msgstr ""
1754
 
1755
+ #: admin/templates/map-settings.php:278
1756
  #, php-format
1757
  msgid ""
1758
  "The selected template is used with the [wpsl] shortcode. %s You can add a "
1759
  "custom template with the %swpsl_templates%s filter."
1760
  msgstr ""
1761
 
1762
+ #: admin/templates/map-settings.php:282
1763
  msgid "Hide the scrollbar?"
1764
  msgstr ""
1765
 
1766
+ #: admin/templates/map-settings.php:286
1767
  msgid "Open links in a new window?"
1768
  msgstr ""
1769
 
1770
+ #: admin/templates/map-settings.php:290
1771
  msgid "Show a reset map button?"
1772
  msgstr ""
1773
 
1774
+ #: admin/templates/map-settings.php:294
1775
  msgid ""
1776
  "When a user clicks on \"Directions\", open a new window, and show the route "
1777
  "on google.com/maps ?"
1778
  msgstr ""
1779
 
1780
+ #: admin/templates/map-settings.php:298
1781
  msgid "Show a \"More info\" link in the store listings?"
1782
  msgstr ""
1783
 
1784
+ #: admin/templates/map-settings.php:298
 
1785
  msgid ""
1786
  "This places a \"More Info\" link below the address and will show the phone, "
1787
+ "fax, email, opening hours and description once the link is clicked."
 
 
1788
  msgstr ""
1789
 
1790
+ #: admin/templates/map-settings.php:303
1791
  msgid "Where do you want to show the \"More info\" details?"
1792
  msgstr ""
1793
 
1794
+ #: admin/templates/map-settings.php:308
1795
+ msgid ""
1796
+ "Always show the contact details below the address in the search results?"
1797
+ msgstr ""
1798
+
1799
+ #: admin/templates/map-settings.php:312
1800
  msgid "Make the store name clickable if a store URL exists?"
1801
  msgstr ""
1802
 
1803
+ #: admin/templates/map-settings.php:312
1804
  #, php-format
1805
  msgid ""
1806
  "If %spermalinks%s are enabled, the store name will always link to the store "
1807
  "page."
1808
  msgstr ""
1809
 
1810
+ #: admin/templates/map-settings.php:316
1811
  msgid "Make the phone number clickable on mobile devices?"
1812
  msgstr ""
1813
 
1814
+ #: admin/templates/map-settings.php:320
1815
  msgid ""
1816
  "If street view is available for the current location, then show a \"Street "
1817
  "view\" link in the info window?"
1818
  msgstr ""
1819
 
1820
+ #: admin/templates/map-settings.php:320
1821
  #, php-format
1822
  msgid ""
1823
  "Enabling this option can sometimes result in a small delay in the opening of "
1825
  "Maps to check if street view is available for the current location."
1826
  msgstr ""
1827
 
1828
+ #: admin/templates/map-settings.php:324
1829
  msgid "Show a \"Zoom here\" link in the info window?"
1830
  msgstr ""
1831
 
1832
+ #: admin/templates/map-settings.php:324
1833
  #, php-format
1834
  msgid ""
1835
  "Clicking this link will make the map zoom in to the %s max auto zoom level "
1836
  "%s."
1837
  msgstr ""
1838
 
1839
+ #: admin/templates/map-settings.php:328
1840
  msgid "On page load move the mouse cursor to the search field?"
1841
  msgstr ""
1842
 
1843
+ #: admin/templates/map-settings.php:328
1844
  #, php-format
1845
  msgid ""
1846
  "If the store locator is not placed at the top of the page, enabling this "
1848
  "on mobile devices.%s"
1849
  msgstr ""
1850
 
1851
+ #: admin/templates/map-settings.php:332
1852
  msgid "Use the default style for the info window?"
1853
  msgstr ""
1854
 
1855
+ #: admin/templates/map-settings.php:332
1856
  #, php-format
1857
  msgid ""
1858
  "If the default style is disabled the %sInfoBox%s library will be used "
1860
  "window through the .wpsl-infobox css class."
1861
  msgstr ""
1862
 
1863
+ #: admin/templates/map-settings.php:336
1864
+ msgid "Hide the country in the search results?"
1865
+ msgstr ""
1866
+
1867
+ #: admin/templates/map-settings.php:340
1868
  msgid "Hide the distance in the search results?"
1869
  msgstr ""
1870
 
1871
+ #: admin/templates/map-settings.php:344
1872
  msgid "If a user hovers over the search results the store marker"
1873
  msgstr ""
1874
 
1875
+ #: admin/templates/map-settings.php:344
1876
  #, php-format
1877
  msgid ""
1878
  "If marker clusters are enabled this option will not work as expected as long "
1882
  "it won't be clear to which marker it belongs to. "
1883
  msgstr ""
1884
 
1885
+ #: admin/templates/map-settings.php:348
1886
  msgid "Address format"
1887
  msgstr ""
1888
 
1889
+ #: admin/templates/map-settings.php:348
1890
  #, php-format
1891
  msgid ""
1892
  "You can add custom address formats with the %swpsl_address_formats%s filter."
1893
  msgstr ""
1894
 
1895
+ #: admin/templates/map-settings.php:362
1896
  msgid "Markers"
1897
  msgstr ""
1898
 
1899
+ #: admin/templates/map-settings.php:366
1900
  msgid "Enable marker clusters?"
1901
  msgstr ""
1902
 
1903
+ #: admin/templates/map-settings.php:366
1904
  msgid "Recommended for maps with a large amount of markers."
1905
  msgstr ""
1906
 
1907
+ #: admin/templates/map-settings.php:371
1908
  msgid "Max zoom level"
1909
  msgstr ""
1910
 
1911
+ #: admin/templates/map-settings.php:371
1912
  msgid ""
1913
  "If this zoom level is reached or exceeded, then all markers are moved out of "
1914
  "the marker cluster and shown as individual markers."
1915
  msgstr ""
1916
 
1917
+ #: admin/templates/map-settings.php:375
1918
  msgid "Cluster size"
1919
  msgstr ""
1920
 
1921
+ #: admin/templates/map-settings.php:375
1922
  #, php-format
1923
  msgid ""
1924
  "The grid size of a cluster in pixels. %s A larger number will result in a "
1925
  "lower amount of clusters and also make the algorithm run faster."
1926
  msgstr ""
1927
 
1928
+ #: admin/templates/map-settings.php:390
1929
  msgid "Store Editor"
1930
  msgstr ""
1931
 
1932
+ #: admin/templates/map-settings.php:393
1933
  msgid "Default country"
1934
  msgstr ""
1935
 
1936
+ #: admin/templates/map-settings.php:397
1937
  msgid "Map type for the location preview"
1938
  msgstr ""
1939
 
1940
+ #: admin/templates/map-settings.php:401
1941
  msgid "Hide the opening hours?"
1942
  msgstr ""
1943
 
1944
+ #: admin/templates/map-settings.php:407
1945
  msgid "Opening hours input type"
1946
  msgstr ""
1947
 
1948
+ #: admin/templates/map-settings.php:411
1949
  #, php-format
1950
  msgid ""
1951
  "Opening hours created in version 1.x %sare not%s automatically converted to "
1952
  "the new dropdown format."
1953
  msgstr ""
1954
 
1955
+ #: admin/templates/map-settings.php:414 admin/templates/map-settings.php:423
1956
  msgid "The default opening hours"
1957
  msgstr ""
1958
 
1959
+ #: admin/templates/map-settings.php:420
1960
  msgid "Opening hours format"
1961
  msgstr ""
1962
 
1963
+ #: admin/templates/map-settings.php:427
1964
  msgid ""
1965
  "The default country and opening hours are only used when a new store is "
1966
  "created. So changing the default values will have no effect on existing "
1967
  "store locations."
1968
  msgstr ""
1969
 
1970
+ #: admin/templates/map-settings.php:440
1971
  msgid "Permalink"
1972
  msgstr ""
1973
 
1974
+ #: admin/templates/map-settings.php:443
1975
  msgid "Enable permalink?"
1976
  msgstr ""
1977
 
1978
+ #: admin/templates/map-settings.php:448
1979
  msgid "Store slug"
1980
  msgstr ""
1981
 
1982
+ #: admin/templates/map-settings.php:452
1983
  msgid "Category slug"
1984
  msgstr ""
1985
 
1986
+ #: admin/templates/map-settings.php:455
1987
  #, php-format
1988
  msgid "The permalink slugs %smust be unique%s on your site."
1989
  msgstr ""
1990
 
1991
+ #: admin/templates/map-settings.php:468
1992
  msgid "Labels"
1993
  msgstr ""
1994
 
1995
+ #: admin/templates/map-settings.php:477
1996
  #, php-format
1997
  msgid "%sWarning!%s %sWPML%s, or a plugin using the WPML API is active."
1998
  msgstr ""
1999
 
2000
+ #: admin/templates/map-settings.php:478
2001
  msgid ""
2002
  "Please use the \"String Translations\" section in the used multilingual "
2003
  "plugin to change the labels. Changing them here will have no effect as long "
2004
  "as the multilingual plugin remains active."
2005
  msgstr ""
2006
 
2007
+ #: admin/templates/map-settings.php:482 admin/templates/map-settings.php:483
2008
+ #: frontend/templates/default.php:12
2009
+ #: frontend/templates/store-listings-below.php:12 inc/wpsl-functions.php:127
2010
  msgid "Your location"
2011
  msgstr ""
2012
 
2013
+ #: admin/templates/map-settings.php:486 admin/templates/map-settings.php:487
2014
+ #: frontend/templates/default.php:21
2015
+ #: frontend/templates/store-listings-below.php:21 inc/wpsl-functions.php:130
2016
  msgid "Search radius"
2017
  msgstr ""
2018
 
2019
+ #: admin/templates/map-settings.php:490 admin/templates/map-settings.php:491
2020
+ #: frontend/class-frontend.php:1613 inc/wpsl-functions.php:131
2021
  msgid "No results found"
2022
  msgstr ""
2023
 
2024
+ #: admin/templates/map-settings.php:498
2025
  msgid "Searching (preloader text)"
2026
  msgstr ""
2027
 
2028
+ #: admin/templates/map-settings.php:499 frontend/class-frontend.php:1612
2029
+ #: inc/wpsl-functions.php:129
2030
  msgid "Searching..."
2031
  msgstr ""
2032
 
2033
+ #: admin/templates/map-settings.php:502 admin/templates/map-settings.php:503
2034
+ #: frontend/templates/default.php:30
2035
+ #: frontend/templates/store-listings-below.php:30 inc/wpsl-functions.php:132
2036
  msgid "Results"
2037
  msgstr ""
2038
 
2039
+ #: admin/templates/map-settings.php:506 admin/upgrade.php:206
2040
+ #: inc/wpsl-functions.php:146
2041
  msgid "Category filter"
2042
  msgstr ""
2043
 
2044
+ #: admin/templates/map-settings.php:507 frontend/class-frontend.php:1289
2045
  msgid "Category"
2046
  msgstr ""
2047
 
2048
+ #: admin/templates/map-settings.php:510
2049
+ msgid "Category first item"
2050
+ msgstr ""
2051
+
2052
+ #: admin/templates/map-settings.php:511 admin/upgrade.php:367
2053
+ #: frontend/class-frontend.php:1292 inc/wpsl-functions.php:147
2054
+ msgid "Any"
2055
+ msgstr ""
2056
+
2057
+ #: admin/templates/map-settings.php:514 admin/templates/map-settings.php:515
2058
+ #: admin/upgrade.php:59 frontend/class-frontend.php:1614
2059
+ #: frontend/underscore-functions.php:137 frontend/underscore-functions.php:167
2060
+ #: inc/wpsl-functions.php:133
2061
  msgid "More info"
2062
  msgstr ""
2063
 
2064
+ #: admin/templates/map-settings.php:518 admin/templates/map-settings.php:519
2065
+ #: frontend/class-frontend.php:785 frontend/underscore-functions.php:29
2066
+ #: frontend/underscore-functions.php:63 frontend/underscore-functions.php:146
2067
+ #: inc/wpsl-functions.php:141
2068
  msgid "Phone"
2069
  msgstr ""
2070
 
2071
+ #: admin/templates/map-settings.php:538 admin/templates/map-settings.php:539
2072
+ #: frontend/class-frontend.php:1619 inc/wpsl-functions.php:126
2073
  msgid "Start location"
2074
  msgstr ""
2075
 
2076
+ #: admin/templates/map-settings.php:542
2077
  msgid "Get directions"
2078
  msgstr ""
2079
 
2080
+ #: admin/templates/map-settings.php:543 frontend/class-frontend.php:1617
2081
+ #: inc/wpsl-functions.php:134
2082
  msgid "Directions"
2083
  msgstr ""
2084
 
2085
+ #: admin/templates/map-settings.php:546
2086
  msgid "No directions found"
2087
  msgstr ""
2088
 
2089
+ #: admin/templates/map-settings.php:547 admin/upgrade.php:151
2090
+ #: frontend/class-frontend.php:1618 inc/wpsl-functions.php:135
2091
  msgid "No route could be found between the origin and destination"
2092
  msgstr ""
2093
 
2094
+ #: admin/templates/map-settings.php:550 admin/templates/map-settings.php:551
2095
+ #: admin/upgrade.php:77 frontend/class-frontend.php:1620
2096
+ #: inc/wpsl-functions.php:136
2097
  msgid "Back"
2098
  msgstr ""
2099
 
2100
+ #: admin/templates/map-settings.php:554 admin/templates/map-settings.php:555
2101
+ #: admin/upgrade.php:143 frontend/class-frontend.php:1621
2102
+ #: inc/wpsl-functions.php:137
2103
  msgid "Street view"
2104
  msgstr ""
2105
 
2106
+ #: admin/templates/map-settings.php:558 admin/templates/map-settings.php:559
2107
+ #: admin/upgrade.php:147 frontend/class-frontend.php:1622
2108
+ #: inc/wpsl-functions.php:138
2109
  msgid "Zoom here"
2110
  msgstr ""
2111
 
2112
+ #: admin/templates/map-settings.php:562
2113
  msgid "General error"
2114
  msgstr ""
2115
 
2116
+ #: admin/templates/map-settings.php:563 frontend/class-frontend.php:1615
2117
+ #: inc/wpsl-functions.php:139
2118
  msgid "Something went wrong, please try again!"
2119
  msgstr ""
2120
 
2121
+ #: admin/templates/map-settings.php:566
2122
  msgid "Query limit error"
2123
  msgstr ""
2124
 
2125
+ #: admin/templates/map-settings.php:566
2126
  #, php-format
2127
  msgid ""
2128
  "You can raise the %susage limit%s by obtaining an API %skey%s, and fill in "
2129
  "the \"API key\" field at the top of this page."
2130
  msgstr ""
2131
 
2132
+ #: admin/templates/map-settings.php:567 frontend/class-frontend.php:1616
2133
+ #: inc/wpsl-functions.php:140
2134
  msgid "API usage limit reached"
2135
  msgstr ""
2136
 
2137
+ #: admin/templates/map-settings.php:580
2138
  msgid "Tools"
2139
  msgstr ""
2140
 
2141
+ #: admin/templates/map-settings.php:583
2142
  msgid "Enable store locator debug?"
2143
  msgstr ""
2144
 
2145
+ #: admin/templates/map-settings.php:583
2146
  #, php-format
2147
  msgid ""
2148
  "This disables the WPSL transient cache. %sThe transient cache is only used "
2149
  "if the %sLoad locations on page load%s option is enabled."
2150
  msgstr ""
2151
 
2152
+ #: admin/templates/map-settings.php:587
2153
  msgid "WPSL transients"
2154
  msgstr ""
2155
 
2156
+ #: admin/templates/map-settings.php:588
2157
  msgid "Clear store locator transient cache"
2158
  msgstr ""
2159
 
2160
+ #: admin/upgrade.php:73
2161
  msgid "info window"
2162
  msgstr ""
2163
 
2164
+ #: admin/upgrade.php:81
2165
  msgid "Reset"
2166
  msgstr ""
2167
 
2168
+ #: admin/upgrade.php:174 inc/wpsl-functions.php:121
2169
  msgid "stores"
2170
  msgstr ""
2171
 
2172
+ #: admin/upgrade.php:178 inc/wpsl-functions.php:122
2173
  msgid "store-category"
2174
  msgstr ""
2175
 
2176
+ #: admin/upgrade.php:418
2177
  #, php-format
2178
  msgid ""
2179
  "Because you updated WP Store Locator from version 1.x, the %s current store "
2180
  "locations need to be %sconverted%s to custom post types."
2181
  msgstr ""
2182
 
2183
+ #: admin/upgrade.php:439
2184
  #, php-format
2185
  msgid ""
2186
  "The script converting the locations timed out. %s You can click the \"Start "
2191
  "but if you are reading this then that failed."
2192
  msgstr ""
2193
 
2194
+ #: admin/upgrade.php:460
2195
  msgid "Store locations to convert:"
2196
  msgstr ""
2197
 
2198
+ #: admin/upgrade.php:462
2199
  msgid "Start Converting"
2200
  msgstr ""
2201
 
2202
+ #: admin/upgrade.php:584
2203
  #, php-format
2204
  msgid ""
2205
  "All the store locations are now converted to custom post types. %s You can "
2206
  "view them on the %sAll Stores%s page."
2207
  msgstr ""
2208
 
2209
+ #: frontend/class-frontend.php:722
2210
  msgid ""
2211
  "If you use the [wpsl_address] shortcode outside a store page you need to set "
2212
  "the ID attribute."
2213
  msgstr ""
2214
 
2215
+ #: frontend/class-frontend.php:836
2216
  msgid ""
2217
  "If you use the [wpsl_hours] shortcode outside a store page you need to set "
2218
  "the ID attribute."
2219
  msgstr ""
2220
 
2221
+ #: frontend/class-frontend.php:884
2222
  msgid ""
2223
  "If you use the [wpsl_map] shortcode outside a store page, then you need to "
2224
  "set the ID or category attribute."
2225
  msgstr ""
2226
 
2227
+ #: frontend/class-frontend.php:1444
 
 
 
 
2228
  msgid "The application does not have permission to use the Geolocation API."
2229
  msgstr ""
2230
 
2231
+ #: frontend/class-frontend.php:1445
2232
  msgid "Location information is unavailable."
2233
  msgstr ""
2234
 
2235
+ #: frontend/class-frontend.php:1446
2236
  msgid "The geolocation request timed out."
2237
  msgstr ""
2238
 
2239
+ #: frontend/class-frontend.php:1447
2240
  msgid "An unknown error occurred."
2241
  msgstr ""
2242
 
2243
+ #: frontend/templates/default.php:62
2244
+ #: frontend/templates/store-listings-below.php:68
2245
  #, php-format
2246
  msgid "Search provided by %sWP Store Locator%s"
2247
  msgstr ""
2346
  msgid "Zip"
2347
  msgstr ""
2348
 
2349
+ #: inc/wpsl-functions.php:216
2350
  msgid "Show the store list below the map"
2351
  msgstr ""
2352
 
2353
+ #: inc/wpsl-functions.php:233
2354
  msgid "Monday"
2355
  msgstr ""
2356
 
2357
+ #: inc/wpsl-functions.php:234
2358
  msgid "Tuesday"
2359
  msgstr ""
2360
 
2361
+ #: inc/wpsl-functions.php:235
2362
  msgid "Wednesday"
2363
  msgstr ""
2364
 
2365
+ #: inc/wpsl-functions.php:236
2366
  msgid "Thursday"
2367
  msgstr ""
2368
 
2369
+ #: inc/wpsl-functions.php:237
2370
  msgid "Friday"
2371
  msgstr ""
2372
 
2373
+ #: inc/wpsl-functions.php:238
2374
  msgid "Saturday"
2375
  msgstr ""
2376
 
2377
+ #: inc/wpsl-functions.php:239
2378
  msgid "Sunday"
2379
  msgstr ""
2380
 
2381
+ #: inc/wpsl-functions.php:269
2382
  #, php-format
2383
  msgid "Mon %sTue %sWed %sThu %sFri %sSat Closed %sSun Closed"
2384
  msgstr ""
2385
 
2386
+ #: inc/wpsl-functions.php:285
2387
  msgid "Satellite"
2388
  msgstr ""
2389
 
2390
+ #: inc/wpsl-functions.php:286
2391
  msgid "Hybrid"
2392
  msgstr ""
2393
 
2394
+ #: inc/wpsl-functions.php:287
2395
  msgid "Terrain"
2396
  msgstr ""
2397
 
2398
+ #: inc/wpsl-functions.php:302
2399
  msgid "(city) (state) (zip code)"
2400
  msgstr ""
2401
 
2402
+ #: inc/wpsl-functions.php:303
2403
  msgid "(city), (state) (zip code)"
2404
  msgstr ""
2405
 
2406
+ #: inc/wpsl-functions.php:304
2407
  msgid "(city) (zip code)"
2408
  msgstr ""
2409
 
2410
+ #: inc/wpsl-functions.php:305
2411
  msgid "(city), (zip code)"
2412
  msgstr ""
2413
 
2414
+ #: inc/wpsl-functions.php:306
2415
  msgid "(zip code) (city) (state)"
2416
  msgstr ""
2417
 
2418
+ #: inc/wpsl-functions.php:307
2419
  msgid "(zip code) (city)"
2420
  msgstr ""
readme.txt CHANGED
@@ -1,11 +1,11 @@
1
- === WP Store Locator ===
2
  Plugin URI: https://wpstorelocator.co
3
  Contributors: tijmensmit
4
  Donate link: https://www.paypal.me/tijmensmit
5
  Tags: google maps, store locator, business locations, geocoding, stores, geo, zipcode locator, dealer locater, geocode, gmaps, google map, google map plugin, location finder, map tools, shop locator, wp google map
6
  Requires at least: 3.7
7
  Tested up to: 4.4.1
8
- Stable tag: 2.1.2
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl.html
11
 
@@ -78,6 +78,14 @@ Generate a directory based on the store locations.
78
 
79
  Add this shortcode [wpsl] to the page where you want to display the store locator.
80
 
 
 
 
 
 
 
 
 
81
  = The map doesn't display properly. It's either broken in half or doesn't load at all. =
82
 
83
  Make sure you have defined a start point for the map under settings -> Map Settings.
@@ -113,6 +121,33 @@ If you find a plugin or theme that causes a conflict, please report it on the [s
113
 
114
  == Changelog ==
115
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
116
  = 2.1.2, March 4, 2016 =
117
  * Fixed: Invalid HTML in the category dropdown.
118
  * Fixed: Clicking on the marker on a single store / [wpsl_map] page triggered a JS error if the location permalinks are enabled.
@@ -120,20 +155,20 @@ If you find a plugin or theme that causes a conflict, please report it on the [s
120
  * Fixed: Compatibility [issue](https://make.wordpress.org/core/2016/02/17/backbone-and-underscore-updated-to-latest-versions/) with Underscore 1.8.3.
121
 
122
  = 2.1.1, January 13, 2016 =
123
- * Added: Restrict the search results to one or more categories by using the "category" attribute on the [wpsl] [shortcode](https://wpstorelocator.co/document/shortcodes/#store-locator).
124
- * Added: A "start_location" attribute for the [wpsl] [shortcode](https://wpstorelocator.co/document/shortcodes/#store-locator).
125
- * Added: Included a link to the add-ons page in the plugin meta row.
126
- * Added: Support for the "wp_editor" type with the [wpsl_meta_box_fields](https://wpstorelocator.co/document/wpsl_meta_box_fields/) filter, this will render the default WP Editor. Via [Richard](http://ampersandstudio.uk/).
127
  * Changed: Moved the documentation link from the plugin actions row to the plugin meta row.
128
  * Changed: If you use the "category" attribute on the [wpsl_map] shortcode, then the store names in the marker info window will automatically link to the store page or custom url.
129
 
130
  = 2.1.0, December 23, 2015 =
131
- * Added: You can now use the "category" attribute ( use the category slugs as values ) on the [wpsl_map] shortcode to show locations that belong to one or more categories.
132
- * Added: Support to load the marker images from a [different folder](https://wpstorelocator.co/document/use-custom-markers/).
133
- * Added: A [wpsl_marker_props](https://wpstorelocator.co/document/wpsl_marker_props) filter that enables you to change the default "anchor", "scaledSize" and "origin" for the [marker image](https://developers.google.com/maps/documentation/javascript/3.exp/reference#Icon).
134
- * Added: A [wpsl_geocode_components](https://wpstorelocator.co/document/wpsl_geocode_components) filter that enables you to restrict the returned geocode results by administrativeArea, country, locality, postalCode and route.
135
- * Added: A [wpsl_draggable](https://wpstorelocator.co/document/wpsl_draggable_map) filter that enables you to enable/disable the dragging of the map.
136
- * Added: Support for the upcoming add-ons.
137
  * Note: Read [this](https://wpstorelocator.co/version-2-1-released/#widget-support) if you're using a custom template!
138
  * Changed: If you need to geocode the full address ( new store ), and a value for 'state' is provided it's now included in the geocode request.
139
  * Changed: If the Geocode API returns a REQUEST_DENIED status, then the returned error message is shown explaining why it failed.
1
+ === WP Store Locator ===
2
  Plugin URI: https://wpstorelocator.co
3
  Contributors: tijmensmit
4
  Donate link: https://www.paypal.me/tijmensmit
5
  Tags: google maps, store locator, business locations, geocoding, stores, geo, zipcode locator, dealer locater, geocode, gmaps, google map, google map plugin, location finder, map tools, shop locator, wp google map
6
  Requires at least: 3.7
7
  Tested up to: 4.4.1
8
+ Stable tag: 2.2
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl.html
11
 
78
 
79
  Add this shortcode [wpsl] to the page where you want to display the store locator.
80
 
81
+ = There are weird characters in the search results, how do I remove them? =
82
+
83
+ This is most likely caused by a plugin like W3 Total Cache that tried to minify the HTML output on the store locator page. You can fix this by excluding the store locator from being minified on the settings page of the caching plugin you're using. In W3 Total Cache this is done by going to Minify -> Advanced -> Never minify the following pages, and fill in the page you don't want to have minified. So if your store locator is used on mydomain.com/store-locator, then fill in 'store-locator'.
84
+
85
+ = Can I use different markers for each category? =
86
+
87
+ Unfortunately not at the moment, but this will be possible in the future.
88
+
89
  = The map doesn't display properly. It's either broken in half or doesn't load at all. =
90
 
91
  Make sure you have defined a start point for the map under settings -> Map Settings.
121
 
122
  == Changelog ==
123
 
124
+ = 2.2, March 20, 2016 =
125
+ * New: The option to show the categories with checkboxes instead of a dropdown.
126
+ * Note: If you're showing the categories with checkboxes, then you can change the amount of used columns by setting the "checkbox_columns" ( between 1 and 4 ) on the [wpsl] shortcode.
127
+ * New: A [wpsl_no_results](https://wpstorelocator.co/document/wpsl_no_results) filter that allows you to create a custom HTML block that replaces the 'No results found' text.
128
+ * New: The option to enable [autocomplete](https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete) for location searches.
129
+ * Note: Read [this](https://wpstorelocator.co/version-2-2-released/#autocomplete) if you're using a custom template and want to use the autocomplete option.
130
+ * New: A [wpsl_enable_styled_dropdowns](https://wpstorelocator.co/document/wpsl_enable_styled_dropdowns/) filter that allows you to disable the current JS styling for all the dropdowns.
131
+ * New: You can now change the "Any" text used in the category dropdown in the labels section on the settings page.
132
+ * New: The option to hide the country name in the search results / marker pop-up.
133
+ * New: The option to show the contact details below the address.
134
+ * New: A [wpsl_hide_closed_hours](https://wpstorelocator.co/document/wpsl_hide_closed_hours/) filter that enables you to hide the days that the location is closed from the opening hours list.
135
+ * New: Values from [custom dropdowns](https://wpstorelocator.co/version-2-2-released/#custom-dropdown) that have a "wpsl-custom-dropdown" class set are automatically included in the AJAX data.
136
+ * New: Added a Add-Ons page to the "Store Locator" menu.
137
+ * New: A [wpsl_map_tab_anchor_return](https://wpstorelocator.co/document/wpsl_map_tab_anchor_return/) filter that allows you to choose between return true or false if the tab anchor is clicked.
138
+ * New: Added the "aria-required" attribute to the search field.
139
+ * Changed: The category dropdown is now created with [wp_dropdown_categories](https://codex.wordpress.org/Function_Reference/wp_dropdown_categories) and correctly indents sub categories.
140
+ * Changed: If a search returns no results, then the map will now focus on the searched location instead of only showing the "No results found" msg.
141
+ * Changed: Instead of a single "API key" [field](https://wpstorelocator.co/document/configure-wp-store-locator/#google-maps-api) there are now separate [server](https://developers.google.com/maps/documentation/geocoding/get-api-key#get-an-api-key) and [browser](https://developers.google.com/maps/documentation/javascript/get-api-key#get-an-api-key) key fields. If an API key existed, then it's assumed to be a server key.
142
+ * Changed: A scrollbar is shown inside the styled dropdown filters if they are heigher then 300px. You can change the maximum height with the [wpsl_max_dropdown_height](https://wpstorelocator.co/document/wpsl_max_dropdown_height/) filter.
143
+ * Changed: Removed the text wrap on the category filter items. If a category name is too long, then it will now go over two lines instead of being cut off.
144
+ * Changed: Updated the wpml-config.xml and wpsl.pot.
145
+ * Changed: If the autocomplete for the start location on the settings page fails ( JS error ), then the set start location is geocoded in the background when the settings are saved.
146
+ * Changed: A single JS function now handles all the conditional options on the settings page instead of several smaller ones.
147
+ * Changed: The "zoom_name" and "zoom_latlng" setting is renamed to "start_name" and "start_latlng".
148
+ * Changed: Renamed the "category_dropdown" setting to "category_filter" to better reflect the value that it holds ( either checkbox or dropdown ). So if you're using a custom template, then make sure to change "category_dropdown" to "category_filter" in your code.
149
+ * Fixed: If you click on one of the styled dropdowns when it's already open, then it will now close.
150
+
151
  = 2.1.2, March 4, 2016 =
152
  * Fixed: Invalid HTML in the category dropdown.
153
  * Fixed: Clicking on the marker on a single store / [wpsl_map] page triggered a JS error if the location permalinks are enabled.
155
  * Fixed: Compatibility [issue](https://make.wordpress.org/core/2016/02/17/backbone-and-underscore-updated-to-latest-versions/) with Underscore 1.8.3.
156
 
157
  = 2.1.1, January 13, 2016 =
158
+ * New: Restrict the search results to one or more categories by using the "category" attribute on the [wpsl] [shortcode](https://wpstorelocator.co/document/shortcodes/#store-locator).
159
+ * New: A "start_location" attribute for the [wpsl] [shortcode](https://wpstorelocator.co/document/shortcodes/#store-locator).
160
+ * New: Included a link to the add-ons page in the plugin meta row.
161
+ * New: Support for the "wp_editor" type with the [wpsl_meta_box_fields](https://wpstorelocator.co/document/wpsl_meta_box_fields/) filter, this will render the default WP Editor. Via [Richard](http://ampersandstudio.uk/).
162
  * Changed: Moved the documentation link from the plugin actions row to the plugin meta row.
163
  * Changed: If you use the "category" attribute on the [wpsl_map] shortcode, then the store names in the marker info window will automatically link to the store page or custom url.
164
 
165
  = 2.1.0, December 23, 2015 =
166
+ * New: You can now use the "category" attribute ( use the category slugs as values ) on the [wpsl_map] shortcode to show locations that belong to one or more categories.
167
+ * New: Support to load the marker images from a [different folder](https://wpstorelocator.co/document/use-custom-markers/).
168
+ * New: A [wpsl_marker_props](https://wpstorelocator.co/document/wpsl_marker_props) filter that enables you to change the default "anchor", "scaledSize" and "origin" for the [marker image](https://developers.google.com/maps/documentation/javascript/3.exp/reference#Icon).
169
+ * New: A [wpsl_geocode_components](https://wpstorelocator.co/document/wpsl_geocode_components) filter that enables you to restrict the returned geocode results by administrativeArea, country, locality, postalCode and route.
170
+ * New: A [wpsl_draggable](https://wpstorelocator.co/document/wpsl_draggable_map) filter that enables you to enable/disable the dragging of the map.
171
+ * New: Support for the upcoming add-ons.
172
  * Note: Read [this](https://wpstorelocator.co/version-2-1-released/#widget-support) if you're using a custom template!
173
  * Changed: If you need to geocode the full address ( new store ), and a value for 'state' is provided it's now included in the geocode request.
174
  * Changed: If the Geocode API returns a REQUEST_DENIED status, then the returned error message is shown explaining why it failed.
wp-store-locator.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: WP Store Locator
4
  Description: An easy to use location management system that enables users to search for nearby physical stores
5
  Author: Tijmen Smit
6
  Author URI: https://wpstorelocator.co/
7
- Version: 2.1.2
8
  Text Domain: wpsl
9
  Domain Path: /languages/
10
  License: GPL v3
@@ -58,7 +58,7 @@ if ( !class_exists( 'WP_Store_locator' ) ) {
58
  public function define_constants() {
59
 
60
  if ( !defined( 'WPSL_VERSION_NUM' ) )
61
- define( 'WPSL_VERSION_NUM', '2.1.2' );
62
 
63
  if ( !defined( 'WPSL_URL' ) )
64
  define( 'WPSL_URL', plugin_dir_url( __FILE__ ) );
4
  Description: An easy to use location management system that enables users to search for nearby physical stores
5
  Author: Tijmen Smit
6
  Author URI: https://wpstorelocator.co/
7
+ Version: 2.2
8
  Text Domain: wpsl
9
  Domain Path: /languages/
10
  License: GPL v3
58
  public function define_constants() {
59
 
60
  if ( !defined( 'WPSL_VERSION_NUM' ) )
61
+ define( 'WPSL_VERSION_NUM', '2.2' );
62
 
63
  if ( !defined( 'WPSL_URL' ) )
64
  define( 'WPSL_URL', plugin_dir_url( __FILE__ ) );
wpml-config.xml CHANGED
@@ -10,6 +10,7 @@
10
  <key name="no_results_label"/>
11
  <key name="results_label"/>
12
  <key name="category_label"/>
 
13
  <key name="more_label"/>
14
  <key name="directions_label"/>
15
  <key name="no_directions_label"/>
10
  <key name="no_results_label"/>
11
  <key name="results_label"/>
12
  <key name="category_label"/>
13
+ <key name="category_default_label"/>
14
  <key name="more_label"/>
15
  <key name="directions_label"/>
16
  <key name="no_directions_label"/>