Version Description
- 17/03/2021 =
- Product sync feature enhancement - Users can now map upto 25 product attributes which will help them opt for enhanced listing in Google search/Shopping
- Auto check on the attributes like id, product title, product description, product link, image link, offer id, price, target country, content language, google merchant center category, sale price, availability, color, size, item_group_id. User does not need to worry about these attributes, the plugin will manage it in the back end when you opt for product syncing
- Variable products are fully supported for 4 attributes - color, size, gender, age group.
- Auto fetch of variable products data while syncing products into merchant center account
- In case the domain claim fails, user can now manually claim website from plugin's interface by visiting Google Shopping tab
- Some users raised a undefined index notice in version 3.0.1 that is resolved in this version.
Download this release
Release Info
Developer | Tatvic |
Plugin | Enhanced Ecommerce Google Analytics Plugin for WooCommerce |
Version | 3.0.2 |
Comparing to | |
See all releases |
Code changes from version 3.0.1 to 3.0.2
- admin/class-enhanced-ecommerce-google-analytics-admin.php +2 -3
- admin/class-tvc-admin-helper.php +126 -16
- {includes/setup → admin}/css/custom-style.css +0 -0
- admin/css/enhanced-ecommerce-google-analytics-admin.css +46 -0
- admin/css/style.css +0 -11
- {images → admin/images}/ajax-loader.gif +0 -0
- admin/js/enhanced-ecommerce-google-analytics-admin.js +0 -42
- admin/js/sweetalert.min.js +0 -1
- admin/partials/enhanced-ecommerce-google-analytics-admin-display.php +1 -1
- admin/partials/general-fields.php +3 -6
- enhanced-ecommerce-google-analytics.php +2 -2
- includes/application/class-tvc-feed-controller.php +0 -208
- includes/application/class-tvc-feed-support.php +0 -301
- includes/application/google/gmc.txt +0 -23
- includes/application/google/gmc_attrbutes.json +0 -118
- includes/application/google/google.txt +0 -84
- includes/application/google/taxonomy.en-US.txt +0 -5583
- includes/application/google/tvc_google-source.js +0 -292
- includes/application/js/tvc_channel-functions.js +0 -707
- includes/application/js/tvc_channel-functions.min.js +0 -498
- includes/application/js/tvc_feedhandling.js +0 -144
- includes/application/js/tvc_feedhandling.min.js +0 -85
- includes/application/js/tvc_general-functions.js +0 -102
- includes/application/js/tvc_general-functions.min.js +0 -1
- includes/application/js/tvc_logic.js +0 -454
- includes/application/js/tvc_logic.min.js +0 -343
- includes/application/js/tvc_object-attribute-meta.js +0 -66
- includes/application/js/tvc_object-attribute-meta.min.js +0 -1
- includes/application/js/tvc_object-feed.js +0 -849
- includes/application/js/tvc_object-feed.min.js +0 -1
- includes/class-enhanced-ecommerce-google-analytics.php +6 -50
- includes/class-tvc-register-scripts.php +5 -128
- includes/data/class-tvc-ajax-file.php +1104 -1005
- includes/data/class-tvc-queries.php +3 -1
- includes/data/class-tvc-taxonomies.php +1 -1
- includes/data/js/tvc_data.js +0 -105
- includes/data/js/tvc_data.min.js +0 -1
- includes/data/js/tvc_feed-queue-string.js +0 -30
- includes/data/js/tvc_feed-queue-string.min.js +0 -1
- includes/data/js/tvc_metadatahandling.js +0 -596
- includes/data/js/tvc_metadatahandling.min.js +0 -1
- includes/libraries/tvc-async-request.php +0 -187
- includes/setup/add-campaign.php +1 -1
- includes/setup/google-shopping-feed-gaa-config.php +59 -18
- includes/setup/google-shopping-feed-shopping-campaigns.php +1 -1
- includes/setup/google-shopping-feed-sync-product.php +60 -19
- includes/setup/google-shopping-feed.php +54 -4
- includes/setup/help-html.php +4 -7
- includes/setup/json/geotargets.csv +0 -2558
admin/class-enhanced-ecommerce-google-analytics-admin.php
CHANGED
@@ -78,7 +78,7 @@ class Enhanced_Ecommerce_Google_Analytics_Admin extends TVC_Admin_Helper {
|
|
78 |
wp_register_style('aga_confirm', '//cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.css');
|
79 |
wp_enqueue_style('aga_confirm');
|
80 |
|
81 |
-
wp_enqueue_style('custom-css', ENHANCAD_PLUGIN_URL . '/
|
82 |
if($this->is_current_tab_in(array('sync_product_page','gaa_config_page'))){
|
83 |
wp_register_style('plugin-select2',ENHANCAD_PLUGIN_URL . '/includes/setup/plugins/select2/select2.min.css');
|
84 |
wp_enqueue_style('plugin-select2');
|
@@ -104,7 +104,6 @@ class Enhanced_Ecommerce_Google_Analytics_Admin extends TVC_Admin_Helper {
|
|
104 |
$screen = get_current_screen();
|
105 |
if ($screen->id == 'toplevel_page_enhanced-ecommerce-google-analytics-admin-display' || (isset($_GET['page']) && $_GET['page'] == 'enhanced-ecommerce-google-analytics-admin-display')) {
|
106 |
|
107 |
-
wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/sweetalert.min.js', array( 'jquery' ), $this->version, false );
|
108 |
wp_enqueue_script( 'custom-jquery', ENHANCAD_PLUGIN_URL . '/admin/js/jquery-3.5.1.min.js', array( 'jquery' ), $this->version, false );
|
109 |
wp_register_script('popper_bootstrap', '//cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js');
|
110 |
wp_enqueue_script('popper_bootstrap');
|
@@ -114,7 +113,7 @@ class Enhanced_Ecommerce_Google_Analytics_Admin extends TVC_Admin_Helper {
|
|
114 |
wp_enqueue_script('aga_bootstrap_mod');
|
115 |
wp_register_script('aga_confirm_js', '//cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.js');
|
116 |
wp_enqueue_script('aga_confirm_js');
|
117 |
-
|
118 |
if($this->is_current_tab_in(array('sync_product_page','gaa_config_page'))){
|
119 |
wp_register_script('plugin-select2',ENHANCAD_PLUGIN_URL . '/includes/setup/plugins/select2/select2.min.js');
|
120 |
wp_enqueue_script('plugin-select2');
|
78 |
wp_register_style('aga_confirm', '//cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.css');
|
79 |
wp_enqueue_style('aga_confirm');
|
80 |
|
81 |
+
wp_enqueue_style('custom-css', ENHANCAD_PLUGIN_URL . '/admin/css/custom-style.css', array(), $this->version, 'all' );
|
82 |
if($this->is_current_tab_in(array('sync_product_page','gaa_config_page'))){
|
83 |
wp_register_style('plugin-select2',ENHANCAD_PLUGIN_URL . '/includes/setup/plugins/select2/select2.min.css');
|
84 |
wp_enqueue_style('plugin-select2');
|
104 |
$screen = get_current_screen();
|
105 |
if ($screen->id == 'toplevel_page_enhanced-ecommerce-google-analytics-admin-display' || (isset($_GET['page']) && $_GET['page'] == 'enhanced-ecommerce-google-analytics-admin-display')) {
|
106 |
|
|
|
107 |
wp_enqueue_script( 'custom-jquery', ENHANCAD_PLUGIN_URL . '/admin/js/jquery-3.5.1.min.js', array( 'jquery' ), $this->version, false );
|
108 |
wp_register_script('popper_bootstrap', '//cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js');
|
109 |
wp_enqueue_script('popper_bootstrap');
|
113 |
wp_enqueue_script('aga_bootstrap_mod');
|
114 |
wp_register_script('aga_confirm_js', '//cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.2/jquery-confirm.min.js');
|
115 |
wp_enqueue_script('aga_confirm_js');
|
116 |
+
// wp_enqueue_script($this->plugin_name, plugin_dir_url(__FILE__) . 'js/enhanced-ecommerce-google-analytics-admin.js', array('jquery'), $this->version, false);
|
117 |
if($this->is_current_tab_in(array('sync_product_page','gaa_config_page'))){
|
118 |
wp_register_script('plugin-select2',ENHANCAD_PLUGIN_URL . '/includes/setup/plugins/select2/select2.min.js');
|
119 |
wp_enqueue_script('plugin-select2');
|
admin/class-tvc-admin-helper.php
CHANGED
@@ -24,8 +24,7 @@ Class TVC_Admin_Helper{
|
|
24 |
}
|
25 |
if (!class_exists('ShoppingApi')) {
|
26 |
require_once(ENHANCAD_PLUGIN_DIR . 'includes/setup/ShoppingApi.php');
|
27 |
-
}
|
28 |
-
|
29 |
}
|
30 |
|
31 |
public function is_ee_options_data_empty(){
|
@@ -40,9 +39,6 @@ Class TVC_Admin_Helper{
|
|
40 |
return $this->ee_options_data;
|
41 |
}else{
|
42 |
$this->ee_options_data = unserialize(get_option('ee_api_data'));
|
43 |
-
//echo "<pre>";
|
44 |
-
//print_r($this->ee_options_data);
|
45 |
-
//exit;
|
46 |
return $this->ee_options_data;
|
47 |
}
|
48 |
}
|
@@ -54,8 +50,8 @@ Class TVC_Admin_Helper{
|
|
54 |
|
55 |
$tvc_setting_db = [];
|
56 |
$tvc_setting_db['subscription_id'] = $this->get_subscriptionId();
|
57 |
-
$tvc_setting_db['enhanced_e_commerce_tracking'] = (($ee_options_settings['ga_eeT'] == "on" || $ee_options_settings['ga_eeT'])?1:0);
|
58 |
-
$tvc_setting_db['add_gtag_snippet'] = (($ee_options_settings['ga_ST'] == "on" || $ee_options_settings['ga_ST'])?1:0);
|
59 |
|
60 |
|
61 |
$tvc_setting_db['google-add'] ="";
|
@@ -136,10 +132,9 @@ Class TVC_Admin_Helper{
|
|
136 |
if(!isset($GLOBALS['tatvicData']['tvc_subscription'])){
|
137 |
$ee_options_settings = $this->get_ee_options_settings();
|
138 |
}
|
139 |
-
$this->subscriptionId = (isset($GLOBALS['tatvicData']['tvc_subscription'])) ? $GLOBALS['tatvicData']['tvc_subscription'] : $ee_options_settings['subscription_id'];
|
140 |
return $this->subscriptionId;
|
141 |
-
}
|
142 |
-
|
143 |
}
|
144 |
public function get_merchantId(){
|
145 |
if(!empty($this->merchantId)){
|
@@ -227,7 +222,7 @@ Class TVC_Admin_Helper{
|
|
227 |
if(!isset($GLOBALS['tatvicData']['tvc_customer'])){
|
228 |
$ee_options_settings = $this->get_ee_options_settings();
|
229 |
}
|
230 |
-
$this->currentCustomerId = (isset($GLOBALS['tatvicData']['tvc_customer'])) ? $GLOBALS['tatvicData']['tvc_customer'] : $ee_options_settings['google_ads_id'];
|
231 |
return $this->currentCustomerId;
|
232 |
}
|
233 |
}
|
@@ -254,19 +249,80 @@ Class TVC_Admin_Helper{
|
|
254 |
}
|
255 |
|
256 |
public function add_spinner_html(){
|
257 |
-
$spinner_gif = ENHANCAD_PLUGIN_URL . '/images/ajax-loader.gif';
|
258 |
echo '<div class="feed-spinner" id="feed-spinner" style="display:none;">
|
259 |
<img id="img-spinner" src="' . $spinner_gif . '" alt="Loading" />
|
260 |
</div>';
|
261 |
}
|
262 |
|
263 |
public function get_gmcAttributes() {
|
264 |
-
$path =
|
265 |
$str = file_get_contents($path);
|
266 |
$attributes = $str ? json_decode($str, true) : [];
|
267 |
return $attributes;
|
268 |
}
|
269 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
270 |
public function check_setting_status(){
|
271 |
if(!empty($this->setting_status)){
|
272 |
return $this->setting_status;
|
@@ -431,5 +487,59 @@ Class TVC_Admin_Helper{
|
|
431 |
}
|
432 |
return false;
|
433 |
}
|
434 |
-
|
435 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
}
|
25 |
if (!class_exists('ShoppingApi')) {
|
26 |
require_once(ENHANCAD_PLUGIN_DIR . 'includes/setup/ShoppingApi.php');
|
27 |
+
}
|
|
|
28 |
}
|
29 |
|
30 |
public function is_ee_options_data_empty(){
|
39 |
return $this->ee_options_data;
|
40 |
}else{
|
41 |
$this->ee_options_data = unserialize(get_option('ee_api_data'));
|
|
|
|
|
|
|
42 |
return $this->ee_options_data;
|
43 |
}
|
44 |
}
|
50 |
|
51 |
$tvc_setting_db = [];
|
52 |
$tvc_setting_db['subscription_id'] = $this->get_subscriptionId();
|
53 |
+
$tvc_setting_db['enhanced_e_commerce_tracking'] = ((isset($ee_options_settings['ga_eeT']) && ($ee_options_settings['ga_eeT'] == "on" || $ee_options_settings['ga_eeT']))?1:0);
|
54 |
+
$tvc_setting_db['add_gtag_snippet'] = ((isset($ee_options_settings['ga_ST']) && ($ee_options_settings['ga_ST'] == "on" || $ee_options_settings['ga_ST']))?1:0);
|
55 |
|
56 |
|
57 |
$tvc_setting_db['google-add'] ="";
|
132 |
if(!isset($GLOBALS['tatvicData']['tvc_subscription'])){
|
133 |
$ee_options_settings = $this->get_ee_options_settings();
|
134 |
}
|
135 |
+
$this->subscriptionId = (isset($GLOBALS['tatvicData']['tvc_subscription'])) ? $GLOBALS['tatvicData']['tvc_subscription'] : ((isset($ee_options_settings['subscription_id']))?$ee_options_settings['subscription_id']:"");
|
136 |
return $this->subscriptionId;
|
137 |
+
}
|
|
|
138 |
}
|
139 |
public function get_merchantId(){
|
140 |
if(!empty($this->merchantId)){
|
222 |
if(!isset($GLOBALS['tatvicData']['tvc_customer'])){
|
223 |
$ee_options_settings = $this->get_ee_options_settings();
|
224 |
}
|
225 |
+
$this->currentCustomerId = (isset($GLOBALS['tatvicData']['tvc_customer'])) ? $GLOBALS['tatvicData']['tvc_customer'] : ((isset($ee_options_settings['google_ads_id']))?$ee_options_settings['google_ads_id']:"");
|
226 |
return $this->currentCustomerId;
|
227 |
}
|
228 |
}
|
249 |
}
|
250 |
|
251 |
public function add_spinner_html(){
|
252 |
+
$spinner_gif = ENHANCAD_PLUGIN_URL . '/admin/images/ajax-loader.gif';
|
253 |
echo '<div class="feed-spinner" id="feed-spinner" style="display:none;">
|
254 |
<img id="img-spinner" src="' . $spinner_gif . '" alt="Loading" />
|
255 |
</div>';
|
256 |
}
|
257 |
|
258 |
public function get_gmcAttributes() {
|
259 |
+
$path = ENHANCAD_PLUGIN_URL . '/includes/setup/json/gmc_attrbutes.json';
|
260 |
$str = file_get_contents($path);
|
261 |
$attributes = $str ? json_decode($str, true) : [];
|
262 |
return $attributes;
|
263 |
}
|
264 |
+
public function get_gmc_countries_list() {
|
265 |
+
$path = ENHANCAD_PLUGIN_URL . '/includes/setup/json/countries.json';
|
266 |
+
$str = file_get_contents($path);
|
267 |
+
$attributes = $str ? json_decode($str, true) : [];
|
268 |
+
return $attributes;
|
269 |
+
}
|
270 |
+
public function get_gmc_language_list() {
|
271 |
+
$path = ENHANCAD_PLUGIN_URL . '/includes/setup/json/iso_lang.json';
|
272 |
+
$str = file_get_contents($path);
|
273 |
+
$attributes = $str ? json_decode($str, true) : [];
|
274 |
+
return $attributes;
|
275 |
+
}
|
276 |
+
/* start display form input*/
|
277 |
+
public function tvc_language_select($name, $class_id, string $label="Please Select", string $sel_val = "en", bool $require = false){
|
278 |
+
if($name){
|
279 |
+
$countries_list = $this->get_gmc_language_list();
|
280 |
+
?>
|
281 |
+
<select class="form-control select2 <?php echo $class_id; ?> <?php echo ($require == true)?"field-required":""; ?>" name="<?php echo $name; ?>" id="<?php echo $class_id; ?>" >
|
282 |
+
<option value="0"><?php echo $label; ?></option>
|
283 |
+
<?php foreach ($countries_list as $Key => $val) {?>
|
284 |
+
<option value="<?php echo $val["code"];?>" <?php echo($val["code"] == $sel_val)?"selected":""; ?>><?php echo $val["name"]." (".$val["native_name"].")";?></option>
|
285 |
+
<?php
|
286 |
+
}?>
|
287 |
+
</select>
|
288 |
+
<?php
|
289 |
+
}
|
290 |
+
}
|
291 |
+
public function tvc_countries_select($name, $class_id, string $label="Please Select", bool $require = false){
|
292 |
+
if($name){
|
293 |
+
$countries_list = $this->get_gmc_countries_list();
|
294 |
+
$sel_val = $this->get_woo_country();
|
295 |
+
?>
|
296 |
+
<select class="form-control select2 <?php echo $class_id; ?> <?php echo ($require == true)?"field-required":""; ?>" name="<?php echo $name; ?>" id="<?php echo $class_id; ?>" >
|
297 |
+
<option value="0"><?php echo $label; ?></option>
|
298 |
+
<?php foreach ($countries_list as $Key => $val) {?>
|
299 |
+
<option value="<?php echo $val["code"];?>" <?php echo($val["code"] == $sel_val)?"selected":""; ?>><?php echo $val["name"];?></option>
|
300 |
+
<?php
|
301 |
+
}?>
|
302 |
+
</select>
|
303 |
+
<?php
|
304 |
+
}
|
305 |
+
}
|
306 |
+
public function tvc_select($name, $class_id, string $label="Please Select", string $sel_val = null, bool $require = false, $option_list = array()){
|
307 |
+
if(!empty($option_list) && $name){
|
308 |
+
?>
|
309 |
+
<select class="form-control select2 <?php echo $class_id; ?> <?php echo ($require == true)?"field-required":""; ?>" name="<?php echo $name; ?>" id="<?php echo $class_id; ?>" >
|
310 |
+
<option value="0"><?php echo $label; ?></option>
|
311 |
+
<?php foreach ($option_list as $Key => $val) {?>
|
312 |
+
<option value="<?php echo $val["field"];?>" <?php echo($val["field"] == $sel_val)?"selected":""; ?>><?php echo $val["field"];?></option>
|
313 |
+
<?php
|
314 |
+
}?>
|
315 |
+
</select>
|
316 |
+
<?php
|
317 |
+
}
|
318 |
+
}
|
319 |
+
public function tvc_text($name, string $type="text", string $class_id="", string $label=null, $sel_val = null, bool $require = false){
|
320 |
+
?>
|
321 |
+
<input type="<?php echo $type; ?>" name="<?php echo $name; ?>" class="tvc-text <?php echo $class_id; ?>" id="<?php echo $class_id; ?>" placeholder="<?php echo $label; ?>" value="<?php echo $sel_val; ?>">
|
322 |
+
<?php
|
323 |
+
}
|
324 |
+
|
325 |
+
/* end from input*/
|
326 |
public function check_setting_status(){
|
327 |
if(!empty($this->setting_status)){
|
328 |
return $this->setting_status;
|
487 |
}
|
488 |
return false;
|
489 |
}
|
490 |
+
|
491 |
+
public function get_tvc_product_cat_list(){
|
492 |
+
$args = array(
|
493 |
+
'hide_empty' => 1,
|
494 |
+
'taxonomy' => 'product_cat',
|
495 |
+
'orderby' => 'term_id'
|
496 |
+
);
|
497 |
+
$shop_categories_list = get_categories( $args );
|
498 |
+
$tvc_cat_id_list = [];
|
499 |
+
foreach ($shop_categories_list as $key => $value) {
|
500 |
+
$tvc_cat_id_list[]=$value->term_id;
|
501 |
+
}
|
502 |
+
return json_encode($tvc_cat_id_list);
|
503 |
+
}
|
504 |
+
public function get_tvc_product_cat_list_with_name(){
|
505 |
+
$args = array(
|
506 |
+
'hide_empty' => 1,
|
507 |
+
'taxonomy' => 'product_cat',
|
508 |
+
'orderby' => 'term_id'
|
509 |
+
);
|
510 |
+
$shop_categories_list = get_categories( $args );
|
511 |
+
$tvc_cat_id_list = [];
|
512 |
+
foreach ($shop_categories_list as $key => $value) {
|
513 |
+
$tvc_cat_id_list[$value->term_id]=$value->name;
|
514 |
+
}
|
515 |
+
return $tvc_cat_id_list;
|
516 |
+
}
|
517 |
+
|
518 |
+
public function call_domain_claim(){
|
519 |
+
$googleDetail = [];
|
520 |
+
$google_detail = $this->get_ee_options_data();
|
521 |
+
//print_r($google_detail);
|
522 |
+
if(isset($google_detail['setting']) && $google_detail['setting']){
|
523 |
+
$googleDetail = $google_detail['setting'];
|
524 |
+
if($googleDetail->is_domain_claim == '0'){
|
525 |
+
$postData = [
|
526 |
+
'merchant_id' => $googleDetail->merchant_id,
|
527 |
+
'website_url' => $googleDetail->site_url,
|
528 |
+
'subscription_id' => $googleDetail->id,
|
529 |
+
'account_id' => $googleDetail->google_merchant_center_id
|
530 |
+
];
|
531 |
+
$claimWebsite = $this->customApiObj->claimWebsite($postData);
|
532 |
+
//print_r($claimWebsite);
|
533 |
+
if(isset($claimWebsite->error) && !empty($claimWebsite->errors)){
|
534 |
+
return array('error'=>true, 'msg'=>$claimWebsite->errors[0]);
|
535 |
+
}else{
|
536 |
+
$this->set_update_api_to_db();
|
537 |
+
return array('error'=>false, 'msg'=>"Domain claimed successfully.");
|
538 |
+
}
|
539 |
+
}else{
|
540 |
+
return array('error'=>true, 'msg'=>"already domain claimed successfully");
|
541 |
+
}
|
542 |
+
}
|
543 |
+
}
|
544 |
+
|
545 |
+
}?>
|
{includes/setup → admin}/css/custom-style.css
RENAMED
File without changes
|
admin/css/enhanced-ecommerce-google-analytics-admin.css
CHANGED
@@ -466,6 +466,13 @@ ul.nav-tabs{
|
|
466 |
-webkit-animation: 1s spin linear infinite;
|
467 |
animation: 1s tvc-spin linear infinite;
|
468 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
469 |
#refresh_api{height: 25px;}
|
470 |
.btn.tvc_api_sync_btn{
|
471 |
min-width: 114px;
|
@@ -517,3 +524,42 @@ ul.nav-tabs{
|
|
517 |
background-clip: border-box;
|
518 |
border: 1px solid rgba(0,0,0,.125);
|
519 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
466 |
-webkit-animation: 1s spin linear infinite;
|
467 |
animation: 1s tvc-spin linear infinite;
|
468 |
}
|
469 |
+
.domain-claim-spinner.tvc-nb-spinner{
|
470 |
+
top: 5px;
|
471 |
+
right: 38px;
|
472 |
+
margin-left: 0px;
|
473 |
+
width: 15px;
|
474 |
+
height: 15px;
|
475 |
+
}
|
476 |
#refresh_api{height: 25px;}
|
477 |
.btn.tvc_api_sync_btn{
|
478 |
min-width: 114px;
|
524 |
background-clip: border-box;
|
525 |
border: 1px solid rgba(0,0,0,.125);
|
526 |
}
|
527 |
+
|
528 |
+
/* popup */
|
529 |
+
.popup-modal.overlay {
|
530 |
+
position: fixed;
|
531 |
+
top: 0;
|
532 |
+
bottom: 0;
|
533 |
+
left: 0;
|
534 |
+
right: 0;
|
535 |
+
background: rgba(0, 0, 0, 0.7);
|
536 |
+
transition: opacity 500ms;
|
537 |
+
}
|
538 |
+
.popup-modal.overlay:target {
|
539 |
+
visibility: visible;
|
540 |
+
opacity: 1;
|
541 |
+
}
|
542 |
+
.popup-modal .modal-dialog .modal-content{
|
543 |
+
margin: 20px auto;
|
544 |
+
padding: 20px;
|
545 |
+
background: #fff;
|
546 |
+
border-radius: 5px;
|
547 |
+
position: relative;
|
548 |
+
transition: all 5s ease-in-out;
|
549 |
+
border: none;}
|
550 |
+
.popup-modal .modal-dialog .modal-content .close{
|
551 |
+
position: absolute;
|
552 |
+
top: 0px;
|
553 |
+
right: 10px;
|
554 |
+
transition: all 200ms;
|
555 |
+
font-size: 30px;
|
556 |
+
font-weight: bold;
|
557 |
+
text-decoration: none;
|
558 |
+
}
|
559 |
+
.popup-modal .tvc-text{
|
560 |
+
min-height: 30px;
|
561 |
+
max-width: 25rem;
|
562 |
+
width: 100%;
|
563 |
+
font-size: 14px;
|
564 |
+
}
|
565 |
+
#feed-spinner img{width: 60px;}
|
admin/css/style.css
DELETED
@@ -1,11 +0,0 @@
|
|
1 |
-
*{
|
2 |
-
box-sizing: border-box;
|
3 |
-
margin:0px;
|
4 |
-
padding:0px;
|
5 |
-
}
|
6 |
-
body{
|
7 |
-
background-image: url('../images/plugin_bk.png') !important;
|
8 |
-
}
|
9 |
-
.swal{
|
10 |
-
background-color:#2c3e50;
|
11 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{images → admin/images}/ajax-loader.gif
RENAMED
File without changes
|
admin/js/enhanced-ecommerce-google-analytics-admin.js
DELETED
@@ -1,42 +0,0 @@
|
|
1 |
-
(function( $ ) {
|
2 |
-
'use strict';
|
3 |
-
|
4 |
-
/**
|
5 |
-
* All of the code for your admin-facing JavaScript source
|
6 |
-
* should reside in this file.
|
7 |
-
*
|
8 |
-
* Note: It has been assumed you will write jQuery code here, so the
|
9 |
-
* $ function reference has been prepared for usage within the scope
|
10 |
-
* of this function.
|
11 |
-
*
|
12 |
-
* This enables you to define handlers, for when the DOM is ready:
|
13 |
-
*
|
14 |
-
* $(function() {
|
15 |
-
*
|
16 |
-
* });
|
17 |
-
*
|
18 |
-
* When the window is loaded:
|
19 |
-
*
|
20 |
-
* $( window ).load(function() {
|
21 |
-
*
|
22 |
-
* });
|
23 |
-
*
|
24 |
-
* ...and/or other possibilities.
|
25 |
-
*
|
26 |
-
* Ideally, it is not considered best practise to attach more than a
|
27 |
-
* single DOM-ready or window-load handler for a particular page.
|
28 |
-
* Although scripts in the WordPress core, Plugins and Themes may be
|
29 |
-
* practising this, we should strive to set a better example in our own work.
|
30 |
-
*/
|
31 |
-
|
32 |
-
jQuery(document).ready(function(){
|
33 |
-
jQuery('.download').click(function(){
|
34 |
-
jQuery.confirm({
|
35 |
-
theme : 'supervan',
|
36 |
-
type: 'red',
|
37 |
-
title: 'Note !',
|
38 |
-
content: 'Deactivate the Enhanced Ecommerce Google analytics (Tatvic EE Plugin) before activating the free trial.',
|
39 |
-
});
|
40 |
-
});
|
41 |
-
});
|
42 |
-
})( jQuery );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/sweetalert.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.swal=e():t.swal=e()}(this,function(){return function(t){function e(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var n={};return e.m=t,e.c=n,e.d=function(t,n,o){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:o})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=8)}([function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o="swal-button";e.CLASS_NAMES={MODAL:"swal-modal",OVERLAY:"swal-overlay",SHOW_MODAL:"swal-overlay--show-modal",MODAL_TITLE:"swal-title",MODAL_TEXT:"swal-text",ICON:"swal-icon",ICON_CUSTOM:"swal-icon--custom",CONTENT:"swal-content",FOOTER:"swal-footer",BUTTON_CONTAINER:"swal-button-container",BUTTON:o,CONFIRM_BUTTON:o+"--confirm",CANCEL_BUTTON:o+"--cancel",DANGER_BUTTON:o+"--danger",BUTTON_LOADING:o+"--loading",BUTTON_LOADER:o+"__loader"},e.default=e.CLASS_NAMES},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getNode=function(t){var e="."+t;return document.querySelector(e)},e.stringToNode=function(t){var e=document.createElement("div");return e.innerHTML=t.trim(),e.firstChild},e.insertAfter=function(t,e){var n=e.nextSibling;e.parentNode.insertBefore(t,n)},e.removeNode=function(t){t.parentElement.removeChild(t)},e.throwErr=function(t){throw t=t.replace(/ +(?= )/g,""),"SweetAlert: "+(t=t.trim())},e.isPlainObject=function(t){if("[object Object]"!==Object.prototype.toString.call(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype},e.ordinalSuffixOf=function(t){var e=t%10,n=t%100;return 1===e&&11!==n?t+"st":2===e&&12!==n?t+"nd":3===e&&13!==n?t+"rd":t+"th"}},function(t,e,n){"use strict";function o(t){for(var n in t)e.hasOwnProperty(n)||(e[n]=t[n])}Object.defineProperty(e,"__esModule",{value:!0}),o(n(25));var r=n(26);e.overlayMarkup=r.default,o(n(27)),o(n(28)),o(n(29));var i=n(0),a=i.default.MODAL_TITLE,s=i.default.MODAL_TEXT,c=i.default.ICON,l=i.default.FOOTER;e.iconMarkup='\n <div class="'+c+'"></div>',e.titleMarkup='\n <div class="'+a+'"></div>\n',e.textMarkup='\n <div class="'+s+'"></div>',e.footerMarkup='\n <div class="'+l+'"></div>\n'},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1);e.CONFIRM_KEY="confirm",e.CANCEL_KEY="cancel";var r={visible:!0,text:null,value:null,className:"",closeModal:!0},i=Object.assign({},r,{visible:!1,text:"Cancel",value:null}),a=Object.assign({},r,{text:"OK",value:!0});e.defaultButtonList={cancel:i,confirm:a};var s=function(t){switch(t){case e.CONFIRM_KEY:return a;case e.CANCEL_KEY:return i;default:var n=t.charAt(0).toUpperCase()+t.slice(1);return Object.assign({},r,{text:n,value:t})}},c=function(t,e){var n=s(t);return!0===e?Object.assign({},n,{visible:!0}):"string"==typeof e?Object.assign({},n,{visible:!0,text:e}):o.isPlainObject(e)?Object.assign({visible:!0},n,e):Object.assign({},n,{visible:!1})},l=function(t){for(var e={},n=0,o=Object.keys(t);n<o.length;n++){var r=o[n],a=t[r],s=c(r,a);e[r]=s}return e.cancel||(e.cancel=i),e},u=function(t){var n={};switch(t.length){case 1:n[e.CANCEL_KEY]=Object.assign({},i,{visible:!1});break;case 2:n[e.CANCEL_KEY]=c(e.CANCEL_KEY,t[0]),n[e.CONFIRM_KEY]=c(e.CONFIRM_KEY,t[1]);break;default:o.throwErr("Invalid number of 'buttons' in array ("+t.length+").\n If you want more than 2 buttons, you need to use an object!")}return n};e.getButtonListOpts=function(t){var n=e.defaultButtonList;return"string"==typeof t?n[e.CONFIRM_KEY]=c(e.CONFIRM_KEY,t):Array.isArray(t)?n=u(t):o.isPlainObject(t)?n=l(t):!0===t?n=u([!0,!0]):!1===t?n=u([!1,!1]):void 0===t&&(n=e.defaultButtonList),n}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r=n(2),i=n(0),a=i.default.MODAL,s=i.default.OVERLAY,c=n(30),l=n(31),u=n(32),f=n(33);e.injectElIntoModal=function(t){var e=o.getNode(a),n=o.stringToNode(t);return e.appendChild(n),n};var d=function(t){t.className=a,t.textContent=""},p=function(t,e){d(t);var n=e.className;n&&t.classList.add(n)};e.initModalContent=function(t){var e=o.getNode(a);p(e,t),c.default(t.icon),l.initTitle(t.title),l.initText(t.text),f.default(t.content),u.default(t.buttons,t.dangerMode)};var m=function(){var t=o.getNode(s),e=o.stringToNode(r.modalMarkup);t.appendChild(e)};e.default=m},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(3),r={isOpen:!1,promise:null,actions:{},timer:null},i=Object.assign({},r);e.resetState=function(){i=Object.assign({},r)},e.setActionValue=function(t){if("string"==typeof t)return a(o.CONFIRM_KEY,t);for(var e in t)a(e,t[e])};var a=function(t,e){i.actions[t]||(i.actions[t]={}),Object.assign(i.actions[t],{value:e})};e.setActionOptionsFor=function(t,e){var n=(void 0===e?{}:e).closeModal,o=void 0===n||n;Object.assign(i.actions[t],{closeModal:o})},e.default=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r=n(3),i=n(0),a=i.default.OVERLAY,s=i.default.SHOW_MODAL,c=i.default.BUTTON,l=i.default.BUTTON_LOADING,u=n(5);e.openModal=function(){o.getNode(a).classList.add(s),u.default.isOpen=!0};var f=function(){o.getNode(a).classList.remove(s),u.default.isOpen=!1};e.onAction=function(t){void 0===t&&(t=r.CANCEL_KEY);var e=u.default.actions[t],n=e.value;if(!1===e.closeModal){var i=c+"--"+t;o.getNode(i).classList.add(l)}else f();u.default.promise.resolve(n)},e.getState=function(){var t=Object.assign({},u.default);return delete t.promise,delete t.timer,t},e.stopLoading=function(){for(var t=document.querySelectorAll("."+c),e=0;e<t.length;e++){t[e].classList.remove(l)}}},function(t,e){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){(function(e){t.exports=e.sweetAlert=n(9)}).call(e,n(7))},function(t,e,n){(function(e){t.exports=e.swal=n(10)}).call(e,n(7))},function(t,e,n){"undefined"!=typeof window&&n(11),n(16);var o=n(23).default;t.exports=o},function(t,e,n){var o=n(12);"string"==typeof o&&(o=[[t.i,o,""]]);var r={insertAt:"top"};r.transform=void 0;n(14)(o,r);o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(13)(void 0),e.push([t.i,'.swal-icon--error{border-color:#f27474;-webkit-animation:animateErrorIcon .5s;animation:animateErrorIcon .5s}.swal-icon--error__x-mark{position:relative;display:block;-webkit-animation:animateXMark .5s;animation:animateXMark .5s}.swal-icon--error__line{position:absolute;height:5px;width:47px;background-color:#f27474;display:block;top:37px;border-radius:2px}.swal-icon--error__line--left{-webkit-transform:rotate(45deg);transform:rotate(45deg);left:17px}.swal-icon--error__line--right{-webkit-transform:rotate(-45deg);transform:rotate(-45deg);right:16px}@-webkit-keyframes animateErrorIcon{0%{-webkit-transform:rotateX(100deg);transform:rotateX(100deg);opacity:0}to{-webkit-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}}@keyframes animateErrorIcon{0%{-webkit-transform:rotateX(100deg);transform:rotateX(100deg);opacity:0}to{-webkit-transform:rotateX(0deg);transform:rotateX(0deg);opacity:1}}@-webkit-keyframes animateXMark{0%{-webkit-transform:scale(.4);transform:scale(.4);margin-top:26px;opacity:0}50%{-webkit-transform:scale(.4);transform:scale(.4);margin-top:26px;opacity:0}80%{-webkit-transform:scale(1.15);transform:scale(1.15);margin-top:-6px}to{-webkit-transform:scale(1);transform:scale(1);margin-top:0;opacity:1}}@keyframes animateXMark{0%{-webkit-transform:scale(.4);transform:scale(.4);margin-top:26px;opacity:0}50%{-webkit-transform:scale(.4);transform:scale(.4);margin-top:26px;opacity:0}80%{-webkit-transform:scale(1.15);transform:scale(1.15);margin-top:-6px}to{-webkit-transform:scale(1);transform:scale(1);margin-top:0;opacity:1}}.swal-icon--warning{border-color:#f8bb86;-webkit-animation:pulseWarning .75s infinite alternate;animation:pulseWarning .75s infinite alternate}.swal-icon--warning__body{width:5px;height:47px;top:10px;border-radius:2px;margin-left:-2px}.swal-icon--warning__body,.swal-icon--warning__dot{position:absolute;left:50%;background-color:#f8bb86}.swal-icon--warning__dot{width:7px;height:7px;border-radius:50%;margin-left:-4px;bottom:-11px}@-webkit-keyframes pulseWarning{0%{border-color:#f8d486}to{border-color:#f8bb86}}@keyframes pulseWarning{0%{border-color:#f8d486}to{border-color:#f8bb86}}.swal-icon--success{border-color:#a5dc86}.swal-icon--success:after,.swal-icon--success:before{content:"";border-radius:50%;position:absolute;width:60px;height:120px;background:#fff;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.swal-icon--success:before{border-radius:120px 0 0 120px;top:-7px;left:-33px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:60px 60px;transform-origin:60px 60px}.swal-icon--success:after{border-radius:0 120px 120px 0;top:-11px;left:30px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transform-origin:0 60px;transform-origin:0 60px;-webkit-animation:rotatePlaceholder 4.25s ease-in;animation:rotatePlaceholder 4.25s ease-in}.swal-icon--success__ring{width:80px;height:80px;border:4px solid hsla(98,55%,69%,.2);border-radius:50%;box-sizing:content-box;position:absolute;left:-4px;top:-4px;z-index:2}.swal-icon--success__hide-corners{width:5px;height:90px;background-color:#fff;padding:1px;position:absolute;left:28px;top:8px;z-index:1;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.swal-icon--success__line{height:5px;background-color:#a5dc86;display:block;border-radius:2px;position:absolute;z-index:2}.swal-icon--success__line--tip{width:25px;left:14px;top:46px;-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-animation:animateSuccessTip .75s;animation:animateSuccessTip .75s}.swal-icon--success__line--long{width:47px;right:8px;top:38px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-animation:animateSuccessLong .75s;animation:animateSuccessLong .75s}@-webkit-keyframes rotatePlaceholder{0%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}5%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}12%{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}to{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}}@keyframes rotatePlaceholder{0%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}5%{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}12%{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}to{-webkit-transform:rotate(-405deg);transform:rotate(-405deg)}}@-webkit-keyframes animateSuccessTip{0%{width:0;left:1px;top:19px}54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}to{width:25px;left:14px;top:45px}}@keyframes animateSuccessTip{0%{width:0;left:1px;top:19px}54%{width:0;left:1px;top:19px}70%{width:50px;left:-8px;top:37px}84%{width:17px;left:21px;top:48px}to{width:25px;left:14px;top:45px}}@-webkit-keyframes animateSuccessLong{0%{width:0;right:46px;top:54px}65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}to{width:47px;right:8px;top:38px}}@keyframes animateSuccessLong{0%{width:0;right:46px;top:54px}65%{width:0;right:46px;top:54px}84%{width:55px;right:0;top:35px}to{width:47px;right:8px;top:38px}}.swal-icon--info{border-color:#c9dae1}.swal-icon--info:before{width:5px;height:29px;bottom:17px;border-radius:2px;margin-left:-2px}.swal-icon--info:after,.swal-icon--info:before{content:"";position:absolute;left:50%;background-color:#c9dae1}.swal-icon--info:after{width:7px;height:7px;border-radius:50%;margin-left:-3px;top:19px}.swal-icon{width:80px;height:80px;border-width:4px;border-style:solid;border-radius:50%;padding:0;position:relative;box-sizing:content-box;margin:20px auto}.swal-icon:first-child{margin-top:32px}.swal-icon--custom{width:auto;height:auto;max-width:100%;border:none;border-radius:0}.swal-icon img{max-width:100%;max-height:100%}.swal-title{color:rgba(0,0,0,.65);font-weight:600;text-transform:none;position:relative;display:block;padding:13px 16px;font-size:27px;line-height:normal;text-align:center;margin-bottom:0}.swal-title:first-child{margin-top:26px}.swal-title:not(:first-child){padding-bottom:0}.swal-title:not(:last-child){margin-bottom:13px}.swal-text{font-size:16px;position:relative;float:none;line-height:normal;vertical-align:top;text-align:left;display:inline-block;margin:0;padding:0 10px;font-weight:400;color:rgba(0,0,0,.64);max-width:calc(100% - 20px);overflow-wrap:break-word;box-sizing:border-box}.swal-text:first-child{margin-top:45px}.swal-text:last-child{margin-bottom:45px}.swal-footer{text-align:right;padding-top:13px;margin-top:13px;padding:13px 16px;border-radius:inherit;border-top-left-radius:0;border-top-right-radius:0}.swal-button-container{margin:5px;display:inline-block;position:relative}.swal-button{background-color:#7cd1f9;color:#fff;border:none;box-shadow:none;border-radius:5px;font-weight:600;font-size:14px;padding:10px 24px;margin:0;cursor:pointer}.swal-button[not:disabled]:hover{background-color:#78cbf2}.swal-button:active{background-color:#70bce0}.swal-button:focus{outline:none;box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(43,114,165,.29)}.swal-button[disabled]{opacity:.5;cursor:default}.swal-button::-moz-focus-inner{border:0}.swal-button--cancel{color:#555;background-color:#efefef}.swal-button--cancel[not:disabled]:hover{background-color:#e8e8e8}.swal-button--cancel:active{background-color:#d7d7d7}.swal-button--cancel:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(116,136,150,.29)}.swal-button--danger{background-color:#e64942}.swal-button--danger[not:disabled]:hover{background-color:#df4740}.swal-button--danger:active{background-color:#cf423b}.swal-button--danger:focus{box-shadow:0 0 0 1px #fff,0 0 0 3px rgba(165,43,43,.29)}.swal-content{padding:0 20px;margin-top:20px;font-size:medium}.swal-content:last-child{margin-bottom:20px}.swal-content__input,.swal-content__textarea{-webkit-appearance:none;background-color:#fff;border:none;font-size:14px;display:block;box-sizing:border-box;width:100%;border:1px solid rgba(0,0,0,.14);padding:10px 13px;border-radius:2px;transition:border-color .2s}.swal-content__input:focus,.swal-content__textarea:focus{outline:none;border-color:#6db8ff}.swal-content__textarea{resize:vertical}.swal-button--loading{color:transparent}.swal-button--loading~.swal-button__loader{opacity:1}.swal-button__loader{position:absolute;height:auto;width:43px;z-index:2;left:50%;top:50%;-webkit-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%);text-align:center;pointer-events:none;opacity:0}.swal-button__loader div{display:inline-block;float:none;vertical-align:baseline;width:9px;height:9px;padding:0;border:none;margin:2px;opacity:.4;border-radius:7px;background-color:hsla(0,0%,100%,.9);transition:background .2s;-webkit-animation:swal-loading-anim 1s infinite;animation:swal-loading-anim 1s infinite}.swal-button__loader div:nth-child(3n+2){-webkit-animation-delay:.15s;animation-delay:.15s}.swal-button__loader div:nth-child(3n+3){-webkit-animation-delay:.3s;animation-delay:.3s}@-webkit-keyframes swal-loading-anim{0%{opacity:.4}20%{opacity:.4}50%{opacity:1}to{opacity:.4}}@keyframes swal-loading-anim{0%{opacity:.4}20%{opacity:.4}50%{opacity:1}to{opacity:.4}}.swal-overlay{position:fixed;top:0;bottom:0;left:0;right:0;text-align:center;font-size:0;overflow-y:auto;background-color:rgba(0,0,0,.4);z-index:10000;pointer-events:none;opacity:0;transition:opacity .3s}.swal-overlay:before{content:" ";display:inline-block;vertical-align:middle;height:100%}.swal-overlay--show-modal{opacity:1;pointer-events:auto}.swal-overlay--show-modal .swal-modal{opacity:1;pointer-events:auto;box-sizing:border-box;-webkit-animation:showSweetAlert .3s;animation:showSweetAlert .3s;will-change:transform}.swal-modal{width:478px;opacity:0;pointer-events:none;background-color:#fff;text-align:center;border-radius:5px;position:static;margin:20px auto;display:inline-block;vertical-align:middle;-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:50% 50%;transform-origin:50% 50%;z-index:10001;transition:opacity .2s,-webkit-transform .3s;transition:transform .3s,opacity .2s;transition:transform .3s,opacity .2s,-webkit-transform .3s}@media (max-width:500px){.swal-modal{width:calc(100% - 20px)}}@-webkit-keyframes showSweetAlert{0%{-webkit-transform:scale(1);transform:scale(1)}1%{-webkit-transform:scale(.5);transform:scale(.5)}45%{-webkit-transform:scale(1.05);transform:scale(1.05)}80%{-webkit-transform:scale(.95);transform:scale(.95)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes showSweetAlert{0%{-webkit-transform:scale(1);transform:scale(1)}1%{-webkit-transform:scale(.5);transform:scale(.5)}45%{-webkit-transform:scale(1.05);transform:scale(1.05)}80%{-webkit-transform:scale(.95);transform:scale(.95)}to{-webkit-transform:scale(1);transform:scale(1)}}',""])},function(t,e){function n(t,e){var n=t[1]||"",r=t[3];if(!r)return n;if(e&&"function"==typeof btoa){var i=o(r);return[n].concat(r.sources.map(function(t){return"/*# sourceURL="+r.sourceRoot+t+" */"})).concat([i]).join("\n")}return[n].join("\n")}function o(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var o=n(e,t);return e[2]?"@media "+e[2]+"{"+o+"}":o}).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var o={},r=0;r<this.length;r++){var i=this[r][0];"number"==typeof i&&(o[i]=!0)}for(r=0;r<t.length;r++){var a=t[r];"number"==typeof a[0]&&o[a[0]]||(n&&!a[2]?a[2]=n:n&&(a[2]="("+a[2]+") and ("+n+")"),e.push(a))}},e}},function(t,e,n){function o(t,e){for(var n=0;n<t.length;n++){var o=t[n],r=m[o.id];if(r){r.refs++;for(var i=0;i<r.parts.length;i++)r.parts[i](o.parts[i]);for(;i<o.parts.length;i++)r.parts.push(u(o.parts[i],e))}else{for(var a=[],i=0;i<o.parts.length;i++)a.push(u(o.parts[i],e));m[o.id]={id:o.id,refs:1,parts:a}}}}function r(t,e){for(var n=[],o={},r=0;r<t.length;r++){var i=t[r],a=e.base?i[0]+e.base:i[0],s=i[1],c=i[2],l=i[3],u={css:s,media:c,sourceMap:l};o[a]?o[a].parts.push(u):n.push(o[a]={id:a,parts:[u]})}return n}function i(t,e){var n=v(t.insertInto);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insertInto' parameter is invalid.");var o=w[w.length-1];if("top"===t.insertAt)o?o.nextSibling?n.insertBefore(e,o.nextSibling):n.appendChild(e):n.insertBefore(e,n.firstChild),w.push(e);else{if("bottom"!==t.insertAt)throw new Error("Invalid value for parameter 'insertAt'. Must be 'top' or 'bottom'.");n.appendChild(e)}}function a(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t);var e=w.indexOf(t);e>=0&&w.splice(e,1)}function s(t){var e=document.createElement("style");return t.attrs.type="text/css",l(e,t.attrs),i(t,e),e}function c(t){var e=document.createElement("link");return t.attrs.type="text/css",t.attrs.rel="stylesheet",l(e,t.attrs),i(t,e),e}function l(t,e){Object.keys(e).forEach(function(n){t.setAttribute(n,e[n])})}function u(t,e){var n,o,r,i;if(e.transform&&t.css){if(!(i=e.transform(t.css)))return function(){};t.css=i}if(e.singleton){var l=h++;n=g||(g=s(e)),o=f.bind(null,n,l,!1),r=f.bind(null,n,l,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=c(e),o=p.bind(null,n,e),r=function(){a(n),n.href&&URL.revokeObjectURL(n.href)}):(n=s(e),o=d.bind(null,n),r=function(){a(n)});return o(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;o(t=e)}else r()}}function f(t,e,n,o){var r=n?"":o.css;if(t.styleSheet)t.styleSheet.cssText=x(e,r);else{var i=document.createTextNode(r),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}function d(t,e){var n=e.css,o=e.media;if(o&&t.setAttribute("media",o),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}function p(t,e,n){var o=n.css,r=n.sourceMap,i=void 0===e.convertToAbsoluteUrls&&r;(e.convertToAbsoluteUrls||i)&&(o=y(o)),r&&(o+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+" */");var a=new Blob([o],{type:"text/css"}),s=t.href;t.href=URL.createObjectURL(a),s&&URL.revokeObjectURL(s)}var m={},b=function(t){var e;return function(){return void 0===e&&(e=t.apply(this,arguments)),e}}(function(){return window&&document&&document.all&&!window.atob}),v=function(t){var e={};return function(n){return void 0===e[n]&&(e[n]=t.call(this,n)),e[n]}}(function(t){return document.querySelector(t)}),g=null,h=0,w=[],y=n(15);t.exports=function(t,e){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");e=e||{},e.attrs="object"==typeof e.attrs?e.attrs:{},e.singleton||(e.singleton=b()),e.insertInto||(e.insertInto="head"),e.insertAt||(e.insertAt="bottom");var n=r(t,e);return o(n,e),function(t){for(var i=[],a=0;a<n.length;a++){var s=n[a],c=m[s.id];c.refs--,i.push(c)}if(t){o(r(t,e),e)}for(var a=0;a<i.length;a++){var c=i[a];if(0===c.refs){for(var l=0;l<c.parts.length;l++)c.parts[l]();delete m[c.id]}}}};var x=function(){var t=[];return function(e,n){return t[e]=n,t.filter(Boolean).join("\n")}}()},function(t,e){t.exports=function(t){var e="undefined"!=typeof window&&window.location;if(!e)throw new Error("fixUrls requires window.location");if(!t||"string"!=typeof t)return t;var n=e.protocol+"//"+e.host,o=n+e.pathname.replace(/\/[^\/]*$/,"/");return t.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,function(t,e){var r=e.trim().replace(/^"(.*)"$/,function(t,e){return e}).replace(/^'(.*)'$/,function(t,e){return e});if(/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/)/i.test(r))return t;var i;return i=0===r.indexOf("//")?r:0===r.indexOf("/")?n+r:o+r.replace(/^\.\//,""),"url("+JSON.stringify(i)+")"})}},function(t,e,n){var o=n(17);"undefined"==typeof window||window.Promise||(window.Promise=o),n(21),String.prototype.includes||(String.prototype.includes=function(t,e){"use strict";return"number"!=typeof e&&(e=0),!(e+t.length>this.length)&&-1!==this.indexOf(t,e)}),Array.prototype.includes||Object.defineProperty(Array.prototype,"includes",{value:function(t,e){if(null==this)throw new TypeError('"this" is null or not defined');var n=Object(this),o=n.length>>>0;if(0===o)return!1;for(var r=0|e,i=Math.max(r>=0?r:o-Math.abs(r),0);i<o;){if(function(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}(n[i],t))return!0;i++}return!1}}),"undefined"!=typeof window&&function(t){t.forEach(function(t){t.hasOwnProperty("remove")||Object.defineProperty(t,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode.removeChild(this)}})})}([Element.prototype,CharacterData.prototype,DocumentType.prototype])},function(t,e,n){(function(e){!function(n){function o(){}function r(t,e){return function(){t.apply(e,arguments)}}function i(t){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof t)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],f(t,this)}function a(t,e){for(;3===t._state;)t=t._value;if(0===t._state)return void t._deferreds.push(e);t._handled=!0,i._immediateFn(function(){var n=1===t._state?e.onFulfilled:e.onRejected;if(null===n)return void(1===t._state?s:c)(e.promise,t._value);var o;try{o=n(t._value)}catch(t){return void c(e.promise,t)}s(e.promise,o)})}function s(t,e){try{if(e===t)throw new TypeError("A promise cannot be resolved with itself.");if(e&&("object"==typeof e||"function"==typeof e)){var n=e.then;if(e instanceof i)return t._state=3,t._value=e,void l(t);if("function"==typeof n)return void f(r(n,e),t)}t._state=1,t._value=e,l(t)}catch(e){c(t,e)}}function c(t,e){t._state=2,t._value=e,l(t)}function l(t){2===t._state&&0===t._deferreds.length&&i._immediateFn(function(){t._handled||i._unhandledRejectionFn(t._value)});for(var e=0,n=t._deferreds.length;e<n;e++)a(t,t._deferreds[e]);t._deferreds=null}function u(t,e,n){this.onFulfilled="function"==typeof t?t:null,this.onRejected="function"==typeof e?e:null,this.promise=n}function f(t,e){var n=!1;try{t(function(t){n||(n=!0,s(e,t))},function(t){n||(n=!0,c(e,t))})}catch(t){if(n)return;n=!0,c(e,t)}}var d=setTimeout;i.prototype.catch=function(t){return this.then(null,t)},i.prototype.then=function(t,e){var n=new this.constructor(o);return a(this,new u(t,e,n)),n},i.all=function(t){var e=Array.prototype.slice.call(t);return new i(function(t,n){function o(i,a){try{if(a&&("object"==typeof a||"function"==typeof a)){var s=a.then;if("function"==typeof s)return void s.call(a,function(t){o(i,t)},n)}e[i]=a,0==--r&&t(e)}catch(t){n(t)}}if(0===e.length)return t([]);for(var r=e.length,i=0;i<e.length;i++)o(i,e[i])})},i.resolve=function(t){return t&&"object"==typeof t&&t.constructor===i?t:new i(function(e){e(t)})},i.reject=function(t){return new i(function(e,n){n(t)})},i.race=function(t){return new i(function(e,n){for(var o=0,r=t.length;o<r;o++)t[o].then(e,n)})},i._immediateFn="function"==typeof e&&function(t){e(t)}||function(t){d(t,0)},i._unhandledRejectionFn=function(t){"undefined"!=typeof console&&console&&console.warn("Possible Unhandled Promise Rejection:",t)},i._setImmediateFn=function(t){i._immediateFn=t},i._setUnhandledRejectionFn=function(t){i._unhandledRejectionFn=t},void 0!==t&&t.exports?t.exports=i:n.Promise||(n.Promise=i)}(this)}).call(e,n(18).setImmediate)},function(t,e,n){function o(t,e){this._id=t,this._clearFn=e}var r=Function.prototype.apply;e.setTimeout=function(){return new o(r.call(setTimeout,window,arguments),clearTimeout)},e.setInterval=function(){return new o(r.call(setInterval,window,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(window,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n(19),e.setImmediate=setImmediate,e.clearImmediate=clearImmediate},function(t,e,n){(function(t,e){!function(t,n){"use strict";function o(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n<e.length;n++)e[n]=arguments[n+1];var o={callback:t,args:e};return l[c]=o,s(c),c++}function r(t){delete l[t]}function i(t){var e=t.callback,o=t.args;switch(o.length){case 0:e();break;case 1:e(o[0]);break;case 2:e(o[0],o[1]);break;case 3:e(o[0],o[1],o[2]);break;default:e.apply(n,o)}}function a(t){if(u)setTimeout(a,0,t);else{var e=l[t];if(e){u=!0;try{i(e)}finally{r(t),u=!1}}}}if(!t.setImmediate){var s,c=1,l={},u=!1,f=t.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(t);d=d&&d.setTimeout?d:t,"[object process]"==={}.toString.call(t.process)?function(){s=function(t){e.nextTick(function(){a(t)})}}():function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?function(){var e="setImmediate$"+Math.random()+"$",n=function(n){n.source===t&&"string"==typeof n.data&&0===n.data.indexOf(e)&&a(+n.data.slice(e.length))};t.addEventListener?t.addEventListener("message",n,!1):t.attachEvent("onmessage",n),s=function(n){t.postMessage(e+n,"*")}}():t.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){a(t.data)},s=function(e){t.port2.postMessage(e)}}():f&&"onreadystatechange"in f.createElement("script")?function(){var t=f.documentElement;s=function(e){var n=f.createElement("script");n.onreadystatechange=function(){a(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():function(){s=function(t){setTimeout(a,0,t)}}(),d.setImmediate=o,d.clearImmediate=r}}("undefined"==typeof self?void 0===t?this:t:self)}).call(e,n(7),n(20))},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function r(t){if(u===setTimeout)return setTimeout(t,0);if((u===n||!u)&&setTimeout)return u=setTimeout,setTimeout(t,0);try{return u(t,0)}catch(e){try{return u.call(null,t,0)}catch(e){return u.call(this,t,0)}}}function i(t){if(f===clearTimeout)return clearTimeout(t);if((f===o||!f)&&clearTimeout)return f=clearTimeout,clearTimeout(t);try{return f(t)}catch(e){try{return f.call(null,t)}catch(e){return f.call(this,t)}}}function a(){b&&p&&(b=!1,p.length?m=p.concat(m):v=-1,m.length&&s())}function s(){if(!b){var t=r(a);b=!0;for(var e=m.length;e;){for(p=m,m=[];++v<e;)p&&p[v].run();v=-1,e=m.length}p=null,b=!1,i(t)}}function c(t,e){this.fun=t,this.array=e}function l(){}var u,f,d=t.exports={};!function(){try{u="function"==typeof setTimeout?setTimeout:n}catch(t){u=n}try{f="function"==typeof clearTimeout?clearTimeout:o}catch(t){f=o}}();var p,m=[],b=!1,v=-1;d.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];m.push(new c(t,e)),1!==m.length||b||r(s)},c.prototype.run=function(){this.fun.apply(null,this.array)},d.title="browser",d.browser=!0,d.env={},d.argv=[],d.version="",d.versions={},d.on=l,d.addListener=l,d.once=l,d.off=l,d.removeListener=l,d.removeAllListeners=l,d.emit=l,d.prependListener=l,d.prependOnceListener=l,d.listeners=function(t){return[]},d.binding=function(t){throw new Error("process.binding is not supported")},d.cwd=function(){return"/"},d.chdir=function(t){throw new Error("process.chdir is not supported")},d.umask=function(){return 0}},function(t,e,n){"use strict";n(22).polyfill()},function(t,e,n){"use strict";function o(t,e){if(void 0===t||null===t)throw new TypeError("Cannot convert first argument to object");for(var n=Object(t),o=1;o<arguments.length;o++){var r=arguments[o];if(void 0!==r&&null!==r)for(var i=Object.keys(Object(r)),a=0,s=i.length;a<s;a++){var c=i[a],l=Object.getOwnPropertyDescriptor(r,c);void 0!==l&&l.enumerable&&(n[c]=r[c])}}return n}function r(){Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:o})}t.exports={assign:o,polyfill:r}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(24),r=n(6),i=n(5),a=n(36),s=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if("undefined"!=typeof window){var n=a.getOpts.apply(void 0,t);return new Promise(function(t,e){i.default.promise={resolve:t,reject:e},o.default(n),setTimeout(function(){r.openModal()})})}};s.close=r.onAction,s.getState=r.getState,s.setActionValue=i.setActionValue,s.stopLoading=r.stopLoading,s.setDefaults=a.setDefaults,e.default=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r=n(0),i=r.default.MODAL,a=n(4),s=n(34),c=n(35),l=n(1);e.init=function(t){o.getNode(i)||(document.body||l.throwErr("You can only use SweetAlert AFTER the DOM has loaded!"),s.default(),a.default()),a.initModalContent(t),c.default(t)},e.default=e.init},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),r=o.default.MODAL;e.modalMarkup='\n <div class="'+r+'" role="dialog" aria-modal="true"></div>',e.default=e.modalMarkup},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),r=o.default.OVERLAY,i='<div \n class="'+r+'"\n tabIndex="-1">\n </div>';e.default=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),r=o.default.ICON;e.errorIconMarkup=function(){var t=r+"--error",e=t+"__line";return'\n <div class="'+t+'__x-mark">\n <span class="'+e+" "+e+'--left"></span>\n <span class="'+e+" "+e+'--right"></span>\n </div>\n '},e.warningIconMarkup=function(){var t=r+"--warning";return'\n <span class="'+t+'__body">\n <span class="'+t+'__dot"></span>\n </span>\n '},e.successIconMarkup=function(){var t=r+"--success";return'\n <span class="'+t+"__line "+t+'__line--long"></span>\n <span class="'+t+"__line "+t+'__line--tip"></span>\n\n <div class="'+t+'__ring"></div>\n <div class="'+t+'__hide-corners"></div>\n '}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),r=o.default.CONTENT;e.contentMarkup='\n <div class="'+r+'">\n\n </div>\n'},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),r=o.default.BUTTON_CONTAINER,i=o.default.BUTTON,a=o.default.BUTTON_LOADER;e.buttonMarkup='\n <div class="'+r+'">\n\n <button\n class="'+i+'"\n ></button>\n\n <div class="'+a+'">\n <div></div>\n <div></div>\n <div></div>\n </div>\n\n </div>\n'},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),r=n(2),i=n(0),a=i.default.ICON,s=i.default.ICON_CUSTOM,c=["error","warning","success","info"],l={error:r.errorIconMarkup(),warning:r.warningIconMarkup(),success:r.successIconMarkup()},u=function(t,e){var n=a+"--"+t;e.classList.add(n);var o=l[t];o&&(e.innerHTML=o)},f=function(t,e){e.classList.add(s);var n=document.createElement("img");n.src=t,e.appendChild(n)},d=function(t){if(t){var e=o.injectElIntoModal(r.iconMarkup);c.includes(t)?u(t,e):f(t,e)}};e.default=d},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),r=n(4),i=function(t){navigator.userAgent.includes("AppleWebKit")&&(t.style.display="none",t.offsetHeight,t.style.display="")};e.initTitle=function(t){if(t){var e=r.injectElIntoModal(o.titleMarkup);e.textContent=t,i(e)}},e.initText=function(t){if(t){var e=document.createDocumentFragment();t.split("\n").forEach(function(t,n,o){e.appendChild(document.createTextNode(t)),n<o.length-1&&e.appendChild(document.createElement("br"))});var n=r.injectElIntoModal(o.textMarkup);n.appendChild(e),i(n)}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r=n(4),i=n(0),a=i.default.BUTTON,s=i.default.DANGER_BUTTON,c=n(3),l=n(2),u=n(6),f=n(5),d=function(t,e,n){var r=e.text,i=e.value,d=e.className,p=e.closeModal,m=o.stringToNode(l.buttonMarkup),b=m.querySelector("."+a),v=a+"--"+t;if(b.classList.add(v),d){(Array.isArray(d)?d:d.split(" ")).filter(function(t){return t.length>0}).forEach(function(t){b.classList.add(t)})}n&&t===c.CONFIRM_KEY&&b.classList.add(s),b.textContent=r;var g={};return g[t]=i,f.setActionValue(g),f.setActionOptionsFor(t,{closeModal:p}),b.addEventListener("click",function(){return u.onAction(t)}),m},p=function(t,e){var n=r.injectElIntoModal(l.footerMarkup);for(var o in t){var i=t[o],a=d(o,i,e);i.visible&&n.appendChild(a)}0===n.children.length&&n.remove()};e.default=p},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(3),r=n(4),i=n(2),a=n(5),s=n(6),c=n(0),l=c.default.CONTENT,u=function(t){t.addEventListener("input",function(t){var e=t.target,n=e.value;a.setActionValue(n)}),t.addEventListener("keyup",function(t){if("Enter"===t.key)return s.onAction(o.CONFIRM_KEY)}),setTimeout(function(){t.focus(),a.setActionValue("")},0)},f=function(t,e,n){var o=document.createElement(e),r=l+"__"+e;o.classList.add(r);for(var i in n){var a=n[i];o[i]=a}"input"===e&&u(o),t.appendChild(o)},d=function(t){if(t){var e=r.injectElIntoModal(i.contentMarkup),n=t.element,o=t.attributes;"string"==typeof n?f(e,n,o):e.appendChild(n)}};e.default=d},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r=n(2),i=function(){var t=o.stringToNode(r.overlayMarkup);document.body.appendChild(t)};e.default=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(5),r=n(6),i=n(1),a=n(3),s=n(0),c=s.default.MODAL,l=s.default.BUTTON,u=s.default.OVERLAY,f=function(t){t.preventDefault(),v()},d=function(t){t.preventDefault(),g()},p=function(t){if(o.default.isOpen)switch(t.key){case"Escape":return r.onAction(a.CANCEL_KEY)}},m=function(t){if(o.default.isOpen)switch(t.key){case"Tab":return f(t)}},b=function(t){if(o.default.isOpen)return"Tab"===t.key&&t.shiftKey?d(t):void 0},v=function(){var t=i.getNode(l);t&&(t.tabIndex=0,t.focus())},g=function(){var t=i.getNode(c),e=t.querySelectorAll("."+l),n=e.length-1,o=e[n];o&&o.focus()},h=function(t){t[t.length-1].addEventListener("keydown",m)},w=function(t){t[0].addEventListener("keydown",b)},y=function(){var t=i.getNode(c),e=t.querySelectorAll("."+l);e.length&&(h(e),w(e))},x=function(t){if(i.getNode(u)===t.target)return r.onAction(a.CANCEL_KEY)},_=function(t){var e=i.getNode(u);e.removeEventListener("click",x),t&&e.addEventListener("click",x)},k=function(t){o.default.timer&&clearTimeout(o.default.timer),t&&(o.default.timer=window.setTimeout(function(){return r.onAction(a.CANCEL_KEY)},t))},O=function(t){t.closeOnEsc?document.addEventListener("keyup",p):document.removeEventListener("keyup",p),t.dangerMode?v():g(),y(),_(t.closeOnClickOutside),k(t.timer)};e.default=O},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r=n(3),i=n(37),a=n(38),s={title:null,text:null,icon:null,buttons:r.defaultButtonList,content:null,className:null,closeOnClickOutside:!0,closeOnEsc:!0,dangerMode:!1,timer:null},c=Object.assign({},s);e.setDefaults=function(t){c=Object.assign({},s,t)};var l=function(t){var e=t&&t.button,n=t&&t.buttons;return void 0!==e&&void 0!==n&&o.throwErr("Cannot set both 'button' and 'buttons' options!"),void 0!==e?{confirm:e}:n},u=function(t){return o.ordinalSuffixOf(t+1)},f=function(t,e){o.throwErr(u(e)+" argument ('"+t+"') is invalid")},d=function(t,e){var n=t+1,r=e[n];o.isPlainObject(r)||void 0===r||o.throwErr("Expected "+u(n)+" argument ('"+r+"') to be a plain object")},p=function(t,e){var n=t+1,r=e[n];void 0!==r&&o.throwErr("Unexpected "+u(n)+" argument ("+r+")")},m=function(t,e,n,r){var i=typeof e,a="string"===i,s=e instanceof Element;if(a){if(0===n)return{text:e};if(1===n)return{text:e,title:r[0]};if(2===n)return d(n,r),{icon:e};f(e,n)}else{if(s&&0===n)return d(n,r),{content:e};if(o.isPlainObject(e))return p(n,r),e;f(e,n)}};e.getOpts=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n={};t.forEach(function(e,o){var r=m(0,e,o,t);Object.assign(n,r)});var o=l(n);n.buttons=r.getButtonListOpts(o),delete n.button,n.content=i.getContentOpts(n.content);var u=Object.assign({},s,c,n);return Object.keys(u).forEach(function(t){a.DEPRECATED_OPTS[t]&&a.logDeprecation(t)}),u}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(1),r={element:"input",attributes:{placeholder:""}};e.getContentOpts=function(t){var e={};return o.isPlainObject(t)?Object.assign(e,t):t instanceof Element?{element:t}:"input"===t?r:null}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.logDeprecation=function(t){var n=e.DEPRECATED_OPTS[t],o=n.onlyRename,r=n.replacement,i=n.subOption,a=n.link,s=o?"renamed":"deprecated",c='SweetAlert warning: "'+t+'" option has been '+s+".";if(r){c+=" Please use"+(i?' "'+i+'" in ':" ")+'"'+r+'" instead.'}var l="https://sweetalert.js.org";c+=a?" More details: "+l+a:" More details: "+l+"/guides/#upgrading-from-1x",console.warn(c)},e.DEPRECATED_OPTS={type:{replacement:"icon",link:"/docs/#icon"},imageUrl:{replacement:"icon",link:"/docs/#icon"},customClass:{replacement:"className",onlyRename:!0,link:"/docs/#classname"},imageSize:{},showCancelButton:{replacement:"buttons",link:"/docs/#buttons"},showConfirmButton:{replacement:"button",link:"/docs/#button"},confirmButtonText:{replacement:"button",link:"/docs/#button"},confirmButtonColor:{},cancelButtonText:{replacement:"buttons",link:"/docs/#buttons"},closeOnConfirm:{replacement:"button",subOption:"closeModal",link:"/docs/#button"},closeOnCancel:{replacement:"buttons",subOption:"closeModal",link:"/docs/#buttons"},showLoaderOnConfirm:{replacement:"buttons"},animation:{},inputType:{replacement:"content",link:"/docs/#content"},inputValue:{replacement:"content",link:"/docs/#content"},inputPlaceholder:{replacement:"content",link:"/docs/#content"},html:{replacement:"content",link:"/docs/#content"},allowEscapeKey:{replacement:"closeOnEsc",onlyRename:!0,link:"/docs/#closeonesc"},allowClickOutside:{replacement:"closeOnClickOutside",onlyRename:!0,link:"/docs/#closeonclickoutside"}}}])});
|
|
admin/partials/enhanced-ecommerce-google-analytics-admin-display.php
CHANGED
@@ -97,7 +97,7 @@ class TVC_Tabs {
|
|
97 |
<li class="nav-item"><div class="border-left aga-tab nav-link <?php echo $this->is_active_tabs('about_plugin'); ?>"><a href="<?php echo $this->site_url.'about_plugin'; ?>">Premium <img class="new-img-blink" src='<?php echo plugins_url('../images/new-2.gif', __FILE__ ) ?>' /></a></div></li>
|
98 |
<?php }*/ ?>
|
99 |
<li class="tvc-menu-free-plan">
|
100 |
-
<span>Free Plan: 500 Product sync limit</span>
|
101 |
</li>
|
102 |
</ul>
|
103 |
</div>
|
97 |
<li class="nav-item"><div class="border-left aga-tab nav-link <?php echo $this->is_active_tabs('about_plugin'); ?>"><a href="<?php echo $this->site_url.'about_plugin'; ?>">Premium <img class="new-img-blink" src='<?php echo plugins_url('../images/new-2.gif', __FILE__ ) ?>' /></a></div></li>
|
98 |
<?php }*/ ?>
|
99 |
<li class="tvc-menu-free-plan">
|
100 |
+
<span>Free Plan: 500 Product's sync limit</span>
|
101 |
</li>
|
102 |
</ul>
|
103 |
</div>
|
admin/partials/general-fields.php
CHANGED
@@ -316,7 +316,7 @@ Get richer data in the Analytics Multi-Channel Funnels reports."></i></label>
|
|
316 |
<td>
|
317 |
<label class = "align-middle">
|
318 |
<?php $ga_PrivacyPolicy = !empty($data['ga_PrivacyPolicy']) ? 'checked' : ''; ?>
|
319 |
-
<input type="checkbox"
|
320 |
<label for="ga_PrivacyPolicy">Accept Privacy Policy of Plugin</label>
|
321 |
|
322 |
<p class="description">By using Tatvic Plugin, you agree to Tatvic plugin's <a href= "https://www.tatvic.com/privacy-policy/?ref=plugin_policy&utm_source=plugin_backend&utm_medium=woo_premium_plugin&utm_campaign=GDPR_complaince_ecomm_plugins" target="_blank">Privacy Policy</a></p>
|
@@ -355,11 +355,8 @@ Get richer data in the Analytics Multi-Channel Funnels reports."></i></label>
|
|
355 |
</div>
|
356 |
<div class="modal-footer">
|
357 |
<a target="_blank" class="ee-oauth-container btn darken-4 white black-text" href="<?=esc_url($this->url)?>" style="text-transform:none; margin: 0 auto;">
|
358 |
-
<
|
359 |
-
|
360 |
-
src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/53/Google_%22G%22_Logo.svg/512px-Google_%22G%22_Logo.svg.png" />
|
361 |
-
</div>
|
362 |
-
<p style="font-size: inherit; margin-top:5px; margin-right:8px; ">Sign In With Google</p>
|
363 |
</a>
|
364 |
<!--sigin with google end-->
|
365 |
</div>
|
316 |
<td>
|
317 |
<label class = "align-middle">
|
318 |
<?php $ga_PrivacyPolicy = !empty($data['ga_PrivacyPolicy']) ? 'checked' : ''; ?>
|
319 |
+
<input type="checkbox" name="ga_PrivacyPolicy" id="ga_PrivacyPolicy" required="required" <?php echo $ga_PrivacyPolicy; ?>>
|
320 |
<label for="ga_PrivacyPolicy">Accept Privacy Policy of Plugin</label>
|
321 |
|
322 |
<p class="description">By using Tatvic Plugin, you agree to Tatvic plugin's <a href= "https://www.tatvic.com/privacy-policy/?ref=plugin_policy&utm_source=plugin_backend&utm_medium=woo_premium_plugin&utm_campaign=GDPR_complaince_ecomm_plugins" target="_blank">Privacy Policy</a></p>
|
355 |
</div>
|
356 |
<div class="modal-footer">
|
357 |
<a target="_blank" class="ee-oauth-container btn darken-4 white black-text" href="<?=esc_url($this->url)?>" style="text-transform:none; margin: 0 auto;">
|
358 |
+
<p style="font-size: inherit; margin-top:5px;"><img width="20px" style="margin-right:8px" alt="Google sign-in"
|
359 |
+
src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/53/Google_%22G%22_Logo.svg/512px-Google_%22G%22_Logo.svg.png" />Sign In With Google</p>
|
|
|
|
|
|
|
360 |
</a>
|
361 |
<!--sigin with google end-->
|
362 |
</div>
|
enhanced-ecommerce-google-analytics.php
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
* Plugin Name: Enhanced E-commerce for Woocommerce store
|
17 |
* Plugin URI: https://www.tatvic.com/tatvic-labs/woocommerce-extension/
|
18 |
* Description: Automates eCommerce tracking in Google Analytics, dynamic remarkting in Google Ads, and provides complete Google Shopping features.
|
19 |
-
* Version: 3.0.
|
20 |
* Author: Tatvic
|
21 |
* Author URI: www.tatvic.com
|
22 |
* License: GPL-2.0+
|
@@ -38,7 +38,7 @@ if ( ! defined( 'WPINC' ) ) {
|
|
38 |
* Start at version 1.0.0 and use SemVer - https://semver.org
|
39 |
* Rename this for your plugin and update it as you release new versions.
|
40 |
*/
|
41 |
-
define( 'PLUGIN_NAME_VERSION', '3.0.
|
42 |
$fullName = plugin_basename( __FILE__ );
|
43 |
$dir = str_replace('/enhanced-ecommerce-google-analytics.php','',$fullName);
|
44 |
if ( ! defined( 'ENHANCAD_PLUGIN_NAME' ) ) {
|
16 |
* Plugin Name: Enhanced E-commerce for Woocommerce store
|
17 |
* Plugin URI: https://www.tatvic.com/tatvic-labs/woocommerce-extension/
|
18 |
* Description: Automates eCommerce tracking in Google Analytics, dynamic remarkting in Google Ads, and provides complete Google Shopping features.
|
19 |
+
* Version: 3.0.2
|
20 |
* Author: Tatvic
|
21 |
* Author URI: www.tatvic.com
|
22 |
* License: GPL-2.0+
|
38 |
* Start at version 1.0.0 and use SemVer - https://semver.org
|
39 |
* Rename this for your plugin and update it as you release new versions.
|
40 |
*/
|
41 |
+
define( 'PLUGIN_NAME_VERSION', '3.0.2' );
|
42 |
$fullName = plugin_basename( __FILE__ );
|
43 |
$dir = str_replace('/enhanced-ecommerce-google-analytics.php','',$fullName);
|
44 |
if ( ! defined( 'ENHANCAD_PLUGIN_NAME' ) ) {
|
includes/application/class-tvc-feed-controller.php
DELETED
@@ -1,208 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* Google Product Feed Controller Class.
|
5 |
-
*
|
6 |
-
* @package Google Product Feed Manager/Application/Classes
|
7 |
-
* @version 1.3.0
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
}
|
13 |
-
|
14 |
-
if ( ! class_exists( 'TVC_Feed_Controller' ) ) :
|
15 |
-
|
16 |
-
/**
|
17 |
-
* Feed Controller Class
|
18 |
-
*
|
19 |
-
* @since 1.10.0
|
20 |
-
*/
|
21 |
-
class TVC_Feed_Controller {
|
22 |
-
|
23 |
-
/**
|
24 |
-
* Removes a feed id from the feed queue
|
25 |
-
*
|
26 |
-
* @param string $feed_id
|
27 |
-
*/
|
28 |
-
public static function remove_id_from_feed_queue( $feed_id ) {
|
29 |
-
$feed_queue = self::get_feed_queue();
|
30 |
-
$key = array_search( $feed_id, $feed_queue );
|
31 |
-
|
32 |
-
if ( false !== $key ) {
|
33 |
-
unset( $feed_queue[ $key ] );
|
34 |
-
$feed_queue = array_values( $feed_queue ); // resort after unset
|
35 |
-
update_site_option( 'tvc_feed_queue', $feed_queue );
|
36 |
-
|
37 |
-
if ( self::feed_queue_is_empty() ) {
|
38 |
-
tvc_clear_feed_process_data();
|
39 |
-
}
|
40 |
-
}
|
41 |
-
}
|
42 |
-
|
43 |
-
/**
|
44 |
-
* Adds an feed id to the feed queue
|
45 |
-
*
|
46 |
-
* @param string $feed_id
|
47 |
-
*/
|
48 |
-
public static function add_id_to_feed_queue( $feed_id ) {
|
49 |
-
$feed_queue = self::get_feed_queue();
|
50 |
-
|
51 |
-
if ( ! in_array( $feed_id, $feed_queue ) ) {
|
52 |
-
array_push( $feed_queue, $feed_id );
|
53 |
-
update_site_option( 'tvc_feed_queue', $feed_queue );
|
54 |
-
}
|
55 |
-
}
|
56 |
-
|
57 |
-
/**
|
58 |
-
* Gets the next feed id from the feed queue
|
59 |
-
*/
|
60 |
-
public static function get_next_id_from_feed_queue() {
|
61 |
-
$feed_queue = self::get_feed_queue();
|
62 |
-
|
63 |
-
return count( $feed_queue ) > 0 ? $feed_queue[0] : false;
|
64 |
-
}
|
65 |
-
|
66 |
-
/**
|
67 |
-
* Empties the feed queue
|
68 |
-
*/
|
69 |
-
public static function clear_feed_queue() {
|
70 |
-
update_site_option( 'tvc_feed_queue', array() );
|
71 |
-
}
|
72 |
-
|
73 |
-
/**
|
74 |
-
* Checks if the feed queue is empty
|
75 |
-
*
|
76 |
-
* @return bool
|
77 |
-
*/
|
78 |
-
public static function feed_queue_is_empty() {
|
79 |
-
$queue = self::get_feed_queue();
|
80 |
-
|
81 |
-
return ( count( $queue ) < 1 ) ? true : false;
|
82 |
-
}
|
83 |
-
|
84 |
-
/**
|
85 |
-
* Returns the number of product ids that are still in the queue
|
86 |
-
*
|
87 |
-
* @since 2.3.0
|
88 |
-
* @return int number of product ids still in the queue
|
89 |
-
*/
|
90 |
-
public static function nr_ids_remaining_in_queue() {
|
91 |
-
$queue = self::get_feed_queue();
|
92 |
-
|
93 |
-
return count( $queue );
|
94 |
-
}
|
95 |
-
|
96 |
-
/**
|
97 |
-
* Sets the background_process_is_running option
|
98 |
-
*
|
99 |
-
* @param bool $set (default false)
|
100 |
-
*/
|
101 |
-
public static function set_feed_processing_flag( $set = false ) {
|
102 |
-
$status = false !== $set ? 'true' : 'false';
|
103 |
-
update_site_option( 'tvc_background_process_is_running', $status );
|
104 |
-
}
|
105 |
-
|
106 |
-
/**
|
107 |
-
* Get the background_process_is_running status
|
108 |
-
*
|
109 |
-
* @return bool
|
110 |
-
*/
|
111 |
-
public static function feed_is_processing() {
|
112 |
-
$status = get_option( 'tvc_background_process_is_running', 'false' );
|
113 |
-
|
114 |
-
return 'true' === $status ? true : false;
|
115 |
-
}
|
116 |
-
|
117 |
-
/**
|
118 |
-
* Checks if a running feed size is still growing, in order to identify a failing feed process.
|
119 |
-
*
|
120 |
-
* @since 2.2.0
|
121 |
-
*
|
122 |
-
* @param string $feed_file String with the full path and name of the feed file.
|
123 |
-
*
|
124 |
-
* @return boolean False if the feed still grows, true if it stopped growing for a certain time.
|
125 |
-
*/
|
126 |
-
public static function feed_processing_failed( $feed_file ) {
|
127 |
-
|
128 |
-
if ( '' === $feed_file ) {
|
129 |
-
return null;
|
130 |
-
}
|
131 |
-
|
132 |
-
$trans = get_transient( 'tvc_feed_file_size' );
|
133 |
-
|
134 |
-
/**
|
135 |
-
* Get the feed file name that's stored in the transient or take the $feed_file parameter.
|
136 |
-
*/
|
137 |
-
$trans_feed_file = $trans ? substr( $trans, strrpos( $trans, '|' ) + 1 ) : $feed_file;
|
138 |
-
|
139 |
-
/**
|
140 |
-
* if the transient was empty or the feed file in the transient is not the currently active file, reset the transient
|
141 |
-
*/
|
142 |
-
if ( false === $trans || $feed_file !== $trans_feed_file ) {
|
143 |
-
$trans = '0|0|' . $feed_file;
|
144 |
-
set_transient( 'tvc_feed_file_size', $trans, TVC_TRANSIENT_LIVE );
|
145 |
-
}
|
146 |
-
|
147 |
-
/**
|
148 |
-
* Get the last data.
|
149 |
-
*/
|
150 |
-
$stored = explode( '|', $trans );
|
151 |
-
$prev_feed_size = $stored[0];
|
152 |
-
$prev_feed_time_stamp = $stored[1];
|
153 |
-
$feed_file = $trans_feed_file;
|
154 |
-
$curr_feed_size = file_exists( $feed_file ) ? filesize( $feed_file ) : false;
|
155 |
-
|
156 |
-
/**
|
157 |
-
* If file does not exist, return true.
|
158 |
-
*/
|
159 |
-
if ( false === $curr_feed_size ) {
|
160 |
-
delete_transient( 'tvc_feed_file_size' ); // reset the counter
|
161 |
-
return true;
|
162 |
-
}
|
163 |
-
|
164 |
-
// If the size of the feed has not grown.
|
165 |
-
if ( $curr_feed_size <= $prev_feed_size ) {
|
166 |
-
// And the delay time has passed.
|
167 |
-
if ( $prev_feed_time_stamp + apply_filters( 'tvc_delay_failed_label', TVC_DELAY_FAILED_LABEL, $feed_file ) < time() ) {
|
168 |
-
delete_transient( 'tvc_feed_file_size' ); // reset the counter
|
169 |
-
return true;
|
170 |
-
} else {
|
171 |
-
return false;
|
172 |
-
}
|
173 |
-
} else { // If the file size has increased, reset the timer and return false.
|
174 |
-
set_transient( 'tvc_feed_file_size', $curr_feed_size . '|' . time() . '|' . $feed_file, TVC_TRANSIENT_LIVE );
|
175 |
-
return false;
|
176 |
-
}
|
177 |
-
}
|
178 |
-
|
179 |
-
/**
|
180 |
-
* Updates the timer that is used as reference to monitor if a file is growing during the feed production process.
|
181 |
-
*
|
182 |
-
* @since 2.11.0
|
183 |
-
*/
|
184 |
-
public static function update_file_grow_monitoring_timer() {
|
185 |
-
// Get the current monitor data.
|
186 |
-
$grow_monitor_array = get_transient( 'tvc_feed_file_size' );
|
187 |
-
|
188 |
-
if ( ! $grow_monitor_array ) { // The tvc_feed_file_size is not set in the non-background mode.
|
189 |
-
return;
|
190 |
-
}
|
191 |
-
|
192 |
-
$grow_monitor_data = explode( '|', $grow_monitor_array );
|
193 |
-
|
194 |
-
// Reset the timer part of the monitor.
|
195 |
-
set_transient( 'tvc_feed_file_size', $grow_monitor_data[0] . '|' . time() . '|' . $grow_monitor_data[2], TVC_TRANSIENT_LIVE );
|
196 |
-
}
|
197 |
-
|
198 |
-
/**
|
199 |
-
* Returns the current feed queue
|
200 |
-
*
|
201 |
-
* @return array with feed ids in the queue or an empty array
|
202 |
-
*/
|
203 |
-
protected static function get_feed_queue() {
|
204 |
-
return get_site_option( 'tvc_feed_queue', array() );
|
205 |
-
}
|
206 |
-
}
|
207 |
-
|
208 |
-
endif;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/class-tvc-feed-support.php
DELETED
@@ -1,301 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* TVC Product Feed Support Class.
|
5 |
-
*
|
6 |
-
* @package TVC Product Feed Manager/Application/Classes
|
7 |
-
* @version 1.1.2
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
-
exit;
|
12 |
-
}
|
13 |
-
|
14 |
-
if ( ! class_exists( 'TVC_Feed_Support' ) ) :
|
15 |
-
|
16 |
-
/**
|
17 |
-
* Feed Support Class
|
18 |
-
*/
|
19 |
-
class TVC_Feed_Support {
|
20 |
-
|
21 |
-
/**
|
22 |
-
* @param $query_object
|
23 |
-
* @return bool|mixed
|
24 |
-
*/
|
25 |
-
public function get_query_string_from_query_object( $query_object ) {
|
26 |
-
// TODO: There's probably a better way to do this!
|
27 |
-
foreach ( $query_object as $value ) {
|
28 |
-
return $value;
|
29 |
-
}
|
30 |
-
|
31 |
-
return false;
|
32 |
-
}
|
33 |
-
|
34 |
-
/**
|
35 |
-
* @param $feed_name
|
36 |
-
* @param $relations_table
|
37 |
-
* @return mixed|string
|
38 |
-
*/
|
39 |
-
public function find_relation( $feed_name, $relations_table ) {
|
40 |
-
$result = '';
|
41 |
-
|
42 |
-
foreach ( $relations_table as $relation ) {
|
43 |
-
if ( $relation['field'] === $feed_name ) {
|
44 |
-
$result = $relation['db'];
|
45 |
-
break;
|
46 |
-
}
|
47 |
-
}
|
48 |
-
|
49 |
-
$relations_table = null;
|
50 |
-
|
51 |
-
return $result;
|
52 |
-
}
|
53 |
-
|
54 |
-
/**
|
55 |
-
* @param $term_id
|
56 |
-
* @param $category_mapping
|
57 |
-
* @return bool|int
|
58 |
-
*/
|
59 |
-
public function category_is_selected( $term_id, $category_mapping ) {
|
60 |
-
for ( $i = 0; $i < count( $category_mapping ); $i ++ ) {
|
61 |
-
if ( (string) $term_id === $category_mapping[ $i ]->shopCategoryId ) {
|
62 |
-
return $i;
|
63 |
-
}
|
64 |
-
}
|
65 |
-
return false;
|
66 |
-
}
|
67 |
-
|
68 |
-
/**
|
69 |
-
* @param $query_split
|
70 |
-
* @param $product_data
|
71 |
-
* @return bool
|
72 |
-
*/
|
73 |
-
public function check_query_result_on_specific_row( $query_split, $product_data ) {
|
74 |
-
$queries_class = new TVC_Feed_Queries;
|
75 |
-
$current_data = key_exists( $query_split[1], $product_data ) ? $product_data[ $query_split[1] ] : '';
|
76 |
-
|
77 |
-
// the following attributes can or will contain an array so surpress the type warning for these attributes
|
78 |
-
$suppress_type_warning_attributes = apply_filters(
|
79 |
-
'tvc_suppress_type_warning_attributes',
|
80 |
-
array(
|
81 |
-
'_wp_attachement_metadata',
|
82 |
-
)
|
83 |
-
);
|
84 |
-
|
85 |
-
if ( is_array( $current_data ) && ! in_array( $query_split[1], $suppress_type_warning_attributes ) ) { // A user had this once where he had an attribute that only showed "Array()" as value
|
86 |
-
$product_id = key_exists( 'ID', $product_data ) ? $product_data['ID'] : 'unknown';
|
87 |
-
$product_title = key_exists( 'post_title', $product_data ) ? $product_data['post_title'] : 'unknown';
|
88 |
-
|
89 |
-
$error_message = "There is something wrong with the '" . $query_split[1] . "' attribute of product '$product_title' with id $product_id. It seems to be of a wrong type.";
|
90 |
-
|
91 |
-
tvc_write_log_file( $error_message, 'debug' );
|
92 |
-
|
93 |
-
$current_data = $current_data[0];
|
94 |
-
}
|
95 |
-
|
96 |
-
$result = true;
|
97 |
-
|
98 |
-
switch ( $query_split[2] ) {
|
99 |
-
case 0: // includes
|
100 |
-
$result = $queries_class->includes_query( $query_split, $current_data );
|
101 |
-
break;
|
102 |
-
|
103 |
-
case 1: // does not include
|
104 |
-
$result = $queries_class->does_not_include_query( $query_split, $current_data );
|
105 |
-
break;
|
106 |
-
|
107 |
-
case 2: // is equal to
|
108 |
-
$result = $queries_class->is_equal_to_query( $query_split, $current_data );
|
109 |
-
break;
|
110 |
-
|
111 |
-
case 3: // is not equal to
|
112 |
-
$result = $queries_class->is_not_equal_to_query( $query_split, $current_data );
|
113 |
-
break;
|
114 |
-
|
115 |
-
case 4: // is empty
|
116 |
-
$result = $queries_class->is_empty( $current_data );
|
117 |
-
break;
|
118 |
-
|
119 |
-
case 5: // is not empty
|
120 |
-
$result = $queries_class->is_not_empty_query( $current_data );
|
121 |
-
break;
|
122 |
-
|
123 |
-
case 6: // starts with
|
124 |
-
$result = $queries_class->starts_with_query( $query_split, $current_data );
|
125 |
-
break;
|
126 |
-
|
127 |
-
case 7: // does not start with
|
128 |
-
$result = $queries_class->does_not_start_with_query( $query_split, $current_data );
|
129 |
-
break;
|
130 |
-
|
131 |
-
case 8: // ends with
|
132 |
-
$result = $queries_class->ends_with_query( $query_split, $current_data );
|
133 |
-
break;
|
134 |
-
|
135 |
-
case 9: // does not end with
|
136 |
-
$result = $queries_class->does_not_end_with_query( $query_split, $current_data );
|
137 |
-
break;
|
138 |
-
|
139 |
-
case 10: // is greater than
|
140 |
-
$result = $queries_class->is_greater_than_query( $query_split, $current_data );
|
141 |
-
break;
|
142 |
-
|
143 |
-
case 11: // is greater or equal to
|
144 |
-
$result = $queries_class->is_greater_or_equal_to_query( $query_split, $current_data );
|
145 |
-
break;
|
146 |
-
|
147 |
-
case 12: // is smaller than
|
148 |
-
$result = $queries_class->is_smaller_than_query( $query_split, $current_data );
|
149 |
-
break;
|
150 |
-
|
151 |
-
case 13: // is smaller or equal to
|
152 |
-
$result = $queries_class->is_smaller_or_equal_to_query( $query_split, $current_data );
|
153 |
-
break;
|
154 |
-
|
155 |
-
case 14: // is between
|
156 |
-
$result = $queries_class->is_between_query( $query_split, $current_data );
|
157 |
-
break;
|
158 |
-
|
159 |
-
default:
|
160 |
-
break;
|
161 |
-
}
|
162 |
-
|
163 |
-
return $result;
|
164 |
-
}
|
165 |
-
|
166 |
-
/**
|
167 |
-
* @param $current_value
|
168 |
-
* @param $edit_string
|
169 |
-
* @param $combination_string
|
170 |
-
* @param $combined_data_elements
|
171 |
-
* @param $feed_language
|
172 |
-
* @return float|int|mixed|string
|
173 |
-
*/
|
174 |
-
public function edit_value( $current_value, $edit_string, $combination_string, $combined_data_elements, $feed_language ) {
|
175 |
-
$value_editors = new TVC_Feed_Value_Editors;
|
176 |
-
|
177 |
-
$query_split = explode( '#', $edit_string );
|
178 |
-
|
179 |
-
switch ( $query_split[1] ) {
|
180 |
-
case 'change nothing':
|
181 |
-
$result = $current_value;
|
182 |
-
break;
|
183 |
-
|
184 |
-
case 'overwrite':
|
185 |
-
$result = $value_editors->overwrite_value( $query_split );
|
186 |
-
break;
|
187 |
-
|
188 |
-
case 'replace':
|
189 |
-
$result = $value_editors->replace_value( $query_split, $current_value );
|
190 |
-
break;
|
191 |
-
|
192 |
-
case 'remove':
|
193 |
-
$result = $value_editors->remove_value( $query_split, $current_value );
|
194 |
-
break;
|
195 |
-
|
196 |
-
case 'add prefix':
|
197 |
-
$result = $value_editors->add_prefix_value( $query_split, $current_value );
|
198 |
-
break;
|
199 |
-
|
200 |
-
case 'add suffix':
|
201 |
-
$result = $value_editors->add_suffix_value( $query_split, $current_value );
|
202 |
-
break;
|
203 |
-
|
204 |
-
case 'recalculate':
|
205 |
-
$result = $value_editors->recalculate_value( $query_split, $current_value, $combination_string, $combined_data_elements, $feed_language );
|
206 |
-
break;
|
207 |
-
|
208 |
-
case 'convert to child-element':
|
209 |
-
$result = $value_editors->convert_to_element( $query_split, $current_value );
|
210 |
-
break;
|
211 |
-
|
212 |
-
default:
|
213 |
-
$result = false;
|
214 |
-
break;
|
215 |
-
}
|
216 |
-
|
217 |
-
return $result;
|
218 |
-
}
|
219 |
-
|
220 |
-
/**
|
221 |
-
* @param $feed_filter_array
|
222 |
-
* @return array
|
223 |
-
*/
|
224 |
-
public function get_column_names_from_feed_filter_array( $feed_filter_array ) {
|
225 |
-
$empty_array = array();
|
226 |
-
$filters = $feed_filter_array ? json_decode( $feed_filter_array[0]['meta_value'] ) : $empty_array;
|
227 |
-
$column_names = array();
|
228 |
-
|
229 |
-
foreach ( $filters as $filter ) {
|
230 |
-
$query_string = $this->get_query_string_from_query_object( $filter );
|
231 |
-
$query_parts = explode( '#', $query_string );
|
232 |
-
|
233 |
-
array_push( $column_names, $query_parts[1] );
|
234 |
-
}
|
235 |
-
|
236 |
-
return $column_names;
|
237 |
-
}
|
238 |
-
|
239 |
-
/**
|
240 |
-
* makes a unique feed for a copy of an existing feed
|
241 |
-
*
|
242 |
-
* @param string $current_feed_name
|
243 |
-
*
|
244 |
-
* @return string
|
245 |
-
*/
|
246 |
-
public function next_unique_feed_name( $current_feed_name ) {
|
247 |
-
$queries_class = new TVC_Queries();
|
248 |
-
|
249 |
-
$title_end = explode( '_', $current_feed_name );
|
250 |
-
$end_nr = end( $title_end );
|
251 |
-
|
252 |
-
if ( count( $title_end ) > 1 && is_numeric( $end_nr ) ) {
|
253 |
-
$new_title = substr_replace( $current_feed_name, ( $end_nr + 1 ), - strlen( $end_nr ) );
|
254 |
-
} else {
|
255 |
-
$new_title = $current_feed_name . '_1';
|
256 |
-
$end_nr = '1';
|
257 |
-
}
|
258 |
-
|
259 |
-
// increase the end number of the title already exists
|
260 |
-
while ( $queries_class->title_exists( $new_title ) ) {
|
261 |
-
$new_title = substr_replace( $new_title, ( $end_nr + 1 ), - strlen( $end_nr ) );
|
262 |
-
$end_nr ++;
|
263 |
-
}
|
264 |
-
|
265 |
-
return $new_title;
|
266 |
-
}
|
267 |
-
|
268 |
-
/**
|
269 |
-
* Adds multiple single draft image urls to the product, specific for the Ricardo.ch channel
|
270 |
-
*
|
271 |
-
* @since 1.9.0
|
272 |
-
*
|
273 |
-
* @param array $product
|
274 |
-
* @param array $images
|
275 |
-
*/
|
276 |
-
public function process_ricardo_draftimages( &$product, $images ) {
|
277 |
-
for ( $i = 0; $i < 10; $i ++ ) {
|
278 |
-
$product["DraftImages[$i]"] = isset( $images[ $i ] ) ? $images[ $i ] : '';
|
279 |
-
}
|
280 |
-
}
|
281 |
-
|
282 |
-
/**
|
283 |
-
* Corrects issues where the active list is not the same as the data keys
|
284 |
-
*
|
285 |
-
* @since 1.9.0
|
286 |
-
*
|
287 |
-
* @param array $active_fields
|
288 |
-
*/
|
289 |
-
public function correct_active_fields_list( &$active_fields ) {
|
290 |
-
// correct for draft images in Ricardo.ch feed
|
291 |
-
if ( ( $key = array_search( 'DraftImages', $active_fields ) ) !== false ) {
|
292 |
-
unset( $active_fields[ $key ] );
|
293 |
-
for ( $i = 0; $i < 10; $i ++ ) {
|
294 |
-
array_push( $active_fields, "DraftImages[$i]" );
|
295 |
-
}
|
296 |
-
}
|
297 |
-
}
|
298 |
-
}
|
299 |
-
|
300 |
-
// end of TVC_Feed_Support
|
301 |
-
endif;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/google/gmc.txt
DELETED
@@ -1,23 +0,0 @@
|
|
1 |
-
id
|
2 |
-
offerId
|
3 |
-
title
|
4 |
-
description
|
5 |
-
item_group_id
|
6 |
-
link
|
7 |
-
image_link
|
8 |
-
content_language
|
9 |
-
target_country
|
10 |
-
channel
|
11 |
-
age_group
|
12 |
-
availability
|
13 |
-
availability_date
|
14 |
-
brand
|
15 |
-
color
|
16 |
-
condition
|
17 |
-
gender
|
18 |
-
google_product_category
|
19 |
-
gtin
|
20 |
-
item_group_id
|
21 |
-
mpn
|
22 |
-
price
|
23 |
-
sizes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/google/gmc_attrbutes.json
DELETED
@@ -1,118 +0,0 @@
|
|
1 |
-
[
|
2 |
-
{
|
3 |
-
"field": "id",
|
4 |
-
"required": 1,
|
5 |
-
"desc": "Your product’s unique identifier",
|
6 |
-
"wAttribute": "ID"
|
7 |
-
},
|
8 |
-
{
|
9 |
-
"field": "title",
|
10 |
-
"required": 1,
|
11 |
-
"desc": "Your product’s name",
|
12 |
-
"wAttribute": "post_title"
|
13 |
-
},
|
14 |
-
{
|
15 |
-
"field": "description",
|
16 |
-
"required": 1,
|
17 |
-
"desc": "Your product’s description",
|
18 |
-
"wAttribute": "post_excerpt"
|
19 |
-
},
|
20 |
-
{
|
21 |
-
"field": "link",
|
22 |
-
"desc": "Your product’s landing page",
|
23 |
-
"required": 1
|
24 |
-
},
|
25 |
-
{
|
26 |
-
"field": "image_link",
|
27 |
-
"required": 1,
|
28 |
-
"desc": "The URL of your product’s main image",
|
29 |
-
"wAttribute": "_wp_attached_file"
|
30 |
-
},
|
31 |
-
{
|
32 |
-
"field": "price",
|
33 |
-
"required": 1,
|
34 |
-
"desc": "Your product’s price",
|
35 |
-
"wAttribute": "_sale_price"
|
36 |
-
|
37 |
-
},
|
38 |
-
{
|
39 |
-
"field": "gtin",
|
40 |
-
"desc": "Your product’s Global Trade Item Number (GTIN). Required for all new products with an assigned GTIN.",
|
41 |
-
"wAttribute": "tvc_product_gtin"
|
42 |
-
},
|
43 |
-
{
|
44 |
-
"field": "mpn",
|
45 |
-
"desc": "Your product’s Global Trade Item Number (GTIN). Required for all new products with an assigned GTIN.",
|
46 |
-
"wAttribute": "tvc_product_mpn"
|
47 |
-
},
|
48 |
-
{
|
49 |
-
"field": "offer_id",
|
50 |
-
"required": 1,
|
51 |
-
"desc": "offer id",
|
52 |
-
"wAttribute": "ID"
|
53 |
-
},
|
54 |
-
{
|
55 |
-
"field": "brand",
|
56 |
-
"desc": "Your product’s brand name",
|
57 |
-
"wAttribute": "tvc_product_brand"
|
58 |
-
},
|
59 |
-
{
|
60 |
-
"field": "availability",
|
61 |
-
"desc": "Your product's availability",
|
62 |
-
"wAttribute": "_stock_status"
|
63 |
-
},
|
64 |
-
{
|
65 |
-
"field": "item_group_id",
|
66 |
-
"desc": "ID for a group of products that come in different versions (variants)"
|
67 |
-
},
|
68 |
-
{
|
69 |
-
"field": "sizes",
|
70 |
-
"desc": "Your product’s size"
|
71 |
-
},
|
72 |
-
{
|
73 |
-
"field": "color",
|
74 |
-
"desc": "Your product’s color(s)"
|
75 |
-
},
|
76 |
-
{
|
77 |
-
"field": "age_group",
|
78 |
-
"desc": "The demographic for which your product is intended"
|
79 |
-
},
|
80 |
-
{
|
81 |
-
"field": "gender",
|
82 |
-
"desc": "The gender for which your product is intended"
|
83 |
-
},
|
84 |
-
{
|
85 |
-
"field": "condition",
|
86 |
-
"desc": "The condition of your product at time of sale"
|
87 |
-
},
|
88 |
-
{
|
89 |
-
|
90 |
-
"field": "shipping",
|
91 |
-
"desc": "Your product's shipping cost and the locations your product ships to"
|
92 |
-
},
|
93 |
-
{
|
94 |
-
|
95 |
-
"field": "tax",
|
96 |
-
"desc": "Your product’s sales tax rate in percent"
|
97 |
-
},
|
98 |
-
{
|
99 |
-
"field": "product_type",
|
100 |
-
"desc": "Product category that you define for your product"
|
101 |
-
},
|
102 |
-
{
|
103 |
-
"field": "google_product_category",
|
104 |
-
"desc": "product category"
|
105 |
-
},
|
106 |
-
{
|
107 |
-
"field": "content_language",
|
108 |
-
"desc": "content language"
|
109 |
-
},
|
110 |
-
{
|
111 |
-
"field": "target_country",
|
112 |
-
"desc": "Country for Google Shopping Listing"
|
113 |
-
},
|
114 |
-
{
|
115 |
-
"field": "channel",
|
116 |
-
"desc": "channel"
|
117 |
-
}
|
118 |
-
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/google/google.txt
DELETED
@@ -1,84 +0,0 @@
|
|
1 |
-
1 1 id
|
2 |
-
2 1 title
|
3 |
-
3 1 description
|
4 |
-
4 0 google_product_category
|
5 |
-
5 4 product_type
|
6 |
-
6 1 link
|
7 |
-
7 4 mobile_link
|
8 |
-
8 1 image_link
|
9 |
-
9 1 price
|
10 |
-
10 1 condition
|
11 |
-
11 1 availability
|
12 |
-
12 4 availability_date
|
13 |
-
13 0 brand
|
14 |
-
14 1 gtin
|
15 |
-
15 4 mpn
|
16 |
-
16 0 item_group_id
|
17 |
-
17 4 additional_image_link
|
18 |
-
18 4 sale_price
|
19 |
-
19 4 sale_price_effective_date
|
20 |
-
20 0 gender
|
21 |
-
21 0 age_group
|
22 |
-
22 0 color
|
23 |
-
23 0 size
|
24 |
-
24 4 material
|
25 |
-
25 4 pattern
|
26 |
-
26 4 shipping_weight
|
27 |
-
27 4 expiration_date
|
28 |
-
28 4 adwords_redirect
|
29 |
-
29 1 adult
|
30 |
-
30 0 multipack
|
31 |
-
31 1 identifier_exists
|
32 |
-
32 4 size_type
|
33 |
-
33 4 size_system
|
34 |
-
34 0 shipping
|
35 |
-
35 4 shipping_label
|
36 |
-
36 0 is_bundle
|
37 |
-
37 4 custom_label_0
|
38 |
-
38 4 custom_label_1
|
39 |
-
39 4 custom_label_2
|
40 |
-
40 4 custom_label_3
|
41 |
-
41 4 custom_label_4
|
42 |
-
42 4 unit_pricing_measure
|
43 |
-
43 4 unit_pricing_base_measure
|
44 |
-
44 4 energy_efficiency_class
|
45 |
-
45 4 min_energy_efficiency_class
|
46 |
-
46 4 max_energy_efficiency_class
|
47 |
-
47 0 tax
|
48 |
-
48 4 installment
|
49 |
-
49 4 loyalty_points
|
50 |
-
50 4 promotion_id
|
51 |
-
51 4 shipping_length
|
52 |
-
52 4 shipping_width
|
53 |
-
53 4 shipping_height
|
54 |
-
54 4 installment-months
|
55 |
-
55 4 installment-amount
|
56 |
-
56 4 loyalty_points-name
|
57 |
-
57 4 loyalty_points-pointsValue
|
58 |
-
58 4 loyalty_points-ratio
|
59 |
-
59 4 shipping-country
|
60 |
-
60 4 shipping-region
|
61 |
-
61 4 shipping-service
|
62 |
-
62 4 shipping-price
|
63 |
-
63 4 transit_time_label
|
64 |
-
64 4 tax-country
|
65 |
-
65 4 tax-region
|
66 |
-
66 4 tax-rate
|
67 |
-
67 4 tax-tax_ship
|
68 |
-
68 4 tax_category
|
69 |
-
69 4 display_ads_id
|
70 |
-
70 4 display_ads_similar_id
|
71 |
-
71 4 display_ads_title
|
72 |
-
72 4 display_ads_link
|
73 |
-
73 4 display_ads_value
|
74 |
-
74 4 excluded_destination
|
75 |
-
75 4 included_destination
|
76 |
-
76 4 adwords_grouping
|
77 |
-
77 4 adwords_labels
|
78 |
-
78 4 min_handling_time
|
79 |
-
79 4 max_handling_time
|
80 |
-
80 4 cost_of_goods_sold
|
81 |
-
81 0 subscription_cost
|
82 |
-
82 0 subscription_cost-period
|
83 |
-
83 0 subscription_cost-period_length
|
84 |
-
84 0 subscription_cost-amount
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/google/taxonomy.en-US.txt
DELETED
@@ -1,5583 +0,0 @@
|
|
1 |
-
# Google_Product_Taxonomy_Version: 2019-07-10
|
2 |
-
Animals & Pet Supplies
|
3 |
-
Animals & Pet Supplies > Live Animals
|
4 |
-
Animals & Pet Supplies > Pet Supplies
|
5 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies
|
6 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Cage Accessories
|
7 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Cage Accessories > Bird Cage Bird Baths
|
8 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Cage Accessories > Bird Cage Food & Water Dishes
|
9 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Cages & Stands
|
10 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Food
|
11 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Gyms & Playstands
|
12 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Ladders & Perches
|
13 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Toys
|
14 |
-
Animals & Pet Supplies > Pet Supplies > Bird Supplies > Bird Treats
|
15 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies
|
16 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Apparel
|
17 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Beds
|
18 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food
|
19 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food > Non-prescription Cat Food
|
20 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Food > Prescription Cat Food
|
21 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Furniture
|
22 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Furniture Accessories
|
23 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Litter
|
24 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Litter Box Liners
|
25 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Litter Box Mats
|
26 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Litter Boxes
|
27 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Toys
|
28 |
-
Animals & Pet Supplies > Pet Supplies > Cat Supplies > Cat Treats
|
29 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies
|
30 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Apparel
|
31 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Beds
|
32 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Diaper Pads & Liners
|
33 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Diapers
|
34 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food
|
35 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food > Non-prescription Dog Food
|
36 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Food > Prescription Dog Food
|
37 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Houses
|
38 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Kennel & Run Accessories
|
39 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Kennels & Runs
|
40 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Toys
|
41 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Treadmills
|
42 |
-
Animals & Pet Supplies > Pet Supplies > Dog Supplies > Dog Treats
|
43 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies
|
44 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium & Pond Tubing
|
45 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Air Stones & Diffusers
|
46 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Cleaning Supplies
|
47 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Decor
|
48 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Filters
|
49 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Fish Nets
|
50 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Gravel & Substrates
|
51 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Lighting
|
52 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Overflow Boxes
|
53 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Stands
|
54 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Temperature Controllers
|
55 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquarium Water Treatments
|
56 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquariums
|
57 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Aquatic Plant Fertilizers
|
58 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Fish Feeders
|
59 |
-
Animals & Pet Supplies > Pet Supplies > Fish Supplies > Fish Food
|
60 |
-
Animals & Pet Supplies > Pet Supplies > Pet Agility Equipment
|
61 |
-
Animals & Pet Supplies > Pet Supplies > Pet Apparel Hangers
|
62 |
-
Animals & Pet Supplies > Pet Supplies > Pet Bed Accessories
|
63 |
-
Animals & Pet Supplies > Pet Supplies > Pet Bells & Charms
|
64 |
-
Animals & Pet Supplies > Pet Supplies > Pet Biometric Monitors
|
65 |
-
Animals & Pet Supplies > Pet Supplies > Pet Biometric Monitors > Pet Glucose Meters
|
66 |
-
Animals & Pet Supplies > Pet Supplies > Pet Biometric Monitors > Pet Pedometers
|
67 |
-
Animals & Pet Supplies > Pet Supplies > Pet Biometric Monitors > Pet Thermometers
|
68 |
-
Animals & Pet Supplies > Pet Supplies > Pet Bowl Mats
|
69 |
-
Animals & Pet Supplies > Pet Supplies > Pet Bowl Stands
|
70 |
-
Animals & Pet Supplies > Pet Supplies > Pet Bowls, Feeders & Waterers
|
71 |
-
Animals & Pet Supplies > Pet Supplies > Pet Carrier & Crate Accessories
|
72 |
-
Animals & Pet Supplies > Pet Supplies > Pet Carriers & Crates
|
73 |
-
Animals & Pet Supplies > Pet Supplies > Pet Collars & Harnesses
|
74 |
-
Animals & Pet Supplies > Pet Supplies > Pet Containment Systems
|
75 |
-
Animals & Pet Supplies > Pet Supplies > Pet Door Accessories
|
76 |
-
Animals & Pet Supplies > Pet Supplies > Pet Doors
|
77 |
-
Animals & Pet Supplies > Pet Supplies > Pet Eye Drops & Lubricants
|
78 |
-
Animals & Pet Supplies > Pet Supplies > Pet First Aid & Emergency Kits
|
79 |
-
Animals & Pet Supplies > Pet Supplies > Pet Flea & Tick Control
|
80 |
-
Animals & Pet Supplies > Pet Supplies > Pet Food Containers
|
81 |
-
Animals & Pet Supplies > Pet Supplies > Pet Food Scoops
|
82 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies
|
83 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Combs & Brushes
|
84 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Fragrances & Deodorizing Sprays
|
85 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Hair Clippers & Trimmers
|
86 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Hair Dryers
|
87 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Nail Polish
|
88 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Nail Tools
|
89 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Shampoo & Conditioner
|
90 |
-
Animals & Pet Supplies > Pet Supplies > Pet Grooming Supplies > Pet Wipes
|
91 |
-
Animals & Pet Supplies > Pet Supplies > Pet Heating Pad Accessories
|
92 |
-
Animals & Pet Supplies > Pet Supplies > Pet Heating Pads
|
93 |
-
Animals & Pet Supplies > Pet Supplies > Pet ID Tags
|
94 |
-
Animals & Pet Supplies > Pet Supplies > Pet Leash Extensions
|
95 |
-
Animals & Pet Supplies > Pet Supplies > Pet Leashes
|
96 |
-
Animals & Pet Supplies > Pet Supplies > Pet Medical Collars
|
97 |
-
Animals & Pet Supplies > Pet Supplies > Pet Medical Tape & Bandages
|
98 |
-
Animals & Pet Supplies > Pet Supplies > Pet Medicine
|
99 |
-
Animals & Pet Supplies > Pet Supplies > Pet Muzzles
|
100 |
-
Animals & Pet Supplies > Pet Supplies > Pet Oral Care Supplies
|
101 |
-
Animals & Pet Supplies > Pet Supplies > Pet Playpens
|
102 |
-
Animals & Pet Supplies > Pet Supplies > Pet Steps & Ramps
|
103 |
-
Animals & Pet Supplies > Pet Supplies > Pet Strollers
|
104 |
-
Animals & Pet Supplies > Pet Supplies > Pet Sunscreen
|
105 |
-
Animals & Pet Supplies > Pet Supplies > Pet Training Aids
|
106 |
-
Animals & Pet Supplies > Pet Supplies > Pet Training Aids > Pet Training Clickers & Treat Dispensers
|
107 |
-
Animals & Pet Supplies > Pet Supplies > Pet Training Aids > Pet Training Pad Holders
|
108 |
-
Animals & Pet Supplies > Pet Supplies > Pet Training Aids > Pet Training Pads
|
109 |
-
Animals & Pet Supplies > Pet Supplies > Pet Training Aids > Pet Training Sprays & Solutions
|
110 |
-
Animals & Pet Supplies > Pet Supplies > Pet Vitamins & Supplements
|
111 |
-
Animals & Pet Supplies > Pet Supplies > Pet Waste Bag Dispensers & Holders
|
112 |
-
Animals & Pet Supplies > Pet Supplies > Pet Waste Bags
|
113 |
-
Animals & Pet Supplies > Pet Supplies > Pet Waste Disposal Systems & Tools
|
114 |
-
Animals & Pet Supplies > Pet Supplies > Reptile & Amphibian Supplies
|
115 |
-
Animals & Pet Supplies > Pet Supplies > Reptile & Amphibian Supplies > Reptile & Amphibian Food
|
116 |
-
Animals & Pet Supplies > Pet Supplies > Reptile & Amphibian Supplies > Reptile & Amphibian Habitat Accessories
|
117 |
-
Animals & Pet Supplies > Pet Supplies > Reptile & Amphibian Supplies > Reptile & Amphibian Habitat Heating & Lighting
|
118 |
-
Animals & Pet Supplies > Pet Supplies > Reptile & Amphibian Supplies > Reptile & Amphibian Habitats
|
119 |
-
Animals & Pet Supplies > Pet Supplies > Reptile & Amphibian Supplies > Reptile & Amphibian Substrates
|
120 |
-
Animals & Pet Supplies > Pet Supplies > Small Animal Supplies
|
121 |
-
Animals & Pet Supplies > Pet Supplies > Small Animal Supplies > Small Animal Bedding
|
122 |
-
Animals & Pet Supplies > Pet Supplies > Small Animal Supplies > Small Animal Food
|
123 |
-
Animals & Pet Supplies > Pet Supplies > Small Animal Supplies > Small Animal Habitat Accessories
|
124 |
-
Animals & Pet Supplies > Pet Supplies > Small Animal Supplies > Small Animal Habitats & Cages
|
125 |
-
Animals & Pet Supplies > Pet Supplies > Small Animal Supplies > Small Animal Treats
|
126 |
-
Animals & Pet Supplies > Pet Supplies > Vehicle Pet Barriers
|
127 |
-
Apparel & Accessories
|
128 |
-
Apparel & Accessories > Clothing
|
129 |
-
Apparel & Accessories > Clothing > Activewear
|
130 |
-
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear
|
131 |
-
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Bibs
|
132 |
-
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Jerseys
|
133 |
-
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Shorts & Briefs
|
134 |
-
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Skinsuits
|
135 |
-
Apparel & Accessories > Clothing > Activewear > Bicycle Activewear > Bicycle Tights
|
136 |
-
Apparel & Accessories > Clothing > Activewear > Boxing Shorts
|
137 |
-
Apparel & Accessories > Clothing > Activewear > Dance Dresses, Skirts & Costumes
|
138 |
-
Apparel & Accessories > Clothing > Activewear > Football Pants
|
139 |
-
Apparel & Accessories > Clothing > Activewear > Hunting Clothing
|
140 |
-
Apparel & Accessories > Clothing > Activewear > Hunting Clothing > Ghillie Suits
|
141 |
-
Apparel & Accessories > Clothing > Activewear > Hunting Clothing > Hunting & Fishing Vests
|
142 |
-
Apparel & Accessories > Clothing > Activewear > Hunting Clothing > Hunting & Tactical Pants
|
143 |
-
Apparel & Accessories > Clothing > Activewear > Martial Arts Shorts
|
144 |
-
Apparel & Accessories > Clothing > Activewear > Motorcycle Protective Clothing
|
145 |
-
Apparel & Accessories > Clothing > Activewear > Motorcycle Protective Clothing > Motorcycle Jackets
|
146 |
-
Apparel & Accessories > Clothing > Activewear > Motorcycle Protective Clothing > Motorcycle Pants
|
147 |
-
Apparel & Accessories > Clothing > Activewear > Motorcycle Protective Clothing > Motorcycle Suits
|
148 |
-
Apparel & Accessories > Clothing > Activewear > Paintball Clothing
|
149 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing
|
150 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Bottoms
|
151 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Diaper Covers
|
152 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Dresses
|
153 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Outerwear
|
154 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Outfits
|
155 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Sleepwear
|
156 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Socks & Tights
|
157 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Swimwear
|
158 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby & Toddler Tops
|
159 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Baby One-Pieces
|
160 |
-
Apparel & Accessories > Clothing > Baby & Toddler Clothing > Toddler Underwear
|
161 |
-
Apparel & Accessories > Clothing > Dresses
|
162 |
-
Apparel & Accessories > Clothing > One-Pieces
|
163 |
-
Apparel & Accessories > Clothing > One-Pieces > Jumpsuits & Rompers
|
164 |
-
Apparel & Accessories > Clothing > One-Pieces > Leotards & Unitards
|
165 |
-
Apparel & Accessories > Clothing > One-Pieces > Overalls
|
166 |
-
Apparel & Accessories > Clothing > Outerwear
|
167 |
-
Apparel & Accessories > Clothing > Outerwear > Chaps
|
168 |
-
Apparel & Accessories > Clothing > Outerwear > Coats & Jackets
|
169 |
-
Apparel & Accessories > Clothing > Outerwear > Rain Pants
|
170 |
-
Apparel & Accessories > Clothing > Outerwear > Rain Suits
|
171 |
-
Apparel & Accessories > Clothing > Outerwear > Snow Pants & Suits
|
172 |
-
Apparel & Accessories > Clothing > Outerwear > Vests
|
173 |
-
Apparel & Accessories > Clothing > Outfit Sets
|
174 |
-
Apparel & Accessories > Clothing > Pants
|
175 |
-
Apparel & Accessories > Clothing > Shirts & Tops
|
176 |
-
Apparel & Accessories > Clothing > Shorts
|
177 |
-
Apparel & Accessories > Clothing > Skirts
|
178 |
-
Apparel & Accessories > Clothing > Skorts
|
179 |
-
Apparel & Accessories > Clothing > Sleepwear & Loungewear
|
180 |
-
Apparel & Accessories > Clothing > Sleepwear & Loungewear > Loungewear
|
181 |
-
Apparel & Accessories > Clothing > Sleepwear & Loungewear > Nightgowns
|
182 |
-
Apparel & Accessories > Clothing > Sleepwear & Loungewear > Pajamas
|
183 |
-
Apparel & Accessories > Clothing > Sleepwear & Loungewear > Robes
|
184 |
-
Apparel & Accessories > Clothing > Suits
|
185 |
-
Apparel & Accessories > Clothing > Suits > Pant Suits
|
186 |
-
Apparel & Accessories > Clothing > Suits > Skirt Suits
|
187 |
-
Apparel & Accessories > Clothing > Suits > Tuxedos
|
188 |
-
Apparel & Accessories > Clothing > Swimwear
|
189 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing
|
190 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Dirndls
|
191 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Hakama Trousers
|
192 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Japanese Black Formal Wear
|
193 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Kimono Outerwear
|
194 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Kimonos
|
195 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Religious Ceremonial Clothing
|
196 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Religious Ceremonial Clothing > Baptism & Communion Dresses
|
197 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Saris & Lehengas
|
198 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Traditional Leather Pants
|
199 |
-
Apparel & Accessories > Clothing > Traditional & Ceremonial Clothing > Yukata
|
200 |
-
Apparel & Accessories > Clothing > Underwear & Socks
|
201 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Bra Accessories
|
202 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Bra Accessories > Bra Strap Pads
|
203 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Bra Accessories > Bra Straps & Extenders
|
204 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Bra Accessories > Breast Enhancing Inserts
|
205 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Bra Accessories > Breast Petals & Concealers
|
206 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Bras
|
207 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Hosiery
|
208 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Jock Straps
|
209 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Lingerie
|
210 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Lingerie Accessories
|
211 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Lingerie Accessories > Garter Belts
|
212 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Lingerie Accessories > Garters
|
213 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Long Johns
|
214 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Petticoats & Pettipants
|
215 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Shapewear
|
216 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Socks
|
217 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Undershirts
|
218 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Underwear
|
219 |
-
Apparel & Accessories > Clothing > Underwear & Socks > Underwear Slips
|
220 |
-
Apparel & Accessories > Clothing > Uniforms
|
221 |
-
Apparel & Accessories > Clothing > Uniforms > Contractor Pants & Coveralls
|
222 |
-
Apparel & Accessories > Clothing > Uniforms > Flight Suits
|
223 |
-
Apparel & Accessories > Clothing > Uniforms > Food Service Uniforms
|
224 |
-
Apparel & Accessories > Clothing > Uniforms > Food Service Uniforms > Chef's Hats
|
225 |
-
Apparel & Accessories > Clothing > Uniforms > Food Service Uniforms > Chef's Jackets
|
226 |
-
Apparel & Accessories > Clothing > Uniforms > Food Service Uniforms > Chef's Pants
|
227 |
-
Apparel & Accessories > Clothing > Uniforms > Military Uniforms
|
228 |
-
Apparel & Accessories > Clothing > Uniforms > School Uniforms
|
229 |
-
Apparel & Accessories > Clothing > Uniforms > Security Uniforms
|
230 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms
|
231 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Baseball Uniforms
|
232 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Basketball Uniforms
|
233 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Cheerleading Uniforms
|
234 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Cricket Uniforms
|
235 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Football Uniforms
|
236 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Hockey Uniforms
|
237 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Martial Arts Uniforms
|
238 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Officiating Uniforms
|
239 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Soccer Uniforms
|
240 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Softball Uniforms
|
241 |
-
Apparel & Accessories > Clothing > Uniforms > Sports Uniforms > Wrestling Uniforms
|
242 |
-
Apparel & Accessories > Clothing > Uniforms > White Coats
|
243 |
-
Apparel & Accessories > Clothing > Wedding & Bridal Party Dresses
|
244 |
-
Apparel & Accessories > Clothing > Wedding & Bridal Party Dresses > Bridal Party Dresses
|
245 |
-
Apparel & Accessories > Clothing > Wedding & Bridal Party Dresses > Wedding Dresses
|
246 |
-
Apparel & Accessories > Clothing Accessories
|
247 |
-
Apparel & Accessories > Clothing Accessories > Arm Warmers & Sleeves
|
248 |
-
Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories
|
249 |
-
Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories > Baby & Toddler Belts
|
250 |
-
Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories > Baby & Toddler Gloves & Mittens
|
251 |
-
Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories > Baby & Toddler Hats
|
252 |
-
Apparel & Accessories > Clothing Accessories > Baby & Toddler Clothing Accessories > Baby Protective Wear
|
253 |
-
Apparel & Accessories > Clothing Accessories > Balaclavas
|
254 |
-
Apparel & Accessories > Clothing Accessories > Bandanas & Headties
|
255 |
-
Apparel & Accessories > Clothing Accessories > Bandanas & Headties > Bandanas
|
256 |
-
Apparel & Accessories > Clothing Accessories > Bandanas & Headties > Hair Care Wraps
|
257 |
-
Apparel & Accessories > Clothing Accessories > Belt Buckles
|
258 |
-
Apparel & Accessories > Clothing Accessories > Belts
|
259 |
-
Apparel & Accessories > Clothing Accessories > Bridal Accessories
|
260 |
-
Apparel & Accessories > Clothing Accessories > Bridal Accessories > Bridal Veils
|
261 |
-
Apparel & Accessories > Clothing Accessories > Button Studs
|
262 |
-
Apparel & Accessories > Clothing Accessories > Collar Stays
|
263 |
-
Apparel & Accessories > Clothing Accessories > Cufflinks
|
264 |
-
Apparel & Accessories > Clothing Accessories > Decorative Fans
|
265 |
-
Apparel & Accessories > Clothing Accessories > Earmuffs
|
266 |
-
Apparel & Accessories > Clothing Accessories > Gloves & Mittens
|
267 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories
|
268 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Bun & Volume Shapers
|
269 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Combs
|
270 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Extensions
|
271 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Forks & Sticks
|
272 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Nets
|
273 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips
|
274 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips > Barrettes
|
275 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips > Hair Claws & Clips
|
276 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Pins, Claws & Clips > Hair Pins
|
277 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Hair Wreaths
|
278 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Headbands
|
279 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Ponytail Holders
|
280 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Tiaras
|
281 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Wig Accessories
|
282 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Wig Accessories > Wig Caps
|
283 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Wig Accessories > Wig Glue & Tape
|
284 |
-
Apparel & Accessories > Clothing Accessories > Hair Accessories > Wigs
|
285 |
-
Apparel & Accessories > Clothing Accessories > Hand Muffs
|
286 |
-
Apparel & Accessories > Clothing Accessories > Handkerchiefs
|
287 |
-
Apparel & Accessories > Clothing Accessories > Hats
|
288 |
-
Apparel & Accessories > Clothing Accessories > Headwear
|
289 |
-
Apparel & Accessories > Clothing Accessories > Headwear > Fascinators
|
290 |
-
Apparel & Accessories > Clothing Accessories > Headwear > Headdresses
|
291 |
-
Apparel & Accessories > Clothing Accessories > Headwear > Turbans
|
292 |
-
Apparel & Accessories > Clothing Accessories > Leg Warmers
|
293 |
-
Apparel & Accessories > Clothing Accessories > Leis
|
294 |
-
Apparel & Accessories > Clothing Accessories > Maternity Belts & Support Bands
|
295 |
-
Apparel & Accessories > Clothing Accessories > Neck Gaiters
|
296 |
-
Apparel & Accessories > Clothing Accessories > Neckties
|
297 |
-
Apparel & Accessories > Clothing Accessories > Pinback Buttons
|
298 |
-
Apparel & Accessories > Clothing Accessories > Sashes
|
299 |
-
Apparel & Accessories > Clothing Accessories > Scarves & Shawls
|
300 |
-
Apparel & Accessories > Clothing Accessories > Scarves & Shawls > Scarves
|
301 |
-
Apparel & Accessories > Clothing Accessories > Scarves & Shawls > Shawls
|
302 |
-
Apparel & Accessories > Clothing Accessories > Sunglasses
|
303 |
-
Apparel & Accessories > Clothing Accessories > Suspenders
|
304 |
-
Apparel & Accessories > Clothing Accessories > Tie Clips
|
305 |
-
Apparel & Accessories > Clothing Accessories > Traditional Clothing Accessories
|
306 |
-
Apparel & Accessories > Clothing Accessories > Traditional Clothing Accessories > Obis
|
307 |
-
Apparel & Accessories > Clothing Accessories > Traditional Clothing Accessories > Tabi Socks
|
308 |
-
Apparel & Accessories > Clothing Accessories > Wristbands
|
309 |
-
Apparel & Accessories > Costumes & Accessories
|
310 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories
|
311 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Bald Caps
|
312 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Costume Accessory Sets
|
313 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Costume Capes
|
314 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Costume Gloves
|
315 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Costume Hats
|
316 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Costume Special Effects
|
317 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Costume Tobacco Products
|
318 |
-
Apparel & Accessories > Costumes & Accessories > Costume Accessories > Pretend Jewelry
|
319 |
-
Apparel & Accessories > Costumes & Accessories > Costume Shoes
|
320 |
-
Apparel & Accessories > Costumes & Accessories > Costumes
|
321 |
-
Apparel & Accessories > Costumes & Accessories > Masks
|
322 |
-
Apparel & Accessories > Handbag & Wallet Accessories
|
323 |
-
Apparel & Accessories > Handbag & Wallet Accessories > Checkbook Covers
|
324 |
-
Apparel & Accessories > Handbag & Wallet Accessories > Keychains
|
325 |
-
Apparel & Accessories > Handbag & Wallet Accessories > Lanyards
|
326 |
-
Apparel & Accessories > Handbag & Wallet Accessories > Wallet Chains
|
327 |
-
Apparel & Accessories > Handbags, Wallets & Cases
|
328 |
-
Apparel & Accessories > Handbags, Wallets & Cases > Badge & Pass Holders
|
329 |
-
Apparel & Accessories > Handbags, Wallets & Cases > Business Card Cases
|
330 |
-
Apparel & Accessories > Handbags, Wallets & Cases > Handbags
|
331 |
-
Apparel & Accessories > Handbags, Wallets & Cases > Wallets & Money Clips
|
332 |
-
Apparel & Accessories > Jewelry
|
333 |
-
Apparel & Accessories > Jewelry > Anklets
|
334 |
-
Apparel & Accessories > Jewelry > Body Jewelry
|
335 |
-
Apparel & Accessories > Jewelry > Bracelets
|
336 |
-
Apparel & Accessories > Jewelry > Brooches & Lapel Pins
|
337 |
-
Apparel & Accessories > Jewelry > Charms & Pendants
|
338 |
-
Apparel & Accessories > Jewelry > Earrings
|
339 |
-
Apparel & Accessories > Jewelry > Jewelry Sets
|
340 |
-
Apparel & Accessories > Jewelry > Necklaces
|
341 |
-
Apparel & Accessories > Jewelry > Rings
|
342 |
-
Apparel & Accessories > Jewelry > Watch Accessories
|
343 |
-
Apparel & Accessories > Jewelry > Watch Accessories > Watch Bands
|
344 |
-
Apparel & Accessories > Jewelry > Watch Accessories > Watch Stickers & Decals
|
345 |
-
Apparel & Accessories > Jewelry > Watch Accessories > Watch Winders
|
346 |
-
Apparel & Accessories > Jewelry > Watches
|
347 |
-
Apparel & Accessories > Shoe Accessories
|
348 |
-
Apparel & Accessories > Shoe Accessories > Boot Liners
|
349 |
-
Apparel & Accessories > Shoe Accessories > Gaiters
|
350 |
-
Apparel & Accessories > Shoe Accessories > Shoe Covers
|
351 |
-
Apparel & Accessories > Shoe Accessories > Shoelaces
|
352 |
-
Apparel & Accessories > Shoe Accessories > Spurs
|
353 |
-
Apparel & Accessories > Shoes
|
354 |
-
Arts & Entertainment
|
355 |
-
Arts & Entertainment > Event Tickets
|
356 |
-
Arts & Entertainment > Hobbies & Creative Arts
|
357 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts
|
358 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits
|
359 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Candle Making Kits
|
360 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Drawing & Painting Kits
|
361 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Fabric Repair Kits
|
362 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Incense Making Kits
|
363 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Jewelry Making Kits
|
364 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Mosaic Kits
|
365 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Needlecraft Kits
|
366 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Scrapbooking & Stamping Kits
|
367 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Craft Kits > Toy Craft Kits
|
368 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials
|
369 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper
|
370 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper
|
371 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper > Cardstock
|
372 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Cardstock & Scrapbooking Paper > Scrapbooking Paper
|
373 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Construction Paper
|
374 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Craft Foil
|
375 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Drawing & Painting Paper
|
376 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Origami Paper
|
377 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Transfer Paper
|
378 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Art & Craft Paper > Vellum Paper
|
379 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures
|
380 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures > Buttons & Snaps
|
381 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures > Clasps & Hooks
|
382 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures > Eyelets & Grommets
|
383 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures > Hook and Loop Fasteners
|
384 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures > Zipper Pulls
|
385 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Fasteners & Closures > Zippers
|
386 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze
|
387 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Art & Craft Paint
|
388 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Art Fixatives
|
389 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Art Ink
|
390 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Ceramic & Pottery Glazes
|
391 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Craft Dyes
|
392 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Ink Pads
|
393 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Paint, Ink & Glaze > Paint Mediums
|
394 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Shapes & Bases
|
395 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Shapes & Bases > Craft Foam & Styrofoam
|
396 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Shapes & Bases > Craft Wood & Shapes
|
397 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Shapes & Bases > Papier Mache Shapes
|
398 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Craft Shapes & Bases > Wreath & Floral Frames
|
399 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Adhesives & Magnets
|
400 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Adhesives & Magnets > Craft & Office Glue
|
401 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Adhesives & Magnets > Craft Magnets
|
402 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Adhesives & Magnets > Decorative Tape
|
403 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Adhesives & Magnets > Floral Tape
|
404 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Adhesives & Magnets > Fusible Tape
|
405 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Fibers
|
406 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Fibers > Jewelry & Beading Cord
|
407 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Fibers > Thread & Floss
|
408 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Fibers > Unspun Fiber
|
409 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Fibers > Yarn
|
410 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Wire
|
411 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Wire > Craft Pipe Cleaners
|
412 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Wire > Floral Wire
|
413 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Crafting Wire > Jewelry & Beading Wire
|
414 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims
|
415 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Appliques & Patches
|
416 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Beads
|
417 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Bows & Yo-Yos
|
418 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Decorative Stickers
|
419 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Elastic
|
420 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Feathers
|
421 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Jewelry Findings
|
422 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Loose Stones
|
423 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Rhinestones & Flatbacks
|
424 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Ribbons & Trim
|
425 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Sequins & Glitter
|
426 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embellishments & Trims > Sew-in Labels
|
427 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Embossing Powder
|
428 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Filling & Padding Material
|
429 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Filling & Padding Material > Batting & Stuffing
|
430 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Filling & Padding Material > Filling Pellets
|
431 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Filling & Padding Material > Pillow Forms
|
432 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Leather & Vinyl
|
433 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials
|
434 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough
|
435 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough > Clay
|
436 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Clay & Modeling Dough > Modeling Dough
|
437 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Papier Mache Mixes
|
438 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Plaster Gauze
|
439 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Pottery & Sculpting Materials > Pottery Slips
|
440 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Raw Candle Wax
|
441 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles
|
442 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Crafting Canvas
|
443 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Crafting Canvas > Needlecraft Canvas
|
444 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Crafting Canvas > Painting Canvas
|
445 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Crafting Canvas > Plastic Canvas
|
446 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Fabric
|
447 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Interfacing
|
448 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Textiles > Printable Fabric
|
449 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Wick Tabs
|
450 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Materials > Wicks
|
451 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories
|
452 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Craft Knife Blades
|
453 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Craft Machine Cases & Covers
|
454 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Sewing Machine Extension Tables
|
455 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Sewing Machine Feet
|
456 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Sewing Machine Replacement Parts
|
457 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Spinning Wheel Accessories
|
458 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tool Accessories > Stamp Blocks
|
459 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools
|
460 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Blocking Mats
|
461 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Blocking Wires
|
462 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Color Mixing Tools
|
463 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Color Mixing Tools > Palette Knives
|
464 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Color Mixing Tools > Palettes
|
465 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools
|
466 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Craft & Office Scissors
|
467 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Craft Cutters & Embossers
|
468 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Craft Knives
|
469 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Craft Scoring Tools
|
470 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Embossing Heat Tools
|
471 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Embossing Pens & Styluses
|
472 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Seam Rippers
|
473 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Cutting & Embossing Tools > Thread & Yarn Cutters
|
474 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Decoration Makers
|
475 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools
|
476 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Art Brushes
|
477 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Brayer Rollers
|
478 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Decorative Stamps
|
479 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Drafting Compasses
|
480 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Screen Printing Squeegees
|
481 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Stencil Machines
|
482 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Stencils & Die Cuts
|
483 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Stitch Markers & Counters
|
484 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Textile Art Gauges & Rulers
|
485 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Craft Measuring & Marking Tools > Wood Burning Tools
|
486 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Cutting Mats
|
487 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Dress Forms
|
488 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Felting Pads & Mats
|
489 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Frames, Hoops & Stretchers
|
490 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Glue Guns
|
491 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Light Boxes
|
492 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Needles & Hooks
|
493 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Needles & Hooks > Crochet Hooks
|
494 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Needles & Hooks > Hand-Sewing Needles
|
495 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Needles & Hooks > Knitting Needles
|
496 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Needles & Hooks > Latch & Locker Hooks
|
497 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Needles & Hooks > Sewing Machine Needles
|
498 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Safety Pins
|
499 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Straight Pins
|
500 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines
|
501 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Felting Needles & Machines
|
502 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Hand Looms
|
503 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Mechanical Looms
|
504 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Sewing Machines
|
505 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Textile Craft Machines > Spinning Wheels
|
506 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms
|
507 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms > Sewing Palms
|
508 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thimbles & Sewing Palms > Thimbles
|
509 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools
|
510 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Fiber Cards & Brushes
|
511 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Hand Spindles
|
512 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Needle Threaders
|
513 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Thread & Yarn Guides
|
514 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Thread & Yarn Spools
|
515 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Thread, Yarn & Bobbin Winders
|
516 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Weaving Beaters
|
517 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Art & Crafting Tools > Thread & Yarn Tools > Weaving Shuttles
|
518 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Craft Organization
|
519 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Craft Organization > Needle, Pin & Hook Organizers
|
520 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Craft Organization > Sewing Baskets & Kits
|
521 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Craft Organization > Thread & Yarn Organizers
|
522 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Crafting Patterns & Molds
|
523 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Crafting Patterns & Molds > Beading Patterns
|
524 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Crafting Patterns & Molds > Craft Molds
|
525 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Crafting Patterns & Molds > Felting Molds
|
526 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Crafting Patterns & Molds > Needlecraft Patterns
|
527 |
-
Arts & Entertainment > Hobbies & Creative Arts > Arts & Crafts > Crafting Patterns & Molds > Sewing Patterns
|
528 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles
|
529 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Autographs
|
530 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency
|
531 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency > Collectible Banknotes
|
532 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Coins & Currency > Collectible Coins
|
533 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Trading Cards
|
534 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons
|
535 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons > Collectible Guns
|
536 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons > Collectible Knives
|
537 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons > Collectible Swords
|
538 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Collectible Weapons > Sword Stands & Displays
|
539 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Postage Stamps
|
540 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Rocks & Fossils
|
541 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Scale Model Accessories
|
542 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Scale Models
|
543 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Seal Stamps
|
544 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles
|
545 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia
|
546 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Auto Racing Autographed Paraphernalia
|
547 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Baseball & Softball Autographed Paraphernalia
|
548 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Basketball Autographed Paraphernalia
|
549 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Boxing Autographed Paraphernalia
|
550 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Football Autographed Paraphernalia
|
551 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Hockey Autographed Paraphernalia
|
552 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Soccer Autographed Paraphernalia
|
553 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Autographed Sports Paraphernalia > Tennis Autographed Sports Paraphernalia
|
554 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories
|
555 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Auto Racing Fan Accessories
|
556 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Baseball & Softball Fan Accessories
|
557 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Basketball Fan Accessories
|
558 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Football Fan Accessories
|
559 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Hockey Fan Accessories
|
560 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Soccer Fan Accessories
|
561 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Sports Collectibles > Sports Fan Accessories > Tennis Fan Accessories
|
562 |
-
Arts & Entertainment > Hobbies & Creative Arts > Collectibles > Vintage Advertisements
|
563 |
-
Arts & Entertainment > Hobbies & Creative Arts > Homebrewing & Winemaking Supplies
|
564 |
-
Arts & Entertainment > Hobbies & Creative Arts > Homebrewing & Winemaking Supplies > Beer Brewing Grains & Malts
|
565 |
-
Arts & Entertainment > Hobbies & Creative Arts > Homebrewing & Winemaking Supplies > Bottling Bottles
|
566 |
-
Arts & Entertainment > Hobbies & Creative Arts > Homebrewing & Winemaking Supplies > Homebrewing & Winemaking Kits
|
567 |
-
Arts & Entertainment > Hobbies & Creative Arts > Homebrewing & Winemaking Supplies > Wine Making
|
568 |
-
Arts & Entertainment > Hobbies & Creative Arts > Juggling
|
569 |
-
Arts & Entertainment > Hobbies & Creative Arts > Magic & Novelties
|
570 |
-
Arts & Entertainment > Hobbies & Creative Arts > Model Making
|
571 |
-
Arts & Entertainment > Hobbies & Creative Arts > Model Making > Model Rocketry
|
572 |
-
Arts & Entertainment > Hobbies & Creative Arts > Model Making > Model Train Accessories
|
573 |
-
Arts & Entertainment > Hobbies & Creative Arts > Model Making > Model Trains & Train Sets
|
574 |
-
Arts & Entertainment > Hobbies & Creative Arts > Model Making > Scale Model Kits
|
575 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories
|
576 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories
|
577 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning
|
578 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning > Brass Instrument Care Kits
|
579 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning > Brass Instrument Cleaners & Sanitizers
|
580 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning > Brass Instrument Cleaning Tools
|
581 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning > Brass Instrument Guards
|
582 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning > Brass Instrument Lubricants
|
583 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Care & Cleaning > Brass Instrument Polishing Cloths
|
584 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Cases & Gigbags
|
585 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Mouthpieces
|
586 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Mutes
|
587 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Replacement Parts
|
588 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Brass Instrument Accessories > Brass Instrument Straps & Stands
|
589 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Conductor Batons
|
590 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Electronic Tuners
|
591 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Metronomes
|
592 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Benches & Stools
|
593 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Lyres & Flip Folders
|
594 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Stand Accessories
|
595 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Stand Accessories > Music Stand Bags
|
596 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Stand Accessories > Music Stand Lights
|
597 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Stand Accessories > Sheet Music Clips
|
598 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Music Stands
|
599 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories
|
600 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories > Musical Instrument Amplifier Cabinets
|
601 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories > Musical Instrument Amplifier Covers & Cases
|
602 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories > Musical Instrument Amplifier Footswitches
|
603 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories > Musical Instrument Amplifier Knobs
|
604 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories > Musical Instrument Amplifier Stands
|
605 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifier Accessories > Musical Instrument Amplifier Tubes
|
606 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Instrument Amplifiers
|
607 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Keyboard Accessories
|
608 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Keyboard Accessories > Musical Keyboard Bags & Cases
|
609 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Keyboard Accessories > Musical Keyboard Stands
|
610 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Musical Keyboard Accessories > Sustain Pedals
|
611 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories
|
612 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Cymbal & Drum Cases
|
613 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Cymbal & Drum Mutes
|
614 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Heads
|
615 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Keys
|
616 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Kit Hardware
|
617 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Kit Hardware > Bass Drum Beaters
|
618 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Kit Hardware > Drum Kit Mounting Hardware
|
619 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Kit Hardware > Drum Pedals
|
620 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Stick & Brush Accessories
|
621 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Stick & Brush Accessories > Drum Stick & Brush Bags & Holders
|
622 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Drum Sticks & Brushes
|
623 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Electronic Drum Modules
|
624 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Hand Percussion Accessories
|
625 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Hand Percussion Accessories > Hand Percussion Bags & Cases
|
626 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Hand Percussion Accessories > Hand Percussion Stands & Mounts
|
627 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Percussion Mallets
|
628 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Percussion Accessories > Percussion Stands
|
629 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories
|
630 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories
|
631 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Acoustic Guitar Pickups
|
632 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Capos
|
633 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Electric Guitar Pickups
|
634 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Cases & Gig Bags
|
635 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Fittings & Parts
|
636 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Humidifiers
|
637 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Picks
|
638 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Slides
|
639 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Stands
|
640 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Straps
|
641 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar String Winders
|
642 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Strings
|
643 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Guitar Accessories > Guitar Tuning Pegs
|
644 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories
|
645 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Bow Cases
|
646 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Bows
|
647 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Cases
|
648 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Fittings & Parts
|
649 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Mutes
|
650 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Pickups
|
651 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Stands
|
652 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > Orchestral String Instrument Accessories > Orchestral String Instrument Strings
|
653 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > String Instrument Care & Cleaning
|
654 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > String Instrument Care & Cleaning > Bow Rosin
|
655 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > String Instrument Care & Cleaning > String Instrument Cleaning Cloths
|
656 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > String Instrument Accessories > String Instrument Care & Cleaning > String Instrument Polish
|
657 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories
|
658 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories
|
659 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Care & Cleaning
|
660 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Care & Cleaning > Bassoon Swabs
|
661 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Cases & Gigbags
|
662 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Parts
|
663 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Parts > Bassoon Bocals
|
664 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Parts > Bassoon Small Parts
|
665 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Reeds
|
666 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Stands
|
667 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Bassoon Accessories > Bassoon Straps & Supports
|
668 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories
|
669 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Care & Cleaning
|
670 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Care & Cleaning > Clarinet Care Kits
|
671 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Care & Cleaning > Clarinet Pad Savers
|
672 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Care & Cleaning > Clarinet Swabs
|
673 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Cases & Gigbags
|
674 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Ligatures & Caps
|
675 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Parts
|
676 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Parts > Clarinet Barrels
|
677 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Parts > Clarinet Bells
|
678 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Parts > Clarinet Mouthpieces
|
679 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Parts > Clarinet Small Parts
|
680 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Pegs & Stands
|
681 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Reeds
|
682 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Clarinet Accessories > Clarinet Straps & Supports
|
683 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories
|
684 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Care & Cleaning
|
685 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Care & Cleaning > Flute Care Kits
|
686 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Care & Cleaning > Flute Cleaning Rods
|
687 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Care & Cleaning > Flute Swabs
|
688 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Cases & Gigbags
|
689 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Parts
|
690 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Parts > Flute Headjoints
|
691 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Parts > Flute Small Parts
|
692 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Flute Accessories > Flute Pegs & Stands
|
693 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Harmonica Accessories
|
694 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Harmonica Accessories > Harmonica Cases
|
695 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Harmonica Accessories > Harmonica Holders
|
696 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories
|
697 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Care & Cleaning
|
698 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Care & Cleaning > Oboe Care Kits
|
699 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Care & Cleaning > Oboe Swabs
|
700 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Cases & Gigbags
|
701 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Parts
|
702 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Parts > Oboe Small Parts
|
703 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Pegs & Stands
|
704 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Reeds
|
705 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Oboe & English Horn Accessories > Oboe Straps & Supports
|
706 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Recorder Accessories
|
707 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Recorder Accessories > Recorder Care & Cleaning
|
708 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Recorder Accessories > Recorder Cases
|
709 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Recorder Accessories > Recorder Parts
|
710 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories
|
711 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Care & Cleaning
|
712 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Care & Cleaning > Saxophone Care Kits
|
713 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Care & Cleaning > Saxophone Pad Savers
|
714 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Care & Cleaning > Saxophone Swabs
|
715 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Cases & Gigbags
|
716 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Ligatures & Caps
|
717 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Parts
|
718 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Parts > Saxophone Mouthpieces
|
719 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Parts > Saxophone Necks
|
720 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Parts > Saxophone Small Parts
|
721 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Pegs & Stands
|
722 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Reeds
|
723 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Saxophone Accessories > Saxophone Straps & Supports
|
724 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Woodwind Cork Grease
|
725 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Woodwind Polishing Cloths
|
726 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Woodwind Reed Cases
|
727 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instrument & Orchestra Accessories > Woodwind Instrument Accessories > Woodwind Reed Knives
|
728 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments
|
729 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Accordions & Concertinas
|
730 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Bagpipes
|
731 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments
|
732 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments > Alto & Baritone Horns
|
733 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments > Euphoniums
|
734 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments > French Horns
|
735 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments > Trombones
|
736 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments > Trumpets & Cornets
|
737 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Brass Instruments > Tubas
|
738 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Electronic Musical Instruments
|
739 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Electronic Musical Instruments > Audio Samplers
|
740 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Electronic Musical Instruments > MIDI Controllers
|
741 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Electronic Musical Instruments > Musical Keyboards
|
742 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Electronic Musical Instruments > Sound Synthesizers
|
743 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion
|
744 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Bass Drums
|
745 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Cymbals
|
746 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Drum Kits
|
747 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Electronic Drums
|
748 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Glockenspiels & Xylophones
|
749 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Gongs
|
750 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion
|
751 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Claves & Castanets
|
752 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Finger & Hand Cymbals
|
753 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Bells & Chimes
|
754 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums
|
755 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Bongos
|
756 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Cajons
|
757 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Congas
|
758 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Frame Drums
|
759 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Goblet Drums
|
760 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Tablas
|
761 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Hand Drums > Talking Drums
|
762 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Musical Blocks
|
763 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Musical Cowbells
|
764 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Musical Scrapers & Ratchets
|
765 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Musical Shakers
|
766 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Musical Triangles
|
767 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Tambourines
|
768 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hand Percussion > Vibraslaps
|
769 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Hi-Hats
|
770 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Practice Pads
|
771 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Snare Drums
|
772 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Percussion > Tom-Toms
|
773 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Pianos
|
774 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments
|
775 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments > Cellos
|
776 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments > Guitars
|
777 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments > Harps
|
778 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments > Upright Basses
|
779 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments > Violas
|
780 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > String Instruments > Violins
|
781 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds
|
782 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Bassoons
|
783 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Clarinets
|
784 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Flutes
|
785 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Flutophones
|
786 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Harmonicas
|
787 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Jew's Harps
|
788 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Melodicas
|
789 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Musical Pipes
|
790 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Oboes & English Horns
|
791 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Ocarinas
|
792 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Recorders
|
793 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Saxophones
|
794 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Tin Whistles
|
795 |
-
Arts & Entertainment > Hobbies & Creative Arts > Musical Instruments > Woodwinds > Train Whistles
|
796 |
-
Arts & Entertainment > Party & Celebration
|
797 |
-
Arts & Entertainment > Party & Celebration > Gift Giving
|
798 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Corsage & Boutonnière Pins
|
799 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Corsages & Boutonnières
|
800 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Fresh Cut Flowers
|
801 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Cards & Certificates
|
802 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping
|
803 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping > Gift Bags
|
804 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping > Gift Boxes & Tins
|
805 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping > Gift Tags & Labels
|
806 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping > Tissue Paper
|
807 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Gift Wrapping > Wrapping Paper
|
808 |
-
Arts & Entertainment > Party & Celebration > Gift Giving > Greeting & Note Cards
|
809 |
-
Arts & Entertainment > Party & Celebration > Party Supplies
|
810 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Advice Cards
|
811 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Balloon Kits
|
812 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Balloons
|
813 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Banners
|
814 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Birthday Candles
|
815 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Chair Sashes
|
816 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Cocktail Decorations
|
817 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Confetti
|
818 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Decorative Pom-Poms
|
819 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Drinking Games
|
820 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Drinking Games > Beer Pong
|
821 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Drinking Games > Beer Pong > Beer Pong Tables
|
822 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Drinking Straws & Stirrers
|
823 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Envelope Seals
|
824 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Event Programs
|
825 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Fireworks & Firecrackers
|
826 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Inflatable Party Decorations
|
827 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Invitations
|
828 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Noisemakers & Party Blowers
|
829 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Party Favors
|
830 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Party Favors > Wedding Favors
|
831 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Party Games
|
832 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Party Hats
|
833 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Party Streamers & Curtains
|
834 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Party Supply Kits
|
835 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Piñatas
|
836 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Place Card Holders
|
837 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Place Cards
|
838 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Response Cards
|
839 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Sparklers
|
840 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Special Occasion Card Boxes & Holders
|
841 |
-
Arts & Entertainment > Party & Celebration > Party Supplies > Spray String
|
842 |
-
Arts & Entertainment > Party & Celebration > Special Effects
|
843 |
-
Arts & Entertainment > Party & Celebration > Special Effects > Disco Balls
|
844 |
-
Arts & Entertainment > Party & Celebration > Special Effects > Fog Machines
|
845 |
-
Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Controllers
|
846 |
-
Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Light Stands
|
847 |
-
Arts & Entertainment > Party & Celebration > Special Effects > Special Effects Lighting
|
848 |
-
Arts & Entertainment > Party & Celebration > Trophies & Awards
|
849 |
-
Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Certificates
|
850 |
-
Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Pins & Medals
|
851 |
-
Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Plaques
|
852 |
-
Arts & Entertainment > Party & Celebration > Trophies & Awards > Award Ribbons
|
853 |
-
Arts & Entertainment > Party & Celebration > Trophies & Awards > Trophies
|
854 |
-
Baby & Toddler
|
855 |
-
Baby & Toddler > Baby Bathing
|
856 |
-
Baby & Toddler > Baby Bathing > Baby Bathtubs & Bath Seats
|
857 |
-
Baby & Toddler > Baby Bathing > Shower Visors
|
858 |
-
Baby & Toddler > Baby Gift Sets
|
859 |
-
Baby & Toddler > Baby Health
|
860 |
-
Baby & Toddler > Baby Health > Baby Health & Grooming Kits
|
861 |
-
Baby & Toddler > Baby Health > Nasal Aspirators
|
862 |
-
Baby & Toddler > Baby Health > Pacifier Clips & Holders
|
863 |
-
Baby & Toddler > Baby Health > Pacifier Wipes
|
864 |
-
Baby & Toddler > Baby Health > Pacifiers & Teethers
|
865 |
-
Baby & Toddler > Baby Safety
|
866 |
-
Baby & Toddler > Baby Safety > Baby & Pet Gate Accessories
|
867 |
-
Baby & Toddler > Baby Safety > Baby & Pet Gates
|
868 |
-
Baby & Toddler > Baby Safety > Baby Monitors
|
869 |
-
Baby & Toddler > Baby Safety > Baby Safety Harnesses & Leashes
|
870 |
-
Baby & Toddler > Baby Safety > Baby Safety Locks & Guards
|
871 |
-
Baby & Toddler > Baby Safety > Baby Safety Rails
|
872 |
-
Baby & Toddler > Baby Toys & Activity Equipment
|
873 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Alphabet Toys
|
874 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Activity Toys
|
875 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Bouncers & Rockers
|
876 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Jumpers & Swings
|
877 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Mobile Accessories
|
878 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Mobiles
|
879 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Soothers
|
880 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Baby Walkers & Entertainers
|
881 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms
|
882 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms > Play Gyms
|
883 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Play Mats & Gyms > Play Mats
|
884 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Play Yards
|
885 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Push & Pull Toys
|
886 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Rattles
|
887 |
-
Baby & Toddler > Baby Toys & Activity Equipment > Sorting & Stacking Toys
|
888 |
-
Baby & Toddler > Baby Transport
|
889 |
-
Baby & Toddler > Baby Transport > Baby & Toddler Car Seats
|
890 |
-
Baby & Toddler > Baby Transport > Baby Carriers
|
891 |
-
Baby & Toddler > Baby Transport > Baby Strollers
|
892 |
-
Baby & Toddler > Baby Transport Accessories
|
893 |
-
Baby & Toddler > Baby Transport Accessories > Baby & Toddler Car Seat Accessories
|
894 |
-
Baby & Toddler > Baby Transport Accessories > Baby Carrier Accessories
|
895 |
-
Baby & Toddler > Baby Transport Accessories > Baby Stroller Accessories
|
896 |
-
Baby & Toddler > Baby Transport Accessories > Baby Transport Liners & Sacks
|
897 |
-
Baby & Toddler > Baby Transport Accessories > Shopping Cart & High Chair Covers
|
898 |
-
Baby & Toddler > Diapering
|
899 |
-
Baby & Toddler > Diapering > Baby Wipe Dispensers & Warmers
|
900 |
-
Baby & Toddler > Diapering > Baby Wipes
|
901 |
-
Baby & Toddler > Diapering > Changing Mat & Tray Covers
|
902 |
-
Baby & Toddler > Diapering > Changing Mats & Trays
|
903 |
-
Baby & Toddler > Diapering > Diaper Kits
|
904 |
-
Baby & Toddler > Diapering > Diaper Liners
|
905 |
-
Baby & Toddler > Diapering > Diaper Organizers
|
906 |
-
Baby & Toddler > Diapering > Diaper Pail Accessories
|
907 |
-
Baby & Toddler > Diapering > Diaper Pails
|
908 |
-
Baby & Toddler > Diapering > Diaper Rash Treatments
|
909 |
-
Baby & Toddler > Diapering > Diaper Wet Bags
|
910 |
-
Baby & Toddler > Diapering > Diapers
|
911 |
-
Baby & Toddler > Nursing & Feeding
|
912 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food
|
913 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Cereal
|
914 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Drinks
|
915 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Food
|
916 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Formula
|
917 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Baby Snacks
|
918 |
-
Baby & Toddler > Nursing & Feeding > Baby & Toddler Food > Toddler Nutrition Drinks & Shakes
|
919 |
-
Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners
|
920 |
-
Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners > Baby Bottle Liners
|
921 |
-
Baby & Toddler > Nursing & Feeding > Baby Bottle Nipples & Liners > Baby Bottle Nipples
|
922 |
-
Baby & Toddler > Nursing & Feeding > Baby Bottles
|
923 |
-
Baby & Toddler > Nursing & Feeding > Baby Care Timers
|
924 |
-
Baby & Toddler > Nursing & Feeding > Bibs
|
925 |
-
Baby & Toddler > Nursing & Feeding > Bottle Warmers & Sterilizers
|
926 |
-
Baby & Toddler > Nursing & Feeding > Breast Milk Storage Containers
|
927 |
-
Baby & Toddler > Nursing & Feeding > Breast Pump Accessories
|
928 |
-
Baby & Toddler > Nursing & Feeding > Breast Pumps
|
929 |
-
Baby & Toddler > Nursing & Feeding > Burp Cloths
|
930 |
-
Baby & Toddler > Nursing & Feeding > Nursing Covers
|
931 |
-
Baby & Toddler > Nursing & Feeding > Nursing Pads & Shields
|
932 |
-
Baby & Toddler > Nursing & Feeding > Nursing Pillow Covers
|
933 |
-
Baby & Toddler > Nursing & Feeding > Nursing Pillows
|
934 |
-
Baby & Toddler > Nursing & Feeding > Sippy Cups
|
935 |
-
Baby & Toddler > Potty Training
|
936 |
-
Baby & Toddler > Potty Training > Potty Seats
|
937 |
-
Baby & Toddler > Potty Training > Potty Training Kits
|
938 |
-
Baby & Toddler > Swaddling & Receiving Blankets
|
939 |
-
Baby & Toddler > Swaddling & Receiving Blankets > Receiving Blankets
|
940 |
-
Baby & Toddler > Swaddling & Receiving Blankets > Swaddling Blankets
|
941 |
-
Business & Industrial
|
942 |
-
Business & Industrial > Advertising & Marketing
|
943 |
-
Business & Industrial > Advertising & Marketing > Brochures
|
944 |
-
Business & Industrial > Advertising & Marketing > Trade Show Counters
|
945 |
-
Business & Industrial > Advertising & Marketing > Trade Show Displays
|
946 |
-
Business & Industrial > Agriculture
|
947 |
-
Business & Industrial > Agriculture > Animal Husbandry
|
948 |
-
Business & Industrial > Agriculture > Animal Husbandry > Egg Incubators
|
949 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed
|
950 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Cattle Feed
|
951 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Chicken Feed
|
952 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Goat & Sheep Feed
|
953 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Mixed Herd Feed
|
954 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feed > Pig Feed
|
955 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Feeders & Waterers
|
956 |
-
Business & Industrial > Agriculture > Animal Husbandry > Livestock Halters
|
957 |
-
Business & Industrial > Automation Control Components
|
958 |
-
Business & Industrial > Automation Control Components > Programmable Logic Controllers
|
959 |
-
Business & Industrial > Automation Control Components > Variable Frequency & Adjustable Speed Drives
|
960 |
-
Business & Industrial > Construction
|
961 |
-
Business & Industrial > Construction > Surveying
|
962 |
-
Business & Industrial > Construction > Traffic Cones & Barrels
|
963 |
-
Business & Industrial > Dentistry
|
964 |
-
Business & Industrial > Dentistry > Dental Cement
|
965 |
-
Business & Industrial > Dentistry > Dental Tools
|
966 |
-
Business & Industrial > Dentistry > Dental Tools > Dappen Dishes
|
967 |
-
Business & Industrial > Dentistry > Dental Tools > Dental Mirrors
|
968 |
-
Business & Industrial > Dentistry > Dental Tools > Dental Tool Sets
|
969 |
-
Business & Industrial > Dentistry > Dental Tools > Prophy Cups
|
970 |
-
Business & Industrial > Dentistry > Dental Tools > Prophy Heads
|
971 |
-
Business & Industrial > Dentistry > Prophy Paste
|
972 |
-
Business & Industrial > Film & Television
|
973 |
-
Business & Industrial > Finance & Insurance
|
974 |
-
Business & Industrial > Finance & Insurance > Bullion
|
975 |
-
Business & Industrial > Food Service
|
976 |
-
Business & Industrial > Food Service > Bakery Boxes
|
977 |
-
Business & Industrial > Food Service > Bus Tubs
|
978 |
-
Business & Industrial > Food Service > Check Presenters
|
979 |
-
Business & Industrial > Food Service > Concession Food Containers
|
980 |
-
Business & Industrial > Food Service > Disposable Lids
|
981 |
-
Business & Industrial > Food Service > Disposable Serveware
|
982 |
-
Business & Industrial > Food Service > Disposable Serveware > Disposable Serving Trays
|
983 |
-
Business & Industrial > Food Service > Disposable Tableware
|
984 |
-
Business & Industrial > Food Service > Disposable Tableware > Disposable Bowls
|
985 |
-
Business & Industrial > Food Service > Disposable Tableware > Disposable Cups
|
986 |
-
Business & Industrial > Food Service > Disposable Tableware > Disposable Cutlery
|
987 |
-
Business & Industrial > Food Service > Disposable Tableware > Disposable Plates
|
988 |
-
Business & Industrial > Food Service > Food Service Baskets
|
989 |
-
Business & Industrial > Food Service > Food Service Carts
|
990 |
-
Business & Industrial > Food Service > Food Washers & Dryers
|
991 |
-
Business & Industrial > Food Service > Hot Dog Rollers
|
992 |
-
Business & Industrial > Food Service > Ice Bins
|
993 |
-
Business & Industrial > Food Service > Plate & Dish Warmers
|
994 |
-
Business & Industrial > Food Service > Sneeze Guards
|
995 |
-
Business & Industrial > Food Service > Take-Out Containers
|
996 |
-
Business & Industrial > Food Service > Tilt Skillets
|
997 |
-
Business & Industrial > Food Service > Vending Machines
|
998 |
-
Business & Industrial > Forestry & Logging
|
999 |
-
Business & Industrial > Hairdressing & Cosmetology
|
1000 |
-
Business & Industrial > Hairdressing & Cosmetology > Hairdressing Capes & Neck Covers
|
1001 |
-
Business & Industrial > Hairdressing & Cosmetology > Pedicure Chairs
|
1002 |
-
Business & Industrial > Hairdressing & Cosmetology > Salon Chairs
|
1003 |
-
Business & Industrial > Heavy Machinery
|
1004 |
-
Business & Industrial > Heavy Machinery > Chippers
|
1005 |
-
Business & Industrial > Hotel & Hospitality
|
1006 |
-
Business & Industrial > Industrial Storage
|
1007 |
-
Business & Industrial > Industrial Storage > Industrial Cabinets
|
1008 |
-
Business & Industrial > Industrial Storage > Industrial Shelving
|
1009 |
-
Business & Industrial > Industrial Storage > Shipping Containers
|
1010 |
-
Business & Industrial > Industrial Storage > Wire Partitions, Enclosures & Doors
|
1011 |
-
Business & Industrial > Industrial Storage Accessories
|
1012 |
-
Business & Industrial > Janitorial Carts & Caddies
|
1013 |
-
Business & Industrial > Law Enforcement
|
1014 |
-
Business & Industrial > Law Enforcement > Cuffs
|
1015 |
-
Business & Industrial > Law Enforcement > Metal Detectors
|
1016 |
-
Business & Industrial > Manufacturing
|
1017 |
-
Business & Industrial > Material Handling
|
1018 |
-
Business & Industrial > Material Handling > Conveyors
|
1019 |
-
Business & Industrial > Material Handling > Lifts & Hoists
|
1020 |
-
Business & Industrial > Material Handling > Lifts & Hoists > Hoists, Cranes & Trolleys
|
1021 |
-
Business & Industrial > Material Handling > Lifts & Hoists > Jacks & Lift Trucks
|
1022 |
-
Business & Industrial > Material Handling > Lifts & Hoists > Personnel Lifts
|
1023 |
-
Business & Industrial > Material Handling > Lifts & Hoists > Pulleys, Blocks & Sheaves
|
1024 |
-
Business & Industrial > Material Handling > Lifts & Hoists > Winches
|
1025 |
-
Business & Industrial > Material Handling > Pallets & Loading Platforms
|
1026 |
-
Business & Industrial > Medical
|
1027 |
-
Business & Industrial > Medical > Hospital Curtains
|
1028 |
-
Business & Industrial > Medical > Hospital Gowns
|
1029 |
-
Business & Industrial > Medical > Medical Bedding
|
1030 |
-
Business & Industrial > Medical > Medical Equipment
|
1031 |
-
Business & Industrial > Medical > Medical Equipment > Automated External Defibrillators
|
1032 |
-
Business & Industrial > Medical > Medical Equipment > Gait Belts
|
1033 |
-
Business & Industrial > Medical > Medical Equipment > Medical Reflex Hammers & Tuning Forks
|
1034 |
-
Business & Industrial > Medical > Medical Equipment > Medical Stretchers & Gurneys
|
1035 |
-
Business & Industrial > Medical > Medical Equipment > Otoscopes & Ophthalmoscopes
|
1036 |
-
Business & Industrial > Medical > Medical Equipment > Patient Lifts
|
1037 |
-
Business & Industrial > Medical > Medical Equipment > Stethoscopes
|
1038 |
-
Business & Industrial > Medical > Medical Equipment > Vital Signs Monitor Accessories
|
1039 |
-
Business & Industrial > Medical > Medical Equipment > Vital Signs Monitors
|
1040 |
-
Business & Industrial > Medical > Medical Furniture
|
1041 |
-
Business & Industrial > Medical > Medical Furniture > Chiropractic Tables
|
1042 |
-
Business & Industrial > Medical > Medical Furniture > Examination Chairs & Tables
|
1043 |
-
Business & Industrial > Medical > Medical Furniture > Homecare & Hospital Beds
|
1044 |
-
Business & Industrial > Medical > Medical Furniture > Medical Cabinets
|
1045 |
-
Business & Industrial > Medical > Medical Furniture > Medical Carts
|
1046 |
-
Business & Industrial > Medical > Medical Furniture > Medical Carts > Crash Carts
|
1047 |
-
Business & Industrial > Medical > Medical Furniture > Medical Carts > IV Poles & Carts
|
1048 |
-
Business & Industrial > Medical > Medical Furniture > Surgical Tables
|
1049 |
-
Business & Industrial > Medical > Medical Instruments
|
1050 |
-
Business & Industrial > Medical > Medical Instruments > Medical Forceps
|
1051 |
-
Business & Industrial > Medical > Medical Instruments > Scalpel Blades
|
1052 |
-
Business & Industrial > Medical > Medical Instruments > Scalpels
|
1053 |
-
Business & Industrial > Medical > Medical Instruments > Surgical Needles & Sutures
|
1054 |
-
Business & Industrial > Medical > Medical Supplies
|
1055 |
-
Business & Industrial > Medical > Medical Supplies > Disposable Gloves
|
1056 |
-
Business & Industrial > Medical > Medical Supplies > Finger Cots
|
1057 |
-
Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes
|
1058 |
-
Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes > Medical Needle & Syringe Sets
|
1059 |
-
Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes > Medical Needles
|
1060 |
-
Business & Industrial > Medical > Medical Supplies > Medical Needles & Syringes > Medical Syringes
|
1061 |
-
Business & Industrial > Medical > Medical Supplies > Ostomy Supplies
|
1062 |
-
Business & Industrial > Medical > Medical Supplies > Tongue Depressors
|
1063 |
-
Business & Industrial > Medical > Medical Teaching Equipment
|
1064 |
-
Business & Industrial > Medical > Medical Teaching Equipment > Medical & Emergency Response Training Mannequins
|
1065 |
-
Business & Industrial > Medical > Scrub Caps
|
1066 |
-
Business & Industrial > Medical > Scrubs
|
1067 |
-
Business & Industrial > Medical > Surgical Gowns
|
1068 |
-
Business & Industrial > Mining & Quarrying
|
1069 |
-
Business & Industrial > Piercing & Tattooing
|
1070 |
-
Business & Industrial > Piercing & Tattooing > Piercing Supplies
|
1071 |
-
Business & Industrial > Piercing & Tattooing > Piercing Supplies > Piercing Needles
|
1072 |
-
Business & Industrial > Piercing & Tattooing > Tattooing Supplies
|
1073 |
-
Business & Industrial > Piercing & Tattooing > Tattooing Supplies > Tattoo Cover-Ups
|
1074 |
-
Business & Industrial > Piercing & Tattooing > Tattooing Supplies > Tattooing Inks
|
1075 |
-
Business & Industrial > Piercing & Tattooing > Tattooing Supplies > Tattooing Machines
|
1076 |
-
Business & Industrial > Piercing & Tattooing > Tattooing Supplies > Tattooing Needles
|
1077 |
-
Business & Industrial > Retail
|
1078 |
-
Business & Industrial > Retail > Clothing Display Racks
|
1079 |
-
Business & Industrial > Retail > Display Mannequins
|
1080 |
-
Business & Industrial > Retail > Mannequin Parts
|
1081 |
-
Business & Industrial > Retail > Money Handling
|
1082 |
-
Business & Industrial > Retail > Money Handling > Banknote Verifiers
|
1083 |
-
Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories
|
1084 |
-
Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Cash Drawers & Trays
|
1085 |
-
Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Credit Card Terminals
|
1086 |
-
Business & Industrial > Retail > Money Handling > Cash Register & POS Terminal Accessories > Signature Capture Pads
|
1087 |
-
Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals
|
1088 |
-
Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals > Cash Registers
|
1089 |
-
Business & Industrial > Retail > Money Handling > Cash Registers & POS Terminals > POS Terminals
|
1090 |
-
Business & Industrial > Retail > Money Handling > Coin & Bill Counters
|
1091 |
-
Business & Industrial > Retail > Money Handling > Money Changers
|
1092 |
-
Business & Industrial > Retail > Money Handling > Money Deposit Bags
|
1093 |
-
Business & Industrial > Retail > Money Handling > Paper Coin Wrappers & Bill Straps
|
1094 |
-
Business & Industrial > Retail > Paper & Plastic Shopping Bags
|
1095 |
-
Business & Industrial > Retail > Pricing Guns
|
1096 |
-
Business & Industrial > Retail > Retail Display Cases
|
1097 |
-
Business & Industrial > Retail > Retail Display Props & Models
|
1098 |
-
Business & Industrial > Science & Laboratory
|
1099 |
-
Business & Industrial > Science & Laboratory > Biochemicals
|
1100 |
-
Business & Industrial > Science & Laboratory > Dissection Kits
|
1101 |
-
Business & Industrial > Science & Laboratory > Laboratory Chemicals
|
1102 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment
|
1103 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Autoclaves
|
1104 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Centrifuges
|
1105 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Dry Ice Makers
|
1106 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Freeze-Drying Machines
|
1107 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Laboratory Blenders
|
1108 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Laboratory Freezers
|
1109 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Laboratory Funnels
|
1110 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Laboratory Hot Plates
|
1111 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Laboratory Ovens
|
1112 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscope Accessories
|
1113 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscope Accessories > Microscope Cameras
|
1114 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscope Accessories > Microscope Eyepieces & Adapters
|
1115 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscope Accessories > Microscope Objective Lenses
|
1116 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscope Accessories > Microscope Replacement Bulbs
|
1117 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscope Accessories > Microscope Slides
|
1118 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microscopes
|
1119 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Microtomes
|
1120 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Spectrometer Accessories
|
1121 |
-
Business & Industrial > Science & Laboratory > Laboratory Equipment > Spectrometers
|
1122 |
-
Business & Industrial > Science & Laboratory > Laboratory Specimens
|
1123 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies
|
1124 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Beakers
|
1125 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Graduated Cylinders
|
1126 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Laboratory Flasks
|
1127 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Petri Dishes
|
1128 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Pipettes
|
1129 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Test Tube Racks
|
1130 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Test Tubes
|
1131 |
-
Business & Industrial > Science & Laboratory > Laboratory Supplies > Wash Bottles
|
1132 |
-
Business & Industrial > Signage
|
1133 |
-
Business & Industrial > Signage > Business Hour Signs
|
1134 |
-
Business & Industrial > Signage > Digital Signs
|
1135 |
-
Business & Industrial > Signage > Electric Signs
|
1136 |
-
Business & Industrial > Signage > Electric Signs > LED Signs
|
1137 |
-
Business & Industrial > Signage > Electric Signs > Neon Signs
|
1138 |
-
Business & Industrial > Signage > Emergency & Exit Signs
|
1139 |
-
Business & Industrial > Signage > Facility Identification Signs
|
1140 |
-
Business & Industrial > Signage > Open & Closed Signs
|
1141 |
-
Business & Industrial > Signage > Parking Signs & Permits
|
1142 |
-
Business & Industrial > Signage > Policy Signs
|
1143 |
-
Business & Industrial > Signage > Retail & Sale Signs
|
1144 |
-
Business & Industrial > Signage > Road & Traffic Signs
|
1145 |
-
Business & Industrial > Signage > Safety & Warning Signs
|
1146 |
-
Business & Industrial > Signage > Security Signs
|
1147 |
-
Business & Industrial > Signage > Sidewalk & Yard Signs
|
1148 |
-
Business & Industrial > Work Safety Protective Gear
|
1149 |
-
Business & Industrial > Work Safety Protective Gear > Bullet Proof Vests
|
1150 |
-
Business & Industrial > Work Safety Protective Gear > Gas Mask & Respirator Accessories
|
1151 |
-
Business & Industrial > Work Safety Protective Gear > Hardhats
|
1152 |
-
Business & Industrial > Work Safety Protective Gear > Hazardous Material Suits
|
1153 |
-
Business & Industrial > Work Safety Protective Gear > Protective Aprons
|
1154 |
-
Business & Industrial > Work Safety Protective Gear > Protective Eyewear
|
1155 |
-
Business & Industrial > Work Safety Protective Gear > Protective Masks
|
1156 |
-
Business & Industrial > Work Safety Protective Gear > Protective Masks > Dust Masks
|
1157 |
-
Business & Industrial > Work Safety Protective Gear > Protective Masks > Fireman's Masks
|
1158 |
-
Business & Industrial > Work Safety Protective Gear > Protective Masks > Gas Masks & Respirators
|
1159 |
-
Business & Industrial > Work Safety Protective Gear > Protective Masks > Medical Masks
|
1160 |
-
Business & Industrial > Work Safety Protective Gear > Safety Gloves
|
1161 |
-
Business & Industrial > Work Safety Protective Gear > Safety Knee Pads
|
1162 |
-
Business & Industrial > Work Safety Protective Gear > Welding Helmets
|
1163 |
-
Business & Industrial > Work Safety Protective Gear > Work Safety Harnesses
|
1164 |
-
Business & Industrial > Work Safety Protective Gear > Work Safety Tethers
|
1165 |
-
Cameras & Optics
|
1166 |
-
Cameras & Optics > Camera & Optic Accessories
|
1167 |
-
Cameras & Optics > Camera & Optic Accessories > Camera & Optic Replacement Cables
|
1168 |
-
Cameras & Optics > Camera & Optic Accessories > Camera & Video Camera Lenses
|
1169 |
-
Cameras & Optics > Camera & Optic Accessories > Camera & Video Camera Lenses > Camera Lenses
|
1170 |
-
Cameras & Optics > Camera & Optic Accessories > Camera & Video Camera Lenses > Surveillance Camera Lenses
|
1171 |
-
Cameras & Optics > Camera & Optic Accessories > Camera & Video Camera Lenses > Video Camera Lenses
|
1172 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories
|
1173 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories > Lens & Filter Adapter Rings
|
1174 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories > Lens Bags
|
1175 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories > Lens Caps
|
1176 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories > Lens Converters
|
1177 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories > Lens Filters
|
1178 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Lens Accessories > Lens Hoods
|
1179 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories
|
1180 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Accessory Sets
|
1181 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Bags & Cases
|
1182 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Body Replacement Panels & Doors
|
1183 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Digital Backs
|
1184 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Film
|
1185 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Flash Accessories
|
1186 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Flashes
|
1187 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Focus Devices
|
1188 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Gears
|
1189 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Grips
|
1190 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Image Sensors
|
1191 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Lens Zoom Units
|
1192 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Remote Controls
|
1193 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Replacement Buttons & Knobs
|
1194 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Replacement Screens & Displays
|
1195 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Silencers & Sound Blimps
|
1196 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Stabilizers & Supports
|
1197 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Straps
|
1198 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Camera Sun Hoods & Viewfinder Attachments
|
1199 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Flash Brackets
|
1200 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > On-Camera Monitors
|
1201 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Surveillance Camera Accessories
|
1202 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Underwater Camera Housing Accessories
|
1203 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Underwater Camera Housings
|
1204 |
-
Cameras & Optics > Camera & Optic Accessories > Camera Parts & Accessories > Video Camera Lights
|
1205 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories
|
1206 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Binocular & Monocular Accessories
|
1207 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Optics Bags & Cases
|
1208 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Rangefinder Accessories
|
1209 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Spotting Scope Accessories
|
1210 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Telescope Accessories
|
1211 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Thermal Optic Accessories
|
1212 |
-
Cameras & Optics > Camera & Optic Accessories > Optic Accessories > Weapon Scope & Sight Accessories
|
1213 |
-
Cameras & Optics > Camera & Optic Accessories > Tripod & Monopod Accessories
|
1214 |
-
Cameras & Optics > Camera & Optic Accessories > Tripod & Monopod Accessories > Tripod & Monopod Cases
|
1215 |
-
Cameras & Optics > Camera & Optic Accessories > Tripod & Monopod Accessories > Tripod & Monopod Heads
|
1216 |
-
Cameras & Optics > Camera & Optic Accessories > Tripod & Monopod Accessories > Tripod Collars & Mounts
|
1217 |
-
Cameras & Optics > Camera & Optic Accessories > Tripod & Monopod Accessories > Tripod Handles
|
1218 |
-
Cameras & Optics > Camera & Optic Accessories > Tripod & Monopod Accessories > Tripod Spreaders
|
1219 |
-
Cameras & Optics > Camera & Optic Accessories > Tripods & Monopods
|
1220 |
-
Cameras & Optics > Cameras
|
1221 |
-
Cameras & Optics > Cameras > Borescopes
|
1222 |
-
Cameras & Optics > Cameras > Digital Cameras
|
1223 |
-
Cameras & Optics > Cameras > Disposable Cameras
|
1224 |
-
Cameras & Optics > Cameras > Film Cameras
|
1225 |
-
Cameras & Optics > Cameras > Surveillance Cameras
|
1226 |
-
Cameras & Optics > Cameras > Trail Cameras
|
1227 |
-
Cameras & Optics > Cameras > Video Cameras
|
1228 |
-
Cameras & Optics > Cameras > Webcams
|
1229 |
-
Cameras & Optics > Optics
|
1230 |
-
Cameras & Optics > Optics > Binoculars
|
1231 |
-
Cameras & Optics > Optics > Monoculars
|
1232 |
-
Cameras & Optics > Optics > Rangefinders
|
1233 |
-
Cameras & Optics > Optics > Scopes
|
1234 |
-
Cameras & Optics > Optics > Scopes > Spotting Scopes
|
1235 |
-
Cameras & Optics > Optics > Scopes > Telescopes
|
1236 |
-
Cameras & Optics > Optics > Scopes > Weapon Scopes & Sights
|
1237 |
-
Cameras & Optics > Photography
|
1238 |
-
Cameras & Optics > Photography > Darkroom
|
1239 |
-
Cameras & Optics > Photography > Darkroom > Developing & Processing Equipment
|
1240 |
-
Cameras & Optics > Photography > Darkroom > Developing & Processing Equipment > Copystands
|
1241 |
-
Cameras & Optics > Photography > Darkroom > Developing & Processing Equipment > Darkroom Sinks
|
1242 |
-
Cameras & Optics > Photography > Darkroom > Developing & Processing Equipment > Developing Tanks & Reels
|
1243 |
-
Cameras & Optics > Photography > Darkroom > Developing & Processing Equipment > Print Trays, Washers & Dryers
|
1244 |
-
Cameras & Optics > Photography > Darkroom > Developing & Processing Equipment > Retouching Equipment & Supplies
|
1245 |
-
Cameras & Optics > Photography > Darkroom > Enlarging Equipment
|
1246 |
-
Cameras & Optics > Photography > Darkroom > Enlarging Equipment > Darkroom Easels
|
1247 |
-
Cameras & Optics > Photography > Darkroom > Enlarging Equipment > Darkroom Timers
|
1248 |
-
Cameras & Optics > Photography > Darkroom > Enlarging Equipment > Focusing Aids
|
1249 |
-
Cameras & Optics > Photography > Darkroom > Enlarging Equipment > Photographic Analyzers
|
1250 |
-
Cameras & Optics > Photography > Darkroom > Enlarging Equipment > Photographic Enlargers
|
1251 |
-
Cameras & Optics > Photography > Darkroom > Photographic Chemicals
|
1252 |
-
Cameras & Optics > Photography > Darkroom > Photographic Paper
|
1253 |
-
Cameras & Optics > Photography > Darkroom > Safelights
|
1254 |
-
Cameras & Optics > Photography > Lighting & Studio
|
1255 |
-
Cameras & Optics > Photography > Lighting & Studio > Light Meter Accessories
|
1256 |
-
Cameras & Optics > Photography > Lighting & Studio > Light Meters
|
1257 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Backgrounds
|
1258 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Light & Flash Accessories
|
1259 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Lighting Controls
|
1260 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Lighting Controls > Flash Diffusers
|
1261 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Lighting Controls > Flash Reflectors
|
1262 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Lighting Controls > Lighting Filters & Gobos
|
1263 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Lighting Controls > Softboxes
|
1264 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Lights & Flashes
|
1265 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Stand & Mount Accessories
|
1266 |
-
Cameras & Optics > Photography > Lighting & Studio > Studio Stands & Mounts
|
1267 |
-
Cameras & Optics > Photography > Photo Mounting Supplies
|
1268 |
-
Cameras & Optics > Photography > Photo Negative & Slide Storage
|
1269 |
-
Electronics
|
1270 |
-
Electronics > Arcade Equipment
|
1271 |
-
Electronics > Arcade Equipment > Basketball Arcade Games
|
1272 |
-
Electronics > Arcade Equipment > Pinball Machine Accessories
|
1273 |
-
Electronics > Arcade Equipment > Pinball Machines
|
1274 |
-
Electronics > Arcade Equipment > Skee-Ball Machines
|
1275 |
-
Electronics > Arcade Equipment > Video Game Arcade Cabinet Accessories
|
1276 |
-
Electronics > Arcade Equipment > Video Game Arcade Cabinets
|
1277 |
-
Electronics > Audio
|
1278 |
-
Electronics > Audio > Audio Accessories
|
1279 |
-
Electronics > Audio > Audio Accessories > Audio & Video Receiver Accessories
|
1280 |
-
Electronics > Audio > Audio Accessories > Headphone & Headset Accessories
|
1281 |
-
Electronics > Audio > Audio Accessories > Headphone & Headset Accessories > Headphone Cushions & Tips
|
1282 |
-
Electronics > Audio > Audio Accessories > Karaoke System Accessories
|
1283 |
-
Electronics > Audio > Audio Accessories > Karaoke System Accessories > Karaoke Chips
|
1284 |
-
Electronics > Audio > Audio Accessories > MP3 Player Accessories
|
1285 |
-
Electronics > Audio > Audio Accessories > MP3 Player Accessories > MP3 Player & Mobile Phone Accessory Sets
|
1286 |
-
Electronics > Audio > Audio Accessories > MP3 Player Accessories > MP3 Player Cases
|
1287 |
-
Electronics > Audio > Audio Accessories > Microphone Accessories
|
1288 |
-
Electronics > Audio > Audio Accessories > Microphone Stands
|
1289 |
-
Electronics > Audio > Audio Accessories > Satellite Radio Accessories
|
1290 |
-
Electronics > Audio > Audio Accessories > Speaker Accessories
|
1291 |
-
Electronics > Audio > Audio Accessories > Speaker Accessories > Speaker Bags, Covers & Cases
|
1292 |
-
Electronics > Audio > Audio Accessories > Speaker Accessories > Speaker Components & Kits
|
1293 |
-
Electronics > Audio > Audio Accessories > Speaker Accessories > Speaker Stand Bags
|
1294 |
-
Electronics > Audio > Audio Accessories > Speaker Accessories > Speaker Stands & Mounts
|
1295 |
-
Electronics > Audio > Audio Accessories > Speaker Accessories > Tactile Transducers
|
1296 |
-
Electronics > Audio > Audio Accessories > Turntable Accessories
|
1297 |
-
Electronics > Audio > Audio Components
|
1298 |
-
Electronics > Audio > Audio Components > Audio & Video Receivers
|
1299 |
-
Electronics > Audio > Audio Components > Audio Amplifiers
|
1300 |
-
Electronics > Audio > Audio Components > Audio Amplifiers > Headphone Amplifiers
|
1301 |
-
Electronics > Audio > Audio Components > Audio Amplifiers > Power Amplifiers
|
1302 |
-
Electronics > Audio > Audio Components > Audio Mixers
|
1303 |
-
Electronics > Audio > Audio Components > Audio Transmitters
|
1304 |
-
Electronics > Audio > Audio Components > Audio Transmitters > Bluetooth Transmitters
|
1305 |
-
Electronics > Audio > Audio Components > Audio Transmitters > FM Transmitters
|
1306 |
-
Electronics > Audio > Audio Components > Channel Strips
|
1307 |
-
Electronics > Audio > Audio Components > Direct Boxes
|
1308 |
-
Electronics > Audio > Audio Components > Headphones & Headsets
|
1309 |
-
Electronics > Audio > Audio Components > Headphones & Headsets > Headphones
|
1310 |
-
Electronics > Audio > Audio Components > Headphones & Headsets > Headsets
|
1311 |
-
Electronics > Audio > Audio Components > Microphones
|
1312 |
-
Electronics > Audio > Audio Components > Signal Processors
|
1313 |
-
Electronics > Audio > Audio Components > Signal Processors > Crossovers
|
1314 |
-
Electronics > Audio > Audio Components > Signal Processors > Effects Processors
|
1315 |
-
Electronics > Audio > Audio Components > Signal Processors > Equalizers
|
1316 |
-
Electronics > Audio > Audio Components > Signal Processors > Loudspeaker Management Systems
|
1317 |
-
Electronics > Audio > Audio Components > Signal Processors > Microphone Preamps
|
1318 |
-
Electronics > Audio > Audio Components > Signal Processors > Noise Gates & Compressors
|
1319 |
-
Electronics > Audio > Audio Components > Signal Processors > Phono Preamps
|
1320 |
-
Electronics > Audio > Audio Components > Speakers
|
1321 |
-
Electronics > Audio > Audio Components > Studio Recording Bundles
|
1322 |
-
Electronics > Audio > Audio Players & Recorders
|
1323 |
-
Electronics > Audio > Audio Players & Recorders > Boomboxes
|
1324 |
-
Electronics > Audio > Audio Players & Recorders > CD Players & Recorders
|
1325 |
-
Electronics > Audio > Audio Players & Recorders > Cassette Players & Recorders
|
1326 |
-
Electronics > Audio > Audio Players & Recorders > Home Theater Systems
|
1327 |
-
Electronics > Audio > Audio Players & Recorders > Jukeboxes
|
1328 |
-
Electronics > Audio > Audio Players & Recorders > Karaoke Systems
|
1329 |
-
Electronics > Audio > Audio Players & Recorders > MP3 Players
|
1330 |
-
Electronics > Audio > Audio Players & Recorders > MiniDisc Players & Recorders
|
1331 |
-
Electronics > Audio > Audio Players & Recorders > Multitrack Recorders
|
1332 |
-
Electronics > Audio > Audio Players & Recorders > Radios
|
1333 |
-
Electronics > Audio > Audio Players & Recorders > Reel-to-Reel Tape Players & Recorders
|
1334 |
-
Electronics > Audio > Audio Players & Recorders > Stereo Systems
|
1335 |
-
Electronics > Audio > Audio Players & Recorders > Turntables & Record Players
|
1336 |
-
Electronics > Audio > Audio Players & Recorders > Voice Recorders
|
1337 |
-
Electronics > Audio > Bullhorns
|
1338 |
-
Electronics > Audio > DJ & Specialty Audio
|
1339 |
-
Electronics > Audio > DJ & Specialty Audio > DJ CD Players
|
1340 |
-
Electronics > Audio > DJ & Specialty Audio > DJ Systems
|
1341 |
-
Electronics > Audio > Public Address Systems
|
1342 |
-
Electronics > Audio > Stage Equipment
|
1343 |
-
Electronics > Audio > Stage Equipment > Wireless Transmitters
|
1344 |
-
Electronics > Circuit Boards & Components
|
1345 |
-
Electronics > Circuit Boards & Components > Circuit Board Accessories
|
1346 |
-
Electronics > Circuit Boards & Components > Circuit Decoders & Encoders
|
1347 |
-
Electronics > Circuit Boards & Components > Circuit Prototyping
|
1348 |
-
Electronics > Circuit Boards & Components > Circuit Prototyping > Breadboards
|
1349 |
-
Electronics > Circuit Boards & Components > Electronic Filters
|
1350 |
-
Electronics > Circuit Boards & Components > Passive Circuit Components
|
1351 |
-
Electronics > Circuit Boards & Components > Passive Circuit Components > Capacitors
|
1352 |
-
Electronics > Circuit Boards & Components > Passive Circuit Components > Electronic Oscillators
|
1353 |
-
Electronics > Circuit Boards & Components > Passive Circuit Components > Inductors
|
1354 |
-
Electronics > Circuit Boards & Components > Passive Circuit Components > Resistors
|
1355 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards
|
1356 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Camera Circuit Boards
|
1357 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Computer Circuit Boards
|
1358 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Computer Circuit Boards > Computer Inverter Boards
|
1359 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Computer Circuit Boards > Hard Drive Circuit Boards
|
1360 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Computer Circuit Boards > Motherboards
|
1361 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Development Boards
|
1362 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Exercise Machine Circuit Boards
|
1363 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Household Appliance Circuit Boards
|
1364 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Pool & Spa Circuit Boards
|
1365 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Printer, Copier, & Fax Machine Circuit Boards
|
1366 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Scanner Circuit Boards
|
1367 |
-
Electronics > Circuit Boards & Components > Printed Circuit Boards > Television Circuit Boards
|
1368 |
-
Electronics > Circuit Boards & Components > Semiconductors
|
1369 |
-
Electronics > Circuit Boards & Components > Semiconductors > Diodes
|
1370 |
-
Electronics > Circuit Boards & Components > Semiconductors > Integrated Circuits & Chips
|
1371 |
-
Electronics > Circuit Boards & Components > Semiconductors > Microcontrollers
|
1372 |
-
Electronics > Circuit Boards & Components > Semiconductors > Transistors
|
1373 |
-
Electronics > Communications
|
1374 |
-
Electronics > Communications > Answering Machines
|
1375 |
-
Electronics > Communications > Caller IDs
|
1376 |
-
Electronics > Communications > Communication Radio Accessories
|
1377 |
-
Electronics > Communications > Communication Radios
|
1378 |
-
Electronics > Communications > Communication Radios > CB Radios
|
1379 |
-
Electronics > Communications > Communication Radios > Radio Scanners
|
1380 |
-
Electronics > Communications > Communication Radios > Two-Way Radios
|
1381 |
-
Electronics > Communications > Intercom Accessories
|
1382 |
-
Electronics > Communications > Intercoms
|
1383 |
-
Electronics > Communications > Pagers
|
1384 |
-
Electronics > Communications > Telephony
|
1385 |
-
Electronics > Communications > Telephony > Conference Phones
|
1386 |
-
Electronics > Communications > Telephony > Corded Phones
|
1387 |
-
Electronics > Communications > Telephony > Cordless Phones
|
1388 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories
|
1389 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Camera Accessories
|
1390 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Cases
|
1391 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Charms & Straps
|
1392 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards
|
1393 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards > Mobile Phone Pre-Paid Cards
|
1394 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Pre-Paid Cards & SIM Cards > SIM Cards
|
1395 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Replacement Parts
|
1396 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > Mobile Phone Stands
|
1397 |
-
Electronics > Communications > Telephony > Mobile Phone Accessories > SIM Card Ejection Tools
|
1398 |
-
Electronics > Communications > Telephony > Mobile Phones
|
1399 |
-
Electronics > Communications > Telephony > Mobile Phones > Contract Mobile Phones
|
1400 |
-
Electronics > Communications > Telephony > Mobile Phones > Pre-paid Mobile Phones
|
1401 |
-
Electronics > Communications > Telephony > Mobile Phones > Unlocked Mobile Phones
|
1402 |
-
Electronics > Communications > Telephony > Satellite Phones
|
1403 |
-
Electronics > Communications > Telephony > Telephone Accessories
|
1404 |
-
Electronics > Communications > Telephony > Telephone Accessories > Phone Cards
|
1405 |
-
Electronics > Communications > Video Conferencing
|
1406 |
-
Electronics > Components
|
1407 |
-
Electronics > Components > Accelerometers
|
1408 |
-
Electronics > Components > Converters
|
1409 |
-
Electronics > Components > Converters > Audio Converters
|
1410 |
-
Electronics > Components > Converters > Scan Converters
|
1411 |
-
Electronics > Components > Electronics Component Connectors
|
1412 |
-
Electronics > Components > Modulators
|
1413 |
-
Electronics > Components > Splitters
|
1414 |
-
Electronics > Computers
|
1415 |
-
Electronics > Computers > Barebone Computers
|
1416 |
-
Electronics > Computers > Computer Servers
|
1417 |
-
Electronics > Computers > Desktop Computers
|
1418 |
-
Electronics > Computers > Handheld Devices
|
1419 |
-
Electronics > Computers > Handheld Devices > Data Collectors
|
1420 |
-
Electronics > Computers > Handheld Devices > E-Book Readers
|
1421 |
-
Electronics > Computers > Handheld Devices > PDAs
|
1422 |
-
Electronics > Computers > Interactive Kiosks
|
1423 |
-
Electronics > Computers > Laptops
|
1424 |
-
Electronics > Computers > Smart Glasses
|
1425 |
-
Electronics > Computers > Tablet Computers
|
1426 |
-
Electronics > Computers > Thin & Zero Clients
|
1427 |
-
Electronics > Computers > Thin & Zero Clients > Thin Client Computers
|
1428 |
-
Electronics > Computers > Thin & Zero Clients > Zero Client Computers
|
1429 |
-
Electronics > Computers > Touch Table Computers
|
1430 |
-
Electronics > Electronics Accessories
|
1431 |
-
Electronics > Electronics Accessories > Adapters
|
1432 |
-
Electronics > Electronics Accessories > Adapters > Audio & Video Cable Adapters & Couplers
|
1433 |
-
Electronics > Electronics Accessories > Adapters > Memory Card Adapters
|
1434 |
-
Electronics > Electronics Accessories > Adapters > USB Adapters
|
1435 |
-
Electronics > Electronics Accessories > Antenna Accessories
|
1436 |
-
Electronics > Electronics Accessories > Antenna Accessories > Antenna Mounts & Brackets
|
1437 |
-
Electronics > Electronics Accessories > Antenna Accessories > Antenna Rotators
|
1438 |
-
Electronics > Electronics Accessories > Antenna Accessories > Satellite LNBs
|
1439 |
-
Electronics > Electronics Accessories > Antennas
|
1440 |
-
Electronics > Electronics Accessories > Audio & Video Splitters & Switches
|
1441 |
-
Electronics > Electronics Accessories > Audio & Video Splitters & Switches > DVI Splitters & Switches
|
1442 |
-
Electronics > Electronics Accessories > Audio & Video Splitters & Switches > HDMI Splitters & Switches
|
1443 |
-
Electronics > Electronics Accessories > Audio & Video Splitters & Switches > VGA Splitters & Switches
|
1444 |
-
Electronics > Electronics Accessories > Blank Media
|
1445 |
-
Electronics > Electronics Accessories > Cable Management
|
1446 |
-
Electronics > Electronics Accessories > Cable Management > Cable Clips
|
1447 |
-
Electronics > Electronics Accessories > Cable Management > Cable Tie Guns
|
1448 |
-
Electronics > Electronics Accessories > Cable Management > Cable Trays
|
1449 |
-
Electronics > Electronics Accessories > Cable Management > Patch Panels
|
1450 |
-
Electronics > Electronics Accessories > Cable Management > Wire & Cable Identification Markers
|
1451 |
-
Electronics > Electronics Accessories > Cable Management > Wire & Cable Sleeves
|
1452 |
-
Electronics > Electronics Accessories > Cable Management > Wire & Cable Ties
|
1453 |
-
Electronics > Electronics Accessories > Cables
|
1454 |
-
Electronics > Electronics Accessories > Cables > Audio & Video Cables
|
1455 |
-
Electronics > Electronics Accessories > Cables > KVM Cables
|
1456 |
-
Electronics > Electronics Accessories > Cables > Network Cables
|
1457 |
-
Electronics > Electronics Accessories > Cables > Storage & Data Transfer Cables
|
1458 |
-
Electronics > Electronics Accessories > Cables > System & Power Cables
|
1459 |
-
Electronics > Electronics Accessories > Cables > Telephone Cables
|
1460 |
-
Electronics > Electronics Accessories > Computer Accessories
|
1461 |
-
Electronics > Electronics Accessories > Computer Accessories > Computer Accessory Sets
|
1462 |
-
Electronics > Electronics Accessories > Computer Accessories > Computer Covers & Skins
|
1463 |
-
Electronics > Electronics Accessories > Computer Accessories > Computer Risers & Stands
|
1464 |
-
Electronics > Electronics Accessories > Computer Accessories > Handheld Device Accessories
|
1465 |
-
Electronics > Electronics Accessories > Computer Accessories > Handheld Device Accessories > E-Book Reader Accessories
|
1466 |
-
Electronics > Electronics Accessories > Computer Accessories > Handheld Device Accessories > E-Book Reader Accessories > E-Book Reader Cases
|
1467 |
-
Electronics > Electronics Accessories > Computer Accessories > Handheld Device Accessories > PDA Accessories
|
1468 |
-
Electronics > Electronics Accessories > Computer Accessories > Handheld Device Accessories > PDA Accessories > PDA Cases
|
1469 |
-
Electronics > Electronics Accessories > Computer Accessories > Keyboard & Mouse Wrist Rests
|
1470 |
-
Electronics > Electronics Accessories > Computer Accessories > Keyboard Trays & Platforms
|
1471 |
-
Electronics > Electronics Accessories > Computer Accessories > Laptop Docking Stations
|
1472 |
-
Electronics > Electronics Accessories > Computer Accessories > Mouse Pads
|
1473 |
-
Electronics > Electronics Accessories > Computer Accessories > Stylus Pen Nibs & Refills
|
1474 |
-
Electronics > Electronics Accessories > Computer Accessories > Stylus Pens
|
1475 |
-
Electronics > Electronics Accessories > Computer Accessories > Tablet Computer Docks & Stands
|
1476 |
-
Electronics > Electronics Accessories > Computer Components
|
1477 |
-
Electronics > Electronics Accessories > Computer Components > Blade Server Enclosures
|
1478 |
-
Electronics > Electronics Accessories > Computer Components > Computer Backplates & I/O Shields
|
1479 |
-
Electronics > Electronics Accessories > Computer Components > Computer Power Supplies
|
1480 |
-
Electronics > Electronics Accessories > Computer Components > Computer Processors
|
1481 |
-
Electronics > Electronics Accessories > Computer Components > Computer Racks & Mounts
|
1482 |
-
Electronics > Electronics Accessories > Computer Components > Computer Starter Kits
|
1483 |
-
Electronics > Electronics Accessories > Computer Components > Computer System Cooling Parts
|
1484 |
-
Electronics > Electronics Accessories > Computer Components > Desktop Computer & Server Cases
|
1485 |
-
Electronics > Electronics Accessories > Computer Components > E-Book Reader Parts
|
1486 |
-
Electronics > Electronics Accessories > Computer Components > E-Book Reader Parts > E-Book Reader Screens & Screen Digitizers
|
1487 |
-
Electronics > Electronics Accessories > Computer Components > I/O Cards & Adapters
|
1488 |
-
Electronics > Electronics Accessories > Computer Components > I/O Cards & Adapters > Audio Cards & Adapters
|
1489 |
-
Electronics > Electronics Accessories > Computer Components > I/O Cards & Adapters > Computer Interface Cards & Adapters
|
1490 |
-
Electronics > Electronics Accessories > Computer Components > I/O Cards & Adapters > Riser Cards
|
1491 |
-
Electronics > Electronics Accessories > Computer Components > I/O Cards & Adapters > TV Tuner Cards & Adapters
|
1492 |
-
Electronics > Electronics Accessories > Computer Components > I/O Cards & Adapters > Video Cards & Adapters
|
1493 |
-
Electronics > Electronics Accessories > Computer Components > Input Device Accessories
|
1494 |
-
Electronics > Electronics Accessories > Computer Components > Input Device Accessories > Barcode Scanner Stands
|
1495 |
-
Electronics > Electronics Accessories > Computer Components > Input Device Accessories > Game Controller Accessories
|
1496 |
-
Electronics > Electronics Accessories > Computer Components > Input Device Accessories > Keyboard Keys & Caps
|
1497 |
-
Electronics > Electronics Accessories > Computer Components > Input Device Accessories > Mice & Trackball Accessories
|
1498 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices
|
1499 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Barcode Scanners
|
1500 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Digital Note Taking Pens
|
1501 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Electronic Card Readers
|
1502 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Fingerprint Readers
|
1503 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers
|
1504 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Game Racing Wheels
|
1505 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Game Remotes
|
1506 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Gaming Pads
|
1507 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Joystick Controllers
|
1508 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Game Controllers > Musical Instrument Game Controllers
|
1509 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Gesture Control Input Devices
|
1510 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Graphics Tablets
|
1511 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > KVM Switches
|
1512 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Keyboards
|
1513 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Memory Card Readers
|
1514 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Mice & Trackballs
|
1515 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Numeric Keypads
|
1516 |
-
Electronics > Electronics Accessories > Computer Components > Input Devices > Touchpads
|
1517 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts
|
1518 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Hinges
|
1519 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Housings & Trim
|
1520 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Replacement Cables
|
1521 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Replacement Keyboards
|
1522 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Replacement Screens
|
1523 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Replacement Speakers
|
1524 |
-
Electronics > Electronics Accessories > Computer Components > Laptop Parts > Laptop Screen Digitizers
|
1525 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices
|
1526 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Disk Duplicators
|
1527 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Disk Duplicators > CD/DVD Duplicators
|
1528 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Disk Duplicators > Hard Drive Duplicators
|
1529 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Disk Duplicators > USB Drive Duplicators
|
1530 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Floppy Drives
|
1531 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Hard Drive Accessories
|
1532 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Hard Drive Accessories > Hard Drive Carrying Cases
|
1533 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Hard Drive Accessories > Hard Drive Docks
|
1534 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Hard Drive Accessories > Hard Drive Enclosures & Mounts
|
1535 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Hard Drive Arrays
|
1536 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Hard Drives
|
1537 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Network Storage Systems
|
1538 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Optical Drives
|
1539 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > Tape Drives
|
1540 |
-
Electronics > Electronics Accessories > Computer Components > Storage Devices > USB Flash Drives
|
1541 |
-
Electronics > Electronics Accessories > Computer Components > Tablet Computer Parts
|
1542 |
-
Electronics > Electronics Accessories > Computer Components > Tablet Computer Parts > Tablet Computer Housings & Trim
|
1543 |
-
Electronics > Electronics Accessories > Computer Components > Tablet Computer Parts > Tablet Computer Replacement Speakers
|
1544 |
-
Electronics > Electronics Accessories > Computer Components > Tablet Computer Parts > Tablet Computer Screens & Screen Digitizers
|
1545 |
-
Electronics > Electronics Accessories > Computer Components > USB & FireWire Hubs
|
1546 |
-
Electronics > Electronics Accessories > Electronics Cleaners
|
1547 |
-
Electronics > Electronics Accessories > Electronics Films & Shields
|
1548 |
-
Electronics > Electronics Accessories > Electronics Films & Shields > Electronics Stickers & Decals
|
1549 |
-
Electronics > Electronics Accessories > Electronics Films & Shields > Keyboard Protectors
|
1550 |
-
Electronics > Electronics Accessories > Electronics Films & Shields > Privacy Filters
|
1551 |
-
Electronics > Electronics Accessories > Electronics Films & Shields > Screen Protectors
|
1552 |
-
Electronics > Electronics Accessories > Memory
|
1553 |
-
Electronics > Electronics Accessories > Memory > Cache Memory
|
1554 |
-
Electronics > Electronics Accessories > Memory > Flash Memory
|
1555 |
-
Electronics > Electronics Accessories > Memory > Flash Memory > Flash Memory Cards
|
1556 |
-
Electronics > Electronics Accessories > Memory > RAM
|
1557 |
-
Electronics > Electronics Accessories > Memory > ROM
|
1558 |
-
Electronics > Electronics Accessories > Memory > Video Memory
|
1559 |
-
Electronics > Electronics Accessories > Memory Accessories
|
1560 |
-
Electronics > Electronics Accessories > Memory Accessories > Memory Cases
|
1561 |
-
Electronics > Electronics Accessories > Mobile Phone & Tablet Tripods & Monopods
|
1562 |
-
Electronics > Electronics Accessories > Power
|
1563 |
-
Electronics > Electronics Accessories > Power > Batteries
|
1564 |
-
Electronics > Electronics Accessories > Power > Batteries > Camera Batteries
|
1565 |
-
Electronics > Electronics Accessories > Power > Batteries > Cordless Phone Batteries
|
1566 |
-
Electronics > Electronics Accessories > Power > Batteries > E-Book Reader Batteries
|
1567 |
-
Electronics > Electronics Accessories > Power > Batteries > General Purpose Batteries
|
1568 |
-
Electronics > Electronics Accessories > Power > Batteries > Laptop Batteries
|
1569 |
-
Electronics > Electronics Accessories > Power > Batteries > MP3 Player Batteries
|
1570 |
-
Electronics > Electronics Accessories > Power > Batteries > Mobile Phone Batteries
|
1571 |
-
Electronics > Electronics Accessories > Power > Batteries > PDA Batteries
|
1572 |
-
Electronics > Electronics Accessories > Power > Batteries > Tablet Computer Batteries
|
1573 |
-
Electronics > Electronics Accessories > Power > Batteries > UPS Batteries
|
1574 |
-
Electronics > Electronics Accessories > Power > Batteries > Video Camera Batteries
|
1575 |
-
Electronics > Electronics Accessories > Power > Batteries > Video Game Console & Controller Batteries
|
1576 |
-
Electronics > Electronics Accessories > Power > Battery Accessories
|
1577 |
-
Electronics > Electronics Accessories > Power > Battery Accessories > Battery Charge Controllers
|
1578 |
-
Electronics > Electronics Accessories > Power > Battery Accessories > Battery Holders
|
1579 |
-
Electronics > Electronics Accessories > Power > Battery Accessories > Camera Battery Chargers
|
1580 |
-
Electronics > Electronics Accessories > Power > Battery Accessories > General Purpose Battery Chargers
|
1581 |
-
Electronics > Electronics Accessories > Power > Battery Accessories > General Purpose Battery Testers
|
1582 |
-
Electronics > Electronics Accessories > Power > Fuel Cells
|
1583 |
-
Electronics > Electronics Accessories > Power > Power Adapter & Charger Accessories
|
1584 |
-
Electronics > Electronics Accessories > Power > Power Adapters & Chargers
|
1585 |
-
Electronics > Electronics Accessories > Power > Power Control Units
|
1586 |
-
Electronics > Electronics Accessories > Power > Power Strips & Surge Suppressors
|
1587 |
-
Electronics > Electronics Accessories > Power > Power Supply Enclosures
|
1588 |
-
Electronics > Electronics Accessories > Power > Surge Protection Devices
|
1589 |
-
Electronics > Electronics Accessories > Power > Travel Converters & Adapters
|
1590 |
-
Electronics > Electronics Accessories > Power > UPS
|
1591 |
-
Electronics > Electronics Accessories > Power > UPS Accessories
|
1592 |
-
Electronics > Electronics Accessories > Remote Controls
|
1593 |
-
Electronics > Electronics Accessories > Signal Boosters
|
1594 |
-
Electronics > Electronics Accessories > Signal Jammers
|
1595 |
-
Electronics > Electronics Accessories > Signal Jammers > GPS Jammers
|
1596 |
-
Electronics > Electronics Accessories > Signal Jammers > Mobile Phone Jammers
|
1597 |
-
Electronics > Electronics Accessories > Signal Jammers > Radar Jammers
|
1598 |
-
Electronics > GPS Accessories
|
1599 |
-
Electronics > GPS Accessories > GPS Cases
|
1600 |
-
Electronics > GPS Accessories > GPS Mounts
|
1601 |
-
Electronics > GPS Navigation Systems
|
1602 |
-
Electronics > GPS Tracking Devices
|
1603 |
-
Electronics > Marine Electronics
|
1604 |
-
Electronics > Marine Electronics > Fish Finders
|
1605 |
-
Electronics > Marine Electronics > Marine Audio & Video Receivers
|
1606 |
-
Electronics > Marine Electronics > Marine Chartplotters & GPS
|
1607 |
-
Electronics > Marine Electronics > Marine Radar
|
1608 |
-
Electronics > Marine Electronics > Marine Radios
|
1609 |
-
Electronics > Marine Electronics > Marine Speakers
|
1610 |
-
Electronics > Networking
|
1611 |
-
Electronics > Networking > Bridges & Routers
|
1612 |
-
Electronics > Networking > Bridges & Routers > Network Bridges
|
1613 |
-
Electronics > Networking > Bridges & Routers > VoIP Gateways & Routers
|
1614 |
-
Electronics > Networking > Bridges & Routers > Wireless Access Points
|
1615 |
-
Electronics > Networking > Bridges & Routers > Wireless Routers
|
1616 |
-
Electronics > Networking > Concentrators & Multiplexers
|
1617 |
-
Electronics > Networking > Hubs & Switches
|
1618 |
-
Electronics > Networking > Modem Accessories
|
1619 |
-
Electronics > Networking > Modems
|
1620 |
-
Electronics > Networking > Network Cards & Adapters
|
1621 |
-
Electronics > Networking > Network Security & Firewall Devices
|
1622 |
-
Electronics > Networking > Power Over Ethernet Adapters
|
1623 |
-
Electronics > Networking > Print Servers
|
1624 |
-
Electronics > Networking > Repeaters & Transceivers
|
1625 |
-
Electronics > Print, Copy, Scan & Fax
|
1626 |
-
Electronics > Print, Copy, Scan & Fax > 3D Printer Accessories
|
1627 |
-
Electronics > Print, Copy, Scan & Fax > 3D Printers
|
1628 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories
|
1629 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables
|
1630 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Printer Drums & Drum Kits
|
1631 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Printer Filters
|
1632 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Printer Maintenance Kits
|
1633 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Printer Ribbons
|
1634 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Printheads
|
1635 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Toner & Inkjet Cartridge Refills
|
1636 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Consumables > Toner & Inkjet Cartridges
|
1637 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Duplexers
|
1638 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Memory
|
1639 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer Stands
|
1640 |
-
Electronics > Print, Copy, Scan & Fax > Printer, Copier & Fax Machine Accessories > Printer, Copier & Fax Machine Replacement Parts
|
1641 |
-
Electronics > Print, Copy, Scan & Fax > Printers, Copiers & Fax Machines
|
1642 |
-
Electronics > Print, Copy, Scan & Fax > Scanner Accessories
|
1643 |
-
Electronics > Print, Copy, Scan & Fax > Scanners
|
1644 |
-
Electronics > Radar Detectors
|
1645 |
-
Electronics > Speed Radars
|
1646 |
-
Electronics > Toll Collection Devices
|
1647 |
-
Electronics > Video
|
1648 |
-
Electronics > Video > Computer Monitors
|
1649 |
-
Electronics > Video > Projectors
|
1650 |
-
Electronics > Video > Projectors > Multimedia Projectors
|
1651 |
-
Electronics > Video > Projectors > Overhead Projectors
|
1652 |
-
Electronics > Video > Projectors > Slide Projectors
|
1653 |
-
Electronics > Video > Satellite & Cable TV
|
1654 |
-
Electronics > Video > Satellite & Cable TV > Cable TV Receivers
|
1655 |
-
Electronics > Video > Satellite & Cable TV > Satellite Receivers
|
1656 |
-
Electronics > Video > Televisions
|
1657 |
-
Electronics > Video > Video Accessories
|
1658 |
-
Electronics > Video > Video Accessories > 3D Glasses
|
1659 |
-
Electronics > Video > Video Accessories > Computer Monitor Accessories
|
1660 |
-
Electronics > Video > Video Accessories > Computer Monitor Accessories > Color Calibrators
|
1661 |
-
Electronics > Video > Video Accessories > Projector Accessories
|
1662 |
-
Electronics > Video > Video Accessories > Projector Accessories > Projection & Tripod Skirts
|
1663 |
-
Electronics > Video > Video Accessories > Projector Accessories > Projection Screen Stands
|
1664 |
-
Electronics > Video > Video Accessories > Projector Accessories > Projection Screens
|
1665 |
-
Electronics > Video > Video Accessories > Projector Accessories > Projector Mounts
|
1666 |
-
Electronics > Video > Video Accessories > Projector Accessories > Projector Replacement Lamps
|
1667 |
-
Electronics > Video > Video Accessories > Rewinders
|
1668 |
-
Electronics > Video > Video Accessories > Television Parts & Accessories
|
1669 |
-
Electronics > Video > Video Accessories > Television Parts & Accessories > TV & Monitor Mounts
|
1670 |
-
Electronics > Video > Video Accessories > Television Parts & Accessories > TV Converter Boxes
|
1671 |
-
Electronics > Video > Video Accessories > Television Parts & Accessories > TV Replacement Lamps
|
1672 |
-
Electronics > Video > Video Accessories > Television Parts & Accessories > TV Replacement Speakers
|
1673 |
-
Electronics > Video > Video Editing Hardware & Production Equipment
|
1674 |
-
Electronics > Video > Video Multiplexers
|
1675 |
-
Electronics > Video > Video Players & Recorders
|
1676 |
-
Electronics > Video > Video Players & Recorders > DVD & Blu-ray Players
|
1677 |
-
Electronics > Video > Video Players & Recorders > DVD Recorders
|
1678 |
-
Electronics > Video > Video Players & Recorders > Digital Video Recorders
|
1679 |
-
Electronics > Video > Video Players & Recorders > Streaming & Home Media Players
|
1680 |
-
Electronics > Video > Video Players & Recorders > VCRs
|
1681 |
-
Electronics > Video > Video Servers
|
1682 |
-
Electronics > Video > Video Transmitters
|
1683 |
-
Electronics > Video Game Console Accessories
|
1684 |
-
Electronics > Video Game Console Accessories > Home Game Console Accessories
|
1685 |
-
Electronics > Video Game Console Accessories > Portable Game Console Accessories
|
1686 |
-
Electronics > Video Game Consoles
|
1687 |
-
Food, Beverages & Tobacco
|
1688 |
-
Food, Beverages & Tobacco > Beverages
|
1689 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages
|
1690 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Beer
|
1691 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Bitters
|
1692 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes
|
1693 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes > Frozen Cocktail Mixes
|
1694 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Cocktail Mixes > Shelf-stable Cocktail Mixes
|
1695 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Flavored Alcoholic Beverages
|
1696 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Hard Cider
|
1697 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits
|
1698 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Absinthe
|
1699 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Brandy
|
1700 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Gin
|
1701 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Liqueurs
|
1702 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Rum
|
1703 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju
|
1704 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju > Shochu
|
1705 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Shochu & Soju > Soju
|
1706 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Tequila
|
1707 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Vodka
|
1708 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Liquor & Spirits > Whiskey
|
1709 |
-
Food, Beverages & Tobacco > Beverages > Alcoholic Beverages > Wine
|
1710 |
-
Food, Beverages & Tobacco > Beverages > Buttermilk
|
1711 |
-
Food, Beverages & Tobacco > Beverages > Coffee
|
1712 |
-
Food, Beverages & Tobacco > Beverages > Eggnog
|
1713 |
-
Food, Beverages & Tobacco > Beverages > Fruit Flavored Drinks
|
1714 |
-
Food, Beverages & Tobacco > Beverages > Hot Chocolate
|
1715 |
-
Food, Beverages & Tobacco > Beverages > Juice
|
1716 |
-
Food, Beverages & Tobacco > Beverages > Milk
|
1717 |
-
Food, Beverages & Tobacco > Beverages > Non-Dairy Milk
|
1718 |
-
Food, Beverages & Tobacco > Beverages > Powdered Beverage Mixes
|
1719 |
-
Food, Beverages & Tobacco > Beverages > Soda
|
1720 |
-
Food, Beverages & Tobacco > Beverages > Sports & Energy Drinks
|
1721 |
-
Food, Beverages & Tobacco > Beverages > Tea & Infusions
|
1722 |
-
Food, Beverages & Tobacco > Beverages > Vinegar Drinks
|
1723 |
-
Food, Beverages & Tobacco > Beverages > Water
|
1724 |
-
Food, Beverages & Tobacco > Beverages > Water > Carbonated Water
|
1725 |
-
Food, Beverages & Tobacco > Beverages > Water > Carbonated Water > Flavored Carbonated Water
|
1726 |
-
Food, Beverages & Tobacco > Beverages > Water > Carbonated Water > Unflavored Carbonated Water
|
1727 |
-
Food, Beverages & Tobacco > Beverages > Water > Distilled Water
|
1728 |
-
Food, Beverages & Tobacco > Beverages > Water > Flat Mineral Water
|
1729 |
-
Food, Beverages & Tobacco > Beverages > Water > Spring Water
|
1730 |
-
Food, Beverages & Tobacco > Food Items
|
1731 |
-
Food, Beverages & Tobacco > Food Items > Bakery
|
1732 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Bagels
|
1733 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Bakery Assortments
|
1734 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Breads & Buns
|
1735 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Cakes & Dessert Bars
|
1736 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Coffee Cakes
|
1737 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Cookies
|
1738 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Cupcakes
|
1739 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Donuts
|
1740 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Fudge
|
1741 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Ice Cream Cones
|
1742 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Muffins
|
1743 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Pastries & Scones
|
1744 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Pies & Tarts
|
1745 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Taco Shells & Tostadas
|
1746 |
-
Food, Beverages & Tobacco > Food Items > Bakery > Tortillas & Wraps
|
1747 |
-
Food, Beverages & Tobacco > Food Items > Candied & Chocolate Covered Fruit
|
1748 |
-
Food, Beverages & Tobacco > Food Items > Candy & Chocolate
|
1749 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces
|
1750 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Cocktail Sauce
|
1751 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Curry Sauce
|
1752 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Dessert Toppings
|
1753 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Dessert Toppings > Fruit Toppings
|
1754 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Dessert Toppings > Ice Cream Syrup
|
1755 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Fish Sauce
|
1756 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Gravy
|
1757 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Honey
|
1758 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Horseradish Sauce
|
1759 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Hot Sauce
|
1760 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Ketchup
|
1761 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Marinades & Grilling Sauces
|
1762 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Mayonnaise
|
1763 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Mustard
|
1764 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Olives & Capers
|
1765 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Pasta Sauce
|
1766 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Pickled Fruits & Vegetables
|
1767 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Pizza Sauce
|
1768 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Relish & Chutney
|
1769 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Salad Dressing
|
1770 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Satay Sauce
|
1771 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Soy Sauce
|
1772 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Sweet and Sour Sauces
|
1773 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Syrup
|
1774 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Tahini
|
1775 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Tartar Sauce
|
1776 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > White & Cream Sauces
|
1777 |
-
Food, Beverages & Tobacco > Food Items > Condiments & Sauces > Worcestershire Sauce
|
1778 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients
|
1779 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Baking Chips
|
1780 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Baking Chocolate
|
1781 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Baking Flavors & Extracts
|
1782 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Baking Mixes
|
1783 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Baking Powder
|
1784 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Baking Soda
|
1785 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Batter & Coating Mixes
|
1786 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Bean Paste
|
1787 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Bread Crumbs
|
1788 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Canned & Dry Milk
|
1789 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Cookie Decorating Kits
|
1790 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Cooking Oils
|
1791 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Cooking Starch
|
1792 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Cooking Wine
|
1793 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Corn Syrup
|
1794 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough
|
1795 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Bread & Pastry Dough
|
1796 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Cookie & Brownie Dough
|
1797 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Dough > Pie Crusts
|
1798 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Edible Baking Decorations
|
1799 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Egg Replacers
|
1800 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Floss Sugar
|
1801 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Flour
|
1802 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Food Coloring
|
1803 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Frosting & Icing
|
1804 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Lemon & Lime Juice
|
1805 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Marshmallows
|
1806 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Meal
|
1807 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Molasses
|
1808 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Pie & Pastry Fillings
|
1809 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Shortening & Lard
|
1810 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Starter Cultures
|
1811 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Sugar & Sweeteners
|
1812 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Tapioca Pearls
|
1813 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Tomato Paste
|
1814 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Unflavored Gelatin
|
1815 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Vinegar
|
1816 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Waffle & Pancake Mixes
|
1817 |
-
Food, Beverages & Tobacco > Food Items > Cooking & Baking Ingredients > Yeast
|
1818 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products
|
1819 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Butter & Margarine
|
1820 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Cheese
|
1821 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Coffee Creamer
|
1822 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Cottage Cheese
|
1823 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Cream
|
1824 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Sour Cream
|
1825 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Whipped Cream
|
1826 |
-
Food, Beverages & Tobacco > Food Items > Dairy Products > Yogurt
|
1827 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads
|
1828 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Apple Butter
|
1829 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Cheese Dips & Spreads
|
1830 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Cream Cheese
|
1831 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Guacamole
|
1832 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Hummus
|
1833 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Jams & Jellies
|
1834 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Nut Butters
|
1835 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Salsa
|
1836 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Tapenade
|
1837 |
-
Food, Beverages & Tobacco > Food Items > Dips & Spreads > Vegetable Dip
|
1838 |
-
Food, Beverages & Tobacco > Food Items > Food Gift Baskets
|
1839 |
-
Food, Beverages & Tobacco > Food Items > Frozen Desserts & Novelties
|
1840 |
-
Food, Beverages & Tobacco > Food Items > Frozen Desserts & Novelties > Ice Cream & Frozen Yogurt
|
1841 |
-
Food, Beverages & Tobacco > Food Items > Frozen Desserts & Novelties > Ice Cream Novelties
|
1842 |
-
Food, Beverages & Tobacco > Food Items > Frozen Desserts & Novelties > Ice Pops
|
1843 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables
|
1844 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Canned & Jarred Fruits
|
1845 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Canned & Jarred Vegetables
|
1846 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Canned & Prepared Beans
|
1847 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Dried Fruits
|
1848 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Dried Vegetables
|
1849 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Dry Beans
|
1850 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits
|
1851 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Apples
|
1852 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Atemoyas
|
1853 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Avocados
|
1854 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Babacos
|
1855 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Bananas
|
1856 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Berries
|
1857 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Breadfruit
|
1858 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Cactus Pears
|
1859 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Cherimoyas
|
1860 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits
|
1861 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Grapefruits
|
1862 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Kumquats
|
1863 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Lemons
|
1864 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Limequats
|
1865 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Limes
|
1866 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Oranges
|
1867 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Citrus Fruits > Tangelos
|
1868 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Coconuts
|
1869 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Dates
|
1870 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Feijoas
|
1871 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Figs
|
1872 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Fruit Mixes
|
1873 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Grapes
|
1874 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Guavas
|
1875 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Homely Fruits
|
1876 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Kiwis
|
1877 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Longan
|
1878 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Loquats
|
1879 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Lychees
|
1880 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Madroño
|
1881 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Mamey
|
1882 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Mangosteens
|
1883 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Melons
|
1884 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Papayas
|
1885 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Passion Fruit
|
1886 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Pears
|
1887 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Persimmons
|
1888 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Physalis
|
1889 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Pineapples
|
1890 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Pitahayas
|
1891 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Pomegranates
|
1892 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Quince
|
1893 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Rambutans
|
1894 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Sapodillo
|
1895 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Sapote
|
1896 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Soursops
|
1897 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Starfruits
|
1898 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits
|
1899 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits > Apricots
|
1900 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits > Cherries
|
1901 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits > Mangoes
|
1902 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits > Peaches & Nectarines
|
1903 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits > Plumcots
|
1904 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Stone Fruits > Plums
|
1905 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Sugar Apples
|
1906 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Fruits > Tamarindo
|
1907 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables
|
1908 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Arracachas
|
1909 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Artichokes
|
1910 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Asparagus
|
1911 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Beans
|
1912 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Beets
|
1913 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Borage
|
1914 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Broccoli
|
1915 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Brussel Sprouts
|
1916 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Cabbage
|
1917 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Cactus Leaves
|
1918 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Cardoon
|
1919 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Carrots
|
1920 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Cauliflower
|
1921 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Celery
|
1922 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Celery Roots
|
1923 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Corn
|
1924 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Cucumbers
|
1925 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Eggplants
|
1926 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Fennel Bulbs
|
1927 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Fiddlehead Ferns
|
1928 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Gai Choy
|
1929 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Gai Lan
|
1930 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Garlic
|
1931 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Ginger Root
|
1932 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Gobo Root
|
1933 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens
|
1934 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Arugula
|
1935 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Beet Greens
|
1936 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Bok Choy
|
1937 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Chard
|
1938 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Chicory
|
1939 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Choy Sum
|
1940 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Kale
|
1941 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Lettuce
|
1942 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > On Choy
|
1943 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Salad Mixes
|
1944 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Spinach
|
1945 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Greens > Yu Choy
|
1946 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Horseradish Root
|
1947 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Jicama
|
1948 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Kohlrabi
|
1949 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Leeks
|
1950 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Lotus Roots
|
1951 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Malangas
|
1952 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Mushrooms
|
1953 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Okra
|
1954 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Onions
|
1955 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Parsley Roots
|
1956 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Parsnips
|
1957 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Peas
|
1958 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Peppers
|
1959 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Potatoes
|
1960 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Radishes
|
1961 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Rhubarb
|
1962 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Shallots
|
1963 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Sprouts
|
1964 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Squashes & Gourds
|
1965 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Sugar Cane
|
1966 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Sunchokes
|
1967 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Sweet Potatoes
|
1968 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Tamarillos
|
1969 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Taro Root
|
1970 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Tomatoes
|
1971 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Turnips & Rutabagas
|
1972 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Vegetable Mixes
|
1973 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Water Chestnuts
|
1974 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Watercress
|
1975 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Wheatgrass
|
1976 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Yams
|
1977 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fresh & Frozen Vegetables > Yuca Root
|
1978 |
-
Food, Beverages & Tobacco > Food Items > Fruits & Vegetables > Fruit Sauces
|
1979 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal
|
1980 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Amaranth
|
1981 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Barley
|
1982 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Buckwheat
|
1983 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Cereal & Granola
|
1984 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Couscous
|
1985 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Millet
|
1986 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Oats, Grits & Hot Cereal
|
1987 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Quinoa
|
1988 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Rice
|
1989 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Rye
|
1990 |
-
Food, Beverages & Tobacco > Food Items > Grains, Rice & Cereal > Wheat
|
1991 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs
|
1992 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs
|
1993 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Egg Whites
|
1994 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Liquid & Frozen Eggs
|
1995 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Prepared Eggs
|
1996 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Eggs > Whole Eggs
|
1997 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat
|
1998 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Canned Meats
|
1999 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Fresh & Frozen Meats
|
2000 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Meat > Lunch & Deli Meats
|
2001 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Seafood
|
2002 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Seafood > Canned Seafood
|
2003 |
-
Food, Beverages & Tobacco > Food Items > Meat, Seafood & Eggs > Seafood > Fresh & Frozen Seafood
|
2004 |
-
Food, Beverages & Tobacco > Food Items > Nuts & Seeds
|
2005 |
-
Food, Beverages & Tobacco > Food Items > Pasta & Noodles
|
2006 |
-
Food, Beverages & Tobacco > Food Items > Prepared Foods
|
2007 |
-
Food, Beverages & Tobacco > Food Items > Prepared Foods > Prepared Appetizers & Side Dishes
|
2008 |
-
Food, Beverages & Tobacco > Food Items > Prepared Foods > Prepared Meals & Entrées
|
2009 |
-
Food, Beverages & Tobacco > Food Items > Seasonings & Spices
|
2010 |
-
Food, Beverages & Tobacco > Food Items > Seasonings & Spices > Herbs & Spices
|
2011 |
-
Food, Beverages & Tobacco > Food Items > Seasonings & Spices > MSG
|
2012 |
-
Food, Beverages & Tobacco > Food Items > Seasonings & Spices > Pepper
|
2013 |
-
Food, Beverages & Tobacco > Food Items > Seasonings & Spices > Salt
|
2014 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods
|
2015 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Breadsticks
|
2016 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars
|
2017 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars > Cereal Bars
|
2018 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Cereal & Granola Bars > Granola Bars
|
2019 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Cheese Puffs
|
2020 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Chips
|
2021 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Crackers
|
2022 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Croutons
|
2023 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Fruit Snacks
|
2024 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Jerky
|
2025 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Popcorn
|
2026 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Pork Rinds
|
2027 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Pretzels
|
2028 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Pudding & Gelatin Snacks
|
2029 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Puffed Rice Cakes
|
2030 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Salad Toppings
|
2031 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Sesame Sticks
|
2032 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Snack Cakes
|
2033 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Sticky Rice Cakes
|
2034 |
-
Food, Beverages & Tobacco > Food Items > Snack Foods > Trail & Snack Mixes
|
2035 |
-
Food, Beverages & Tobacco > Food Items > Soups & Broths
|
2036 |
-
Food, Beverages & Tobacco > Food Items > Tofu, Soy & Vegetarian Products
|
2037 |
-
Food, Beverages & Tobacco > Food Items > Tofu, Soy & Vegetarian Products > Cheese Alternatives
|
2038 |
-
Food, Beverages & Tobacco > Food Items > Tofu, Soy & Vegetarian Products > Meat Alternatives
|
2039 |
-
Food, Beverages & Tobacco > Food Items > Tofu, Soy & Vegetarian Products > Seitan
|
2040 |
-
Food, Beverages & Tobacco > Food Items > Tofu, Soy & Vegetarian Products > Tempeh
|
2041 |
-
Food, Beverages & Tobacco > Food Items > Tofu, Soy & Vegetarian Products > Tofu
|
2042 |
-
Food, Beverages & Tobacco > Tobacco Products
|
2043 |
-
Food, Beverages & Tobacco > Tobacco Products > Chewing Tobacco
|
2044 |
-
Food, Beverages & Tobacco > Tobacco Products > Cigarettes
|
2045 |
-
Food, Beverages & Tobacco > Tobacco Products > Cigars
|
2046 |
-
Food, Beverages & Tobacco > Tobacco Products > Loose Tobacco
|
2047 |
-
Food, Beverages & Tobacco > Tobacco Products > Smoking Pipes
|
2048 |
-
Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes
|
2049 |
-
Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes > Electronic Cigarettes
|
2050 |
-
Food, Beverages & Tobacco > Tobacco Products > Vaporizers & Electronic Cigarettes > Vaporizers
|
2051 |
-
Furniture
|
2052 |
-
Furniture > Baby & Toddler Furniture
|
2053 |
-
Furniture > Baby & Toddler Furniture > Baby & Toddler Furniture Sets
|
2054 |
-
Furniture > Baby & Toddler Furniture > Bassinet & Cradle Accessories
|
2055 |
-
Furniture > Baby & Toddler Furniture > Bassinets & Cradles
|
2056 |
-
Furniture > Baby & Toddler Furniture > Changing Tables
|
2057 |
-
Furniture > Baby & Toddler Furniture > Crib & Toddler Bed Accessories
|
2058 |
-
Furniture > Baby & Toddler Furniture > Crib & Toddler Bed Accessories > Crib Bumpers & Liners
|
2059 |
-
Furniture > Baby & Toddler Furniture > Crib & Toddler Bed Accessories > Crib Conversion Kits
|
2060 |
-
Furniture > Baby & Toddler Furniture > Cribs & Toddler Beds
|
2061 |
-
Furniture > Baby & Toddler Furniture > High Chair & Booster Seat Accessories
|
2062 |
-
Furniture > Baby & Toddler Furniture > High Chairs & Booster Seats
|
2063 |
-
Furniture > Beds & Accessories
|
2064 |
-
Furniture > Beds & Accessories > Bed & Bed Frame Accessories
|
2065 |
-
Furniture > Beds & Accessories > Beds & Bed Frames
|
2066 |
-
Furniture > Beds & Accessories > Headboards & Footboards
|
2067 |
-
Furniture > Beds & Accessories > Mattress Foundations
|
2068 |
-
Furniture > Beds & Accessories > Mattresses
|
2069 |
-
Furniture > Benches
|
2070 |
-
Furniture > Benches > Kitchen & Dining Benches
|
2071 |
-
Furniture > Benches > Storage & Entryway Benches
|
2072 |
-
Furniture > Benches > Vanity Benches
|
2073 |
-
Furniture > Cabinets & Storage
|
2074 |
-
Furniture > Cabinets & Storage > Armoires & Wardrobes
|
2075 |
-
Furniture > Cabinets & Storage > Buffets & Sideboards
|
2076 |
-
Furniture > Cabinets & Storage > China Cabinets & Hutches
|
2077 |
-
Furniture > Cabinets & Storage > Dressers
|
2078 |
-
Furniture > Cabinets & Storage > File Cabinets
|
2079 |
-
Furniture > Cabinets & Storage > Ironing Centers
|
2080 |
-
Furniture > Cabinets & Storage > Kitchen Cabinets
|
2081 |
-
Furniture > Cabinets & Storage > Magazine Racks
|
2082 |
-
Furniture > Cabinets & Storage > Media Storage Cabinets & Racks
|
2083 |
-
Furniture > Cabinets & Storage > Storage Cabinets & Lockers
|
2084 |
-
Furniture > Cabinets & Storage > Storage Chests
|
2085 |
-
Furniture > Cabinets & Storage > Storage Chests > Hope Chests
|
2086 |
-
Furniture > Cabinets & Storage > Storage Chests > Toy Chests
|
2087 |
-
Furniture > Cabinets & Storage > Vanities
|
2088 |
-
Furniture > Cabinets & Storage > Vanities > Bathroom Vanities
|
2089 |
-
Furniture > Cabinets & Storage > Vanities > Bedroom Vanities
|
2090 |
-
Furniture > Cabinets & Storage > Wine & Liquor Cabinets
|
2091 |
-
Furniture > Cabinets & Storage > Wine Racks
|
2092 |
-
Furniture > Carts & Islands
|
2093 |
-
Furniture > Carts & Islands > Kitchen & Dining Carts
|
2094 |
-
Furniture > Carts & Islands > Kitchen Islands
|
2095 |
-
Furniture > Chair Accessories
|
2096 |
-
Furniture > Chair Accessories > Hanging Chair Replacement Parts
|
2097 |
-
Furniture > Chairs
|
2098 |
-
Furniture > Chairs > Arm Chairs, Recliners & Sleeper Chairs
|
2099 |
-
Furniture > Chairs > Bean Bag Chairs
|
2100 |
-
Furniture > Chairs > Chaises
|
2101 |
-
Furniture > Chairs > Electric Massaging Chairs
|
2102 |
-
Furniture > Chairs > Floor Chairs
|
2103 |
-
Furniture > Chairs > Folding Chairs & Stools
|
2104 |
-
Furniture > Chairs > Gaming Chairs
|
2105 |
-
Furniture > Chairs > Hanging Chairs
|
2106 |
-
Furniture > Chairs > Kitchen & Dining Room Chairs
|
2107 |
-
Furniture > Chairs > Rocking Chairs
|
2108 |
-
Furniture > Chairs > Slipper Chairs
|
2109 |
-
Furniture > Chairs > Table & Bar Stools
|
2110 |
-
Furniture > Entertainment Centers & TV Stands
|
2111 |
-
Furniture > Furniture Sets
|
2112 |
-
Furniture > Furniture Sets > Bathroom Furniture Sets
|
2113 |
-
Furniture > Furniture Sets > Bedroom Furniture Sets
|
2114 |
-
Furniture > Furniture Sets > Kitchen & Dining Furniture Sets
|
2115 |
-
Furniture > Furniture Sets > Living Room Furniture Sets
|
2116 |
-
Furniture > Futon Frames
|
2117 |
-
Furniture > Futon Pads
|
2118 |
-
Furniture > Futons
|
2119 |
-
Furniture > Office Furniture
|
2120 |
-
Furniture > Office Furniture > Desks
|
2121 |
-
Furniture > Office Furniture > Office Chairs
|
2122 |
-
Furniture > Office Furniture > Office Furniture Sets
|
2123 |
-
Furniture > Office Furniture > Workspace Tables
|
2124 |
-
Furniture > Office Furniture > Workspace Tables > Art & Drafting Tables
|
2125 |
-
Furniture > Office Furniture > Workspace Tables > Conference Room Tables
|
2126 |
-
Furniture > Office Furniture > Workstations & Cubicles
|
2127 |
-
Furniture > Office Furniture Accessories
|
2128 |
-
Furniture > Office Furniture Accessories > Desk Parts & Accessories
|
2129 |
-
Furniture > Office Furniture Accessories > Office Chair Accessories
|
2130 |
-
Furniture > Office Furniture Accessories > Workstation & Cubicle Accessories
|
2131 |
-
Furniture > Ottomans
|
2132 |
-
Furniture > Outdoor Furniture
|
2133 |
-
Furniture > Outdoor Furniture > Outdoor Beds
|
2134 |
-
Furniture > Outdoor Furniture > Outdoor Furniture Sets
|
2135 |
-
Furniture > Outdoor Furniture > Outdoor Ottomans
|
2136 |
-
Furniture > Outdoor Furniture > Outdoor Seating
|
2137 |
-
Furniture > Outdoor Furniture > Outdoor Seating > Outdoor Benches
|
2138 |
-
Furniture > Outdoor Furniture > Outdoor Seating > Outdoor Chairs
|
2139 |
-
Furniture > Outdoor Furniture > Outdoor Seating > Outdoor Sectional Sofa Units
|
2140 |
-
Furniture > Outdoor Furniture > Outdoor Seating > Outdoor Sofas
|
2141 |
-
Furniture > Outdoor Furniture > Outdoor Seating > Sunloungers
|
2142 |
-
Furniture > Outdoor Furniture > Outdoor Storage Boxes
|
2143 |
-
Furniture > Outdoor Furniture > Outdoor Tables
|
2144 |
-
Furniture > Outdoor Furniture Accessories
|
2145 |
-
Furniture > Outdoor Furniture Accessories > Outdoor Furniture Covers
|
2146 |
-
Furniture > Room Divider Accessories
|
2147 |
-
Furniture > Room Dividers
|
2148 |
-
Furniture > Shelving
|
2149 |
-
Furniture > Shelving > Bookcases & Standing Shelves
|
2150 |
-
Furniture > Shelving > Wall Shelves & Ledges
|
2151 |
-
Furniture > Shelving Accessories
|
2152 |
-
Furniture > Shelving Accessories > Replacement Shelves
|
2153 |
-
Furniture > Sofa Accessories
|
2154 |
-
Furniture > Sofa Accessories > Chair & Sofa Supports
|
2155 |
-
Furniture > Sofa Accessories > Sectional Sofa Units
|
2156 |
-
Furniture > Sofas
|
2157 |
-
Furniture > Table Accessories
|
2158 |
-
Furniture > Table Accessories > Table Legs
|
2159 |
-
Furniture > Table Accessories > Table Tops
|
2160 |
-
Furniture > Tables
|
2161 |
-
Furniture > Tables > Accent Tables
|
2162 |
-
Furniture > Tables > Accent Tables > Coffee Tables
|
2163 |
-
Furniture > Tables > Accent Tables > End Tables
|
2164 |
-
Furniture > Tables > Accent Tables > Sofa Tables
|
2165 |
-
Furniture > Tables > Activity Tables
|
2166 |
-
Furniture > Tables > Folding Tables
|
2167 |
-
Furniture > Tables > Kitchen & Dining Room Tables
|
2168 |
-
Furniture > Tables > Kotatsu
|
2169 |
-
Furniture > Tables > Nightstands
|
2170 |
-
Furniture > Tables > Poker & Game Tables
|
2171 |
-
Furniture > Tables > Sewing Machine Tables
|
2172 |
-
Hardware
|
2173 |
-
Hardware > Building Consumables
|
2174 |
-
Hardware > Building Consumables > Chemicals
|
2175 |
-
Hardware > Building Consumables > Chemicals > Acid Neutralizers
|
2176 |
-
Hardware > Building Consumables > Chemicals > Ammonia
|
2177 |
-
Hardware > Building Consumables > Chemicals > Chimney Cleaners
|
2178 |
-
Hardware > Building Consumables > Chemicals > Concrete & Masonry Cleaners
|
2179 |
-
Hardware > Building Consumables > Chemicals > De-icers
|
2180 |
-
Hardware > Building Consumables > Chemicals > Deck & Fence Cleaners
|
2181 |
-
Hardware > Building Consumables > Chemicals > Drain Cleaners
|
2182 |
-
Hardware > Building Consumables > Chemicals > Electrical Freeze Sprays
|
2183 |
-
Hardware > Building Consumables > Chemicals > Lighter Fluid
|
2184 |
-
Hardware > Building Consumables > Chemicals > Septic Tank & Cesspool Treatments
|
2185 |
-
Hardware > Building Consumables > Hardware Glue & Adhesives
|
2186 |
-
Hardware > Building Consumables > Hardware Tape
|
2187 |
-
Hardware > Building Consumables > Lubricants
|
2188 |
-
Hardware > Building Consumables > Masonry Consumables
|
2189 |
-
Hardware > Building Consumables > Masonry Consumables > Bricks & Concrete Blocks
|
2190 |
-
Hardware > Building Consumables > Masonry Consumables > Cement, Mortar & Concrete Mixes
|
2191 |
-
Hardware > Building Consumables > Masonry Consumables > Grout
|
2192 |
-
Hardware > Building Consumables > Painting Consumables
|
2193 |
-
Hardware > Building Consumables > Painting Consumables > Paint
|
2194 |
-
Hardware > Building Consumables > Painting Consumables > Paint Binders
|
2195 |
-
Hardware > Building Consumables > Painting Consumables > Primers
|
2196 |
-
Hardware > Building Consumables > Painting Consumables > Stains
|
2197 |
-
Hardware > Building Consumables > Painting Consumables > Varnishes & Finishes
|
2198 |
-
Hardware > Building Consumables > Plumbing Primer
|
2199 |
-
Hardware > Building Consumables > Protective Coatings & Sealants
|
2200 |
-
Hardware > Building Consumables > Solder & Flux
|
2201 |
-
Hardware > Building Consumables > Solvents, Strippers & Thinners
|
2202 |
-
Hardware > Building Consumables > Wall Patching Compounds & Plaster
|
2203 |
-
Hardware > Building Materials
|
2204 |
-
Hardware > Building Materials > Countertops
|
2205 |
-
Hardware > Building Materials > Door Hardware
|
2206 |
-
Hardware > Building Materials > Door Hardware > Door Bells & Chimes
|
2207 |
-
Hardware > Building Materials > Door Hardware > Door Closers
|
2208 |
-
Hardware > Building Materials > Door Hardware > Door Frames
|
2209 |
-
Hardware > Building Materials > Door Hardware > Door Keyhole Escutcheons
|
2210 |
-
Hardware > Building Materials > Door Hardware > Door Knobs & Handles
|
2211 |
-
Hardware > Building Materials > Door Hardware > Door Knockers
|
2212 |
-
Hardware > Building Materials > Door Hardware > Door Push Plates
|
2213 |
-
Hardware > Building Materials > Door Hardware > Door Stops
|
2214 |
-
Hardware > Building Materials > Door Hardware > Door Strikes
|
2215 |
-
Hardware > Building Materials > Doors
|
2216 |
-
Hardware > Building Materials > Doors > Garage Doors
|
2217 |
-
Hardware > Building Materials > Doors > Home Doors
|
2218 |
-
Hardware > Building Materials > Drywall
|
2219 |
-
Hardware > Building Materials > Flooring & Carpet
|
2220 |
-
Hardware > Building Materials > Glass
|
2221 |
-
Hardware > Building Materials > Handrails & Railing Systems
|
2222 |
-
Hardware > Building Materials > Hatches
|
2223 |
-
Hardware > Building Materials > Insulation
|
2224 |
-
Hardware > Building Materials > Lumber & Sheet Stock
|
2225 |
-
Hardware > Building Materials > Molding
|
2226 |
-
Hardware > Building Materials > Rebar & Remesh
|
2227 |
-
Hardware > Building Materials > Roofing
|
2228 |
-
Hardware > Building Materials > Roofing > Gutter Accessories
|
2229 |
-
Hardware > Building Materials > Roofing > Gutters
|
2230 |
-
Hardware > Building Materials > Roofing > Roof Flashings
|
2231 |
-
Hardware > Building Materials > Roofing > Roofing Shingles & Tiles
|
2232 |
-
Hardware > Building Materials > Shutters
|
2233 |
-
Hardware > Building Materials > Siding
|
2234 |
-
Hardware > Building Materials > Sound Dampening Panels & Foam
|
2235 |
-
Hardware > Building Materials > Staircases
|
2236 |
-
Hardware > Building Materials > Wall & Ceiling Tile
|
2237 |
-
Hardware > Building Materials > Wall Paneling
|
2238 |
-
Hardware > Building Materials > Weather Stripping & Weatherization Supplies
|
2239 |
-
Hardware > Building Materials > Window Hardware
|
2240 |
-
Hardware > Building Materials > Window Hardware > Window Cranks
|
2241 |
-
Hardware > Building Materials > Window Hardware > Window Frames
|
2242 |
-
Hardware > Building Materials > Windows
|
2243 |
-
Hardware > Fencing & Barriers
|
2244 |
-
Hardware > Fencing & Barriers > Fence & Gate Accessories
|
2245 |
-
Hardware > Fencing & Barriers > Fence Panels
|
2246 |
-
Hardware > Fencing & Barriers > Fence Pickets
|
2247 |
-
Hardware > Fencing & Barriers > Fence Posts & Rails
|
2248 |
-
Hardware > Fencing & Barriers > Garden Borders & Edging
|
2249 |
-
Hardware > Fencing & Barriers > Gates
|
2250 |
-
Hardware > Fencing & Barriers > Lattice
|
2251 |
-
Hardware > Fencing & Barriers > Safety & Crowd Control Barriers
|
2252 |
-
Hardware > Fuel
|
2253 |
-
Hardware > Fuel > Home Heating Oil
|
2254 |
-
Hardware > Fuel > Kerosene
|
2255 |
-
Hardware > Fuel > Kerosene > Clear Kerosene
|
2256 |
-
Hardware > Fuel > Kerosene > Dyed Kerosene
|
2257 |
-
Hardware > Fuel > Propane
|
2258 |
-
Hardware > Fuel Containers & Tanks
|
2259 |
-
Hardware > Hardware Accessories
|
2260 |
-
Hardware > Hardware Accessories > Brackets & Reinforcement Braces
|
2261 |
-
Hardware > Hardware Accessories > Cabinet Hardware
|
2262 |
-
Hardware > Hardware Accessories > Cabinet Hardware > Cabinet & Furniture Keyhole Escutcheons
|
2263 |
-
Hardware > Hardware Accessories > Cabinet Hardware > Cabinet Backplates
|
2264 |
-
Hardware > Hardware Accessories > Cabinet Hardware > Cabinet Catches
|
2265 |
-
Hardware > Hardware Accessories > Cabinet Hardware > Cabinet Doors
|
2266 |
-
Hardware > Hardware Accessories > Cabinet Hardware > Cabinet Knobs & Handles
|
2267 |
-
Hardware > Hardware Accessories > Casters
|
2268 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope
|
2269 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Bungee Cords
|
2270 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Chains
|
2271 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Pull Chains
|
2272 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Ropes & Hardware Cable
|
2273 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Tie Down Straps
|
2274 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Twine
|
2275 |
-
Hardware > Hardware Accessories > Chain, Wire & Rope > Utility Wire
|
2276 |
-
Hardware > Hardware Accessories > Coils
|
2277 |
-
Hardware > Hardware Accessories > Concrete Molds
|
2278 |
-
Hardware > Hardware Accessories > Dowel Pins & Rods
|
2279 |
-
Hardware > Hardware Accessories > Drawer Slides
|
2280 |
-
Hardware > Hardware Accessories > Drop Cloths
|
2281 |
-
Hardware > Hardware Accessories > Filters & Screens
|
2282 |
-
Hardware > Hardware Accessories > Flagging & Caution Tape
|
2283 |
-
Hardware > Hardware Accessories > Gas Hoses
|
2284 |
-
Hardware > Hardware Accessories > Ground Spikes
|
2285 |
-
Hardware > Hardware Accessories > Hardware Fasteners
|
2286 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Drywall Anchors
|
2287 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Nails
|
2288 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Nuts & Bolts
|
2289 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Rivets
|
2290 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Screw Posts
|
2291 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Screws
|
2292 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Threaded Rods
|
2293 |
-
Hardware > Hardware Accessories > Hardware Fasteners > Washers
|
2294 |
-
Hardware > Hardware Accessories > Hinges
|
2295 |
-
Hardware > Hardware Accessories > Hooks, Buckles & Fasteners
|
2296 |
-
Hardware > Hardware Accessories > Hooks, Buckles & Fasteners > Chain Connectors & Links
|
2297 |
-
Hardware > Hardware Accessories > Hooks, Buckles & Fasteners > Gear Ties
|
2298 |
-
Hardware > Hardware Accessories > Hooks, Buckles & Fasteners > Lifting Hooks, Clamps & Shackles
|
2299 |
-
Hardware > Hardware Accessories > Hooks, Buckles & Fasteners > Utility Buckles
|
2300 |
-
Hardware > Hardware Accessories > Lubrication Hoses
|
2301 |
-
Hardware > Hardware Accessories > Metal Casting Molds
|
2302 |
-
Hardware > Hardware Accessories > Moving & Soundproofing Blankets & Covers
|
2303 |
-
Hardware > Hardware Accessories > Pneumatic Hoses
|
2304 |
-
Hardware > Hardware Accessories > Post Base Plates
|
2305 |
-
Hardware > Hardware Accessories > Springs
|
2306 |
-
Hardware > Hardware Accessories > Tarps
|
2307 |
-
Hardware > Hardware Accessories > Tool Storage & Organization
|
2308 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Garden Hose Storage
|
2309 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Tool & Equipment Belts
|
2310 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Tool Bags
|
2311 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Tool Boxes
|
2312 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Tool Cabinets & Chests
|
2313 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Tool Organizer Liners & Inserts
|
2314 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Tool Sheaths
|
2315 |
-
Hardware > Hardware Accessories > Tool Storage & Organization > Work Benches
|
2316 |
-
Hardware > Hardware Accessories > Wall Jacks & Braces
|
2317 |
-
Hardware > Hardware Pumps
|
2318 |
-
Hardware > Hardware Pumps > Home Appliance Pumps
|
2319 |
-
Hardware > Hardware Pumps > Pool, Fountain & Pond Pumps
|
2320 |
-
Hardware > Hardware Pumps > Sprinkler, Booster & Irrigation System Pumps
|
2321 |
-
Hardware > Hardware Pumps > Sump, Sewage & Effluent Pumps
|
2322 |
-
Hardware > Hardware Pumps > Utility Pumps
|
2323 |
-
Hardware > Hardware Pumps > Well Pumps & Systems
|
2324 |
-
Hardware > Heating, Ventilation & Air Conditioning
|
2325 |
-
Hardware > Heating, Ventilation & Air Conditioning > Air & Filter Dryers
|
2326 |
-
Hardware > Heating, Ventilation & Air Conditioning > Air Ducts
|
2327 |
-
Hardware > Heating, Ventilation & Air Conditioning > HVAC Controls
|
2328 |
-
Hardware > Heating, Ventilation & Air Conditioning > HVAC Controls > Control Panels
|
2329 |
-
Hardware > Heating, Ventilation & Air Conditioning > HVAC Controls > Humidistats
|
2330 |
-
Hardware > Heating, Ventilation & Air Conditioning > HVAC Controls > Thermostats
|
2331 |
-
Hardware > Heating, Ventilation & Air Conditioning > Vents & Flues
|
2332 |
-
Hardware > Locks & Keys
|
2333 |
-
Hardware > Locks & Keys > Key Blanks
|
2334 |
-
Hardware > Locks & Keys > Key Caps
|
2335 |
-
Hardware > Locks & Keys > Key Card Entry Systems
|
2336 |
-
Hardware > Locks & Keys > Locks & Latches
|
2337 |
-
Hardware > Plumbing
|
2338 |
-
Hardware > Plumbing > Plumbing Fittings & Supports
|
2339 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Gaskets & O-Rings
|
2340 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > In-Wall Carriers & Mounting Frames
|
2341 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Nozzles
|
2342 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Pipe Adapters & Bushings
|
2343 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Pipe Caps & Plugs
|
2344 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Pipe Connectors
|
2345 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Plumbing Flanges
|
2346 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Plumbing Pipe Clamps
|
2347 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Plumbing Regulators
|
2348 |
-
Hardware > Plumbing > Plumbing Fittings & Supports > Plumbing Valves
|
2349 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts
|
2350 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Bathtub Accessories
|
2351 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Bathtub Accessories > Bathtub Bases & Feet
|
2352 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Bathtub Accessories > Bathtub Skirts
|
2353 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Bathtub Accessories > Bathtub Spouts
|
2354 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components
|
2355 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Drain Covers & Strainers
|
2356 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Drain Frames
|
2357 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Drain Liners
|
2358 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Drain Openers
|
2359 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Drain Rods
|
2360 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Plumbing Traps
|
2361 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drain Components > Plumbing Wastes
|
2362 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Drains
|
2363 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Faucet Accessories
|
2364 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Faucet Accessories > Faucet Aerators
|
2365 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Faucet Accessories > Faucet Handles & Controls
|
2366 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Fixture Plates
|
2367 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts
|
2368 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Bathtub & Shower Jets
|
2369 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Electric & Power Showers
|
2370 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Arms & Connectors
|
2371 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Bases
|
2372 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Columns
|
2373 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Doors & Enclosures
|
2374 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Heads
|
2375 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Walls & Surrounds
|
2376 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Shower Parts > Shower Water Filters
|
2377 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Sink Accessories
|
2378 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Sink Accessories > Sink Legs
|
2379 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories
|
2380 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Ballcocks & Flappers
|
2381 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Bidet Faucets & Sprayers
|
2382 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet & Bidet Seats
|
2383 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet Seat Covers
|
2384 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet Seat Lid Covers
|
2385 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet Tank Covers
|
2386 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet Tank Levers
|
2387 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet Tanks
|
2388 |
-
Hardware > Plumbing > Plumbing Fixture Hardware & Parts > Toilet & Bidet Accessories > Toilet Trim
|
2389 |
-
Hardware > Plumbing > Plumbing Fixtures
|
2390 |
-
Hardware > Plumbing > Plumbing Fixtures > Bathroom Suites
|
2391 |
-
Hardware > Plumbing > Plumbing Fixtures > Bathtubs
|
2392 |
-
Hardware > Plumbing > Plumbing Fixtures > Faucets
|
2393 |
-
Hardware > Plumbing > Plumbing Fixtures > Shower Stalls & Kits
|
2394 |
-
Hardware > Plumbing > Plumbing Fixtures > Sinks
|
2395 |
-
Hardware > Plumbing > Plumbing Fixtures > Sinks > Bathroom Sinks
|
2396 |
-
Hardware > Plumbing > Plumbing Fixtures > Sinks > Kitchen & Utility Sinks
|
2397 |
-
Hardware > Plumbing > Plumbing Fixtures > Toilets & Bidets
|
2398 |
-
Hardware > Plumbing > Plumbing Fixtures > Toilets & Bidets > Bidets
|
2399 |
-
Hardware > Plumbing > Plumbing Fixtures > Toilets & Bidets > Toilets
|
2400 |
-
Hardware > Plumbing > Plumbing Fixtures > Toilets & Bidets > Urinals
|
2401 |
-
Hardware > Plumbing > Plumbing Hoses & Supply Lines
|
2402 |
-
Hardware > Plumbing > Plumbing Pipes
|
2403 |
-
Hardware > Plumbing > Plumbing Repair Kits
|
2404 |
-
Hardware > Plumbing > Water Dispensing & Filtration
|
2405 |
-
Hardware > Plumbing > Water Dispensing & Filtration > In-Line Water Filters
|
2406 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Dispensers
|
2407 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Dispensers > Drinking Fountains
|
2408 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Dispensers > Water Chillers
|
2409 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Distillers
|
2410 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Filtration Accessories
|
2411 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Filtration Accessories > Water Filter Cartridges
|
2412 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Filtration Accessories > Water Filter Housings
|
2413 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Softener Salt
|
2414 |
-
Hardware > Plumbing > Water Dispensing & Filtration > Water Softeners
|
2415 |
-
Hardware > Plumbing > Water Levelers
|
2416 |
-
Hardware > Plumbing > Water Timers
|
2417 |
-
Hardware > Plumbing > Well Supplies
|
2418 |
-
Hardware > Power & Electrical Supplies
|
2419 |
-
Hardware > Power & Electrical Supplies > Armatures, Rotors & Stators
|
2420 |
-
Hardware > Power & Electrical Supplies > Ballasts & Starters
|
2421 |
-
Hardware > Power & Electrical Supplies > Carbon Brushes
|
2422 |
-
Hardware > Power & Electrical Supplies > Circuit Breaker Panels
|
2423 |
-
Hardware > Power & Electrical Supplies > Conduit & Housings
|
2424 |
-
Hardware > Power & Electrical Supplies > Conduit & Housings > Electrical Conduit
|
2425 |
-
Hardware > Power & Electrical Supplies > Conduit & Housings > Heat-Shrink Tubing
|
2426 |
-
Hardware > Power & Electrical Supplies > Electrical Motors
|
2427 |
-
Hardware > Power & Electrical Supplies > Electrical Mount Boxes & Brackets
|
2428 |
-
Hardware > Power & Electrical Supplies > Electrical Plug Caps
|
2429 |
-
Hardware > Power & Electrical Supplies > Electrical Switches
|
2430 |
-
Hardware > Power & Electrical Supplies > Electrical Switches > Light Switches
|
2431 |
-
Hardware > Power & Electrical Supplies > Electrical Switches > Specialty Electrical Switches & Relays
|
2432 |
-
Hardware > Power & Electrical Supplies > Electrical Wires & Cable
|
2433 |
-
Hardware > Power & Electrical Supplies > Extension Cord Accessories
|
2434 |
-
Hardware > Power & Electrical Supplies > Extension Cords
|
2435 |
-
Hardware > Power & Electrical Supplies > Generator Accessories
|
2436 |
-
Hardware > Power & Electrical Supplies > Generators
|
2437 |
-
Hardware > Power & Electrical Supplies > Home Automation Kits
|
2438 |
-
Hardware > Power & Electrical Supplies > Phone & Data Jacks
|
2439 |
-
Hardware > Power & Electrical Supplies > Power Converters
|
2440 |
-
Hardware > Power & Electrical Supplies > Power Inlets
|
2441 |
-
Hardware > Power & Electrical Supplies > Power Inverters
|
2442 |
-
Hardware > Power & Electrical Supplies > Power Outlets & Sockets
|
2443 |
-
Hardware > Power & Electrical Supplies > Solar Energy Kits
|
2444 |
-
Hardware > Power & Electrical Supplies > Solar Panels
|
2445 |
-
Hardware > Power & Electrical Supplies > Voltage Transformers & Regulators
|
2446 |
-
Hardware > Power & Electrical Supplies > Wall Plates & Covers
|
2447 |
-
Hardware > Power & Electrical Supplies > Wall Socket Controls & Sensors
|
2448 |
-
Hardware > Power & Electrical Supplies > Wire Caps & Nuts
|
2449 |
-
Hardware > Power & Electrical Supplies > Wire Terminals & Connectors
|
2450 |
-
Hardware > Small Engines
|
2451 |
-
Hardware > Storage Tanks
|
2452 |
-
Hardware > Tool Accessories
|
2453 |
-
Hardware > Tool Accessories > Abrasive Blaster Accessories
|
2454 |
-
Hardware > Tool Accessories > Abrasive Blaster Accessories > Sandblasting Cabinets
|
2455 |
-
Hardware > Tool Accessories > Axe Accessories
|
2456 |
-
Hardware > Tool Accessories > Axe Accessories > Axe Handles
|
2457 |
-
Hardware > Tool Accessories > Axe Accessories > Axe Heads
|
2458 |
-
Hardware > Tool Accessories > Cutter Accessories
|
2459 |
-
Hardware > Tool Accessories > Cutter Accessories > Nibbler Dies
|
2460 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories
|
2461 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories > Drill & Screwdriver Bits
|
2462 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories > Drill Bit Extensions
|
2463 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories > Drill Bit Sharpeners
|
2464 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories > Drill Chucks
|
2465 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories > Drill Stands & Guides
|
2466 |
-
Hardware > Tool Accessories > Drill & Screwdriver Accessories > Hole Saws
|
2467 |
-
Hardware > Tool Accessories > Driver Accessories
|
2468 |
-
Hardware > Tool Accessories > Flashlight Accessories
|
2469 |
-
Hardware > Tool Accessories > Grinder Accessories
|
2470 |
-
Hardware > Tool Accessories > Grinder Accessories > Grinding Wheels & Points
|
2471 |
-
Hardware > Tool Accessories > Hammer Accessories
|
2472 |
-
Hardware > Tool Accessories > Hammer Accessories > Air Hammer Accessories
|
2473 |
-
Hardware > Tool Accessories > Hammer Accessories > Hammer Handles
|
2474 |
-
Hardware > Tool Accessories > Hammer Accessories > Hammer Heads
|
2475 |
-
Hardware > Tool Accessories > Industrial Staples
|
2476 |
-
Hardware > Tool Accessories > Jigs
|
2477 |
-
Hardware > Tool Accessories > Magnetizers & Demagnetizers
|
2478 |
-
Hardware > Tool Accessories > Mattock & Pickaxe Accessories
|
2479 |
-
Hardware > Tool Accessories > Mattock & Pickaxe Accessories > Mattock & Pickaxe Handles
|
2480 |
-
Hardware > Tool Accessories > Measuring Tool & Sensor Accessories
|
2481 |
-
Hardware > Tool Accessories > Measuring Tool & Sensor Accessories > Electrical Testing Tool Accessories
|
2482 |
-
Hardware > Tool Accessories > Measuring Tool & Sensor Accessories > Gas Detector Accessories
|
2483 |
-
Hardware > Tool Accessories > Measuring Tool & Sensor Accessories > Measuring Scale Accessories
|
2484 |
-
Hardware > Tool Accessories > Measuring Tool & Sensor Accessories > Multimeter Accessories
|
2485 |
-
Hardware > Tool Accessories > Mixing Tool Paddles
|
2486 |
-
Hardware > Tool Accessories > Paint Tool Accessories
|
2487 |
-
Hardware > Tool Accessories > Paint Tool Accessories > Airbrush Accessories
|
2488 |
-
Hardware > Tool Accessories > Paint Tool Accessories > Paint Brush Cleaning Solutions
|
2489 |
-
Hardware > Tool Accessories > Paint Tool Accessories > Paint Roller Accessories
|
2490 |
-
Hardware > Tool Accessories > Power Tool Batteries
|
2491 |
-
Hardware > Tool Accessories > Power Tool Chargers
|
2492 |
-
Hardware > Tool Accessories > Router Accessories
|
2493 |
-
Hardware > Tool Accessories > Router Accessories > Router Bits
|
2494 |
-
Hardware > Tool Accessories > Router Accessories > Router Tables
|
2495 |
-
Hardware > Tool Accessories > Sanding Accessories
|
2496 |
-
Hardware > Tool Accessories > Sanding Accessories > Sandpaper & Sanding Sponges
|
2497 |
-
Hardware > Tool Accessories > Saw Accessories
|
2498 |
-
Hardware > Tool Accessories > Saw Accessories > Band Saw Accessories
|
2499 |
-
Hardware > Tool Accessories > Saw Accessories > Handheld Circular Saw Accessories
|
2500 |
-
Hardware > Tool Accessories > Saw Accessories > Jigsaw Accessories
|
2501 |
-
Hardware > Tool Accessories > Saw Accessories > Miter Saw Accessories
|
2502 |
-
Hardware > Tool Accessories > Saw Accessories > Table Saw Accessories
|
2503 |
-
Hardware > Tool Accessories > Shaper Accessories
|
2504 |
-
Hardware > Tool Accessories > Shaper Accessories > Shaper Cutters
|
2505 |
-
Hardware > Tool Accessories > Soldering Iron Accessories
|
2506 |
-
Hardware > Tool Accessories > Soldering Iron Accessories > Soldering Iron Stands
|
2507 |
-
Hardware > Tool Accessories > Soldering Iron Accessories > Soldering Iron Tips
|
2508 |
-
Hardware > Tool Accessories > Tool Blades
|
2509 |
-
Hardware > Tool Accessories > Tool Blades > Cutter & Scraper Blades
|
2510 |
-
Hardware > Tool Accessories > Tool Blades > Saw Blades
|
2511 |
-
Hardware > Tool Accessories > Tool Handle Wedges
|
2512 |
-
Hardware > Tool Accessories > Tool Safety Tethers
|
2513 |
-
Hardware > Tool Accessories > Tool Sockets
|
2514 |
-
Hardware > Tool Accessories > Tool Stands
|
2515 |
-
Hardware > Tool Accessories > Tool Stands > Saw Stands
|
2516 |
-
Hardware > Tool Accessories > Wedge Tools
|
2517 |
-
Hardware > Tool Accessories > Welding Accessories
|
2518 |
-
Hardware > Tools
|
2519 |
-
Hardware > Tools > Abrasive Blasters
|
2520 |
-
Hardware > Tools > Anvils
|
2521 |
-
Hardware > Tools > Axes
|
2522 |
-
Hardware > Tools > Carpentry Jointers
|
2523 |
-
Hardware > Tools > Carving Chisels & Gouges
|
2524 |
-
Hardware > Tools > Caulking Tools
|
2525 |
-
Hardware > Tools > Chimney Brushes
|
2526 |
-
Hardware > Tools > Compactors
|
2527 |
-
Hardware > Tools > Compressors
|
2528 |
-
Hardware > Tools > Concrete Brooms
|
2529 |
-
Hardware > Tools > Cutters
|
2530 |
-
Hardware > Tools > Cutters > Bolt Cutters
|
2531 |
-
Hardware > Tools > Cutters > Glass Cutters
|
2532 |
-
Hardware > Tools > Cutters > Handheld Metal Shears & Nibblers
|
2533 |
-
Hardware > Tools > Cutters > Nippers
|
2534 |
-
Hardware > Tools > Cutters > Pipe Cutters
|
2535 |
-
Hardware > Tools > Cutters > Rebar Cutters
|
2536 |
-
Hardware > Tools > Cutters > Tile & Shingle Cutters
|
2537 |
-
Hardware > Tools > Cutters > Utility Knives
|
2538 |
-
Hardware > Tools > Deburrers
|
2539 |
-
Hardware > Tools > Dollies & Hand Trucks
|
2540 |
-
Hardware > Tools > Drills
|
2541 |
-
Hardware > Tools > Drills > Augers
|
2542 |
-
Hardware > Tools > Drills > Drill Presses
|
2543 |
-
Hardware > Tools > Drills > Handheld Power Drills
|
2544 |
-
Hardware > Tools > Drills > Mortisers
|
2545 |
-
Hardware > Tools > Drills > Pneumatic Drills
|
2546 |
-
Hardware > Tools > Electrician Fish Tape
|
2547 |
-
Hardware > Tools > Flashlights & Headlamps
|
2548 |
-
Hardware > Tools > Flashlights & Headlamps > Flashlights
|
2549 |
-
Hardware > Tools > Flashlights & Headlamps > Headlamps
|
2550 |
-
Hardware > Tools > Grease Guns
|
2551 |
-
Hardware > Tools > Grinders
|
2552 |
-
Hardware > Tools > Grips
|
2553 |
-
Hardware > Tools > Hammers
|
2554 |
-
Hardware > Tools > Hammers > Manual Hammers
|
2555 |
-
Hardware > Tools > Hammers > Powered Hammers
|
2556 |
-
Hardware > Tools > Handheld Power Mixers
|
2557 |
-
Hardware > Tools > Hardware Torches
|
2558 |
-
Hardware > Tools > Heat Guns
|
2559 |
-
Hardware > Tools > Impact Wrenches & Drivers
|
2560 |
-
Hardware > Tools > Industrial Vibrators
|
2561 |
-
Hardware > Tools > Inspection Mirrors
|
2562 |
-
Hardware > Tools > Ladders & Scaffolding
|
2563 |
-
Hardware > Tools > Ladders & Scaffolding > Ladder Carts
|
2564 |
-
Hardware > Tools > Ladders & Scaffolding > Ladders
|
2565 |
-
Hardware > Tools > Ladders & Scaffolding > Scaffolding
|
2566 |
-
Hardware > Tools > Ladders & Scaffolding > Step Stools
|
2567 |
-
Hardware > Tools > Ladders & Scaffolding > Work Platforms
|
2568 |
-
Hardware > Tools > Lathes
|
2569 |
-
Hardware > Tools > Light Bulb Changers
|
2570 |
-
Hardware > Tools > Lighters & Matches
|
2571 |
-
Hardware > Tools > Log Splitters
|
2572 |
-
Hardware > Tools > Magnetic Sweepers
|
2573 |
-
Hardware > Tools > Marking Tools
|
2574 |
-
Hardware > Tools > Masonry Tools
|
2575 |
-
Hardware > Tools > Masonry Tools > Brick Tools
|
2576 |
-
Hardware > Tools > Masonry Tools > Cement Mixers
|
2577 |
-
Hardware > Tools > Masonry Tools > Construction Lines
|
2578 |
-
Hardware > Tools > Masonry Tools > Floats
|
2579 |
-
Hardware > Tools > Masonry Tools > Grout Sponges
|
2580 |
-
Hardware > Tools > Masonry Tools > Masonry Edgers & Groovers
|
2581 |
-
Hardware > Tools > Masonry Tools > Masonry Jointers
|
2582 |
-
Hardware > Tools > Masonry Tools > Masonry Trowels
|
2583 |
-
Hardware > Tools > Masonry Tools > Power Trowels
|
2584 |
-
Hardware > Tools > Mattocks & Pickaxes
|
2585 |
-
Hardware > Tools > Measuring Tools & Sensors
|
2586 |
-
Hardware > Tools > Measuring Tools & Sensors > Air Quality Meters
|
2587 |
-
Hardware > Tools > Measuring Tools & Sensors > Altimeters
|
2588 |
-
Hardware > Tools > Measuring Tools & Sensors > Anemometers
|
2589 |
-
Hardware > Tools > Measuring Tools & Sensors > Barometers
|
2590 |
-
Hardware > Tools > Measuring Tools & Sensors > Calipers
|
2591 |
-
Hardware > Tools > Measuring Tools & Sensors > Cruising Rods
|
2592 |
-
Hardware > Tools > Measuring Tools & Sensors > Distance Meters
|
2593 |
-
Hardware > Tools > Measuring Tools & Sensors > Dividers
|
2594 |
-
Hardware > Tools > Measuring Tools & Sensors > Electrical Testing Tools
|
2595 |
-
Hardware > Tools > Measuring Tools & Sensors > Flow Meters & Controllers
|
2596 |
-
Hardware > Tools > Measuring Tools & Sensors > Gas Detectors
|
2597 |
-
Hardware > Tools > Measuring Tools & Sensors > Gauges
|
2598 |
-
Hardware > Tools > Measuring Tools & Sensors > Geiger Counters
|
2599 |
-
Hardware > Tools > Measuring Tools & Sensors > Hygrometers
|
2600 |
-
Hardware > Tools > Measuring Tools & Sensors > Infrared Thermometers
|
2601 |
-
Hardware > Tools > Measuring Tools & Sensors > Knife Guides
|
2602 |
-
Hardware > Tools > Measuring Tools & Sensors > Levels
|
2603 |
-
Hardware > Tools > Measuring Tools & Sensors > Levels > Bubble Levels
|
2604 |
-
Hardware > Tools > Measuring Tools & Sensors > Levels > Laser Levels
|
2605 |
-
Hardware > Tools > Measuring Tools & Sensors > Levels > Sight Levels
|
2606 |
-
Hardware > Tools > Measuring Tools & Sensors > Measuring Scales
|
2607 |
-
Hardware > Tools > Measuring Tools & Sensors > Measuring Wheels
|
2608 |
-
Hardware > Tools > Measuring Tools & Sensors > Moisture Meters
|
2609 |
-
Hardware > Tools > Measuring Tools & Sensors > Probes & Finders
|
2610 |
-
Hardware > Tools > Measuring Tools & Sensors > Protractors
|
2611 |
-
Hardware > Tools > Measuring Tools & Sensors > Rebar Locators
|
2612 |
-
Hardware > Tools > Measuring Tools & Sensors > Rulers
|
2613 |
-
Hardware > Tools > Measuring Tools & Sensors > Seismometer
|
2614 |
-
Hardware > Tools > Measuring Tools & Sensors > Sound Meters
|
2615 |
-
Hardware > Tools > Measuring Tools & Sensors > Squares
|
2616 |
-
Hardware > Tools > Measuring Tools & Sensors > Straight Edges
|
2617 |
-
Hardware > Tools > Measuring Tools & Sensors > Stud Sensors
|
2618 |
-
Hardware > Tools > Measuring Tools & Sensors > Tape Measures
|
2619 |
-
Hardware > Tools > Measuring Tools & Sensors > Theodolites
|
2620 |
-
Hardware > Tools > Measuring Tools & Sensors > Thermal Imaging Cameras
|
2621 |
-
Hardware > Tools > Measuring Tools & Sensors > Thermocouples & Thermopiles
|
2622 |
-
Hardware > Tools > Measuring Tools & Sensors > Transducers
|
2623 |
-
Hardware > Tools > Measuring Tools & Sensors > UV Light Meters
|
2624 |
-
Hardware > Tools > Measuring Tools & Sensors > Vibration Meters
|
2625 |
-
Hardware > Tools > Measuring Tools & Sensors > Weather Forecasters & Stations
|
2626 |
-
Hardware > Tools > Measuring Tools & Sensors > pH Meters
|
2627 |
-
Hardware > Tools > Milling Machines
|
2628 |
-
Hardware > Tools > Multifunction Power Tools
|
2629 |
-
Hardware > Tools > Nail Pullers
|
2630 |
-
Hardware > Tools > Nailers & Staplers
|
2631 |
-
Hardware > Tools > Oil Filter Drains
|
2632 |
-
Hardware > Tools > Paint Tools
|
2633 |
-
Hardware > Tools > Paint Tools > Airbrushes
|
2634 |
-
Hardware > Tools > Paint Tools > Paint Brushes
|
2635 |
-
Hardware > Tools > Paint Tools > Paint Edgers
|
2636 |
-
Hardware > Tools > Paint Tools > Paint Rollers
|
2637 |
-
Hardware > Tools > Paint Tools > Paint Shakers
|
2638 |
-
Hardware > Tools > Paint Tools > Paint Sponges
|
2639 |
-
Hardware > Tools > Paint Tools > Paint Sprayers
|
2640 |
-
Hardware > Tools > Paint Tools > Paint Strainers
|
2641 |
-
Hardware > Tools > Paint Tools > Paint Trays
|
2642 |
-
Hardware > Tools > Pickup Tools
|
2643 |
-
Hardware > Tools > Pipe & Bar Benders
|
2644 |
-
Hardware > Tools > Pipe & Tube Cleaners
|
2645 |
-
Hardware > Tools > Pipe Brushes
|
2646 |
-
Hardware > Tools > Planers
|
2647 |
-
Hardware > Tools > Planes
|
2648 |
-
Hardware > Tools > Pliers
|
2649 |
-
Hardware > Tools > Plungers
|
2650 |
-
Hardware > Tools > Polishers & Buffers
|
2651 |
-
Hardware > Tools > Post Hole Diggers
|
2652 |
-
Hardware > Tools > Pry Bars
|
2653 |
-
Hardware > Tools > Punches & Awls
|
2654 |
-
Hardware > Tools > Putty Knives & Scrapers
|
2655 |
-
Hardware > Tools > Reamers
|
2656 |
-
Hardware > Tools > Riveting Tools
|
2657 |
-
Hardware > Tools > Riveting Tools > Rivet Guns
|
2658 |
-
Hardware > Tools > Riveting Tools > Rivet Pliers
|
2659 |
-
Hardware > Tools > Routing Tools
|
2660 |
-
Hardware > Tools > Sanders
|
2661 |
-
Hardware > Tools > Sanding Blocks
|
2662 |
-
Hardware > Tools > Saw Horses
|
2663 |
-
Hardware > Tools > Saws
|
2664 |
-
Hardware > Tools > Saws > Band Saws
|
2665 |
-
Hardware > Tools > Saws > Cut-Off Saws
|
2666 |
-
Hardware > Tools > Saws > Hand Saws
|
2667 |
-
Hardware > Tools > Saws > Handheld Circular Saws
|
2668 |
-
Hardware > Tools > Saws > Jigsaws
|
2669 |
-
Hardware > Tools > Saws > Masonry & Tile Saws
|
2670 |
-
Hardware > Tools > Saws > Miter Saws
|
2671 |
-
Hardware > Tools > Saws > Panel Saws
|
2672 |
-
Hardware > Tools > Saws > Reciprocating Saws
|
2673 |
-
Hardware > Tools > Saws > Scroll Saws
|
2674 |
-
Hardware > Tools > Saws > Table Saws
|
2675 |
-
Hardware > Tools > Screwdrivers
|
2676 |
-
Hardware > Tools > Shapers
|
2677 |
-
Hardware > Tools > Sharpeners
|
2678 |
-
Hardware > Tools > Socket Drivers
|
2679 |
-
Hardware > Tools > Soldering Irons
|
2680 |
-
Hardware > Tools > Tap Reseaters
|
2681 |
-
Hardware > Tools > Taps & Dies
|
2682 |
-
Hardware > Tools > Threading Machines
|
2683 |
-
Hardware > Tools > Tool Clamps & Vises
|
2684 |
-
Hardware > Tools > Tool Files
|
2685 |
-
Hardware > Tools > Tool Keys
|
2686 |
-
Hardware > Tools > Tool Knives
|
2687 |
-
Hardware > Tools > Tool Sets
|
2688 |
-
Hardware > Tools > Tool Sets > Hand Tool Sets
|
2689 |
-
Hardware > Tools > Tool Sets > Power Tool Combo Sets
|
2690 |
-
Hardware > Tools > Welding Guns & Plasma Cutters
|
2691 |
-
Hardware > Tools > Wire & Cable Hand Tools
|
2692 |
-
Hardware > Tools > Work Lights
|
2693 |
-
Hardware > Tools > Wrenches
|
2694 |
-
Health & Beauty
|
2695 |
-
Health & Beauty > Health Care
|
2696 |
-
Health & Beauty > Health Care > Acupuncture
|
2697 |
-
Health & Beauty > Health Care > Acupuncture > Acupuncture Models
|
2698 |
-
Health & Beauty > Health Care > Acupuncture > Acupuncture Needles
|
2699 |
-
Health & Beauty > Health Care > Bed Pans
|
2700 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories
|
2701 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Activity Monitor Accessories
|
2702 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Blood Glucose Meter Accessories
|
2703 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Blood Glucose Meter Accessories > Blood Glucose Control Solution
|
2704 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Blood Glucose Meter Accessories > Blood Glucose Test Strips
|
2705 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Blood Glucose Meter Accessories > Lancing Devices
|
2706 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Blood Pressure Monitor Accessories
|
2707 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Blood Pressure Monitor Accessories > Blood Pressure Monitor Cuffs
|
2708 |
-
Health & Beauty > Health Care > Biometric Monitor Accessories > Body Weight Scale Accessories
|
2709 |
-
Health & Beauty > Health Care > Biometric Monitors
|
2710 |
-
Health & Beauty > Health Care > Biometric Monitors > Activity Monitors
|
2711 |
-
Health & Beauty > Health Care > Biometric Monitors > Blood Glucose Meters
|
2712 |
-
Health & Beauty > Health Care > Biometric Monitors > Blood Pressure Monitors
|
2713 |
-
Health & Beauty > Health Care > Biometric Monitors > Body Fat Analyzers
|
2714 |
-
Health & Beauty > Health Care > Biometric Monitors > Body Weight Scales
|
2715 |
-
Health & Beauty > Health Care > Biometric Monitors > Breathalyzers
|
2716 |
-
Health & Beauty > Health Care > Biometric Monitors > Cholesterol Analyzers
|
2717 |
-
Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests
|
2718 |
-
Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests > Fertility Tests & Monitors
|
2719 |
-
Health & Beauty > Health Care > Biometric Monitors > Fertility Monitors and Ovulation Tests > Ovulation Tests
|
2720 |
-
Health & Beauty > Health Care > Biometric Monitors > Medical Thermometers
|
2721 |
-
Health & Beauty > Health Care > Biometric Monitors > Prenatal Heart Rate Monitors
|
2722 |
-
Health & Beauty > Health Care > Biometric Monitors > Pulse Oximeters
|
2723 |
-
Health & Beauty > Health Care > Condoms
|
2724 |
-
Health & Beauty > Health Care > Conductivity Gels & Lotions
|
2725 |
-
Health & Beauty > Health Care > Contraceptive Cases
|
2726 |
-
Health & Beauty > Health Care > First Aid
|
2727 |
-
Health & Beauty > Health Care > First Aid > Antiseptics & Cleaning Supplies
|
2728 |
-
Health & Beauty > Health Care > First Aid > Cast & Bandage Protectors
|
2729 |
-
Health & Beauty > Health Care > First Aid > Eye Wash Supplies
|
2730 |
-
Health & Beauty > Health Care > First Aid > First Aid Kits
|
2731 |
-
Health & Beauty > Health Care > First Aid > Hot & Cold Therapies
|
2732 |
-
Health & Beauty > Health Care > First Aid > Hot & Cold Therapies > Heat Rubs
|
2733 |
-
Health & Beauty > Health Care > First Aid > Hot & Cold Therapies > Heating Pads
|
2734 |
-
Health & Beauty > Health Care > First Aid > Hot & Cold Therapies > Ice Packs
|
2735 |
-
Health & Beauty > Health Care > First Aid > Medical Tape & Bandages
|
2736 |
-
Health & Beauty > Health Care > Fitness & Nutrition
|
2737 |
-
Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Bars
|
2738 |
-
Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Drinks & Shakes
|
2739 |
-
Health & Beauty > Health Care > Fitness & Nutrition > Nutrition Gels & Chews
|
2740 |
-
Health & Beauty > Health Care > Fitness & Nutrition > Nutritional Food Purées
|
2741 |
-
Health & Beauty > Health Care > Fitness & Nutrition > Tube Feeding Supplements
|
2742 |
-
Health & Beauty > Health Care > Fitness & Nutrition > Vitamins & Supplements
|
2743 |
-
Health & Beauty > Health Care > Hearing Aids
|
2744 |
-
Health & Beauty > Health Care > Incontinence Aids
|
2745 |
-
Health & Beauty > Health Care > Light Therapy Lamps
|
2746 |
-
Health & Beauty > Health Care > Medical Alarm Systems
|
2747 |
-
Health & Beauty > Health Care > Medical Identification Tags & Jewelry
|
2748 |
-
Health & Beauty > Health Care > Medical Tests
|
2749 |
-
Health & Beauty > Health Care > Medical Tests > Allergy Test Kits
|
2750 |
-
Health & Beauty > Health Care > Medical Tests > Blood Typing Test Kits
|
2751 |
-
Health & Beauty > Health Care > Medical Tests > Drug Tests
|
2752 |
-
Health & Beauty > Health Care > Medical Tests > HIV Tests
|
2753 |
-
Health & Beauty > Health Care > Medical Tests > Pregnancy Tests
|
2754 |
-
Health & Beauty > Health Care > Medical Tests > Urinary Tract Infection Tests
|
2755 |
-
Health & Beauty > Health Care > Medicine & Drugs
|
2756 |
-
Health & Beauty > Health Care > Mobility & Accessibility
|
2757 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Equipment
|
2758 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Equipment > Mobility Scooters
|
2759 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Equipment > Stair Lifts
|
2760 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Equipment > Transfer Boards & Sheets
|
2761 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Equipment > Wheelchairs
|
2762 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Equipment Accessories
|
2763 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Furniture & Fixtures
|
2764 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Accessibility Furniture & Fixtures > Shower Benches & Seats
|
2765 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Walking Aid Accessories
|
2766 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Walking Aids
|
2767 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Walking Aids > Canes & Walking Sticks
|
2768 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Walking Aids > Crutches
|
2769 |
-
Health & Beauty > Health Care > Mobility & Accessibility > Walking Aids > Walkers
|
2770 |
-
Health & Beauty > Health Care > Occupational & Physical Therapy Equipment
|
2771 |
-
Health & Beauty > Health Care > Occupational & Physical Therapy Equipment > Electrical Muscle Stimulators
|
2772 |
-
Health & Beauty > Health Care > Occupational & Physical Therapy Equipment > Therapeutic Swings
|
2773 |
-
Health & Beauty > Health Care > Pillboxes
|
2774 |
-
Health & Beauty > Health Care > Respiratory Care
|
2775 |
-
Health & Beauty > Health Care > Respiratory Care > Nebulizers
|
2776 |
-
Health & Beauty > Health Care > Respiratory Care > Oxygen Tanks
|
2777 |
-
Health & Beauty > Health Care > Respiratory Care > PAP Machines
|
2778 |
-
Health & Beauty > Health Care > Respiratory Care > PAP Masks
|
2779 |
-
Health & Beauty > Health Care > Respiratory Care > Steam Inhalers
|
2780 |
-
Health & Beauty > Health Care > Specimen Cups
|
2781 |
-
Health & Beauty > Health Care > Spermicides
|
2782 |
-
Health & Beauty > Health Care > Stump Shrinkers
|
2783 |
-
Health & Beauty > Health Care > Supports & Braces
|
2784 |
-
Health & Beauty > Health Care > Surgical Lubricants
|
2785 |
-
Health & Beauty > Jewelry Cleaning & Care
|
2786 |
-
Health & Beauty > Jewelry Cleaning & Care > Jewelry Cleaning Solutions & Polishes
|
2787 |
-
Health & Beauty > Jewelry Cleaning & Care > Jewelry Cleaning Tools
|
2788 |
-
Health & Beauty > Jewelry Cleaning & Care > Jewelry Holders
|
2789 |
-
Health & Beauty > Jewelry Cleaning & Care > Jewelry Steam Cleaners
|
2790 |
-
Health & Beauty > Jewelry Cleaning & Care > Watch Repair Kits
|
2791 |
-
Health & Beauty > Personal Care
|
2792 |
-
Health & Beauty > Personal Care > Back Care
|
2793 |
-
Health & Beauty > Personal Care > Back Care > Back & Lumbar Support Cushions
|
2794 |
-
Health & Beauty > Personal Care > Cosmetics
|
2795 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body
|
2796 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Adult Hygienic Wipes
|
2797 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Bar Soap
|
2798 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Bath Additives
|
2799 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Bath Brushes
|
2800 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Bath Sponges & Loofahs
|
2801 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Body Wash
|
2802 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Hand Sanitizers & Wipes
|
2803 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Liquid Hand Soap
|
2804 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Powdered Hand Soap
|
2805 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body > Shower Caps
|
2806 |
-
Health & Beauty > Personal Care > Cosmetics > Bath & Body Gift Sets
|
2807 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Sets
|
2808 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tool Cleansers
|
2809 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools
|
2810 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools
|
2811 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Double Eyelid Glue & Tape
|
2812 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Eyebrow Stencils
|
2813 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Eyelash Curler Refills
|
2814 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Eyelash Curlers
|
2815 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Face Mirrors
|
2816 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Facial Blotting Paper
|
2817 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > False Eyelash Accessories
|
2818 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > False Eyelash Accessories > False Eyelash Adhesive
|
2819 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > False Eyelash Accessories > False Eyelash Applicators
|
2820 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > False Eyelash Accessories > False Eyelash Remover
|
2821 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Makeup Brushes
|
2822 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Makeup Sponges
|
2823 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Makeup Tools > Refillable Makeup Palettes & Cases
|
2824 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools
|
2825 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Cuticle Pushers
|
2826 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Cuticle Scissors
|
2827 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Manicure & Pedicure Spacers
|
2828 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Manicure Tool Sets
|
2829 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Nail Buffers
|
2830 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Nail Clippers
|
2831 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Nail Drill Accessories
|
2832 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Nail Drills
|
2833 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Nail Dryers
|
2834 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Nail Tools > Nail Files & Emery Boards
|
2835 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools
|
2836 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Facial Saunas
|
2837 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Foot Files
|
2838 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Lotion & Sunscreen Applicators
|
2839 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Pumice Stones
|
2840 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Skin Care Extractors
|
2841 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Skin Care Rollers
|
2842 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Skin Cleansing Brush Heads
|
2843 |
-
Health & Beauty > Personal Care > Cosmetics > Cosmetic Tools > Skin Care Tools > Skin Cleansing Brushes & Systems
|
2844 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup
|
2845 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Body Makeup
|
2846 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Body Makeup > Body & Hair Glitter
|
2847 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Body Makeup > Body Paint & Foundation
|
2848 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Costume & Stage Makeup
|
2849 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup
|
2850 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Eye Primer
|
2851 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Eye Shadow
|
2852 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Eyebrow Enhancers
|
2853 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Eyeliner
|
2854 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > False Eyelashes
|
2855 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Lash & Brow Growth Treatments
|
2856 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Mascara
|
2857 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Eye Makeup > Mascara Primer
|
2858 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Face Makeup
|
2859 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Face Makeup > Blushes & Bronzers
|
2860 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Face Makeup > Face Powder
|
2861 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Face Makeup > Face Primer
|
2862 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Face Makeup > Foundations & Concealers
|
2863 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Face Makeup > Highlighters & Luminizers
|
2864 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Lip Makeup
|
2865 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Lip Makeup > Lip & Cheek Stains
|
2866 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Lip Makeup > Lip Gloss
|
2867 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Lip Makeup > Lip Liner
|
2868 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Lip Makeup > Lip Primer
|
2869 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Lip Makeup > Lipstick
|
2870 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Makeup Finishing Sprays
|
2871 |
-
Health & Beauty > Personal Care > Cosmetics > Makeup > Temporary Tattoos
|
2872 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care
|
2873 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Cuticle Cream & Oil
|
2874 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > False Nails
|
2875 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Manicure Glue
|
2876 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Nail Art Kits & Accessories
|
2877 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Nail Polish Drying Drops & Sprays
|
2878 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Nail Polish Removers
|
2879 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Nail Polish Thinners
|
2880 |
-
Health & Beauty > Personal Care > Cosmetics > Nail Care > Nail Polishes
|
2881 |
-
Health & Beauty > Personal Care > Cosmetics > Perfume & Cologne
|
2882 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care
|
2883 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Acne Treatments & Kits
|
2884 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Anti-Aging Skin Care Kits
|
2885 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Body Oil
|
2886 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Body Powder
|
2887 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Compressed Skin Care Mask Sheets
|
2888 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Cleansers
|
2889 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Cleansing Kits
|
2890 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Facial Pore Strips
|
2891 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments
|
2892 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments > Lip Balms
|
2893 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Lip Balms & Treatments > Medicated Lip Treatments
|
2894 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Lotion & Moisturizer
|
2895 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Makeup Removers
|
2896 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Petroleum Jelly
|
2897 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Skin Care Masks & Peels
|
2898 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Skin Insect Repellent
|
2899 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Sunscreen
|
2900 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products
|
2901 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products > Self Tanner
|
2902 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Tanning Products > Tanning Oil & Lotion
|
2903 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents
|
2904 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents > Astringents
|
2905 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Toners & Astringents > Toners
|
2906 |
-
Health & Beauty > Personal Care > Cosmetics > Skin Care > Wart Removers
|
2907 |
-
Health & Beauty > Personal Care > Cotton Balls
|
2908 |
-
Health & Beauty > Personal Care > Cotton Swabs
|
2909 |
-
Health & Beauty > Personal Care > Deodorant & Anti-Perspirant
|
2910 |
-
Health & Beauty > Personal Care > Deodorant & Anti-Perspirant > Anti-Perspirant
|
2911 |
-
Health & Beauty > Personal Care > Deodorant & Anti-Perspirant > Deodorant
|
2912 |
-
Health & Beauty > Personal Care > Ear Care
|
2913 |
-
Health & Beauty > Personal Care > Ear Care > Ear Candles
|
2914 |
-
Health & Beauty > Personal Care > Ear Care > Ear Drops
|
2915 |
-
Health & Beauty > Personal Care > Ear Care > Ear Dryers
|
2916 |
-
Health & Beauty > Personal Care > Ear Care > Ear Picks & Spoons
|
2917 |
-
Health & Beauty > Personal Care > Ear Care > Ear Syringes
|
2918 |
-
Health & Beauty > Personal Care > Ear Care > Ear Wax Removal Kits
|
2919 |
-
Health & Beauty > Personal Care > Ear Care > Earplug Dispensers
|
2920 |
-
Health & Beauty > Personal Care > Ear Care > Earplugs
|
2921 |
-
Health & Beauty > Personal Care > Enema Kits & Supplies
|
2922 |
-
Health & Beauty > Personal Care > Feminine Sanitary Supplies
|
2923 |
-
Health & Beauty > Personal Care > Feminine Sanitary Supplies > Feminine Deodorant
|
2924 |
-
Health & Beauty > Personal Care > Feminine Sanitary Supplies > Feminine Douches & Creams
|
2925 |
-
Health & Beauty > Personal Care > Feminine Sanitary Supplies > Feminine Pads & Protectors
|
2926 |
-
Health & Beauty > Personal Care > Feminine Sanitary Supplies > Menstrual Cups
|
2927 |
-
Health & Beauty > Personal Care > Feminine Sanitary Supplies > Tampons
|
2928 |
-
Health & Beauty > Personal Care > Foot Care
|
2929 |
-
Health & Beauty > Personal Care > Foot Care > Bunion Care Supplies
|
2930 |
-
Health & Beauty > Personal Care > Foot Care > Corn & Callus Care Supplies
|
2931 |
-
Health & Beauty > Personal Care > Foot Care > Foot Odor Removers
|
2932 |
-
Health & Beauty > Personal Care > Foot Care > Insoles & Inserts
|
2933 |
-
Health & Beauty > Personal Care > Foot Care > Toe Spacers
|
2934 |
-
Health & Beauty > Personal Care > Hair Care
|
2935 |
-
Health & Beauty > Personal Care > Hair Care > Hair Care Kits
|
2936 |
-
Health & Beauty > Personal Care > Hair Care > Hair Color
|
2937 |
-
Health & Beauty > Personal Care > Hair Care > Hair Color Removers
|
2938 |
-
Health & Beauty > Personal Care > Hair Care > Hair Coloring Accessories
|
2939 |
-
Health & Beauty > Personal Care > Hair Care > Hair Loss Concealers
|
2940 |
-
Health & Beauty > Personal Care > Hair Care > Hair Loss Treatments
|
2941 |
-
Health & Beauty > Personal Care > Hair Care > Hair Permanents & Straighteners
|
2942 |
-
Health & Beauty > Personal Care > Hair Care > Hair Shears
|
2943 |
-
Health & Beauty > Personal Care > Hair Care > Hair Steamers & Heat Caps
|
2944 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Products
|
2945 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tool Accessories
|
2946 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tool Accessories > Hair Curler Clips & Pins
|
2947 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tool Accessories > Hair Dryer Accessories
|
2948 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tool Accessories > Hair Iron Accessories
|
2949 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools
|
2950 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Combs & Brushes
|
2951 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Curling Irons
|
2952 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Curlers
|
2953 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Dryers
|
2954 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Straighteners
|
2955 |
-
Health & Beauty > Personal Care > Hair Care > Hair Styling Tools > Hair Styling Tool Sets
|
2956 |
-
Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner
|
2957 |
-
Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner > Conditioners
|
2958 |
-
Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner > Shampoo
|
2959 |
-
Health & Beauty > Personal Care > Hair Care > Shampoo & Conditioner > Shampoo & Conditioner Sets
|
2960 |
-
Health & Beauty > Personal Care > Massage & Relaxation
|
2961 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Back Scratchers
|
2962 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Eye Pillows
|
2963 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massage Chairs
|
2964 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massage Oil
|
2965 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massage Stone Warmers
|
2966 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massage Stones
|
2967 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massage Tables
|
2968 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massagers
|
2969 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massagers > Electric Massagers
|
2970 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massagers > Manual Massage Tools
|
2971 |
-
Health & Beauty > Personal Care > Massage & Relaxation > Massagers > Massage Cushions
|
2972 |
-
Health & Beauty > Personal Care > Oral Care
|
2973 |
-
Health & Beauty > Personal Care > Oral Care > Breath Spray
|
2974 |
-
Health & Beauty > Personal Care > Oral Care > Dental Floss
|
2975 |
-
Health & Beauty > Personal Care > Oral Care > Dental Mouthguards
|
2976 |
-
Health & Beauty > Personal Care > Oral Care > Dental Water Jet Replacement Tips
|
2977 |
-
Health & Beauty > Personal Care > Oral Care > Dental Water Jets
|
2978 |
-
Health & Beauty > Personal Care > Oral Care > Denture Adhesives
|
2979 |
-
Health & Beauty > Personal Care > Oral Care > Denture Cleaners
|
2980 |
-
Health & Beauty > Personal Care > Oral Care > Denture Repair Kits
|
2981 |
-
Health & Beauty > Personal Care > Oral Care > Dentures
|
2982 |
-
Health & Beauty > Personal Care > Oral Care > Gum Stimulators
|
2983 |
-
Health & Beauty > Personal Care > Oral Care > Mouthwash
|
2984 |
-
Health & Beauty > Personal Care > Oral Care > Orthodontic Appliance Cases
|
2985 |
-
Health & Beauty > Personal Care > Oral Care > Power Flossers
|
2986 |
-
Health & Beauty > Personal Care > Oral Care > Teeth Whiteners
|
2987 |
-
Health & Beauty > Personal Care > Oral Care > Tongue Scrapers
|
2988 |
-
Health & Beauty > Personal Care > Oral Care > Toothbrush Accessories
|
2989 |
-
Health & Beauty > Personal Care > Oral Care > Toothbrush Accessories > Toothbrush Covers
|
2990 |
-
Health & Beauty > Personal Care > Oral Care > Toothbrush Accessories > Toothbrush Replacement Heads
|
2991 |
-
Health & Beauty > Personal Care > Oral Care > Toothbrush Accessories > Toothbrush Sanitizers
|
2992 |
-
Health & Beauty > Personal Care > Oral Care > Toothbrushes
|
2993 |
-
Health & Beauty > Personal Care > Oral Care > Toothpaste
|
2994 |
-
Health & Beauty > Personal Care > Oral Care > Toothpaste Squeezers & Dispensers
|
2995 |
-
Health & Beauty > Personal Care > Oral Care > Toothpicks
|
2996 |
-
Health & Beauty > Personal Care > Personal Lubricants
|
2997 |
-
Health & Beauty > Personal Care > Shaving & Grooming
|
2998 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Aftershave
|
2999 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Body & Facial Hair Bleach
|
3000 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Electric Razor Accessories
|
3001 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Electric Razors
|
3002 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Clipper & Trimmer Accessories
|
3003 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Clippers & Trimmers
|
3004 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal
|
3005 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal > Depilatories
|
3006 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal > Electrolysis Devices
|
3007 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal > Epilators
|
3008 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal > Hair Removal Wax Warmers
|
3009 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal > Laser & IPL Hair Removal Devices
|
3010 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Hair Removal > Waxing Kits & Supplies
|
3011 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Razors & Razor Blades
|
3012 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Shaving Bowls & Mugs
|
3013 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Shaving Brushes
|
3014 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Shaving Cream
|
3015 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Shaving Kits
|
3016 |
-
Health & Beauty > Personal Care > Shaving & Grooming > Styptic Pencils
|
3017 |
-
Health & Beauty > Personal Care > Sleeping Aids
|
3018 |
-
Health & Beauty > Personal Care > Sleeping Aids > Eye Masks
|
3019 |
-
Health & Beauty > Personal Care > Sleeping Aids > Snoring & Sleep Apnea Aids
|
3020 |
-
Health & Beauty > Personal Care > Sleeping Aids > Travel Pillows
|
3021 |
-
Health & Beauty > Personal Care > Sleeping Aids > White Noise Machines
|
3022 |
-
Health & Beauty > Personal Care > Spray Tanning Tents
|
3023 |
-
Health & Beauty > Personal Care > Tanning Beds
|
3024 |
-
Health & Beauty > Personal Care > Tweezers
|
3025 |
-
Health & Beauty > Personal Care > Vision Care
|
3026 |
-
Health & Beauty > Personal Care > Vision Care > Contact Lens Care
|
3027 |
-
Health & Beauty > Personal Care > Vision Care > Contact Lens Care > Contact Lens Care Kits
|
3028 |
-
Health & Beauty > Personal Care > Vision Care > Contact Lens Care > Contact Lens Cases
|
3029 |
-
Health & Beauty > Personal Care > Vision Care > Contact Lens Care > Contact Lens Solution
|
3030 |
-
Health & Beauty > Personal Care > Vision Care > Contact Lenses
|
3031 |
-
Health & Beauty > Personal Care > Vision Care > Eye Drops & Lubricants
|
3032 |
-
Health & Beauty > Personal Care > Vision Care > Eyeglass Lenses
|
3033 |
-
Health & Beauty > Personal Care > Vision Care > Eyeglasses
|
3034 |
-
Health & Beauty > Personal Care > Vision Care > Eyewear Accessories
|
3035 |
-
Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Cases & Holders
|
3036 |
-
Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Lens Cleaning Solutions
|
3037 |
-
Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Replacement Parts
|
3038 |
-
Health & Beauty > Personal Care > Vision Care > Eyewear Accessories > Eyewear Straps & Chains
|
3039 |
-
Health & Beauty > Personal Care > Vision Care > Sunglass Lenses
|
3040 |
-
Home & Garden
|
3041 |
-
Home & Garden > Bathroom Accessories
|
3042 |
-
Home & Garden > Bathroom Accessories > Bath Caddies
|
3043 |
-
Home & Garden > Bathroom Accessories > Bath Mats & Rugs
|
3044 |
-
Home & Garden > Bathroom Accessories > Bath Pillows
|
3045 |
-
Home & Garden > Bathroom Accessories > Bathroom Accessory Mounts
|
3046 |
-
Home & Garden > Bathroom Accessories > Bathroom Accessory Sets
|
3047 |
-
Home & Garden > Bathroom Accessories > Facial Tissue Holders
|
3048 |
-
Home & Garden > Bathroom Accessories > Hand Dryer Accessories
|
3049 |
-
Home & Garden > Bathroom Accessories > Hand Dryers
|
3050 |
-
Home & Garden > Bathroom Accessories > Medicine Cabinets
|
3051 |
-
Home & Garden > Bathroom Accessories > Robe Hooks
|
3052 |
-
Home & Garden > Bathroom Accessories > Safety Grab Bars
|
3053 |
-
Home & Garden > Bathroom Accessories > Shower Curtain Rings
|
3054 |
-
Home & Garden > Bathroom Accessories > Shower Curtains
|
3055 |
-
Home & Garden > Bathroom Accessories > Shower Rods
|
3056 |
-
Home & Garden > Bathroom Accessories > Soap & Lotion Dispensers
|
3057 |
-
Home & Garden > Bathroom Accessories > Soap Dishes & Holders
|
3058 |
-
Home & Garden > Bathroom Accessories > Toilet Brush Replacement Heads
|
3059 |
-
Home & Garden > Bathroom Accessories > Toilet Brushes & Holders
|
3060 |
-
Home & Garden > Bathroom Accessories > Toilet Paper Holders
|
3061 |
-
Home & Garden > Bathroom Accessories > Toothbrush Holders
|
3062 |
-
Home & Garden > Bathroom Accessories > Towel Racks & Holders
|
3063 |
-
Home & Garden > Business & Home Security
|
3064 |
-
Home & Garden > Business & Home Security > Dummy Surveillance Cameras
|
3065 |
-
Home & Garden > Business & Home Security > Home Alarm Systems
|
3066 |
-
Home & Garden > Business & Home Security > Motion Sensors
|
3067 |
-
Home & Garden > Business & Home Security > Safety & Security Mirrors
|
3068 |
-
Home & Garden > Business & Home Security > Security Lights
|
3069 |
-
Home & Garden > Business & Home Security > Security Monitors & Recorders
|
3070 |
-
Home & Garden > Business & Home Security > Security Safe Accessories
|
3071 |
-
Home & Garden > Business & Home Security > Security Safes
|
3072 |
-
Home & Garden > Business & Home Security > Security System Sensors
|
3073 |
-
Home & Garden > Decor
|
3074 |
-
Home & Garden > Decor > Address Signs
|
3075 |
-
Home & Garden > Decor > Artificial Flora
|
3076 |
-
Home & Garden > Decor > Artificial Food
|
3077 |
-
Home & Garden > Decor > Artwork
|
3078 |
-
Home & Garden > Decor > Artwork > Decorative Tapestries
|
3079 |
-
Home & Garden > Decor > Artwork > Posters, Prints, & Visual Artwork
|
3080 |
-
Home & Garden > Decor > Artwork > Sculptures & Statues
|
3081 |
-
Home & Garden > Decor > Backrest Pillows
|
3082 |
-
Home & Garden > Decor > Baskets
|
3083 |
-
Home & Garden > Decor > Bird & Wildlife Feeder Accessories
|
3084 |
-
Home & Garden > Decor > Bird & Wildlife Feeders
|
3085 |
-
Home & Garden > Decor > Bird & Wildlife Feeders > Bird Feeders
|
3086 |
-
Home & Garden > Decor > Bird & Wildlife Feeders > Butterfly Feeders
|
3087 |
-
Home & Garden > Decor > Bird & Wildlife Feeders > Squirrel Feeders
|
3088 |
-
Home & Garden > Decor > Bird & Wildlife House Accessories
|
3089 |
-
Home & Garden > Decor > Bird & Wildlife Houses
|
3090 |
-
Home & Garden > Decor > Bird & Wildlife Houses > Bat Houses
|
3091 |
-
Home & Garden > Decor > Bird & Wildlife Houses > Birdhouses
|
3092 |
-
Home & Garden > Decor > Bird & Wildlife Houses > Butterfly Houses
|
3093 |
-
Home & Garden > Decor > Bird Baths
|
3094 |
-
Home & Garden > Decor > Bookends
|
3095 |
-
Home & Garden > Decor > Cardboard Cutouts
|
3096 |
-
Home & Garden > Decor > Chair & Sofa Cushions
|
3097 |
-
Home & Garden > Decor > Clock Parts
|
3098 |
-
Home & Garden > Decor > Clocks
|
3099 |
-
Home & Garden > Decor > Clocks > Alarm Clocks
|
3100 |
-
Home & Garden > Decor > Clocks > Desk & Shelf Clocks
|
3101 |
-
Home & Garden > Decor > Clocks > Floor & Grandfather Clocks
|
3102 |
-
Home & Garden > Decor > Clocks > Wall Clocks
|
3103 |
-
Home & Garden > Decor > Coat & Hat Racks
|
3104 |
-
Home & Garden > Decor > Decorative Bells
|
3105 |
-
Home & Garden > Decor > Decorative Bottles
|
3106 |
-
Home & Garden > Decor > Decorative Bowls
|
3107 |
-
Home & Garden > Decor > Decorative Jars
|
3108 |
-
Home & Garden > Decor > Decorative Plaques
|
3109 |
-
Home & Garden > Decor > Decorative Plates
|
3110 |
-
Home & Garden > Decor > Decorative Trays
|
3111 |
-
Home & Garden > Decor > Door Mats
|
3112 |
-
Home & Garden > Decor > Dreamcatchers
|
3113 |
-
Home & Garden > Decor > Dried Flowers
|
3114 |
-
Home & Garden > Decor > Ecospheres
|
3115 |
-
Home & Garden > Decor > Figurines
|
3116 |
-
Home & Garden > Decor > Finials
|
3117 |
-
Home & Garden > Decor > Flag & Windsock Accessories
|
3118 |
-
Home & Garden > Decor > Flag & Windsock Accessories > Flag & Windsock Pole Lights
|
3119 |
-
Home & Garden > Decor > Flag & Windsock Accessories > Flag & Windsock Pole Mounting Hardware & Kits
|
3120 |
-
Home & Garden > Decor > Flag & Windsock Accessories > Flag & Windsock Poles
|
3121 |
-
Home & Garden > Decor > Flags & Windsocks
|
3122 |
-
Home & Garden > Decor > Flameless Candles
|
3123 |
-
Home & Garden > Decor > Fountains & Ponds
|
3124 |
-
Home & Garden > Decor > Fountains & Ponds > Fountain & Pond Accessories
|
3125 |
-
Home & Garden > Decor > Fountains & Ponds > Fountains & Waterfalls
|
3126 |
-
Home & Garden > Decor > Fountains & Ponds > Ponds
|
3127 |
-
Home & Garden > Decor > Garden & Stepping Stones
|
3128 |
-
Home & Garden > Decor > Growth Charts
|
3129 |
-
Home & Garden > Decor > Home Decor Decals
|
3130 |
-
Home & Garden > Decor > Home Fragrance Accessories
|
3131 |
-
Home & Garden > Decor > Home Fragrance Accessories > Candle & Oil Warmers
|
3132 |
-
Home & Garden > Decor > Home Fragrance Accessories > Candle Holders
|
3133 |
-
Home & Garden > Decor > Home Fragrance Accessories > Candle Snuffers
|
3134 |
-
Home & Garden > Decor > Home Fragrance Accessories > Incense Holders
|
3135 |
-
Home & Garden > Decor > Home Fragrances
|
3136 |
-
Home & Garden > Decor > Home Fragrances > Air Fresheners
|
3137 |
-
Home & Garden > Decor > Home Fragrances > Candles
|
3138 |
-
Home & Garden > Decor > Home Fragrances > Fragrance Oil
|
3139 |
-
Home & Garden > Decor > Home Fragrances > Incense
|
3140 |
-
Home & Garden > Decor > Home Fragrances > Potpourri
|
3141 |
-
Home & Garden > Decor > Home Fragrances > Wax Tarts
|
3142 |
-
Home & Garden > Decor > Hourglasses
|
3143 |
-
Home & Garden > Decor > House Numbers & Letters
|
3144 |
-
Home & Garden > Decor > Lawn Ornaments & Garden Sculptures
|
3145 |
-
Home & Garden > Decor > Mail Slots
|
3146 |
-
Home & Garden > Decor > Mailbox Accessories
|
3147 |
-
Home & Garden > Decor > Mailbox Accessories > Mailbox Covers
|
3148 |
-
Home & Garden > Decor > Mailbox Accessories > Mailbox Enclosures
|
3149 |
-
Home & Garden > Decor > Mailbox Accessories > Mailbox Flags
|
3150 |
-
Home & Garden > Decor > Mailbox Accessories > Mailbox Posts
|
3151 |
-
Home & Garden > Decor > Mailbox Accessories > Mailbox Replacement Doors
|
3152 |
-
Home & Garden > Decor > Mailboxes
|
3153 |
-
Home & Garden > Decor > Mirrors
|
3154 |
-
Home & Garden > Decor > Music Boxes
|
3155 |
-
Home & Garden > Decor > Napkin Rings
|
3156 |
-
Home & Garden > Decor > Novelty Signs
|
3157 |
-
Home & Garden > Decor > Ottoman Cushions
|
3158 |
-
Home & Garden > Decor > Picture Frames
|
3159 |
-
Home & Garden > Decor > Piggy Banks & Money Jars
|
3160 |
-
Home & Garden > Decor > Rain Chains
|
3161 |
-
Home & Garden > Decor > Rain Gauges
|
3162 |
-
Home & Garden > Decor > Refrigerator Magnets
|
3163 |
-
Home & Garden > Decor > Rugs
|
3164 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations
|
3165 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Advent Calendars
|
3166 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Christmas Tree Skirts
|
3167 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Christmas Tree Stands
|
3168 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Easter Egg Decorating Kits
|
3169 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Holiday Ornament Displays & Stands
|
3170 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Holiday Ornament Hooks
|
3171 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Holiday Ornaments
|
3172 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Holiday Stocking Hangers
|
3173 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Holiday Stockings
|
3174 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Japanese Traditional Dolls
|
3175 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Nativity Sets
|
3176 |
-
Home & Garden > Decor > Seasonal & Holiday Decorations > Seasonal Village Sets & Accessories
|
3177 |
-
Home & Garden > Decor > Shadow Boxes
|
3178 |
-
Home & Garden > Decor > Slipcovers
|
3179 |
-
Home & Garden > Decor > Snow Globes
|
3180 |
-
Home & Garden > Decor > Suncatchers
|
3181 |
-
Home & Garden > Decor > Sundials
|
3182 |
-
Home & Garden > Decor > Throw Pillows
|
3183 |
-
Home & Garden > Decor > Trunks
|
3184 |
-
Home & Garden > Decor > Vase Fillers & Table Scatters
|
3185 |
-
Home & Garden > Decor > Vases
|
3186 |
-
Home & Garden > Decor > Wallpaper
|
3187 |
-
Home & Garden > Decor > Weather Vanes & Roof Decor
|
3188 |
-
Home & Garden > Decor > Wind Chimes
|
3189 |
-
Home & Garden > Decor > Wind Wheels & Spinners
|
3190 |
-
Home & Garden > Decor > Window Magnets
|
3191 |
-
Home & Garden > Decor > Window Treatment Accessories
|
3192 |
-
Home & Garden > Decor > Window Treatment Accessories > Curtain & Drape Rings
|
3193 |
-
Home & Garden > Decor > Window Treatment Accessories > Curtain & Drape Rods
|
3194 |
-
Home & Garden > Decor > Window Treatment Accessories > Curtain Holdbacks & Tassels
|
3195 |
-
Home & Garden > Decor > Window Treatment Accessories > Window Treatment Replacement Parts
|
3196 |
-
Home & Garden > Decor > Window Treatments
|
3197 |
-
Home & Garden > Decor > Window Treatments > Curtains & Drapes
|
3198 |
-
Home & Garden > Decor > Window Treatments > Stained Glass Panels
|
3199 |
-
Home & Garden > Decor > Window Treatments > Window Blinds & Shades
|
3200 |
-
Home & Garden > Decor > Window Treatments > Window Films
|
3201 |
-
Home & Garden > Decor > Window Treatments > Window Screens
|
3202 |
-
Home & Garden > Decor > Window Treatments > Window Valances & Cornices
|
3203 |
-
Home & Garden > Decor > World Globes
|
3204 |
-
Home & Garden > Decor > Wreaths & Garlands
|
3205 |
-
Home & Garden > Emergency Preparedness
|
3206 |
-
Home & Garden > Emergency Preparedness > Earthquake Alarms
|
3207 |
-
Home & Garden > Emergency Preparedness > Emergency Blankets
|
3208 |
-
Home & Garden > Emergency Preparedness > Emergency Food Kits
|
3209 |
-
Home & Garden > Emergency Preparedness > Emergency Tools & Kits
|
3210 |
-
Home & Garden > Emergency Preparedness > Furniture Anchors
|
3211 |
-
Home & Garden > Fireplace & Wood Stove Accessories
|
3212 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Bellows
|
3213 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Fireplace & Wood Stove Grates
|
3214 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Fireplace Andirons
|
3215 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Fireplace Reflectors
|
3216 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Fireplace Screens
|
3217 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Fireplace Tools
|
3218 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Firewood & Fuel
|
3219 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Hearth Pads
|
3220 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Log Rack & Carrier Accessories
|
3221 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Log Racks & Carriers
|
3222 |
-
Home & Garden > Fireplace & Wood Stove Accessories > Wood Stove Fans & Blowers
|
3223 |
-
Home & Garden > Fireplaces
|
3224 |
-
Home & Garden > Flood, Fire & Gas Safety
|
3225 |
-
Home & Garden > Flood, Fire & Gas Safety > Fire Alarm Control Panels
|
3226 |
-
Home & Garden > Flood, Fire & Gas Safety > Fire Alarms
|
3227 |
-
Home & Garden > Flood, Fire & Gas Safety > Fire Extinguisher & Equipment Storage
|
3228 |
-
Home & Garden > Flood, Fire & Gas Safety > Fire Extinguishers
|
3229 |
-
Home & Garden > Flood, Fire & Gas Safety > Fire Sprinklers
|
3230 |
-
Home & Garden > Flood, Fire & Gas Safety > Heat Detectors
|
3231 |
-
Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors
|
3232 |
-
Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors > Carbon Monoxide Detectors
|
3233 |
-
Home & Garden > Flood, Fire & Gas Safety > Smoke & Carbon Monoxide Detectors > Smoke Detectors
|
3234 |
-
Home & Garden > Flood, Fire & Gas Safety > Water & Flood Detectors
|
3235 |
-
Home & Garden > Household Appliance Accessories
|
3236 |
-
Home & Garden > Household Appliance Accessories > Air Conditioner Accessories
|
3237 |
-
Home & Garden > Household Appliance Accessories > Air Conditioner Accessories > Air Conditioner Covers
|
3238 |
-
Home & Garden > Household Appliance Accessories > Air Conditioner Accessories > Air Conditioner Filters
|
3239 |
-
Home & Garden > Household Appliance Accessories > Air Purifier Accessories
|
3240 |
-
Home & Garden > Household Appliance Accessories > Air Purifier Accessories > Air Purifier Filters
|
3241 |
-
Home & Garden > Household Appliance Accessories > Dehumidifier Accessories
|
3242 |
-
Home & Garden > Household Appliance Accessories > Fan Accessories
|
3243 |
-
Home & Garden > Household Appliance Accessories > Floor & Steam Cleaner Accessories
|
3244 |
-
Home & Garden > Household Appliance Accessories > Furnace & Boiler Accessories
|
3245 |
-
Home & Garden > Household Appliance Accessories > Heating Radiator Accessories
|
3246 |
-
Home & Garden > Household Appliance Accessories > Heating Radiator Accessories > Heating Radiator Reflectors
|
3247 |
-
Home & Garden > Household Appliance Accessories > Humidifier Accessories
|
3248 |
-
Home & Garden > Household Appliance Accessories > Humidifier Accessories > Humidifier Filters
|
3249 |
-
Home & Garden > Household Appliance Accessories > Laundry Appliance Accessories
|
3250 |
-
Home & Garden > Household Appliance Accessories > Laundry Appliance Accessories > Garment Steamer Accessories
|
3251 |
-
Home & Garden > Household Appliance Accessories > Laundry Appliance Accessories > Iron Accessories
|
3252 |
-
Home & Garden > Household Appliance Accessories > Laundry Appliance Accessories > Steam Press Accessories
|
3253 |
-
Home & Garden > Household Appliance Accessories > Laundry Appliance Accessories > Washer & Dryer Accessories
|
3254 |
-
Home & Garden > Household Appliance Accessories > Patio Heater Accessories
|
3255 |
-
Home & Garden > Household Appliance Accessories > Patio Heater Accessories > Patio Heater Covers
|
3256 |
-
Home & Garden > Household Appliance Accessories > Vacuum Accessories
|
3257 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories
|
3258 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Anode Rods
|
3259 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Hot Water Tanks
|
3260 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Water Heater Elements
|
3261 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Water Heater Expansion Tanks
|
3262 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Water Heater Pans
|
3263 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Water Heater Stacks
|
3264 |
-
Home & Garden > Household Appliance Accessories > Water Heater Accessories > Water Heater Vents
|
3265 |
-
Home & Garden > Household Appliances
|
3266 |
-
Home & Garden > Household Appliances > Climate Control Appliances
|
3267 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Air Conditioners
|
3268 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Air Purifiers
|
3269 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Dehumidifiers
|
3270 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Duct Heaters
|
3271 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Evaporative Coolers
|
3272 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Fans
|
3273 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Fans > Ceiling Fans
|
3274 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Fans > Desk & Pedestal Fans
|
3275 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Fans > Powered Hand Fans & Misters
|
3276 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Fans > Ventilation Fans
|
3277 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Fans > Wall Mount Fans
|
3278 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Furnaces & Boilers
|
3279 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Heating Radiators
|
3280 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Humidifiers
|
3281 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Outdoor Misting Systems
|
3282 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Patio Heaters
|
3283 |
-
Home & Garden > Household Appliances > Climate Control Appliances > Space Heaters
|
3284 |
-
Home & Garden > Household Appliances > Floor & Carpet Dryers
|
3285 |
-
Home & Garden > Household Appliances > Floor & Steam Cleaners
|
3286 |
-
Home & Garden > Household Appliances > Floor & Steam Cleaners > Carpet Shampooers
|
3287 |
-
Home & Garden > Household Appliances > Floor & Steam Cleaners > Carpet Steamers
|
3288 |
-
Home & Garden > Household Appliances > Floor & Steam Cleaners > Floor Scrubbers
|
3289 |
-
Home & Garden > Household Appliances > Floor & Steam Cleaners > Steam Mops
|
3290 |
-
Home & Garden > Household Appliances > Floor Polishers & Buffers
|
3291 |
-
Home & Garden > Household Appliances > Futon Dryers
|
3292 |
-
Home & Garden > Household Appliances > Garage Door Keypads & Remotes
|
3293 |
-
Home & Garden > Household Appliances > Garage Door Openers
|
3294 |
-
Home & Garden > Household Appliances > Laundry Appliances
|
3295 |
-
Home & Garden > Household Appliances > Laundry Appliances > Dryers
|
3296 |
-
Home & Garden > Household Appliances > Laundry Appliances > Garment Steamers
|
3297 |
-
Home & Garden > Household Appliances > Laundry Appliances > Irons & Ironing Systems
|
3298 |
-
Home & Garden > Household Appliances > Laundry Appliances > Laundry Combo Units
|
3299 |
-
Home & Garden > Household Appliances > Laundry Appliances > Steam Presses
|
3300 |
-
Home & Garden > Household Appliances > Laundry Appliances > Washing Machines
|
3301 |
-
Home & Garden > Household Appliances > Ultrasonic Cleaners
|
3302 |
-
Home & Garden > Household Appliances > Vacuums
|
3303 |
-
Home & Garden > Household Appliances > Wallpaper Steamers
|
3304 |
-
Home & Garden > Household Appliances > Water Heaters
|
3305 |
-
Home & Garden > Household Supplies
|
3306 |
-
Home & Garden > Household Supplies > Drawer & Shelf Liners
|
3307 |
-
Home & Garden > Household Supplies > Floor Protection Films & Runners
|
3308 |
-
Home & Garden > Household Supplies > Furniture Floor Protectors
|
3309 |
-
Home & Garden > Household Supplies > Garage Floor Mats
|
3310 |
-
Home & Garden > Household Supplies > Garbage Bags
|
3311 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies
|
3312 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Broom & Mop Handles
|
3313 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Broom Heads
|
3314 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Brooms
|
3315 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Buckets
|
3316 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Carpet Sweepers
|
3317 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Cleaning Gloves
|
3318 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Duster Refills
|
3319 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Dusters
|
3320 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Dustpans
|
3321 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Fabric & Upholstery Protectors
|
3322 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products
|
3323 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > All-Purpose Cleaners
|
3324 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Carpet Cleaners
|
3325 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Descalers & Decalcifiers
|
3326 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Dish Detergent & Soap
|
3327 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Dishwasher Cleaners
|
3328 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Fabric & Upholstery Cleaners
|
3329 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Floor Cleaners
|
3330 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Furniture Cleaners & Polish
|
3331 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners
|
3332 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners > Glass Cleaners
|
3333 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Glass & Surface Cleaners > Muti-surface Cleaners
|
3334 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Household Disinfectants
|
3335 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Oven & Grill Cleaners
|
3336 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Pet Odor & Stain Removers
|
3337 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Rinse Aids
|
3338 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Stainless Steel Cleaners & Polishes
|
3339 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Toilet Bowl Cleaners
|
3340 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Tub & Tile Cleaners
|
3341 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Household Cleaning Products > Washing Machine Cleaners
|
3342 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Mop Heads & Refills
|
3343 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Mops
|
3344 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Scrub Brush Heads & Refills
|
3345 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Scrub Brushes
|
3346 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Shop Towels & General-Purpose Cleaning Cloths
|
3347 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Sponges & Scouring Pads
|
3348 |
-
Home & Garden > Household Supplies > Household Cleaning Supplies > Squeegees
|
3349 |
-
Home & Garden > Household Supplies > Household Paper Products
|
3350 |
-
Home & Garden > Household Supplies > Household Paper Products > Facial Tissues
|
3351 |
-
Home & Garden > Household Supplies > Household Paper Products > Paper Napkins
|
3352 |
-
Home & Garden > Household Supplies > Household Paper Products > Paper Towels
|
3353 |
-
Home & Garden > Household Supplies > Household Paper Products > Toilet Paper
|
3354 |
-
Home & Garden > Household Supplies > Household Thermometers
|
3355 |
-
Home & Garden > Household Supplies > Laundry Supplies
|
3356 |
-
Home & Garden > Household Supplies > Laundry Supplies > Bleach
|
3357 |
-
Home & Garden > Household Supplies > Laundry Supplies > Clothespins
|
3358 |
-
Home & Garden > Household Supplies > Laundry Supplies > Dry Cleaning Kits
|
3359 |
-
Home & Garden > Household Supplies > Laundry Supplies > Drying Racks & Hangers
|
3360 |
-
Home & Garden > Household Supplies > Laundry Supplies > Fabric Refreshers
|
3361 |
-
Home & Garden > Household Supplies > Laundry Supplies > Fabric Shavers
|
3362 |
-
Home & Garden > Household Supplies > Laundry Supplies > Fabric Softeners & Dryer Sheets
|
3363 |
-
Home & Garden > Household Supplies > Laundry Supplies > Fabric Stain Removers
|
3364 |
-
Home & Garden > Household Supplies > Laundry Supplies > Fabric Starch
|
3365 |
-
Home & Garden > Household Supplies > Laundry Supplies > Garment Shields
|
3366 |
-
Home & Garden > Household Supplies > Laundry Supplies > Iron Rests
|
3367 |
-
Home & Garden > Household Supplies > Laundry Supplies > Ironing Board Pads & Covers
|
3368 |
-
Home & Garden > Household Supplies > Laundry Supplies > Ironing Board Replacement Parts
|
3369 |
-
Home & Garden > Household Supplies > Laundry Supplies > Ironing Boards
|
3370 |
-
Home & Garden > Household Supplies > Laundry Supplies > Laundry Balls
|
3371 |
-
Home & Garden > Household Supplies > Laundry Supplies > Laundry Baskets
|
3372 |
-
Home & Garden > Household Supplies > Laundry Supplies > Laundry Detergent
|
3373 |
-
Home & Garden > Household Supplies > Laundry Supplies > Laundry Wash Bags & Frames
|
3374 |
-
Home & Garden > Household Supplies > Laundry Supplies > Lint Rollers
|
3375 |
-
Home & Garden > Household Supplies > Laundry Supplies > Wrinkle Releasers & Anti-Static Sprays
|
3376 |
-
Home & Garden > Household Supplies > Moisture Absorbers
|
3377 |
-
Home & Garden > Household Supplies > Pest Control
|
3378 |
-
Home & Garden > Household Supplies > Pest Control > Fly Swatters
|
3379 |
-
Home & Garden > Household Supplies > Pest Control > Pest Control Traps
|
3380 |
-
Home & Garden > Household Supplies > Pest Control > Pesticides
|
3381 |
-
Home & Garden > Household Supplies > Pest Control > Repellents
|
3382 |
-
Home & Garden > Household Supplies > Pest Control > Repellents > Animal & Pet Repellents
|
3383 |
-
Home & Garden > Household Supplies > Pest Control > Repellents > Household Insect Repellents
|
3384 |
-
Home & Garden > Household Supplies > Rug Pads
|
3385 |
-
Home & Garden > Household Supplies > Shoe Care & Tools
|
3386 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Boot Pulls
|
3387 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Bags
|
3388 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Brushes
|
3389 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Care Kits
|
3390 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Dryers
|
3391 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Horns & Dressing Aids
|
3392 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Polishers
|
3393 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Polishes & Waxes
|
3394 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Scrapers
|
3395 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Treatments & Dyes
|
3396 |
-
Home & Garden > Household Supplies > Shoe Care & Tools > Shoe Trees & Shapers
|
3397 |
-
Home & Garden > Household Supplies > Stair Treads
|
3398 |
-
Home & Garden > Household Supplies > Storage & Organization
|
3399 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage
|
3400 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage > Charging Valets
|
3401 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage > Closet Organizers & Garment Racks
|
3402 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage > Clothes Valets
|
3403 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage > Hangers
|
3404 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage > Hat Boxes
|
3405 |
-
Home & Garden > Household Supplies > Storage & Organization > Clothing & Closet Storage > Shoe Racks & Organizers
|
3406 |
-
Home & Garden > Household Supplies > Storage & Organization > Flatware Chests
|
3407 |
-
Home & Garden > Household Supplies > Storage & Organization > Household Drawer Organizer Inserts
|
3408 |
-
Home & Garden > Household Supplies > Storage & Organization > Household Storage Bags
|
3409 |
-
Home & Garden > Household Supplies > Storage & Organization > Household Storage Caddies
|
3410 |
-
Home & Garden > Household Supplies > Storage & Organization > Household Storage Containers
|
3411 |
-
Home & Garden > Household Supplies > Storage & Organization > Household Storage Drawers
|
3412 |
-
Home & Garden > Household Supplies > Storage & Organization > Photo Storage
|
3413 |
-
Home & Garden > Household Supplies > Storage & Organization > Photo Storage > Photo Albums
|
3414 |
-
Home & Garden > Household Supplies > Storage & Organization > Photo Storage > Photo Storage Boxes
|
3415 |
-
Home & Garden > Household Supplies > Storage & Organization > Storage Hooks & Racks
|
3416 |
-
Home & Garden > Household Supplies > Storage & Organization > Storage Hooks & Racks > Ironing Board Hooks & Racks
|
3417 |
-
Home & Garden > Household Supplies > Storage & Organization > Storage Hooks & Racks > Umbrella Stands & Racks
|
3418 |
-
Home & Garden > Household Supplies > Storage & Organization > Storage Hooks & Racks > Utility Hooks
|
3419 |
-
Home & Garden > Household Supplies > Trash Compactor Accessories
|
3420 |
-
Home & Garden > Household Supplies > Waste Containment
|
3421 |
-
Home & Garden > Household Supplies > Waste Containment > Dumpsters
|
3422 |
-
Home & Garden > Household Supplies > Waste Containment > Hazardous Waste Containers
|
3423 |
-
Home & Garden > Household Supplies > Waste Containment > Recycling Containers
|
3424 |
-
Home & Garden > Household Supplies > Waste Containment > Trash Cans & Wastebaskets
|
3425 |
-
Home & Garden > Household Supplies > Waste Containment Accessories
|
3426 |
-
Home & Garden > Household Supplies > Waste Containment Accessories > Waste Container Carts
|
3427 |
-
Home & Garden > Household Supplies > Waste Containment Accessories > Waste Container Enclosures
|
3428 |
-
Home & Garden > Household Supplies > Waste Containment Accessories > Waste Container Labels & Signs
|
3429 |
-
Home & Garden > Household Supplies > Waste Containment Accessories > Waste Container Lids
|
3430 |
-
Home & Garden > Household Supplies > Waste Containment Accessories > Waste Container Wheels
|
3431 |
-
Home & Garden > Kitchen & Dining
|
3432 |
-
Home & Garden > Kitchen & Dining > Barware
|
3433 |
-
Home & Garden > Kitchen & Dining > Barware > Absinthe Fountains
|
3434 |
-
Home & Garden > Kitchen & Dining > Barware > Beer Dispensers & Taps
|
3435 |
-
Home & Garden > Kitchen & Dining > Barware > Beverage Chilling Cubes & Sticks
|
3436 |
-
Home & Garden > Kitchen & Dining > Barware > Beverage Tubs & Chillers
|
3437 |
-
Home & Garden > Kitchen & Dining > Barware > Bottle Caps
|
3438 |
-
Home & Garden > Kitchen & Dining > Barware > Bottle Stoppers & Savers
|
3439 |
-
Home & Garden > Kitchen & Dining > Barware > Coaster Holders
|
3440 |
-
Home & Garden > Kitchen & Dining > Barware > Coasters
|
3441 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail & Barware Tool Sets
|
3442 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail Shakers & Tools
|
3443 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail Shakers & Tools > Bar Ice Picks
|
3444 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail Shakers & Tools > Bottle Openers
|
3445 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail Shakers & Tools > Cocktail Shakers
|
3446 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail Shakers & Tools > Cocktail Strainers
|
3447 |
-
Home & Garden > Kitchen & Dining > Barware > Cocktail Shakers & Tools > Muddlers
|
3448 |
-
Home & Garden > Kitchen & Dining > Barware > Corkscrews
|
3449 |
-
Home & Garden > Kitchen & Dining > Barware > Decanters
|
3450 |
-
Home & Garden > Kitchen & Dining > Barware > Foil Cutters
|
3451 |
-
Home & Garden > Kitchen & Dining > Barware > Wine Aerators
|
3452 |
-
Home & Garden > Kitchen & Dining > Barware > Wine Bottle Holders
|
3453 |
-
Home & Garden > Kitchen & Dining > Barware > Wine Glass Charms
|
3454 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware
|
3455 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware
|
3456 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Bakeware Sets
|
3457 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Baking & Cookie Sheets
|
3458 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Bread Pans & Molds
|
3459 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Broiling Pans
|
3460 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Cake Pans & Molds
|
3461 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Muffin & Pastry Pans
|
3462 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Pie & Quiche Pans
|
3463 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Pizza Pans
|
3464 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Pizza Stones
|
3465 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Ramekins & Souffle Dishes
|
3466 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware > Roasting Pans
|
3467 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware Accessories
|
3468 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware Accessories > Baking Mats & Liners
|
3469 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware Accessories > Baking Weights
|
3470 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Bakeware Accessories > Roasting Pan Racks
|
3471 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware
|
3472 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware & Bakeware Combo Sets
|
3473 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Casserole Dishes
|
3474 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Cookware Sets
|
3475 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Crêpe & Blini Pans
|
3476 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Double Boilers
|
3477 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Dutch Ovens
|
3478 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Fermentation & Pickling Crocks
|
3479 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Griddles & Grill Pans
|
3480 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Grill Presses
|
3481 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Paella Pans
|
3482 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Pressure Cookers & Canners
|
3483 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Saucepans
|
3484 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Sauté Pans
|
3485 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Skillets & Frying Pans
|
3486 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Stock Pots
|
3487 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Stovetop Kettles
|
3488 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Tagines & Clay Cooking Pots
|
3489 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware > Woks
|
3490 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories
|
3491 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Pot & Pan Handles
|
3492 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Pot & Pan Lids
|
3493 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Pressure Cooker & Canner Accessories
|
3494 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Steamer Baskets
|
3495 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Wok Accessories
|
3496 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Wok Accessories > Wok Brushes
|
3497 |
-
Home & Garden > Kitchen & Dining > Cookware & Bakeware > Cookware Accessories > Wok Accessories > Wok Rings
|
3498 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers
|
3499 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Airpots
|
3500 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Canteens
|
3501 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Coolers
|
3502 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Drink Sleeves
|
3503 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Drink Sleeves > Can & Bottle Sleeves
|
3504 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Drink Sleeves > Cup Sleeves
|
3505 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Flasks
|
3506 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Insulated Bags
|
3507 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Lunch Boxes & Totes
|
3508 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Picnic Baskets
|
3509 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Replacement Drink Lids
|
3510 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Thermoses
|
3511 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Water Bottles
|
3512 |
-
Home & Garden > Kitchen & Dining > Food & Beverage Carriers > Wine Carrier Bags
|
3513 |
-
Home & Garden > Kitchen & Dining > Food Storage
|
3514 |
-
Home & Garden > Kitchen & Dining > Food Storage > Bread Boxes & Bags
|
3515 |
-
Home & Garden > Kitchen & Dining > Food Storage > Candy Buckets
|
3516 |
-
Home & Garden > Kitchen & Dining > Food Storage > Cookie Jars
|
3517 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Container Covers
|
3518 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Storage Bags
|
3519 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Storage Containers
|
3520 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Wraps
|
3521 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Wraps > Foil
|
3522 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Wraps > Parchment Paper
|
3523 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Wraps > Plastic Wrap
|
3524 |
-
Home & Garden > Kitchen & Dining > Food Storage > Food Wraps > Wax Paper
|
3525 |
-
Home & Garden > Kitchen & Dining > Food Storage > Honey Jars
|
3526 |
-
Home & Garden > Kitchen & Dining > Food Storage Accessories
|
3527 |
-
Home & Garden > Kitchen & Dining > Food Storage Accessories > Food & Beverage Labels
|
3528 |
-
Home & Garden > Kitchen & Dining > Food Storage Accessories > Food Wrap Dispensers
|
3529 |
-
Home & Garden > Kitchen & Dining > Food Storage Accessories > Oxygen Absorbers
|
3530 |
-
Home & Garden > Kitchen & Dining > Food Storage Accessories > Twist Ties & Bag Clips
|
3531 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories
|
3532 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Breadmaker Accessories
|
3533 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories
|
3534 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Decanter Warmers
|
3535 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Decanters
|
3536 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Filter Baskets
|
3537 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Filters
|
3538 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Grinder Accessories
|
3539 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Grinders
|
3540 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Maker & Espresso Machine Replacement Parts
|
3541 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Coffee Maker Water Filters
|
3542 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Frothing Pitchers
|
3543 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Coffee Maker & Espresso Machine Accessories > Portafilters
|
3544 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Cooktop, Oven & Range Accessories
|
3545 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Cotton Candy Machine Accessories
|
3546 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Deep Fryer Accessories
|
3547 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Dishwasher Parts & Accessories
|
3548 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Electric Kettle Accessories
|
3549 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Electric Skillet & Wok Accessories
|
3550 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Fondue Set Accessories
|
3551 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Fondue Set Accessories > Cooking Gel Fuels
|
3552 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Fondue Set Accessories > Fondue Forks
|
3553 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Fondue Set Accessories > Fondue Pot Stands
|
3554 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Food Dehydrator Accessories
|
3555 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Food Dehydrator Accessories > Food Dehydrator Sheets
|
3556 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Food Dehydrator Accessories > Food Dehydrator Trays
|
3557 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Food Grinder Accessories
|
3558 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Food Mixer & Blender Accessories
|
3559 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Freezer Accessories
|
3560 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Garbage Disposal Accessories
|
3561 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Ice Cream Maker Accessories
|
3562 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Ice Cream Maker Accessories > Ice Cream Maker Freezer Bowls
|
3563 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Ice Crusher & Shaver Accessories
|
3564 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Ice Maker Accessories
|
3565 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Juicer Accessories
|
3566 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Microwave Oven Accessories
|
3567 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories
|
3568 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Charcoal Briquettes
|
3569 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Charcoal Chimneys
|
3570 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Outdoor Grill Carts
|
3571 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Outdoor Grill Covers
|
3572 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Outdoor Grill Racks & Toppers
|
3573 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Outdoor Grill Replacement Parts
|
3574 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Outdoor Grill Spits & Baskets
|
3575 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Outdoor Grilling Planks
|
3576 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Outdoor Grill Accessories > Smoking Chips & Pellets
|
3577 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Pasta Maker Accessories
|
3578 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Popcorn Maker Accessories
|
3579 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Portable Cooking Stove Accessories
|
3580 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Range Hood Accessories
|
3581 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Refrigerator Accessories
|
3582 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Soda Maker Accessories
|
3583 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Steam Table Accessories
|
3584 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Steam Table Accessories > Steam Table Pan Covers
|
3585 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Steam Table Accessories > Steam Table Pans
|
3586 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Toaster Accessories
|
3587 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Vacuum Sealer Accessories
|
3588 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Vacuum Sealer Accessories > Vacuum Sealer Bags
|
3589 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Waffle Iron Accessories
|
3590 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Water Cooler Accessories
|
3591 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Water Cooler Accessories > Water Cooler Bottles
|
3592 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Wine Fridge Accessories
|
3593 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliance Accessories > Yogurt Maker Accessories
|
3594 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances
|
3595 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Beverage Warmers
|
3596 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Breadmakers
|
3597 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Chocolate Tempering Machines
|
3598 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines
|
3599 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines > Drip Coffee Makers
|
3600 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines > Electric & Stovetop Espresso Pots
|
3601 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines > Espresso Machines
|
3602 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines > French Presses
|
3603 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines > Percolators
|
3604 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Coffee Makers & Espresso Machines > Vacuum Coffee Makers
|
3605 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Cooktops
|
3606 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Cotton Candy Machines
|
3607 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Deep Fryers
|
3608 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Deli Slicers
|
3609 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Dishwashers
|
3610 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Electric Griddles & Grills
|
3611 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Electric Kettles
|
3612 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Electric Skillets & Woks
|
3613 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Fondue Pots & Sets
|
3614 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers
|
3615 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers > Egg Cookers
|
3616 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers > Food Steamers
|
3617 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers > Rice Cookers
|
3618 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers > Slow Cookers
|
3619 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers > Thermal Cookers
|
3620 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Cookers & Steamers > Water Ovens
|
3621 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Dehydrators
|
3622 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Grinders & Mills
|
3623 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Mixers & Blenders
|
3624 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Smokers
|
3625 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Warmers
|
3626 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Warmers > Chafing Dishes
|
3627 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Warmers > Food Heat Lamps
|
3628 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Warmers > Rice Keepers
|
3629 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Food Warmers > Steam Tables
|
3630 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Freezers
|
3631 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Frozen Drink Makers
|
3632 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Garbage Disposals
|
3633 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Gas Griddles
|
3634 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Hot Drink Makers
|
3635 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Hot Plates
|
3636 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Ice Cream Makers
|
3637 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Ice Crushers & Shavers
|
3638 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Ice Makers
|
3639 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Juicers
|
3640 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Knife Sharpeners
|
3641 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Microwave Ovens
|
3642 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Milk Frothers & Steamers
|
3643 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Mochi Makers
|
3644 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Outdoor Grills
|
3645 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Ovens
|
3646 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Pasta Makers
|
3647 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Popcorn Makers
|
3648 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Portable Cooking Stoves
|
3649 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Range Hoods
|
3650 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Ranges
|
3651 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Refrigerators
|
3652 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Roaster Ovens & Rotisseries
|
3653 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Soda Makers
|
3654 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Soy Milk Makers
|
3655 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Tea Makers
|
3656 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills
|
3657 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Countertop & Toaster Ovens
|
3658 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Donut Makers
|
3659 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Muffin & Cupcake Makers
|
3660 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Pizza Makers & Ovens
|
3661 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Pizzelle Makers
|
3662 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Pretzel Makers
|
3663 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Sandwich Makers
|
3664 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Toasters
|
3665 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Tortilla & Flatbread Makers
|
3666 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Toasters & Grills > Waffle Irons
|
3667 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Trash Compactors
|
3668 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Vacuum Sealers
|
3669 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Water Coolers
|
3670 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Water Filters
|
3671 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Wine Fridges
|
3672 |
-
Home & Garden > Kitchen & Dining > Kitchen Appliances > Yogurt Makers
|
3673 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils
|
3674 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Aprons
|
3675 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Baking Peels
|
3676 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Basters
|
3677 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Basting Brushes
|
3678 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Beverage Dispensers
|
3679 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cake Decorating Supplies
|
3680 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cake Servers
|
3681 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Can Crushers
|
3682 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Can Openers
|
3683 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Carving Forks
|
3684 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Channel Knives
|
3685 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Colanders & Strainers
|
3686 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Condiment Dispensers
|
3687 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cookie Cutters
|
3688 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cookie Presses
|
3689 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cooking Thermometer Accessories
|
3690 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cooking Thermometers
|
3691 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cooking Timers
|
3692 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cooking Torches
|
3693 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cooling Racks
|
3694 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Cutting Boards
|
3695 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Dish Racks & Drain Boards
|
3696 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Dough Wheels
|
3697 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Electric Knife Accessories
|
3698 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Electric Knife Accessories > Electric Knife Replacement Blades
|
3699 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Electric Knives
|
3700 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Flour Sifters
|
3701 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food & Drink Stencils
|
3702 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Crackers
|
3703 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Crackers > Lobster & Crab Crackers
|
3704 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Crackers > Nutcrackers
|
3705 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Crackers > Nutcrackers > Decorative Nutcrackers
|
3706 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Dispensers
|
3707 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Graters & Zesters
|
3708 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Peelers & Corers
|
3709 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Steaming Bags
|
3710 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Food Sticks & Skewers
|
3711 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Funnels
|
3712 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Garlic Presses
|
3713 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Gelatin Molds
|
3714 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Ice Cube Trays
|
3715 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Jerky Guns
|
3716 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Knives
|
3717 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Molds
|
3718 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers
|
3719 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Can Organizers
|
3720 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Drinkware Holders
|
3721 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Kitchen Cabinet Organizers
|
3722 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Kitchen Counter & Beverage Station Organizers
|
3723 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Kitchen Utensil Holders & Racks
|
3724 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Knife Blocks & Holders
|
3725 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Napkin Holders & Dispensers
|
3726 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Paper Towel Holders & Dispensers
|
3727 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Pot Racks
|
3728 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Spice Organizers
|
3729 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Straw Holders & Dispensers
|
3730 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Sugar Caddies
|
3731 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Toothpick Holders & Dispensers
|
3732 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Organizers > Utensil & Flatware Trays
|
3733 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Scrapers
|
3734 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Scrapers > Bench Scrapers
|
3735 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Scrapers > Bowl Scrapers
|
3736 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Scrapers > Grill Scrapers
|
3737 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Shears
|
3738 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Slicers
|
3739 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Kitchen Utensil Sets
|
3740 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Ladles
|
3741 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Mashers
|
3742 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Measuring Cups & Spoons
|
3743 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Meat Tenderizers
|
3744 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Mixing Bowls
|
3745 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Mortars & Pestles
|
3746 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Oil & Vinegar Dispensers
|
3747 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Oven Bags
|
3748 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Oven Mitts & Pot Holders
|
3749 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Pasta Molds & Stamps
|
3750 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Pastry Blenders
|
3751 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Pastry Cloths
|
3752 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Pizza Cutter Accessories
|
3753 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Pizza Cutters
|
3754 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Ricers
|
3755 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Rolling Pin Accessories
|
3756 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Rolling Pin Accessories > Rolling Pin Covers & Sleeves
|
3757 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Rolling Pin Accessories > Rolling Pin Rings
|
3758 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Rolling Pins
|
3759 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Salad Dressing Mixers & Shakers
|
3760 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Salad Spinners
|
3761 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Scoops
|
3762 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Scoops > Ice Cream Scoops
|
3763 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Scoops > Ice Scoops
|
3764 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Scoops > Melon Ballers
|
3765 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Scoops > Popcorn & French Fry Scoops
|
3766 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Sink Caddies
|
3767 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Sink Mats & Grids
|
3768 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Slotted Spoons
|
3769 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Spatulas
|
3770 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Spice Grinder Accessories
|
3771 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Spice Grinders
|
3772 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Spoon Rests
|
3773 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Sugar Dispensers
|
3774 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Sushi Mats
|
3775 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Tea Strainers
|
3776 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Tongs
|
3777 |
-
Home & Garden > Kitchen & Dining > Kitchen Tools & Utensils > Whisks
|
3778 |
-
Home & Garden > Kitchen & Dining > Prefabricated Kitchens & Kitchenettes
|
3779 |
-
Home & Garden > Kitchen & Dining > Tableware
|
3780 |
-
Home & Garden > Kitchen & Dining > Tableware > Coffee & Tea Sets
|
3781 |
-
Home & Garden > Kitchen & Dining > Tableware > Coffee Servers & Tea Pots
|
3782 |
-
Home & Garden > Kitchen & Dining > Tableware > Dinnerware
|
3783 |
-
Home & Garden > Kitchen & Dining > Tableware > Dinnerware > Bowls
|
3784 |
-
Home & Garden > Kitchen & Dining > Tableware > Dinnerware > Dinnerware Sets
|
3785 |
-
Home & Garden > Kitchen & Dining > Tableware > Dinnerware > Plates
|
3786 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware
|
3787 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Beer Glasses
|
3788 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Coffee & Tea Cups
|
3789 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Coffee & Tea Saucers
|
3790 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Drinkware Sets
|
3791 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Mugs
|
3792 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Shot Glasses
|
3793 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Stemware
|
3794 |
-
Home & Garden > Kitchen & Dining > Tableware > Drinkware > Tumblers
|
3795 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware
|
3796 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware > Chopstick Accessories
|
3797 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware > Chopsticks
|
3798 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware > Flatware Sets
|
3799 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware > Forks
|
3800 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware > Spoons
|
3801 |
-
Home & Garden > Kitchen & Dining > Tableware > Flatware > Table Knives
|
3802 |
-
Home & Garden > Kitchen & Dining > Tableware > Salt & Pepper Shakers
|
3803 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware
|
3804 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Butter Dishes
|
3805 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Cake Boards
|
3806 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Cake Stands
|
3807 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Egg Cups
|
3808 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Gravy Boats
|
3809 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Punch Bowls
|
3810 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Serving Pitchers & Carafes
|
3811 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Serving Platters
|
3812 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Serving Trays
|
3813 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Sugar Bowls & Creamers
|
3814 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware > Tureens
|
3815 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware Accessories
|
3816 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware Accessories > Punch Bowl Stands
|
3817 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware Accessories > Tureen Lids
|
3818 |
-
Home & Garden > Kitchen & Dining > Tableware > Serveware Accessories > Tureen Stands
|
3819 |
-
Home & Garden > Kitchen & Dining > Tableware > Tablecloth Clips & Weights
|
3820 |
-
Home & Garden > Kitchen & Dining > Tableware > Trivets
|
3821 |
-
Home & Garden > Lawn & Garden
|
3822 |
-
Home & Garden > Lawn & Garden > Gardening
|
3823 |
-
Home & Garden > Lawn & Garden > Gardening > Composting
|
3824 |
-
Home & Garden > Lawn & Garden > Gardening > Composting > Compost
|
3825 |
-
Home & Garden > Lawn & Garden > Gardening > Composting > Compost Aerators
|
3826 |
-
Home & Garden > Lawn & Garden > Gardening > Composting > Composters
|
3827 |
-
Home & Garden > Lawn & Garden > Gardening > Disease Control
|
3828 |
-
Home & Garden > Lawn & Garden > Gardening > Fertilizers
|
3829 |
-
Home & Garden > Lawn & Garden > Gardening > Garden Pot Saucers & Trays
|
3830 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Accessories
|
3831 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Accessories > Gardening Scooters, Seats & Kneelers
|
3832 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Accessories > Gardening Totes
|
3833 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Accessories > Potting Benches
|
3834 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tool Accessories
|
3835 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tool Accessories > Gardening Tool Handles
|
3836 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tool Accessories > Gardening Tool Heads
|
3837 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tool Accessories > Wheelbarrow Parts
|
3838 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools
|
3839 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Bulb Planting Tools
|
3840 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Cultivating Tools
|
3841 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Gardening Forks
|
3842 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Gardening Sickles & Machetes
|
3843 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Gardening Trowels
|
3844 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Lawn & Garden Sprayers
|
3845 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Lawn Rollers
|
3846 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Pruning Saws
|
3847 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Pruning Shears
|
3848 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Rakes
|
3849 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Shovels & Spades
|
3850 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Spreaders
|
3851 |
-
Home & Garden > Lawn & Garden > Gardening > Gardening Tools > Wheelbarrows
|
3852 |
-
Home & Garden > Lawn & Garden > Gardening > Greenhouses
|
3853 |
-
Home & Garden > Lawn & Garden > Gardening > Herbicides
|
3854 |
-
Home & Garden > Lawn & Garden > Gardening > Landscape Fabric
|
3855 |
-
Home & Garden > Lawn & Garden > Gardening > Landscape Fabric Accessories
|
3856 |
-
Home & Garden > Lawn & Garden > Gardening > Landscape Fabric Accessories > Landscape Fabric Staples & Pins
|
3857 |
-
Home & Garden > Lawn & Garden > Gardening > Landscape Fabric Accessories > Landscape Fabric Tape
|
3858 |
-
Home & Garden > Lawn & Garden > Gardening > Mulch
|
3859 |
-
Home & Garden > Lawn & Garden > Gardening > Plant Cages & Supports
|
3860 |
-
Home & Garden > Lawn & Garden > Gardening > Plant Stands
|
3861 |
-
Home & Garden > Lawn & Garden > Gardening > Pot & Planter Liners
|
3862 |
-
Home & Garden > Lawn & Garden > Gardening > Pots & Planters
|
3863 |
-
Home & Garden > Lawn & Garden > Gardening > Rain Barrels
|
3864 |
-
Home & Garden > Lawn & Garden > Gardening > Sands & Soils
|
3865 |
-
Home & Garden > Lawn & Garden > Gardening > Sands & Soils > Sand
|
3866 |
-
Home & Garden > Lawn & Garden > Gardening > Sands & Soils > Soil
|
3867 |
-
Home & Garden > Lawn & Garden > Outdoor Living
|
3868 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Awning Accessories
|
3869 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Awnings
|
3870 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Hammock Parts & Accessories
|
3871 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Hammocks
|
3872 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Blankets
|
3873 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Blankets > Beach Mats
|
3874 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Blankets > Picnic Blankets
|
3875 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Blankets > Poncho Liners
|
3876 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures
|
3877 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopies & Gazebos
|
3878 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopy & Gazebo Accessories
|
3879 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopy & Gazebo Accessories > Canopy & Gazebo Enclosure Kits
|
3880 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopy & Gazebo Accessories > Canopy & Gazebo Frames
|
3881 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopy & Gazebo Accessories > Canopy & Gazebo Tops
|
3882 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopy & Gazebo Accessories > Canopy Poles
|
3883 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Canopy & Gazebo Accessories > Canopy Weights
|
3884 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Garden Arches, Trellises, Arbors & Pergolas
|
3885 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Garden Bridges
|
3886 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Structures > Sheds, Garages & Carports
|
3887 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrella & Sunshade Accessories
|
3888 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrella & Sunshade Accessories > Outdoor Umbrella & Sunshade Fabric
|
3889 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrella & Sunshade Accessories > Outdoor Umbrella Bases
|
3890 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrella & Sunshade Accessories > Outdoor Umbrella Covers
|
3891 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrella & Sunshade Accessories > Outdoor Umbrella Enclosure Kits
|
3892 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrella & Sunshade Accessories > Outdoor Umbrella Lights
|
3893 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Outdoor Umbrellas & Sunshades
|
3894 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Porch Swing Accessories
|
3895 |
-
Home & Garden > Lawn & Garden > Outdoor Living > Porch Swings
|
3896 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment
|
3897 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Chainsaws
|
3898 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Grass Edgers
|
3899 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Hedge Trimmers
|
3900 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Aerators & Dethatchers
|
3901 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Mowers
|
3902 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Mowers > Riding Mowers
|
3903 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Mowers > Robotic Mowers
|
3904 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Mowers > Tow-Behind Mowers
|
3905 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Mowers > Walk-Behind Mowers
|
3906 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Lawn Vacuums
|
3907 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Leaf Blowers
|
3908 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Outdoor Power Equipment Base Units
|
3909 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Outdoor Power Equipment Sets
|
3910 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Power Sweepers
|
3911 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Power Tillers & Cultivators
|
3912 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Pressure Washers
|
3913 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Snow Blowers
|
3914 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Tractors
|
3915 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment > Weed Trimmers
|
3916 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories
|
3917 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Chainsaw Accessories
|
3918 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Chainsaw Accessories > Chainsaw Bars
|
3919 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Chainsaw Accessories > Chainsaw Chains
|
3920 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Grass Edger Accessories
|
3921 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Hedge Trimmer Accessories
|
3922 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories
|
3923 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Brush Mower Attachments
|
3924 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Bags
|
3925 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Belts
|
3926 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Blades
|
3927 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Covers
|
3928 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Mulch Kits
|
3929 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Mulch Plugs & Plates
|
3930 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Pulleys & Idlers
|
3931 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Tire Tubes
|
3932 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Tires
|
3933 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Mower Wheels
|
3934 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Striping Kits
|
3935 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Lawn Mower Accessories > Lawn Sweepers
|
3936 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Leaf Blower Accessories
|
3937 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Leaf Blower Accessories > Leaf Blower Tubes
|
3938 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments
|
3939 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments > Grass Edger Attachments
|
3940 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments > Ground & Leaf Blower Attachments
|
3941 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments > Hedge Trimmer Attachments
|
3942 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments > Pole Saw Attachments
|
3943 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments > Tiller & Cultivator Attachments
|
3944 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Multifunction Outdoor Power Equipment Attachments > Weed Trimmer Attachments
|
3945 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Outdoor Power Equipment Batteries
|
3946 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Pressure Washer Accessories
|
3947 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Snow Blower Accessories
|
3948 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Tractor Parts & Accessories
|
3949 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Tractor Parts & Accessories > Tractor Tires
|
3950 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Tractor Parts & Accessories > Tractor Wheels
|
3951 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Weed Trimmer Accessories
|
3952 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Weed Trimmer Accessories > Weed Trimmer Blades & Spools
|
3953 |
-
Home & Garden > Lawn & Garden > Outdoor Power Equipment Accessories > Weed Trimmer Accessories > Weed Trimmer Spool Covers
|
3954 |
-
Home & Garden > Lawn & Garden > Snow Removal
|
3955 |
-
Home & Garden > Lawn & Garden > Snow Removal > Ice Scrapers & Snow Brushes
|
3956 |
-
Home & Garden > Lawn & Garden > Snow Removal > Snow Shovels
|
3957 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation
|
3958 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Garden Hose Fittings & Valves
|
3959 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Garden Hose Spray Nozzles
|
3960 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Garden Hoses
|
3961 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Sprinkler Accessories
|
3962 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Sprinkler Accessories > Sprinkler Controls
|
3963 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Sprinkler Accessories > Sprinkler Valves
|
3964 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Sprinklers & Sprinkler Heads
|
3965 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Watering Can Accesssories
|
3966 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Watering Cans
|
3967 |
-
Home & Garden > Lawn & Garden > Watering & Irrigation > Watering Globes & Spikes
|
3968 |
-
Home & Garden > Lighting
|
3969 |
-
Home & Garden > Lighting > Emergency Lighting
|
3970 |
-
Home & Garden > Lighting > Floating & Submersible Lights
|
3971 |
-
Home & Garden > Lighting > Flood & Spot Lights
|
3972 |
-
Home & Garden > Lighting > In-Ground Lights
|
3973 |
-
Home & Garden > Lighting > Lamps
|
3974 |
-
Home & Garden > Lighting > Landscape Pathway Lighting
|
3975 |
-
Home & Garden > Lighting > Light Bulbs
|
3976 |
-
Home & Garden > Lighting > Light Bulbs > Compact Fluorescent Lamps
|
3977 |
-
Home & Garden > Lighting > Light Bulbs > Fluorescent Tubes
|
3978 |
-
Home & Garden > Lighting > Light Bulbs > Incandescent Light Bulbs
|
3979 |
-
Home & Garden > Lighting > Light Bulbs > LED Light Bulbs
|
3980 |
-
Home & Garden > Lighting > Light Ropes & Strings
|
3981 |
-
Home & Garden > Lighting > Lighting Fixtures
|
3982 |
-
Home & Garden > Lighting > Lighting Fixtures > Cabinet Light Fixtures
|
3983 |
-
Home & Garden > Lighting > Lighting Fixtures > Ceiling Light Fixtures
|
3984 |
-
Home & Garden > Lighting > Lighting Fixtures > Chandeliers
|
3985 |
-
Home & Garden > Lighting > Lighting Fixtures > Wall Light Fixtures
|
3986 |
-
Home & Garden > Lighting > Night Lights & Ambient Lighting
|
3987 |
-
Home & Garden > Lighting > Picture Lights
|
3988 |
-
Home & Garden > Lighting > Tiki Torches & Oil Lamps
|
3989 |
-
Home & Garden > Lighting > Track Lighting
|
3990 |
-
Home & Garden > Lighting > Track Lighting > Track Lighting Accessories
|
3991 |
-
Home & Garden > Lighting > Track Lighting > Track Lighting Fixtures
|
3992 |
-
Home & Garden > Lighting > Track Lighting > Track Lighting Rails
|
3993 |
-
Home & Garden > Lighting Accessories
|
3994 |
-
Home & Garden > Lighting Accessories > Lamp Post Bases
|
3995 |
-
Home & Garden > Lighting Accessories > Lamp Post Mounts
|
3996 |
-
Home & Garden > Lighting Accessories > Lamp Shades
|
3997 |
-
Home & Garden > Lighting Accessories > Lighting Timers
|
3998 |
-
Home & Garden > Lighting Accessories > Oil Lamp Fuel
|
3999 |
-
Home & Garden > Linens & Bedding
|
4000 |
-
Home & Garden > Linens & Bedding > Bedding
|
4001 |
-
Home & Garden > Linens & Bedding > Bedding > Bed Canopies
|
4002 |
-
Home & Garden > Linens & Bedding > Bedding > Bed Sheets
|
4003 |
-
Home & Garden > Linens & Bedding > Bedding > Bedskirts
|
4004 |
-
Home & Garden > Linens & Bedding > Bedding > Blankets
|
4005 |
-
Home & Garden > Linens & Bedding > Bedding > Duvet Covers
|
4006 |
-
Home & Garden > Linens & Bedding > Bedding > Mattress Protectors
|
4007 |
-
Home & Garden > Linens & Bedding > Bedding > Mattress Protectors > Mattress Encasements
|
4008 |
-
Home & Garden > Linens & Bedding > Bedding > Mattress Protectors > Mattress Pads
|
4009 |
-
Home & Garden > Linens & Bedding > Bedding > Nap Mats
|
4010 |
-
Home & Garden > Linens & Bedding > Bedding > Pillowcases & Shams
|
4011 |
-
Home & Garden > Linens & Bedding > Bedding > Pillows
|
4012 |
-
Home & Garden > Linens & Bedding > Bedding > Quilts & Comforters
|
4013 |
-
Home & Garden > Linens & Bedding > Kitchen Linens Sets
|
4014 |
-
Home & Garden > Linens & Bedding > Table Linens
|
4015 |
-
Home & Garden > Linens & Bedding > Table Linens > Cloth Napkins
|
4016 |
-
Home & Garden > Linens & Bedding > Table Linens > Doilies
|
4017 |
-
Home & Garden > Linens & Bedding > Table Linens > Placemats
|
4018 |
-
Home & Garden > Linens & Bedding > Table Linens > Table Runners
|
4019 |
-
Home & Garden > Linens & Bedding > Table Linens > Table Skirts
|
4020 |
-
Home & Garden > Linens & Bedding > Table Linens > Tablecloths
|
4021 |
-
Home & Garden > Linens & Bedding > Towels
|
4022 |
-
Home & Garden > Linens & Bedding > Towels > Bath Towels & Washcloths
|
4023 |
-
Home & Garden > Linens & Bedding > Towels > Beach Towels
|
4024 |
-
Home & Garden > Linens & Bedding > Towels > Kitchen Towels
|
4025 |
-
Home & Garden > Parasols & Rain Umbrellas
|
4026 |
-
Home & Garden > Plants
|
4027 |
-
Home & Garden > Plants > Aquatic Plants
|
4028 |
-
Home & Garden > Plants > Flowers
|
4029 |
-
Home & Garden > Plants > Indoor & Outdoor Plants
|
4030 |
-
Home & Garden > Plants > Indoor & Outdoor Plants > Bushes & Shrubs
|
4031 |
-
Home & Garden > Plants > Indoor & Outdoor Plants > Landscaping & Garden Plants
|
4032 |
-
Home & Garden > Plants > Indoor & Outdoor Plants > Potted Houseplants
|
4033 |
-
Home & Garden > Plants > Plant & Herb Growing Kits
|
4034 |
-
Home & Garden > Plants > Seeds
|
4035 |
-
Home & Garden > Plants > Seeds > Plant & Flower Bulbs
|
4036 |
-
Home & Garden > Plants > Seeds > Seeds & Seed Tape
|
4037 |
-
Home & Garden > Plants > Trees
|
4038 |
-
Home & Garden > Pool & Spa
|
4039 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories
|
4040 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Diving Boards
|
4041 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool & Spa Chlorine Generators
|
4042 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool & Spa Filters
|
4043 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool & Spa Maintenance Kits
|
4044 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Brushes & Brooms
|
4045 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Cleaner Hoses
|
4046 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Cleaners & Chemicals
|
4047 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Cover Accessories
|
4048 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Covers & Ground Cloths
|
4049 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Deck Kits
|
4050 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Floats & Loungers
|
4051 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Heaters
|
4052 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Ladders, Steps & Ramps
|
4053 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Liners
|
4054 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Skimmers
|
4055 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Sweeps & Vacuums
|
4056 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Toys
|
4057 |
-
Home & Garden > Pool & Spa > Pool & Spa Accessories > Pool Water Slides
|
4058 |
-
Home & Garden > Pool & Spa > Sauna Accessories
|
4059 |
-
Home & Garden > Pool & Spa > Sauna Accessories > Sauna Buckets & Ladles
|
4060 |
-
Home & Garden > Pool & Spa > Sauna Accessories > Sauna Heaters
|
4061 |
-
Home & Garden > Pool & Spa > Sauna Accessories > Sauna Kits
|
4062 |
-
Home & Garden > Pool & Spa > Saunas
|
4063 |
-
Home & Garden > Pool & Spa > Spas
|
4064 |
-
Home & Garden > Pool & Spa > Swimming Pools
|
4065 |
-
Home & Garden > Smoking Accessories
|
4066 |
-
Home & Garden > Smoking Accessories > Ashtrays
|
4067 |
-
Home & Garden > Smoking Accessories > Cigar Cases
|
4068 |
-
Home & Garden > Smoking Accessories > Cigar Cutters & Punches
|
4069 |
-
Home & Garden > Smoking Accessories > Cigarette Cases
|
4070 |
-
Home & Garden > Smoking Accessories > Cigarette Holders
|
4071 |
-
Home & Garden > Smoking Accessories > Humidor Accessories
|
4072 |
-
Home & Garden > Smoking Accessories > Humidors
|
4073 |
-
Home & Garden > Umbrella Sleeves & Cases
|
4074 |
-
Home & Garden > Wood Stoves
|
4075 |
-
Luggage & Bags
|
4076 |
-
Luggage & Bags > Backpacks
|
4077 |
-
Luggage & Bags > Briefcases
|
4078 |
-
Luggage & Bags > Cosmetic & Toiletry Bags
|
4079 |
-
Luggage & Bags > Diaper Bags
|
4080 |
-
Luggage & Bags > Dry Boxes
|
4081 |
-
Luggage & Bags > Duffel Bags
|
4082 |
-
Luggage & Bags > Fanny Packs
|
4083 |
-
Luggage & Bags > Garment Bags
|
4084 |
-
Luggage & Bags > Luggage Accessories
|
4085 |
-
Luggage & Bags > Luggage Accessories > Dry Box Liners & Inserts
|
4086 |
-
Luggage & Bags > Luggage Accessories > Luggage Covers
|
4087 |
-
Luggage & Bags > Luggage Accessories > Luggage Racks & Stands
|
4088 |
-
Luggage & Bags > Luggage Accessories > Luggage Straps
|
4089 |
-
Luggage & Bags > Luggage Accessories > Luggage Tags
|
4090 |
-
Luggage & Bags > Luggage Accessories > Packing Organizers
|
4091 |
-
Luggage & Bags > Luggage Accessories > Travel Bottles & Containers
|
4092 |
-
Luggage & Bags > Luggage Accessories > Travel Pouches
|
4093 |
-
Luggage & Bags > Messenger Bags
|
4094 |
-
Luggage & Bags > Shopping Totes
|
4095 |
-
Luggage & Bags > Suitcases
|
4096 |
-
Luggage & Bags > Train Cases
|
4097 |
-
Mature
|
4098 |
-
Mature > Erotic
|
4099 |
-
Mature > Erotic > Erotic Books
|
4100 |
-
Mature > Erotic > Erotic Clothing
|
4101 |
-
Mature > Erotic > Erotic DVDs & Videos
|
4102 |
-
Mature > Erotic > Erotic Food & Edibles
|
4103 |
-
Mature > Erotic > Erotic Games
|
4104 |
-
Mature > Erotic > Erotic Magazines
|
4105 |
-
Mature > Erotic > Pole Dancing Kits
|
4106 |
-
Mature > Erotic > Sex Toys
|
4107 |
-
Mature > Weapons
|
4108 |
-
Mature > Weapons > Brass Knuckles
|
4109 |
-
Mature > Weapons > Clubs & Batons
|
4110 |
-
Mature > Weapons > Combat Knives
|
4111 |
-
Mature > Weapons > Gun Care & Accessories
|
4112 |
-
Mature > Weapons > Gun Care & Accessories > Ammunition
|
4113 |
-
Mature > Weapons > Gun Care & Accessories > Ammunition Cases & Holders
|
4114 |
-
Mature > Weapons > Gun Care & Accessories > Gun Cases & Range Bags
|
4115 |
-
Mature > Weapons > Gun Care & Accessories > Gun Cleaning
|
4116 |
-
Mature > Weapons > Gun Care & Accessories > Gun Cleaning > Gun Cleaning Cloths & Swabs
|
4117 |
-
Mature > Weapons > Gun Care & Accessories > Gun Cleaning > Gun Cleaning Patches
|
4118 |
-
Mature > Weapons > Gun Care & Accessories > Gun Cleaning > Gun Cleaning Solvents
|
4119 |
-
Mature > Weapons > Gun Care & Accessories > Gun Grips
|
4120 |
-
Mature > Weapons > Gun Care & Accessories > Gun Holsters
|
4121 |
-
Mature > Weapons > Gun Care & Accessories > Gun Lights
|
4122 |
-
Mature > Weapons > Gun Care & Accessories > Gun Rails
|
4123 |
-
Mature > Weapons > Gun Care & Accessories > Gun Slings
|
4124 |
-
Mature > Weapons > Gun Care & Accessories > Reloading Supplies & Equipment
|
4125 |
-
Mature > Weapons > Gun Care & Accessories > Reloading Supplies & Equipment > Ammunition Reloading Presses
|
4126 |
-
Mature > Weapons > Guns
|
4127 |
-
Mature > Weapons > Mace & Pepper Spray
|
4128 |
-
Mature > Weapons > Nunchucks
|
4129 |
-
Mature > Weapons > Spears
|
4130 |
-
Mature > Weapons > Staff & Stick Weapons
|
4131 |
-
Mature > Weapons > Stun Guns & Tasers
|
4132 |
-
Mature > Weapons > Swords
|
4133 |
-
Mature > Weapons > Throwing Stars
|
4134 |
-
Mature > Weapons > Whips
|
4135 |
-
Media
|
4136 |
-
Media > Books
|
4137 |
-
Media > Books > Audiobooks
|
4138 |
-
Media > Books > E-books
|
4139 |
-
Media > Books > Print Books
|
4140 |
-
Media > Carpentry & Woodworking Project Plans
|
4141 |
-
Media > DVDs & Videos
|
4142 |
-
Media > DVDs & Videos > Film & Television DVDs
|
4143 |
-
Media > DVDs & Videos > Film & Television Digital Downloads
|
4144 |
-
Media > DVDs & Videos > Film & Television VHS Tapes
|
4145 |
-
Media > Magazines & Newspapers
|
4146 |
-
Media > Magazines & Newspapers > Magazines
|
4147 |
-
Media > Magazines & Newspapers > Newspapers
|
4148 |
-
Media > Music & Sound Recordings
|
4149 |
-
Media > Music & Sound Recordings > Digital Music Downloads
|
4150 |
-
Media > Music & Sound Recordings > Music CDs
|
4151 |
-
Media > Music & Sound Recordings > Music Cassette Tapes
|
4152 |
-
Media > Music & Sound Recordings > Records & LPs
|
4153 |
-
Media > Music & Sound Recordings > Spoken Word & Field Recordings
|
4154 |
-
Media > Product Manuals
|
4155 |
-
Media > Product Manuals > Camera & Optics Manuals
|
4156 |
-
Media > Product Manuals > Electronics Manuals
|
4157 |
-
Media > Product Manuals > Exercise & Fitness Equipment Manuals
|
4158 |
-
Media > Product Manuals > Household Appliance Manuals
|
4159 |
-
Media > Product Manuals > Kitchen Appliance Manuals
|
4160 |
-
Media > Product Manuals > Model & Toys Manuals
|
4161 |
-
Media > Product Manuals > Office Supply Manuals
|
4162 |
-
Media > Product Manuals > Power Tool & Equipment Manuals
|
4163 |
-
Media > Product Manuals > Vehicle Service Manuals
|
4164 |
-
Media > Sheet Music
|
4165 |
-
Office Supplies
|
4166 |
-
Office Supplies > Book Accessories
|
4167 |
-
Office Supplies > Book Accessories > Book Covers
|
4168 |
-
Office Supplies > Book Accessories > Book Lights
|
4169 |
-
Office Supplies > Book Accessories > Book Stands & Rests
|
4170 |
-
Office Supplies > Book Accessories > Bookmarks
|
4171 |
-
Office Supplies > Desk Pads & Blotters
|
4172 |
-
Office Supplies > Filing & Organization
|
4173 |
-
Office Supplies > Filing & Organization > Address Books
|
4174 |
-
Office Supplies > Filing & Organization > Binding Supplies
|
4175 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binder Accessories
|
4176 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binder Accessories > Binder Rings
|
4177 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binder Accessories > Index Dividers
|
4178 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binder Accessories > Sheet Protectors
|
4179 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binders
|
4180 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binding Combs & Spines
|
4181 |
-
Office Supplies > Filing & Organization > Binding Supplies > Binding Machines
|
4182 |
-
Office Supplies > Filing & Organization > Business Card Books
|
4183 |
-
Office Supplies > Filing & Organization > Business Card Stands
|
4184 |
-
Office Supplies > Filing & Organization > CD/DVD Cases & Organizers
|
4185 |
-
Office Supplies > Filing & Organization > Calendars, Organizers & Planners
|
4186 |
-
Office Supplies > Filing & Organization > Card Files
|
4187 |
-
Office Supplies > Filing & Organization > Card Sleeves
|
4188 |
-
Office Supplies > Filing & Organization > Cash Boxes
|
4189 |
-
Office Supplies > Filing & Organization > Desk Organizers
|
4190 |
-
Office Supplies > Filing & Organization > File Boxes
|
4191 |
-
Office Supplies > Filing & Organization > File Folders
|
4192 |
-
Office Supplies > Filing & Organization > Folders & Report Covers
|
4193 |
-
Office Supplies > Filing & Organization > Folders & Report Covers > Pocket Folders
|
4194 |
-
Office Supplies > Filing & Organization > Folders & Report Covers > Report Covers
|
4195 |
-
Office Supplies > Filing & Organization > Greeting Card Organizers
|
4196 |
-
Office Supplies > Filing & Organization > Mail Sorters
|
4197 |
-
Office Supplies > Filing & Organization > Pen & Pencil Cases
|
4198 |
-
Office Supplies > Filing & Organization > Portfolios & Padfolios
|
4199 |
-
Office Supplies > Filing & Organization > Portfolios & Padfolios > Padfolios
|
4200 |
-
Office Supplies > Filing & Organization > Portfolios & Padfolios > Portfolios
|
4201 |
-
Office Supplies > Filing & Organization > Recipe Card Boxes
|
4202 |
-
Office Supplies > General Office Supplies
|
4203 |
-
Office Supplies > General Office Supplies > Brass Fasteners
|
4204 |
-
Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes
|
4205 |
-
Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes > Correction Fluids
|
4206 |
-
Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes > Correction Pens
|
4207 |
-
Office Supplies > General Office Supplies > Correction Fluids, Pens & Tapes > Correction Tapes
|
4208 |
-
Office Supplies > General Office Supplies > Erasers
|
4209 |
-
Office Supplies > General Office Supplies > Labels & Tags
|
4210 |
-
Office Supplies > General Office Supplies > Labels & Tags > Address Labels
|
4211 |
-
Office Supplies > General Office Supplies > Labels & Tags > Folder Tabs
|
4212 |
-
Office Supplies > General Office Supplies > Labels & Tags > Label Clips
|
4213 |
-
Office Supplies > General Office Supplies > Labels & Tags > Label Tapes & Refill Rolls
|
4214 |
-
Office Supplies > General Office Supplies > Labels & Tags > Shipping Labels
|
4215 |
-
Office Supplies > General Office Supplies > Labels & Tags > Shipping Tags
|
4216 |
-
Office Supplies > General Office Supplies > Laminating Film, Pouches & Sheets
|
4217 |
-
Office Supplies > General Office Supplies > Mounting Putty
|
4218 |
-
Office Supplies > General Office Supplies > Office Tape
|
4219 |
-
Office Supplies > General Office Supplies > Paper Clips & Clamps
|
4220 |
-
Office Supplies > General Office Supplies > Paper Clips & Clamps > Binder Clips
|
4221 |
-
Office Supplies > General Office Supplies > Paper Clips & Clamps > Paper Clips
|
4222 |
-
Office Supplies > General Office Supplies > Paper Products
|
4223 |
-
Office Supplies > General Office Supplies > Paper Products > Binder Paper
|
4224 |
-
Office Supplies > General Office Supplies > Paper Products > Blank ID Cards
|
4225 |
-
Office Supplies > General Office Supplies > Paper Products > Business Cards
|
4226 |
-
Office Supplies > General Office Supplies > Paper Products > Business Forms & Receipts
|
4227 |
-
Office Supplies > General Office Supplies > Paper Products > Checks
|
4228 |
-
Office Supplies > General Office Supplies > Paper Products > Cover Paper
|
4229 |
-
Office Supplies > General Office Supplies > Paper Products > Envelopes
|
4230 |
-
Office Supplies > General Office Supplies > Paper Products > Index Cards
|
4231 |
-
Office Supplies > General Office Supplies > Paper Products > Notebooks & Notepads
|
4232 |
-
Office Supplies > General Office Supplies > Paper Products > Post Cards
|
4233 |
-
Office Supplies > General Office Supplies > Paper Products > Printer & Copier Paper
|
4234 |
-
Office Supplies > General Office Supplies > Paper Products > Receipt & Adding Machine Paper Rolls
|
4235 |
-
Office Supplies > General Office Supplies > Paper Products > Stationery
|
4236 |
-
Office Supplies > General Office Supplies > Paper Products > Sticky Notes
|
4237 |
-
Office Supplies > General Office Supplies > Rubber Bands
|
4238 |
-
Office Supplies > General Office Supplies > Staples
|
4239 |
-
Office Supplies > General Office Supplies > Tacks & Pushpins
|
4240 |
-
Office Supplies > Impulse Sealers
|
4241 |
-
Office Supplies > Lap Desks
|
4242 |
-
Office Supplies > Name Plates
|
4243 |
-
Office Supplies > Office & Chair Mats
|
4244 |
-
Office Supplies > Office & Chair Mats > Anti-Fatigue Mats
|
4245 |
-
Office Supplies > Office & Chair Mats > Chair Mats
|
4246 |
-
Office Supplies > Office & Chair Mats > Office Mats
|
4247 |
-
Office Supplies > Office Carts
|
4248 |
-
Office Supplies > Office Carts > AV Carts
|
4249 |
-
Office Supplies > Office Carts > Book Carts
|
4250 |
-
Office Supplies > Office Carts > File Carts
|
4251 |
-
Office Supplies > Office Carts > Mail Carts
|
4252 |
-
Office Supplies > Office Carts > Utility Carts
|
4253 |
-
Office Supplies > Office Equipment
|
4254 |
-
Office Supplies > Office Equipment > Calculator Accessories
|
4255 |
-
Office Supplies > Office Equipment > Calculators
|
4256 |
-
Office Supplies > Office Equipment > Calculators > Basic Calculators
|
4257 |
-
Office Supplies > Office Equipment > Calculators > Construction Calculators
|
4258 |
-
Office Supplies > Office Equipment > Calculators > Financial Calculators
|
4259 |
-
Office Supplies > Office Equipment > Calculators > Graphing Calculators
|
4260 |
-
Office Supplies > Office Equipment > Calculators > Scientific Calculators
|
4261 |
-
Office Supplies > Office Equipment > Electronic Dictionaries & Translators
|
4262 |
-
Office Supplies > Office Equipment > Label Makers
|
4263 |
-
Office Supplies > Office Equipment > Laminators
|
4264 |
-
Office Supplies > Office Equipment > Office Shredders
|
4265 |
-
Office Supplies > Office Equipment > Postage Meters
|
4266 |
-
Office Supplies > Office Equipment > Time & Attendance Clocks
|
4267 |
-
Office Supplies > Office Equipment > Transcribers & Dictation Systems
|
4268 |
-
Office Supplies > Office Equipment > Typewriters
|
4269 |
-
Office Supplies > Office Instruments
|
4270 |
-
Office Supplies > Office Instruments > Call Bells
|
4271 |
-
Office Supplies > Office Instruments > Clipboards
|
4272 |
-
Office Supplies > Office Instruments > Letter Openers
|
4273 |
-
Office Supplies > Office Instruments > Magnifiers
|
4274 |
-
Office Supplies > Office Instruments > Office Rubber Stamps
|
4275 |
-
Office Supplies > Office Instruments > Pencil Sharpeners
|
4276 |
-
Office Supplies > Office Instruments > Staple Removers
|
4277 |
-
Office Supplies > Office Instruments > Staplers
|
4278 |
-
Office Supplies > Office Instruments > Tape Dispensers
|
4279 |
-
Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories
|
4280 |
-
Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills
|
4281 |
-
Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills > Highlighter Refills
|
4282 |
-
Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Marker & Highlighter Ink Refills > Marker Refills
|
4283 |
-
Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Pen Ink & Refills
|
4284 |
-
Office Supplies > Office Instruments > Writing & Drawing Instrument Accessories > Pencil Lead & Refills
|
4285 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments
|
4286 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Art Charcoals
|
4287 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Chalk
|
4288 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Crayons
|
4289 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters
|
4290 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters > Highlighters
|
4291 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Markers & Highlighters > Markers
|
4292 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Multifunction Writing Instruments
|
4293 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pastels
|
4294 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils
|
4295 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pen & Pencil Sets
|
4296 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils
|
4297 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Art Pencils
|
4298 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils
|
4299 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils > Mechanical Pencils
|
4300 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pencils > Writing Pencils > Wooden Pencils
|
4301 |
-
Office Supplies > Office Instruments > Writing & Drawing Instruments > Pens & Pencils > Pens
|
4302 |
-
Office Supplies > Paper Handling
|
4303 |
-
Office Supplies > Paper Handling > Fingertip Grips
|
4304 |
-
Office Supplies > Paper Handling > Hole Punches
|
4305 |
-
Office Supplies > Paper Handling > Paper Folding Machines
|
4306 |
-
Office Supplies > Paper Handling > Paper Joggers
|
4307 |
-
Office Supplies > Paper Handling > Paperweights
|
4308 |
-
Office Supplies > Paper Handling > Pencil Boards
|
4309 |
-
Office Supplies > Presentation Supplies
|
4310 |
-
Office Supplies > Presentation Supplies > Chalkboards
|
4311 |
-
Office Supplies > Presentation Supplies > Display Boards
|
4312 |
-
Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories
|
4313 |
-
Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories > Bulletin Board Trim
|
4314 |
-
Office Supplies > Presentation Supplies > Display Boards > Bulletin Board Accessories > Bulletin Board Trim Sets
|
4315 |
-
Office Supplies > Presentation Supplies > Display Boards > Bulletin Boards
|
4316 |
-
Office Supplies > Presentation Supplies > Display Boards > Foam Boards
|
4317 |
-
Office Supplies > Presentation Supplies > Display Boards > Mounting Boards
|
4318 |
-
Office Supplies > Presentation Supplies > Display Boards > Poster Boards
|
4319 |
-
Office Supplies > Presentation Supplies > Document Cameras
|
4320 |
-
Office Supplies > Presentation Supplies > Dry-Erase Boards
|
4321 |
-
Office Supplies > Presentation Supplies > Easel Pads
|
4322 |
-
Office Supplies > Presentation Supplies > Easels
|
4323 |
-
Office Supplies > Presentation Supplies > Laser Pointers
|
4324 |
-
Office Supplies > Presentation Supplies > Lecterns
|
4325 |
-
Office Supplies > Presentation Supplies > Transparencies
|
4326 |
-
Office Supplies > Presentation Supplies > Wireless Presenters
|
4327 |
-
Office Supplies > Shipping Supplies
|
4328 |
-
Office Supplies > Shipping Supplies > Moving & Shipping Boxes
|
4329 |
-
Office Supplies > Shipping Supplies > Packing Materials
|
4330 |
-
Office Supplies > Shipping Supplies > Packing Tape
|
4331 |
-
Religious & Ceremonial
|
4332 |
-
Religious & Ceremonial > Memorial Ceremony Supplies
|
4333 |
-
Religious & Ceremonial > Memorial Ceremony Supplies > Memorial Urns
|
4334 |
-
Religious & Ceremonial > Religious Items
|
4335 |
-
Religious & Ceremonial > Religious Items > Prayer Beads
|
4336 |
-
Religious & Ceremonial > Religious Items > Prayer Cards
|
4337 |
-
Religious & Ceremonial > Religious Items > Religious Altars
|
4338 |
-
Religious & Ceremonial > Religious Items > Religious Veils
|
4339 |
-
Religious & Ceremonial > Religious Items > Tarot Cards
|
4340 |
-
Religious & Ceremonial > Wedding Ceremony Supplies
|
4341 |
-
Religious & Ceremonial > Wedding Ceremony Supplies > Aisle Runners
|
4342 |
-
Religious & Ceremonial > Wedding Ceremony Supplies > Flower Girl Baskets
|
4343 |
-
Religious & Ceremonial > Wedding Ceremony Supplies > Ring Pillows & Holders
|
4344 |
-
Software
|
4345 |
-
Software > Computer Software
|
4346 |
-
Software > Computer Software > Antivirus & Security Software
|
4347 |
-
Software > Computer Software > Business & Productivity Software
|
4348 |
-
Software > Computer Software > Compilers & Programming Tools
|
4349 |
-
Software > Computer Software > Computer Utilities & Maintenance Software
|
4350 |
-
Software > Computer Software > Dictionary & Translation Software
|
4351 |
-
Software > Computer Software > Educational Software
|
4352 |
-
Software > Computer Software > Financial, Tax & Accounting Software
|
4353 |
-
Software > Computer Software > GPS Map Data & Software
|
4354 |
-
Software > Computer Software > Handheld & PDA Software
|
4355 |
-
Software > Computer Software > Multimedia & Design Software
|
4356 |
-
Software > Computer Software > Multimedia & Design Software > 3D Modeling Software
|
4357 |
-
Software > Computer Software > Multimedia & Design Software > Animation Editing Software
|
4358 |
-
Software > Computer Software > Multimedia & Design Software > Graphic Design & Illustration Software
|
4359 |
-
Software > Computer Software > Multimedia & Design Software > Home & Interior Design Software
|
4360 |
-
Software > Computer Software > Multimedia & Design Software > Home Publishing Software
|
4361 |
-
Software > Computer Software > Multimedia & Design Software > Media Viewing Software
|
4362 |
-
Software > Computer Software > Multimedia & Design Software > Music Composition Software
|
4363 |
-
Software > Computer Software > Multimedia & Design Software > Sound Editing Software
|
4364 |
-
Software > Computer Software > Multimedia & Design Software > Video Editing Software
|
4365 |
-
Software > Computer Software > Multimedia & Design Software > Web Design Software
|
4366 |
-
Software > Computer Software > Network Software
|
4367 |
-
Software > Computer Software > Office Application Software
|
4368 |
-
Software > Computer Software > Operating Systems
|
4369 |
-
Software > Computer Software > Restore Disks
|
4370 |
-
Software > Digital Goods & Currency
|
4371 |
-
Software > Digital Goods & Currency > Computer Icons
|
4372 |
-
Software > Digital Goods & Currency > Desktop Wallpaper
|
4373 |
-
Software > Digital Goods & Currency > Digital Artwork
|
4374 |
-
Software > Digital Goods & Currency > Document Templates
|
4375 |
-
Software > Digital Goods & Currency > Fonts
|
4376 |
-
Software > Digital Goods & Currency > Stock Photographs & Video Footage
|
4377 |
-
Software > Digital Goods & Currency > Virtual Currency
|
4378 |
-
Software > Video Game Software
|
4379 |
-
Sporting Goods
|
4380 |
-
Sporting Goods > Athletics
|
4381 |
-
Sporting Goods > Athletics > Baseball & Softball
|
4382 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Bases & Plates
|
4383 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Batting Gloves
|
4384 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Gloves & Mitts
|
4385 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Pitching Mats
|
4386 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Pitching Mounds
|
4387 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Protective Gear
|
4388 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Protective Gear > Baseball & Softball Batting Helmets
|
4389 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Protective Gear > Baseball & Softball Chest Protectors
|
4390 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Protective Gear > Baseball & Softball Leg Guards
|
4391 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Protective Gear > Catchers Equipment Sets
|
4392 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball & Softball Protective Gear > Catchers Helmets & Masks
|
4393 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseball Bats
|
4394 |
-
Sporting Goods > Athletics > Baseball & Softball > Baseballs
|
4395 |
-
Sporting Goods > Athletics > Baseball & Softball > Pitching Machines
|
4396 |
-
Sporting Goods > Athletics > Baseball & Softball > Softball Bats
|
4397 |
-
Sporting Goods > Athletics > Baseball & Softball > Softballs
|
4398 |
-
Sporting Goods > Athletics > Basketball
|
4399 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoop Parts & Accessories
|
4400 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoop Parts & Accessories > Basketball Backboards
|
4401 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoop Parts & Accessories > Basketball Hoop Padding
|
4402 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoop Parts & Accessories > Basketball Hoop Posts
|
4403 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoop Parts & Accessories > Basketball Nets
|
4404 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoop Parts & Accessories > Basketball Rims
|
4405 |
-
Sporting Goods > Athletics > Basketball > Basketball Hoops
|
4406 |
-
Sporting Goods > Athletics > Basketball > Basketball Training Aids
|
4407 |
-
Sporting Goods > Athletics > Basketball > Basketballs
|
4408 |
-
Sporting Goods > Athletics > Boxing & Martial Arts
|
4409 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear
|
4410 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear > Boxing & MMA Hand Wraps
|
4411 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear > Boxing & Martial Arts Arm Guards
|
4412 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear > Boxing & Martial Arts Body Protectors
|
4413 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear > Boxing & Martial Arts Headgear
|
4414 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear > Boxing Gloves & Mitts
|
4415 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Protective Gear > MMA Shin Guards
|
4416 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Training Equipment
|
4417 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Training Equipment > Boxing & MMA Punch Mitts
|
4418 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Training Equipment > Grappling Dummies
|
4419 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Training Equipment > Punching & Training Bag Accessories
|
4420 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Training Equipment > Punching & Training Bags
|
4421 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing & Martial Arts Training Equipment > Strike Shields
|
4422 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing Ring Parts
|
4423 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Boxing Rings
|
4424 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Martial Arts Belts
|
4425 |
-
Sporting Goods > Athletics > Boxing & Martial Arts > Martial Arts Weapons
|
4426 |
-
Sporting Goods > Athletics > Broomball Equipment
|
4427 |
-
Sporting Goods > Athletics > Cheerleading
|
4428 |
-
Sporting Goods > Athletics > Cheerleading > Cheerleading Pom Poms
|
4429 |
-
Sporting Goods > Athletics > Coaching & Officiating
|
4430 |
-
Sporting Goods > Athletics > Coaching & Officiating > Captains Armbands
|
4431 |
-
Sporting Goods > Athletics > Coaching & Officiating > Field & Court Boundary Markers
|
4432 |
-
Sporting Goods > Athletics > Coaching & Officiating > Flip Coins & Discs
|
4433 |
-
Sporting Goods > Athletics > Coaching & Officiating > Linesman Flags
|
4434 |
-
Sporting Goods > Athletics > Coaching & Officiating > Penalty Cards & Flags
|
4435 |
-
Sporting Goods > Athletics > Coaching & Officiating > Pitch Counters
|
4436 |
-
Sporting Goods > Athletics > Coaching & Officiating > Referee Stands & Chairs
|
4437 |
-
Sporting Goods > Athletics > Coaching & Officiating > Referee Wallets
|
4438 |
-
Sporting Goods > Athletics > Coaching & Officiating > Scoreboards
|
4439 |
-
Sporting Goods > Athletics > Coaching & Officiating > Sport & Safety Whistles
|
4440 |
-
Sporting Goods > Athletics > Coaching & Officiating > Umpire Indicators
|
4441 |
-
Sporting Goods > Athletics > Cricket
|
4442 |
-
Sporting Goods > Athletics > Cricket > Cricket Balls
|
4443 |
-
Sporting Goods > Athletics > Cricket > Cricket Bat Accessories
|
4444 |
-
Sporting Goods > Athletics > Cricket > Cricket Bat Accessories > Cricket Bat Grips
|
4445 |
-
Sporting Goods > Athletics > Cricket > Cricket Bats
|
4446 |
-
Sporting Goods > Athletics > Cricket > Cricket Equipment Sets
|
4447 |
-
Sporting Goods > Athletics > Cricket > Cricket Protective Gear
|
4448 |
-
Sporting Goods > Athletics > Cricket > Cricket Protective Gear > Cricket Gloves
|
4449 |
-
Sporting Goods > Athletics > Cricket > Cricket Protective Gear > Cricket Helmets
|
4450 |
-
Sporting Goods > Athletics > Cricket > Cricket Protective Gear > Cricket Leg Guards
|
4451 |
-
Sporting Goods > Athletics > Cricket > Cricket Stumps
|
4452 |
-
Sporting Goods > Athletics > Dancing
|
4453 |
-
Sporting Goods > Athletics > Dancing > Ballet Barres
|
4454 |
-
Sporting Goods > Athletics > Fencing
|
4455 |
-
Sporting Goods > Athletics > Fencing > Fencing Protective Gear
|
4456 |
-
Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Gloves & Cuffs
|
4457 |
-
Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Jackets & Lamés
|
4458 |
-
Sporting Goods > Athletics > Fencing > Fencing Protective Gear > Fencing Masks
|
4459 |
-
Sporting Goods > Athletics > Fencing > Fencing Weapons
|
4460 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse
|
4461 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey & Lacrosse Protective Gear
|
4462 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey & Lacrosse Protective Gear > Field Hockey & Lacrosse Gloves
|
4463 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey & Lacrosse Protective Gear > Field Hockey & Lacrosse Helmets
|
4464 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey & Lacrosse Protective Gear > Field Hockey & Lacrosse Masks & Goggles
|
4465 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey & Lacrosse Protective Gear > Field Hockey & Lacrosse Pads
|
4466 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey Balls
|
4467 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey Goals
|
4468 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Field Hockey Sticks
|
4469 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Balls
|
4470 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Equipment Sets
|
4471 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Goals
|
4472 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Stick Parts
|
4473 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Stick Parts > Lacrosse Mesh & String
|
4474 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Stick Parts > Lacrosse Stick Heads
|
4475 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Stick Parts > Lacrosse Stick Shafts
|
4476 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Sticks
|
4477 |
-
Sporting Goods > Athletics > Field Hockey & Lacrosse > Lacrosse Training Aids
|
4478 |
-
Sporting Goods > Athletics > Figure Skating & Hockey
|
4479 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Balls & Pucks
|
4480 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Goals
|
4481 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear
|
4482 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Elbow Pads
|
4483 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Gloves
|
4484 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Goalie Equipment Sets
|
4485 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Helmets
|
4486 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Pants
|
4487 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Shin Guards & Leg Pads
|
4488 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Shoulder Pads & Chest Protectors
|
4489 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Protective Gear > Hockey Suspenders & Belts
|
4490 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Sledges
|
4491 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Stick Care
|
4492 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Stick Parts
|
4493 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Stick Parts > Hockey Stick Blades
|
4494 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Stick Parts > Hockey Stick Shafts
|
4495 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Hockey Sticks
|
4496 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skate Parts & Accessories
|
4497 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skate Parts & Accessories > Figure Skate Boots
|
4498 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skate Parts & Accessories > Ice Skate Blades
|
4499 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skate Parts & Accessories > Ice Skate Sharpeners
|
4500 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skate Parts & Accessories > Skate Blade Guards
|
4501 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skate Parts & Accessories > Skate Lace Tighteners
|
4502 |
-
Sporting Goods > Athletics > Figure Skating & Hockey > Ice Skates
|
4503 |
-
Sporting Goods > Athletics > Football
|
4504 |
-
Sporting Goods > Athletics > Football > Football Gloves
|
4505 |
-
Sporting Goods > Athletics > Football > Football Goal Posts
|
4506 |
-
Sporting Goods > Athletics > Football > Football Kicking Tees & Holders
|
4507 |
-
Sporting Goods > Athletics > Football > Football Protective Gear
|
4508 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Girdles
|
4509 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Helmet Accessories
|
4510 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Helmet Accessories > Football Chin Straps
|
4511 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Helmet Accessories > Football Face Masks
|
4512 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Helmet Accessories > Football Helmet Padding
|
4513 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Helmet Accessories > Football Helmet Visors
|
4514 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Helmets
|
4515 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Neck Rolls
|
4516 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Rib Protection Shirts & Vests
|
4517 |
-
Sporting Goods > Athletics > Football > Football Protective Gear > Football Shoulder Pads
|
4518 |
-
Sporting Goods > Athletics > Football > Football Training Equipment
|
4519 |
-
Sporting Goods > Athletics > Football > Football Training Equipment > Football Dummies & Sleds
|
4520 |
-
Sporting Goods > Athletics > Football > Footballs
|
4521 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment
|
4522 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Altitude Training Masks
|
4523 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Athletic Cups
|
4524 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Ball Carrying Bags & Carts
|
4525 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Ball Pump Accessories
|
4526 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Ball Pump Accessories > Ball Pump Needles
|
4527 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Ball Pumps
|
4528 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Exercise & Gym Mat Storage Racks & Carts
|
4529 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Grip Spray & Chalk
|
4530 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Gym Mats
|
4531 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Practice Nets & Screens
|
4532 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Speed & Agility Ladders & Hurdles
|
4533 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Sports & Agility Cones
|
4534 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Sports Megaphones
|
4535 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Sports Mouthguards
|
4536 |
-
Sporting Goods > Athletics > General Purpose Athletic Equipment > Stadium Seats & Cushions
|
4537 |
-
Sporting Goods > Athletics > Gymnastics
|
4538 |
-
Sporting Goods > Athletics > Gymnastics > Gymnastics Bars & Balance Beams
|
4539 |
-
Sporting Goods > Athletics > Gymnastics > Gymnastics Protective Gear
|
4540 |
-
Sporting Goods > Athletics > Gymnastics > Gymnastics Protective Gear > Gymnastics Grips
|
4541 |
-
Sporting Goods > Athletics > Gymnastics > Gymnastics Rings
|
4542 |
-
Sporting Goods > Athletics > Gymnastics > Gymnastics Springboards
|
4543 |
-
Sporting Goods > Athletics > Gymnastics > Pommel Horses
|
4544 |
-
Sporting Goods > Athletics > Gymnastics > Vaulting Horses
|
4545 |
-
Sporting Goods > Athletics > Racquetball & Squash
|
4546 |
-
Sporting Goods > Athletics > Racquetball & Squash > Racquetball & Squash Balls
|
4547 |
-
Sporting Goods > Athletics > Racquetball & Squash > Racquetball & Squash Eyewear
|
4548 |
-
Sporting Goods > Athletics > Racquetball & Squash > Racquetball & Squash Gloves
|
4549 |
-
Sporting Goods > Athletics > Racquetball & Squash > Racquetball Racquets
|
4550 |
-
Sporting Goods > Athletics > Racquetball & Squash > Squash Racquets
|
4551 |
-
Sporting Goods > Athletics > Rounders
|
4552 |
-
Sporting Goods > Athletics > Rounders > Rounders Bats
|
4553 |
-
Sporting Goods > Athletics > Rounders > Rounders Gloves
|
4554 |
-
Sporting Goods > Athletics > Rugby
|
4555 |
-
Sporting Goods > Athletics > Rugby > Rugby Balls
|
4556 |
-
Sporting Goods > Athletics > Rugby > Rugby Gloves
|
4557 |
-
Sporting Goods > Athletics > Rugby > Rugby Posts
|
4558 |
-
Sporting Goods > Athletics > Rugby > Rugby Protective Gear
|
4559 |
-
Sporting Goods > Athletics > Rugby > Rugby Protective Gear > Rugby Headgear
|
4560 |
-
Sporting Goods > Athletics > Rugby > Rugby Training Aids
|
4561 |
-
Sporting Goods > Athletics > Soccer
|
4562 |
-
Sporting Goods > Athletics > Soccer > Soccer Balls
|
4563 |
-
Sporting Goods > Athletics > Soccer > Soccer Corner Flags
|
4564 |
-
Sporting Goods > Athletics > Soccer > Soccer Gloves
|
4565 |
-
Sporting Goods > Athletics > Soccer > Soccer Goal Accessories
|
4566 |
-
Sporting Goods > Athletics > Soccer > Soccer Goals
|
4567 |
-
Sporting Goods > Athletics > Soccer > Soccer Protective Gear
|
4568 |
-
Sporting Goods > Athletics > Soccer > Soccer Protective Gear > Soccer Shin Guards
|
4569 |
-
Sporting Goods > Athletics > Team Handball
|
4570 |
-
Sporting Goods > Athletics > Team Handball > Handballs
|
4571 |
-
Sporting Goods > Athletics > Tennis
|
4572 |
-
Sporting Goods > Athletics > Tennis > Tennis Ball Hoppers & Carts
|
4573 |
-
Sporting Goods > Athletics > Tennis > Tennis Ball Machines
|
4574 |
-
Sporting Goods > Athletics > Tennis > Tennis Ball Savers
|
4575 |
-
Sporting Goods > Athletics > Tennis > Tennis Balls
|
4576 |
-
Sporting Goods > Athletics > Tennis > Tennis Nets
|
4577 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquet Accessories
|
4578 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquet Accessories > Racquet Vibration Dampeners
|
4579 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquet Accessories > Tennis Racquet Bags
|
4580 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquet Accessories > Tennis Racquet Grips & Tape
|
4581 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquet Accessories > Tennis Racquet Grommets
|
4582 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquet Accessories > Tennis Racquet String
|
4583 |
-
Sporting Goods > Athletics > Tennis > Tennis Racquets
|
4584 |
-
Sporting Goods > Athletics > Track & Field
|
4585 |
-
Sporting Goods > Athletics > Track & Field > Discus
|
4586 |
-
Sporting Goods > Athletics > Track & Field > High Jump Crossbars
|
4587 |
-
Sporting Goods > Athletics > Track & Field > High Jump Pits
|
4588 |
-
Sporting Goods > Athletics > Track & Field > Javelins
|
4589 |
-
Sporting Goods > Athletics > Track & Field > Pole Vault Pits
|
4590 |
-
Sporting Goods > Athletics > Track & Field > Relay Batons
|
4591 |
-
Sporting Goods > Athletics > Track & Field > Shot Puts
|
4592 |
-
Sporting Goods > Athletics > Track & Field > Starter Pistols
|
4593 |
-
Sporting Goods > Athletics > Track & Field > Throwing Hammers
|
4594 |
-
Sporting Goods > Athletics > Track & Field > Track Hurdles
|
4595 |
-
Sporting Goods > Athletics > Track & Field > Track Starting Blocks
|
4596 |
-
Sporting Goods > Athletics > Track & Field > Vaulting Poles
|
4597 |
-
Sporting Goods > Athletics > Volleyball
|
4598 |
-
Sporting Goods > Athletics > Volleyball > Volleyball Nets
|
4599 |
-
Sporting Goods > Athletics > Volleyball > Volleyball Protective Gear
|
4600 |
-
Sporting Goods > Athletics > Volleyball > Volleyball Protective Gear > Volleyball Knee Pads
|
4601 |
-
Sporting Goods > Athletics > Volleyball > Volleyball Training Aids
|
4602 |
-
Sporting Goods > Athletics > Volleyball > Volleyballs
|
4603 |
-
Sporting Goods > Athletics > Wallyball Equipment
|
4604 |
-
Sporting Goods > Athletics > Water Polo
|
4605 |
-
Sporting Goods > Athletics > Water Polo > Water Polo Balls
|
4606 |
-
Sporting Goods > Athletics > Water Polo > Water Polo Caps
|
4607 |
-
Sporting Goods > Athletics > Water Polo > Water Polo Goals
|
4608 |
-
Sporting Goods > Athletics > Wrestling
|
4609 |
-
Sporting Goods > Athletics > Wrestling > Wrestling Protective Gear
|
4610 |
-
Sporting Goods > Athletics > Wrestling > Wrestling Protective Gear > Wrestling Headgear
|
4611 |
-
Sporting Goods > Athletics > Wrestling > Wrestling Protective Gear > Wrestling Knee Pads
|
4612 |
-
Sporting Goods > Exercise & Fitness
|
4613 |
-
Sporting Goods > Exercise & Fitness > Ab Wheels & Rollers
|
4614 |
-
Sporting Goods > Exercise & Fitness > Aerobic Steps
|
4615 |
-
Sporting Goods > Exercise & Fitness > Balance Trainers
|
4616 |
-
Sporting Goods > Exercise & Fitness > Cardio
|
4617 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machine Accessories
|
4618 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machine Accessories > Elliptical Trainer Accessories
|
4619 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machine Accessories > Exercise Bike Accessories
|
4620 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machine Accessories > Rowing Machine Accessories
|
4621 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machine Accessories > Stair Climber & Stepper Accessories
|
4622 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machine Accessories > Treadmill Accessories
|
4623 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines
|
4624 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Elliptical Trainers
|
4625 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Exercise Bikes
|
4626 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Rowing Machines
|
4627 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers
|
4628 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers > Stair Climbers
|
4629 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Stair Climbers & Steppers > Stair Steppers
|
4630 |
-
Sporting Goods > Exercise & Fitness > Cardio > Cardio Machines > Treadmills
|
4631 |
-
Sporting Goods > Exercise & Fitness > Cardio > Jump Ropes
|
4632 |
-
Sporting Goods > Exercise & Fitness > Exercise Balls
|
4633 |
-
Sporting Goods > Exercise & Fitness > Exercise Bands
|
4634 |
-
Sporting Goods > Exercise & Fitness > Exercise Benches
|
4635 |
-
Sporting Goods > Exercise & Fitness > Exercise Equipment Mats
|
4636 |
-
Sporting Goods > Exercise & Fitness > Exercise Machine & Equipment Sets
|
4637 |
-
Sporting Goods > Exercise & Fitness > Exercise Wedges
|
4638 |
-
Sporting Goods > Exercise & Fitness > Foam Roller Accessories
|
4639 |
-
Sporting Goods > Exercise & Fitness > Foam Roller Accessories > Foam Roller Storage Bags
|
4640 |
-
Sporting Goods > Exercise & Fitness > Foam Rollers
|
4641 |
-
Sporting Goods > Exercise & Fitness > Hand Exercisers
|
4642 |
-
Sporting Goods > Exercise & Fitness > Inversion Tables & Systems
|
4643 |
-
Sporting Goods > Exercise & Fitness > Medicine Balls
|
4644 |
-
Sporting Goods > Exercise & Fitness > Power Towers
|
4645 |
-
Sporting Goods > Exercise & Fitness > Push Up & Pull Up Bars
|
4646 |
-
Sporting Goods > Exercise & Fitness > Reaction Balls
|
4647 |
-
Sporting Goods > Exercise & Fitness > Speed & Resistance Parachutes
|
4648 |
-
Sporting Goods > Exercise & Fitness > Sport Safety Lights & Reflectors
|
4649 |
-
Sporting Goods > Exercise & Fitness > Stopwatches
|
4650 |
-
Sporting Goods > Exercise & Fitness > Suspension Trainers
|
4651 |
-
Sporting Goods > Exercise & Fitness > Vibration Exercise Machines
|
4652 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting
|
4653 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Free Weight Accessories
|
4654 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Free Weight Accessories > Free Weight Storage Racks
|
4655 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Free Weight Accessories > Weight Bar Collars
|
4656 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Free Weight Accessories > Weight Bars
|
4657 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Free Weights
|
4658 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Weight Lifting Belts
|
4659 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Weight Lifting Gloves & Hand Supports
|
4660 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Weight Lifting Machine & Exercise Bench Accessories
|
4661 |
-
Sporting Goods > Exercise & Fitness > Weight Lifting > Weight Lifting Machines & Racks
|
4662 |
-
Sporting Goods > Exercise & Fitness > Weighted Clothing
|
4663 |
-
Sporting Goods > Exercise & Fitness > Yoga & Pilates
|
4664 |
-
Sporting Goods > Exercise & Fitness > Yoga & Pilates > Pilates Machines
|
4665 |
-
Sporting Goods > Exercise & Fitness > Yoga & Pilates > Yoga & Pilates Blocks
|
4666 |
-
Sporting Goods > Exercise & Fitness > Yoga & Pilates > Yoga & Pilates Mats
|
4667 |
-
Sporting Goods > Exercise & Fitness > Yoga & Pilates > Yoga & Pilates Towels
|
4668 |
-
Sporting Goods > Exercise & Fitness > Yoga & Pilates > Yoga Mat Bags & Straps
|
4669 |
-
Sporting Goods > Indoor Games
|
4670 |
-
Sporting Goods > Indoor Games > Air Hockey
|
4671 |
-
Sporting Goods > Indoor Games > Air Hockey > Air Hockey Equipment
|
4672 |
-
Sporting Goods > Indoor Games > Air Hockey > Air Hockey Table Parts
|
4673 |
-
Sporting Goods > Indoor Games > Air Hockey > Air Hockey Tables
|
4674 |
-
Sporting Goods > Indoor Games > Billiards
|
4675 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Ball Racks
|
4676 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Balls
|
4677 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Cue Accessories
|
4678 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Cue Accessories > Billiard Cue Cases
|
4679 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Cue Accessories > Billiard Cue Chalk
|
4680 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Cue Accessories > Billiard Cue Racks
|
4681 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Cues & Bridges
|
4682 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Gloves
|
4683 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Table Lights
|
4684 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Table Parts & Accessories
|
4685 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Table Parts & Accessories > Billiard Pockets
|
4686 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Table Parts & Accessories > Billiard Table Brushes
|
4687 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Table Parts & Accessories > Billiard Table Cloth
|
4688 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Table Parts & Accessories > Billiard Table Covers
|
4689 |
-
Sporting Goods > Indoor Games > Billiards > Billiard Tables
|
4690 |
-
Sporting Goods > Indoor Games > Bowling
|
4691 |
-
Sporting Goods > Indoor Games > Bowling > Bowling Ball Bags
|
4692 |
-
Sporting Goods > Indoor Games > Bowling > Bowling Balls
|
4693 |
-
Sporting Goods > Indoor Games > Bowling > Bowling Gloves
|
4694 |
-
Sporting Goods > Indoor Games > Bowling > Bowling Pins
|
4695 |
-
Sporting Goods > Indoor Games > Bowling > Bowling Wrist Supports
|
4696 |
-
Sporting Goods > Indoor Games > Foosball
|
4697 |
-
Sporting Goods > Indoor Games > Foosball > Foosball Balls
|
4698 |
-
Sporting Goods > Indoor Games > Foosball > Foosball Table Parts & Accessories
|
4699 |
-
Sporting Goods > Indoor Games > Foosball > Foosball Tables
|
4700 |
-
Sporting Goods > Indoor Games > Multi-Game Tables
|
4701 |
-
Sporting Goods > Indoor Games > Ping Pong
|
4702 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Balls
|
4703 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Nets & Posts
|
4704 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Paddle Accessories
|
4705 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Paddles & Sets
|
4706 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Robot Accessories
|
4707 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Robots
|
4708 |
-
Sporting Goods > Indoor Games > Ping Pong > Ping Pong Tables
|
4709 |
-
Sporting Goods > Indoor Games > Table Shuffleboard
|
4710 |
-
Sporting Goods > Indoor Games > Table Shuffleboard > Shuffleboard Tables
|
4711 |
-
Sporting Goods > Indoor Games > Table Shuffleboard > Table Shuffleboard Powder
|
4712 |
-
Sporting Goods > Indoor Games > Table Shuffleboard > Table Shuffleboard Pucks
|
4713 |
-
Sporting Goods > Indoor Games > Throwing Darts
|
4714 |
-
Sporting Goods > Indoor Games > Throwing Darts > Dart Backboards
|
4715 |
-
Sporting Goods > Indoor Games > Throwing Darts > Dart Parts
|
4716 |
-
Sporting Goods > Indoor Games > Throwing Darts > Dart Parts > Dart Flights
|
4717 |
-
Sporting Goods > Indoor Games > Throwing Darts > Dart Parts > Dart Shafts
|
4718 |
-
Sporting Goods > Indoor Games > Throwing Darts > Dart Parts > Dart Tips
|
4719 |
-
Sporting Goods > Indoor Games > Throwing Darts > Dartboards
|
4720 |
-
Sporting Goods > Indoor Games > Throwing Darts > Darts
|
4721 |
-
Sporting Goods > Outdoor Recreation
|
4722 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports
|
4723 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting
|
4724 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Boating Gloves
|
4725 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Canoe Accessories
|
4726 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Canoes
|
4727 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Kayak Accessories
|
4728 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Kayaks
|
4729 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Paddle Leashes
|
4730 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Paddles & Oars
|
4731 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Pedal Boats
|
4732 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Row Boats
|
4733 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Rafting > Whitewater Rafts
|
4734 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel
|
4735 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Drysuits
|
4736 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Life Jacket Accessories
|
4737 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Life Jackets
|
4738 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Rash Guards & Swim Shirts
|
4739 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Water Sport Helmets
|
4740 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Wetsuit Pieces
|
4741 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Wetsuit Pieces > Wetsuit Bottoms
|
4742 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Wetsuit Pieces > Wetsuit Hoods, Gloves & Boots
|
4743 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Wetsuit Pieces > Wetsuit Tops
|
4744 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Boating & Water Sport Apparel > Wetsuits
|
4745 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling
|
4746 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Buoyancy Compensators
|
4747 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Dive Computers
|
4748 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Diving & Snorkeling Equipment Sets
|
4749 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Diving & Snorkeling Fins
|
4750 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Diving & Snorkeling Masks
|
4751 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Diving Belts
|
4752 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Diving Knives & Shears
|
4753 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Diving Regulators
|
4754 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Diving & Snorkeling > Snorkels
|
4755 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Kitesurfing
|
4756 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Kitesurfing > Kiteboard Cases
|
4757 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Kitesurfing > Kiteboard Parts
|
4758 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Kitesurfing > Kiteboards
|
4759 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Kitesurfing > Kitesurfing & Windsurfing Harnesses
|
4760 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Kitesurfing > Kitesurfing Kites
|
4761 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing
|
4762 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Bodyboards
|
4763 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Paddleboards
|
4764 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Skimboards
|
4765 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surf Leashes
|
4766 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surfboard Cases & Bags
|
4767 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surfboard Fins
|
4768 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surfboard Wax
|
4769 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surfboards
|
4770 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surfing Gloves
|
4771 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Surfing > Surfing Tail Pads
|
4772 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming
|
4773 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Child Swimming Aids
|
4774 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Hand Paddles
|
4775 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Kickboards
|
4776 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Pull Buoys
|
4777 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swim Belts
|
4778 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swim Caps
|
4779 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swim Gloves
|
4780 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swim Goggle & Mask Accessories
|
4781 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swim Goggles & Masks
|
4782 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swim Weights
|
4783 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swimming Fins
|
4784 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swimming Fins > Monofins
|
4785 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swimming Fins > Training Fins
|
4786 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swimming Machines
|
4787 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Swimming > Swimming Nose Clips
|
4788 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports
|
4789 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Kneeboarding
|
4790 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Kneeboarding > Kneeboards
|
4791 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Towable Rafts & Tubes
|
4792 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Towed Water Sport Gloves
|
4793 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Wakeboarding
|
4794 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Wakeboarding > Kiteboard & Wakeboard Bindings
|
4795 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Wakeboarding > Wakeboard Parts
|
4796 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Wakeboarding > Wakeboards
|
4797 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Water Skiing
|
4798 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Water Skiing > Sit-Down Hydrofoils
|
4799 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Water Skiing > Water Ski Bindings
|
4800 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Water Skiing > Water Ski Cases & Bags
|
4801 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Water Skiing > Water Skis
|
4802 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Towed Water Sports > Water Sport Tow Cables
|
4803 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Watercraft Storage Racks
|
4804 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Watercraft Storage Racks > Boat Storage Racks
|
4805 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Watercraft Storage Racks > Water Sport Board Storage Racks
|
4806 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Windsurfing
|
4807 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Windsurfing > Windsurfing Board Parts
|
4808 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Windsurfing > Windsurfing Board Parts > Windsurfing Board Fins
|
4809 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Windsurfing > Windsurfing Board Parts > Windsurfing Board Masts
|
4810 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Windsurfing > Windsurfing Boards
|
4811 |
-
Sporting Goods > Outdoor Recreation > Boating & Water Sports > Windsurfing > Windsurfing Sails
|
4812 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking
|
4813 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camp Furniture
|
4814 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camp Furniture > Air Mattress & Sleeping Pad Accessories
|
4815 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camp Furniture > Air Mattresses
|
4816 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camp Furniture > Cots
|
4817 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camping Cookware & Dinnerware
|
4818 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camping Lights & Lanterns
|
4819 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camping Tools
|
4820 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camping Tools > Hunting & Survival Knives
|
4821 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Camping Tools > Multifunction Tools & Knives
|
4822 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Chemical Hand Warmers
|
4823 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Compression Sacks
|
4824 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Hiking Pole Accessories
|
4825 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Hiking Poles
|
4826 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Mosquito Nets & Insect Screens
|
4827 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Navigational Compasses
|
4828 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Portable Toilets & Showers
|
4829 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Portable Toilets & Showers > Portable Showers & Privacy Enclosures
|
4830 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Portable Toilets & Showers > Portable Toilets & Urination Devices
|
4831 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Portable Water Filters & Purifiers
|
4832 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Sleeping Bag Liners
|
4833 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Sleeping Bags
|
4834 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Sleeping Pads
|
4835 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Tent Accessories
|
4836 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Tent Accessories > Inner Tents
|
4837 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Tent Accessories > Tent Footprints
|
4838 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Tent Accessories > Tent Poles & Stakes
|
4839 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Tent Accessories > Tent Vestibules
|
4840 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Tents
|
4841 |
-
Sporting Goods > Outdoor Recreation > Camping & Hiking > Windbreaks
|
4842 |
-
Sporting Goods > Outdoor Recreation > Climbing
|
4843 |
-
Sporting Goods > Outdoor Recreation > Climbing > Belay Devices
|
4844 |
-
Sporting Goods > Outdoor Recreation > Climbing > Carabiners
|
4845 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Apparel & Accessories
|
4846 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Apparel & Accessories > Climbing Gloves
|
4847 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Apparel & Accessories > Climbing Helmets
|
4848 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Apparel & Accessories > Crampons
|
4849 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Ascenders & Descenders
|
4850 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Chalk Bags
|
4851 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Crash Pads
|
4852 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Harnesses
|
4853 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Protection Devices
|
4854 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Rope
|
4855 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Rope Bags
|
4856 |
-
Sporting Goods > Outdoor Recreation > Climbing > Climbing Webbing
|
4857 |
-
Sporting Goods > Outdoor Recreation > Climbing > Ice Climbing Tools
|
4858 |
-
Sporting Goods > Outdoor Recreation > Climbing > Ice Screws
|
4859 |
-
Sporting Goods > Outdoor Recreation > Climbing > Indoor Climbing Holds
|
4860 |
-
Sporting Goods > Outdoor Recreation > Climbing > Quickdraws
|
4861 |
-
Sporting Goods > Outdoor Recreation > Cycling
|
4862 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories
|
4863 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Bags & Panniers
|
4864 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Baskets
|
4865 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Bells & Horns
|
4866 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Cages
|
4867 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Child Seat Accessories
|
4868 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Child Seats
|
4869 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Computer Accessories
|
4870 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Computers
|
4871 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Covers
|
4872 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Fenders
|
4873 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Front & Rear Racks
|
4874 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Handlebar Grips & Decor
|
4875 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Locks
|
4876 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Mirrors
|
4877 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Pumps
|
4878 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Saddle Pads & Seat Covers
|
4879 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Shock Pumps
|
4880 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Spoke Beads
|
4881 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Stands & Storage
|
4882 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Tire Repair Supplies & Kits
|
4883 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Toe Straps & Clips
|
4884 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Tools
|
4885 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Trailers
|
4886 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Trainers
|
4887 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Training Wheels
|
4888 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Transport Bags & Cases
|
4889 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Bicycle Water Sport Board Racks
|
4890 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Accessories > Electric Bicycle Conversion Kits
|
4891 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts
|
4892 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Brake Parts
|
4893 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Brake Parts > Bicycle Brake Calipers
|
4894 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Brake Parts > Bicycle Brake Levers
|
4895 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Brake Parts > Bicycle Brake Rotors
|
4896 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Brake Parts > Bicycle Brake Sets
|
4897 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Cable Housings
|
4898 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Cables
|
4899 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts
|
4900 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Bottom Brackets
|
4901 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Cassettes & Freewheels
|
4902 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Chainrings
|
4903 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Chains
|
4904 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Cranks
|
4905 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Derailleurs
|
4906 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Pedals
|
4907 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Drivetrain Parts > Bicycle Shifters
|
4908 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Forks
|
4909 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Frames
|
4910 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Groupsets
|
4911 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Handlebar Extensions
|
4912 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Handlebars
|
4913 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Headset Parts
|
4914 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Headset Parts > Bicycle Headset Bearings
|
4915 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Headset Parts > Bicycle Headset Spacers
|
4916 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Headsets
|
4917 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Kickstands
|
4918 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Saddles
|
4919 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Seatpost Clamps
|
4920 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Seatposts
|
4921 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Small Parts
|
4922 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Stems
|
4923 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Tire Valve Adapters
|
4924 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Tire Valve Caps
|
4925 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Tire Valves
|
4926 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Tires
|
4927 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Tubes
|
4928 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts
|
4929 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Foot Pegs
|
4930 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Hub Parts
|
4931 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Hubs
|
4932 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Rim Strips
|
4933 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Spokes
|
4934 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Wheel Axles & Skewers
|
4935 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Wheel Nipples
|
4936 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheel Parts > Bicycle Wheel Rims
|
4937 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycle Parts > Bicycle Wheels
|
4938 |
-
Sporting Goods > Outdoor Recreation > Cycling > Bicycles
|
4939 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories
|
4940 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Cleat Accessories
|
4941 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Cleat Accessories > Bicycle Cleat Bolts
|
4942 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Cleat Accessories > Bicycle Cleat Covers
|
4943 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Cleat Accessories > Bicycle Cleat Shims & Wedges
|
4944 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Cleats
|
4945 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Gloves
|
4946 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Helmet Parts & Accessories
|
4947 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Helmets
|
4948 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Protective Pads
|
4949 |
-
Sporting Goods > Outdoor Recreation > Cycling > Cycling Apparel & Accessories > Bicycle Shoe Covers
|
4950 |
-
Sporting Goods > Outdoor Recreation > Cycling > Tricycle Accessories
|
4951 |
-
Sporting Goods > Outdoor Recreation > Cycling > Tricycles
|
4952 |
-
Sporting Goods > Outdoor Recreation > Cycling > Unicycle Accessories
|
4953 |
-
Sporting Goods > Outdoor Recreation > Cycling > Unicycles
|
4954 |
-
Sporting Goods > Outdoor Recreation > Equestrian
|
4955 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care
|
4956 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Blankets & Sheets
|
4957 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Boots & Leg Wraps
|
4958 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Feed
|
4959 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Fly Masks
|
4960 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Grooming
|
4961 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Grooming > Horse Clippers & Trimmers
|
4962 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Grooming > Horse Grooming Combs, Brushes & Mitts
|
4963 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Treats
|
4964 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Vitamins & Supplements
|
4965 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Care > Horse Wormers
|
4966 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack
|
4967 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Bridle Bits
|
4968 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Bridles
|
4969 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Cinches
|
4970 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Horse Halters
|
4971 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Horse Harnesses
|
4972 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Horse Leads
|
4973 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Reins
|
4974 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Saddles
|
4975 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack > Stirrups
|
4976 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories
|
4977 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories > Horse Tack Boxes
|
4978 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories > Saddle Accessories
|
4979 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories > Saddle Accessories > Saddle Bags & Panniers
|
4980 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories > Saddle Accessories > Saddle Covers & Cases
|
4981 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories > Saddle Accessories > Saddle Pads & Blankets
|
4982 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Horse Tack Accessories > Saddle Accessories > Saddle Racks
|
4983 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Riding Apparel & Accessories
|
4984 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Riding Apparel & Accessories > Equestrian Gloves
|
4985 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Riding Apparel & Accessories > Equestrian Helmets
|
4986 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Riding Apparel & Accessories > Riding Crops & Whips
|
4987 |
-
Sporting Goods > Outdoor Recreation > Equestrian > Riding Apparel & Accessories > Riding Pants
|
4988 |
-
Sporting Goods > Outdoor Recreation > Fishing
|
4989 |
-
Sporting Goods > Outdoor Recreation > Fishing > Bite Alarms
|
4990 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing & Hunting Waders
|
4991 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Bait & Chum Containers
|
4992 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Gaffs
|
4993 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Hook Removal Tools
|
4994 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Lines & Leaders
|
4995 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Nets
|
4996 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Reel Accessories
|
4997 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Reel Accessories > Fishing Reel Bags & Cases
|
4998 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Reel Accessories > Fishing Reel Lubricants
|
4999 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Reel Accessories > Fishing Reel Replacement Spools
|
5000 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Reels
|
5001 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Rod Accessories
|
5002 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Rod Accessories > Fishing Rod Bags & Cases
|
5003 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Rod Accessories > Fishing Rod Holders & Storage Racks
|
5004 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Rods
|
5005 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Spears
|
5006 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Tackle
|
5007 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Tackle > Fishing Baits & Lures
|
5008 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Tackle > Fishing Floats
|
5009 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Tackle > Fishing Hooks
|
5010 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Tackle > Fishing Sinkers
|
5011 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Tackle > Fishing Snaps & Swivels
|
5012 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fishing Traps
|
5013 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fly Tying Materials
|
5014 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fly Tying Materials > Fishing Beads
|
5015 |
-
Sporting Goods > Outdoor Recreation > Fishing > Fly Tying Materials > Fishing Yarn
|
5016 |
-
Sporting Goods > Outdoor Recreation > Fishing > Live Bait
|
5017 |
-
Sporting Goods > Outdoor Recreation > Fishing > Tackle Bags & Boxes
|
5018 |
-
Sporting Goods > Outdoor Recreation > Golf
|
5019 |
-
Sporting Goods > Outdoor Recreation > Golf > Divot Tools
|
5020 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Accessory Sets
|
5021 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Bag Accessories
|
5022 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Bag Accessories > Golf Bag Carts
|
5023 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Bag Accessories > Golf Bag Covers & Cases
|
5024 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Bags
|
5025 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Ball Markers
|
5026 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Balls
|
5027 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Club Parts & Accessories
|
5028 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Club Parts & Accessories > Golf Club Grips
|
5029 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Club Parts & Accessories > Golf Club Headcovers
|
5030 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Club Parts & Accessories > Golf Club Shafts
|
5031 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Clubs
|
5032 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Flags
|
5033 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Gloves
|
5034 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Tees
|
5035 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Towels
|
5036 |
-
Sporting Goods > Outdoor Recreation > Golf > Golf Training Aids
|
5037 |
-
Sporting Goods > Outdoor Recreation > Hang Gliding & Skydiving
|
5038 |
-
Sporting Goods > Outdoor Recreation > Hang Gliding & Skydiving > Air Suits
|
5039 |
-
Sporting Goods > Outdoor Recreation > Hang Gliding & Skydiving > Hang Gliders
|
5040 |
-
Sporting Goods > Outdoor Recreation > Hang Gliding & Skydiving > Parachutes
|
5041 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting
|
5042 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery
|
5043 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Archery Armguards
|
5044 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Archery Gloves & Releases
|
5045 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Archery Targets
|
5046 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Arrow Parts & Accessories
|
5047 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Arrow Parts & Accessories > Arrow Fletchings
|
5048 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Arrow Parts & Accessories > Arrow Nocks
|
5049 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Arrow Parts & Accessories > Broadheads & Field Points
|
5050 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Arrows & Bolts
|
5051 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Bow & Crossbow Accessories
|
5052 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Bows & Crossbows
|
5053 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Bows & Crossbows > Compound Bows
|
5054 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Bows & Crossbows > Crossbows
|
5055 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Bows & Crossbows > Recurve & Longbows
|
5056 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Archery > Quivers
|
5057 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Clay Pigeon Shooting
|
5058 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Clay Pigeon Shooting > Clay Pigeon Throwers
|
5059 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Clay Pigeon Shooting > Clay Pigeons
|
5060 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting
|
5061 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting & Shooting Protective Gear
|
5062 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting & Shooting Protective Gear > Hunting & Shooting Gloves
|
5063 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting & Shooting Protective Gear > Hunting & Shooting Jackets
|
5064 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Animal Traps
|
5065 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Hearing Enhancers
|
5066 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Hunting Blinds & Screens
|
5067 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Hunting Dog Equipment
|
5068 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Tree Stands
|
5069 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Wild Game Feeders
|
5070 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Wildlife Attractants
|
5071 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Wildlife Attractants > Cover Scents & Scent Attractants
|
5072 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Wildlife Attractants > Hunting & Wildlife Calls
|
5073 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Wildlife Attractants > Hunting & Wildlife Decoys
|
5074 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Hunting > Wildlife Attractants > Wildlife Bait, Feed & Minerals
|
5075 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft
|
5076 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Airsoft
|
5077 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Airsoft > Airsoft Gun Parts & Accessories
|
5078 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Airsoft > Airsoft Gun Parts & Accessories > Airsoft Gun Batteries
|
5079 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Airsoft > Airsoft Guns
|
5080 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Airsoft > Airsoft Pellets
|
5081 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball
|
5082 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball & Airsoft Protective Gear
|
5083 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball & Airsoft Protective Gear > Paintball & Airsoft Gloves
|
5084 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball & Airsoft Protective Gear > Paintball & Airsoft Goggles & Masks
|
5085 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball & Airsoft Protective Gear > Paintball & Airsoft Pads
|
5086 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball & Airsoft Protective Gear > Paintball & Airsoft Vests
|
5087 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Grenade Launchers
|
5088 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Grenades
|
5089 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Gun Parts & Accessories
|
5090 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Gun Parts & Accessories > Paintball Air Tanks
|
5091 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Gun Parts & Accessories > Paintball Gun Barrels
|
5092 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Gun Parts & Accessories > Paintball Gun Drop Forwards
|
5093 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Gun Parts & Accessories > Paintball Hoppers
|
5094 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Guns
|
5095 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintball Harnesses & Packs
|
5096 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Paintball & Airsoft > Paintball > Paintballs
|
5097 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Shooting & Range Accessories
|
5098 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Shooting & Range Accessories > Shooting Rests
|
5099 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Shooting & Range Accessories > Shooting Sticks & Bipods
|
5100 |
-
Sporting Goods > Outdoor Recreation > Hunting & Shooting > Shooting & Range Accessories > Shooting Targets
|
5101 |
-
Sporting Goods > Outdoor Recreation > Hydration System Accessories
|
5102 |
-
Sporting Goods > Outdoor Recreation > Hydration Systems
|
5103 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating
|
5104 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Inline & Roller Skating Protective Gear
|
5105 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Inline & Roller Skating Protective Gear > Roller Skating Pads
|
5106 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Inline Skate Parts
|
5107 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Inline Skates
|
5108 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Roller Skate Parts
|
5109 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Roller Skates
|
5110 |
-
Sporting Goods > Outdoor Recreation > Inline & Roller Skating > Roller Skis
|
5111 |
-
Sporting Goods > Outdoor Recreation > Kite Buggying
|
5112 |
-
Sporting Goods > Outdoor Recreation > Kite Buggying > Kite Buggies
|
5113 |
-
Sporting Goods > Outdoor Recreation > Kite Buggying > Kite Buggy Accessories
|
5114 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games
|
5115 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Badminton
|
5116 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Badminton > Badminton Nets
|
5117 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Badminton > Badminton Racquets & Sets
|
5118 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Badminton > Shuttlecocks
|
5119 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Deck Shuffleboard
|
5120 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Deck Shuffleboard > Deck Shuffleboard Cues
|
5121 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Deck Shuffleboard > Deck Shuffleboard Pucks
|
5122 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Disc Golf
|
5123 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Disc Golf > Disc Golf Bags
|
5124 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Disc Golf > Disc Golf Baskets
|
5125 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Lawn Games
|
5126 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Paddle Ball Sets
|
5127 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Pickleball
|
5128 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Pickleball > Pickleball Paddles
|
5129 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Pickleball > Pickleballs
|
5130 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Platform & Paddle Tennis
|
5131 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Platform & Paddle Tennis > Platform & Paddle Tennis Paddles
|
5132 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Platform & Paddle Tennis > Platform Tennis Balls
|
5133 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Tetherball
|
5134 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Tetherball > Tetherball Poles
|
5135 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Tetherball > Tetherball Sets
|
5136 |
-
Sporting Goods > Outdoor Recreation > Outdoor Games > Tetherball > Tetherballs
|
5137 |
-
Sporting Goods > Outdoor Recreation > Riding Scooters
|
5138 |
-
Sporting Goods > Outdoor Recreation > Skateboarding
|
5139 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skate Rails
|
5140 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skate Ramps
|
5141 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboard Parts
|
5142 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboard Parts > Skateboard Decks
|
5143 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboard Parts > Skateboard Small Parts
|
5144 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboard Parts > Skateboard Trucks
|
5145 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboard Parts > Skateboard Wheels
|
5146 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboarding Protective Gear
|
5147 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboarding Protective Gear > Skate Helmets
|
5148 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboarding Protective Gear > Skateboarding Gloves
|
5149 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboarding Protective Gear > Skateboarding Pads
|
5150 |
-
Sporting Goods > Outdoor Recreation > Skateboarding > Skateboards
|
5151 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities
|
5152 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Avalanche Safety
|
5153 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Avalanche Safety > Avalanche Probes
|
5154 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Avalanche Safety > Avalanche Safety Airbags
|
5155 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding
|
5156 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Bags
|
5157 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Goggle Accessories
|
5158 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Goggle Accessories > Ski & Snowboard Goggle Lenses
|
5159 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Goggles
|
5160 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Helmets
|
5161 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Leashes
|
5162 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Storage Racks
|
5163 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Tuning Tools
|
5164 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski & Snowboard Wax
|
5165 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski Binding Parts
|
5166 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski Bindings
|
5167 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski Boots
|
5168 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Ski Poles
|
5169 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Skis
|
5170 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Skis > Cross-Country Skis
|
5171 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Skis > Downhill Skis
|
5172 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Snowboard Binding Parts
|
5173 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Snowboard Bindings
|
5174 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Snowboard Boots
|
5175 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Skiing & Snowboarding > Snowboards
|
5176 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Sleds
|
5177 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Snowshoeing
|
5178 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Snowshoeing > Snowshoe Bindings
|
5179 |
-
Sporting Goods > Outdoor Recreation > Winter Sports & Activities > Snowshoeing > Snowshoes
|
5180 |
-
Toys & Games
|
5181 |
-
Toys & Games > Game Timers
|
5182 |
-
Toys & Games > Games
|
5183 |
-
Toys & Games > Games > Battle Top Accessories
|
5184 |
-
Toys & Games > Games > Battle Tops
|
5185 |
-
Toys & Games > Games > Bingo Sets
|
5186 |
-
Toys & Games > Games > Blackjack & Craps Sets
|
5187 |
-
Toys & Games > Games > Board Games
|
5188 |
-
Toys & Games > Games > Card Game Accessories
|
5189 |
-
Toys & Games > Games > Card Games
|
5190 |
-
Toys & Games > Games > Dexterity Games
|
5191 |
-
Toys & Games > Games > Dice Sets & Games
|
5192 |
-
Toys & Games > Games > Poker Chip Accessories
|
5193 |
-
Toys & Games > Games > Poker Chip Accessories > Poker Chip Carriers & Trays
|
5194 |
-
Toys & Games > Games > Poker Chips & Sets
|
5195 |
-
Toys & Games > Games > Portable Electronic Games
|
5196 |
-
Toys & Games > Games > Roulette Wheels & Sets
|
5197 |
-
Toys & Games > Games > Slot Machines
|
5198 |
-
Toys & Games > Games > Tile Games
|
5199 |
-
Toys & Games > Outdoor Play Equipment
|
5200 |
-
Toys & Games > Outdoor Play Equipment > Inflatable Bouncer Accessories
|
5201 |
-
Toys & Games > Outdoor Play Equipment > Inflatable Bouncers
|
5202 |
-
Toys & Games > Outdoor Play Equipment > Play Swings
|
5203 |
-
Toys & Games > Outdoor Play Equipment > Play Tents & Tunnels
|
5204 |
-
Toys & Games > Outdoor Play Equipment > Playhouses
|
5205 |
-
Toys & Games > Outdoor Play Equipment > Pogo Sticks
|
5206 |
-
Toys & Games > Outdoor Play Equipment > Sandboxes
|
5207 |
-
Toys & Games > Outdoor Play Equipment > See Saws
|
5208 |
-
Toys & Games > Outdoor Play Equipment > Slides
|
5209 |
-
Toys & Games > Outdoor Play Equipment > Stilts
|
5210 |
-
Toys & Games > Outdoor Play Equipment > Swing Set & Playset Accessories
|
5211 |
-
Toys & Games > Outdoor Play Equipment > Swing Sets & Playsets
|
5212 |
-
Toys & Games > Outdoor Play Equipment > Trampoline Accessories
|
5213 |
-
Toys & Games > Outdoor Play Equipment > Trampolines
|
5214 |
-
Toys & Games > Outdoor Play Equipment > Water Play Equipment
|
5215 |
-
Toys & Games > Outdoor Play Equipment > Water Play Equipment > Play Sprinkers
|
5216 |
-
Toys & Games > Outdoor Play Equipment > Water Play Equipment > Water Parks & Slides
|
5217 |
-
Toys & Games > Outdoor Play Equipment > Water Play Equipment > Water Tables
|
5218 |
-
Toys & Games > Puzzles
|
5219 |
-
Toys & Games > Puzzles > Jigsaw Puzzle Accessories
|
5220 |
-
Toys & Games > Puzzles > Jigsaw Puzzles
|
5221 |
-
Toys & Games > Puzzles > Mechanical Puzzles
|
5222 |
-
Toys & Games > Puzzles > Wooden & Pegged Puzzles
|
5223 |
-
Toys & Games > Toys
|
5224 |
-
Toys & Games > Toys > Activity Toys
|
5225 |
-
Toys & Games > Toys > Activity Toys > Ball & Cup Games
|
5226 |
-
Toys & Games > Toys > Activity Toys > Bouncy Balls
|
5227 |
-
Toys & Games > Toys > Activity Toys > Bubble Blowing Solution
|
5228 |
-
Toys & Games > Toys > Activity Toys > Bubble Blowing Toys
|
5229 |
-
Toys & Games > Toys > Activity Toys > Coiled Spring Toys
|
5230 |
-
Toys & Games > Toys > Activity Toys > Marbles
|
5231 |
-
Toys & Games > Toys > Activity Toys > Paddle Ball Toys
|
5232 |
-
Toys & Games > Toys > Activity Toys > Ribbon & Streamer Toys
|
5233 |
-
Toys & Games > Toys > Activity Toys > Spinning Tops
|
5234 |
-
Toys & Games > Toys > Activity Toys > Toy Jacks
|
5235 |
-
Toys & Games > Toys > Activity Toys > Yo-Yo Parts & Accessories
|
5236 |
-
Toys & Games > Toys > Activity Toys > Yo-Yos
|
5237 |
-
Toys & Games > Toys > Art & Drawing Toys
|
5238 |
-
Toys & Games > Toys > Art & Drawing Toys > Play Dough & Putty
|
5239 |
-
Toys & Games > Toys > Art & Drawing Toys > Toy Drawing Tablets
|
5240 |
-
Toys & Games > Toys > Ball Pit Accessories
|
5241 |
-
Toys & Games > Toys > Ball Pit Accessories > Ball Pit Balls
|
5242 |
-
Toys & Games > Toys > Ball Pits
|
5243 |
-
Toys & Games > Toys > Bath Toys
|
5244 |
-
Toys & Games > Toys > Beach & Sand Toys
|
5245 |
-
Toys & Games > Toys > Building Toys
|
5246 |
-
Toys & Games > Toys > Building Toys > Construction Set Toys
|
5247 |
-
Toys & Games > Toys > Building Toys > Foam Blocks
|
5248 |
-
Toys & Games > Toys > Building Toys > Interlocking Blocks
|
5249 |
-
Toys & Games > Toys > Building Toys > Marble Track Sets
|
5250 |
-
Toys & Games > Toys > Building Toys > Wooden Blocks
|
5251 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures
|
5252 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Action & Toy Figures
|
5253 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Bobblehead Figures
|
5254 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Doll & Action Figure Accessories
|
5255 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Dollhouse Accessories
|
5256 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Dollhouses
|
5257 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Dolls
|
5258 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Paper & Magnetic Dolls
|
5259 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Puppet & Puppet Theater Accessories
|
5260 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Puppet Theaters
|
5261 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Puppets & Marionettes
|
5262 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Stuffed Animals
|
5263 |
-
Toys & Games > Toys > Dolls, Playsets & Toy Figures > Toy Playsets
|
5264 |
-
Toys & Games > Toys > Educational Toys
|
5265 |
-
Toys & Games > Toys > Educational Toys > Ant Farms
|
5266 |
-
Toys & Games > Toys > Educational Toys > Astronomy Toys & Models
|
5267 |
-
Toys & Games > Toys > Educational Toys > Bug Collecting Kits
|
5268 |
-
Toys & Games > Toys > Educational Toys > Educational Flash Cards
|
5269 |
-
Toys & Games > Toys > Educational Toys > Reading Toys
|
5270 |
-
Toys & Games > Toys > Educational Toys > Science & Exploration Sets
|
5271 |
-
Toys & Games > Toys > Educational Toys > Toy Abacuses
|
5272 |
-
Toys & Games > Toys > Executive Toys
|
5273 |
-
Toys & Games > Toys > Executive Toys > Magnet Toys
|
5274 |
-
Toys & Games > Toys > Flying Toy Accessories
|
5275 |
-
Toys & Games > Toys > Flying Toy Accessories > Kite Accessories
|
5276 |
-
Toys & Games > Toys > Flying Toy Accessories > Kite Accessories > Kite Line Reels & Winders
|
5277 |
-
Toys & Games > Toys > Flying Toys
|
5278 |
-
Toys & Games > Toys > Flying Toys > Air & Water Rockets
|
5279 |
-
Toys & Games > Toys > Flying Toys > Kites
|
5280 |
-
Toys & Games > Toys > Flying Toys > Toy Gliders
|
5281 |
-
Toys & Games > Toys > Flying Toys > Toy Parachutes
|
5282 |
-
Toys & Games > Toys > Musical Toys
|
5283 |
-
Toys & Games > Toys > Musical Toys > Toy Instruments
|
5284 |
-
Toys & Games > Toys > Play Vehicle Accessories
|
5285 |
-
Toys & Games > Toys > Play Vehicle Accessories > Toy Race Car & Track Accessories
|
5286 |
-
Toys & Games > Toys > Play Vehicle Accessories > Toy Train Accessories
|
5287 |
-
Toys & Games > Toys > Play Vehicles
|
5288 |
-
Toys & Games > Toys > Play Vehicles > Toy Airplanes
|
5289 |
-
Toys & Games > Toys > Play Vehicles > Toy Boats
|
5290 |
-
Toys & Games > Toys > Play Vehicles > Toy Cars
|
5291 |
-
Toys & Games > Toys > Play Vehicles > Toy Helicopters
|
5292 |
-
Toys & Games > Toys > Play Vehicles > Toy Motorcycles
|
5293 |
-
Toys & Games > Toys > Play Vehicles > Toy Race Car & Track Sets
|
5294 |
-
Toys & Games > Toys > Play Vehicles > Toy Spaceships
|
5295 |
-
Toys & Games > Toys > Play Vehicles > Toy Trains & Train Sets
|
5296 |
-
Toys & Games > Toys > Play Vehicles > Toy Trucks & Construction Vehicles
|
5297 |
-
Toys & Games > Toys > Pretend Play
|
5298 |
-
Toys & Games > Toys > Pretend Play > Play Money & Banking
|
5299 |
-
Toys & Games > Toys > Pretend Play > Pretend Electronics
|
5300 |
-
Toys & Games > Toys > Pretend Play > Pretend Housekeeping
|
5301 |
-
Toys & Games > Toys > Pretend Play > Pretend Lawn & Garden
|
5302 |
-
Toys & Games > Toys > Pretend Play > Pretend Professions & Role Playing
|
5303 |
-
Toys & Games > Toys > Pretend Play > Pretend Shopping & Grocery
|
5304 |
-
Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food
|
5305 |
-
Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Play Food
|
5306 |
-
Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Toy Cookware
|
5307 |
-
Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Toy Kitchens
|
5308 |
-
Toys & Games > Toys > Pretend Play > Toy Kitchens & Play Food > Toy Tableware
|
5309 |
-
Toys & Games > Toys > Pretend Play > Toy Tools
|
5310 |
-
Toys & Games > Toys > Remote Control Toy Accessories
|
5311 |
-
Toys & Games > Toys > Remote Control Toys
|
5312 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Airships & Blimps
|
5313 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Boats & Watercraft
|
5314 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Cars & Trucks
|
5315 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Helicopters
|
5316 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Motorcycles
|
5317 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Planes
|
5318 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Robots
|
5319 |
-
Toys & Games > Toys > Remote Control Toys > Remote Control Tanks
|
5320 |
-
Toys & Games > Toys > Riding Toy Accessories
|
5321 |
-
Toys & Games > Toys > Riding Toys
|
5322 |
-
Toys & Games > Toys > Riding Toys > Electric Riding Vehicles
|
5323 |
-
Toys & Games > Toys > Riding Toys > Hobby Horses
|
5324 |
-
Toys & Games > Toys > Riding Toys > Push & Pedal Riding Vehicles
|
5325 |
-
Toys & Games > Toys > Riding Toys > Rocking & Spring Riding Toys
|
5326 |
-
Toys & Games > Toys > Riding Toys > Wagons
|
5327 |
-
Toys & Games > Toys > Robotic Toys
|
5328 |
-
Toys & Games > Toys > Sports Toy Accessories
|
5329 |
-
Toys & Games > Toys > Sports Toy Accessories > Fitness Toy Accessories
|
5330 |
-
Toys & Games > Toys > Sports Toy Accessories > Fitness Toy Accessories > Hula Hoop Accessories
|
5331 |
-
Toys & Games > Toys > Sports Toys
|
5332 |
-
Toys & Games > Toys > Sports Toys > Baseball Toys
|
5333 |
-
Toys & Games > Toys > Sports Toys > Basketball Toys
|
5334 |
-
Toys & Games > Toys > Sports Toys > Boomerangs
|
5335 |
-
Toys & Games > Toys > Sports Toys > Bowling Toys
|
5336 |
-
Toys & Games > Toys > Sports Toys > Fingerboards & Fingerboard Sets
|
5337 |
-
Toys & Games > Toys > Sports Toys > Fishing Toys
|
5338 |
-
Toys & Games > Toys > Sports Toys > Fitness Toys
|
5339 |
-
Toys & Games > Toys > Sports Toys > Fitness Toys > Hula Hoops
|
5340 |
-
Toys & Games > Toys > Sports Toys > Flying Discs
|
5341 |
-
Toys & Games > Toys > Sports Toys > Footbags
|
5342 |
-
Toys & Games > Toys > Sports Toys > Golf Toys
|
5343 |
-
Toys & Games > Toys > Sports Toys > Hockey Toys
|
5344 |
-
Toys & Games > Toys > Sports Toys > Playground Balls
|
5345 |
-
Toys & Games > Toys > Sports Toys > Racquet Sport Toys
|
5346 |
-
Toys & Games > Toys > Sports Toys > Toy Footballs
|
5347 |
-
Toys & Games > Toys > Toy Gift Baskets
|
5348 |
-
Toys & Games > Toys > Toy Weapon & Gadget Accessories
|
5349 |
-
Toys & Games > Toys > Toy Weapons & Gadgets
|
5350 |
-
Toys & Games > Toys > Visual Toys
|
5351 |
-
Toys & Games > Toys > Visual Toys > Kaleidoscopes
|
5352 |
-
Toys & Games > Toys > Visual Toys > Prisms
|
5353 |
-
Toys & Games > Toys > Wind-Up Toys
|
5354 |
-
Vehicles & Parts
|
5355 |
-
Vehicles & Parts > Vehicle Parts & Accessories
|
5356 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Aircraft Parts & Accessories
|
5357 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics
|
5358 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle A/V Players & In-Dash Systems
|
5359 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Amplifiers
|
5360 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Cassette Adapters
|
5361 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Cassette Players
|
5362 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Equalizers & Crossovers
|
5363 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Parking Cameras
|
5364 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Speakerphones
|
5365 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Speakers
|
5366 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Subwoofers
|
5367 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Electronics > Motor Vehicle Video Monitor Mounts
|
5368 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts
|
5369 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Braking
|
5370 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Carpet & Upholstery
|
5371 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Climate Control
|
5372 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Controls
|
5373 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Engine Oil Circulation
|
5374 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Engine Parts
|
5375 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Engines
|
5376 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Exhaust
|
5377 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Frame & Body Parts
|
5378 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Fuel Systems
|
5379 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Interior Fittings
|
5380 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Lighting
|
5381 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Mirrors
|
5382 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Power & Electrical Systems
|
5383 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Seating
|
5384 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Sensors & Gauges
|
5385 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Suspension Parts
|
5386 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Towing
|
5387 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Transmission & Drivetrain Parts
|
5388 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems
|
5389 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Rims & Wheels
|
5390 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Rims & Wheels > Automotive Rims & Wheels
|
5391 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Rims & Wheels > Motorcycle Rims & Wheels
|
5392 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Rims & Wheels > Off-Road and All-Terrain Vehicle Rims & Wheels
|
5393 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Tire Accessories
|
5394 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Tires
|
5395 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Tires > Automotive Tires
|
5396 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Tires > Motorcycle Tires
|
5397 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Tires > Off-Road and All-Terrain Vehicle Tires
|
5398 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Wheel Systems > Motor Vehicle Wheel Parts
|
5399 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Motor Vehicle Parts > Motor Vehicle Window Parts & Accessories
|
5400 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor
|
5401 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Portable Fuel Cans
|
5402 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning
|
5403 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning > Car Wash Brushes
|
5404 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning > Car Wash Solutions
|
5405 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning > Vehicle Carpet & Upholstery Cleaners
|
5406 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning > Vehicle Fuel Injection Cleaning Kits
|
5407 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning > Vehicle Glass Cleaners
|
5408 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Cleaning > Vehicle Waxes, Polishes & Protectants
|
5409 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers
|
5410 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Golf Cart Enclosures
|
5411 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Motor Vehicle Windshield Covers
|
5412 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Tonneau Covers
|
5413 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Hardtops
|
5414 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Soft Tops
|
5415 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Storage Covers
|
5416 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Storage Covers > Automotive Storage Covers
|
5417 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Storage Covers > Golf Cart Storage Covers
|
5418 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Storage Covers > Motorcycle Storage Covers
|
5419 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Storage Covers > Recreational Vehicle Storage Covers
|
5420 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Covers > Vehicle Storage Covers > Watercraft Storage Covers
|
5421 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor
|
5422 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Bumper Stickers
|
5423 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Air Fresheners
|
5424 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Antenna Balls
|
5425 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Dashboard Accessories
|
5426 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Decals
|
5427 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Decor Accessory Sets
|
5428 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Display Flags
|
5429 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Emblems & Hood Ornaments
|
5430 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Hitch Covers
|
5431 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle License Plate Covers
|
5432 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle License Plate Frames
|
5433 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle License Plate Mounts & Holders
|
5434 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle License Plates
|
5435 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Magnets
|
5436 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Rear View Mirror Ornaments
|
5437 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Shift Boots
|
5438 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Shift Knobs
|
5439 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Steering Wheel Covers
|
5440 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Decor > Vehicle Wraps
|
5441 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids
|
5442 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Antifreeze
|
5443 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Brake Fluid
|
5444 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Cooling System Additives
|
5445 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Engine Degreasers
|
5446 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Fuel System Cleaners
|
5447 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Greases
|
5448 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Hydraulic Clutch Fluid
|
5449 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Motor Oil
|
5450 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Performance Additives
|
5451 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Power Steering Fluid
|
5452 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Transmission Fluid
|
5453 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Fluids > Vehicle Windshield Fluid
|
5454 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Paint
|
5455 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Paint > Motor Vehicle Body Paint
|
5456 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Paint > Motor Vehicle Brake Caliper Paint
|
5457 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools
|
5458 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Motor Vehicle Brake Service Kits
|
5459 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Motor Vehicle Clutch Alignment & Removal Tools
|
5460 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Battery Chargers
|
5461 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Battery Testers
|
5462 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Body Filler
|
5463 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Diagnostic Scanners
|
5464 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Jump Starters
|
5465 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Jumper Cables
|
5466 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Vehicle Tire Repair & Tire Changing Tools
|
5467 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Maintenance, Care & Decor > Vehicle Repair & Specialty Tools > Windshield Repair Kits
|
5468 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security
|
5469 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear
|
5470 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Chest & Back Protectors
|
5471 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Elbow & Wrist Guards
|
5472 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Gloves
|
5473 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Goggles
|
5474 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Hand Guards
|
5475 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Helmet Parts & Accessories
|
5476 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Helmets
|
5477 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Kidney Belts
|
5478 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Knee & Shin Guards
|
5479 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Motorcycle Protective Gear > Motorcycle Neck Braces
|
5480 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Off-Road & All-Terrain Vehicle Protective Gear
|
5481 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Off-Road & All-Terrain Vehicle Protective Gear > ATV & UTV Bar Pads
|
5482 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks
|
5483 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Automotive Alarm Accessories
|
5484 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Automotive Alarm Systems
|
5485 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Motorcycle Alarms & Locks
|
5486 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Door Locks & Parts
|
5487 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Door Locks & Parts > Vehicle Door Lock Actuators
|
5488 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Door Locks & Parts > Vehicle Door Lock Knobs
|
5489 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Door Locks & Parts > Vehicle Door Locks & Locking Systems
|
5490 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Hitch Locks
|
5491 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Immobilizers
|
5492 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Remote Keyless Systems
|
5493 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Steering Wheel Locks
|
5494 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Alarms & Locks > Vehicle Wheel Clamps
|
5495 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment
|
5496 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Car Window Nets
|
5497 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Emergency Road Flares
|
5498 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Motor Vehicle Airbag Parts
|
5499 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Motor Vehicle Roll Cages & Bars
|
5500 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Vehicle Seat Belt Buckles
|
5501 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Vehicle Seat Belt Covers
|
5502 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Vehicle Seat Belt Straps
|
5503 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Vehicle Seat Belts
|
5504 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Vehicle Warning Whips
|
5505 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Safety & Security > Vehicle Safety Equipment > Vehicle Wheel Chocks
|
5506 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo
|
5507 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Cargo Nets
|
5508 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Rack Accessories
|
5509 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Rack Accessories > Vehicle Bicycle Rack Accessories
|
5510 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Rack Accessories > Vehicle Ski & Snowboard Rack Accessories
|
5511 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks
|
5512 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Base Rack Systems
|
5513 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Bicycle Racks
|
5514 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Boat Racks
|
5515 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Cargo Racks
|
5516 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Fishing Rod Racks
|
5517 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Gun Racks
|
5518 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Motorcycle & Scooter Racks
|
5519 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Ski & Snowboard Racks
|
5520 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Carrying Racks > Vehicle Water Sport Board Racks
|
5521 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Loading Ramps
|
5522 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Trailers
|
5523 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Trailers > Boat Trailers
|
5524 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Trailers > Horse & Livestock Trailers
|
5525 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Trailers > Travel Trailers
|
5526 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motor Vehicle Trailers > Utility & Cargo Trailers
|
5527 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Motorcycle Bags & Panniers
|
5528 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Truck Bed Storage Boxes & Organizers
|
5529 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Vehicle Headrest Hangers & Hooks
|
5530 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Vehicle Storage & Cargo > Vehicle Organizers
|
5531 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories
|
5532 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring
|
5533 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Anchor Chains
|
5534 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Anchor Lines & Ropes
|
5535 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Anchor Windlasses
|
5536 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Anchors
|
5537 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Boat Hooks
|
5538 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Boat Ladders
|
5539 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Dock Cleats
|
5540 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Docking & Anchoring > Dock Steps
|
5541 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Sailboat Parts
|
5542 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Care
|
5543 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Care > Watercraft Cleaners
|
5544 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Care > Watercraft Polishes
|
5545 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts
|
5546 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Alternators
|
5547 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Carburetors & Parts
|
5548 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Engine Controls
|
5549 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Ignition Parts
|
5550 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Impellers
|
5551 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Motor Locks
|
5552 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Motor Mounts
|
5553 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Pistons & Parts
|
5554 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engine Parts > Watercraft Propellers
|
5555 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Engines & Motors
|
5556 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Exhaust Parts
|
5557 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Exhaust Parts > Watercraft Manifolds
|
5558 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Exhaust Parts > Watercraft Mufflers & Parts
|
5559 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Fuel Systems
|
5560 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Fuel Systems > Watercraft Fuel Lines & Parts
|
5561 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Fuel Systems > Watercraft Fuel Meters
|
5562 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Fuel Systems > Watercraft Fuel Pumps & Parts
|
5563 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Fuel Systems > Watercraft Fuel Tanks & Parts
|
5564 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Lighting
|
5565 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Steering Parts
|
5566 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Steering Parts > Watercraft Steering Cables
|
5567 |
-
Vehicles & Parts > Vehicle Parts & Accessories > Watercraft Parts & Accessories > Watercraft Steering Parts > Watercraft Steering Wheels
|
5568 |
-
Vehicles & Parts > Vehicles
|
5569 |
-
Vehicles & Parts > Vehicles > Aircraft
|
5570 |
-
Vehicles & Parts > Vehicles > Motor Vehicles
|
5571 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Cars, Trucks & Vans
|
5572 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Golf Carts
|
5573 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Motorcycles & Scooters
|
5574 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Off-Road and All-Terrain Vehicles
|
5575 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Off-Road and All-Terrain Vehicles > ATVs & UTVs
|
5576 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Off-Road and All-Terrain Vehicles > Go Karts & Dune Buggies
|
5577 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Recreational Vehicles
|
5578 |
-
Vehicles & Parts > Vehicles > Motor Vehicles > Snowmobiles
|
5579 |
-
Vehicles & Parts > Vehicles > Watercraft
|
5580 |
-
Vehicles & Parts > Vehicles > Watercraft > Motor Boats
|
5581 |
-
Vehicles & Parts > Vehicles > Watercraft > Personal Watercraft
|
5582 |
-
Vehicles & Parts > Vehicles > Watercraft > Sailboats
|
5583 |
-
Vehicles & Parts > Vehicles > Watercraft > Yachts
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/google/tvc_google-source.js
DELETED
@@ -1,292 +0,0 @@
|
|
1 |
-
var _googleClothingAndAccessories = false;
|
2 |
-
var _googleNeedsProductCat = false;
|
3 |
-
var _googleRequiresBrand = true;
|
4 |
-
|
5 |
-
// ALERT! This function is equivalent for the woocommerce_to_feed_fields() function in class-data.php
|
6 |
-
function woocommerceToGoogleFields() {
|
7 |
-
return {
|
8 |
-
'id': 'ID',
|
9 |
-
'title': 'post_title',
|
10 |
-
'google_product_category': 'category',
|
11 |
-
'description': 'post_content',
|
12 |
-
'link': 'permalink',
|
13 |
-
'image_link': 'attachment_url',
|
14 |
-
'additional_image_link': '_wp_attachement_metadata',
|
15 |
-
'price': '_regular_price',
|
16 |
-
'sale_price': '_sale_price',
|
17 |
-
'sale_price_effective_date': '_sale_price_dates_from',
|
18 |
-
'item_group_id': 'item_group_id',
|
19 |
-
'mpn': 'ID',
|
20 |
-
'tax': 'Use the settings in the Merchant Center',
|
21 |
-
'shipping': 'Use the settings in the Merchant Center',
|
22 |
-
};
|
23 |
-
}
|
24 |
-
|
25 |
-
// ALERT! This function is equivalent for the set_google_output_attribute_levels() function in class-data.php
|
26 |
-
function setGoogleOutputAttributeLevels( feedHolder, targetCountry ) {
|
27 |
-
for ( var i = 0; i < feedHolder[ 'attributes' ].length; i ++ ) {
|
28 |
-
|
29 |
-
if ( feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] === '0' ) {
|
30 |
-
|
31 |
-
switch ( feedHolder[ 'attributes' ][ i ][ 'fieldName' ] ) {
|
32 |
-
|
33 |
-
case 'google_product_category':
|
34 |
-
|
35 |
-
if ( _googleNeedsProductCat === true ) {
|
36 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
37 |
-
} else {
|
38 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
39 |
-
}
|
40 |
-
|
41 |
-
break;
|
42 |
-
|
43 |
-
case 'is_bundle':
|
44 |
-
case 'multipack':
|
45 |
-
|
46 |
-
if ( jQuery.inArray( targetCountry, googleSpecialProductCountries() ) < 0 ) {
|
47 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
48 |
-
} else {
|
49 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
50 |
-
}
|
51 |
-
|
52 |
-
break;
|
53 |
-
|
54 |
-
case 'brand':
|
55 |
-
|
56 |
-
if ( _googleRequiresBrand === true ) {
|
57 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
58 |
-
} else {
|
59 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
60 |
-
}
|
61 |
-
|
62 |
-
break;
|
63 |
-
|
64 |
-
case 'item_group_id':
|
65 |
-
|
66 |
-
if ( jQuery.inArray( targetCountry, googleSpecialClothingGroupCountries() ) > - 1 ) {
|
67 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
68 |
-
} else {
|
69 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
70 |
-
}
|
71 |
-
|
72 |
-
break;
|
73 |
-
|
74 |
-
case 'gender':
|
75 |
-
case 'age_group':
|
76 |
-
case 'color':
|
77 |
-
case 'size':
|
78 |
-
|
79 |
-
if ( jQuery.inArray( targetCountry, googleSpecialClothingGroupCountries() ) > - 1 && _googleClothingAndAccessories === true ) {
|
80 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
81 |
-
} else {
|
82 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
83 |
-
}
|
84 |
-
|
85 |
-
break;
|
86 |
-
|
87 |
-
case 'tax':
|
88 |
-
|
89 |
-
// In accordance with the Google Feed Specifications update of september 2015
|
90 |
-
if ( targetCountry === 'US' ) {
|
91 |
-
|
92 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
93 |
-
} else {
|
94 |
-
|
95 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
96 |
-
}
|
97 |
-
|
98 |
-
break;
|
99 |
-
|
100 |
-
case 'shipping':
|
101 |
-
|
102 |
-
// In accordance with the Google Feed Specifications update of september 2015
|
103 |
-
if ( jQuery.inArray( targetCountry, googleSpecialShippingCountries() ) > - 1 ) {
|
104 |
-
|
105 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '1';
|
106 |
-
} else {
|
107 |
-
|
108 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
109 |
-
}
|
110 |
-
|
111 |
-
break;
|
112 |
-
|
113 |
-
case 'subscription_costs':
|
114 |
-
case 'subscription_cost-period':
|
115 |
-
case 'subscription_cost-period_length':
|
116 |
-
case 'subscription_cost-amount':
|
117 |
-
|
118 |
-
if ( jQuery.inArray( targetCountry, googleSpecialSubscriptionCountries()) > - 1 ) {
|
119 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '4';
|
120 |
-
} else {
|
121 |
-
feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] = '0';
|
122 |
-
}
|
123 |
-
|
124 |
-
break;
|
125 |
-
|
126 |
-
default:
|
127 |
-
break;
|
128 |
-
|
129 |
-
}
|
130 |
-
|
131 |
-
// set the attribute to active if it's a recommended or highly recommended attribute, or if it has a value
|
132 |
-
feedHolder[ 'attributes' ][ i ][ 'isActive' ] = setAttributeStatus( parseInt( feedHolder[ 'attributes' ][ i ][ 'fieldLevel' ] ), feedHolder[ 'attributes' ][ i ][ 'value' ] );
|
133 |
-
}
|
134 |
-
}
|
135 |
-
|
136 |
-
return feedHolder;
|
137 |
-
}
|
138 |
-
|
139 |
-
function setGooglePresets( field ) {
|
140 |
-
switch ( field ) {
|
141 |
-
case 'condition':
|
142 |
-
return '{"m":[{"s":{"static":"new"}}]}';
|
143 |
-
|
144 |
-
case 'availability':
|
145 |
-
return '{"m":[{"s":{"static":"in stock"},"c":[{"1":"0#_stock_status#0#instock"}]},{"s":{"static":"out of stock"}}]}';
|
146 |
-
|
147 |
-
case 'identifier_exists':
|
148 |
-
return '{"m":[{"s":{"static":"yes"}}]}';
|
149 |
-
|
150 |
-
case 'adult':
|
151 |
-
return '{"m":[{"s":{"static":"no"}}]}';
|
152 |
-
|
153 |
-
case 'price':
|
154 |
-
return '{"m":[{"s":{"source":"combined","f":"_regular_price|1#wc_currency"}}]}';
|
155 |
-
|
156 |
-
default:
|
157 |
-
break;
|
158 |
-
}
|
159 |
-
}
|
160 |
-
|
161 |
-
function fillGoogleCategoryVariables( selectedCategory, currentLevel ) {
|
162 |
-
switch ( currentLevel ) {
|
163 |
-
case 'lvl_0':
|
164 |
-
case 'lvl_1':
|
165 |
-
_googleClothingAndAccessories = false;
|
166 |
-
_googleNeedsProductCat = false;
|
167 |
-
_googleRequiresBrand = true;
|
168 |
-
break;
|
169 |
-
}
|
170 |
-
|
171 |
-
switch ( selectedCategory ) {
|
172 |
-
case 'Clothing':
|
173 |
-
_googleClothingAndAccessories = true;
|
174 |
-
_googleNeedsProductCat = true;
|
175 |
-
_googleRequiresBrand = true;
|
176 |
-
break;
|
177 |
-
|
178 |
-
case 'Software':
|
179 |
-
case 'Apparel & Accessories':
|
180 |
-
_googleClothingAndAccessories = true;
|
181 |
-
_googleNeedsProductCat = true;
|
182 |
-
_googleRequiresBrand = true;
|
183 |
-
break;
|
184 |
-
|
185 |
-
case 'Media':
|
186 |
-
_googleClothingAndAccessories = false;
|
187 |
-
_googleNeedsProductCat = true;
|
188 |
-
_googleRequiresBrand = false;
|
189 |
-
break;
|
190 |
-
|
191 |
-
default:
|
192 |
-
break;
|
193 |
-
}
|
194 |
-
}
|
195 |
-
|
196 |
-
function googleStaticFieldOptions( fieldName ) {
|
197 |
-
var options = [];
|
198 |
-
|
199 |
-
switch ( fieldName ) {
|
200 |
-
case 'condition':
|
201 |
-
options = [ 'new', 'used', 'refurbished' ];
|
202 |
-
break;
|
203 |
-
|
204 |
-
case 'availability':
|
205 |
-
options = [ 'in stock', 'out of stock', 'preorder' ];
|
206 |
-
break;
|
207 |
-
|
208 |
-
case 'identifier_exists':
|
209 |
-
options = [ 'yes', 'no' ];
|
210 |
-
break;
|
211 |
-
|
212 |
-
case 'gender':
|
213 |
-
options = [ 'unisex', 'male', 'female' ];
|
214 |
-
break;
|
215 |
-
|
216 |
-
case 'age_group':
|
217 |
-
options = [ 'adult', 'newborn', 'infant', 'toddler', 'kids' ];
|
218 |
-
break;
|
219 |
-
|
220 |
-
case 'size_type':
|
221 |
-
options = [ 'regular', 'petite', 'plus', 'big and tall', 'maternity' ];
|
222 |
-
break;
|
223 |
-
|
224 |
-
case 'size_system':
|
225 |
-
options = [ 'EU', 'US', 'UK', 'DE', 'FR', 'JP', 'CN', 'IT', 'BR', 'MEX', 'AU' ];
|
226 |
-
break;
|
227 |
-
|
228 |
-
case 'adult':
|
229 |
-
options = [ 'yes', 'no' ];
|
230 |
-
break;
|
231 |
-
|
232 |
-
case 'energy_efficiency_class':
|
233 |
-
case 'min_energy_efficiency_class':
|
234 |
-
case 'max_energy_efficiency_class':
|
235 |
-
options = [ 'A', 'A+', 'A++', 'A+++', 'B', 'C', 'D', 'E', 'F', 'G' ];
|
236 |
-
break;
|
237 |
-
|
238 |
-
case 'excluded_destination':
|
239 |
-
options = [ 'Shopping', 'ShoppingActions', 'DisplayAds' ];
|
240 |
-
break;
|
241 |
-
|
242 |
-
default:
|
243 |
-
options = [];
|
244 |
-
break;
|
245 |
-
}
|
246 |
-
|
247 |
-
return options;
|
248 |
-
}
|
249 |
-
|
250 |
-
function switchToGoogleFeedFormMainInputs( isNew, channel ) {
|
251 |
-
jQuery( '#country-list-row' ).show();
|
252 |
-
jQuery( '#category-list-row' ).show();
|
253 |
-
jQuery( '#google-feed-title-row' ).show();
|
254 |
-
jQuery( '#google-feed-description-row' ).show();
|
255 |
-
jQuery( '#aggregator-selector-row' ).hide();
|
256 |
-
|
257 |
-
appendCategoryLists( parseInt( channel ), 'en-US', isNew );
|
258 |
-
}
|
259 |
-
|
260 |
-
function googleInputChanged( feedId, categoryChanged ) {
|
261 |
-
var fileName = jQuery( '#file-name' ).val();
|
262 |
-
var selectedCountry = jQuery( '#countries' ).val();
|
263 |
-
var selectedMainCategory = jQuery( '#lvl_0' ).val();
|
264 |
-
|
265 |
-
// enable or disable the correct buttons for the google channel
|
266 |
-
if ( fileName && selectedCountry !== '0' && selectedMainCategory && selectedMainCategory !== '0' ) {
|
267 |
-
updateFeedFormAfterInputChanged( feedId, categoryChanged );
|
268 |
-
} else {
|
269 |
-
// keep the Generate and Save buttons disabled
|
270 |
-
disableFeedActionButtons();
|
271 |
-
}
|
272 |
-
}
|
273 |
-
|
274 |
-
// ALERT! This function is equivalent to the special_clothing_group_countries() function in class-feed.php in the google channels folder
|
275 |
-
function googleSpecialClothingGroupCountries() {
|
276 |
-
return [ 'US', 'GB', 'DE', 'FR', 'JP', 'BR' ]; // Brazil added based on the new Feed Specifications from september 2015
|
277 |
-
}
|
278 |
-
|
279 |
-
// ALERT! This function is equivalent to the special_shipping_countries() function in class-feed.php in the google channels folder
|
280 |
-
function googleSpecialShippingCountries() {
|
281 |
-
return [ 'US', 'GB', 'DE', 'AU', 'FR', 'CH', 'CZ', 'NL', 'IT', 'ES', 'JP' ];
|
282 |
-
}
|
283 |
-
|
284 |
-
// ALERT! This function is equivalent to the special_product_countries() function in class-feed.php in the google channels folder
|
285 |
-
function googleSpecialProductCountries() {
|
286 |
-
return [ 'US', 'GB', 'DE', 'AU', 'FR', 'CH', 'CZ', 'NL', 'IT', 'ES', 'JP', 'BR' ];
|
287 |
-
}
|
288 |
-
|
289 |
-
// ALERT! This function is equivalent to the special_subscription_countries() function in class-feed.php in the google channels folder
|
290 |
-
function googleSpecialSubscriptionCountries() {
|
291 |
-
return [ 'DE', 'FR', 'GB' ];
|
292 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_channel-functions.js
DELETED
@@ -1,707 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
/**
|
3 |
-
* Switches the correct input fields on the feed form on or off depending on the selected channel
|
4 |
-
*
|
5 |
-
* @param {string} channel
|
6 |
-
* @param {boolean} isNew
|
7 |
-
* @returns nothing
|
8 |
-
*/
|
9 |
-
|
10 |
-
// TVC_CHANNEL_RELATED
|
11 |
-
function tvc_showChannelInputs( channel, isNew ) {
|
12 |
-
var fName = {
|
13 |
-
'1': 'switchToGoogleFeedFormMainInputs',
|
14 |
-
'2': 'switchToBingFeedFormMainInputs',
|
15 |
-
'3': 'switchToBeslisFeedFormMainInputs',
|
16 |
-
'4': 'switchToPricegrabberFeedFormMainInputs',
|
17 |
-
'5': 'switchToShoppingFeedFormMainInputs',
|
18 |
-
'6': 'switchToAmazonFeedFormMainInputs',
|
19 |
-
'7': 'switchToConnexityFeedFormMainInputs',
|
20 |
-
'9': 'switchToNextagFeedFormMainInputs',
|
21 |
-
'10': 'switchToKieskeurigFeedFormMainInputs',
|
22 |
-
'11': 'switchToVergelijkFeedFormMainInputs',
|
23 |
-
'12': 'switchToKoopjespakkerFeedFormMainInputs',
|
24 |
-
'13': 'switchToAvantLinkFeedFormMainInputs',
|
25 |
-
'14': 'switchToZboziFeedFormMainInputs',
|
26 |
-
'15': 'switchToComconFeedFormMainInputs',
|
27 |
-
'16': 'switchToFacebookFeedFormMainInputs',
|
28 |
-
'17': 'switchToBolFeedFormMainInputs',
|
29 |
-
'18': 'switchToAdtractionFeedFormMainInputs',
|
30 |
-
'19': 'switchToRicardoFeedFormMainInputs',
|
31 |
-
'20': 'switchToEbayFeedFormMainInputs',
|
32 |
-
'21': 'switchToShopzillaFeedFormMainInputs',
|
33 |
-
'22': 'switchToConvertoFeedFormMainInputs',
|
34 |
-
'23': 'switchToIdealoFeedFormMainInputs',
|
35 |
-
'24': 'switchToHeurekaFeedFormMainInputs',
|
36 |
-
'25': 'switchToPepperjamFeedFormMainInputs',
|
37 |
-
'26': 'switchToGalaxusProductDataFeedFormMainInputs',
|
38 |
-
'27': 'switchToGalaxusProductPropertiesFeedFormMainInputs',
|
39 |
-
'28': 'switchToGalaxusProductStockPricingFeedFormMainInputs',
|
40 |
-
'996': 'switchToTsvFeedFormMainInputs',
|
41 |
-
'997': 'switchToTxtFeedFormMainInputs',
|
42 |
-
'998': 'switchToCsvFeedFormMainInputs',
|
43 |
-
'999': 'switchToFeedFormMainInputs',
|
44 |
-
};
|
45 |
-
|
46 |
-
// call the correct function
|
47 |
-
if ( fName.hasOwnProperty( channel ) ) {
|
48 |
-
window[ fName[ channel ] ]( isNew, channel );
|
49 |
-
}
|
50 |
-
|
51 |
-
// standard for all channels
|
52 |
-
jQuery( '#update-schedule-row' ).show();
|
53 |
-
jQuery( '#add-product-variations-row' ).show();
|
54 |
-
|
55 |
-
if ( (
|
56 |
-
null === jQuery( '#lvl_0' ).val() && '' === jQuery( '#selected-categories' ).html() ) || 0 === jQuery( '#tvc-countries-selector' ).val() ) {
|
57 |
-
tvc_show_or_hide_category_map( channel );
|
58 |
-
} else {
|
59 |
-
jQuery( '#tvc-category-map' ).show();
|
60 |
-
}
|
61 |
-
}
|
62 |
-
|
63 |
-
/**
|
64 |
-
* depending on channel show or hide the category map directly after channel selection
|
65 |
-
* Add the channel to the "show" part when it does not have an own category list
|
66 |
-
*
|
67 |
-
* @param {string} channel
|
68 |
-
* @returns nothing
|
69 |
-
*/
|
70 |
-
function tvc_show_or_hide_category_map( channel ) {
|
71 |
-
var category_map_selector = jQuery( '#tvc-category-map' );
|
72 |
-
|
73 |
-
switch ( channel ) {
|
74 |
-
case '15': // Commerce Connector
|
75 |
-
case '17': // Bol.com
|
76 |
-
case '18': // Adtraction
|
77 |
-
case '22': // Converto
|
78 |
-
case '23': // Idealo
|
79 |
-
case '25': // Pepperjam
|
80 |
-
case '26': // Galaxus Product Data
|
81 |
-
case '27': // Galaxus Product Stock Pricing
|
82 |
-
case '28': // Galaxus Product Properties
|
83 |
-
category_map_selector.show();
|
84 |
-
break;
|
85 |
-
|
86 |
-
default:
|
87 |
-
category_map_selector.hide();
|
88 |
-
break;
|
89 |
-
}
|
90 |
-
}
|
91 |
-
|
92 |
-
/**
|
93 |
-
* Usually categories are separated by a > but some channels use other separators
|
94 |
-
*
|
95 |
-
* @since 2.2.0
|
96 |
-
*
|
97 |
-
* @param {string} channel
|
98 |
-
* @returns {string} separator
|
99 |
-
*/
|
100 |
-
function tvc_category_separator( channel ) {
|
101 |
-
switch ( channel ) {
|
102 |
-
case '14': // Commerce Connector
|
103 |
-
case '24': // Commerce Connector
|
104 |
-
return ' | ';
|
105 |
-
|
106 |
-
default:
|
107 |
-
return ' > ';
|
108 |
-
}
|
109 |
-
}
|
110 |
-
|
111 |
-
/**
|
112 |
-
* calls the correct channel function that makes sure the correct input fields are shown after the user has changed the title or channel
|
113 |
-
*
|
114 |
-
* @param {string} channel
|
115 |
-
* @param {string} feedId
|
116 |
-
* @param {boolean} categoryChanged
|
117 |
-
* @returns nothing
|
118 |
-
*/
|
119 |
-
function tvc_reactOnChannelInputChanged( channel, feedId, categoryChanged ) {
|
120 |
-
var functionName = '';
|
121 |
-
var tabId = tvc_getUrlVariable( 'tab' ); // identify the feed type
|
122 |
-
|
123 |
-
if ( 'product-feed' === tabId ) { // handle product feeds from different merchants
|
124 |
-
var fName = {
|
125 |
-
'1': 'googleInputChanged',
|
126 |
-
'2': 'bingInputChanged',
|
127 |
-
'3': 'beslisInputChanged',
|
128 |
-
'4': 'pricegrabberInputChanged',
|
129 |
-
'5': 'shoppingInputChanged',
|
130 |
-
'6': 'amazonInputChanged',
|
131 |
-
'7': 'connexityInputChanged',
|
132 |
-
'9': 'nextagInputChanged',
|
133 |
-
'10': 'kieskeurigInputChanged',
|
134 |
-
'11': 'vergelijkInputChanged',
|
135 |
-
'12': 'koopjespakkerInputChanged',
|
136 |
-
'13': 'avantlinkInputChanged',
|
137 |
-
'14': 'zboziInputChanged',
|
138 |
-
'15': 'comconInputChanged',
|
139 |
-
'16': 'facebookInputChanged',
|
140 |
-
'17': 'bolInputChanged',
|
141 |
-
'18': 'adtractionInputChanged',
|
142 |
-
'19': 'ricardoInputChanged',
|
143 |
-
'20': 'ebayInputChanged',
|
144 |
-
'21': 'shopzillaInputChanged',
|
145 |
-
'22': 'convertoInputChanged',
|
146 |
-
'23': 'idealoInputChanged',
|
147 |
-
'24': 'heurekaInputChanged',
|
148 |
-
'25': 'pepperjamInputChanged',
|
149 |
-
'26': 'galaxusProductDataInputChanged',
|
150 |
-
'27': 'galaxusProductStockPricingInputChanged',
|
151 |
-
'28': 'galaxusProductPropertiesInputChanged',
|
152 |
-
'996': 'TsvInputChanged',
|
153 |
-
'997': 'TxtInputChanged',
|
154 |
-
'998': 'CsvInputChanged',
|
155 |
-
'999': 'InputChanged',
|
156 |
-
};
|
157 |
-
|
158 |
-
functionName = fName[ channel ];
|
159 |
-
} else { // handle special feeds from add-ons
|
160 |
-
var functionString = tvc_convertToCamelCase( tabId.split( '-' ) );
|
161 |
-
functionName = functionString + 'Changed';
|
162 |
-
}
|
163 |
-
|
164 |
-
// call the correct function
|
165 |
-
if ( functionName ) {
|
166 |
-
window[ functionName ]( feedId, categoryChanged );
|
167 |
-
}
|
168 |
-
}
|
169 |
-
|
170 |
-
/**
|
171 |
-
* Returns txt of xml depending on the feed type that needs to be made
|
172 |
-
*
|
173 |
-
* @param {string} channel
|
174 |
-
* @returns {string} with the channel feed type
|
175 |
-
*/
|
176 |
-
function tvc_getChannelFeedType( channel ) {
|
177 |
-
switch ( channel ) {
|
178 |
-
case '2': // bing
|
179 |
-
case '4': // pricegrabber
|
180 |
-
case '6': // amazon
|
181 |
-
case '7': // connexity
|
182 |
-
case '9': // nextag
|
183 |
-
case '12': // koopjespakker.nl
|
184 |
-
case '21': // shopzilla
|
185 |
-
case '25': // pepperjam
|
186 |
-
case '997': // Custom TXT Feed
|
187 |
-
return 'txt';
|
188 |
-
|
189 |
-
case '15': // Commerce Connector
|
190 |
-
case '17': // Bol.com
|
191 |
-
case '19': // Ricardo.ch
|
192 |
-
case '22': // Converto
|
193 |
-
case '23': // Idealo
|
194 |
-
case '26': // Galaxus Product Data
|
195 |
-
case '27': // Galaxus Product Stock Pricing
|
196 |
-
case '28': // Galaxus Product Properties
|
197 |
-
case '998': // Custom CSV Feed
|
198 |
-
return 'csv';
|
199 |
-
|
200 |
-
case '996': // Custom TSV feed
|
201 |
-
return 'tsv';
|
202 |
-
|
203 |
-
default:
|
204 |
-
return 'xml';
|
205 |
-
}
|
206 |
-
}
|
207 |
-
|
208 |
-
/**
|
209 |
-
* returns the correct country code for the channel specific category text file
|
210 |
-
*
|
211 |
-
* @param {string} channel
|
212 |
-
* @returns {String} with the channels country code
|
213 |
-
*/
|
214 |
-
function tvc_channelCountryCode( channel ) {
|
215 |
-
var language = 'en-US';
|
216 |
-
|
217 |
-
// TVC_CHANNEL_RELATED
|
218 |
-
switch ( channel ) {
|
219 |
-
case '3': // Beslist
|
220 |
-
case '10': // Kieskeurig
|
221 |
-
case '11': // Vergelijk
|
222 |
-
case '12': // Koopjespakker
|
223 |
-
case '17': // Bol.com
|
224 |
-
language = 'nl-NL';
|
225 |
-
break;
|
226 |
-
|
227 |
-
case '14': // Zbozi
|
228 |
-
case '24': // Heureka
|
229 |
-
language = 'cs-CZ';
|
230 |
-
break;
|
231 |
-
|
232 |
-
case '19': // Ricardo.ch
|
233 |
-
language = 'de-CH';
|
234 |
-
break;
|
235 |
-
|
236 |
-
case '23': // Idealo
|
237 |
-
language = 'de-DE';
|
238 |
-
break;
|
239 |
-
}
|
240 |
-
|
241 |
-
return language;
|
242 |
-
}
|
243 |
-
|
244 |
-
/**
|
245 |
-
* Returns true if the specified channel does not have its own categories but uses the users shop
|
246 |
-
* categories instead
|
247 |
-
*
|
248 |
-
* @param {string} channel
|
249 |
-
* @returns {Boolean} true when this channel uses categories from the shop
|
250 |
-
*/
|
251 |
-
function tvc_channelUsesOwnCategories( channel ) {
|
252 |
-
// only add the channel when it uses the shop categories in stead of specific channel categories
|
253 |
-
switch ( channel ) {
|
254 |
-
case '10': // kieskeurig.nl
|
255 |
-
case '15': // Commerce Connector
|
256 |
-
case '17': // Bol.com
|
257 |
-
case '18': // Adtraction
|
258 |
-
case '22': // Converto
|
259 |
-
case '23': // Idealo
|
260 |
-
case '25': // Pepperjam
|
261 |
-
case '26': // Galaxus Product Data
|
262 |
-
case '27': // Galaxus Product Stock Pricing
|
263 |
-
case '28': // Galaxus Product Properties
|
264 |
-
return true;
|
265 |
-
|
266 |
-
default:
|
267 |
-
return false;
|
268 |
-
}
|
269 |
-
}
|
270 |
-
|
271 |
-
/**
|
272 |
-
* If required for that channel, this function activates the correct function that will prepare the global category
|
273 |
-
* variables in the channel specific javascript file. Does nothing when not required for the channel
|
274 |
-
*
|
275 |
-
* @param {string} channel
|
276 |
-
* @param {string} selectedCategory
|
277 |
-
* @param {string} currentLevelId
|
278 |
-
* @returns nothing
|
279 |
-
*/
|
280 |
-
function tvc_fillCategoryVariables(
|
281 |
-
channel, selectedCategory, currentLevelId ) {
|
282 |
-
var fName = {
|
283 |
-
'1': 'fillGoogleCategoryVariables',
|
284 |
-
'4': 'fillPricegrabberCategoryVariables',
|
285 |
-
'5': 'fillShoppingCategoryVariables',
|
286 |
-
'6': 'fillAmazonCategoryVariables',
|
287 |
-
'7': 'fillConnexityCategoryVariables',
|
288 |
-
'9': 'fillNextagCategoryVariables',
|
289 |
-
'13': 'fillAvantLinkCategoryVariables',
|
290 |
-
'14': 'fillZboziCategoryVariables',
|
291 |
-
};
|
292 |
-
|
293 |
-
// call the correct function
|
294 |
-
if ( fName.hasOwnProperty( channel ) ) {
|
295 |
-
// call the correct switch main form inputs function
|
296 |
-
window[ fName[ channel ] ]( selectedCategory, currentLevelId );
|
297 |
-
}
|
298 |
-
}
|
299 |
-
|
300 |
-
/**
|
301 |
-
* Some fields require specific allowed inputs. This function gets the correct options for given field
|
302 |
-
*
|
303 |
-
* @param {string} rowId
|
304 |
-
* @param {string} queryLevel
|
305 |
-
* @param {string} combinationLevel
|
306 |
-
* @param {string} channel
|
307 |
-
* @param {string} fieldName
|
308 |
-
* @param {string} selectedValue
|
309 |
-
* @returns {String} containing the allowed options
|
310 |
-
*/
|
311 |
-
function tvc_displayCorrectStaticField(
|
312 |
-
rowId, queryLevel, combinationLevel, channel, fieldName, selectedValue ) {
|
313 |
-
var html = '';
|
314 |
-
var options = tvc_restrictedStaticFields( channel, fieldName );
|
315 |
-
|
316 |
-
if ( options !== undefined ) {
|
317 |
-
if ( options.length === 0 ) {
|
318 |
-
// show the standard text type input field
|
319 |
-
html = tvc_staticInputField( rowId, queryLevel, combinationLevel, selectedValue );
|
320 |
-
} else {
|
321 |
-
// show the standard selector with the correct allowed options
|
322 |
-
html = tvc_staticInputSelect( rowId, queryLevel, combinationLevel, options, selectedValue );
|
323 |
-
}
|
324 |
-
}
|
325 |
-
|
326 |
-
return html;
|
327 |
-
}
|
328 |
-
|
329 |
-
/**
|
330 |
-
* Gets the advised input fields
|
331 |
-
*
|
332 |
-
* @param {string} channel
|
333 |
-
* @returns {array} array containing the advised inputs
|
334 |
-
*/
|
335 |
-
function tvc_getAdvisedInputs( channel ) {
|
336 |
-
var fName = {
|
337 |
-
'1': 'woocommerceToGoogleFields',
|
338 |
-
'2': 'woocommerceToBingFields',
|
339 |
-
'3': 'woocommerceToBeslisFields',
|
340 |
-
'4': 'woocommerceToPricegrabberFields',
|
341 |
-
'5': 'woocommerceToShoppingFields',
|
342 |
-
'6': 'woocommerceToAmazonFields',
|
343 |
-
'7': 'woocommerceToConnexityFields',
|
344 |
-
'9': 'woocommerceToNextagFields',
|
345 |
-
'10': 'woocommerceToKieskeurigFields',
|
346 |
-
'11': 'woocommerceToVergelijkFields',
|
347 |
-
'12': 'woocommerceToKoopjespakkerFields',
|
348 |
-
'13': 'woocommerceToAvantLinkFields',
|
349 |
-
'14': 'woocommerceToZboziFields',
|
350 |
-
'15': 'woocommerceToComconFields',
|
351 |
-
'16': 'woocommerceToFacebookFields',
|
352 |
-
'17': 'woocommerceToBolFields',
|
353 |
-
'18': 'woocommerceToAdtractionFields',
|
354 |
-
'19': 'woocommerceToRicardoFields',
|
355 |
-
'20': 'woocommerceToeBayFields',
|
356 |
-
'21': 'woocommerceToShopzillaFields',
|
357 |
-
'22': 'woocommerceToConvertoFields',
|
358 |
-
'23': 'woocommerceToIdealoFields',
|
359 |
-
'24': 'woocommerceToHeurekaFields',
|
360 |
-
'25': 'woocommerceToPepperjamFields',
|
361 |
-
'26': 'woocommerceToGalaxusProductDataFields',
|
362 |
-
'27': 'woocommerceToGalaxusProductStockPricingFields',
|
363 |
-
'28': 'woocommerceToGalaxusProductPropertiesFields',
|
364 |
-
};
|
365 |
-
|
366 |
-
if ( fName.hasOwnProperty( channel ) ) {
|
367 |
-
// call the correct function
|
368 |
-
return window[ fName[ channel ] ]();
|
369 |
-
} else {
|
370 |
-
return [];
|
371 |
-
}
|
372 |
-
}
|
373 |
-
|
374 |
-
/**
|
375 |
-
* Sets the attributes to the correct levels depending on several variables.
|
376 |
-
*
|
377 |
-
* @param {string} channel Channel id.
|
378 |
-
* @param {object} feedHolder Feed Holder containing feed data items.
|
379 |
-
* @param {string} selectArgument
|
380 |
-
*
|
381 |
-
* @returns {object} feed holder with the correct attribute levels
|
382 |
-
*/
|
383 |
-
// ALERT has a relation with the set_output_attribute_levels() function in the class-tvc-data.php file
|
384 |
-
function tvc_setOutputAttributeLevels( channel, feedHolder, selectArgument ) {
|
385 |
-
switch ( channel ) {
|
386 |
-
case '1':
|
387 |
-
return setGoogleOutputAttributeLevels( feedHolder, selectArgument );
|
388 |
-
|
389 |
-
case '2':
|
390 |
-
return setBingOutputAttributeLevels( feedHolder );
|
391 |
-
|
392 |
-
case '3':
|
393 |
-
return setBeslisOutputAttributeLevels( feedHolder );
|
394 |
-
|
395 |
-
case '4':
|
396 |
-
return setPricegrabberOutputAttributeLevels( feedHolder );
|
397 |
-
|
398 |
-
case '5':
|
399 |
-
return setShoppingOutputAttributeLevels( feedHolder );
|
400 |
-
|
401 |
-
case '6':
|
402 |
-
return setAmazonOutputAttributeLevels( feedHolder );
|
403 |
-
|
404 |
-
case '7':
|
405 |
-
return setConnexityOutputAttributeLevels( feedHolder );
|
406 |
-
|
407 |
-
case '9':
|
408 |
-
return setNextagOutputAttributeLevels( feedHolder );
|
409 |
-
|
410 |
-
case '10':
|
411 |
-
return setKieskeurigOutputAttributeLevels( feedHolder );
|
412 |
-
|
413 |
-
case '11':
|
414 |
-
return setVergelijkOutputAttributeLevels( feedHolder );
|
415 |
-
|
416 |
-
case '13':
|
417 |
-
return setAvantLinkOutputAttributeLevels( feedHolder,
|
418 |
-
selectArgument );
|
419 |
-
|
420 |
-
case '14':
|
421 |
-
return setZboziOutputAttributeLevels( feedHolder, selectArgument );
|
422 |
-
|
423 |
-
case '26':
|
424 |
-
return setGalaxusProductDataAttributeLevels( feedHolder,
|
425 |
-
selectArgument );
|
426 |
-
|
427 |
-
case '27':
|
428 |
-
return setGalaxusProductStockPricingAttributeLevels( feedHolder );
|
429 |
-
|
430 |
-
case '28':
|
431 |
-
return setGalaxusProductPropertiesAttributeLevels( feedHolder );
|
432 |
-
|
433 |
-
case '996':
|
434 |
-
return setTsvOutputAttributeLevels( feedHolder );
|
435 |
-
|
436 |
-
case '997':
|
437 |
-
return setTxtOutputAttributeLevels( feedHolder );
|
438 |
-
|
439 |
-
case '998':
|
440 |
-
return setCsvOutputAttributeLevels( feedHolder );
|
441 |
-
|
442 |
-
case '999':
|
443 |
-
return setOutputAttributeLevels( feedHolder );
|
444 |
-
|
445 |
-
default:
|
446 |
-
return feedHolder;
|
447 |
-
}
|
448 |
-
}
|
449 |
-
|
450 |
-
/**
|
451 |
-
* returns an array with the channel specific fields with restricted input options
|
452 |
-
*
|
453 |
-
* @param {string} channel
|
454 |
-
* @param {string} fieldName
|
455 |
-
* @returns {array}
|
456 |
-
*/
|
457 |
-
function tvc_restrictedStaticFields( channel, fieldName ) {
|
458 |
-
var fName = {
|
459 |
-
'1': 'googleStaticFieldOptions',
|
460 |
-
'2': 'bingStaticFieldOptions',
|
461 |
-
'3': 'beslisStaticFieldOptions',
|
462 |
-
'4': 'pricegrabberStaticFieldOptions',
|
463 |
-
'5': 'shoppingStaticFieldOptions',
|
464 |
-
'6': 'amazonStaticFieldOptions',
|
465 |
-
'7': 'connexityStaticFieldOptions',
|
466 |
-
'9': 'nextagStaticFieldOptions',
|
467 |
-
'10': 'kieskeurigStaticFieldOptions',
|
468 |
-
'11': 'vergelijkStaticFieldOptions',
|
469 |
-
'12': 'koopjespakkerStaticFieldOptions',
|
470 |
-
'13': 'avantlinkStaticFieldOptions',
|
471 |
-
'14': 'zboziStaticFieldOptions',
|
472 |
-
'15': 'comconStaticFieldOptions',
|
473 |
-
'16': 'facebookStaticFieldOptions',
|
474 |
-
'17': 'bolStaticFieldOptions',
|
475 |
-
'18': 'adtractionStaticFieldOptions',
|
476 |
-
'19': 'ricardoStaticFieldOptions',
|
477 |
-
'20': 'ebayStaticFieldOptions',
|
478 |
-
'21': 'shopzillaStaticFieldOptions',
|
479 |
-
'23': 'idealoStaticFieldOptions',
|
480 |
-
'25': 'pepperjamStaticFieldOptions',
|
481 |
-
'26': 'galaxusProductDataStaticFieldOptions',
|
482 |
-
'27': 'galaxusProductStockPricingStaticFieldOptions',
|
483 |
-
'28': 'galaxusProductPropertiesStaticFieldOptions',
|
484 |
-
};
|
485 |
-
|
486 |
-
if ( fName.hasOwnProperty( channel ) ) {
|
487 |
-
// call the correct function
|
488 |
-
return window[ fName[ channel ] ]( fieldName );
|
489 |
-
} else {
|
490 |
-
|
491 |
-
return [];
|
492 |
-
}
|
493 |
-
}
|
494 |
-
|
495 |
-
/**
|
496 |
-
* set a preset condition, other than the advised input, for fields for a specific channel (eg. condition = static field with 'new' selected
|
497 |
-
*
|
498 |
-
* @param {array} outputsField
|
499 |
-
* @param {string} channel
|
500 |
-
* @returns {array}
|
501 |
-
*/
|
502 |
-
function tvc_setChannelRelatedPresets( outputsField, channel ) {
|
503 |
-
// TVC_CHANNEL_RELATED
|
504 |
-
switch ( channel ) {
|
505 |
-
|
506 |
-
case '1': // Google
|
507 |
-
if ( outputsField[ 'field_label' ] === 'condition' || outputsField[ 'field_label' ] === 'availability' || outputsField[ 'field_label' ] === 'identifier_exists' || outputsField[ 'field_label' ] === 'adult' || outputsField[ 'field_label' ] === 'price' ) {
|
508 |
-
|
509 |
-
// only switch to the 'preset' value if no user value is set
|
510 |
-
if ( ! outputsField[ 'value' ] ) {
|
511 |
-
outputsField[ 'value' ] = setGooglePresets( outputsField[ 'field_label' ] );
|
512 |
-
}
|
513 |
-
}
|
514 |
-
break;
|
515 |
-
|
516 |
-
case '2': // Bing
|
517 |
-
if ( outputsField[ 'field_label' ] === 'seller_name' ) {
|
518 |
-
// only switch to the 'preset' value if no user value is set
|
519 |
-
if ( ! outputsField[ 'value' ] ) {
|
520 |
-
outputsField[ 'value' ] = setBingPresets( outputsField[ 'field_label' ] );
|
521 |
-
}
|
522 |
-
}
|
523 |
-
break;
|
524 |
-
|
525 |
-
case '3': // Beslist
|
526 |
-
if ( outputsField[ 'field_label' ] === 'Conditie' || outputsField[ 'field_label' ] === 'Levertijd' ) {
|
527 |
-
// only switch to the 'preset' value if no user value is set
|
528 |
-
if ( ! outputsField[ 'value' ] ) {
|
529 |
-
outputsField[ 'value' ] = setBeslisPresets( outputsField[ 'field_label' ] );
|
530 |
-
}
|
531 |
-
}
|
532 |
-
break;
|
533 |
-
|
534 |
-
case '13': // Avant Link
|
535 |
-
if ( outputsField[ 'field_label' ] === 'condition' || outputsField[ 'field_label' ] === 'availability' || outputsField[ 'field_label' ] === 'identifier_exists' ) {
|
536 |
-
|
537 |
-
// only switch to the 'preset' value if no user value is set
|
538 |
-
if ( ! outputsField[ 'value' ] ) {
|
539 |
-
outputsField[ 'value' ] = setAvantLinkPresets( outputsField[ 'field_label' ] );
|
540 |
-
}
|
541 |
-
}
|
542 |
-
break;
|
543 |
-
|
544 |
-
case '14': // Zbozi
|
545 |
-
if ( outputsField[ 'field_label' ] === 'EROTIC' || outputsField[ 'field_label' ] === 'VISIBILITY' ) {
|
546 |
-
// only switch to the 'preset' value if no user value is set
|
547 |
-
if ( ! outputsField[ 'value' ] ) {
|
548 |
-
outputsField[ 'value' ] = setZboziPresets( outputsField[ 'field_label' ] );
|
549 |
-
}
|
550 |
-
}
|
551 |
-
break;
|
552 |
-
|
553 |
-
case '15': // Commerce Connector
|
554 |
-
if ( outputsField[ 'field_label' ] === 'Delivery time' ) {
|
555 |
-
// only switch to the 'preset' value if no user value is set
|
556 |
-
if ( ! outputsField[ 'value' ] ) {
|
557 |
-
outputsField[ 'value' ] = setComconPresets( outputsField[ 'field_label' ] );
|
558 |
-
}
|
559 |
-
}
|
560 |
-
break;
|
561 |
-
|
562 |
-
case '16': // Facebook
|
563 |
-
if ( outputsField[ 'field_label' ] === 'condition' || outputsField[ 'field_label' ] === 'availability' || outputsField[ 'field_label' ] === 'price' ) {
|
564 |
-
|
565 |
-
// only switch to the 'preset' value if no user value is set
|
566 |
-
if ( ! outputsField[ 'value' ] ) {
|
567 |
-
outputsField[ 'value' ] = setFacebookPresets( outputsField[ 'field_label' ] );
|
568 |
-
}
|
569 |
-
}
|
570 |
-
break;
|
571 |
-
|
572 |
-
case '17': // Bol.com
|
573 |
-
if ( outputsField[ 'field_label' ] === 'Condition' || outputsField[ 'field_label' ] === 'Deliverycode' ) {
|
574 |
-
// only switch to the 'preset' value if no user value is set
|
575 |
-
if ( ! outputsField[ 'value' ] ) {
|
576 |
-
outputsField[ 'value' ] = setBolPresets( outputsField[ 'field_label' ] );
|
577 |
-
}
|
578 |
-
}
|
579 |
-
break;
|
580 |
-
|
581 |
-
case '18': // Adtraction
|
582 |
-
if ( outputsField[ 'field_label' ] === 'instock' ) {
|
583 |
-
// only switch to the 'preset' value if no user value is set
|
584 |
-
if ( ! outputsField[ 'value' ] ) {
|
585 |
-
outputsField[ 'value' ] = setAdtractionPresets( outputsField[ 'field_label' ] );
|
586 |
-
}
|
587 |
-
}
|
588 |
-
break;
|
589 |
-
|
590 |
-
case '19': // Ricardo
|
591 |
-
if ( outputsField[ 'field_label' ] === 'Descriptions[0].LanguageNr' || outputsField[ 'field_label' ] === 'Increment' || outputsField[ 'field_label' ] === 'AvailabilityId' || outputsField[ 'field_label' ] === 'Condition' ) {
|
592 |
-
|
593 |
-
// only switch to the 'preset' value if no user value is set
|
594 |
-
if ( ! outputsField[ 'value' ] ) {
|
595 |
-
outputsField[ 'value' ] = setRicardoPresets( outputsField[ 'field_label' ] );
|
596 |
-
}
|
597 |
-
}
|
598 |
-
break;
|
599 |
-
|
600 |
-
case '20': // eBay
|
601 |
-
break;
|
602 |
-
|
603 |
-
case '21': // Shopzilla
|
604 |
-
if ( outputsField[ 'field_label' ] === 'Availability' || outputsField[ 'field_label' ] === 'Condition' ) {
|
605 |
-
// only switch to the 'preset' value if no user value is set
|
606 |
-
if ( ! outputsField[ 'value' ] ) {
|
607 |
-
outputsField[ 'value' ] = setShopzillaPresets( outputsField[ 'field_label' ] );
|
608 |
-
}
|
609 |
-
}
|
610 |
-
break;
|
611 |
-
|
612 |
-
case '22': // Converto
|
613 |
-
if ( outputsField[ 'field_label' ] === 'Availability' || outputsField[ 'field_label' ] === 'Condition' ) {
|
614 |
-
// only switch to the 'preset' value if no user value is set
|
615 |
-
if ( ! outputsField[ 'value' ] ) {
|
616 |
-
outputsField[ 'value' ] = setShopzillaPresets( outputsField[ 'field_label' ] );
|
617 |
-
}
|
618 |
-
}
|
619 |
-
break;
|
620 |
-
|
621 |
-
case '24': // Heureka
|
622 |
-
if ( 'ITEM_TYPE' === outputsField[ 'field_label' ] ) {
|
623 |
-
if ( ! outputsField[ 'value' ] ) {
|
624 |
-
outputsField[ 'value' ] = setHeurekaPresets( outputsField[ 'field_label' ] );
|
625 |
-
}
|
626 |
-
}
|
627 |
-
break;
|
628 |
-
|
629 |
-
case '25': // Pepperjam
|
630 |
-
if ( 'ITEM_TYPE' === outputsField[ 'discontinued' ] ) {
|
631 |
-
if ( ! outputsField[ 'value' ] ) {
|
632 |
-
outputsField[ 'value' ] = setPepperjamPresets( outputsField[ 'field_label' ] );
|
633 |
-
}
|
634 |
-
}
|
635 |
-
break;
|
636 |
-
|
637 |
-
case '26': // Galaxus Product Data
|
638 |
-
if ( 'ITEM_TYPE' === outputsField[ 'discontinued' ] ) {
|
639 |
-
if ( ! outputsField[ 'value' ] ) {
|
640 |
-
outputsField[ 'value' ] = setGalaxusProductDataPresets( outputsField[ 'field_label' ] );
|
641 |
-
}
|
642 |
-
}
|
643 |
-
break;
|
644 |
-
|
645 |
-
case '27': // Galaxus Product Stock Pricing
|
646 |
-
if ( 'ITEM_TYPE' === outputsField[ 'discontinued' ] ) {
|
647 |
-
if ( ! outputsField[ 'value' ] ) {
|
648 |
-
outputsField[ 'value' ] = setGalaxusProductStockPricingPresets( outputsField[ 'field_label' ] );
|
649 |
-
}
|
650 |
-
}
|
651 |
-
break;
|
652 |
-
|
653 |
-
case '28': // Galaxus Product Properties
|
654 |
-
if ( 'ITEM_TYPE' === outputsField[ 'discontinued' ] ) {
|
655 |
-
if ( ! outputsField[ 'value' ] ) {
|
656 |
-
outputsField[ 'value' ] = setGalaxusProductPropertiesPresets( outputsField[ 'field_label' ] );
|
657 |
-
}
|
658 |
-
}
|
659 |
-
break;
|
660 |
-
|
661 |
-
default:
|
662 |
-
break;
|
663 |
-
}
|
664 |
-
}
|
665 |
-
|
666 |
-
function tvc_requiresLanguageInput( channel ) {
|
667 |
-
switch ( channel ) {
|
668 |
-
case '26':
|
669 |
-
return true; // Galaxus Product Data
|
670 |
-
|
671 |
-
default:
|
672 |
-
return false;
|
673 |
-
}
|
674 |
-
}
|
675 |
-
|
676 |
-
/**
|
677 |
-
* returns if a channel is a custom feed channel
|
678 |
-
*
|
679 |
-
* @param {string} channel
|
680 |
-
* @returns {boolean}
|
681 |
-
*/
|
682 |
-
function tvc_isCustomChannel( channel ) {
|
683 |
-
switch ( channel ) {
|
684 |
-
case '996': // Custom TSV Feed
|
685 |
-
case '997': // Custom TXT Feed
|
686 |
-
case '998': // Custom CSV Feed
|
687 |
-
case '999': // Custom XML Feed
|
688 |
-
return true;
|
689 |
-
|
690 |
-
default:
|
691 |
-
return false;
|
692 |
-
}
|
693 |
-
}
|
694 |
-
|
695 |
-
// ALERT! has a php equivalent in class-feed-master.php called set_attribute_status();
|
696 |
-
function setAttributeStatus( fieldLevel, fieldValue ) {
|
697 |
-
if ( fieldLevel > 0 && fieldLevel < 3 ) {
|
698 |
-
return true;
|
699 |
-
}
|
700 |
-
|
701 |
-
if ( fieldValue ) {
|
702 |
-
return true;
|
703 |
-
}
|
704 |
-
|
705 |
-
return false;
|
706 |
-
}
|
707 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_channel-functions.min.js
DELETED
@@ -1,498 +0,0 @@
|
|
1 |
-
function tvc_showChannelInputs(b, a) {
|
2 |
-
var c = {
|
3 |
-
"1": "switchToGoogleFeedFormMainInputs",
|
4 |
-
"2": "switchToBingFeedFormMainInputs",
|
5 |
-
"3": "switchToBeslisFeedFormMainInputs",
|
6 |
-
"4": "switchToPricegrabberFeedFormMainInputs",
|
7 |
-
"5": "switchToShoppingFeedFormMainInputs",
|
8 |
-
"6": "switchToAmazonFeedFormMainInputs",
|
9 |
-
"7": "switchToConnexityFeedFormMainInputs",
|
10 |
-
"9": "switchToNextagFeedFormMainInputs",
|
11 |
-
"10": "switchToKieskeurigFeedFormMainInputs",
|
12 |
-
"11": "switchToVergelijkFeedFormMainInputs",
|
13 |
-
"12": "switchToKoopjespakkerFeedFormMainInputs",
|
14 |
-
"13": "switchToAvantLinkFeedFormMainInputs",
|
15 |
-
"14": "switchToZboziFeedFormMainInputs",
|
16 |
-
"15": "switchToComconFeedFormMainInputs",
|
17 |
-
"16": "switchToFacebookFeedFormMainInputs",
|
18 |
-
"17": "switchToBolFeedFormMainInputs",
|
19 |
-
"18": "switchToAdtractionFeedFormMainInputs",
|
20 |
-
"19": "switchToRicardoFeedFormMainInputs",
|
21 |
-
"20": "switchToEbayFeedFormMainInputs",
|
22 |
-
"21": "switchToShopzillaFeedFormMainInputs",
|
23 |
-
"22": "switchToConvertoFeedFormMainInputs",
|
24 |
-
"23": "switchToIdealoFeedFormMainInputs",
|
25 |
-
"24": "switchToHeurekaFeedFormMainInputs",
|
26 |
-
"25": "switchToPepperjamFeedFormMainInputs",
|
27 |
-
"26": "switchToGalaxusProductDataFeedFormMainInputs",
|
28 |
-
"27": "switchToGalaxusProductPropertiesFeedFormMainInputs",
|
29 |
-
"28": "switchToGalaxusProductStockPricingFeedFormMainInputs",
|
30 |
-
"996": "switchToTsvFeedFormMainInputs",
|
31 |
-
"997": "switchToTxtFeedFormMainInputs",
|
32 |
-
"998": "switchToCsvFeedFormMainInputs",
|
33 |
-
"999": "switchToFeedFormMainInputs"
|
34 |
-
};
|
35 |
-
if (c.hasOwnProperty(b)) {
|
36 |
-
window[c[b]](a, b)
|
37 |
-
}
|
38 |
-
jQuery("#update-schedule-row").show();
|
39 |
-
jQuery("#add-product-variations-row").show();
|
40 |
-
if ((null === jQuery("#lvl_0").val() && "" === jQuery("#selected-categories").html()) || 0 === jQuery("#tvc-countries-selector").val()) {
|
41 |
-
tvc_show_or_hide_category_map(b)
|
42 |
-
} else {
|
43 |
-
jQuery("#tvc-category-map").show()
|
44 |
-
}
|
45 |
-
}
|
46 |
-
|
47 |
-
function tvc_show_or_hide_category_map(b) {
|
48 |
-
var a = jQuery("#tvc-category-map");
|
49 |
-
switch (b) {
|
50 |
-
case"15":
|
51 |
-
case"17":
|
52 |
-
case"18":
|
53 |
-
case"22":
|
54 |
-
case"23":
|
55 |
-
case"25":
|
56 |
-
case"26":
|
57 |
-
case"27":
|
58 |
-
case"28":
|
59 |
-
a.show();
|
60 |
-
break;
|
61 |
-
default:
|
62 |
-
a.hide();
|
63 |
-
break
|
64 |
-
}
|
65 |
-
}
|
66 |
-
|
67 |
-
function tvc_category_separator(a) {
|
68 |
-
switch (a) {
|
69 |
-
case"14":
|
70 |
-
case"24":
|
71 |
-
return " | ";
|
72 |
-
default:
|
73 |
-
return " > "
|
74 |
-
}
|
75 |
-
}
|
76 |
-
|
77 |
-
function tvc_reactOnChannelInputChanged(d, b, g) {
|
78 |
-
var f = "";
|
79 |
-
var c = tvc_getUrlVariable("tab");
|
80 |
-
if ("product-feed" === c) {
|
81 |
-
var e = {
|
82 |
-
"1": "googleInputChanged",
|
83 |
-
"2": "bingInputChanged",
|
84 |
-
"3": "beslisInputChanged",
|
85 |
-
"4": "pricegrabberInputChanged",
|
86 |
-
"5": "shoppingInputChanged",
|
87 |
-
"6": "amazonInputChanged",
|
88 |
-
"7": "connexityInputChanged",
|
89 |
-
"9": "nextagInputChanged",
|
90 |
-
"10": "kieskeurigInputChanged",
|
91 |
-
"11": "vergelijkInputChanged",
|
92 |
-
"12": "koopjespakkerInputChanged",
|
93 |
-
"13": "avantlinkInputChanged",
|
94 |
-
"14": "zboziInputChanged",
|
95 |
-
"15": "comconInputChanged",
|
96 |
-
"16": "facebookInputChanged",
|
97 |
-
"17": "bolInputChanged",
|
98 |
-
"18": "adtractionInputChanged",
|
99 |
-
"19": "ricardoInputChanged",
|
100 |
-
"20": "ebayInputChanged",
|
101 |
-
"21": "shopzillaInputChanged",
|
102 |
-
"22": "convertoInputChanged",
|
103 |
-
"23": "idealoInputChanged",
|
104 |
-
"24": "heurekaInputChanged",
|
105 |
-
"25": "pepperjamInputChanged",
|
106 |
-
"26": "galaxusProductDataInputChanged",
|
107 |
-
"27": "galaxusProductStockPricingInputChanged",
|
108 |
-
"28": "galaxusProductPropertiesInputChanged",
|
109 |
-
"996": "TsvInputChanged",
|
110 |
-
"997": "TxtInputChanged",
|
111 |
-
"998": "CsvInputChanged",
|
112 |
-
"999": "InputChanged"
|
113 |
-
};
|
114 |
-
f = e[d]
|
115 |
-
} else {
|
116 |
-
var a = tvc_convertToCamelCase(c.split("-"));
|
117 |
-
f = a + "Changed"
|
118 |
-
}
|
119 |
-
if (f) {
|
120 |
-
window[f](b, g)
|
121 |
-
}
|
122 |
-
}
|
123 |
-
|
124 |
-
function tvc_getChannelFeedType(a) {
|
125 |
-
switch (a) {
|
126 |
-
case"2":
|
127 |
-
case"4":
|
128 |
-
case"6":
|
129 |
-
case"7":
|
130 |
-
case"9":
|
131 |
-
case"12":
|
132 |
-
case"21":
|
133 |
-
case"25":
|
134 |
-
case"997":
|
135 |
-
return "txt";
|
136 |
-
case"15":
|
137 |
-
case"17":
|
138 |
-
case"19":
|
139 |
-
case"22":
|
140 |
-
case"23":
|
141 |
-
case"26":
|
142 |
-
case"27":
|
143 |
-
case"28":
|
144 |
-
case"998":
|
145 |
-
return "csv";
|
146 |
-
case"996":
|
147 |
-
return "tsv";
|
148 |
-
default:
|
149 |
-
return "xml"
|
150 |
-
}
|
151 |
-
}
|
152 |
-
|
153 |
-
function tvc_channelCountryCode(a) {
|
154 |
-
var b = "en-US";
|
155 |
-
switch (a) {
|
156 |
-
case"3":
|
157 |
-
case"10":
|
158 |
-
case"11":
|
159 |
-
case"12":
|
160 |
-
case"17":
|
161 |
-
b = "nl-NL";
|
162 |
-
break;
|
163 |
-
case"14":
|
164 |
-
case"24":
|
165 |
-
b = "cs-CZ";
|
166 |
-
break;
|
167 |
-
case"19":
|
168 |
-
b = "de-CH";
|
169 |
-
break;
|
170 |
-
case"23":
|
171 |
-
b = "de-DE";
|
172 |
-
break
|
173 |
-
}
|
174 |
-
return b
|
175 |
-
}
|
176 |
-
|
177 |
-
function tvc_channelUsesOwnCategories(a) {
|
178 |
-
switch (a) {
|
179 |
-
case"10":
|
180 |
-
case"15":
|
181 |
-
case"17":
|
182 |
-
case"18":
|
183 |
-
case"22":
|
184 |
-
case"23":
|
185 |
-
case"25":
|
186 |
-
case"26":
|
187 |
-
case"27":
|
188 |
-
case"28":
|
189 |
-
return true;
|
190 |
-
default:
|
191 |
-
return false
|
192 |
-
}
|
193 |
-
}
|
194 |
-
|
195 |
-
function tvc_fillCategoryVariables(b, d, a) {
|
196 |
-
var c = {
|
197 |
-
"1": "fillGoogleCategoryVariables",
|
198 |
-
"4": "fillPricegrabberCategoryVariables",
|
199 |
-
"5": "fillShoppingCategoryVariables",
|
200 |
-
"6": "fillAmazonCategoryVariables",
|
201 |
-
"7": "fillConnexityCategoryVariables",
|
202 |
-
"9": "fillNextagCategoryVariables",
|
203 |
-
"13": "fillAvantLinkCategoryVariables",
|
204 |
-
"14": "fillZboziCategoryVariables"
|
205 |
-
};
|
206 |
-
if (c.hasOwnProperty(b)) {
|
207 |
-
window[c[b]](d, a)
|
208 |
-
}
|
209 |
-
}
|
210 |
-
|
211 |
-
function tvc_displayCorrectStaticField(f, e, g, d, h, c) {
|
212 |
-
var b = "";
|
213 |
-
var a = tvc_restrictedStaticFields(d, h);
|
214 |
-
if (a !== undefined) {
|
215 |
-
if (a.length === 0) {
|
216 |
-
b = tvc_staticInputField(f, e, g, c)
|
217 |
-
} else {
|
218 |
-
b = tvc_staticInputSelect(f, e, g, a, c)
|
219 |
-
}
|
220 |
-
}
|
221 |
-
return b
|
222 |
-
}
|
223 |
-
|
224 |
-
function tvc_getAdvisedInputs(a) {
|
225 |
-
var b = {
|
226 |
-
"1": "woocommerceToGoogleFields",
|
227 |
-
"2": "woocommerceToBingFields",
|
228 |
-
"3": "woocommerceToBeslisFields",
|
229 |
-
"4": "woocommerceToPricegrabberFields",
|
230 |
-
"5": "woocommerceToShoppingFields",
|
231 |
-
"6": "woocommerceToAmazonFields",
|
232 |
-
"7": "woocommerceToConnexityFields",
|
233 |
-
"9": "woocommerceToNextagFields",
|
234 |
-
"10": "woocommerceToKieskeurigFields",
|
235 |
-
"11": "woocommerceToVergelijkFields",
|
236 |
-
"12": "woocommerceToKoopjespakkerFields",
|
237 |
-
"13": "woocommerceToAvantLinkFields",
|
238 |
-
"14": "woocommerceToZboziFields",
|
239 |
-
"15": "woocommerceToComconFields",
|
240 |
-
"16": "woocommerceToFacebookFields",
|
241 |
-
"17": "woocommerceToBolFields",
|
242 |
-
"18": "woocommerceToAdtractionFields",
|
243 |
-
"19": "woocommerceToRicardoFields",
|
244 |
-
"20": "woocommerceToeBayFields",
|
245 |
-
"21": "woocommerceToShopzillaFields",
|
246 |
-
"22": "woocommerceToConvertoFields",
|
247 |
-
"23": "woocommerceToIdealoFields",
|
248 |
-
"24": "woocommerceToHeurekaFields",
|
249 |
-
"25": "woocommerceToPepperjamFields",
|
250 |
-
"26": "woocommerceToGalaxusProductDataFields",
|
251 |
-
"27": "woocommerceToGalaxusProductStockPricingFields",
|
252 |
-
"28": "woocommerceToGalaxusProductPropertiesFields"
|
253 |
-
};
|
254 |
-
if (b.hasOwnProperty(a)) {
|
255 |
-
return window[b[a]]()
|
256 |
-
} else {
|
257 |
-
return []
|
258 |
-
}
|
259 |
-
}
|
260 |
-
|
261 |
-
function tvc_setOutputAttributeLevels(b, c, a) {
|
262 |
-
switch (b) {
|
263 |
-
case"1":
|
264 |
-
return setGoogleOutputAttributeLevels(c, a);
|
265 |
-
case"2":
|
266 |
-
return setBingOutputAttributeLevels(c);
|
267 |
-
case"3":
|
268 |
-
return setBeslisOutputAttributeLevels(c);
|
269 |
-
case"4":
|
270 |
-
return setPricegrabberOutputAttributeLevels(c);
|
271 |
-
case"5":
|
272 |
-
return setShoppingOutputAttributeLevels(c);
|
273 |
-
case"6":
|
274 |
-
return setAmazonOutputAttributeLevels(c);
|
275 |
-
case"7":
|
276 |
-
return setConnexityOutputAttributeLevels(c);
|
277 |
-
case"9":
|
278 |
-
return setNextagOutputAttributeLevels(c);
|
279 |
-
case"10":
|
280 |
-
return setKieskeurigOutputAttributeLevels(c);
|
281 |
-
case"11":
|
282 |
-
return setVergelijkOutputAttributeLevels(c);
|
283 |
-
case"13":
|
284 |
-
return setAvantLinkOutputAttributeLevels(c, a);
|
285 |
-
case"14":
|
286 |
-
return setZboziOutputAttributeLevels(c, a);
|
287 |
-
case"26":
|
288 |
-
return setGalaxusProductDataAttributeLevels(c, a);
|
289 |
-
case"27":
|
290 |
-
return setGalaxusProductStockPricingAttributeLevels(c);
|
291 |
-
case"28":
|
292 |
-
return setGalaxusProductPropertiesAttributeLevels(c);
|
293 |
-
case"996":
|
294 |
-
return setTsvOutputAttributeLevels(c);
|
295 |
-
case"997":
|
296 |
-
return setTxtOutputAttributeLevels(c);
|
297 |
-
case"998":
|
298 |
-
return setCsvOutputAttributeLevels(c);
|
299 |
-
case"999":
|
300 |
-
return setOutputAttributeLevels(c);
|
301 |
-
default:
|
302 |
-
return c
|
303 |
-
}
|
304 |
-
}
|
305 |
-
|
306 |
-
function tvc_restrictedStaticFields(a, c) {
|
307 |
-
var b = {
|
308 |
-
"1": "googleStaticFieldOptions",
|
309 |
-
"2": "bingStaticFieldOptions",
|
310 |
-
"3": "beslisStaticFieldOptions",
|
311 |
-
"4": "pricegrabberStaticFieldOptions",
|
312 |
-
"5": "shoppingStaticFieldOptions",
|
313 |
-
"6": "amazonStaticFieldOptions",
|
314 |
-
"7": "connexityStaticFieldOptions",
|
315 |
-
"9": "nextagStaticFieldOptions",
|
316 |
-
"10": "kieskeurigStaticFieldOptions",
|
317 |
-
"11": "vergelijkStaticFieldOptions",
|
318 |
-
"12": "koopjespakkerStaticFieldOptions",
|
319 |
-
"13": "avantlinkStaticFieldOptions",
|
320 |
-
"14": "zboziStaticFieldOptions",
|
321 |
-
"15": "comconStaticFieldOptions",
|
322 |
-
"16": "facebookStaticFieldOptions",
|
323 |
-
"17": "bolStaticFieldOptions",
|
324 |
-
"18": "adtractionStaticFieldOptions",
|
325 |
-
"19": "ricardoStaticFieldOptions",
|
326 |
-
"20": "ebayStaticFieldOptions",
|
327 |
-
"21": "shopzillaStaticFieldOptions",
|
328 |
-
"23": "idealoStaticFieldOptions",
|
329 |
-
"25": "pepperjamStaticFieldOptions",
|
330 |
-
"26": "galaxusProductDataStaticFieldOptions",
|
331 |
-
"27": "galaxusProductStockPricingStaticFieldOptions",
|
332 |
-
"28": "galaxusProductPropertiesStaticFieldOptions"
|
333 |
-
};
|
334 |
-
if (b.hasOwnProperty(a)) {
|
335 |
-
return window[b[a]](c)
|
336 |
-
} else {
|
337 |
-
return []
|
338 |
-
}
|
339 |
-
}
|
340 |
-
|
341 |
-
function tvc_setChannelRelatedPresets(a, b) {
|
342 |
-
switch (b) {
|
343 |
-
case"1":
|
344 |
-
if (a.field_label === "condition" || a.field_label === "availability" || a.field_label === "identifier_exists" || a.field_label === "adult" || a.field_label === "price") {
|
345 |
-
if (!a.value) {
|
346 |
-
a.value = setGooglePresets(a.field_label)
|
347 |
-
}
|
348 |
-
}
|
349 |
-
break;
|
350 |
-
case"2":
|
351 |
-
if (a.field_label === "seller_name") {
|
352 |
-
if (!a.value) {
|
353 |
-
a.value = setBingPresets(a.field_label)
|
354 |
-
}
|
355 |
-
}
|
356 |
-
break;
|
357 |
-
case"3":
|
358 |
-
if (a.field_label === "Conditie" || a.field_label === "Levertijd") {
|
359 |
-
if (!a.value) {
|
360 |
-
a.value = setBeslisPresets(a.field_label)
|
361 |
-
}
|
362 |
-
}
|
363 |
-
break;
|
364 |
-
case"13":
|
365 |
-
if (a.field_label === "condition" || a.field_label === "availability" || a.field_label === "identifier_exists") {
|
366 |
-
if (!a.value) {
|
367 |
-
a.value = setAvantLinkPresets(a.field_label)
|
368 |
-
}
|
369 |
-
}
|
370 |
-
break;
|
371 |
-
case"14":
|
372 |
-
if (a.field_label === "EROTIC" || a.field_label === "VISIBILITY") {
|
373 |
-
if (!a.value) {
|
374 |
-
a.value = setZboziPresets(a.field_label)
|
375 |
-
}
|
376 |
-
}
|
377 |
-
break;
|
378 |
-
case"15":
|
379 |
-
if (a.field_label === "Delivery time") {
|
380 |
-
if (!a.value) {
|
381 |
-
a.value = setComconPresets(a.field_label)
|
382 |
-
}
|
383 |
-
}
|
384 |
-
break;
|
385 |
-
case"16":
|
386 |
-
if (a.field_label === "condition" || a.field_label === "availability" || a.field_label === "price") {
|
387 |
-
if (!a.value) {
|
388 |
-
a.value = setFacebookPresets(a.field_label)
|
389 |
-
}
|
390 |
-
}
|
391 |
-
break;
|
392 |
-
case"17":
|
393 |
-
if (a.field_label === "Condition" || a.field_label === "Deliverycode") {
|
394 |
-
if (!a.value) {
|
395 |
-
a.value = setBolPresets(a.field_label)
|
396 |
-
}
|
397 |
-
}
|
398 |
-
break;
|
399 |
-
case"18":
|
400 |
-
if (a.field_label === "instock") {
|
401 |
-
if (!a.value) {
|
402 |
-
a.value = setAdtractionPresets(a.field_label)
|
403 |
-
}
|
404 |
-
}
|
405 |
-
break;
|
406 |
-
case"19":
|
407 |
-
if (a.field_label === "Descriptions[0].LanguageNr" || a.field_label === "Increment" || a.field_label === "AvailabilityId" || a.field_label === "Condition") {
|
408 |
-
if (!a.value) {
|
409 |
-
a.value = setRicardoPresets(a.field_label)
|
410 |
-
}
|
411 |
-
}
|
412 |
-
break;
|
413 |
-
case"20":
|
414 |
-
break;
|
415 |
-
case"21":
|
416 |
-
if (a.field_label === "Availability" || a.field_label === "Condition") {
|
417 |
-
if (!a.value) {
|
418 |
-
a.value = setShopzillaPresets(a.field_label)
|
419 |
-
}
|
420 |
-
}
|
421 |
-
break;
|
422 |
-
case"22":
|
423 |
-
if (a.field_label === "Availability" || a.field_label === "Condition") {
|
424 |
-
if (!a.value) {
|
425 |
-
a.value = setShopzillaPresets(a.field_label)
|
426 |
-
}
|
427 |
-
}
|
428 |
-
break;
|
429 |
-
case"24":
|
430 |
-
if ("ITEM_TYPE" === a.field_label) {
|
431 |
-
if (!a.value) {
|
432 |
-
a.value = setHeurekaPresets(a.field_label)
|
433 |
-
}
|
434 |
-
}
|
435 |
-
break;
|
436 |
-
case"25":
|
437 |
-
if ("ITEM_TYPE" === a.discontinued) {
|
438 |
-
if (!a.value) {
|
439 |
-
a.value = setPepperjamPresets(a.field_label)
|
440 |
-
}
|
441 |
-
}
|
442 |
-
break;
|
443 |
-
case"26":
|
444 |
-
if ("ITEM_TYPE" === a.discontinued) {
|
445 |
-
if (!a.value) {
|
446 |
-
a.value = setGalaxusProductDataPresets(a.field_label)
|
447 |
-
}
|
448 |
-
}
|
449 |
-
break;
|
450 |
-
case"27":
|
451 |
-
if ("ITEM_TYPE" === a.discontinued) {
|
452 |
-
if (!a.value) {
|
453 |
-
a.value = setGalaxusProductStockPricingPresets(a.field_label)
|
454 |
-
}
|
455 |
-
}
|
456 |
-
break;
|
457 |
-
case"28":
|
458 |
-
if ("ITEM_TYPE" === a.discontinued) {
|
459 |
-
if (!a.value) {
|
460 |
-
a.value = setGalaxusProductPropertiesPresets(a.field_label)
|
461 |
-
}
|
462 |
-
}
|
463 |
-
break;
|
464 |
-
default:
|
465 |
-
break
|
466 |
-
}
|
467 |
-
}
|
468 |
-
|
469 |
-
function tvc_requiresLanguageInput(a) {
|
470 |
-
switch (a) {
|
471 |
-
case"26":
|
472 |
-
return true;
|
473 |
-
default:
|
474 |
-
return false
|
475 |
-
}
|
476 |
-
}
|
477 |
-
|
478 |
-
function tvc_isCustomChannel(a) {
|
479 |
-
switch (a) {
|
480 |
-
case"996":
|
481 |
-
case"997":
|
482 |
-
case"998":
|
483 |
-
case"999":
|
484 |
-
return true;
|
485 |
-
default:
|
486 |
-
return false
|
487 |
-
}
|
488 |
-
}
|
489 |
-
|
490 |
-
function setAttributeStatus(b, a) {
|
491 |
-
if (b > 0 && b < 3) {
|
492 |
-
return true
|
493 |
-
}
|
494 |
-
if (a) {
|
495 |
-
return true
|
496 |
-
}
|
497 |
-
return false
|
498 |
-
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_feedhandling.js
DELETED
@@ -1,144 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
var _feedHolder;
|
3 |
-
|
4 |
-
function tvc_getFeedAttributes( feedId, channel, callback ) {
|
5 |
-
tvc_getOutputFields(
|
6 |
-
feedId,
|
7 |
-
channel,
|
8 |
-
function( fields ) {
|
9 |
-
if ( fields !== '0' ) {
|
10 |
-
callback( JSON.parse( fields ) );
|
11 |
-
} else {
|
12 |
-
callback( [] ); // free feed format selected
|
13 |
-
}
|
14 |
-
}
|
15 |
-
);
|
16 |
-
}
|
17 |
-
|
18 |
-
function tvc_customSourceFields( sourceId, callback ) {
|
19 |
-
tvc_getSourceFields(
|
20 |
-
sourceId,
|
21 |
-
function( fields ) {
|
22 |
-
callback( fields && fields !== '0' ? JSON.parse( fields ) : '0' );
|
23 |
-
}
|
24 |
-
);
|
25 |
-
}
|
26 |
-
|
27 |
-
function tvc_mainFeedFilters( feedId, callback ) {
|
28 |
-
|
29 |
-
tvc_getMainFeedFilters(
|
30 |
-
feedId,
|
31 |
-
function( filters ) {
|
32 |
-
callback( filters !== '0' ? JSON.parse( filters ) : null );
|
33 |
-
}
|
34 |
-
);
|
35 |
-
}
|
36 |
-
|
37 |
-
/**
|
38 |
-
* Fills the attributes of the current _feed object with data from the outputs var
|
39 |
-
*
|
40 |
-
* @param {array} outputs containing output strings outputs
|
41 |
-
* @param {string} channel id
|
42 |
-
* @param {int} source id
|
43 |
-
*/
|
44 |
-
function tvc_addFeedAttributes( outputs, channel, source ) {
|
45 |
-
|
46 |
-
var inputs = tvc_getAdvisedInputs( channel );
|
47 |
-
var i = 0;
|
48 |
-
|
49 |
-
_feedHolder.clearAllAttributes();
|
50 |
-
|
51 |
-
for ( var field in outputs ) {
|
52 |
-
|
53 |
-
var outputTitle = outputs[ field ][ 'field_label' ];
|
54 |
-
var activity = true;
|
55 |
-
|
56 |
-
/**
|
57 |
-
* deactivate if this attribute is not required and has no value
|
58 |
-
*/
|
59 |
-
if ( parseInt( outputs[ field ][ 'category_id' ] ) > 2 && outputs[ field ][ 'value' ] === '' ) {
|
60 |
-
activity = false;
|
61 |
-
} else if ( outputs[ field ][ 'category_id' ] === '0' ) {
|
62 |
-
activity = false;
|
63 |
-
} else if ( parseInt( outputs[ field ][ 'category_id' ] ) > 2 && outputs[ field ][ 'value' ] === undefined ) {
|
64 |
-
activity = false;
|
65 |
-
}
|
66 |
-
|
67 |
-
tvc_setChannelRelatedPresets( outputs[ field ], channel );
|
68 |
-
|
69 |
-
_feedHolder.addAttribute( i, outputTitle, inputs[ outputTitle ], outputs[ field ][ 'value' ], outputs[ field ][ 'category_id' ], activity, 0, 0, 0 );
|
70 |
-
|
71 |
-
i ++;
|
72 |
-
}
|
73 |
-
}
|
74 |
-
|
75 |
-
function tvc_saveFeedToDb( feed, callback ) {
|
76 |
-
|
77 |
-
/**
|
78 |
-
* store the feed in a local variable
|
79 |
-
*/
|
80 |
-
_feedHolder = feed;
|
81 |
-
|
82 |
-
var feedDataSelectorTable = jQuery( '#tvc-ajax-feed-data-to-database-conversion-array' ).text(); // get the data from the edit feed form code
|
83 |
-
var feedDataToStore = tvc_getFeedDataToStore( feedDataSelectorTable );
|
84 |
-
var metaToStore = tvc_filterActiveMetaData( _feedHolder[ 'attributes' ], _feedHolder[ 'categoryMapping' ] );
|
85 |
-
var feedFilter = _feedHolder[ 'feedFilter' ];
|
86 |
-
|
87 |
-
tvc_updateFeedToDb(
|
88 |
-
feedDataToStore,
|
89 |
-
metaToStore,
|
90 |
-
feedFilter,
|
91 |
-
function( response ) {
|
92 |
-
callback( response.trim() );
|
93 |
-
}
|
94 |
-
);
|
95 |
-
}
|
96 |
-
|
97 |
-
/**
|
98 |
-
* Gets the full metaData array from the _feedHolder and returns a tvc_attributeMeta object with keys and values from only the active ones.
|
99 |
-
* Also stores the category mapping array in a tvc_attributeMeta object.
|
100 |
-
*
|
101 |
-
* @param {Array} metaData
|
102 |
-
* @param {Array} categoryMapping
|
103 |
-
* @returns {Array} array with tvc_attributeMeta objects containing meta keys and meta values
|
104 |
-
*/
|
105 |
-
function tvc_filterActiveMetaData( metaData, categoryMapping ) {
|
106 |
-
|
107 |
-
// make a storage place to store the changed attributes
|
108 |
-
var activeMeta = [];
|
109 |
-
|
110 |
-
for ( var i = 0; i < metaData.length; i ++ ) {
|
111 |
-
|
112 |
-
// if the advised source is not equal to the advised inputs, the user has selected his own input so this needs to be stored
|
113 |
-
if ( metaData[ i ][ 'value' ] !== undefined && metaData[ i ][ 'value' ] !== '' && metaData[ i ][ 'isActive' ] === true ) {
|
114 |
-
|
115 |
-
// store the meta data in a Tvc_AttributeMeta object
|
116 |
-
activeMeta.push( new Tvc_AttributeMeta( metaData[ i ][ 'fieldName' ], metaData[ i ][ 'value' ] ) );
|
117 |
-
}
|
118 |
-
}
|
119 |
-
|
120 |
-
// also store the category mapping as meta data
|
121 |
-
if ( categoryMapping.length > 0 ) {
|
122 |
-
|
123 |
-
activeMeta.push( new Tvc_AttributeMeta( 'category_mapping', categoryMapping ) );
|
124 |
-
}
|
125 |
-
|
126 |
-
return activeMeta;
|
127 |
-
}
|
128 |
-
|
129 |
-
function tvc_getFeedDataToStore( feedDataSelector ) {
|
130 |
-
var selector = JSON.parse( feedDataSelector );
|
131 |
-
var result = [];
|
132 |
-
|
133 |
-
for (var i = 0; i < selector.length; i++) {
|
134 |
-
var dataItem = {
|
135 |
-
'name' : selector[i]['db'],
|
136 |
-
'value' : undefined !== _feedHolder[ selector[i]['feed'] ] ? _feedHolder[ selector[i]['feed'] ] : '',
|
137 |
-
'type' : selector[i]['type']
|
138 |
-
};
|
139 |
-
|
140 |
-
result.push( dataItem );
|
141 |
-
}
|
142 |
-
|
143 |
-
return result;
|
144 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_feedhandling.min.js
DELETED
@@ -1,85 +0,0 @@
|
|
1 |
-
var _feedHolder;
|
2 |
-
|
3 |
-
function tvc_getFeedAttributes(a, b, c) {
|
4 |
-
tvc_getOutputFields(a, b, function (d) {
|
5 |
-
if (d !== "0") {
|
6 |
-
c(JSON.parse(d))
|
7 |
-
} else {
|
8 |
-
c([])
|
9 |
-
}
|
10 |
-
})
|
11 |
-
}
|
12 |
-
|
13 |
-
function tvc_customSourceFields(a, b) {
|
14 |
-
tvc_getSourceFields(a, function (c) {
|
15 |
-
b(c && c !== "0" ? JSON.parse(c) : "0")
|
16 |
-
})
|
17 |
-
}
|
18 |
-
|
19 |
-
function tvc_mainFeedFilters(a, b) {
|
20 |
-
tvc_getMainFeedFilters(a, function (c) {
|
21 |
-
b(c !== "0" ? JSON.parse(c) : null)
|
22 |
-
})
|
23 |
-
}
|
24 |
-
|
25 |
-
function tvc_addFeedAttributes(h, d, e) {
|
26 |
-
var a = tvc_getAdvisedInputs(d);
|
27 |
-
var c = 0;
|
28 |
-
_feedHolder.clearAllAttributes();
|
29 |
-
for (var g in h) {
|
30 |
-
var b = h[g]["field_label"];
|
31 |
-
var f = true;
|
32 |
-
if (parseInt(h[g]["category_id"]) > 2 && h[g]["value"] === "") {
|
33 |
-
f = false
|
34 |
-
} else {
|
35 |
-
if (h[g]["category_id"] === "0") {
|
36 |
-
f = false
|
37 |
-
} else {
|
38 |
-
if (parseInt(h[g]["category_id"]) > 2 && h[g]["value"] === undefined) {
|
39 |
-
f = false
|
40 |
-
}
|
41 |
-
}
|
42 |
-
}
|
43 |
-
tvc_setChannelRelatedPresets(h[g], d);
|
44 |
-
_feedHolder.addAttribute(c, b, a[b], h[g]["value"], h[g]["category_id"], f, 0, 0, 0);
|
45 |
-
c++
|
46 |
-
}
|
47 |
-
}
|
48 |
-
|
49 |
-
function tvc_saveFeedToDb(d, f) {
|
50 |
-
_feedHolder = d;
|
51 |
-
var c = jQuery("#tvc-ajax-feed-data-to-database-conversion-array").text();
|
52 |
-
var a = tvc_getFeedDataToStore(c);
|
53 |
-
var b = tvc_filterActiveMetaData(_feedHolder.attributes, _feedHolder.categoryMapping);
|
54 |
-
var e = _feedHolder.feedFilter;
|
55 |
-
tvc_updateFeedToDb(a, b, e, function (g) {
|
56 |
-
f(g.trim())
|
57 |
-
})
|
58 |
-
}
|
59 |
-
|
60 |
-
function tvc_filterActiveMetaData(b, d) {
|
61 |
-
var a = [];
|
62 |
-
for (var c = 0; c < b.length; c++) {
|
63 |
-
if (b[c]["value"] !== undefined && b[c]["value"] !== "" && b[c]["isActive"] === true) {
|
64 |
-
a.push(new Tvc_AttributeMeta(b[c]["fieldName"], b[c]["value"]))
|
65 |
-
}
|
66 |
-
}
|
67 |
-
if (d.length > 0) {
|
68 |
-
a.push(new Tvc_AttributeMeta("category_mapping", d))
|
69 |
-
}
|
70 |
-
return a
|
71 |
-
}
|
72 |
-
|
73 |
-
function tvc_getFeedDataToStore(e) {
|
74 |
-
var b = JSON.parse(e);
|
75 |
-
var a = [];
|
76 |
-
for (var d = 0; d < b.length; d++) {
|
77 |
-
var c = {
|
78 |
-
name: b[d]["db"],
|
79 |
-
value: undefined !== _feedHolder[b[d]["feed"]] ? _feedHolder[b[d]["feed"]] : "",
|
80 |
-
type: b[d]["type"]
|
81 |
-
};
|
82 |
-
a.push(c)
|
83 |
-
}
|
84 |
-
return a
|
85 |
-
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_general-functions.js
DELETED
@@ -1,102 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
/**
|
3 |
-
* Finds the index of an object with a specific value in an array of objects
|
4 |
-
*
|
5 |
-
* @param {array} theArray with objects
|
6 |
-
* @param {string} searchTerm
|
7 |
-
* @param {string} arrayProperty
|
8 |
-
* @returns {int} the index of the object or false of its not in the array
|
9 |
-
*/
|
10 |
-
function tvc_arrayObjectIndexOf( theArray, searchTerm, arrayProperty ) {
|
11 |
-
for ( var i = 0, len = theArray.length; i < len; i ++ ) {
|
12 |
-
if ( theArray[ i ][ arrayProperty ] === searchTerm ) {
|
13 |
-
return i; // return the index
|
14 |
-
}
|
15 |
-
}
|
16 |
-
|
17 |
-
return - 1; // return false if object could not be found
|
18 |
-
}
|
19 |
-
|
20 |
-
/**
|
21 |
-
* Get a specific variable from the current url
|
22 |
-
*
|
23 |
-
* @param {string} key
|
24 |
-
* @returns {String}
|
25 |
-
*/
|
26 |
-
function tvc_getUrlVariable( key ) {
|
27 |
-
var result = '';
|
28 |
-
var url = window.location.search.substring( 1 );
|
29 |
-
var params = url.split( '&' );
|
30 |
-
|
31 |
-
for ( var i = 0; i < params.length; i ++ ) {
|
32 |
-
var param = params[ i ].split( '=' );
|
33 |
-
|
34 |
-
if ( param[ 0 ] === key ) {
|
35 |
-
result = param[ 1 ];
|
36 |
-
}
|
37 |
-
}
|
38 |
-
|
39 |
-
return result;
|
40 |
-
}
|
41 |
-
|
42 |
-
/**
|
43 |
-
* Counts the number of items in an object
|
44 |
-
*
|
45 |
-
* @param {object} object
|
46 |
-
* @returns {int} number of items in object
|
47 |
-
*/
|
48 |
-
function tvc_countObjectItems( object ) {
|
49 |
-
var count = 0;
|
50 |
-
|
51 |
-
for ( var k in object ) {
|
52 |
-
if ( object.hasOwnProperty( k ) ) {
|
53 |
-
count ++;
|
54 |
-
}
|
55 |
-
}
|
56 |
-
|
57 |
-
return count;
|
58 |
-
}
|
59 |
-
|
60 |
-
/**
|
61 |
-
* Returns true if the object is empty
|
62 |
-
*
|
63 |
-
* @param {object} object
|
64 |
-
* @returns {Boolean} true if object is empty
|
65 |
-
*/
|
66 |
-
// TODO: Er bestaat ook een jQuery.isEmptyObject() functie. In hoeverre is die bruikbaar ter vervanging van onderstaande functie?
|
67 |
-
function tvc_isEmptyQueryObject( object ) {
|
68 |
-
// null and undefined are "empty"
|
69 |
-
if ( object === null ) {
|
70 |
-
return true;
|
71 |
-
}
|
72 |
-
|
73 |
-
// Assume if it has a length property with a non-zero value
|
74 |
-
// that that property is correct.
|
75 |
-
if ( object.length > 0 ) {
|
76 |
-
return false;
|
77 |
-
}
|
78 |
-
if ( object.length === 0 ) {
|
79 |
-
return true;
|
80 |
-
}
|
81 |
-
|
82 |
-
// Otherwise, does it have any properties of its own?
|
83 |
-
// Note that this doesn't handle
|
84 |
-
// toString and valueOf enumeration bugs in IE < 9
|
85 |
-
for ( var key in object ) {
|
86 |
-
//if ( hasOwnProperty.call( object, key ) )
|
87 |
-
if ( object.hasOwnProperty( key ) ) {
|
88 |
-
return false;
|
89 |
-
}
|
90 |
-
}
|
91 |
-
return true;
|
92 |
-
}
|
93 |
-
|
94 |
-
/**
|
95 |
-
* Takes a string with a number at the end and increments the number
|
96 |
-
*
|
97 |
-
* @param {String} stringWithNumber
|
98 |
-
* @returns {String} with incremented number
|
99 |
-
*/
|
100 |
-
function tvc_incrementLast( stringWithNumber ) {
|
101 |
-
return stringWithNumber.replace( /[0-9]+(?!.*[0-9])/, parseInt( stringWithNumber.match( /[0-9]+(?!.*[0-9])/ ), 10 ) + 1 );
|
102 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_general-functions.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
function tvc_arrayObjectIndexOf(d,c,b){for(var e=0,a=d.length;e<a;e++){if(d[e][b]===c){return e}}return -1}function tvc_getUrlVariable(d){var a="";var b=window.location.search.substring(1);var f=b.split("&");for(var c=0;c<f.length;c++){var e=f[c].split("=");if(e[0]===d){a=e[1]}}return a}function tvc_countObjectItems(b){var c=0;for(var a in b){if(b.hasOwnProperty(a)){c++}}return c}function tvc_isEmptyQueryObject(a){if(a===null){return true}if(a.length>0){return false}if(a.length===0){return true}for(var b in a){if(a.hasOwnProperty(b)){return false}}return true}function tvc_incrementLast(a){return a.replace(/[0-9]+(?!.*[0-9])/,parseInt(a.match(/[0-9]+(?!.*[0-9])/),10)+1)};
|
|
includes/application/js/tvc_logic.js
DELETED
@@ -1,454 +0,0 @@
|
|
1 |
-
|
2 |
-
"use strict";
|
3 |
-
/*global tvc_feed_settings_form_vars, tvc_manage_channels_vars, tvc_feed_list_form_vars */
|
4 |
-
var _feedHolder;
|
5 |
-
|
6 |
-
function tvc_editCategories() {
|
7 |
-
var cat_lvl_selector = jQuery( '#category-selector-lvl' );
|
8 |
-
|
9 |
-
if ( ! tvc_isCustomChannel( _feedHolder[ 'channel' ] ) ) {
|
10 |
-
var currentCategories = _feedHolder[ 'mainCategory' ].split( ' > ' );
|
11 |
-
var cat_length = currentCategories.length;
|
12 |
-
var cat_selectors = jQuery( '#lvl_' + ( cat_length ) ).html() !== '' ? cat_length + 1 : cat_length;
|
13 |
-
|
14 |
-
jQuery( '#selected-categories' ).hide();
|
15 |
-
jQuery( '#lvl_0' ).prop( 'disabled', false );
|
16 |
-
|
17 |
-
for ( var i = 0; i < cat_selectors; i ++ ) {
|
18 |
-
var levelElement = jQuery( '#lvl_' + i );
|
19 |
-
|
20 |
-
if ( ! currentCategories[ i ] ) {
|
21 |
-
levelElement.val( '0' );
|
22 |
-
}
|
23 |
-
levelElement.show();
|
24 |
-
}
|
25 |
-
} else {
|
26 |
-
// as the user selected a free format, just show a text input control
|
27 |
-
cat_lvl_selector.html(
|
28 |
-
tvc_freeCategoryInputCntrl(
|
29 |
-
'default',
|
30 |
-
_feedHolder[ 'feedId' ],
|
31 |
-
_feedHolder[ 'mainCategory' ]
|
32 |
-
)
|
33 |
-
);
|
34 |
-
cat_lvl_selector.prop( 'disabled', false );
|
35 |
-
}
|
36 |
-
}
|
37 |
-
|
38 |
-
function tvc_generateFeed() {
|
39 |
-
if ( jQuery( '#file-name' ).val() !== '' ) {
|
40 |
-
if ( _feedHolder[ 'categoryMapping' ] && _feedHolder[ 'categoryMapping' ].length > 0 ) {
|
41 |
-
disableFeedActionButtons();
|
42 |
-
tvc_generateAndSaveFeed();
|
43 |
-
} else {
|
44 |
-
var userInput = confirm(
|
45 |
-
tvc_feed_settings_form_vars.no_category_selected
|
46 |
-
);
|
47 |
-
|
48 |
-
if ( userInput === true ) {
|
49 |
-
disableFeedActionButtons();
|
50 |
-
tvc_generateAndSaveFeed();
|
51 |
-
}
|
52 |
-
}
|
53 |
-
} else {
|
54 |
-
jQuery( '#alert-message' ).
|
55 |
-
html( '<p>' + tvc_feed_settings_form_vars.file_name_required + '</p>' );
|
56 |
-
jQuery( '#success-message' ).show();
|
57 |
-
}
|
58 |
-
}
|
59 |
-
|
60 |
-
function tvc_saveFeedData() {
|
61 |
-
if ( jQuery( '#file-name' ).val() !== '' ) {
|
62 |
-
tvc_saveFeed();
|
63 |
-
} else {
|
64 |
-
jQuery( '#alert-message' ).
|
65 |
-
html( '<p>' + tvc_feed_settings_form_vars.file_name_required + '</p>' );
|
66 |
-
jQuery( '#success-message' ).show();
|
67 |
-
}
|
68 |
-
}
|
69 |
-
|
70 |
-
function getCombinedValue( rowId, sourceLevel ) {
|
71 |
-
var c = 1;
|
72 |
-
var combinedValue = '';
|
73 |
-
var oldValue = _feedHolder.getCombinedOutputValue( rowId, sourceLevel );
|
74 |
-
|
75 |
-
while ( jQuery( '#combined-input-field-cntrl-' + rowId + '-' + sourceLevel + '-' + c ).
|
76 |
-
val() ) {
|
77 |
-
var idString = rowId + '-' + sourceLevel + '-' + c;
|
78 |
-
|
79 |
-
var selectedValue = jQuery( '#combined-input-field-cntrl-' + idString ).
|
80 |
-
val();
|
81 |
-
|
82 |
-
combinedValue += c > 1 ?
|
83 |
-
jQuery( '#combined-separator-cntrl-' + idString ).val() + '#' :
|
84 |
-
'';
|
85 |
-
|
86 |
-
if ( selectedValue !== 'static' ) {
|
87 |
-
combinedValue += selectedValue !== 'select' ?
|
88 |
-
selectedValue + '|' :
|
89 |
-
'';
|
90 |
-
} else if ( jQuery( '#static-input-field-' + idString ).val() ) {
|
91 |
-
combinedValue += selectedValue + '#' + jQuery( '#static-input-field-' + idString ).val() + '|';
|
92 |
-
} else {
|
93 |
-
combinedValue = oldValue + '|';
|
94 |
-
break; // if one of the static input fields is still empty, return the old value
|
95 |
-
}
|
96 |
-
|
97 |
-
c ++;
|
98 |
-
}
|
99 |
-
|
100 |
-
combinedValue = combinedValue.substring( 0, combinedValue.length - 1 ); // remove the last |
|
101 |
-
|
102 |
-
return c > 1 ? combinedValue : false; // need at least two fields to be valid
|
103 |
-
}
|
104 |
-
|
105 |
-
function tvc_staticValueChanged( id, level, combinationLevel ) {
|
106 |
-
if ( combinationLevel > 0 ) { // the static field resides in a combination source
|
107 |
-
tvc_changedCombinedOutput( id, level, combinationLevel );
|
108 |
-
} else {
|
109 |
-
// store the change in the feed
|
110 |
-
tvc_setStaticValue( id, level, combinationLevel );
|
111 |
-
|
112 |
-
// when the identifier_exists static value has changed, the level of a few attributes should be changed
|
113 |
-
if ( id === 34 ) {
|
114 |
-
tvc_setIdentifierExistsDependancies();
|
115 |
-
}
|
116 |
-
}
|
117 |
-
}
|
118 |
-
|
119 |
-
function tvc_changedOutputSelection( level ) {
|
120 |
-
var outputFieldControlElement = jQuery( '#output-field-cntrl-' + level );
|
121 |
-
|
122 |
-
if ( outputFieldControlElement.val() !== 'no-value' ) {
|
123 |
-
tvc_activateOptionalFieldRow( level, outputFieldControlElement.val() );
|
124 |
-
}
|
125 |
-
}
|
126 |
-
|
127 |
-
function tvc_hasExtraSourceRow( nrOfSources, value ) {
|
128 |
-
if ( value.length > 0 ) {
|
129 |
-
return value[ nrOfSources - 1 ].hasOwnProperty( 'c' );
|
130 |
-
} else {
|
131 |
-
return false;
|
132 |
-
}
|
133 |
-
}
|
134 |
-
|
135 |
-
function tvc_changedCustomOutputTitle() {
|
136 |
-
var title = jQuery( '#custom-output-title-input' ).val();
|
137 |
-
|
138 |
-
if ( title ) {
|
139 |
-
tvc_activateCustomFieldRow( title );
|
140 |
-
}
|
141 |
-
}
|
142 |
-
|
143 |
-
function tvc_deleteSpecificFeed( id, title ) {
|
144 |
-
var userInput = confirm( tvc_feed_list_form_vars.confirm_delete_feed.replace( '%feedname%', title ) );
|
145 |
-
|
146 |
-
if ( userInput === true ) {
|
147 |
-
tvc_deleteFeed( id, title );
|
148 |
-
console.log( 'File ' + title + ' removed from server.' );
|
149 |
-
tvc_show_success_message( tvc_feed_list_form_vars.feed_removed.replace( '%feedname%', title ) );
|
150 |
-
parent.location='admin.php?page=tvc-product-feed-manager&tab=feed-list';
|
151 |
-
}
|
152 |
-
}
|
153 |
-
|
154 |
-
function tvc_alertRemoveChannel() {
|
155 |
-
var userInput = confirm( tvc_manage_channels_vars.confirm_removing_channel );
|
156 |
-
if ( true !== userInput ) {
|
157 |
-
return false;
|
158 |
-
}
|
159 |
-
}
|
160 |
-
|
161 |
-
function tvc_valueOptionChanged( rowId, sourceLevel, valueEditorLevel ) {
|
162 |
-
var type = jQuery( '#value-options-' + rowId + '-' + sourceLevel + '-' + valueEditorLevel ).val();
|
163 |
-
|
164 |
-
//var selectorCode = tvc_getCorrectValueSelector( rowId, sourceLevel, valueEditorLevel, type, '', '' );
|
165 |
-
var selectorCode = tvc_getCorrectValueSelector( rowId, sourceLevel, 0, type, '', '' );
|
166 |
-
|
167 |
-
jQuery( '#value-editor-input-span-' + rowId + '-' + sourceLevel + '-' + valueEditorLevel ).html( selectorCode );
|
168 |
-
}
|
169 |
-
|
170 |
-
function tvc_getCorrectValueSelector(
|
171 |
-
rowId, sourceLevel, valueEditorLevel, type, value, endValue ) {
|
172 |
-
var selectorCode = '';
|
173 |
-
|
174 |
-
// TODO: the type is now based on the value and on the text. Should be only value as this makes it
|
175 |
-
// easier to work with different languages
|
176 |
-
switch ( type ) {
|
177 |
-
case '0':
|
178 |
-
case 'change nothing':
|
179 |
-
tvc_valueInputOptionsChanged( rowId, sourceLevel, valueEditorLevel ); // save the value in meta as there is no input field required
|
180 |
-
selectorCode = '';
|
181 |
-
break;
|
182 |
-
|
183 |
-
case '1':
|
184 |
-
case 'overwrite':
|
185 |
-
selectorCode = tvc_valueOptionsSingleInput( rowId, sourceLevel, valueEditorLevel, value );
|
186 |
-
break;
|
187 |
-
|
188 |
-
case '2':
|
189 |
-
case 'replace':
|
190 |
-
selectorCode = tvc_valueOptionsReplaceInput( rowId, sourceLevel, valueEditorLevel, value, endValue );
|
191 |
-
break;
|
192 |
-
|
193 |
-
case '3':
|
194 |
-
case 'remove':
|
195 |
-
case '4':
|
196 |
-
case 'add prefix':
|
197 |
-
case '5':
|
198 |
-
case 'add suffix':
|
199 |
-
selectorCode = tvc_valueOptionsSingleInputValue( rowId, sourceLevel, valueEditorLevel, value );
|
200 |
-
break;
|
201 |
-
|
202 |
-
case '6':
|
203 |
-
case 'recalculate':
|
204 |
-
selectorCode = tvc_valueOptionsRecalculate( rowId, sourceLevel, valueEditorLevel, value, endValue );
|
205 |
-
break;
|
206 |
-
|
207 |
-
case '7':
|
208 |
-
case 'convert to child-element':
|
209 |
-
selectorCode = tvc_valueOptionsElementInput( rowId, sourceLevel, valueEditorLevel, value );
|
210 |
-
break;
|
211 |
-
|
212 |
-
default:
|
213 |
-
selectorCode = tvc_valueOptionsSingleInput( rowId, sourceLevel, valueEditorLevel, value );
|
214 |
-
break;
|
215 |
-
}
|
216 |
-
|
217 |
-
return selectorCode;
|
218 |
-
}
|
219 |
-
|
220 |
-
function tvc_deactivateFeed( id ) {
|
221 |
-
tvc_switchFeedStatus(
|
222 |
-
id,
|
223 |
-
function( result ) {
|
224 |
-
tvc_updateFeedRowStatus( id, parseInt( result ) );
|
225 |
-
}
|
226 |
-
);
|
227 |
-
}
|
228 |
-
|
229 |
-
function tvc_duplicateFeed( id, feedName ) {
|
230 |
-
tvc_duplicateExistingFeed(
|
231 |
-
id,
|
232 |
-
function( result ) {
|
233 |
-
if ( result ) {
|
234 |
-
tvc_show_success_message( tvc_feed_list_form_vars.added_feed_copy.replace( '%feedname%', feedName ) );
|
235 |
-
}
|
236 |
-
}
|
237 |
-
);
|
238 |
-
}
|
239 |
-
|
240 |
-
function tvc_regenerateFeed( feedId ) {
|
241 |
-
// when there's already a feed processing, then the status should be "in queue", else status should set to "processing"
|
242 |
-
var feedStatus = tvcQueueStringIsEmpty() ? 3 : 4;
|
243 |
-
|
244 |
-
tvcAddToQueueString( feedId );
|
245 |
-
|
246 |
-
tvc_showFeedSpinner();
|
247 |
-
|
248 |
-
tvc_updateFeedRowStatus( feedId, feedStatus );
|
249 |
-
|
250 |
-
console.log( 'Started regenerating feed ' + feedId );
|
251 |
-
|
252 |
-
tvc_updateFeedFile( feedId, function( xmlResult ) {
|
253 |
-
|
254 |
-
tvc_hideFeedSpinner();
|
255 |
-
|
256 |
-
console.log(xmlResult);
|
257 |
-
|
258 |
-
// activate the feed list status checker to update the feed list when a status changes
|
259 |
-
var checkStatus = setInterval( function(){
|
260 |
-
tvc_getCurrentFeedStatus( feedId, function( statResult ) {
|
261 |
-
var data = JSON.parse( statResult );
|
262 |
-
if ('3' !== data[ 'status_id' ] && '4' !== data[ 'status_id' ]) {
|
263 |
-
console.log( data );
|
264 |
-
tvc_resetFeedStatus( data );
|
265 |
-
tvc_resetFeedList();
|
266 |
-
clearInterval( checkStatus );
|
267 |
-
tvcRemoveFromQueueString( feedId );
|
268 |
-
}
|
269 |
-
} );
|
270 |
-
}, 10000 );
|
271 |
-
})
|
272 |
-
}
|
273 |
-
|
274 |
-
function tvc_viewFeed( url ) {
|
275 |
-
if ( -1 !== url.indexOf( 'http' ) ) { // Filter out duplicate feeds that have not been generated yet.
|
276 |
-
window.open(url);
|
277 |
-
} else {
|
278 |
-
alert( tvc_feed_list_form_vars.feed_not_generated );
|
279 |
-
}
|
280 |
-
}
|
281 |
-
|
282 |
-
function tvc_addRowValueEditor(
|
283 |
-
rowId, sourceLevel, valueEditorLevel, values ) {
|
284 |
-
// add the change values controls
|
285 |
-
jQuery( '#end-row-id-' + rowId ).remove();
|
286 |
-
jQuery( '#row-' + rowId ).
|
287 |
-
append( tvc_valueEditor( rowId, sourceLevel, valueEditorLevel, values ) + tvc_endrow( rowId ) );
|
288 |
-
|
289 |
-
// and remove the edit values control
|
290 |
-
jQuery( '#value-editor-input-query-add-span-' + rowId + '-' + sourceLevel + '-' + valueEditorLevel ).remove();
|
291 |
-
}
|
292 |
-
|
293 |
-
/**
|
294 |
-
* Takes an array of words and puts them together in a camel structure way.
|
295 |
-
*
|
296 |
-
* @param {array} stringArray contains the words from which the string should be generated
|
297 |
-
*
|
298 |
-
* @returns {string} camel structured string
|
299 |
-
*/
|
300 |
-
function tvc_convertToCamelCase( stringArray ) {
|
301 |
-
// first word should remain lowercase
|
302 |
-
var result = stringArray[ 0 ].toLowerCase();
|
303 |
-
|
304 |
-
for ( var i = 1; i < stringArray.length; i++ ) {
|
305 |
-
result += stringArray[ i ].charAt( 0 ).toUpperCase() + stringArray[ i ].slice( 1 );
|
306 |
-
}
|
307 |
-
|
308 |
-
return result;
|
309 |
-
}
|
310 |
-
|
311 |
-
function tvc_addValueEditorQuery( rowId, sourceLevel, conditionLevel ) {
|
312 |
-
if ( tvc_changeValueIsFilled( rowId, sourceLevel, conditionLevel ) ) {
|
313 |
-
if ( tvc_queryIsFilled(
|
314 |
-
rowId,
|
315 |
-
(
|
316 |
-
sourceLevel - 1
|
317 |
-
),
|
318 |
-
1
|
319 |
-
)
|
320 |
-
) {
|
321 |
-
tvc_showEditValueQuery( rowId, sourceLevel, conditionLevel, true );
|
322 |
-
} else {
|
323 |
-
alert( tvc_feed_settings_form_vars.query_requirements );
|
324 |
-
}
|
325 |
-
} else {
|
326 |
-
alert( tvc_feed_settings_form_vars.first_fill_in_change_value );
|
327 |
-
}
|
328 |
-
}
|
329 |
-
|
330 |
-
function tvc_queryStringToQueryObject( queryString ) {
|
331 |
-
var queryObject = {};
|
332 |
-
|
333 |
-
if ( queryString ) {
|
334 |
-
for ( var key in queryString ) {
|
335 |
-
queryObject = tvc_convertQueryStringToQueryObject( queryString[ key ] );
|
336 |
-
}
|
337 |
-
}
|
338 |
-
|
339 |
-
return queryObject;
|
340 |
-
}
|
341 |
-
|
342 |
-
function tvc_valueStringToValueObject( valueString ) {
|
343 |
-
var valueObject = {};
|
344 |
-
|
345 |
-
if ( valueString ) {
|
346 |
-
for ( var key in valueString ) {
|
347 |
-
// do not process the query part of the string
|
348 |
-
if ( key !== 'q' ) {
|
349 |
-
valueObject = tvc_convertValueStringToValueObject( valueString[ key ] );
|
350 |
-
}
|
351 |
-
}
|
352 |
-
}
|
353 |
-
|
354 |
-
return valueObject;
|
355 |
-
}
|
356 |
-
|
357 |
-
function tvc_convertQueryStringToQueryObject( queryString ) {
|
358 |
-
var queryObject = {};
|
359 |
-
|
360 |
-
var stringSplit = queryString.split( '#' );
|
361 |
-
|
362 |
-
if ( stringSplit[ 0 ] === '1' || stringSplit[ 0 ] === '2' ) {
|
363 |
-
queryObject.preCondition = stringSplit[ 0 ];
|
364 |
-
} else {
|
365 |
-
queryObject.preCondition = '0';
|
366 |
-
}
|
367 |
-
|
368 |
-
queryObject.source = stringSplit[ 1 ];
|
369 |
-
queryObject.condition = stringSplit[ 2 ];
|
370 |
-
queryObject.value = stringSplit[ 3 ] ? stringSplit[ 3 ] : '';
|
371 |
-
queryObject.endValue = stringSplit[ 5 ] ? stringSplit[ 5 ] : '';
|
372 |
-
|
373 |
-
return queryObject;
|
374 |
-
}
|
375 |
-
|
376 |
-
function tvc_resortObject( object ) {
|
377 |
-
var result = [];
|
378 |
-
var i = 1;
|
379 |
-
|
380 |
-
// re-sort the conditions
|
381 |
-
for ( var element in object ) {
|
382 |
-
var o = {};
|
383 |
-
for ( var key in object[ element ] ) {
|
384 |
-
if ( key !== 'q' ) { // exclude q as key
|
385 |
-
o[ i ] = object[ element ][ key ];
|
386 |
-
result.push( o );
|
387 |
-
} else {
|
388 |
-
result[ i - 1 ].q = object[ element ][ key ];
|
389 |
-
}
|
390 |
-
}
|
391 |
-
|
392 |
-
i ++;
|
393 |
-
}
|
394 |
-
|
395 |
-
// don't return an empty {} string
|
396 |
-
return i > 1 ? result : '';
|
397 |
-
}
|
398 |
-
|
399 |
-
function tvc_convertValueStringToValueObject( valueString ) {
|
400 |
-
var valueObject = {};
|
401 |
-
var valueSplit = valueString.split( '#' );
|
402 |
-
|
403 |
-
valueObject.preCondition = valueSplit[ 0 ];
|
404 |
-
valueObject.condition = valueSplit[ 1 ];
|
405 |
-
valueObject.value = valueSplit[ 2 ];
|
406 |
-
valueObject.endValue = valueSplit[ 3 ] ? valueSplit[ 3 ] : '';
|
407 |
-
|
408 |
-
return valueObject;
|
409 |
-
}
|
410 |
-
|
411 |
-
function tvc_makeCleanQueryObject() {
|
412 |
-
var queryObject = {};
|
413 |
-
|
414 |
-
queryObject.preCondition = 'if';
|
415 |
-
queryObject.source = 'select';
|
416 |
-
queryObject.condition = '';
|
417 |
-
queryObject.value = '';
|
418 |
-
queryObject.endValue = '';
|
419 |
-
|
420 |
-
return queryObject;
|
421 |
-
}
|
422 |
-
|
423 |
-
function tvc_makeCleanValueObject() {
|
424 |
-
var valueObject = {};
|
425 |
-
|
426 |
-
valueObject.preCondition = 'change';
|
427 |
-
valueObject.condition = 'overwrite';
|
428 |
-
valueObject.value = '';
|
429 |
-
valueObject.endValue = '';
|
430 |
-
|
431 |
-
return valueObject;
|
432 |
-
}
|
433 |
-
|
434 |
-
function tvc_addNewItemToCategoryString(
|
435 |
-
level, oldString, newValue, separator ) {
|
436 |
-
var categoryLevel = oldString.split( separator ).length;
|
437 |
-
|
438 |
-
if ( oldString === tvc_feed_settings_form_vars.map_to_default_category || level === '0' ) {
|
439 |
-
return newValue;
|
440 |
-
} else {
|
441 |
-
if ( categoryLevel <= level ) {
|
442 |
-
return oldString + separator + newValue;
|
443 |
-
} else {
|
444 |
-
var pos = 0;
|
445 |
-
|
446 |
-
for ( var i = 0; i < level; i ++ ) {
|
447 |
-
pos = oldString.indexOf( separator, pos + 1 );
|
448 |
-
var oldPart = oldString.substring( 0, pos );
|
449 |
-
}
|
450 |
-
|
451 |
-
return oldPart + separator + newValue;
|
452 |
-
}
|
453 |
-
}
|
454 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_logic.min.js
DELETED
@@ -1,343 +0,0 @@
|
|
1 |
-
var _feedHolder;
|
2 |
-
|
3 |
-
function tvc_editCategories() {
|
4 |
-
var d = jQuery("#category-selector-lvl");
|
5 |
-
if (!tvc_isCustomChannel(_feedHolder.channel)) {
|
6 |
-
var e = _feedHolder.mainCategory.split(" > ");
|
7 |
-
var c = e.length;
|
8 |
-
var a = jQuery("#lvl_" + (c)).html() !== "" ? c + 1 : c;
|
9 |
-
jQuery("#selected-categories").hide();
|
10 |
-
jQuery("#lvl_0").prop("disabled", false);
|
11 |
-
for (var b = 0; b < a; b++) {
|
12 |
-
var f = jQuery("#lvl_" + b);
|
13 |
-
if (!e[b]) {
|
14 |
-
f.val("0")
|
15 |
-
}
|
16 |
-
f.show()
|
17 |
-
}
|
18 |
-
} else {
|
19 |
-
d.html(tvc_freeCategoryInputCntrl("default", _feedHolder.feedId, _feedHolder.mainCategory));
|
20 |
-
d.prop("disabled", false)
|
21 |
-
}
|
22 |
-
}
|
23 |
-
|
24 |
-
function tvc_generateFeed() {
|
25 |
-
if (jQuery("#file-name").val() !== "") {
|
26 |
-
if (_feedHolder.categoryMapping && _feedHolder.categoryMapping.length > 0) {
|
27 |
-
disableFeedActionButtons();
|
28 |
-
tvc_generateAndSaveFeed();
|
29 |
-
} else {
|
30 |
-
var a = confirm(tvc_feed_settings_form_vars.no_category_selected);
|
31 |
-
if (a === true) {
|
32 |
-
disableFeedActionButtons();
|
33 |
-
tvc_generateAndSaveFeed();
|
34 |
-
}
|
35 |
-
}
|
36 |
-
|
37 |
-
} else {
|
38 |
-
jQuery("#alert-message").html("<p>" + tvc_feed_settings_form_vars.file_name_required + "</p>");
|
39 |
-
jQuery("#success-message").show()
|
40 |
-
}
|
41 |
-
}
|
42 |
-
|
43 |
-
function tvc_saveFeedData() {
|
44 |
-
if (jQuery("#file-name").val() !== "") {
|
45 |
-
tvc_saveFeed()
|
46 |
-
} else {
|
47 |
-
jQuery("#alert-message").html("<p>" + tvc_feed_settings_form_vars.file_name_required + "</p>");
|
48 |
-
jQuery("#success-message").show()
|
49 |
-
}
|
50 |
-
}
|
51 |
-
|
52 |
-
function getCombinedValue(g, f) {
|
53 |
-
var h = 1;
|
54 |
-
var b = "";
|
55 |
-
var d = _feedHolder.getCombinedOutputValue(g, f);
|
56 |
-
while (jQuery("#combined-input-field-cntrl-" + g + "-" + f + "-" + h).val()) {
|
57 |
-
var a = g + "-" + f + "-" + h;
|
58 |
-
var e = jQuery("#combined-input-field-cntrl-" + a).val();
|
59 |
-
b += h > 1 ? jQuery("#combined-separator-cntrl-" + a).val() + "#" : "";
|
60 |
-
if (e !== "static") {
|
61 |
-
b += e !== "select" ? e + "|" : ""
|
62 |
-
} else {
|
63 |
-
if (jQuery("#static-input-field-" + a).val()) {
|
64 |
-
b += e + "#" + jQuery("#static-input-field-" + a).val() + "|"
|
65 |
-
} else {
|
66 |
-
b = d + "|";
|
67 |
-
break
|
68 |
-
}
|
69 |
-
}
|
70 |
-
h++
|
71 |
-
}
|
72 |
-
b = b.substring(0, b.length - 1);
|
73 |
-
return h > 1 ? b : false
|
74 |
-
}
|
75 |
-
|
76 |
-
function tvc_staticValueChanged(c, b, a) {
|
77 |
-
if (a > 0) {
|
78 |
-
tvc_changedCombinedOutput(c, b, a)
|
79 |
-
} else {
|
80 |
-
tvc_setStaticValue(c, b, a);
|
81 |
-
if (c === 34) {
|
82 |
-
tvc_setIdentifierExistsDependancies()
|
83 |
-
}
|
84 |
-
}
|
85 |
-
}
|
86 |
-
|
87 |
-
function tvc_changedOutputSelection(b) {
|
88 |
-
var a = jQuery("#output-field-cntrl-" + b);
|
89 |
-
if (a.val() !== "no-value") {
|
90 |
-
tvc_activateOptionalFieldRow(b, a.val())
|
91 |
-
}
|
92 |
-
}
|
93 |
-
|
94 |
-
function tvc_hasExtraSourceRow(a, b) {
|
95 |
-
if (b.length > 0) {
|
96 |
-
return b[a - 1].hasOwnProperty("c")
|
97 |
-
} else {
|
98 |
-
return false
|
99 |
-
}
|
100 |
-
}
|
101 |
-
|
102 |
-
function tvc_changedCustomOutputTitle() {
|
103 |
-
var a = jQuery("#custom-output-title-input").val();
|
104 |
-
if (a) {
|
105 |
-
tvc_activateCustomFieldRow(a)
|
106 |
-
}
|
107 |
-
}
|
108 |
-
|
109 |
-
function tvc_deleteSpecificFeed(c, b) {
|
110 |
-
var a = confirm(tvc_feed_list_form_vars.confirm_delete_feed.replace("%feedname%", b));
|
111 |
-
if (a === true) {
|
112 |
-
tvc_deleteFeed(c, b);
|
113 |
-
console.log("File " + b + " removed from server.");
|
114 |
-
tvc_show_success_message(tvc_feed_list_form_vars.feed_removed.replace("%feedname%", b))
|
115 |
-
parent.location='admin.php?page=tvc-product-feed-manager&tab=feed-list';
|
116 |
-
}
|
117 |
-
}
|
118 |
-
|
119 |
-
function tvc_alertRemoveChannel() {
|
120 |
-
var a = confirm(tvc_manage_channels_vars.confirm_removing_channel);
|
121 |
-
if (true !== a) {
|
122 |
-
return false
|
123 |
-
}
|
124 |
-
}
|
125 |
-
|
126 |
-
function tvc_valueOptionChanged(d, c, e) {
|
127 |
-
var b = jQuery("#value-options-" + d + "-" + c + "-" + e).val();
|
128 |
-
var a = tvc_getCorrectValueSelector(d, c, 0, b, "", "");
|
129 |
-
jQuery("#value-editor-input-span-" + d + "-" + c + "-" + e).html(a)
|
130 |
-
}
|
131 |
-
|
132 |
-
function tvc_getCorrectValueSelector(f, e, g, c, d, a) {
|
133 |
-
var b = "";
|
134 |
-
switch (c) {
|
135 |
-
case"0":
|
136 |
-
case"change nothing":
|
137 |
-
tvc_valueInputOptionsChanged(f, e, g);
|
138 |
-
b = "";
|
139 |
-
break;
|
140 |
-
case"1":
|
141 |
-
case"overwrite":
|
142 |
-
b = tvc_valueOptionsSingleInput(f, e, g, d);
|
143 |
-
break;
|
144 |
-
case"2":
|
145 |
-
case"replace":
|
146 |
-
b = tvc_valueOptionsReplaceInput(f, e, g, d, a);
|
147 |
-
break;
|
148 |
-
case"3":
|
149 |
-
case"remove":
|
150 |
-
case"4":
|
151 |
-
case"add prefix":
|
152 |
-
case"5":
|
153 |
-
case"add suffix":
|
154 |
-
b = tvc_valueOptionsSingleInputValue(f, e, g, d);
|
155 |
-
break;
|
156 |
-
case"6":
|
157 |
-
case"recalculate":
|
158 |
-
b = tvc_valueOptionsRecalculate(f, e, g, d, a);
|
159 |
-
break;
|
160 |
-
case"7":
|
161 |
-
case"convert to child-element":
|
162 |
-
b = tvc_valueOptionsElementInput(f, e, g, d);
|
163 |
-
break;
|
164 |
-
default:
|
165 |
-
b = tvc_valueOptionsSingleInput(f, e, g, d);
|
166 |
-
break
|
167 |
-
}
|
168 |
-
return b
|
169 |
-
}
|
170 |
-
|
171 |
-
function tvc_deactivateFeed(a) {
|
172 |
-
tvc_switchFeedStatus(a, function (b) {
|
173 |
-
tvc_updateFeedRowStatus(a, parseInt(b))
|
174 |
-
})
|
175 |
-
}
|
176 |
-
|
177 |
-
function tvc_duplicateFeed(b, a) {
|
178 |
-
tvc_duplicateExistingFeed(b, function (c) {
|
179 |
-
if (c) {
|
180 |
-
tvc_show_success_message(tvc_feed_list_form_vars.added_feed_copy.replace("%feedname%", a))
|
181 |
-
}
|
182 |
-
})
|
183 |
-
}
|
184 |
-
|
185 |
-
function tvc_regenerateFeed(a) {
|
186 |
-
var b = tvcQueueStringIsEmpty() ? 3 : 4;
|
187 |
-
tvcAddToQueueString(a);
|
188 |
-
tvc_showFeedSpinner();
|
189 |
-
tvc_updateFeedRowStatus(a, b);
|
190 |
-
console.log("Started regenerating feed " + a);
|
191 |
-
tvc_updateFeedFile(a, function (d) {
|
192 |
-
tvc_hideFeedSpinner();
|
193 |
-
console.log(d);
|
194 |
-
var c = setInterval(function () {
|
195 |
-
tvc_getCurrentFeedStatus(a, function (f) {
|
196 |
-
var e = JSON.parse(f);
|
197 |
-
if ("3" !== e.status_id && "4" !== e.status_id) {
|
198 |
-
console.log(e);
|
199 |
-
tvc_resetFeedStatus(e);
|
200 |
-
tvc_resetFeedList();
|
201 |
-
clearInterval(c);
|
202 |
-
tvcRemoveFromQueueString(a)
|
203 |
-
}
|
204 |
-
})
|
205 |
-
}, 10000)
|
206 |
-
})
|
207 |
-
}
|
208 |
-
|
209 |
-
function tvc_viewFeed(a) {
|
210 |
-
if (-1 !== a.indexOf("http")) {
|
211 |
-
window.open(a)
|
212 |
-
} else {
|
213 |
-
alert(tvc_feed_list_form_vars.feed_not_generated)
|
214 |
-
}
|
215 |
-
}
|
216 |
-
|
217 |
-
function tvc_addRowValueEditor(c, b, d, a) {
|
218 |
-
jQuery("#end-row-id-" + c).remove();
|
219 |
-
jQuery("#row-" + c).append(tvc_valueEditor(c, b, d, a) + tvc_endrow(c));
|
220 |
-
jQuery("#value-editor-input-query-add-span-" + c + "-" + b + "-" + d).remove()
|
221 |
-
}
|
222 |
-
|
223 |
-
function tvc_convertToCamelCase(b) {
|
224 |
-
var a = b[0].toLowerCase();
|
225 |
-
for (var c = 1; c < b.length; c++) {
|
226 |
-
a += b[c].charAt(0).toUpperCase() + b[c].slice(1)
|
227 |
-
}
|
228 |
-
return a
|
229 |
-
}
|
230 |
-
|
231 |
-
function tvc_addValueEditorQuery(c, b, a) {
|
232 |
-
if (tvc_changeValueIsFilled(c, b, a)) {
|
233 |
-
if (tvc_queryIsFilled(c, (b - 1), 1)) {
|
234 |
-
tvc_showEditValueQuery(c, b, a, true)
|
235 |
-
} else {
|
236 |
-
alert(tvc_feed_settings_form_vars.query_requirements)
|
237 |
-
}
|
238 |
-
} else {
|
239 |
-
alert(tvc_feed_settings_form_vars.first_fill_in_change_value)
|
240 |
-
}
|
241 |
-
}
|
242 |
-
|
243 |
-
function tvc_queryStringToQueryObject(c) {
|
244 |
-
var b = {};
|
245 |
-
if (c) {
|
246 |
-
for (var a in c) {
|
247 |
-
b = tvc_convertQueryStringToQueryObject(c[a])
|
248 |
-
}
|
249 |
-
}
|
250 |
-
return b
|
251 |
-
}
|
252 |
-
|
253 |
-
function tvc_valueStringToValueObject(b) {
|
254 |
-
var a = {};
|
255 |
-
if (b) {
|
256 |
-
for (var c in b) {
|
257 |
-
if (c !== "q") {
|
258 |
-
a = tvc_convertValueStringToValueObject(b[c])
|
259 |
-
}
|
260 |
-
}
|
261 |
-
}
|
262 |
-
return a
|
263 |
-
}
|
264 |
-
|
265 |
-
function tvc_convertQueryStringToQueryObject(c) {
|
266 |
-
var b = {};
|
267 |
-
var a = c.split("#");
|
268 |
-
if (a[0] === "1" || a[0] === "2") {
|
269 |
-
b.preCondition = a[0]
|
270 |
-
} else {
|
271 |
-
b.preCondition = "0"
|
272 |
-
}
|
273 |
-
b.source = a[1];
|
274 |
-
b.condition = a[2];
|
275 |
-
b.value = a[3] ? a[3] : "";
|
276 |
-
b.endValue = a[5] ? a[5] : "";
|
277 |
-
return b
|
278 |
-
}
|
279 |
-
|
280 |
-
function tvc_resortObject(b) {
|
281 |
-
var a = [];
|
282 |
-
var e = 1;
|
283 |
-
for (var d in b) {
|
284 |
-
var f = {};
|
285 |
-
for (var c in b[d]) {
|
286 |
-
if (c !== "q") {
|
287 |
-
f[e] = b[d][c];
|
288 |
-
a.push(f)
|
289 |
-
} else {
|
290 |
-
a[e - 1].q = b[d][c]
|
291 |
-
}
|
292 |
-
}
|
293 |
-
e++
|
294 |
-
}
|
295 |
-
return e > 1 ? a : ""
|
296 |
-
}
|
297 |
-
|
298 |
-
function tvc_convertValueStringToValueObject(b) {
|
299 |
-
var a = {};
|
300 |
-
var c = b.split("#");
|
301 |
-
a.preCondition = c[0];
|
302 |
-
a.condition = c[1];
|
303 |
-
a.value = c[2];
|
304 |
-
a.endValue = c[3] ? c[3] : "";
|
305 |
-
return a
|
306 |
-
}
|
307 |
-
|
308 |
-
function tvc_makeCleanQueryObject() {
|
309 |
-
var a = {};
|
310 |
-
a.preCondition = "if";
|
311 |
-
a.source = "select";
|
312 |
-
a.condition = "";
|
313 |
-
a.value = "";
|
314 |
-
a.endValue = "";
|
315 |
-
return a
|
316 |
-
}
|
317 |
-
|
318 |
-
function tvc_makeCleanValueObject() {
|
319 |
-
var a = {};
|
320 |
-
a.preCondition = "change";
|
321 |
-
a.condition = "overwrite";
|
322 |
-
a.value = "";
|
323 |
-
a.endValue = "";
|
324 |
-
return a
|
325 |
-
}
|
326 |
-
|
327 |
-
function tvc_addNewItemToCategoryString(h, a, f, e) {
|
328 |
-
var b = a.split(e).length;
|
329 |
-
if (a === tvc_feed_settings_form_vars.map_to_default_category || h === "0") {
|
330 |
-
return f
|
331 |
-
} else {
|
332 |
-
if (b <= h) {
|
333 |
-
return a + e + f
|
334 |
-
} else {
|
335 |
-
var g = 0;
|
336 |
-
for (var c = 0; c < h; c++) {
|
337 |
-
g = a.indexOf(e, g + 1);
|
338 |
-
var d = a.substring(0, g)
|
339 |
-
}
|
340 |
-
return d + e + f
|
341 |
-
}
|
342 |
-
}
|
343 |
-
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_object-attribute-meta.js
DELETED
@@ -1,66 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
|
3 |
-
function Tvc_AttributeMeta( key, value ) {
|
4 |
-
|
5 |
-
this.key = key;
|
6 |
-
this.value = value;
|
7 |
-
}
|
8 |
-
|
9 |
-
function countSources( mappingData ) {
|
10 |
-
|
11 |
-
return mappingData.length > 0 ? mappingData.length : 1;
|
12 |
-
}
|
13 |
-
|
14 |
-
function tvc_getMappingSourceValue( mapping, sourceCounter ) {
|
15 |
-
|
16 |
-
if ( mapping && mapping.length > 0 ) {
|
17 |
-
|
18 |
-
if ( mapping[ sourceCounter ] && 's' in mapping[ sourceCounter ] && 'source' in mapping[ sourceCounter ].s ) {
|
19 |
-
|
20 |
-
// do not return a combined value
|
21 |
-
return mapping[ sourceCounter ].s[ 'source' ] !== 'combined' ? mapping[ sourceCounter ].s[ 'source' ] : null;
|
22 |
-
} else {
|
23 |
-
return null;
|
24 |
-
}
|
25 |
-
} else {
|
26 |
-
return null; // mapping seems to be empty
|
27 |
-
}
|
28 |
-
}
|
29 |
-
|
30 |
-
function tvc_getMappingCombinedValue( mapping, sourceCounter ) {
|
31 |
-
|
32 |
-
if ( mapping && mapping.length > 0 ) {
|
33 |
-
|
34 |
-
if ( mapping[ sourceCounter ] && 's' in mapping[ sourceCounter ] && 'source' in mapping[ sourceCounter ].s && mapping[ sourceCounter ].s[ 'source' ] === 'combined' ) {
|
35 |
-
return mapping[ sourceCounter ].s[ 'f' ];
|
36 |
-
} else {
|
37 |
-
return null;
|
38 |
-
}
|
39 |
-
} else {
|
40 |
-
return null; // mapping seems to be empty
|
41 |
-
}
|
42 |
-
}
|
43 |
-
|
44 |
-
function tvc_getMappingStaticValue( mapping, sourceCounter ) {
|
45 |
-
|
46 |
-
if ( mapping && mapping.length > 0 ) {
|
47 |
-
|
48 |
-
if ( mapping[ sourceCounter ] && 's' in mapping[ sourceCounter ] && 'static' in mapping[ sourceCounter ].s ) {
|
49 |
-
return mapping[ sourceCounter ].s[ 'static' ];
|
50 |
-
} else {
|
51 |
-
return null;
|
52 |
-
}
|
53 |
-
} else {
|
54 |
-
return null; // mapping seems to be empty
|
55 |
-
}
|
56 |
-
}
|
57 |
-
|
58 |
-
function tvc_getMappingConditions( mapping, sourceCounter ) {
|
59 |
-
if ( mapping && mapping.length > 0 ) {
|
60 |
-
if ( mapping[ sourceCounter ] && 'c' in mapping[ sourceCounter ] ) {
|
61 |
-
return mapping[ sourceCounter ].c;
|
62 |
-
}
|
63 |
-
} else {
|
64 |
-
return null;
|
65 |
-
}
|
66 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_object-attribute-meta.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
function Tvc_AttributeMeta(a,b){this.key=a;this.value=b}function countSources(a){return a.length>0?a.length:1}function tvc_getMappingSourceValue(b,a){if(b&&b.length>0){if(b[a]&&"s" in b[a]&&"source" in b[a].s){return b[a].s.source!=="combined"?b[a].s.source:null}else{return null}}else{return null}}function tvc_getMappingCombinedValue(b,a){if(b&&b.length>0){if(b[a]&&"s" in b[a]&&"source" in b[a].s&&b[a].s.source==="combined"){return b[a].s.f}else{return null}}else{return null}}function tvc_getMappingStaticValue(b,a){if(b&&b.length>0){if(b[a]&&"s" in b[a]&&"static" in b[a].s){return b[a].s["static"]}else{return null}}else{return null}}function tvc_getMappingConditions(b,a){if(b&&b.length>0){if(b[a]&&"c" in b[a]){return b[a].c}}else{return null}};
|
|
includes/application/js/tvc_object-feed.js
DELETED
@@ -1,849 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
|
3 |
-
/**
|
4 |
-
* Feed Object
|
5 |
-
*
|
6 |
-
* @param {int} feedId
|
7 |
-
* @param {string} title Title of the feed file
|
8 |
-
* @param {int} includeVariations Does this feed include variations
|
9 |
-
* @param {int} aggregator Is this an aggregator feed
|
10 |
-
* @param {int} channel Channel definition
|
11 |
-
* @param {string} mainCategory
|
12 |
-
* @param {array} categoryMapping
|
13 |
-
* @param {string} url
|
14 |
-
* @param {string} dataSource Source id (for now only WooCommerce is supported)
|
15 |
-
* @param {string} country Two letter country identifier
|
16 |
-
* @param {string} language
|
17 |
-
* @param {string} feedTitle Google's feed title text
|
18 |
-
* @param {string} feedDescription Google's feed description text
|
19 |
-
* @param {string} updateSchedule Updates schedule string
|
20 |
-
* @param {array} feedFilter Feed filters
|
21 |
-
* @param {int} status Status of the feed
|
22 |
-
* @param {string} feedType Type of feed (default Product Feed Type)
|
23 |
-
*
|
24 |
-
* @constructor
|
25 |
-
*/
|
26 |
-
function Feed( feedId, title, includeVariations, aggregator, channel, mainCategory,
|
27 |
-
categoryMapping, url, dataSource, country, language, feedTitle,
|
28 |
-
feedDescription, updateSchedule, feedFilter, status, feedType ) {
|
29 |
-
|
30 |
-
this.feedId = feedId;
|
31 |
-
this.title = title;
|
32 |
-
this.mainCategory = mainCategory;
|
33 |
-
this.categoryMapping = categoryMapping;
|
34 |
-
this.includeVariations = includeVariations;
|
35 |
-
this.isAggregator = aggregator;
|
36 |
-
this.feedTitle = feedTitle;
|
37 |
-
this.feedDescription = feedDescription;
|
38 |
-
this.url = url;
|
39 |
-
this.dataSource = dataSource;
|
40 |
-
this.channel = channel;
|
41 |
-
this.country = channel !== '3' ? country : 'NL'; // for Beslist.nl only register the Netherlands
|
42 |
-
this.language = language;
|
43 |
-
this.status = status;
|
44 |
-
this.updateSchedule = updateSchedule;
|
45 |
-
this.feedFilter = feedFilter;
|
46 |
-
this.attributes = [];
|
47 |
-
this.feedType = feedType;
|
48 |
-
|
49 |
-
// objects functions
|
50 |
-
this.addAttribute = addAttributeToFeed;
|
51 |
-
this.getAttributeIdByName = getAttributeId;
|
52 |
-
this.activateAttribute = activateFeedsAttribute;
|
53 |
-
this.checkIfCustomNameExists = checkCustomName;
|
54 |
-
this.countCombinedFields = countAttributesCombinedFields;
|
55 |
-
this.deactivateAttribute = deactivateFeedsAttribute;
|
56 |
-
this.deactivateCategory = deactivateCategoryMap;
|
57 |
-
this.activateCategory = activateCategoryMap;
|
58 |
-
this.setStaticAttributeValue = setAttributesStaticValue;
|
59 |
-
this.setSourceValue = setAttributesSourceValue;
|
60 |
-
this.setAlternativeSourceValue = setAlternativeAttributesSourceValue;
|
61 |
-
this.setCombinedOutputValue = setAttributesCombinedOutputValue;
|
62 |
-
this.setCategoryValue = setAttributesCategoryValue;
|
63 |
-
this.setFeedFilter = setFeedFilterValue;
|
64 |
-
this.mapCategory = mapACategory;
|
65 |
-
this.changeCustomFeedCategoryMap = changeCustomCategoryMap;
|
66 |
-
this.changeIncludeVariations = changeIncludeVariationsValue;
|
67 |
-
this.changeAggregator = changeAggregatorValue;
|
68 |
-
this.resetNrQueries = rstNrQueries;
|
69 |
-
this.incrNrQueries = addNrQueries;
|
70 |
-
this.decrNrQueries = substrNrQueries;
|
71 |
-
this.addConditionValue = addAttributesCondition;
|
72 |
-
this.addValueQueryValue = addAttributesValueQuery;
|
73 |
-
this.removeAttribute = removeAttributeFromFeed;
|
74 |
-
this.removeValueConditionValue = removeAttributesCondition;
|
75 |
-
this.removeValueQueryValue = removeAttributesValueQuery;
|
76 |
-
this.removeAlternativeSourceValue = removeAlternativeSource;
|
77 |
-
this.removeCombinedOutputValue = removeAttributesCombinedOutputValue;
|
78 |
-
this.removeEditValueValue = removeAttributesEditValue;
|
79 |
-
this.removeFeedFilter = removeFeedFilterValue;
|
80 |
-
this.getAttributesQueriesObject = getAttributesQueries;
|
81 |
-
this.getCombinedOutputValue = getAttributesCombinedOutputValue;
|
82 |
-
this.getValueQueryValue = getAttributesValueQueries;
|
83 |
-
this.getAttributesSourceObject = getAttributesSources;
|
84 |
-
this.getSourceObject = getSourceData;
|
85 |
-
this.getAlternativeSourcesObject = getAlternativeSources;
|
86 |
-
this.getAttributesValueObject = getAttributesValues;
|
87 |
-
this.getFeedFilter = getFeedFilterValue;
|
88 |
-
this.getFeedType = getFeedType;
|
89 |
-
this.setMainCategory = setCategories;
|
90 |
-
this.setUpdateSchedule = setSchedule;
|
91 |
-
this.setCustomCategory = setFeedCustomCategory;
|
92 |
-
this.setCountry = changeCountry;
|
93 |
-
this.clearSourceValue = clearAttributesSourceValue;
|
94 |
-
this.cleanAttributes = cleanUnusedAttributes;
|
95 |
-
this.clearAllAttributes = clearAttributes;
|
96 |
-
this.addChangeValue = addAttributesChangeValue;
|
97 |
-
}
|
98 |
-
|
99 |
-
function FeedAttribute( attributeId, fieldName, advisedSource, value, fieldLevel, isActive,
|
100 |
-
nrQueries, nrValueEdits, nrValueConditions ) {
|
101 |
-
|
102 |
-
this.rowId = attributeId;
|
103 |
-
this.fieldName = fieldName;
|
104 |
-
this.advisedSource = advisedSource;
|
105 |
-
this.value = value;
|
106 |
-
this.fieldLevel = fieldLevel;
|
107 |
-
this.isActive = isActive;
|
108 |
-
this.nrQueries = nrQueries;
|
109 |
-
this.nrValueEdits = nrValueEdits;
|
110 |
-
this.nrValueConditions = nrValueConditions;
|
111 |
-
}
|
112 |
-
|
113 |
-
function CategoryMap( shopCategory, feedCategories ) {
|
114 |
-
|
115 |
-
this.shopCategoryId = shopCategory;
|
116 |
-
this.feedCategories = feedCategories;
|
117 |
-
}
|
118 |
-
|
119 |
-
function addAttributeToFeed( attributeId, fieldName, advisedSource, value, fieldLevel, isActive, queryLevel, valuesLevel, valueConditions ) {
|
120 |
-
|
121 |
-
var attribute = new FeedAttribute( attributeId, fieldName, advisedSource, value, fieldLevel, isActive, queryLevel, valuesLevel, valueConditions );
|
122 |
-
|
123 |
-
this.attributes.push( attribute );
|
124 |
-
}
|
125 |
-
|
126 |
-
function removeAttributeFromFeed( rowId ) {
|
127 |
-
|
128 |
-
for ( var i = 0; i < this.attributes.length; i ++ ) {
|
129 |
-
|
130 |
-
if ( this.attributes[ i ].rowId === rowId ) {
|
131 |
-
|
132 |
-
this.attributes.splice( i, 1 );
|
133 |
-
}
|
134 |
-
}
|
135 |
-
}
|
136 |
-
|
137 |
-
function mapACategory( categorySelectorId, category ) {
|
138 |
-
|
139 |
-
var selectedLevel = categorySelectorId.match( /(\d+)$/ )[ 0 ]; // next level
|
140 |
-
var sc = categorySelectorId.replace( '_' + selectedLevel, '' );
|
141 |
-
var shopCategoryId = sc.match( /(\d+)$/ )[ 0 ];
|
142 |
-
var mo = JSON.parse( this.categoryMapping );
|
143 |
-
|
144 |
-
// check if this.categoryMapping already has a mapped category with this id
|
145 |
-
var categoryMapForGivenId = jQuery.grep(
|
146 |
-
mo,
|
147 |
-
function( e ) {
|
148 |
-
return e.shopCategoryId === shopCategoryId;
|
149 |
-
}
|
150 |
-
);
|
151 |
-
|
152 |
-
if ( categoryMapForGivenId.length > 0 ) {
|
153 |
-
|
154 |
-
var oldString = categoryMapForGivenId[ 0 ].feedCategories;
|
155 |
-
|
156 |
-
categoryMapForGivenId[ 0 ].feedCategories = tvc_addNewItemToCategoryString(
|
157 |
-
selectedLevel,
|
158 |
-
oldString,
|
159 |
-
category,
|
160 |
-
' > '
|
161 |
-
);
|
162 |
-
} else { // this category map does not exist so add a new one to the array
|
163 |
-
|
164 |
-
var catMap = new CategoryMap();
|
165 |
-
|
166 |
-
catMap.shopCategoryId = shopCategoryId;
|
167 |
-
catMap.feedCategories = category;
|
168 |
-
|
169 |
-
mo.push( catMap );
|
170 |
-
}
|
171 |
-
|
172 |
-
this.categoryMapping = JSON.stringify( mo );
|
173 |
-
}
|
174 |
-
|
175 |
-
function changeCustomCategoryMap( shopCategoryId, feedCategories ) {
|
176 |
-
|
177 |
-
var mo = JSON.parse( this.categoryMapping );
|
178 |
-
|
179 |
-
// check if this.categoryMapping already has a maped category with this id
|
180 |
-
var categoryMapForGivenId = jQuery.grep(
|
181 |
-
mo,
|
182 |
-
function( e ) {
|
183 |
-
return e.shopCategoryId === shopCategoryId;
|
184 |
-
}
|
185 |
-
);
|
186 |
-
|
187 |
-
if ( categoryMapForGivenId.length > 0 ) {
|
188 |
-
|
189 |
-
categoryMapForGivenId[ 0 ].feedCategories = feedCategories;
|
190 |
-
} else { // this category map does not exist so add a new one to the array
|
191 |
-
|
192 |
-
var catMap = new CategoryMap();
|
193 |
-
|
194 |
-
catMap.shopCategoryId = shopCategoryId;
|
195 |
-
catMap.feedCategories = feedCategories;
|
196 |
-
|
197 |
-
mo.push( catMap );
|
198 |
-
}
|
199 |
-
|
200 |
-
this.categoryMapping = JSON.stringify( mo );
|
201 |
-
}
|
202 |
-
|
203 |
-
function changeIncludeVariationsValue( selectedValue ) {
|
204 |
-
|
205 |
-
this.includeVariations = selectedValue ? '1' : '0';
|
206 |
-
}
|
207 |
-
|
208 |
-
function changeAggregatorValue( selectedValue ) {
|
209 |
-
|
210 |
-
this.isAggregator = selectedValue ? '1' : '0';
|
211 |
-
}
|
212 |
-
|
213 |
-
function activateCategoryMap( shopCategoryId, channelUsesOwnCategory ) {
|
214 |
-
|
215 |
-
// get the currently stored mapping
|
216 |
-
var mo = this.categoryMapping.length > 0 ? JSON.parse( this.categoryMapping ) : [];
|
217 |
-
|
218 |
-
// test if this.categoryMapping already has a mapped category with this id
|
219 |
-
var categoryMapForGivenId = jQuery.grep(
|
220 |
-
mo,
|
221 |
-
function( e ) {
|
222 |
-
return e.shopCategoryId === shopCategoryId.toString();
|
223 |
-
}
|
224 |
-
);
|
225 |
-
|
226 |
-
// only store this mapping if it has not been registered already to this id
|
227 |
-
if ( categoryMapForGivenId.length < 1 ) {
|
228 |
-
|
229 |
-
var catMap = new CategoryMap();
|
230 |
-
|
231 |
-
catMap.shopCategoryId = shopCategoryId.toString();
|
232 |
-
catMap.feedCategories = channelUsesOwnCategory ? 'wp_ownCategory' : 'wp_mainCategory';
|
233 |
-
|
234 |
-
mo.push( catMap );
|
235 |
-
|
236 |
-
this.categoryMapping = JSON.stringify( mo );
|
237 |
-
}
|
238 |
-
}
|
239 |
-
|
240 |
-
function deactivateCategoryMap( shopCategoryId ) {
|
241 |
-
|
242 |
-
var mo = this.categoryMapping.length > 0 ? JSON.parse( this.categoryMapping ) : [];
|
243 |
-
|
244 |
-
if ( mo.length > 1 ) {
|
245 |
-
|
246 |
-
var index = tvc_arrayObjectIndexOf(
|
247 |
-
mo,
|
248 |
-
shopCategoryId.toString(),
|
249 |
-
'shopCategoryId'
|
250 |
-
);
|
251 |
-
|
252 |
-
mo.splice( index, 1 ); // remove the category object
|
253 |
-
|
254 |
-
this.categoryMapping = JSON.stringify( mo );
|
255 |
-
} else {
|
256 |
-
|
257 |
-
this.categoryMapping = [];
|
258 |
-
}
|
259 |
-
}
|
260 |
-
|
261 |
-
function getAttributeId( name ) {
|
262 |
-
|
263 |
-
var attributeId = false;
|
264 |
-
|
265 |
-
for ( var i = 0; i < this.attributes.length; i ++ ) {
|
266 |
-
|
267 |
-
if ( this.attributes[ i ][ 'fieldName' ] === name ) {
|
268 |
-
|
269 |
-
attributeId = this.attributes[ i ][ 'rowId' ];
|
270 |
-
break;
|
271 |
-
}
|
272 |
-
}
|
273 |
-
|
274 |
-
if ( attributeId === false ) { // seems like a custom field
|
275 |
-
|
276 |
-
attributeId = this.attributes.length;
|
277 |
-
}
|
278 |
-
|
279 |
-
return attributeId;
|
280 |
-
}
|
281 |
-
|
282 |
-
function setAttributesStaticValue(
|
283 |
-
attributeId, level, combinationLevel, newValue ) {
|
284 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
285 |
-
|
286 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeSourceValue( level, currentValue, 'static', newValue );
|
287 |
-
|
288 |
-
this.attributes[ attributeId ][ 'isActive' ] = ! ! this.attributes[ attributeId ][ 'value' ];
|
289 |
-
}
|
290 |
-
|
291 |
-
function setAttributesSourceValue( attributeId, sourceLevel, newSource ) {
|
292 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
293 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeSourceValue(
|
294 |
-
sourceLevel,
|
295 |
-
currentValue,
|
296 |
-
'source',
|
297 |
-
newSource
|
298 |
-
);
|
299 |
-
}
|
300 |
-
|
301 |
-
function setAlternativeAttributesSourceValue( attributeId, level, value ) {
|
302 |
-
|
303 |
-
var attributeValueObject = {};
|
304 |
-
var attributeArray = [];
|
305 |
-
|
306 |
-
if ( this.attributes[ attributeId ][ 'value' ] ) {
|
307 |
-
attributeValueObject = JSON.parse(
|
308 |
-
this.attributes[ attributeId ][ 'value' ]
|
309 |
-
);
|
310 |
-
|
311 |
-
attributeValueObject.a = addOrRemoveValueInValueString(
|
312 |
-
attributeValueObject.a,
|
313 |
-
value,
|
314 |
-
level,
|
315 |
-
'add'
|
316 |
-
);
|
317 |
-
} else {
|
318 |
-
|
319 |
-
var o = {};
|
320 |
-
o[ 1 ] = value;
|
321 |
-
|
322 |
-
attributeArray.push( o );
|
323 |
-
attributeValueObject.a = attributeArray;
|
324 |
-
}
|
325 |
-
|
326 |
-
this.attributes[ attributeId ][ 'value' ] = JSON.stringify( attributeValueObject );
|
327 |
-
}
|
328 |
-
|
329 |
-
function setAttributesCombinedOutputValue(
|
330 |
-
attributeId, sourceLevel, newCombinedValue ) {
|
331 |
-
|
332 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
333 |
-
console.log( currentValue );
|
334 |
-
|
335 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeCombinedValue(
|
336 |
-
sourceLevel,
|
337 |
-
currentValue,
|
338 |
-
newCombinedValue
|
339 |
-
);
|
340 |
-
}
|
341 |
-
|
342 |
-
function getAttributesCombinedOutputValue( attributeId, sourceLevel ) {
|
343 |
-
|
344 |
-
var attributeObject = this.attributes[ attributeId ][ 'value' ] ? JSON.parse( this.attributes[ attributeId ][ 'value' ] ) : {};
|
345 |
-
|
346 |
-
if ( attributeObject && attributeObject.m && attributeObject.m[ sourceLevel ] && attributeObject.m[ sourceLevel ].s && attributeObject.m[ sourceLevel ].s.f ) {
|
347 |
-
|
348 |
-
return attributeObject.m[ sourceLevel ].s.f;
|
349 |
-
} else {
|
350 |
-
|
351 |
-
return '';
|
352 |
-
}
|
353 |
-
}
|
354 |
-
|
355 |
-
function removeAttributesCombinedOutputValue(
|
356 |
-
attributeId, sourceLevel, combinedLevel ) {
|
357 |
-
|
358 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
359 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_removeCombinedValue(
|
360 |
-
sourceLevel,
|
361 |
-
combinedLevel,
|
362 |
-
currentValue
|
363 |
-
);
|
364 |
-
}
|
365 |
-
|
366 |
-
function countAttributesCombinedFields( attributeId ) {
|
367 |
-
|
368 |
-
if ( this.attributes[ attributeId ][ 'value' ] ) {
|
369 |
-
var attributeValueObject = JSON.parse(
|
370 |
-
this.attributes[ attributeId ][ 'value' ]
|
371 |
-
);
|
372 |
-
|
373 |
-
if ( attributeValueObject.hasOwnProperty( 'f' ) ) {
|
374 |
-
return tvc_countObjectItems( attributeValueObject.f );
|
375 |
-
} else {
|
376 |
-
return 0;
|
377 |
-
}
|
378 |
-
} else {
|
379 |
-
return 0;
|
380 |
-
}
|
381 |
-
}
|
382 |
-
|
383 |
-
function setAttributesCategoryValue( attributeId, newCategory ) {
|
384 |
-
|
385 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
386 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeSourceValue(
|
387 |
-
0,
|
388 |
-
currentValue,
|
389 |
-
'',
|
390 |
-
newCategory
|
391 |
-
);
|
392 |
-
}
|
393 |
-
|
394 |
-
function rstNrQueries( attributeId ) {
|
395 |
-
this.attributes[ attributeId ][ 'nrQueries' ] = 0;
|
396 |
-
}
|
397 |
-
|
398 |
-
function addNrQueries( attributeId ) {
|
399 |
-
var currentNr = this.attributes[ attributeId ][ 'nrQueries' ];
|
400 |
-
this.attributes[ attributeId ][ 'nrQueries' ] = currentNr + 1;
|
401 |
-
}
|
402 |
-
|
403 |
-
function substrNrQueries( attributeId ) {
|
404 |
-
|
405 |
-
var currentNr = this.attributes[ attributeId ][ 'nrQueries' ];
|
406 |
-
if ( currentNr > 0 ) {
|
407 |
-
this.attributes[ attributeId ][ 'nrQueries' ] = currentNr - 1;
|
408 |
-
}
|
409 |
-
}
|
410 |
-
|
411 |
-
function addAttributesChangeValue(
|
412 |
-
attributeId, sourceLevel, valueEditorLevel, value ) {
|
413 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
414 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeValueChange(
|
415 |
-
sourceLevel,
|
416 |
-
valueEditorLevel,
|
417 |
-
value,
|
418 |
-
'add',
|
419 |
-
currentValue
|
420 |
-
);
|
421 |
-
}
|
422 |
-
|
423 |
-
function addAttributesCondition(
|
424 |
-
attributeId, newCondition, sourceLevel, conditionLevel ) {
|
425 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
426 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeConditionValue(
|
427 |
-
sourceLevel,
|
428 |
-
conditionLevel,
|
429 |
-
currentValue,
|
430 |
-
newCondition
|
431 |
-
);
|
432 |
-
}
|
433 |
-
|
434 |
-
function addAttributesValueQuery(
|
435 |
-
attributeId, sourceLevel, queryLevel, queryToAdd ) {
|
436 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
437 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeQueryValue(
|
438 |
-
sourceLevel,
|
439 |
-
queryLevel,
|
440 |
-
currentValue,
|
441 |
-
queryToAdd
|
442 |
-
);
|
443 |
-
}
|
444 |
-
|
445 |
-
function setFeedFilterValue( value ) {
|
446 |
-
this.feedFilter = value;
|
447 |
-
}
|
448 |
-
|
449 |
-
function removeFeedFilterValue( filterLevelToRemove ) {
|
450 |
-
this.feedFilter = removeFeedFilterLevel(
|
451 |
-
this.feedFilter,
|
452 |
-
filterLevelToRemove
|
453 |
-
);
|
454 |
-
}
|
455 |
-
|
456 |
-
function removeAttributesCondition( attributeId, sourceLevel, conditionLevel ) {
|
457 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
458 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_removeConditionValue(
|
459 |
-
sourceLevel,
|
460 |
-
conditionLevel,
|
461 |
-
currentValue
|
462 |
-
);
|
463 |
-
}
|
464 |
-
|
465 |
-
function removeAttributesValueQuery( attributeId, sourceLevel, queryLevel ) {
|
466 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
467 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_removeQueryValue(
|
468 |
-
sourceLevel,
|
469 |
-
queryLevel,
|
470 |
-
currentValue
|
471 |
-
);
|
472 |
-
}
|
473 |
-
|
474 |
-
function removeAttributesEditValue(
|
475 |
-
attributeId, sourceLevel, valueEditorLevel ) {
|
476 |
-
var currentValue = this.attributes[ attributeId ][ 'value' ];
|
477 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_removeEditValuesValue(
|
478 |
-
sourceLevel,
|
479 |
-
valueEditorLevel,
|
480 |
-
currentValue
|
481 |
-
);
|
482 |
-
}
|
483 |
-
|
484 |
-
function removeAlternativeSource( attributeId, level ) {
|
485 |
-
var attributeValueObject = {};
|
486 |
-
if ( this.attributes[ attributeId ][ 'value' ] ) {
|
487 |
-
attributeValueObject = JSON.parse(
|
488 |
-
this.attributes[ attributeId ][ 'value' ]
|
489 |
-
);
|
490 |
-
|
491 |
-
attributeValueObject.a = addOrRemoveValueInValueString(
|
492 |
-
attributeValueObject.a,
|
493 |
-
'',
|
494 |
-
level,
|
495 |
-
'remove'
|
496 |
-
);
|
497 |
-
|
498 |
-
if ( ! attributeValueObject.a ) {
|
499 |
-
delete attributeValueObject.a;
|
500 |
-
}
|
501 |
-
|
502 |
-
this.attributes[ attributeId ][ 'value' ] = JSON.stringify(
|
503 |
-
attributeValueObject
|
504 |
-
);
|
505 |
-
}
|
506 |
-
}
|
507 |
-
|
508 |
-
/**
|
509 |
-
* Gets the queries from a specific attribute
|
510 |
-
*
|
511 |
-
* @param {int} attributeId
|
512 |
-
* @param {int} sourceLevel
|
513 |
-
* @returns {array} containing the queries
|
514 |
-
*/
|
515 |
-
function getAttributesQueries( attributeId, sourceLevel ) {
|
516 |
-
|
517 |
-
var attributeString = this.attributes[ attributeId ][ 'value' ];
|
518 |
-
var queries = {};
|
519 |
-
if ( attributeString ) {
|
520 |
-
var o = JSON.parse( attributeString );
|
521 |
-
if ( o && o.hasOwnProperty( 'm' ) && o.m[ sourceLevel ] && o.m[ sourceLevel ].hasOwnProperty( 'c' ) && o.m[ sourceLevel ].c.length > 0 ) {
|
522 |
-
queries = o.m[ sourceLevel ].c;
|
523 |
-
}
|
524 |
-
}
|
525 |
-
|
526 |
-
return queries;
|
527 |
-
}
|
528 |
-
|
529 |
-
function getAttributesValueQueries( attributeId, sourceLevel ) {
|
530 |
-
|
531 |
-
var attributeString = this.attributes[ attributeId ][ 'value' ];
|
532 |
-
var queries = {};
|
533 |
-
|
534 |
-
if ( attributeString ) {
|
535 |
-
var attributeObject = JSON.parse( attributeString );
|
536 |
-
if ( attributeObject && attributeObject.v && attributeObject.v[ sourceLevel ] && attributeObject.v[ sourceLevel ].hasOwnProperty( 'q' ) && attributeObject.v[ sourceLevel ].q.length > 0 ) {
|
537 |
-
queries = attributeObject.v[ sourceLevel ].q;
|
538 |
-
}
|
539 |
-
}
|
540 |
-
return queries;
|
541 |
-
}
|
542 |
-
|
543 |
-
function getAttributesValues( attributeId ) {
|
544 |
-
|
545 |
-
var attributeString = this.attributes[ attributeId ][ 'value' ];
|
546 |
-
var values = {};
|
547 |
-
if ( attributeString ) {
|
548 |
-
var attributeObject = JSON.parse( attributeString );
|
549 |
-
if ( attributeObject && 'v' in attributeObject && attributeObject.v.length > 0 ) {
|
550 |
-
values = attributeObject.v;
|
551 |
-
}
|
552 |
-
}
|
553 |
-
return values;
|
554 |
-
}
|
555 |
-
|
556 |
-
function getFeedFilterValue( feedId ) {
|
557 |
-
|
558 |
-
}
|
559 |
-
|
560 |
-
function getAlternativeSources( attributeId ) {
|
561 |
-
|
562 |
-
var attributeString = this.attributes[ attributeId ][ 'value' ];
|
563 |
-
var values = {};
|
564 |
-
|
565 |
-
if ( attributeString ) {
|
566 |
-
|
567 |
-
var attributeObject = JSON.parse( attributeString );
|
568 |
-
|
569 |
-
if ( attributeObject && 'a' in attributeObject && attributeObject.a.length > 0 ) {
|
570 |
-
|
571 |
-
values = attributeObject.a;
|
572 |
-
}
|
573 |
-
}
|
574 |
-
|
575 |
-
return values;
|
576 |
-
}
|
577 |
-
|
578 |
-
/**
|
579 |
-
* Returns an object filled with all the required data for a specific feed row
|
580 |
-
*
|
581 |
-
* @param {string} feedId
|
582 |
-
* @returns {object} containing the required data
|
583 |
-
*/
|
584 |
-
function getSourceData( feedId ) {
|
585 |
-
|
586 |
-
var data = {};
|
587 |
-
|
588 |
-
// add the basic data to the object
|
589 |
-
data.rowId = feedId;
|
590 |
-
data.fieldName = this.attributes[ feedId ][ 'fieldName' ];
|
591 |
-
data.advisedSource = this.attributes[ feedId ][ 'advisedSource' ];
|
592 |
-
|
593 |
-
// get the attribute data
|
594 |
-
var attributeString = this.attributes[ feedId ][ 'value' ];
|
595 |
-
|
596 |
-
// and put the attribute data in the object
|
597 |
-
if ( attributeString ) {
|
598 |
-
|
599 |
-
var attributeDataObject = JSON.parse( attributeString );
|
600 |
-
|
601 |
-
data.mapping = attributeDataObject && 'm' in attributeDataObject ? attributeDataObject.m : [];
|
602 |
-
data.changeValues = attributeDataObject && 'v' in attributeDataObject ? attributeDataObject.v : [];
|
603 |
-
data.customCondition = ! ! (
|
604 |
-
attributeDataObject && 't' in attributeDataObject
|
605 |
-
);
|
606 |
-
} else {
|
607 |
-
|
608 |
-
data.mapping = [];
|
609 |
-
data.changeValues = [];
|
610 |
-
data.customCondition = false;
|
611 |
-
}
|
612 |
-
|
613 |
-
return data;
|
614 |
-
}
|
615 |
-
|
616 |
-
function getAttributesSources( attributeId ) {
|
617 |
-
|
618 |
-
var attributeString = this.attributes[ attributeId ][ 'value' ];
|
619 |
-
var source = {};
|
620 |
-
|
621 |
-
if ( attributeString ) {
|
622 |
-
|
623 |
-
var attributeObject = JSON.parse( attributeString );
|
624 |
-
|
625 |
-
if ( attributeObject && 's' in attributeObject ) {
|
626 |
-
|
627 |
-
source = attributeObject.s;
|
628 |
-
}
|
629 |
-
}
|
630 |
-
|
631 |
-
return source;
|
632 |
-
}
|
633 |
-
|
634 |
-
function addOrRemoveValueInValueString( values, value, level, add ) {
|
635 |
-
|
636 |
-
var valueArray = values ? values : [];
|
637 |
-
|
638 |
-
if ( add === 'add' ) {
|
639 |
-
|
640 |
-
var o = {};
|
641 |
-
var queriesMemory = '';
|
642 |
-
o[ level ] = value;
|
643 |
-
|
644 |
-
// if the value also has a query than store it first
|
645 |
-
if ( valueArray[ level - 1 ] && 'q' in valueArray[ level - 1 ] ) {
|
646 |
-
|
647 |
-
queriesMemory = valueArray[ level - 1 ][ 'q' ];
|
648 |
-
}
|
649 |
-
|
650 |
-
// remove values with the same key
|
651 |
-
if ( level in o ) {
|
652 |
-
|
653 |
-
valueArray.splice( level - 1, 1 );
|
654 |
-
}
|
655 |
-
|
656 |
-
// if there were queries stored, then put them back in to the new value
|
657 |
-
if ( queriesMemory ) {
|
658 |
-
o[ 'q' ] = queriesMemory;
|
659 |
-
}
|
660 |
-
|
661 |
-
valueArray.push( o );
|
662 |
-
} else { // remove
|
663 |
-
|
664 |
-
valueArray.splice( level - 1, 1 );
|
665 |
-
|
666 |
-
// re-sort the queries
|
667 |
-
valueArray = tvc_resortObject( valueArray );
|
668 |
-
}
|
669 |
-
|
670 |
-
if ( tvc_countObjectItems( valueArray ) > 0 ) {
|
671 |
-
|
672 |
-
return valueArray;
|
673 |
-
} else {
|
674 |
-
|
675 |
-
return '';
|
676 |
-
}
|
677 |
-
}
|
678 |
-
|
679 |
-
function clearAttributesSourceValue( attributeId, sourceLevel ) {
|
680 |
-
|
681 |
-
if ( this.attributes[ attributeId ][ 'value' ] ) {
|
682 |
-
|
683 |
-
this.attributes[ attributeId ][ 'value' ] = tvc_storeSourceValue(
|
684 |
-
sourceLevel,
|
685 |
-
this.attributes[ attributeId ][ 'value' ],
|
686 |
-
'clear',
|
687 |
-
''
|
688 |
-
);
|
689 |
-
} else {
|
690 |
-
|
691 |
-
this.attributes[ attributeId ][ 'value' ] = '';
|
692 |
-
}
|
693 |
-
}
|
694 |
-
|
695 |
-
function setFeedCustomCategory( rowId, category ) {
|
696 |
-
|
697 |
-
console.log( this.attributes );
|
698 |
-
console.log( category );
|
699 |
-
|
700 |
-
// set the main category
|
701 |
-
this.mainCategory = category;
|
702 |
-
|
703 |
-
var id = rowId ? rowId : getCustomCategoryAttributeId( this.attributes, category );
|
704 |
-
|
705 |
-
// when a output is initialised as category, then set the category in the correct row
|
706 |
-
if ( id ) {
|
707 |
-
|
708 |
-
console.log( id );
|
709 |
-
|
710 |
-
var o = this.attributes[ id ][ 'value' ] ? JSON.parse( this.attributes[ id ][ 'value' ] ) : {};
|
711 |
-
|
712 |
-
o.t = category;
|
713 |
-
|
714 |
-
this.attributes[ id ][ 'value' ] = JSON.stringify( o );
|
715 |
-
}
|
716 |
-
}
|
717 |
-
|
718 |
-
function changeCountry( selectedCountry ) {
|
719 |
-
|
720 |
-
this.country = selectedCountry;
|
721 |
-
}
|
722 |
-
|
723 |
-
function getCustomCategoryAttributeId( attr ) {
|
724 |
-
|
725 |
-
for ( var i = 0; i < attr.length; i ++ ) {
|
726 |
-
|
727 |
-
console.log( attr[ i ] );
|
728 |
-
|
729 |
-
var catObject = attr[ i ][ 'value' ] ? JSON.parse( attr[ i ][ 'value' ] ) : {};
|
730 |
-
|
731 |
-
console.log( catObject );
|
732 |
-
|
733 |
-
if ( catObject.hasOwnProperty( 't' ) ) {
|
734 |
-
|
735 |
-
return i;
|
736 |
-
}
|
737 |
-
}
|
738 |
-
}
|
739 |
-
|
740 |
-
function setCategories( level, category, channel ) {
|
741 |
-
if ( this.attributes[ 3 ] !== undefined ) {
|
742 |
-
var categoryAttributeObject = this.attributes[ 3 ][ 'value' ] ? JSON.parse( this.attributes[ 3 ][ 'value' ] ) : {};
|
743 |
-
var categoryDelimiter = tvc_category_separator( channel );
|
744 |
-
|
745 |
-
var categoryString = this.mainCategory;
|
746 |
-
var categoryLevel = this.attributes[ 3 ][ 'value' ] !== undefined ? categoryString.split( categoryDelimiter ).length : 0;
|
747 |
-
|
748 |
-
var selectedLevel = level.match( /(\d+)$/ )[ 0 ];
|
749 |
-
|
750 |
-
if ( selectedLevel === '0' ) {
|
751 |
-
this.mainCategory = category;
|
752 |
-
this.attributes[ 3 ][ 'value' ] = '{"t":"' + category + '"}';
|
753 |
-
} else {
|
754 |
-
if ( categoryLevel <= selectedLevel ) {
|
755 |
-
this.mainCategory += categoryDelimiter + category;
|
756 |
-
this.attributes[ 3 ][ 'value' ] = '{"t":"' + categoryAttributeObject.t + categoryDelimiter + category + '"}';
|
757 |
-
} else {
|
758 |
-
var pos = 0;
|
759 |
-
|
760 |
-
for ( var i = 0; i < selectedLevel; i ++ ) {
|
761 |
-
pos = categoryString.indexOf( categoryDelimiter, pos + 1 );
|
762 |
-
}
|
763 |
-
|
764 |
-
categoryString = categoryString.substring( 0, pos );
|
765 |
-
|
766 |
-
if ( category !== '0' ) {
|
767 |
-
this.mainCategory = categoryString + categoryDelimiter + category;
|
768 |
-
this.attributes[ 3 ][ 'value' ] = '{"t":"' + categoryString + categoryDelimiter + category + '"}';
|
769 |
-
} else {
|
770 |
-
this.mainCategory = categoryString;
|
771 |
-
this.attributes[ 3 ][ 'value' ] = '{"t":"' + categoryString + '"}';
|
772 |
-
}
|
773 |
-
}
|
774 |
-
}
|
775 |
-
}
|
776 |
-
}
|
777 |
-
|
778 |
-
function setSchedule( days, hours, minutes, frequency ) {
|
779 |
-
|
780 |
-
this.updateSchedule = days + ':' + hours + ':' + minutes + ':' + frequency;
|
781 |
-
}
|
782 |
-
|
783 |
-
function activateFeedsAttribute( attributeId ) {
|
784 |
-
|
785 |
-
this.attributes[ attributeId ][ 'isActive' ] = true;
|
786 |
-
}
|
787 |
-
|
788 |
-
function deactivateFeedsAttribute( attributeId ) {
|
789 |
-
|
790 |
-
if ( this.attributes[ attributeId ][ 'fieldLevel' ] !== '1' ) {
|
791 |
-
|
792 |
-
var attributeDataObject = this.attributes[ attributeId ][ 'value' ] ? JSON.parse( this.attributes[ attributeId ][ 'value' ] ) : {};
|
793 |
-
this.attributes[ attributeId ][ 'isActive' ] = false;
|
794 |
-
|
795 |
-
// clear the meta value but only if it not contains the category string
|
796 |
-
if ( attributeDataObject && ! 't' in attributeDataObject ) {
|
797 |
-
this.attributes[ attributeId ][ 'value' ] = '';
|
798 |
-
}
|
799 |
-
} else {
|
800 |
-
|
801 |
-
this.attributes[ attributeId ][ 'isActive' ] = true; // any required attribute should always stay active
|
802 |
-
}
|
803 |
-
}
|
804 |
-
|
805 |
-
function checkCustomName( name ) {
|
806 |
-
|
807 |
-
var result = false;
|
808 |
-
|
809 |
-
for ( var i = 0; i < this.attributes.length; i ++ ) {
|
810 |
-
|
811 |
-
if ( this.attributes[ i ][ 'fieldName' ] === name ) {
|
812 |
-
result = true;
|
813 |
-
}
|
814 |
-
}
|
815 |
-
|
816 |
-
return result;
|
817 |
-
}
|
818 |
-
|
819 |
-
function getFeedType() {
|
820 |
-
return this.feedType;
|
821 |
-
}
|
822 |
-
|
823 |
-
function removeAttribute( attributeId ) {
|
824 |
-
|
825 |
-
this.attributes.splice( attributeId, 1 );
|
826 |
-
}
|
827 |
-
|
828 |
-
function cleanUnusedAttributes() {
|
829 |
-
|
830 |
-
if ( this.attributes.length > 0 ) {
|
831 |
-
|
832 |
-
for ( var i = 0; i < this.attributes.length; i ++ ) {
|
833 |
-
|
834 |
-
if ( this.attributes[ i ][ 'isActive' ] !== true ) {
|
835 |
-
|
836 |
-
this.attributes.splice( i, 1 );
|
837 |
-
i --; // reset i for the removed attribute
|
838 |
-
} else if ( this.attributes[ i ][ 'advisedSource' ] === undefined && getSourceString( this.attributes[ i ][ 'value' ] ) === '' ) {
|
839 |
-
|
840 |
-
this.attributes.splice( i, 1 );
|
841 |
-
i --; // reset i for the removed attribute
|
842 |
-
}
|
843 |
-
}
|
844 |
-
}
|
845 |
-
}
|
846 |
-
|
847 |
-
function clearAttributes() {
|
848 |
-
this.attributes = [];
|
849 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/application/js/tvc_object-feed.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
function Feed(e,n,g,d,j,k,o,c,a,f,i,b,m,q,p,h,l){this.feedId=e;this.title=n;this.mainCategory=k;this.categoryMapping=o;this.includeVariations=g;this.isAggregator=d;this.feedTitle=b;this.feedDescription=m;this.url=c;this.dataSource=a;this.channel=j;this.country=j!=="3"?f:"NL";this.language=i;this.status=h;this.updateSchedule=q;this.feedFilter=p;this.attributes=[];this.feedType=l;this.addAttribute=addAttributeToFeed;this.getAttributeIdByName=getAttributeId;this.activateAttribute=activateFeedsAttribute;this.checkIfCustomNameExists=checkCustomName;this.countCombinedFields=countAttributesCombinedFields;this.deactivateAttribute=deactivateFeedsAttribute;this.deactivateCategory=deactivateCategoryMap;this.activateCategory=activateCategoryMap;this.setStaticAttributeValue=setAttributesStaticValue;this.setSourceValue=setAttributesSourceValue;this.setAlternativeSourceValue=setAlternativeAttributesSourceValue;this.setCombinedOutputValue=setAttributesCombinedOutputValue;this.setCategoryValue=setAttributesCategoryValue;this.setFeedFilter=setFeedFilterValue;this.mapCategory=mapACategory;this.changeCustomFeedCategoryMap=changeCustomCategoryMap;this.changeIncludeVariations=changeIncludeVariationsValue;this.changeAggregator=changeAggregatorValue;this.resetNrQueries=rstNrQueries;this.incrNrQueries=addNrQueries;this.decrNrQueries=substrNrQueries;this.addConditionValue=addAttributesCondition;this.addValueQueryValue=addAttributesValueQuery;this.removeAttribute=removeAttributeFromFeed;this.removeValueConditionValue=removeAttributesCondition;this.removeValueQueryValue=removeAttributesValueQuery;this.removeAlternativeSourceValue=removeAlternativeSource;this.removeCombinedOutputValue=removeAttributesCombinedOutputValue;this.removeEditValueValue=removeAttributesEditValue;this.removeFeedFilter=removeFeedFilterValue;this.getAttributesQueriesObject=getAttributesQueries;this.getCombinedOutputValue=getAttributesCombinedOutputValue;this.getValueQueryValue=getAttributesValueQueries;this.getAttributesSourceObject=getAttributesSources;this.getSourceObject=getSourceData;this.getAlternativeSourcesObject=getAlternativeSources;this.getAttributesValueObject=getAttributesValues;this.getFeedFilter=getFeedFilterValue;this.getFeedType=getFeedType;this.setMainCategory=setCategories;this.setUpdateSchedule=setSchedule;this.setCustomCategory=setFeedCustomCategory;this.setCountry=changeCountry;this.clearSourceValue=clearAttributesSourceValue;this.cleanAttributes=cleanUnusedAttributes;this.clearAllAttributes=clearAttributes;this.addChangeValue=addAttributesChangeValue}function FeedAttribute(e,g,h,f,b,i,a,c,d){this.rowId=e;this.fieldName=g;this.advisedSource=h;this.value=f;this.fieldLevel=b;this.isActive=i;this.nrQueries=a;this.nrValueEdits=c;this.nrValueConditions=d}function CategoryMap(b,a){this.shopCategoryId=b;this.feedCategories=a}function addAttributeToFeed(e,h,i,g,b,j,d,c,f){var a=new FeedAttribute(e,h,i,g,b,j,d,c,f);this.attributes.push(a)}function removeAttributeFromFeed(b){for(var a=0;a<this.attributes.length;a++){if(this.attributes[a].rowId===b){this.attributes.splice(a,1)}}}function mapACategory(i,a){var h=i.match(/(\d+)$/)[0];var f=i.replace("_"+h,"");var b=f.match(/(\d+)$/)[0];var c=JSON.parse(this.categoryMapping);var d=jQuery.grep(c,function(j){return j.shopCategoryId===b});if(d.length>0){var e=d[0].feedCategories;d[0].feedCategories=tvc_addNewItemToCategoryString(h,e,a," > ")}else{var g=new CategoryMap();g.shopCategoryId=b;g.feedCategories=a;c.push(g)}this.categoryMapping=JSON.stringify(c)}function changeCustomCategoryMap(c,b){var d=JSON.parse(this.categoryMapping);var a=jQuery.grep(d,function(f){return f.shopCategoryId===c});if(a.length>0){a[0].feedCategories=b}else{var e=new CategoryMap();e.shopCategoryId=c;e.feedCategories=b;d.push(e)}this.categoryMapping=JSON.stringify(d)}function changeIncludeVariationsValue(a){this.includeVariations=a?"1":"0"}function changeAggregatorValue(a){this.isAggregator=a?"1":"0"}function activateCategoryMap(c,b){var d=this.categoryMapping.length>0?JSON.parse(this.categoryMapping):[];var a=jQuery.grep(d,function(f){return f.shopCategoryId===c.toString()});if(a.length<1){var e=new CategoryMap();e.shopCategoryId=c.toString();e.feedCategories=b?"wp_ownCategory":"wp_mainCategory";d.push(e);this.categoryMapping=JSON.stringify(d)}}function deactivateCategoryMap(b){var c=this.categoryMapping.length>0?JSON.parse(this.categoryMapping):[];if(c.length>1){var a=tvc_arrayObjectIndexOf(c,b.toString(),"shopCategoryId");c.splice(a,1);this.categoryMapping=JSON.stringify(c)}else{this.categoryMapping=[]}}function getAttributeId(a){var c=false;for(var b=0;b<this.attributes.length;b++){if(this.attributes[b]["fieldName"]===a){c=this.attributes[b]["rowId"];break}}if(c===false){c=this.attributes.length}return c}function setAttributesStaticValue(b,e,d,c){var a=this.attributes[b]["value"];this.attributes[b]["value"]=tvc_storeSourceValue(e,a,"static",c);this.attributes[b]["isActive"]=!!this.attributes[b]["value"]}function setAttributesSourceValue(b,c,d){var a=this.attributes[b]["value"];this.attributes[b]["value"]=tvc_storeSourceValue(c,a,"source",d)}function setAlternativeAttributesSourceValue(b,f,c){var a={};var d=[];if(this.attributes[b]["value"]){a=JSON.parse(this.attributes[b]["value"]);a.a=addOrRemoveValueInValueString(a.a,c,f,"add")}else{var e={};e[1]=c;d.push(e);a.a=d}this.attributes[b]["value"]=JSON.stringify(a)}function setAttributesCombinedOutputValue(b,c,d){var a=this.attributes[b]["value"];console.log(a);this.attributes[b]["value"]=tvc_storeCombinedValue(c,a,d)}function getAttributesCombinedOutputValue(a,b){var c=this.attributes[a]["value"]?JSON.parse(this.attributes[a]["value"]):{};if(c&&c.m&&c.m[b]&&c.m[b].s&&c.m[b].s.f){return c.m[b].s.f}else{return""}}function removeAttributesCombinedOutputValue(c,d,b){var a=this.attributes[c]["value"];this.attributes[c]["value"]=tvc_removeCombinedValue(d,b,a)}function countAttributesCombinedFields(b){if(this.attributes[b]["value"]){var a=JSON.parse(this.attributes[b]["value"]);if(a.hasOwnProperty("f")){return tvc_countObjectItems(a.f)}else{return 0}}else{return 0}}function setAttributesCategoryValue(b,c){var a=this.attributes[b]["value"];this.attributes[b]["value"]=tvc_storeSourceValue(0,a,"",c)}function rstNrQueries(a){this.attributes[a]["nrQueries"]=0}function addNrQueries(a){var b=this.attributes[a]["nrQueries"];this.attributes[a]["nrQueries"]=b+1}function substrNrQueries(a){var b=this.attributes[a]["nrQueries"];if(b>0){this.attributes[a]["nrQueries"]=b-1}}function addAttributesChangeValue(b,d,e,c){var a=this.attributes[b]["value"];this.attributes[b]["value"]=tvc_storeValueChange(d,e,c,"add",a)}function addAttributesCondition(d,c,e,a){var b=this.attributes[d]["value"];this.attributes[d]["value"]=tvc_storeConditionValue(e,a,b,c)}function addAttributesValueQuery(d,e,c,a){var b=this.attributes[d]["value"];this.attributes[d]["value"]=tvc_storeQueryValue(e,c,b,a)}function setFeedFilterValue(a){this.feedFilter=a}function removeFeedFilterValue(a){this.feedFilter=removeFeedFilterLevel(this.feedFilter,a)}function removeAttributesCondition(c,d,a){var b=this.attributes[c]["value"];this.attributes[c]["value"]=tvc_removeConditionValue(d,a,b)}function removeAttributesValueQuery(c,d,b){var a=this.attributes[c]["value"];this.attributes[c]["value"]=tvc_removeQueryValue(d,b,a)}function removeAttributesEditValue(b,c,d){var a=this.attributes[b]["value"];this.attributes[b]["value"]=tvc_removeEditValuesValue(c,d,a)}function removeAlternativeSource(b,c){var a={};if(this.attributes[b]["value"]){a=JSON.parse(this.attributes[b]["value"]);a.a=addOrRemoveValueInValueString(a.a,"",c,"remove");if(!a.a){delete a.a}this.attributes[b]["value"]=JSON.stringify(a)}}function getAttributesQueries(b,c){var e=this.attributes[b]["value"];var a={};if(e){var d=JSON.parse(e);if(d&&d.hasOwnProperty("m")&&d.m[c]&&d.m[c].hasOwnProperty("c")&&d.m[c].c.length>0){a=d.m[c].c}}return a}function getAttributesValueQueries(b,c){var e=this.attributes[b]["value"];var a={};if(e){var d=JSON.parse(e);if(d&&d.v&&d.v[c]&&d.v[c].hasOwnProperty("q")&&d.v[c].q.length>0){a=d.v[c].q}}return a}function getAttributesValues(b){var d=this.attributes[b]["value"];var a={};if(d){var c=JSON.parse(d);if(c&&"v" in c&&c.v.length>0){a=c.v}}return a}function getFeedFilterValue(a){}function getAlternativeSources(b){var d=this.attributes[b]["value"];var a={};if(d){var c=JSON.parse(d);if(c&&"a" in c&&c.a.length>0){a=c.a}}return a}function getSourceData(a){var c={};c.rowId=a;c.fieldName=this.attributes[a]["fieldName"];c.advisedSource=this.attributes[a]["advisedSource"];var d=this.attributes[a]["value"];if(d){var b=JSON.parse(d);c.mapping=b&&"m" in b?b.m:[];c.changeValues=b&&"v" in b?b.v:[];c.customCondition=!!(b&&"t" in b)}else{c.mapping=[];c.changeValues=[];c.customCondition=false}return c}function getAttributesSources(a){var d=this.attributes[a]["value"];var b={};if(d){var c=JSON.parse(d);if(c&&"s" in c){b=c.s}}return b}function addOrRemoveValueInValueString(b,d,g,e){var c=b?b:[];if(e==="add"){var f={};var a="";f[g]=d;if(c[g-1]&&"q" in c[g-1]){a=c[g-1]["q"]}if(g in f){c.splice(g-1,1)}if(a){f.q=a}c.push(f)}else{c.splice(g-1,1);c=tvc_resortObject(c)}if(tvc_countObjectItems(c)>0){return c}else{return""}}function clearAttributesSourceValue(a,b){if(this.attributes[a]["value"]){this.attributes[a]["value"]=tvc_storeSourceValue(b,this.attributes[a]["value"],"clear","")}else{this.attributes[a]["value"]=""}}function setFeedCustomCategory(b,a){console.log(this.attributes);console.log(a);this.mainCategory=a;var d=b?b:getCustomCategoryAttributeId(this.attributes,a);if(d){console.log(d);var c=this.attributes[d]["value"]?JSON.parse(this.attributes[d]["value"]):{};c.t=a;this.attributes[d]["value"]=JSON.stringify(c)}}function changeCountry(a){this.country=a}function getCustomCategoryAttributeId(a){for(var b=0;b<a.length;b++){console.log(a[b]);var c=a[b]["value"]?JSON.parse(a[b]["value"]):{};console.log(c);if(c.hasOwnProperty("t")){return b}}}function setCategories(a,b,e){if(this.attributes[3]!==undefined){var f=this.attributes[3]["value"]?JSON.parse(this.attributes[3]["value"]):{};var k=tvc_category_separator(e);var h=this.mainCategory;var c=this.attributes[3]["value"]!==undefined?h.split(k).length:0;var j=a.match(/(\d+)$/)[0];if(j==="0"){this.mainCategory=b;this.attributes[3]["value"]='{"t":"'+b+'"}'}else{if(c<=j){this.mainCategory+=k+b;this.attributes[3]["value"]='{"t":"'+f.t+k+b+'"}'}else{var g=0;for(var d=0;d<j;d++){g=h.indexOf(k,g+1)}h=h.substring(0,g);if(b!=="0"){this.mainCategory=h+k+b;this.attributes[3]["value"]='{"t":"'+h+k+b+'"}'}else{this.mainCategory=h;this.attributes[3]["value"]='{"t":"'+h+'"}'}}}}}function setSchedule(d,a,b,c){this.updateSchedule=d+":"+a+":"+b+":"+c}function activateFeedsAttribute(a){this.attributes[a]["isActive"]=true}function deactivateFeedsAttribute(a){if(this.attributes[a]["fieldLevel"]!=="1"){var b=this.attributes[a]["value"]?JSON.parse(this.attributes[a]["value"]):{};this.attributes[a]["isActive"]=false;if(b&&!"t" in b){this.attributes[a]["value"]=""}}else{this.attributes[a]["isActive"]=true}}function checkCustomName(b){var a=false;for(var c=0;c<this.attributes.length;c++){if(this.attributes[c]["fieldName"]===b){a=true}}return a}function getFeedType(){return this.feedType}function removeAttribute(a){this.attributes.splice(a,1)}function cleanUnusedAttributes(){if(this.attributes.length>0){for(var a=0;a<this.attributes.length;a++){if(this.attributes[a]["isActive"]!==true){this.attributes.splice(a,1);a--}else{if(this.attributes[a]["advisedSource"]===undefined&&getSourceString(this.attributes[a]["value"])===""){this.attributes.splice(a,1);a--}}}}}function clearAttributes(){this.attributes=[]};
|
|
includes/class-enhanced-ecommerce-google-analytics.php
CHANGED
@@ -111,60 +111,19 @@ class Enhanced_Ecommerce_Google_Analytics {
|
|
111 |
*/
|
112 |
require_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-enhanced-ecommerce-google-analytics-i18n.php';
|
113 |
// Feed Manager Files
|
114 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-admin-page.php';
|
115 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/tvc-admin-menu-functions.php';
|
116 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/tvc-admin-functions.php';
|
117 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/setup/class-tvc-database-management.php';
|
118 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/setup/class-tvc-folders.php';
|
119 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/setup/class-tvc-prepare-taxonomy.php';
|
120 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-admin-page.php';
|
121 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-add-options-page.php';
|
122 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-main-admin-page.php';
|
123 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-list-table.php';
|
124 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-queries.php';
|
125 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/
|
126 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-options-page.php';
|
127 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-tab.php';
|
128 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/abstract-tvc-main-input-wrapper.php';
|
129 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-product-feed-main-input-wrapper.php';
|
130 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/abstract-tvc-attribute-mapping-wrapper.php';
|
131 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-product-feed-attribute-mapping-wrapper.php';
|
132 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/elements/class-tvc-main-input-selector-element.php';
|
133 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-feed-form-control.php';
|
134 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-file.php';
|
135 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-data.php';
|
136 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/elements/class-tvc-attribute-selector-element.php';
|
137 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/elements/class-tvc-category-selector-element.php';
|
138 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/abstract-tvc-category-wrapper.php';
|
139 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-product-feed-category-wrapper.php';
|
140 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/tvc-url-functions.php';
|
141 |
-
|
142 |
-
// require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/class-tvc-product-feed-page.php';
|
143 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-ajax-calls.php';
|
144 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-ajax-data.php';
|
145 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-ajax-file.php';
|
146 |
-
|
147 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-channel.php';
|
148 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-channel-ftp.php';
|
149 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-feed-crud-handler.php';
|
150 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-taxonomies.php';
|
151 |
-
|
152 |
-
//Application folder include
|
153 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-feed-queries.php';
|
154 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-email.php';
|
155 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-feed-value-editors.php';
|
156 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/tvc-cron-functions.php';
|
157 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/tvc-support-fields.php';
|
158 |
-
|
159 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/libraries/tvc-background-process.php';
|
160 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/tvc-feed-processing-support.php';
|
161 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/tvc-feed-processor-functions.php';
|
162 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-feed-processor.php';
|
163 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-feed-support.php';
|
164 |
-
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-feed-controller.php';
|
165 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-feed-master.php';
|
166 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/class-tvc-schedules.php';
|
167 |
-
//require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/google/class-feed.php';
|
168 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/class-tvc-register-scripts.php';
|
169 |
/**
|
170 |
* The class responsible for defining all actions that occur in the admin area.
|
@@ -193,11 +152,8 @@ class Enhanced_Ecommerce_Google_Analytics {
|
|
193 |
* @access private
|
194 |
*/
|
195 |
private function set_locale() {
|
196 |
-
|
197 |
$plugin_i18n = new Enhanced_Ecommerce_Google_Analytics_i18n();
|
198 |
-
|
199 |
$this->loader->add_action( 'plugins_loaded', $plugin_i18n, 'load_plugin_textdomain' );
|
200 |
-
|
201 |
}
|
202 |
|
203 |
/**
|
@@ -318,4 +274,4 @@ class Enhanced_Ecommerce_Google_Analytics {
|
|
318 |
die();
|
319 |
}
|
320 |
}
|
321 |
-
}
|
111 |
*/
|
112 |
require_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-enhanced-ecommerce-google-analytics-i18n.php';
|
113 |
// Feed Manager Files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-queries.php';
|
115 |
+
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-file.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
116 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/user-interface/tvc-url-functions.php';
|
117 |
+
|
|
|
118 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-ajax-calls.php';
|
119 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-ajax-data.php';
|
120 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-ajax-file.php';
|
121 |
+
|
|
|
|
|
122 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-feed-crud-handler.php';
|
123 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/data/class-tvc-taxonomies.php';
|
124 |
+
|
|
|
|
|
|
|
|
|
|
|
125 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/application/tvc-support-fields.php';
|
126 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
127 |
require_once plugin_dir_path(dirname(__FILE__)) . 'includes/class-tvc-register-scripts.php';
|
128 |
/**
|
129 |
* The class responsible for defining all actions that occur in the admin area.
|
152 |
* @access private
|
153 |
*/
|
154 |
private function set_locale() {
|
|
|
155 |
$plugin_i18n = new Enhanced_Ecommerce_Google_Analytics_i18n();
|
|
|
156 |
$this->loader->add_action( 'plugins_loaded', $plugin_i18n, 'load_plugin_textdomain' );
|
|
|
157 |
}
|
158 |
|
159 |
/**
|
274 |
die();
|
275 |
}
|
276 |
}
|
277 |
+
}
|
includes/class-tvc-register-scripts.php
CHANGED
@@ -21,73 +21,15 @@ if ( ! class_exists( 'TVC_Register_Scripts' ) ) :
|
|
21 |
$action_level = 2; // for future use
|
22 |
$this->_version_stamp = defined( 'WP_DEBUG' ) && WP_DEBUG ? time() : $premium_version_nr . '1.0';
|
23 |
$this->_js_min = defined( 'WP_DEBUG' ) && WP_DEBUG ? '' : '.min';
|
24 |
-
|
25 |
-
//add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_scripts' ) );
|
26 |
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_nonce' ) );
|
27 |
// only load the next hooks when on the Settings page
|
28 |
if ( tvc_on_plugins_settings_page() ) {
|
29 |
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_options_page_scripts' ) );
|
30 |
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_options_page_nonce' ) );
|
31 |
}
|
32 |
-
if ( 1 === $action_level ) {
|
33 |
-
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_level_one_scripts' ) );
|
34 |
-
} elseif ( 2 === $action_level ) {
|
35 |
-
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_level_two_scripts' ) );
|
36 |
-
}
|
37 |
-
}
|
38 |
-
/**
|
39 |
-
* Registers all required java scripts for the feed manager pages.
|
40 |
-
*/
|
41 |
-
public function tvc_register_required_scripts() {
|
42 |
-
$screen = get_current_screen();
|
43 |
-
|
44 |
-
if($screen->id == 'toplevel_page_aga-envato-api' || $screen->id == 'aga-google-shopping_page_tvc-product-feed-manager' || $screen->id == 'aga-google-shopping_page_tvc-configuration-page'){
|
45 |
-
//wp_register_style("tvc_gmc_style-1", ENHANCAD_PLUGIN_URL . '/admin/css/style.css');
|
46 |
-
//wp_enqueue_style( "tvc_gmc_style-1");
|
47 |
-
wp_register_style("tvc_gmc_style-2", ENHANCAD_PLUGIN_URL . '/css/style.css');
|
48 |
-
wp_enqueue_style( "tvc_gmc_style-2");
|
49 |
-
wp_register_style("tvc-product-feed-manager-1", ENHANCAD_PLUGIN_URL . '/css/actionable-google-analytics-admin.css');
|
50 |
-
wp_enqueue_style( "tvc-product-feed-manager-1");
|
51 |
-
wp_register_script( 'tvc_gmc_bootstrap-script-1', ENHANCAD_PLUGIN_URL . '/includes/setup/js/bootstrap' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
52 |
-
wp_enqueue_script( 'tvc_gmc_bootstrap-script-1');
|
53 |
-
wp_register_script( 'tvc_gmc_bootstrap-script-1', ENHANCAD_PLUGIN_URL . '/includes/setup/js/jquery-3.5.1.slim' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
54 |
-
wp_enqueue_script( 'tvc_gmc_bootstrap-script-1');
|
55 |
-
wp_register_script( 'tvc_gmc_bootstrap-script-1', ENHANCAD_PLUGIN_URL . '/includes/setup/js/popper' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
56 |
-
wp_enqueue_script( 'tvc_gmc_bootstrap-script-1');
|
57 |
-
wp_register_script( 'tvc_gmc-api-script', ENHANCAD_PLUGIN_URL . '/includes/setup/js/merchant-center.js', array( 'jquery' ), $this->_version_stamp, true );
|
58 |
-
wp_enqueue_script( 'tvc_gmc-api-script');
|
59 |
-
//wp_enqueue_script( 'tvc-product-feed-manager', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/sweetalert' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
60 |
-
wp_register_script( 'tvc-product-feed-manager-fa', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/fontawesome.js', array( 'jquery' ), $this->_version_stamp, false );
|
61 |
-
wp_enqueue_script( 'tvc-product-feed-manager-fa');
|
62 |
-
wp_register_style('aga_bootstrap', '//maxcdn.bootstrapcdn.com/bootstrap/4.5.1/css/bootstrap.min.css');
|
63 |
-
wp_enqueue_style('aga_bootstrap');
|
64 |
-
}
|
65 |
-
// enqueue notice handling script
|
66 |
-
wp_enqueue_script( 'tvc_message-handling-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_msg_events' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
67 |
-
// do not load the other scripts unless a tvc page is on
|
68 |
-
|
69 |
-
wp_register_style( 'tvc-product-feed-manager', ENHANCAD_PLUGIN_URL . '/css/tvc_admin-page' . $this->_js_min . '.css', '', $this->_version_stamp, 'screen' );
|
70 |
-
wp_enqueue_style( 'tvc-product-feed-manager' );
|
71 |
-
// embed the javascript file that makes the Ajax requests
|
72 |
-
wp_register_script( 'tvc_feed-settings-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_feed-form' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp,'screen' );
|
73 |
-
wp_enqueue_script( 'tvc_feed-settings-script');
|
74 |
-
wp_enqueue_script( 'tvc_business-logic-script', ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_logic.js', array( 'jquery' ), $this->_version_stamp, false );
|
75 |
-
wp_enqueue_script( 'tvc_data-script', ENHANCAD_PLUGIN_URL . '/includes/data/js/tvc_data' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
76 |
-
wp_enqueue_script( 'tvc_event-listener-script1', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_feed-form-events'. $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
77 |
-
wp_enqueue_script( 'wp_head', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/fontawesome.js', array( 'jquery' ), $this->_version_stamp, false );
|
78 |
-
wp_enqueue_script( 'tvc_form-support-script1', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_support' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
79 |
-
wp_enqueue_script( 'tvc_verify-inputs-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_verify-inputs' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
80 |
-
wp_enqueue_script( 'tvc_feed-handling-script', ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_feedhandling' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
81 |
-
wp_enqueue_script( 'tvc_feed-html', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_feed-html' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
82 |
-
wp_register_script( 'tvc_feed-list-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_feed-list.js', array( 'jquery' ), $this->_version_stamp,'screen' );
|
83 |
-
wp_enqueue_script( 'tvc_feed-list-script');
|
84 |
-
wp_enqueue_script( 'tvc_feed-meta-script', ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_object-attribute-meta' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
85 |
-
wp_enqueue_script( 'tvc_feed-objects-script', ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_object-feed' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
86 |
-
wp_enqueue_script( 'tvc_general-functions-script', ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_general-functions' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
87 |
-
wp_enqueue_script( 'tvc_object-handling-script', ENHANCAD_PLUGIN_URL . '/includes/data/js/tvc_metadatahandling' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false );
|
88 |
-
wp_enqueue_script( 'tvc_script_ajax', ENHANCAD_PLUGIN_URL . '/includes/data/js/tvc_ajaxdatahandling' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, false);
|
89 |
-
wp_enqueue_script( 'tvc_feed-queue-string-script', ENHANCAD_PLUGIN_URL . '/includes/data/js/tvc_feed-queue-string.js', array( 'jquery' ), $this->_version_stamp, false );
|
90 |
}
|
|
|
91 |
/**
|
92 |
* Generate the required nonce's.
|
93 |
*/
|
@@ -103,23 +45,7 @@ if ( ! class_exists( 'TVC_Register_Scripts' ) ) :
|
|
103 |
'campaignCategoryListsNonce' => wp_create_nonce( 'tvcajax-campaign-category-lists-nonce' ),
|
104 |
'campaignStatusNonce' => wp_create_nonce( 'tvcajax-update-campaign-status-nonce' ),
|
105 |
'campaignDeleteNonce' => wp_create_nonce( 'tvcajax-delete-campaign-nonce' ),
|
106 |
-
'categoryListsNonce' => wp_create_nonce( 'tvcajax-category-lists-nonce' )
|
107 |
-
'deleteFeedNonce' => wp_create_nonce( 'tvcajax-delete-feed-nonce' ),
|
108 |
-
'feedDataNonce' => wp_create_nonce( 'tvcajax-feed-data-nonce' ),
|
109 |
-
'feedStatusNonce' => wp_create_nonce( 'tvcajax-feed-status-nonce' ),
|
110 |
-
'inputFieldsNonce' => wp_create_nonce( 'tvcajax-input-fields-nonce' ),
|
111 |
-
'inputFeedFiltersNonce' => wp_create_nonce( 'tvcajax-feed-filters-nonce' ),
|
112 |
-
'logMessageNonce' => wp_create_nonce( 'tvcajax-log-message-nonce' ),
|
113 |
-
'nextCategoryNonce' => wp_create_nonce( 'tvcajax-next-category-nonce' ),
|
114 |
-
'outputFieldsNonce' => wp_create_nonce( 'tvcajax-output-fields-nonce' ),
|
115 |
-
'postFeedsListNonce' => wp_create_nonce( 'tvcajax-post-feeds-list-nonce' ),
|
116 |
-
'switchFeedStatusNonce' => wp_create_nonce( 'tvcajax-switch-feed-status-nonce' ),
|
117 |
-
'duplicateFeedNonce' => wp_create_nonce( 'tvcajax-duplicate-existing-feed-nonce' ),
|
118 |
-
'updateFeedDataNonce' => wp_create_nonce( 'tvcajax-update-feed-data-nonce' ),
|
119 |
-
'updateAutoFeedFixNonce' => wp_create_nonce( 'tvcajax-set-auto-feed-fix-nonce' ),
|
120 |
-
'updateFeedFileNonce' => wp_create_nonce( 'tvcajax-update-feed-file-nonce' ),
|
121 |
-
'nextFeedInQueueNonce' => wp_create_nonce( 'tvcajax-next-feed-in-queue-nonce' ),
|
122 |
-
'noticeDismissionNonce' => wp_create_nonce( 'tvcajax-duplicate-backup-nonce' ),
|
123 |
)
|
124 |
);
|
125 |
}
|
@@ -128,14 +54,7 @@ if ( ! class_exists( 'TVC_Register_Scripts' ) ) :
|
|
128 |
*/
|
129 |
public function tvc_register_required_options_page_scripts() {
|
130 |
// enqueue notice handling script
|
131 |
-
//wp_enqueue_style( 'tvc-product-feed-manager-setting', ENHANCAD_PLUGIN_URL . '/css/tvc_setting-page' . $this->_js_min . '.css', '', $this->_version_stamp, 'screen' );
|
132 |
-
//wp_enqueue_script( 'tvc_message-handling-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_msg_events' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
133 |
-
//wp_enqueue_style('font_awesome','//use.fontawesome.com/releases/v5.0.13/css/all.css');
|
134 |
-
//==wp_enqueue_script( 'tvc_backup-list-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_backup-list'. $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp,'screen' );
|
135 |
wp_enqueue_script( 'tvc_data-handling-script', ENHANCAD_PLUGIN_URL . '/includes/data/js/tvc_ajaxdatahandling' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
136 |
-
//wp_enqueue_script( 'tvc_setting-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_setting-form' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
137 |
-
//wp_enqueue_script( 'tvc_event-listener-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_feed-form-events' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
138 |
-
//wp_enqueue_script( 'tvc_form-support-script', ENHANCAD_PLUGIN_URL . '/includes/user-interface/js/tvc_support' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
139 |
}
|
140 |
/**
|
141 |
* Generate the nonce's for the Settings page.
|
@@ -147,54 +66,12 @@ if ( ! class_exists( 'TVC_Register_Scripts' ) ) :
|
|
147 |
'myAjaxNonces',
|
148 |
array(
|
149 |
// URL to wp-admin/admin-ajax.php to process the request
|
150 |
-
'ajaxurl'
|
151 |
-
// generate the required nonce's
|
152 |
-
'setAutoFeedFixNonce' => wp_create_nonce( 'tvcajax-auto-feed-fix-nonce' ),
|
153 |
-
'setBackgroundModeNonce' => wp_create_nonce( 'tvcajax-background-mode-nonce' ),
|
154 |
-
'setFeedLoggerStatusNonce' => wp_create_nonce( 'tvcajax-logger-status-nonce' ),
|
155 |
-
'setShowPINonce' => wp_create_nonce( 'tvcajax-show-pi-nonce' ),
|
156 |
-
'setThirdPartyKeywordsNonce' => wp_create_nonce( 'tvcajax-set-third-party-keywords-nonce' ),
|
157 |
-
'setNoticeMailaddressNonce' => wp_create_nonce( 'tvcajax-set-notice-mailaddress-nonce' ),
|
158 |
-
'setBatchProcessingLimitNonce' => wp_create_nonce( 'tvcajax-set-batch-processing-limit-nonce' ),
|
159 |
-
'backupNonce' => wp_create_nonce( 'tvcajax-backup-nonce' ),
|
160 |
-
'deleteBackupNonce' => wp_create_nonce( 'tvcajax-delete-backup-nonce' ),
|
161 |
-
'restoreBackupNonce' => wp_create_nonce( 'tvcajax-restore-backup-nonce' ),
|
162 |
-
'duplicateBackupNonce' => wp_create_nonce( 'tvcajax-duplicate-backup-nonce' ),
|
163 |
-
'postBackupListNonce' => wp_create_nonce( 'tvcajax-backups-list-nonce' ),
|
164 |
-
'postSetupOptionsNonce' => wp_create_nonce( 'tvcajax-setting-options-nonce' ),
|
165 |
-
'setClearFeedProcessNonce' => wp_create_nonce( 'tvcajax-clear-feed-nonce' ),
|
166 |
-
'setReInitiateNonce' => wp_create_nonce( 'tvcajax-reinitiate-nonce' ),
|
167 |
)
|
168 |
);
|
169 |
}
|
170 |
-
public function tvc_register_level_one_scripts() {
|
171 |
-
if ( ! tvc_on_own_main_plugin_page() ) {
|
172 |
-
return;
|
173 |
-
}
|
174 |
-
$data = new TVC_Data;
|
175 |
-
$installed_channels = $data->get_channels();
|
176 |
-
wp_enqueue_script( 'tvc_channel-functions-script', ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_channel-functions' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
177 |
-
foreach ( $installed_channels as $channel ) {
|
178 |
-
wp_enqueue_script( 'tvc_' . $channel['short'] . '-source-script', TVC_UPLOADS_URL . '/tvc-channels/' . $channel['short'] . '/tvc_' . $channel['short'] . '-source.js', array( 'jquery' ), $this->_version_stamp, true );
|
179 |
-
}
|
180 |
-
}
|
181 |
-
public function tvc_register_level_two_scripts() {
|
182 |
-
wp_enqueue_script(
|
183 |
-
'tvc_channel-functions-script',
|
184 |
-
ENHANCAD_PLUGIN_URL . '/includes/application/js/tvc_channel-functions.js',
|
185 |
-
array( 'jquery' ),
|
186 |
-
$this->_version_stamp,
|
187 |
-
false
|
188 |
-
);
|
189 |
-
wp_enqueue_script(
|
190 |
-
'tvc_google-source-script',
|
191 |
-
ENHANCAD_PLUGIN_URL . '/includes/application/google/tvc_google-source.js',
|
192 |
-
array( 'jquery' ),
|
193 |
-
$this->_version_stamp,
|
194 |
-
false
|
195 |
-
);
|
196 |
-
}
|
197 |
}
|
198 |
// End of TVC_Register_Scripts class
|
199 |
endif;
|
200 |
$my_ajax_registration_class = new TVC_Register_Scripts();
|
|
21 |
$action_level = 2; // for future use
|
22 |
$this->_version_stamp = defined( 'WP_DEBUG' ) && WP_DEBUG ? time() : $premium_version_nr . '1.0';
|
23 |
$this->_js_min = defined( 'WP_DEBUG' ) && WP_DEBUG ? '' : '.min';
|
24 |
+
|
|
|
25 |
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_nonce' ) );
|
26 |
// only load the next hooks when on the Settings page
|
27 |
if ( tvc_on_plugins_settings_page() ) {
|
28 |
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_options_page_scripts' ) );
|
29 |
add_action( 'admin_enqueue_scripts', array( $this, 'tvc_register_required_options_page_nonce' ) );
|
30 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
}
|
32 |
+
|
33 |
/**
|
34 |
* Generate the required nonce's.
|
35 |
*/
|
45 |
'campaignCategoryListsNonce' => wp_create_nonce( 'tvcajax-campaign-category-lists-nonce' ),
|
46 |
'campaignStatusNonce' => wp_create_nonce( 'tvcajax-update-campaign-status-nonce' ),
|
47 |
'campaignDeleteNonce' => wp_create_nonce( 'tvcajax-delete-campaign-nonce' ),
|
48 |
+
'categoryListsNonce' => wp_create_nonce( 'tvcajax-category-lists-nonce' )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
)
|
50 |
);
|
51 |
}
|
54 |
*/
|
55 |
public function tvc_register_required_options_page_scripts() {
|
56 |
// enqueue notice handling script
|
|
|
|
|
|
|
|
|
57 |
wp_enqueue_script( 'tvc_data-handling-script', ENHANCAD_PLUGIN_URL . '/includes/data/js/tvc_ajaxdatahandling' . $this->_js_min . '.js', array( 'jquery' ), $this->_version_stamp, true );
|
|
|
|
|
|
|
58 |
}
|
59 |
/**
|
60 |
* Generate the nonce's for the Settings page.
|
66 |
'myAjaxNonces',
|
67 |
array(
|
68 |
// URL to wp-admin/admin-ajax.php to process the request
|
69 |
+
'ajaxurl' => admin_url( 'admin-ajax.php' )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
)
|
71 |
);
|
72 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
}
|
74 |
// End of TVC_Register_Scripts class
|
75 |
endif;
|
76 |
$my_ajax_registration_class = new TVC_Register_Scripts();
|
77 |
+
?>
|
includes/data/class-tvc-ajax-file.php
CHANGED
@@ -1,125 +1,138 @@
|
|
1 |
<?php
|
2 |
|
3 |
/**
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
if(!defined('ABSPATH')){
|
9 |
-
|
10 |
}
|
11 |
|
12 |
if(!class_exists('TVC_Ajax_File')) :
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
123 |
// return new WP_REST_Response(
|
124 |
// array(
|
125 |
// 'status' => $response_code,
|
@@ -127,74 +140,73 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
127 |
// 'data' => $response_body->data
|
128 |
// )
|
129 |
// );
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
// echo json_encode( $categories );
|
137 |
-
}
|
138 |
-
|
139 |
-
// IMPORTANT: don't forget to exit
|
140 |
-
exit;
|
141 |
-
}
|
142 |
-
|
143 |
-
/**
|
144 |
-
* Update the campaign status pause/active
|
145 |
-
*/
|
146 |
-
public function tvcajax_update_campaign_status(){
|
147 |
-
// make sure this call is legal
|
148 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'campaignStatusNonce'), 'tvcajax-update-campaign-status-nonce')){
|
149 |
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
// return new WP_REST_Response(
|
199 |
// array(
|
200 |
// 'status' => $response_code,
|
@@ -202,53 +214,53 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
202 |
// 'data' => $response_body->data
|
203 |
// )
|
204 |
// );
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
// echo json_encode( $categories );
|
212 |
-
}
|
213 |
-
|
214 |
-
// IMPORTANT: don't forget to exit
|
215 |
-
exit;
|
216 |
-
}
|
217 |
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
// return new WP_REST_Response(
|
253 |
// array(
|
254 |
// 'status' => $response_code,
|
@@ -256,346 +268,346 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
256 |
// 'data' => $response_body->data
|
257 |
// )
|
258 |
// );
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
// echo json_encode( $categories );
|
265 |
-
}
|
266 |
-
|
267 |
-
// IMPORTANT: don't forget to exit
|
268 |
-
exit;
|
269 |
-
}
|
270 |
-
|
271 |
-
/**
|
272 |
-
* Returns the sub-categories from a selected category
|
273 |
-
*/
|
274 |
-
public function tvcajax_read_next_categories(){
|
275 |
-
// make sure this call is legal
|
276 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'nextCategoryNonce'), 'tvcajax-next-category-nonce')){
|
277 |
-
$file_class = new TVC_File();
|
278 |
-
|
279 |
-
$channel_id = filter_input(INPUT_POST, 'channelId');
|
280 |
-
$requested_level = filter_input(INPUT_POST, 'requestedLevel');
|
281 |
-
$parent_category = filter_input(INPUT_POST, 'parentCategory');
|
282 |
-
$file_language = filter_input(INPUT_POST, 'fileLanguage');
|
283 |
-
$categories = $file_class->get_categories_for_list($channel_id, $requested_level, $parent_category, $file_language);
|
284 |
-
|
285 |
-
if(!is_array($categories)){
|
286 |
-
if('0' === substr($categories, - 1)){
|
287 |
-
chop($categories, '0');
|
288 |
-
}
|
289 |
-
}
|
290 |
-
|
291 |
-
echo json_encode($categories);
|
292 |
-
}
|
293 |
-
|
294 |
-
// IMPORTANT: don't forget to exit
|
295 |
-
exit;
|
296 |
-
}
|
297 |
-
|
298 |
-
/**
|
299 |
-
* Read the category list
|
300 |
-
*/
|
301 |
-
public function tvcajax_read_category_lists(){
|
302 |
-
// make sure this call is legal
|
303 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'categoryListsNonce'), 'tvcajax-category-lists-nonce')){
|
304 |
-
$file_class = new TVC_File();
|
305 |
-
|
306 |
-
$channel_id = filter_input(INPUT_POST, 'channelId');
|
307 |
-
$main_categories_string = filter_input(INPUT_POST, 'mainCategories');
|
308 |
-
$file_language = filter_input(INPUT_POST, 'fileLanguage');
|
309 |
-
$categories_array = explode(' > ', $main_categories_string);
|
310 |
-
$categories = array();
|
311 |
-
$required_levels = count($categories_array) > 0 ? ( count($categories_array) + 1 ) : count($categories_array);
|
312 |
-
|
313 |
-
for($i = 0; $i < $required_levels; $i ++){
|
314 |
-
$parent_category = $i > 0 ? $categories_array[$i - 1] : '';
|
315 |
-
$c = $file_class->get_categories_for_list($channel_id, $i, $parent_category, $file_language);
|
316 |
-
if($c){
|
317 |
-
array_push($categories, $c);
|
318 |
-
}
|
319 |
-
}
|
320 |
-
|
321 |
-
echo json_encode($categories);
|
322 |
-
}
|
323 |
-
|
324 |
-
// IMPORTANT: don't forget to exit
|
325 |
-
exit;
|
326 |
-
}
|
327 |
-
|
328 |
-
/**
|
329 |
-
* Delete a specific feed file
|
330 |
-
*/
|
331 |
-
public function tvcajax_delete_feed_file(){
|
332 |
-
// make sure this call is legal
|
333 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'deleteFeedNonce'), 'tvcajax-delete-feed-nonce')){
|
334 |
-
$file_name = filter_input(INPUT_POST, 'fileTitle');
|
335 |
-
|
336 |
-
if(file_exists(WP_PLUGIN_DIR . '/tvc-product-feed-manager-support/feeds/' . $file_name)){
|
337 |
-
$file = WP_PLUGIN_DIR . '/tvc-product-feed-manager-support/feeds/' . $file_name;
|
338 |
-
}else{
|
339 |
-
$file = TVC_FEEDS_DIR . '/' . $file_name;
|
340 |
-
}
|
341 |
-
|
342 |
-
// only return results when the user is an admin with manage options
|
343 |
-
if(is_admin()){
|
344 |
-
/* translators: %s: Title of the feed file */
|
345 |
-
echo file_exists($file) ? unlink($file) : tvc_show_wp_error(sprintf(esc_html__('Could not find file %s.', 'tvc-product-feed-manager'), $file));
|
346 |
-
}else{
|
347 |
-
echo tvc_show_wp_error(esc_html__('Error deleting the feed. You do not have the correct authorities to delete the file.', 'tvc-product-feed-manager'));
|
348 |
-
}
|
349 |
-
}
|
350 |
-
|
351 |
-
// IMPORTANT: don't forget to exit
|
352 |
-
exit;
|
353 |
-
}
|
354 |
-
|
355 |
-
/**
|
356 |
-
* This function fetches the posted data and triggers the update of the feed file on the server.
|
357 |
-
*/
|
358 |
-
public function tvcajax_update_feed_file(){
|
359 |
-
// make sure this call is legal
|
360 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'updateFeedFileNonce'), 'tvcajax-update-feed-file-nonce')){
|
361 |
-
|
362 |
-
// fetch the data from $_POST
|
363 |
-
$feed_id = filter_input(INPUT_POST, 'feedId');
|
364 |
-
$background_mode_disabled = get_option('tvc_disabled_background_mode', 'false');
|
365 |
-
|
366 |
-
TVC_Feed_Controller::add_id_to_feed_queue($feed_id);
|
367 |
-
|
368 |
-
// if there is no feed processing in progress, of background processing is switched off, start updating the current feed
|
369 |
-
if(!TVC_Feed_Controller::feed_is_processing() || 'true' === $background_mode_disabled){
|
370 |
-
do_action('tvc_manual_feed_update_activated', $feed_id);
|
371 |
-
|
372 |
-
$feed_master_class = new TVC_Feed_Master_Class($feed_id);
|
373 |
-
$feed_master_class->update_feed_file(false);
|
374 |
-
}else{
|
375 |
-
$data_class = new TVC_Data();
|
376 |
-
$data_class->update_feed_status($feed_id, 4); // feed status to waiting in queue
|
377 |
-
echo 'pushed_to_queue';
|
378 |
-
}
|
379 |
-
}
|
380 |
-
|
381 |
-
// IMPORTANT: don't forget to exit
|
382 |
-
exit;
|
383 |
-
}
|
384 |
-
|
385 |
-
/**
|
386 |
-
* Logs a message from a javascript call to the server
|
387 |
-
*/
|
388 |
-
public function tvcajax_log_message(){
|
389 |
-
// make sure this call is legal
|
390 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'logMessageNonce'), 'tvcajax-log-message-nonce')){
|
391 |
-
// fetch the data from $_POST
|
392 |
-
$message = filter_input(INPUT_POST, 'messageList');
|
393 |
-
$file_name = filter_input(INPUT_POST, 'fileName');
|
394 |
-
$text_message = strip_tags($message);
|
395 |
-
|
396 |
-
// only return results when the user is an admin with manage options
|
397 |
-
if(is_admin()){
|
398 |
-
//tvc_write_log_file( $text_message, $file_name );
|
399 |
-
}else{
|
400 |
-
echo tvc_show_wp_error(esc_html__('Error writing the feed. You do not have the correct authorities to write the file.', 'tvc-product-feed-manager'));
|
401 |
-
}
|
402 |
-
}
|
403 |
-
|
404 |
-
// IMPORTANT: don't forget to exit
|
405 |
-
exit;
|
406 |
-
}
|
407 |
-
|
408 |
-
/**
|
409 |
-
* Changes the Auto Feed Fix setting from the Settings page
|
410 |
-
*
|
411 |
-
* @since 1.7.0
|
412 |
-
*/
|
413 |
-
public function tvcajax_auto_feed_fix_mode_selection(){
|
414 |
-
// make sure this call is legal
|
415 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'updateAutoFeedFixNonce'), 'tvcajax-auto-feed-fix-nonce')){
|
416 |
-
$selection = filter_input(INPUT_POST, 'fix_selection');
|
417 |
-
update_option('tvc_auto_feed_fix', $selection);
|
418 |
-
|
419 |
-
echo get_option('tvc_auto_feed_fix');
|
420 |
-
}
|
421 |
-
|
422 |
-
// IMPORTANT: don't forget to exit
|
423 |
-
exit;
|
424 |
-
}
|
425 |
-
|
426 |
-
/**
|
427 |
-
* Changes the Disable Background processing setting from the Settings page
|
428 |
-
*
|
429 |
-
* @since 2.0.7
|
430 |
-
*/
|
431 |
-
public function tvcajax_background_processing_mode_selection(){
|
432 |
-
// make sure this call is legal
|
433 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'backgroundModeNonce'), 'tvcajax-background-mode-nonce')){
|
434 |
-
$selection = filter_input(INPUT_POST, 'mode_selection');
|
435 |
-
update_option('tvc_disabled_background_mode', $selection);
|
436 |
-
|
437 |
-
echo get_option('tvc_disabled_background_mode');
|
438 |
-
}
|
439 |
-
|
440 |
-
// IMPORTANT: don't forget to exit
|
441 |
-
exit;
|
442 |
-
}
|
443 |
-
|
444 |
-
/**
|
445 |
-
* Changes the Feed Process Logger setting from the Settings page.
|
446 |
-
*
|
447 |
-
* @since 2.8.0
|
448 |
-
*/
|
449 |
-
public function tvcajax_feed_logger_status_selection(){
|
450 |
-
// make sure this call is legal
|
451 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'feedLoggerStatusNonce'), 'tvcajax-logger-status-nonce')){
|
452 |
-
$selection = filter_input(INPUT_POST, 'statusSelection');
|
453 |
-
update_option('tvc_process_logger_status', $selection);
|
454 |
-
|
455 |
-
echo get_option('tvc_process_logger_status');
|
456 |
-
}
|
457 |
-
|
458 |
-
// IMPORTANT: don't forget to exit
|
459 |
-
exit;
|
460 |
-
}
|
461 |
-
|
462 |
-
/**
|
463 |
-
* Changes the Show Product Identifiers setting from the Settings page.
|
464 |
-
*
|
465 |
-
* @since 2.10.0
|
466 |
-
*/
|
467 |
-
public function tvcajax_show_product_identifiers_selection(){
|
468 |
-
// make sure this call is legal
|
469 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'showPINonce'), 'tvcajax-show-pi-nonce')){
|
470 |
-
$selection = filter_input(INPUT_POST, 'showPiSelection');
|
471 |
-
update_option('tvc_show_product_identifiers', $selection);
|
472 |
-
|
473 |
-
echo get_option('tvc_show_product_identifiers');
|
474 |
-
}
|
475 |
-
|
476 |
-
// IMPORTANT: don't forget to exit
|
477 |
-
exit;
|
478 |
-
}
|
479 |
-
|
480 |
-
/**
|
481 |
-
* Changes the Debug setting from the Settings page
|
482 |
-
*
|
483 |
-
* @since 1.9.0
|
484 |
-
*/
|
485 |
-
public function tvcajax_debug_mode_selection(){
|
486 |
-
// make sure this call is legal
|
487 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'debugNonce'), 'tvcajax-debug-nonce')){
|
488 |
-
$selection = filter_input(INPUT_POST, 'debug_selection');
|
489 |
-
update_option('tvc_debug_mode', $selection);
|
490 |
-
|
491 |
-
echo get_option('tvc_debug_mode');
|
492 |
-
}
|
493 |
-
|
494 |
-
// IMPORTANT: don't forget to exit
|
495 |
-
exit;
|
496 |
-
}
|
497 |
-
|
498 |
-
public function tvcajax_set_third_party_attribute_keywords(){
|
499 |
-
// make sure this call is legal
|
500 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'thirdPartyKeywordsNonce'), 'tvcajax-set-third-party-keywords-nonce')){
|
501 |
-
$keywords = filter_input(INPUT_POST, 'keywords');
|
502 |
-
update_option('tvc_third_party_attribute_keywords', $keywords);
|
503 |
-
|
504 |
-
echo get_option('tvc_third_party_attribute_keywords');
|
505 |
-
}
|
506 |
-
|
507 |
-
// IMPORTANT: don't forget to exit
|
508 |
-
exit;
|
509 |
-
}
|
510 |
-
|
511 |
-
public function tvcajax_set_notice_mailaddress(){
|
512 |
-
// make sure this call is legal
|
513 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'noticeMailaddressNonce'), 'tvcajax-set-notice-mailaddress-nonce')){
|
514 |
-
$mailaddress = filter_input(INPUT_POST, 'mailaddress');
|
515 |
-
update_option('tvc_notice_mailaddress', $mailaddress);
|
516 |
-
|
517 |
-
echo get_option('tvc_notice_mailaddress');
|
518 |
-
}
|
519 |
-
|
520 |
-
// IMPORTANT: don't forget to exit
|
521 |
-
exit;
|
522 |
-
}
|
523 |
-
|
524 |
-
/**
|
525 |
-
* Re-initiates the plugin, updates the database and loads all cron jobs
|
526 |
-
*
|
527 |
-
* @since 1.9.0
|
528 |
-
*/
|
529 |
-
public function tvcajax_reinitiate_plugin(){
|
530 |
-
if($this->safe_ajax_call(filter_input(INPUT_POST, 'reInitiateNonce'), 'tvcajax-reinitiate-nonce')){
|
531 |
-
|
532 |
-
if(tvc_reinitiate_plugin()){
|
533 |
-
echo 'Plugin re-initiated';
|
534 |
-
}else{
|
535 |
-
echo 'Re-initiation failed!';
|
536 |
-
}
|
537 |
-
}
|
538 |
|
539 |
-
|
540 |
-
|
541 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
542 |
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
558 |
|
559 |
-
|
560 |
-
|
561 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
562 |
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
599 |
// return new WP_REST_Response(
|
600 |
// array(
|
601 |
// 'status' => $response_code,
|
@@ -603,357 +615,444 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
603 |
// 'data' => $response_body->data
|
604 |
// )
|
605 |
// );
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
// echo json_encode( $categories );
|
612 |
-
}
|
613 |
|
614 |
-
|
615 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
616 |
}
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
626 |
}
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
640 |
}
|
641 |
-
|
642 |
-
|
643 |
-
$
|
644 |
-
|
645 |
-
$
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
$
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
663 |
}
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
669 |
}
|
670 |
-
|
671 |
-
|
672 |
-
|
|
|
673 |
}
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
if(!empty($mappedCats)){
|
680 |
-
$catMapRequest = [];
|
681 |
-
$catMapRequest['subscription_id'] = $subscriptionId;
|
682 |
-
$catMapRequest['customer_id'] = $customerId;
|
683 |
-
$catMapRequest['merchant_id'] = $merchantId;
|
684 |
-
$catMapRequest['category'] = $mappedCats;
|
685 |
-
$catMapResponse = $customObj->setGmcCategoryMapping($catMapRequest);
|
686 |
-
}
|
687 |
-
|
688 |
-
if(!empty($mappedAttrs)){
|
689 |
-
$attrMapRequest = [];
|
690 |
-
$attrMapRequest['subscription_id'] = $subscriptionId;
|
691 |
-
$attrMapRequest['customer_id'] = $customerId;
|
692 |
-
$attrMapRequest['merchant_id'] = $merchantId;
|
693 |
-
$attrMapRequest['attribute'] = $mappedAttrs;
|
694 |
-
$attrMapResponse = $customObj->setGmcAttributeMapping($attrMapRequest);
|
695 |
-
}
|
696 |
-
|
697 |
-
$entries = [];
|
698 |
-
if(!empty($mappedCats)){
|
699 |
-
foreach($mappedCats as $key => $mappedCat){
|
700 |
-
$all_products = get_posts(array(
|
701 |
-
'post_type' => 'product',
|
702 |
-
'numberposts' => -1,
|
703 |
-
'post_status' => 'publish',
|
704 |
-
'tax_query' => array(
|
705 |
-
array(
|
706 |
-
'taxonomy' => 'product_cat',
|
707 |
-
'field' => 'term_id',
|
708 |
-
'terms' => $key, /* category name */
|
709 |
-
'operator' => 'IN',
|
710 |
-
)
|
711 |
-
),'meta_query' => array(
|
712 |
-
'relation' => 'AND',
|
713 |
-
array(
|
714 |
-
'key' => '_stock_status',
|
715 |
-
'value' => 'instock'
|
716 |
-
)
|
717 |
-
)
|
718 |
-
));
|
719 |
-
$tvc_currency = ((get_option('woocommerce_currency') != '')? get_option('woocommerce_currency') : 'USD');
|
720 |
-
$tvc_country = (isset($this->woo_country()[0]) ? $this->woo_country()[0] : '');
|
721 |
-
foreach($all_products as $postkey => $postvalue){
|
722 |
-
$postmeta = [];
|
723 |
-
$postmeta = $this->getPostMetaData($postvalue->ID);
|
724 |
-
$prd = wc_get_product($postvalue->ID);
|
725 |
-
$postObj = (object) array_merge((array) $postvalue, (array) $postmeta);
|
726 |
-
$product = [];
|
727 |
-
foreach($formArray as $key => $value){
|
728 |
-
$product['channel'] = 'online';
|
729 |
-
$product['google_product_category'] = $mappedCat;
|
730 |
-
$product['link'] = get_permalink($postvalue->ID);
|
731 |
-
if($key == 'image_link'){
|
732 |
-
$image_id = $prd->get_image_id();
|
733 |
-
$product['image_link'] = wp_get_attachment_image_url($image_id, 'full');
|
734 |
-
}else if($key == 'price'){
|
735 |
-
$product[$key]['value'] = $postObj->_price;
|
736 |
-
$product[$key]['currency'] = $tvc_currency;
|
737 |
-
if ($postObj->_price == '' || $postObj->_price == null) {
|
738 |
-
$skipProducts[$postObj->ID] = $postObj;
|
739 |
-
}
|
740 |
-
}else if($key == 'sale_price'){
|
741 |
-
$product[$key]['value'] = $postObj->_sale_price;
|
742 |
-
$product[$key]['currency'] = $tvc_currency;
|
743 |
-
if ($postObj->_sale_price == '' || $postObj->_sale_price == null) {
|
744 |
-
$skipProducts[$postObj->ID] = $postObj;
|
745 |
-
}
|
746 |
-
}else if($key == 'target_country'){
|
747 |
-
$product[$key] = ($postObj->$value != '' ? $postObj->$value : $tvc_country);
|
748 |
-
}else if($key == 'content_language'){
|
749 |
-
$product[$key] = ($postObj->$value != '' ? $postObj->$value : 'en');
|
750 |
-
}else if(isset($postObj->$value)){
|
751 |
-
// echo $product[$key]."==".$postObj->$value."<br>";
|
752 |
-
$product[$key] = $postObj->$value;
|
753 |
-
}
|
754 |
-
}
|
755 |
-
|
756 |
-
$entrie = [
|
757 |
-
'merchant_id' => $merchantId,
|
758 |
-
'batch_id' => ++$batchId,
|
759 |
-
'method' => 'insert',
|
760 |
-
'product' => $product
|
761 |
-
];
|
762 |
-
$entries[] = $entrie;
|
763 |
}
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
);
|
779 |
-
$loop = new WP_Query($qArgs);
|
780 |
-
$tvc_currency = ((get_option('woocommerce_currency') != '')? get_option('woocommerce_currency') : 'USD');
|
781 |
-
$tvc_country = (isset($this->woo_country()[0]) ? $this->woo_country()[0] : '');
|
782 |
-
foreach($loop->posts as $postkey => $postvalue){
|
783 |
-
$postmeta = [];
|
784 |
-
$postmeta = $this->getPostMetaData($postvalue->ID);
|
785 |
-
$postObj = (object) array_merge((array) $postvalue, (array) $postmeta);
|
786 |
-
|
787 |
-
$product = [];
|
788 |
-
foreach($formArray as $key => $value){
|
789 |
-
$product['content_language'] = 'en';
|
790 |
-
//$product['target_country'] = 'US';
|
791 |
-
$product['target_country'] = $tvc_country;
|
792 |
-
$product['channel'] = 'online';
|
793 |
-
if($key == 'price'){
|
794 |
-
$product[$key]['value'] = $postObj->_price;
|
795 |
-
// $product[$key]['currency'] = 'USD';
|
796 |
-
$product[$key]['currency'] = $tvc_currency;
|
797 |
-
if ($postObj->_price == '' || $postObj->_price == null) {
|
798 |
-
$skipProducts[$postObj->ID] = $postObj;
|
799 |
-
}
|
800 |
-
}else if($key == 'sale_price'){
|
801 |
-
$product[$key]['value'] = $postObj->_sale_price;
|
802 |
-
//$product[$key]['currency'] = 'USD';
|
803 |
-
$product[$key]['currency'] = $tvc_currency;
|
804 |
-
if ($postObj->_sale_price == '' || $postObj->_sale_price == null) {
|
805 |
-
$skipProducts[$postObj->ID] = $postObj;
|
806 |
-
}
|
807 |
-
}else if($key == 'target_country'){
|
808 |
-
$product[$key] = ($postObj->$value != '' ? $postObj->$value : (isset($this->woo_country()[0]) ? $this->woo_country()[0] : ''));
|
809 |
-
}else if(isset($postObj->$value)){
|
810 |
-
$product[$key] = $postObj->$value;
|
811 |
-
}
|
812 |
}
|
813 |
-
|
814 |
-
|
815 |
-
'merchant_id' => $merchantId,
|
816 |
-
'batch_id' => ++$batchId,
|
817 |
-
'method' => 'insert',
|
818 |
-
'product' => $product
|
819 |
-
];
|
820 |
-
$entries[] = $entrie;
|
821 |
}
|
822 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
823 |
}
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
'
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
'
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
$
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
|
|
|
|
|
|
|
|
867 |
}
|
868 |
-
|
869 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
870 |
}
|
871 |
|
872 |
-
|
873 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
874 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
875 |
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
|
888 |
-
|
889 |
// $accountId = '184918792';
|
890 |
-
|
891 |
// $webPropertyId = 'UA-184918792-5';
|
892 |
-
|
893 |
-
|
894 |
-
|
895 |
-
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
|
952 |
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
|
958 |
// print_r($dimenResponse);
|
959 |
// echo "=======";
|
@@ -961,8 +1060,8 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
961 |
// exit;
|
962 |
|
963 |
|
964 |
-
|
965 |
-
|
966 |
// return new WP_REST_Response(
|
967 |
// array(
|
968 |
// 'status' => $response_code,
|
@@ -970,57 +1069,57 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
970 |
// 'data' => $response_body->data
|
971 |
// )
|
972 |
// );
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
// return new WP_REST_Response(
|
1025 |
// array(
|
1026 |
// 'status' => $response_code,
|
@@ -1028,71 +1127,71 @@ if(!class_exists('TVC_Ajax_File')) :
|
|
1028 |
// 'data' => $response_body->data
|
1029 |
// )
|
1030 |
// );
|
1031 |
-
|
1032 |
-
|
1033 |
-
|
1034 |
-
|
1035 |
|
1036 |
-
|
1037 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1038 |
|
1039 |
-
|
1040 |
-
exit;
|
1041 |
-
}
|
1042 |
-
public function generateAccessToken($access_token, $refresh_token) {
|
1043 |
-
$request = "https://www.googleapis.com/oauth2/v1/tokeninfo?"
|
1044 |
-
. "access_token=" . $access_token;
|
1045 |
-
|
1046 |
-
$ch = curl_init();
|
1047 |
-
curl_setopt($ch, CURLOPT_URL, $request);
|
1048 |
-
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
|
1049 |
-
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
|
1050 |
-
$response = curl_exec($ch);
|
1051 |
-
$result = json_decode($response);
|
1052 |
-
|
1053 |
-
if (isset($result->error) && $result->error) {
|
1054 |
-
$credentials_file = ENHANCAD_PLUGIN_DIR . 'includes/setup/json/client-secrets.json';
|
1055 |
-
$str = file_get_contents($credentials_file);
|
1056 |
-
$credentials = $str ? json_decode($str, true) : [];
|
1057 |
-
$url = 'https://www.googleapis.com/oauth2/v4/token';
|
1058 |
-
$header = array("content-type: application/json");
|
1059 |
-
$clientId = $credentials['web']['client_id'];
|
1060 |
-
$clientSecret = $credentials['web']['client_secret'];
|
1061 |
-
$refreshToken = $refresh_token;
|
1062 |
-
$data = [
|
1063 |
-
"grant_type" => 'refresh_token',
|
1064 |
-
"client_id" => $clientId,
|
1065 |
-
'client_secret' => $clientSecret,
|
1066 |
-
'refresh_token' => $refreshToken,
|
1067 |
-
];
|
1068 |
-
|
1069 |
-
$postData = json_encode($data);
|
1070 |
-
$ch = curl_init();
|
1071 |
-
curl_setopt_array($ch, array(
|
1072 |
-
CURLOPT_URL => $url, //esc_url($this->curl_url),
|
1073 |
-
CURLOPT_RETURNTRANSFER => true,
|
1074 |
-
CURLOPT_TIMEOUT => 0,
|
1075 |
-
CURLOPT_HTTPHEADER => $header,
|
1076 |
-
CURLOPT_POSTFIELDS => $postData
|
1077 |
-
));
|
1078 |
-
$response = curl_exec($ch);
|
1079 |
-
$response = json_decode($response);
|
1080 |
-
return $response->access_token;
|
1081 |
-
} else {
|
1082 |
-
return $access_token;
|
1083 |
-
}
|
1084 |
-
}
|
1085 |
-
public function woo_country(){
|
1086 |
-
// The country/state
|
1087 |
-
$store_raw_country = get_option('woocommerce_default_country');
|
1088 |
-
// Split the country/state
|
1089 |
-
$split_country = explode(":", $store_raw_country);
|
1090 |
-
return $split_country;
|
1091 |
-
}
|
1092 |
-
|
1093 |
-
}
|
1094 |
|
1095 |
-
|
1096 |
|
1097 |
endif;
|
1098 |
|
1 |
<?php
|
2 |
|
3 |
/**
|
4 |
+
* TVC Ajax File Class.
|
5 |
+
*
|
6 |
+
* @package TVC Product Feed Manager/Data/Classes
|
7 |
+
*/
|
8 |
if(!defined('ABSPATH')){
|
9 |
+
exit;
|
10 |
}
|
11 |
|
12 |
if(!class_exists('TVC_Ajax_File')) :
|
13 |
+
/**
|
14 |
+
* Ajax File Class
|
15 |
+
*/
|
16 |
+
class TVC_Ajax_File extends TVC_Ajax_Calls {
|
17 |
+
private $apiDomain;
|
18 |
+
protected $access_token;
|
19 |
+
protected $refresh_token;
|
20 |
+
public function __construct(){
|
21 |
+
parent::__construct();
|
22 |
+
$this->apiDomain = TVC_API_CALL_URL;
|
23 |
+
// hooks
|
24 |
+
add_action('wp_ajax_tvcajax-get-campaign-categories', array($this, 'tvcajax_get_campaign_categories'));
|
25 |
+
add_action('wp_ajax_tvcajax-update-campaign-status', array($this, 'tvcajax_update_campaign_status'));
|
26 |
+
add_action('wp_ajax_tvcajax-delete-campaign', array($this, 'tvcajax_delete_campaign'));
|
27 |
+
add_action('wp_ajax_tvcajax-get-next-categories', array($this, 'tvcajax_read_next_categories'));
|
28 |
+
add_action('wp_ajax_tvcajax-get-category-lists', array($this, 'tvcajax_read_category_lists'));
|
29 |
+
add_action('wp_ajax_tvcajax-delete-feed-file', array($this, 'tvcajax_delete_feed_file'));
|
30 |
+
add_action('wp_ajax_tvcajax-update-feed-file', array($this, 'tvcajax_update_feed_file'));
|
31 |
+
add_action('wp_ajax_tvcajax-log-message', array($this, 'tvcajax_log_message'));
|
32 |
+
add_action('wp_ajax_tvcajax-auto-feed-fix-mode-selection', array($this, 'tvcajax_auto_feed_fix_mode_selection'));
|
33 |
+
add_action('wp_ajax_tvcajax-background-processing-mode-selection', array($this, 'tvcajax_background_processing_mode_selection'));
|
34 |
+
add_action('wp_ajax_tvcajax-feed-logger-status-selection', array($this, 'tvcajax_feed_logger_status_selection'));
|
35 |
+
add_action('wp_ajax_tvcajax-show-product-identifiers-selection', array($this, 'tvcajax_show_product_identifiers_selection'));
|
36 |
+
add_action('wp_ajax_tvcajax-debug-mode-selection', array($this, 'tvcajax_debut_mode_selection'));
|
37 |
+
add_action('wp_ajax_tvcajax-third-party-attribute-keywords', array($this, 'tvcajax_set_third_party_attribute_keywords'));
|
38 |
+
add_action('wp_ajax_tvcajax-set-notice-mailaddress', array($this, 'tvcajax_set_notice_mailaddress'));
|
39 |
+
add_action('wp_ajax_tvcajax-clear-feed-process-data', array($this, 'tvcajax_clear_feed_process_data'));
|
40 |
+
add_action('wp_ajax_tvcajax-reinitiate-plugin', array($this, 'tvcajax_reinitiate_plugin'));
|
41 |
+
add_action('wp_ajax_tvcajax-product-syncup', array($this, 'tvcajax_product_syncup'));
|
42 |
+
add_action('wp_ajax_tvcajax-gmc-category-lists', array($this, 'tvcajax_get_gmc_categories'));
|
43 |
+
add_action('wp_ajax_tvcajax-custom-metrics-dimension', array($this, 'tvcajax_custom_metrics_dimension'));
|
44 |
+
add_action('wp_ajax_tvcajax-store-time-taken', array($this, 'tvcajax_store_time_taken'));
|
45 |
+
add_action('wp_ajax_tvc_call_api_sync', array($this, 'tvc_call_api_sync'));
|
46 |
+
add_action('wp_ajax_tvc_call_domain_claim', array($this, 'tvc_call_domain_claim'));
|
47 |
+
}
|
48 |
+
public function tvc_call_api_sync(){
|
49 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'apiSyncupNonce'), 'tvc_call_api_sync-nonce')){
|
50 |
+
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
51 |
+
$tvc_msg = $TVC_Admin_Helper->set_update_api_to_db();
|
52 |
+
echo json_encode(array('status' => 'success', 'message' => $tvc_msg));
|
53 |
+
exit;
|
54 |
+
}
|
55 |
+
exit;
|
56 |
+
}
|
57 |
+
public function tvc_call_domain_claim(){
|
58 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'apiDomainClaimNonce'), 'tvc_call_domain_claim-nonce')){
|
59 |
+
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
60 |
+
$tvc_rs = $TVC_Admin_Helper->call_domain_claim();
|
61 |
+
if($tvc_rs['error'] == 1){
|
62 |
+
echo json_encode(array('status' => 'error', 'message' => $tvc_rs['msg']));
|
63 |
+
}else{
|
64 |
+
echo json_encode(array('status' => 'success', 'message' => $tvc_rs['msg']));
|
65 |
+
}
|
66 |
+
exit;
|
67 |
+
}
|
68 |
+
exit;
|
69 |
+
}
|
70 |
+
public function get_tvc_access_token(){
|
71 |
+
if(!empty($this->access_token)){
|
72 |
+
return $this->access_token;
|
73 |
+
}else if(isset($_SESSION['access_token']) && $_SESSION['access_token']){
|
74 |
+
$this->access_token = $_SESSION['access_token'];
|
75 |
+
return $this->access_token;
|
76 |
+
}else{
|
77 |
+
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
78 |
+
$google_detail = $TVC_Admin_Helper->get_ee_options_data();
|
79 |
+
$this->access_token = $google_detail['setting']->access_token;
|
80 |
+
return $this->access_token;
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
public function get_tvc_refresh_token(){
|
85 |
+
if(!empty($this->refresh_token)){
|
86 |
+
return $this->refresh_token;
|
87 |
+
}else if(isset($_SESSION['refresh_token']) && $_SESSION['refresh_token']){
|
88 |
+
$this->refresh_token = $_SESSION['refresh_token'];
|
89 |
+
return $this->refresh_token;
|
90 |
+
}else{
|
91 |
+
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
92 |
+
$google_detail = $TVC_Admin_Helper->get_ee_options_data();
|
93 |
+
$this->refresh_token = $google_detail['setting']->refresh_token;
|
94 |
+
return $this->refresh_token;
|
95 |
+
}
|
96 |
+
}
|
97 |
+
/**
|
98 |
+
* Delete the campaign
|
99 |
+
*/
|
100 |
+
public function tvcajax_delete_campaign(){
|
101 |
+
// make sure this call is legal
|
102 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'campaignDeleteNonce'), 'tvcajax-delete-campaign-nonce')){
|
103 |
+
|
104 |
+
$merchantId = filter_input(INPUT_POST, 'merchantId');
|
105 |
+
$customerId = filter_input(INPUT_POST, 'customerId');
|
106 |
+
$campaignId = filter_input(INPUT_POST, 'campaignId');
|
107 |
+
|
108 |
+
$url = $this->apiDomain.'/campaigns/delete';
|
109 |
+
|
110 |
+
$data = [
|
111 |
+
'merchant_id' => $merchantId,
|
112 |
+
'customer_id' => $customerId,
|
113 |
+
'campaign_id' => $campaignId
|
114 |
+
];
|
115 |
+
|
116 |
+
$args = array(
|
117 |
+
'headers' => array(
|
118 |
+
'Authorization' => "Bearer MTIzNA==",
|
119 |
+
'Content-Type' => 'application/json'
|
120 |
+
),
|
121 |
+
'method' => 'DELETE',
|
122 |
+
'body' => wp_json_encode($data)
|
123 |
+
);
|
124 |
+
|
125 |
+
// Send remote request
|
126 |
+
$request = wp_remote_request($url, $args);
|
127 |
+
|
128 |
+
// Retrieve information
|
129 |
+
$response_code = wp_remote_retrieve_response_code($request);
|
130 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
131 |
+
$response_body = json_decode(wp_remote_retrieve_body($request));
|
132 |
+
|
133 |
+
if((isset($response_body->error) && $response_body->error == '')){
|
134 |
+
$message = $response_body->message;
|
135 |
+
echo json_encode(['status' => 'success', 'message' => $message]);
|
136 |
// return new WP_REST_Response(
|
137 |
// array(
|
138 |
// 'status' => $response_code,
|
140 |
// 'data' => $response_body->data
|
141 |
// )
|
142 |
// );
|
143 |
+
}else{
|
144 |
+
$message = is_array($response_body->errors) ? $response_body->errors[0] : "Face some unprocessable entity";
|
145 |
+
echo json_encode(['status' => 'error', 'message' => $message]);
|
146 |
+
// return new WP_Error($response_code, $response_message, $response_body);
|
147 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
148 |
|
149 |
+
// echo json_encode( $categories );
|
150 |
+
}
|
151 |
+
// IMPORTANT: don't forget to exit
|
152 |
+
exit;
|
153 |
+
}
|
154 |
+
|
155 |
+
/**
|
156 |
+
* Update the campaign status pause/active
|
157 |
+
*/
|
158 |
+
public function tvcajax_update_campaign_status(){
|
159 |
+
// make sure this call is legal
|
160 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'campaignStatusNonce'), 'tvcajax-update-campaign-status-nonce')){
|
161 |
+
|
162 |
+
if(!class_exists('ShoppingApi')){
|
163 |
+
//require_once(__DIR__ . '/ShoppingApi.php');
|
164 |
+
include(ENHANCAD_PLUGIN_DIR . 'includes/setup/ShoppingApi.php');
|
165 |
+
}
|
166 |
|
167 |
+
$merchantId = filter_input(INPUT_POST, 'merchantId');
|
168 |
+
$customerId = filter_input(INPUT_POST, 'customerId');
|
169 |
+
$campaignId = filter_input(INPUT_POST, 'campaignId');
|
170 |
+
$budgetId = filter_input(INPUT_POST, 'budgetId');
|
171 |
+
$campaignName = filter_input(INPUT_POST, 'campaignName');
|
172 |
+
$budget = filter_input(INPUT_POST, 'budget');
|
173 |
+
$status = filter_input(INPUT_POST, 'status');
|
174 |
+
$url = $this->apiDomain.'/campaigns/update';
|
175 |
+
$shoppingObj = new ShoppingApi();
|
176 |
+
$campaignData = $shoppingObj->getCampaignDetails($campaignId);
|
177 |
+
|
178 |
+
$data = [
|
179 |
+
'merchant_id' => $merchantId,
|
180 |
+
'customer_id' => $customerId,
|
181 |
+
'campaign_id' => $campaignId,
|
182 |
+
'account_budget_id' => $budgetId,
|
183 |
+
'campaign_name' => $campaignName,
|
184 |
+
'budget' => $budget,
|
185 |
+
'status' => $status,
|
186 |
+
'target_country' => $campaignData->data['data']->targetCountry,
|
187 |
+
'ad_group_id' => $campaignData->data['data']->adGroupId,
|
188 |
+
'ad_group_resource_name' => $campaignData->data['data']->adGroupResourceName
|
189 |
+
];
|
190 |
+
|
191 |
+
$args = array(
|
192 |
+
'headers' => array(
|
193 |
+
'Authorization' => "Bearer MTIzNA==",
|
194 |
+
'Content-Type' => 'application/json'
|
195 |
+
),
|
196 |
+
'method' => 'PATCH',
|
197 |
+
'body' => wp_json_encode($data)
|
198 |
+
);
|
199 |
+
|
200 |
+
// Send remote request
|
201 |
+
$request = wp_remote_request($url, $args);
|
202 |
+
|
203 |
+
// Retrieve information
|
204 |
+
$response_code = wp_remote_retrieve_response_code($request);
|
205 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
206 |
+
$response_body = json_decode(wp_remote_retrieve_body($request));
|
207 |
+
if((isset($response_body->error) && $response_body->error == '')){
|
208 |
+
$message = $response_body->message;
|
209 |
+
echo json_encode(['status' => 'success', 'message' => $message]);
|
210 |
// return new WP_REST_Response(
|
211 |
// array(
|
212 |
// 'status' => $response_code,
|
214 |
// 'data' => $response_body->data
|
215 |
// )
|
216 |
// );
|
217 |
+
}else{
|
218 |
+
$message = is_array($response_body->errors) ? $response_body->errors[0] : "Face some unprocessable entity";
|
219 |
+
echo json_encode(['status' => 'error', 'message' => $message]);
|
220 |
+
// return new WP_Error($response_code, $response_message, $response_body);
|
221 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
222 |
|
223 |
+
// echo json_encode( $categories );
|
224 |
+
}
|
225 |
+
|
226 |
+
// IMPORTANT: don't forget to exit
|
227 |
+
exit;
|
228 |
+
}
|
229 |
+
|
230 |
+
/**
|
231 |
+
* Returns the campaign categories from a selected country
|
232 |
+
*/
|
233 |
+
public function tvcajax_get_campaign_categories(){
|
234 |
+
// make sure this call is legal
|
235 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'campaignCategoryListsNonce'), 'tvcajax-campaign-category-lists-nonce')){
|
236 |
+
|
237 |
+
$country_code = filter_input(INPUT_POST, 'countryCode');
|
238 |
+
$customer_id = filter_input(INPUT_POST, 'customerId');
|
239 |
+
$url = $this->apiDomain.'/products/categories';
|
240 |
+
|
241 |
+
$data = [
|
242 |
+
'customer_id' => $customer_id,
|
243 |
+
'country_code' => $country_code
|
244 |
+
];
|
245 |
+
|
246 |
+
$args = array(
|
247 |
+
'headers' => array(
|
248 |
+
'Authorization' => "Bearer MTIzNA==",
|
249 |
+
'Content-Type' => 'application/json'
|
250 |
+
),
|
251 |
+
'body' => wp_json_encode($data)
|
252 |
+
);
|
253 |
+
|
254 |
+
// Send remote request
|
255 |
+
$request = wp_remote_post($url, $args);
|
256 |
+
|
257 |
+
// Retrieve information
|
258 |
+
$response_code = wp_remote_retrieve_response_code($request);
|
259 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
260 |
+
$response_body = json_decode(wp_remote_retrieve_body($request));
|
261 |
+
|
262 |
+
if((isset($response_body->error) && $response_body->error == '')){
|
263 |
+
echo json_encode($response_body->data);
|
264 |
// return new WP_REST_Response(
|
265 |
// array(
|
266 |
// 'status' => $response_code,
|
268 |
// 'data' => $response_body->data
|
269 |
// )
|
270 |
// );
|
271 |
+
}else{
|
272 |
+
echo json_encode([]);
|
273 |
+
// return new WP_Error($response_code, $response_message, $response_body);
|
274 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
275 |
|
276 |
+
// echo json_encode( $categories );
|
277 |
+
}
|
278 |
+
|
279 |
+
// IMPORTANT: don't forget to exit
|
280 |
+
exit;
|
281 |
+
}
|
282 |
+
|
283 |
+
/**
|
284 |
+
* Returns the sub-categories from a selected category
|
285 |
+
*/
|
286 |
+
public function tvcajax_read_next_categories(){
|
287 |
+
// make sure this call is legal
|
288 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'nextCategoryNonce'), 'tvcajax-next-category-nonce')){
|
289 |
+
$file_class = new TVC_File();
|
290 |
+
|
291 |
+
$channel_id = filter_input(INPUT_POST, 'channelId');
|
292 |
+
$requested_level = filter_input(INPUT_POST, 'requestedLevel');
|
293 |
+
$parent_category = filter_input(INPUT_POST, 'parentCategory');
|
294 |
+
$file_language = filter_input(INPUT_POST, 'fileLanguage');
|
295 |
+
$categories = $file_class->get_categories_for_list($channel_id, $requested_level, $parent_category, $file_language);
|
296 |
+
|
297 |
+
if(!is_array($categories)){
|
298 |
+
if('0' === substr($categories, - 1)){
|
299 |
+
chop($categories, '0');
|
300 |
+
}
|
301 |
+
}
|
302 |
|
303 |
+
echo json_encode($categories);
|
304 |
+
}
|
305 |
+
|
306 |
+
// IMPORTANT: don't forget to exit
|
307 |
+
exit;
|
308 |
+
}
|
309 |
+
|
310 |
+
/**
|
311 |
+
* Read the category list
|
312 |
+
*/
|
313 |
+
public function tvcajax_read_category_lists(){
|
314 |
+
// make sure this call is legal
|
315 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'categoryListsNonce'), 'tvcajax-category-lists-nonce')){
|
316 |
+
$file_class = new TVC_File();
|
317 |
+
|
318 |
+
$channel_id = filter_input(INPUT_POST, 'channelId');
|
319 |
+
$main_categories_string = filter_input(INPUT_POST, 'mainCategories');
|
320 |
+
$file_language = filter_input(INPUT_POST, 'fileLanguage');
|
321 |
+
$categories_array = explode(' > ', $main_categories_string);
|
322 |
+
$categories = array();
|
323 |
+
$required_levels = count($categories_array) > 0 ? ( count($categories_array) + 1 ) : count($categories_array);
|
324 |
+
|
325 |
+
for($i = 0; $i < $required_levels; $i ++){
|
326 |
+
$parent_category = $i > 0 ? $categories_array[$i - 1] : '';
|
327 |
+
$c = $file_class->get_categories_for_list($channel_id, $i, $parent_category, $file_language);
|
328 |
+
if($c){
|
329 |
+
array_push($categories, $c);
|
330 |
+
}
|
331 |
+
}
|
332 |
|
333 |
+
echo json_encode($categories);
|
334 |
+
}
|
335 |
+
|
336 |
+
// IMPORTANT: don't forget to exit
|
337 |
+
exit;
|
338 |
+
}
|
339 |
+
|
340 |
+
/**
|
341 |
+
* Delete a specific feed file
|
342 |
+
*/
|
343 |
+
public function tvcajax_delete_feed_file(){
|
344 |
+
// make sure this call is legal
|
345 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'deleteFeedNonce'), 'tvcajax-delete-feed-nonce')){
|
346 |
+
$file_name = filter_input(INPUT_POST, 'fileTitle');
|
347 |
+
|
348 |
+
if(file_exists(WP_PLUGIN_DIR . '/tvc-product-feed-manager-support/feeds/' . $file_name)){
|
349 |
+
$file = WP_PLUGIN_DIR . '/tvc-product-feed-manager-support/feeds/' . $file_name;
|
350 |
+
}else{
|
351 |
+
$file = TVC_FEEDS_DIR . '/' . $file_name;
|
352 |
+
}
|
353 |
|
354 |
+
// only return results when the user is an admin with manage options
|
355 |
+
if(is_admin()){
|
356 |
+
/* translators: %s: Title of the feed file */
|
357 |
+
echo file_exists($file) ? unlink($file) : tvc_show_wp_error(sprintf(esc_html__('Could not find file %s.', 'tvc-product-feed-manager'), $file));
|
358 |
+
}else{
|
359 |
+
echo tvc_show_wp_error(esc_html__('Error deleting the feed. You do not have the correct authorities to delete the file.', 'tvc-product-feed-manager'));
|
360 |
+
}
|
361 |
+
}
|
362 |
+
|
363 |
+
// IMPORTANT: don't forget to exit
|
364 |
+
exit;
|
365 |
+
}
|
366 |
+
|
367 |
+
/**
|
368 |
+
* This function fetches the posted data and triggers the update of the feed file on the server.
|
369 |
+
*/
|
370 |
+
public function tvcajax_update_feed_file(){
|
371 |
+
// make sure this call is legal
|
372 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'updateFeedFileNonce'), 'tvcajax-update-feed-file-nonce')){
|
373 |
+
|
374 |
+
// fetch the data from $_POST
|
375 |
+
$feed_id = filter_input(INPUT_POST, 'feedId');
|
376 |
+
$background_mode_disabled = get_option('tvc_disabled_background_mode', 'false');
|
377 |
+
|
378 |
+
TVC_Feed_Controller::add_id_to_feed_queue($feed_id);
|
379 |
+
|
380 |
+
// if there is no feed processing in progress, of background processing is switched off, start updating the current feed
|
381 |
+
if(!TVC_Feed_Controller::feed_is_processing() || 'true' === $background_mode_disabled){
|
382 |
+
do_action('tvc_manual_feed_update_activated', $feed_id);
|
383 |
+
|
384 |
+
$feed_master_class = new TVC_Feed_Master_Class($feed_id);
|
385 |
+
$feed_master_class->update_feed_file(false);
|
386 |
+
}else{
|
387 |
+
$data_class = new TVC_Data();
|
388 |
+
$data_class->update_feed_status($feed_id, 4); // feed status to waiting in queue
|
389 |
+
echo 'pushed_to_queue';
|
390 |
+
}
|
391 |
+
}
|
392 |
+
|
393 |
+
// IMPORTANT: don't forget to exit
|
394 |
+
exit;
|
395 |
+
}
|
396 |
+
|
397 |
+
/**
|
398 |
+
* Logs a message from a javascript call to the server
|
399 |
+
*/
|
400 |
+
public function tvcajax_log_message(){
|
401 |
+
// make sure this call is legal
|
402 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'logMessageNonce'), 'tvcajax-log-message-nonce')){
|
403 |
+
// fetch the data from $_POST
|
404 |
+
$message = filter_input(INPUT_POST, 'messageList');
|
405 |
+
$file_name = filter_input(INPUT_POST, 'fileName');
|
406 |
+
$text_message = strip_tags($message);
|
407 |
+
|
408 |
+
// only return results when the user is an admin with manage options
|
409 |
+
if(is_admin()){
|
410 |
+
//tvc_write_log_file( $text_message, $file_name );
|
411 |
+
}else{
|
412 |
+
echo tvc_show_wp_error(esc_html__('Error writing the feed. You do not have the correct authorities to write the file.', 'tvc-product-feed-manager'));
|
413 |
+
}
|
414 |
+
}
|
415 |
+
|
416 |
+
// IMPORTANT: don't forget to exit
|
417 |
+
exit;
|
418 |
+
}
|
419 |
+
|
420 |
+
/**
|
421 |
+
* Changes the Auto Feed Fix setting from the Settings page
|
422 |
+
*
|
423 |
+
* @since 1.7.0
|
424 |
+
*/
|
425 |
+
public function tvcajax_auto_feed_fix_mode_selection(){
|
426 |
+
// make sure this call is legal
|
427 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'updateAutoFeedFixNonce'), 'tvcajax-auto-feed-fix-nonce')){
|
428 |
+
$selection = filter_input(INPUT_POST, 'fix_selection');
|
429 |
+
update_option('tvc_auto_feed_fix', $selection);
|
430 |
+
|
431 |
+
echo get_option('tvc_auto_feed_fix');
|
432 |
+
}
|
433 |
+
|
434 |
+
// IMPORTANT: don't forget to exit
|
435 |
+
exit;
|
436 |
+
}
|
437 |
+
|
438 |
+
/**
|
439 |
+
* Changes the Disable Background processing setting from the Settings page
|
440 |
+
*
|
441 |
+
* @since 2.0.7
|
442 |
+
*/
|
443 |
+
public function tvcajax_background_processing_mode_selection(){
|
444 |
+
// make sure this call is legal
|
445 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'backgroundModeNonce'), 'tvcajax-background-mode-nonce')){
|
446 |
+
$selection = filter_input(INPUT_POST, 'mode_selection');
|
447 |
+
update_option('tvc_disabled_background_mode', $selection);
|
448 |
+
|
449 |
+
echo get_option('tvc_disabled_background_mode');
|
450 |
+
}
|
451 |
+
|
452 |
+
// IMPORTANT: don't forget to exit
|
453 |
+
exit;
|
454 |
+
}
|
455 |
+
|
456 |
+
/**
|
457 |
+
* Changes the Feed Process Logger setting from the Settings page.
|
458 |
+
*
|
459 |
+
* @since 2.8.0
|
460 |
+
*/
|
461 |
+
public function tvcajax_feed_logger_status_selection(){
|
462 |
+
// make sure this call is legal
|
463 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'feedLoggerStatusNonce'), 'tvcajax-logger-status-nonce')){
|
464 |
+
$selection = filter_input(INPUT_POST, 'statusSelection');
|
465 |
+
update_option('tvc_process_logger_status', $selection);
|
466 |
+
|
467 |
+
echo get_option('tvc_process_logger_status');
|
468 |
+
}
|
469 |
+
|
470 |
+
// IMPORTANT: don't forget to exit
|
471 |
+
exit;
|
472 |
+
}
|
473 |
+
|
474 |
+
/**
|
475 |
+
* Changes the Show Product Identifiers setting from the Settings page.
|
476 |
+
*
|
477 |
+
* @since 2.10.0
|
478 |
+
*/
|
479 |
+
public function tvcajax_show_product_identifiers_selection(){
|
480 |
+
// make sure this call is legal
|
481 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'showPINonce'), 'tvcajax-show-pi-nonce')){
|
482 |
+
$selection = filter_input(INPUT_POST, 'showPiSelection');
|
483 |
+
update_option('tvc_show_product_identifiers', $selection);
|
484 |
+
|
485 |
+
echo get_option('tvc_show_product_identifiers');
|
486 |
+
}
|
487 |
+
|
488 |
+
// IMPORTANT: don't forget to exit
|
489 |
+
exit;
|
490 |
+
}
|
491 |
+
|
492 |
+
/**
|
493 |
+
* Changes the Debug setting from the Settings page
|
494 |
+
*
|
495 |
+
* @since 1.9.0
|
496 |
+
*/
|
497 |
+
public function tvcajax_debug_mode_selection(){
|
498 |
+
// make sure this call is legal
|
499 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'debugNonce'), 'tvcajax-debug-nonce')){
|
500 |
+
$selection = filter_input(INPUT_POST, 'debug_selection');
|
501 |
+
update_option('tvc_debug_mode', $selection);
|
502 |
+
|
503 |
+
echo get_option('tvc_debug_mode');
|
504 |
+
}
|
505 |
+
|
506 |
+
// IMPORTANT: don't forget to exit
|
507 |
+
exit;
|
508 |
+
}
|
509 |
+
|
510 |
+
public function tvcajax_set_third_party_attribute_keywords(){
|
511 |
+
// make sure this call is legal
|
512 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'thirdPartyKeywordsNonce'), 'tvcajax-set-third-party-keywords-nonce')){
|
513 |
+
$keywords = filter_input(INPUT_POST, 'keywords');
|
514 |
+
update_option('tvc_third_party_attribute_keywords', $keywords);
|
515 |
+
|
516 |
+
echo get_option('tvc_third_party_attribute_keywords');
|
517 |
+
}
|
518 |
+
|
519 |
+
// IMPORTANT: don't forget to exit
|
520 |
+
exit;
|
521 |
+
}
|
522 |
+
|
523 |
+
public function tvcajax_set_notice_mailaddress(){
|
524 |
+
// make sure this call is legal
|
525 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'noticeMailaddressNonce'), 'tvcajax-set-notice-mailaddress-nonce')){
|
526 |
+
$mailaddress = filter_input(INPUT_POST, 'mailaddress');
|
527 |
+
update_option('tvc_notice_mailaddress', $mailaddress);
|
528 |
+
|
529 |
+
echo get_option('tvc_notice_mailaddress');
|
530 |
+
}
|
531 |
+
|
532 |
+
// IMPORTANT: don't forget to exit
|
533 |
+
exit;
|
534 |
+
}
|
535 |
+
|
536 |
+
/**
|
537 |
+
* Re-initiates the plugin, updates the database and loads all cron jobs
|
538 |
+
*
|
539 |
+
* @since 1.9.0
|
540 |
+
*/
|
541 |
+
public function tvcajax_reinitiate_plugin(){
|
542 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'reInitiateNonce'), 'tvcajax-reinitiate-nonce')){
|
543 |
+
|
544 |
+
if(tvc_reinitiate_plugin()){
|
545 |
+
echo 'Plugin re-initiated';
|
546 |
+
}else{
|
547 |
+
echo 'Re-initiation failed!';
|
548 |
+
}
|
549 |
+
}
|
550 |
+
|
551 |
+
// IMPORTANT: don't forget to exit
|
552 |
+
exit;
|
553 |
+
}
|
554 |
+
|
555 |
+
/**
|
556 |
+
* Clears all option data that is related to the feed processing
|
557 |
+
*
|
558 |
+
* @since 1.10.0
|
559 |
+
*/
|
560 |
+
public function tvcajax_clear_feed_process_data(){
|
561 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'clearFeedNonce'), 'tvcajax-clear-feed-nonce')){
|
562 |
+
|
563 |
+
if(tvc_clear_feed_process_data()){
|
564 |
+
echo esc_html__('Feed processing data cleared', 'tvc-product-feed-manager');
|
565 |
+
}else{
|
566 |
+
/* translators: clearing the feed data failed */
|
567 |
+
echo esc_html__('Clearing failed!', 'tvc-product-feed-manager');
|
568 |
+
}
|
569 |
+
}
|
570 |
+
|
571 |
+
// IMPORTANT: don't forget to exit
|
572 |
+
exit;
|
573 |
+
}
|
574 |
+
|
575 |
+
/**
|
576 |
+
* Returns the campaign categories from a selected country
|
577 |
+
*/
|
578 |
+
public function tvcajax_get_gmc_categories(){
|
579 |
+
// make sure this call is legal
|
580 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'gmcCategoryListsNonce'), 'tvcajax-gmc-category-lists-nonce')){
|
581 |
+
|
582 |
+
$country_code = filter_input(INPUT_POST, 'countryCode');
|
583 |
+
$customer_id = filter_input(INPUT_POST, 'customerId');
|
584 |
+
$parent = filter_input(INPUT_POST, 'parent');
|
585 |
+
$url = $this->apiDomain.'/products/gmc-categories';
|
586 |
+
|
587 |
+
$data = [
|
588 |
+
'customer_id' => $customer_id,
|
589 |
+
'country_code' => $country_code,
|
590 |
+
'parent' => $parent
|
591 |
+
];
|
592 |
+
|
593 |
+
$args = array(
|
594 |
+
'headers' => array(
|
595 |
+
'Authorization' => "Bearer MTIzNA==",
|
596 |
+
'Content-Type' => 'application/json'
|
597 |
+
),
|
598 |
+
'body' => wp_json_encode($data)
|
599 |
+
);
|
600 |
+
|
601 |
+
// Send remote request
|
602 |
+
$request = wp_remote_post($url, $args);
|
603 |
+
|
604 |
+
// Retrieve information
|
605 |
+
$response_code = wp_remote_retrieve_response_code($request);
|
606 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
607 |
+
$response_body = json_decode(wp_remote_retrieve_body($request));
|
608 |
+
|
609 |
+
if((isset($response_body->error) && $response_body->error == '')){
|
610 |
+
echo json_encode($response_body->data);
|
611 |
// return new WP_REST_Response(
|
612 |
// array(
|
613 |
// 'status' => $response_code,
|
615 |
// 'data' => $response_body->data
|
616 |
// )
|
617 |
// );
|
618 |
+
}else{
|
619 |
+
echo json_encode([]);
|
620 |
+
// return new WP_Error($response_code, $response_message, $response_body);
|
621 |
+
}
|
|
|
|
|
|
|
622 |
|
623 |
+
// echo json_encode( $categories );
|
624 |
+
}
|
625 |
+
|
626 |
+
// IMPORTANT: don't forget to exit
|
627 |
+
exit;
|
628 |
+
}
|
629 |
+
|
630 |
+
public function getPostMetaData($id){
|
631 |
+
$queries = new TVC_Queries();
|
632 |
+
$column2 = json_decode(json_encode($queries->getTablePostMeta($id)), true);
|
633 |
+
$arr = array();
|
634 |
+
foreach($column2 as $val){
|
635 |
+
$arr[$val['meta_key']] = $val['meta_value'];
|
636 |
+
}
|
637 |
+
return $arr;
|
638 |
+
}
|
639 |
+
|
640 |
+
/**
|
641 |
+
* create product batch for product sync up
|
642 |
+
*/
|
643 |
+
public function tvcajax_product_syncup(){
|
644 |
+
// make sure this call is legal
|
645 |
+
ini_set('max_execution_time', '0');
|
646 |
+
ini_set('memory_limit','-1');
|
647 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'productSyncupNonce'), 'tvcajax-product-syncup-nonce')){
|
648 |
+
|
649 |
+
if(!class_exists('CustomApi')){
|
650 |
+
include(ENHANCAD_PLUGIN_DIR . 'includes/setup/CustomApi.php');
|
651 |
+
}
|
652 |
+
$customObj = new CustomApi();
|
653 |
+
//echo "<br>1=>".round(microtime(true) * 1000);
|
654 |
+
$batchId = time();
|
655 |
+
$merchantId = filter_input(INPUT_POST, 'merchantId');
|
656 |
+
$customerId = filter_input(INPUT_POST, 'customerId');
|
657 |
+
$accountId = filter_input(INPUT_POST, 'accountId');
|
658 |
+
$subscriptionId = filter_input(INPUT_POST, 'subscriptionId');
|
659 |
+
$platformCustomerId = filter_input(INPUT_POST, 'platformCustomerId');
|
660 |
+
$data = filter_input(INPUT_POST, 'data');
|
661 |
+
parse_str($data, $formArray);
|
662 |
+
$mappedCatsDB = [];
|
663 |
+
$mappedCats = [];
|
664 |
+
$mappedAttrs = [];
|
665 |
+
$skipProducts = [];
|
666 |
+
foreach($formArray as $key => $value){
|
667 |
+
if(preg_match("/^category-name-/i", $key)){
|
668 |
+
if($value != ''){
|
669 |
+
$keyArray = explode("name-", $key);
|
670 |
+
$mappedCatsDB[$keyArray[1]]['name'] = $value;
|
671 |
+
}
|
672 |
+
unset($formArray[$key]);
|
673 |
+
}else if(preg_match("/^category-/i", $key)){
|
674 |
+
if($value != '' && $value > 0){
|
675 |
+
$keyArray = explode("-", $key);
|
676 |
+
$mappedCats[$keyArray[1]] = $value;
|
677 |
+
$mappedCatsDB[$keyArray[1]]['id'] = $value;
|
678 |
+
}
|
679 |
+
unset($formArray[$key]);
|
680 |
+
}else{
|
681 |
+
if($value){
|
682 |
+
$mappedAttrs[$key] = $value;
|
683 |
+
}
|
684 |
}
|
685 |
+
}
|
686 |
+
update_option("ee_prod_mapped_cats", serialize($mappedCatsDB));
|
687 |
+
update_option("ee_prod_mapped_attrs", serialize($mappedAttrs));
|
688 |
+
|
689 |
+
if(!empty($mappedCats)){
|
690 |
+
$catMapRequest = [];
|
691 |
+
$catMapRequest['subscription_id'] = $subscriptionId;
|
692 |
+
$catMapRequest['customer_id'] = $customerId;
|
693 |
+
$catMapRequest['merchant_id'] = $merchantId;
|
694 |
+
$catMapRequest['category'] = $mappedCats;
|
695 |
+
//$catMapResponse = $customObj->setGmcCategoryMapping($catMapRequest);
|
696 |
+
}
|
697 |
+
if(!empty($mappedAttrs)){
|
698 |
+
$attrMapRequest = [];
|
699 |
+
$attrMapRequest['subscription_id'] = $subscriptionId;
|
700 |
+
$attrMapRequest['customer_id'] = $customerId;
|
701 |
+
$attrMapRequest['merchant_id'] = $merchantId;
|
702 |
+
$attrMapRequest['attribute'] = $mappedAttrs;
|
703 |
+
//$attrMapResponse = $customObj->setGmcAttributeMapping($attrMapRequest);
|
704 |
+
}
|
705 |
+
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
706 |
+
$cat_list = $TVC_Admin_Helper->get_tvc_product_cat_list_with_name();
|
707 |
+
$tvc_currency = ((get_option('woocommerce_currency') != '')? get_option('woocommerce_currency') : 'USD');
|
708 |
+
$temp_product=array();
|
709 |
+
$fixed_att_select_list = array("gender", "age_group", "shipping", "tax", "content_language", "target_country", "condition");
|
710 |
+
foreach ($fixed_att_select_list as $fixed_key) {
|
711 |
+
if(isset($formArray[$fixed_key]) && $formArray[$fixed_key] != "" ){
|
712 |
+
if($fixed_key == "shipping" && $formArray[$fixed_key] != 0){
|
713 |
+
$temp_product[$fixed_key]['price']['value'] = $formArray[$fixed_key];
|
714 |
+
$temp_product[$fixed_key]['price']['currency'] = $tvc_currency;
|
715 |
+
$temp_product[$fixed_key]['country'] = $formArray['target_country'];
|
716 |
+
//$temp_product[$fixed_key] =$formArray['target_country'].'::'.$formArray[$fixed_key].' '.$tvc_currency;
|
717 |
+
}else if($fixed_key == "tax" && $formArray[$fixed_key] != 0){
|
718 |
+
//$temp_product[$fixed_key] =$formArray['target_country'].'::'.$formArray[$fixed_key];
|
719 |
+
$temp_product['taxes']['rate'] = $formArray[$fixed_key];
|
720 |
+
$temp_product['taxes']['country'] = $formArray['target_country'];
|
721 |
+
}else if( $formArray[$fixed_key] != 0 || $formArray[$fixed_key] != ""){
|
722 |
+
$temp_product[$fixed_key] = $formArray[$fixed_key];
|
723 |
+
}
|
724 |
}
|
725 |
+
unset($formArray[$fixed_key]);
|
726 |
+
}
|
727 |
+
|
728 |
+
$entries = [];
|
729 |
+
//print_r($mappedCats);
|
730 |
+
if(!empty($mappedCats)){
|
731 |
+
foreach($mappedCats as $mc_key => $mappedCat){
|
732 |
+
$all_products = get_posts(array(
|
733 |
+
'post_type' => 'product',
|
734 |
+
'numberposts' => -1,
|
735 |
+
'post_status' => 'publish',
|
736 |
+
'tax_query' => array(
|
737 |
+
array(
|
738 |
+
'taxonomy' => 'product_cat',
|
739 |
+
'field' => 'term_id',
|
740 |
+
'terms' => $mc_key, /* category name */
|
741 |
+
'operator' => 'IN'
|
742 |
+
)
|
743 |
+
)
|
744 |
+
));
|
745 |
+
|
746 |
+
foreach($all_products as $postkey => $postvalue){
|
747 |
+
|
748 |
+
$postmeta = [];
|
749 |
+
$postmeta = $this->getPostMetaData($postvalue->ID);
|
750 |
+
$prd = wc_get_product($postvalue->ID);
|
751 |
+
$postObj = (object) array_merge((array) $postvalue, (array) $postmeta);
|
752 |
+
|
753 |
+
$product = array(
|
754 |
+
'offer_id'=>$postvalue->ID,
|
755 |
+
'channel'=>'online',
|
756 |
+
'link'=>get_permalink($postvalue->ID),
|
757 |
+
'google_product_category'=>$mappedCat
|
758 |
+
);
|
759 |
+
if(isset($cat_list[$mc_key]) && $cat_list[$mc_key]!=""){
|
760 |
+
//$product['product_type'] = "Home > ".str_replace(array("-","_"), array(" "," ") , $cat_list[$mc_key]);
|
761 |
+
}
|
762 |
+
$product = array_merge($temp_product,$product);
|
763 |
+
|
764 |
+
if($prd->get_type() == "variable"){
|
765 |
+
$variation_attributes = $prd->get_variation_attributes();
|
766 |
+
$can_add_item_group_id = false;
|
767 |
+
$is_color_size = false;
|
768 |
+
if(!empty($variation_attributes)){
|
769 |
+
foreach($variation_attributes as $va_key => $va_value ){
|
770 |
+
$va_key = str_replace("_", " ", $va_key);
|
771 |
+
if (strpos($va_key, 'color') !== false) {
|
772 |
+
$can_add_item_group_id = true;
|
773 |
+
$is_color_size = true;
|
774 |
+
break;
|
775 |
+
}else if (strpos($va_key, 'size') !== false) {
|
776 |
+
$can_add_item_group_id = true;
|
777 |
+
$is_color_size = true;
|
778 |
+
break;
|
779 |
+
}
|
780 |
}
|
781 |
+
}
|
782 |
+
if(isset($formArray['gender']) && $formArray['gender']!= ""){
|
783 |
+
$can_add_item_group_id = true;
|
784 |
+
}else if(isset($formArray['age_group']) && $formArray['age_group']!= ""){
|
785 |
+
$can_add_item_group_id = true;
|
786 |
+
}
|
787 |
+
//echo "<br>".$mc_key."=>".$postvalue->ID."can_add_item_group_id=>".$can_add_item_group_id;
|
788 |
+
if($can_add_item_group_id == true){
|
789 |
+
$p_variations = $prd->get_available_variations();
|
790 |
+
if(!empty($p_variations)){
|
791 |
+
foreach ($p_variations as $v_key => $v_value) {
|
792 |
+
$postmeta_var = (object)$this->getPostMetaData($v_value['variation_id']);
|
793 |
+
$product['title'] = (isset($postObj->$formArray['title']))?$postObj->$formArray['title']:get_the_title($postvalue->ID);
|
794 |
+
$tvc_temp_desc_key = $formArray['description'];
|
795 |
+
$product['description'] = (isset($v_value['variation_description']) && $v_value['variation_description'] != "")?$v_value['variation_description']:$postObj->$tvc_temp_desc_key;
|
796 |
+
$product['offer_id'] = $v_value['variation_id'];
|
797 |
+
$product['id'] = $v_value['variation_id'];
|
798 |
+
$product['item_group_id'] = $postvalue->ID;
|
799 |
+
$image_id = $v_value['image_id'];
|
800 |
+
$product['image_link'] = wp_get_attachment_image_url($image_id, 'full');
|
801 |
+
if($is_color_size == true){
|
802 |
+
if(isset($v_value['attributes']) && !empty($v_value['attributes']) ){
|
803 |
+
foreach($v_value['attributes'] as $va_key => $va_value ){
|
804 |
+
$va_key = str_replace("_", " ", $va_key);
|
805 |
+
if (strpos($va_key, 'color') !== false) {
|
806 |
+
$product['color'] = $va_value;
|
807 |
+
}else if (strpos($va_key, 'size') !== false) {
|
808 |
+
$product['sizes'] = $va_value;
|
809 |
+
}
|
810 |
}
|
811 |
+
}
|
812 |
+
}
|
813 |
+
foreach($formArray as $key => $value){
|
814 |
+
if($key == 'price'){
|
815 |
+
if(isset($postmeta_var->$value) && $postmeta_var->$value > 0){
|
816 |
+
$product[$key]['value'] = $postmeta_var->$value;
|
817 |
+
}else if(isset($postmeta_var->_regular_price) && $postmeta_var->_regular_price && $postmeta_var->_regular_price >0 ){
|
818 |
+
$product[$key]['value'] = $postmeta_var->_regular_price;
|
819 |
+
}else if(isset($postmeta_var->_price) && $postmeta_var->_price && $postmeta_var->_price >0 ){
|
820 |
+
$product[$key]['value'] = $postmeta_var->_price;
|
821 |
+
}else if(isset($postmeta_var->_sale_price) && $postmeta_var->_sale_price && $postmeta_var->_sale_price >0 ){
|
822 |
+
$product[$key]['value'] = $postmeta_var->_sale_price;
|
823 |
}
|
824 |
+
if(isset($product[$key]['value']) && $product[$key]['value'] >0){
|
825 |
+
$product[$key]['currency'] = $tvc_currency;
|
826 |
+
}else{
|
827 |
+
$skipProducts[$postmeta_var->ID] = $postmeta_var;
|
828 |
}
|
829 |
+
}else if($key == 'sale_price'){
|
830 |
+
if(isset($postmeta_var->$value) && $postmeta_var->$value > 0){
|
831 |
+
$product[$key]['value'] = $postmeta_var->$value;
|
832 |
+
}else if(isset($postmeta_var->_sale_price) && $postmeta_var->_sale_price && $postmeta_var->_sale_price >0 ){
|
833 |
+
$product[$key]['value'] = $postmeta_var->_sale_price;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
834 |
}
|
835 |
+
if(isset($product[$key]['value']) && $product[$key]['value'] >0){
|
836 |
+
$product[$key]['currency'] = $tvc_currency;
|
837 |
+
}
|
838 |
+
}else if($key == 'availability'){
|
839 |
+
$tvc_find = array("instock","outofstock","onbackorder");
|
840 |
+
$tvc_replace = array("in stock","out of stock","preorder");
|
841 |
+
if(isset($postmeta_var->$value) && $postmeta_var->$value != ""){
|
842 |
+
$stock_status = $postmeta_var->$value;
|
843 |
+
$stock_status = str_replace($tvc_find,$tvc_replace,$stock_status);
|
844 |
+
$product[$key] = $stock_status;
|
845 |
+
}else{
|
846 |
+
$stock_status = $postmeta_var->_stock_status;
|
847 |
+
$stock_status = str_replace($tvc_find,$tvc_replace,$stock_status);
|
848 |
+
$product[$key] = $stock_status;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
849 |
}
|
850 |
+
}else if(isset($postmeta_var->$value) && $postmeta_var->$value != ""){$product[$key] = $postmeta_var->$value;
|
851 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
852 |
}
|
853 |
+
$entrie = [
|
854 |
+
'merchant_id' => $merchantId,
|
855 |
+
'batch_id' => ++$batchId,
|
856 |
+
'method' => 'insert',
|
857 |
+
'product' => $product
|
858 |
+
];
|
859 |
+
$entries[] = $entrie;
|
860 |
+
}
|
861 |
}
|
862 |
+
}else{
|
863 |
+
goto simpleproduct;
|
864 |
+
}
|
865 |
+
}else{
|
866 |
+
simpleproduct:
|
867 |
+
$image_id = $prd->get_image_id();
|
868 |
+
$product['image_link'] = wp_get_attachment_image_url($image_id, 'full');
|
869 |
+
foreach($formArray as $key => $value){
|
870 |
+
if($key == 'price'){
|
871 |
+
if(isset($postObj->$value) && $postObj->$value > 0){
|
872 |
+
$product[$key]['value'] = $postObj->$value;
|
873 |
+
}else if(isset($postObj->_regular_price) && $postObj->_regular_price && $postObj->_regular_price >0 ){
|
874 |
+
$product[$key]['value'] = $postObj->_regular_price;
|
875 |
+
}else if(isset($postObj->_price) && $postObj->_price && $postObj->_price >0 ){
|
876 |
+
$product[$key]['value'] = $postObj->_price;
|
877 |
+
}else if(isset($postObj->_sale_price) && $postObj->_sale_price && $postObj->_sale_price >0 ){
|
878 |
+
$product[$key]['value'] = $postObj->_sale_price;
|
879 |
+
}
|
880 |
+
if(isset($product[$key]['value']) && $product[$key]['value'] >0){
|
881 |
+
$product[$key]['currency'] = $tvc_currency;
|
882 |
+
}else{
|
883 |
+
$skipProducts[$postObj->ID] = $postObj;
|
884 |
+
}
|
885 |
+
}else if($key == 'sale_price'){
|
886 |
+
if(isset($postObj->$value) && $postObj->$value > 0){
|
887 |
+
$product[$key]['value'] = $postObj->$value;
|
888 |
+
}else if(isset($postObj->_sale_price) && $postObj->_sale_price && $postObj->_sale_price >0 ){
|
889 |
+
$product[$key]['value'] = $postObj->_sale_price;
|
890 |
+
}
|
891 |
+
if(isset($product[$key]['value']) && $product[$key]['value'] >0){
|
892 |
+
$product[$key]['currency'] = $tvc_currency;
|
893 |
+
}
|
894 |
+
}else if($key == 'availability'){
|
895 |
+
$tvc_find = array("instock","outofstock","onbackorder");
|
896 |
+
$tvc_replace = array("in stock","out of stock","preorder");
|
897 |
+
if(isset($postObj->$value) && $postObj->$value != ""){
|
898 |
+
$stock_status = $postObj->$value;
|
899 |
+
$stock_status = str_replace($tvc_find,$tvc_replace,$stock_status);
|
900 |
+
$product[$key] = $stock_status;
|
901 |
+
}else{
|
902 |
+
$stock_status = $postObj->_stock_status;
|
903 |
+
$stock_status = str_replace($tvc_find,$tvc_replace,$stock_status);
|
904 |
+
$product[$key] = $stock_status;
|
905 |
+
}
|
906 |
+
}else if(isset($postObj->$value) && $postObj->$value != ""){
|
907 |
+
//echo $key."==".$postObj->$value."<br>";
|
908 |
+
$product[$key] = $postObj->$value;
|
909 |
}
|
910 |
+
}
|
911 |
+
|
912 |
+
$entrie = [
|
913 |
+
'merchant_id' => $merchantId,
|
914 |
+
'batch_id' => ++$batchId,
|
915 |
+
'method' => 'insert',
|
916 |
+
'product' => $product
|
917 |
+
];
|
918 |
+
//print_r($entrie);
|
919 |
+
//exit;
|
920 |
+
$entries[] = $entrie;
|
921 |
}
|
922 |
|
923 |
+
|
924 |
+
}
|
925 |
+
wp_reset_query();
|
926 |
+
}
|
927 |
+
//print_r($entries);
|
928 |
+
$data = [
|
929 |
+
'merchant_id' => $accountId,
|
930 |
+
'account_id' => $merchantId,
|
931 |
+
'subscription_id' => $subscriptionId,
|
932 |
+
'entries' => $entries
|
933 |
+
];
|
934 |
+
$url = $this->apiDomain.'/products/batch';
|
935 |
+
$args = array(
|
936 |
+
'timeout' => 10000,
|
937 |
+
'headers' => array(
|
938 |
+
'Authorization' => "Bearer MTIzNA==",
|
939 |
+
'Content-Type' => 'application/json',
|
940 |
+
'AccessToken' => $this->generateAccessToken($this->get_tvc_access_token(), $this->get_tvc_refresh_token())
|
941 |
+
),
|
942 |
+
'body' => wp_json_encode($data)
|
943 |
+
);
|
944 |
+
|
945 |
+
$request = wp_remote_post($url, $args);
|
946 |
+
//print_r($request);
|
947 |
+
|
948 |
+
// Retrieve information
|
949 |
+
$response_code = wp_remote_retrieve_response_code($request);
|
950 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
951 |
+
$response_body = json_decode(wp_remote_retrieve_body($request));
|
952 |
+
//print_r($response_body);
|
953 |
+
//die;
|
954 |
+
if((isset($response_body->error) && $response_body->error == '')){
|
955 |
+
$customObj->setGmcCategoryMapping($catMapRequest);
|
956 |
+
$customObj->setGmcAttributeMapping($attrMapRequest);
|
957 |
+
echo json_encode(['status' => 'success', 'skipProducts' => count($skipProducts)]);
|
958 |
+
}else{
|
959 |
+
foreach($response_body->errors as $err){
|
960 |
+
$message = $err;
|
961 |
+
break;
|
962 |
+
}
|
963 |
+
echo json_encode(['status' => 'error', 'message' => $message]);
|
964 |
}
|
965 |
+
}else{
|
966 |
+
echo json_encode(['status' => 'error', 'message' => "Category mapping is null."]);
|
967 |
+
}
|
968 |
+
|
969 |
+
// echo json_encode( $categories );
|
970 |
+
}
|
971 |
+
// IMPORTANT: don't forget to exit
|
972 |
+
exit;
|
973 |
+
}
|
974 |
|
975 |
+
/**
|
976 |
+
* create product batch for product sync up
|
977 |
+
*/
|
978 |
+
public function tvcajax_custom_metrics_dimension(){
|
979 |
+
// make sure this call is legal
|
980 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'customMetricsDimensionNonce'), 'tvcajax-custom-metrics-dimension-nonce')){
|
981 |
|
982 |
+
if(!class_exists('CustomApi')){
|
983 |
+
include(ENHANCAD_PLUGIN_DIR . 'includes/setup/CustomApi.php');
|
984 |
+
}
|
985 |
+
$customObj = new CustomApi();
|
986 |
|
987 |
+
$accountId = filter_input(INPUT_POST, 'accountId');
|
988 |
// $accountId = '184918792';
|
989 |
+
$webPropertyId = filter_input(INPUT_POST, 'webPropertyId');
|
990 |
// $webPropertyId = 'UA-184918792-5';
|
991 |
+
$subscriptionId = filter_input(INPUT_POST, 'subscriptionId');
|
992 |
+
$data = filter_input(INPUT_POST, 'data');
|
993 |
+
parse_str($data, $formArray);
|
994 |
+
//print_r($formArray); // Only for print array
|
995 |
+
|
996 |
+
$customDimension = [];
|
997 |
+
$customMetrics = [];
|
998 |
+
$dimensions = [];
|
999 |
+
$metrics = [];
|
1000 |
+
|
1001 |
+
for($i = 1; $i <= 12; $i++){
|
1002 |
+
$dimension['id'] = "";
|
1003 |
+
$dimension['index'] = $formArray['did-' . $i];
|
1004 |
+
$dimension['active'] = true;
|
1005 |
+
$dimension['kind'] = "";
|
1006 |
+
$dimension['name'] = $formArray['dname-' . $i];
|
1007 |
+
$dimension['scope'] = $formArray['dscope-' . $i];
|
1008 |
+
$dimension['created'] = "";
|
1009 |
+
$dimension['updated'] = "";
|
1010 |
+
$dimension['self_link'] = "";
|
1011 |
+
$dimension['parent_link']['href'] = "";
|
1012 |
+
$dimension['parent_link']['parent_link_type'] = "";
|
1013 |
+
$dimensions[] = $dimension;
|
1014 |
+
}
|
1015 |
|
1016 |
+
for($i = 1; $i <= 7; $i++){
|
1017 |
+
$metric['id'] = "";
|
1018 |
+
$metric['index'] = $formArray['mid-' . $i];
|
1019 |
+
$metric['active'] = true;
|
1020 |
+
$metric['kind'] = "";
|
1021 |
+
$metric['name'] = $formArray['mname-' . $i];
|
1022 |
+
$metric['scope'] = $formArray['mscope-' . $i];
|
1023 |
+
$metric['created'] = "";
|
1024 |
+
$metric['updated'] = "";
|
1025 |
+
$metric['self_link'] = "";
|
1026 |
+
$metric['max_value'] = "";
|
1027 |
+
$metric['min_value'] = "";
|
1028 |
+
$metric['type'] = "INTEGER";
|
1029 |
+
$metric['parent_link']['href'] = "";
|
1030 |
+
$metric['parent_link']['parent_link_type'] = "";
|
1031 |
+
$metrics[] = $metric;
|
1032 |
+
}
|
1033 |
|
1034 |
+
if(!empty($dimensions)){
|
1035 |
+
$dimenRequest = [];
|
1036 |
+
$dimenRequest['account_id'] = $accountId;
|
1037 |
+
$dimenRequest['web_property_id'] = $webPropertyId;
|
1038 |
+
$dimenRequest['subscription_id'] = $subscriptionId;
|
1039 |
+
$dimenRequest['data'] = $dimensions;
|
1040 |
+
$dimenResponse = $customObj->createCustomDimensions($dimenRequest);
|
1041 |
+
}
|
1042 |
+
if(!empty($metrics)){
|
1043 |
+
$metrRequest = [];
|
1044 |
+
$metrRequest['account_id'] = $accountId;
|
1045 |
+
$metrRequest['web_property_id'] = $webPropertyId;
|
1046 |
+
$metrRequest['subscription_id'] = $subscriptionId;
|
1047 |
+
$metrRequest['data'] = $metrics;
|
1048 |
+
$metrResponse = $customObj->createCustomMetrics($metrRequest);
|
1049 |
+
}
|
1050 |
|
1051 |
|
1052 |
+
// Retrieve information
|
1053 |
+
/* $response_code = wp_remote_retrieve_response_code($request);
|
1054 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
1055 |
+
$response_body = json_decode(wp_remote_retrieve_body($request)); */
|
1056 |
|
1057 |
// print_r($dimenResponse);
|
1058 |
// echo "=======";
|
1060 |
// exit;
|
1061 |
|
1062 |
|
1063 |
+
if((isset($dimenResponse->error) && $dimenResponse->error == '' && isset($metrResponse->error) && $metrResponse->error == '')){
|
1064 |
+
echo json_encode(['status' => 'success']);
|
1065 |
// return new WP_REST_Response(
|
1066 |
// array(
|
1067 |
// 'status' => $response_code,
|
1069 |
// 'data' => $response_body->data
|
1070 |
// )
|
1071 |
// );
|
1072 |
+
}else{
|
1073 |
+
$metrError = '';
|
1074 |
+
$dimenError = '';
|
1075 |
+
$message = NULL;
|
1076 |
+
if($dimenResponse->errors){
|
1077 |
+
/* print_r($dimenResponse->errors); */
|
1078 |
+
$dimenError = $dimenResponse->errors[0];
|
1079 |
+
$message = str_replace('this entity', 'dimensions ', $dimenError);
|
1080 |
+
}
|
1081 |
+
if($metrResponse->errors){
|
1082 |
+
/* print_r($metrResponse->errors); */
|
1083 |
+
$metrError = str_replace('this entity', 'metrics ', $metrResponse->errors[0]);
|
1084 |
+
$message = is_null($message) ? $metrError : $message . ' ' . $metrError;
|
1085 |
+
}
|
1086 |
+
echo json_encode(['status' => 'error', 'message' => $message]);
|
1087 |
+
}
|
1088 |
+
}
|
1089 |
+
|
1090 |
+
// IMPORTANT: don't forget to exit
|
1091 |
+
exit;
|
1092 |
+
}
|
1093 |
+
|
1094 |
+
public function tvcajax_store_time_taken(){
|
1095 |
+
// make sure this call is legal
|
1096 |
+
if($this->safe_ajax_call(filter_input(INPUT_POST, 'campaignCategoryListsNonce'), 'tvcajax-store-time-taken-nonce')){
|
1097 |
+
$ee_options_data = unserialize(get_option('ee_options'));
|
1098 |
+
if(isset($ee_options_data['subscription_id'])) {
|
1099 |
+
$ee_subscription_id = $ee_options_data['subscription_id'];
|
1100 |
+
} else {
|
1101 |
+
$ee_subscription_id = null;
|
1102 |
+
}
|
1103 |
+
$url = $this->apiDomain.'/customer-subscriptions/update-setup-time';
|
1104 |
+
$data = [
|
1105 |
+
'subscription_id' => $ee_subscription_id,
|
1106 |
+
'setup_start_time' => date('Y-m-d H:i:s'),
|
1107 |
+
];
|
1108 |
+
$args = array(
|
1109 |
+
'headers' => array(
|
1110 |
+
'Authorization' => "Bearer MTIzNA==",
|
1111 |
+
'Content-Type' => 'application/json'
|
1112 |
+
),
|
1113 |
+
'body' => wp_json_encode($data)
|
1114 |
+
);
|
1115 |
+
// Send remote request
|
1116 |
+
$request = wp_remote_post($url, $args);
|
1117 |
+
// Retrieve information
|
1118 |
+
$response_code = wp_remote_retrieve_response_code($request);
|
1119 |
+
$response_message = wp_remote_retrieve_response_message($request);
|
1120 |
+
$response_body = json_decode(wp_remote_retrieve_body($request));
|
1121 |
+
if((isset($response_body->error) && $response_body->error == '')){
|
1122 |
+
echo json_encode($response_body->data);
|
1123 |
// return new WP_REST_Response(
|
1124 |
// array(
|
1125 |
// 'status' => $response_code,
|
1127 |
// 'data' => $response_body->data
|
1128 |
// )
|
1129 |
// );
|
1130 |
+
}else{
|
1131 |
+
echo json_encode([]);
|
1132 |
+
// return new WP_Error($response_code, $response_message, $response_body);
|
1133 |
+
}
|
1134 |
|
1135 |
+
// echo json_encode( $categories );
|
1136 |
+
}
|
1137 |
+
|
1138 |
+
// IMPORTANT: don't forget to exit
|
1139 |
+
exit;
|
1140 |
+
}
|
1141 |
+
public function generateAccessToken($access_token, $refresh_token) {
|
1142 |
+
$request = "https://www.googleapis.com/oauth2/v1/tokeninfo?"
|
1143 |
+
. "access_token=" . $access_token;
|
1144 |
+
|
1145 |
+
$ch = curl_init();
|
1146 |
+
curl_setopt($ch, CURLOPT_URL, $request);
|
1147 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
|
1148 |
+
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
|
1149 |
+
$response = curl_exec($ch);
|
1150 |
+
$result = json_decode($response);
|
1151 |
+
|
1152 |
+
if (isset($result->error) && $result->error) {
|
1153 |
+
$credentials_file = ENHANCAD_PLUGIN_DIR . 'includes/setup/json/client-secrets.json';
|
1154 |
+
$str = file_get_contents($credentials_file);
|
1155 |
+
$credentials = $str ? json_decode($str, true) : [];
|
1156 |
+
$url = 'https://www.googleapis.com/oauth2/v4/token';
|
1157 |
+
$header = array("content-type: application/json");
|
1158 |
+
$clientId = $credentials['web']['client_id'];
|
1159 |
+
$clientSecret = $credentials['web']['client_secret'];
|
1160 |
+
$refreshToken = $refresh_token;
|
1161 |
+
$data = [
|
1162 |
+
"grant_type" => 'refresh_token',
|
1163 |
+
"client_id" => $clientId,
|
1164 |
+
'client_secret' => $clientSecret,
|
1165 |
+
'refresh_token' => $refreshToken,
|
1166 |
+
];
|
1167 |
+
|
1168 |
+
$postData = json_encode($data);
|
1169 |
+
$ch = curl_init();
|
1170 |
+
curl_setopt_array($ch, array(
|
1171 |
+
CURLOPT_URL => $url, //esc_url($this->curl_url),
|
1172 |
+
CURLOPT_RETURNTRANSFER => true,
|
1173 |
+
CURLOPT_TIMEOUT => 0,
|
1174 |
+
CURLOPT_HTTPHEADER => $header,
|
1175 |
+
CURLOPT_POSTFIELDS => $postData
|
1176 |
+
));
|
1177 |
+
$response = curl_exec($ch);
|
1178 |
+
$response = json_decode($response);
|
1179 |
+
return $response->access_token;
|
1180 |
+
} else {
|
1181 |
+
return $access_token;
|
1182 |
+
}
|
1183 |
+
}
|
1184 |
+
public function woo_country(){
|
1185 |
+
// The country/state
|
1186 |
+
$store_raw_country = get_option('woocommerce_default_country');
|
1187 |
+
// Split the country/state
|
1188 |
+
$split_country = explode(":", $store_raw_country);
|
1189 |
+
return $split_country;
|
1190 |
+
}
|
1191 |
|
1192 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1193 |
|
1194 |
+
// End of TVC_Ajax_File_Class
|
1195 |
|
1196 |
endif;
|
1197 |
|
includes/data/class-tvc-queries.php
CHANGED
@@ -962,7 +962,9 @@ if ( ! class_exists( 'TVC_Queries' ) ) :
|
|
962 |
}
|
963 |
|
964 |
public function getTablePostMeta($post_id) {
|
965 |
-
|
|
|
|
|
966 |
}
|
967 |
}
|
968 |
// End of TVC_Queries class
|
962 |
}
|
963 |
|
964 |
public function getTablePostMeta($post_id) {
|
965 |
+
global $wpdb;
|
966 |
+
$tve_table_prefix = $wpdb->prefix;
|
967 |
+
return $this->_wpdb->get_results("SELECT meta_key,meta_value FROM ".$tve_table_prefix."postmeta where post_id=" . $post_id);
|
968 |
}
|
969 |
}
|
970 |
// End of TVC_Queries class
|
includes/data/class-tvc-taxonomies.php
CHANGED
@@ -118,7 +118,7 @@ if ( ! class_exists( 'TVC_Taxonomies' ) ) :
|
|
118 |
|
119 |
public static function get_shop_categories_list() {
|
120 |
$args = array(
|
121 |
-
'hide_empty' =>
|
122 |
'taxonomy' => 'product_cat',
|
123 |
'hierarchical' => 1,
|
124 |
'orderby' => 'name',
|
118 |
|
119 |
public static function get_shop_categories_list() {
|
120 |
$args = array(
|
121 |
+
'hide_empty' => 1,
|
122 |
'taxonomy' => 'product_cat',
|
123 |
'hierarchical' => 1,
|
124 |
'orderby' => 'name',
|
includes/data/js/tvc_data.js
DELETED
@@ -1,105 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
/**
|
3 |
-
* Returns an array with all possible condition options
|
4 |
-
*
|
5 |
-
* @return {array} An array with possible condition options
|
6 |
-
*/
|
7 |
-
function tvc_queryOptionsEng() {
|
8 |
-
|
9 |
-
return [
|
10 |
-
'includes', 'does not include', 'is equal to', 'is not equal to', 'is empty', 'is not empty', 'starts with',
|
11 |
-
'does not start with', 'ends with', 'does not end with', 'is greater than', 'is greater or equal to', 'is smaller than',
|
12 |
-
'is smaller or equal to', 'is between'
|
13 |
-
];
|
14 |
-
}
|
15 |
-
|
16 |
-
function tvc_changeValuesOptions() {
|
17 |
-
|
18 |
-
return [ 'change nothing', 'overwrite', 'replace', 'remove', 'add prefix', 'add suffix', 'recalculate', 'convert to child-element' ];
|
19 |
-
}
|
20 |
-
|
21 |
-
function tvc_changeValuesRecalculateOptions() {
|
22 |
-
|
23 |
-
return [ 'add', 'subtract', 'multiply', 'divide' ];
|
24 |
-
}
|
25 |
-
|
26 |
-
function tvc_woocommerceSourceOptions() {
|
27 |
-
|
28 |
-
return [
|
29 |
-
{value: '_backorders', label: 'Allow Backorders', prop: 'meta'},
|
30 |
-
//{ value: '_button_text', label: 'Button Text', prop: 'meta' },
|
31 |
-
//{value:'', label:'Cross-Sells', prop:'meta'},
|
32 |
-
{value: '_height', label: 'Dimensions Height', prop: 'meta'},
|
33 |
-
{value: '_length', label: 'Dimensions Length', prop: 'meta'},
|
34 |
-
{value: '_width', label: 'Dimensions Width', prop: 'meta'},
|
35 |
-
{value: '_downloadable', label: 'Downloadable', prop: 'meta'},
|
36 |
-
//{value:'', label:'Enable Reviews', prop:'meta'},
|
37 |
-
{value: 'attachment_url', label: 'Featured Image', prop: 'main'}, // in the end this item will be handled procedural
|
38 |
-
//{value:'', label:'Grouping', prop:'meta'},
|
39 |
-
{value: 'item_group_id', label: 'Item Group Id', prop: 'main'},
|
40 |
-
{value: '_wp_attachement_metadata', label: 'Image Library', prop: 'main'},
|
41 |
-
{value: '_manage_stock', label: 'Manage Stock?', prop: 'meta'},
|
42 |
-
{value: '_max_variation_price', label: 'Max Variation Price', prop: 'meta'},
|
43 |
-
{value: '_max_variation_regular_price', label: 'Max Variation Regular Price', prop: 'meta'},
|
44 |
-
{value: '_max_variation_sale_price', label: 'Max Variation Sale Price', prop: 'meta'},
|
45 |
-
{value: 'menu_order', label: 'Menu Order', prop: 'meta'},
|
46 |
-
{value: '_min_variation_price', label: 'Min Variation Price', prop: 'meta'},
|
47 |
-
{value: '_min_variation_regular_price', label: 'Min Variation Regular Price', prop: 'meta'},
|
48 |
-
{value: '_min_variation_sale_price', label: 'Min Variation Sale Price', prop: 'meta'},
|
49 |
-
{value: 'post_author', label: 'Post Author', prop: 'post'},
|
50 |
-
{value: 'post_date', label: 'Post Date', prop: 'post'},
|
51 |
-
{value: 'post_date_gmt', label: 'Post Date GMT', prop: 'post'},
|
52 |
-
{value: 'ID', label: 'Post ID', prop: 'post'},
|
53 |
-
{value: 'post_modified', label: 'Post Modified', prop: 'post'},
|
54 |
-
{value: 'post_modified_gmt', label: 'Post Modified GMT', prop: 'post'},
|
55 |
-
{value: 'product_cat_string', label: 'Product Category String', prop: 'main'},
|
56 |
-
{value: 'post_content', label: 'Product Description', prop: 'post'},
|
57 |
-
{value: 'post_excerpt', label: 'Product Short Description', prop: 'post'},
|
58 |
-
{value: 'product_tags', label: 'Product Tags', prop: 'meta'},
|
59 |
-
{value: 'post_title', label: 'Product Title', prop: 'post'},
|
60 |
-
{value: 'tvc_product_brand', label: 'Product brand', prop: 'meta'},
|
61 |
-
{value: 'tvc_product_gtin', label: 'Product GTIN', prop: 'meta'},
|
62 |
-
{value: 'tvc_product_mpn', label: 'Product MPN', prop: 'meta'},
|
63 |
-
{value: 'product_variation_title_without_attributes', label: 'Product Title Without Variable Attributes', prop: 'meta'},
|
64 |
-
{value: 'product_type', label: 'Product Type', prop: 'meta'},
|
65 |
-
{value: 'permalink', label: 'Permalink', prop: 'post'},
|
66 |
-
//{value:'', label:'Purchase Note', prop:'meta'},
|
67 |
-
{value: '_regular_price', label: 'Regular Price', prop: 'meta'},
|
68 |
-
{value: '_sale_price', label: 'Sale Price', prop: 'meta'},
|
69 |
-
{value: '_sale_price_dates_from', label: 'Sale Price Dates From', prop: 'meta'},
|
70 |
-
{value: '_sale_price_dates_to', label: 'Sale Price Dates To', prop: 'meta'},
|
71 |
-
{value: 'product_cat', label: 'Selected Product Categories', prop: 'main'},
|
72 |
-
{value: 'fixed_shipping_price', label: 'Fixed Shipping Price', prop: 'main'},
|
73 |
-
{value: 'shipping_class', label: 'Shipping Class', prop: 'main'},
|
74 |
-
{value: '_sku', label: 'SKU', prop: 'meta'},
|
75 |
-
{value: '_sold_individually', label: 'Sold Individually', prop: 'meta'},
|
76 |
-
{value: '_stock', label: 'Stock Qty', prop: 'meta'},
|
77 |
-
{value: '_stock_status', label: 'Stock Status', prop: 'meta'},
|
78 |
-
{value: '_tax_status', label: 'Tax Status', prop: 'meta'},
|
79 |
-
{value: '_tax_class', label: 'Tax Class', prop: 'meta'},
|
80 |
-
//{value:'', label:'Up-Sells', prop:'meta'},
|
81 |
-
{value: '_virtual', label: 'Virtual', prop: 'meta'},
|
82 |
-
{value: '_weight', label: 'Weight', prop: 'meta'},
|
83 |
-
{value: 'wc_currency', label: 'WooCommerce Currency', prop: 'main'},
|
84 |
-
{value: 'last_update', label: 'Last Feed Update', prop: 'main'},
|
85 |
-
{value: 'empty', label: 'Remove from feed', prop: 'meta'},
|
86 |
-
];
|
87 |
-
}
|
88 |
-
|
89 |
-
function tvc_sourceOptionsConverter( optionValue ) {
|
90 |
-
|
91 |
-
var list = tvc_woocommerceSourceOptions();
|
92 |
-
|
93 |
-
for ( var key in list ) {
|
94 |
-
|
95 |
-
if ( list[ key ][ 'value' ] === optionValue ) {
|
96 |
-
return list[ key ][ 'label' ];
|
97 |
-
break;
|
98 |
-
}
|
99 |
-
}
|
100 |
-
}
|
101 |
-
|
102 |
-
function tvc_validateUrl( url ) {
|
103 |
-
var pattern = /^(?:(?:https?|ftp):\/\/)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/;
|
104 |
-
return ! ! pattern.test( url );
|
105 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/data/js/tvc_data.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
function tvc_queryOptionsEng(){return["includes","does not include","is equal to","is not equal to","is empty","is not empty","starts with","does not start with","ends with","does not end with","is greater than","is greater or equal to","is smaller than","is smaller or equal to","is between"]}function tvc_changeValuesOptions(){return["change nothing","overwrite","replace","remove","add prefix","add suffix","recalculate","convert to child-element"]}function tvc_changeValuesRecalculateOptions(){return["add","subtract","multiply","divide"]}function tvc_woocommerceSourceOptions(){return[{value:"_backorders",label:"Allow Backorders",prop:"meta"},{value:"_height",label:"Dimensions Height",prop:"meta"},{value:"_length",label:"Dimensions Length",prop:"meta"},{value:"_width",label:"Dimensions Width",prop:"meta"},{value:"_downloadable",label:"Downloadable",prop:"meta"},{value:"attachment_url",label:"Featured Image",prop:"main"},{value:"item_group_id",label:"Item Group Id",prop:"main"},{value:"_wp_attachement_metadata",label:"Image Library",prop:"main"},{value:"_manage_stock",label:"Manage Stock?",prop:"meta"},{value:"_max_variation_price",label:"Max Variation Price",prop:"meta"},{value:"_max_variation_regular_price",label:"Max Variation Regular Price",prop:"meta"},{value:"_max_variation_sale_price",label:"Max Variation Sale Price",prop:"meta"},{value:"menu_order",label:"Menu Order",prop:"meta"},{value:"_min_variation_price",label:"Min Variation Price",prop:"meta"},{value:"_min_variation_regular_price",label:"Min Variation Regular Price",prop:"meta"},{value:"_min_variation_sale_price",label:"Min Variation Sale Price",prop:"meta"},{value:"post_author",label:"Post Author",prop:"post"},{value:"post_date",label:"Post Date",prop:"post"},{value:"post_date_gmt",label:"Post Date GMT",prop:"post"},{value:"ID",label:"Post ID",prop:"post"},{value:"post_modified",label:"Post Modified",prop:"post"},{value:"post_modified_gmt",label:"Post Modified GMT",prop:"post"},{value:"product_cat_string",label:"Product Category String",prop:"main"},{value:"post_content",label:"Product Description",prop:"post"},{value:"post_excerpt",label:"Product Short Description",prop:"post"},{value:"product_tags",label:"Product Tags",prop:"meta"},{value:"post_title",label:"Product Title",prop:"post"},{value:"tvc_product_brand",label:"Product brand",prop:"meta"},{value:"tvc_product_gtin",label:"Product GTIN",prop:"meta"},{value:"tvc_product_mpn",label:"Product MPN",prop:"meta"},{value:"product_variation_title_without_attributes",label:"Product Title Without Variable Attributes",prop:"meta"},{value:"product_type",label:"Product Type",prop:"meta"},{value:"permalink",label:"Permalink",prop:"post"},{value:"_regular_price",label:"Regular Price",prop:"meta"},{value:"_sale_price",label:"Sale Price",prop:"meta"},{value:"_sale_price_dates_from",label:"Sale Price Dates From",prop:"meta"},{value:"_sale_price_dates_to",label:"Sale Price Dates To",prop:"meta"},{value:"product_cat",label:"Selected Product Categories",prop:"main"},{value:"fixed_shipping_price",label:"Fixed Shipping Price",prop:"main"},{value:"shipping_class",label:"Shipping Class",prop:"main"},{value:"_sku",label:"SKU",prop:"meta"},{value:"_sold_individually",label:"Sold Individually",prop:"meta"},{value:"_stock",label:"Stock Qty",prop:"meta"},{value:"_stock_status",label:"Stock Status",prop:"meta"},{value:"_tax_status",label:"Tax Status",prop:"meta"},{value:"_tax_class",label:"Tax Class",prop:"meta"},{value:"_virtual",label:"Virtual",prop:"meta"},{value:"_weight",label:"Weight",prop:"meta"},{value:"wc_currency",label:"WooCommerce Currency",prop:"main"},{value:"last_update",label:"Last Feed Update",prop:"main"},{value:"empty",label:"Remove from feed",prop:"meta"}]}function tvc_sourceOptionsConverter(c){var b=tvc_woocommerceSourceOptions();for(var a in b){if(b[a]["value"]===c){return b[a]["label"];break}}}function tvc_validateUrl(a){var b=/^(?:(?:https?|ftp):\/\/)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)(?:\.(?:[a-z\u00a1-\uffff0-9]-*)*[a-z\u00a1-\uffff0-9]+)*(?:\.(?:[a-z\u00a1-\uffff]{2,})))(?::\d{2,5})?(?:\/\S*)?$/;return !!b.test(a)};
|
|
includes/data/js/tvc_feed-queue-string.js
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
"use strict";
|
2 |
-
function tvcAddToQueueString( idToAdd ) {
|
3 |
-
var listElement = jQuery( '#tvc-feed-list-feeds-in-queue' );
|
4 |
-
|
5 |
-
if ( tvcQueueStringIsEmpty() ) {
|
6 |
-
listElement.text( idToAdd );
|
7 |
-
} else {
|
8 |
-
listElement.text( listElement.text() + ',' + idToAdd );
|
9 |
-
}
|
10 |
-
}
|
11 |
-
|
12 |
-
function tvcRemoveFromQueueString( idToRemove ) {
|
13 |
-
var listElement = jQuery( '#tvc-feed-list-feeds-in-queue' );
|
14 |
-
var currentString = listElement.text();
|
15 |
-
|
16 |
-
if ( currentString.indexOf( ',' ) > -1 ) {
|
17 |
-
currentString = currentString.endsWith( idToRemove ) ? currentString.replace( idToRemove, '' ) : currentString.replace( idToRemove + ',', '' );
|
18 |
-
listElement.text( currentString );
|
19 |
-
} else {
|
20 |
-
tvcClearQueueString();
|
21 |
-
}
|
22 |
-
}
|
23 |
-
|
24 |
-
function tvcQueueStringIsEmpty() {
|
25 |
-
return jQuery( '#tvc-feed-list-feeds-in-queue' ).text().length < 1;
|
26 |
-
}
|
27 |
-
|
28 |
-
function tvcClearQueueString() {
|
29 |
-
jQuery( '#tvc-feed-list-feeds-in-queue' ).text( '' );
|
30 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/data/js/tvc_feed-queue-string.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
function tvcAddToQueueString(b){var a=jQuery("#tvc-feed-list-feeds-in-queue");if(tvcQueueStringIsEmpty()){a.text(b)}else{a.text(a.text()+","+b)}}function tvcRemoveFromQueueString(a){var c=jQuery("#tvc-feed-list-feeds-in-queue");var b=c.text();if(b.indexOf(",")>-1){b=b.endsWith(a)?b.replace(a,""):b.replace(a+",","");c.text(b)}else{tvcClearQueueString()}}function tvcQueueStringIsEmpty(){return jQuery("#tvc-feed-list-feeds-in-queue").text().length<1}function tvcClearQueueString(){jQuery("#tvc-feed-list-feeds-in-queue").text("")};
|
|
includes/data/js/tvc_metadatahandling.js
DELETED
@@ -1,596 +0,0 @@
|
|
1 |
-
|
2 |
-
"use strict";
|
3 |
-
function tvc_storeSourceValue( level, currentMetaValue, type, valueToStore ) {
|
4 |
-
|
5 |
-
console.log( 'level:', level );
|
6 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
7 |
-
console.log( 'type:', type );
|
8 |
-
console.log( 'valueToStore:', valueToStore );
|
9 |
-
|
10 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
11 |
-
|
12 |
-
if ( o && 't' in o ) {
|
13 |
-
return currentMetaValue;
|
14 |
-
} // do not change the meta value if it contains the main category
|
15 |
-
|
16 |
-
if ( valueToStore && type !== 'clear' ) {
|
17 |
-
|
18 |
-
var t = {}, s = {};
|
19 |
-
|
20 |
-
s[ type ] = valueToStore;
|
21 |
-
|
22 |
-
t.s = s;
|
23 |
-
|
24 |
-
if ( o.hasOwnProperty( 'm' ) ) {
|
25 |
-
|
26 |
-
if ( ! o.m[ level ] ) {
|
27 |
-
|
28 |
-
o.m[ level ] = t;
|
29 |
-
} else {
|
30 |
-
|
31 |
-
o.m[ level ].s = s;
|
32 |
-
}
|
33 |
-
} else {
|
34 |
-
var m = [];
|
35 |
-
|
36 |
-
m.push( t );
|
37 |
-
o.m = m;
|
38 |
-
}
|
39 |
-
} else if ( type === 'clear' ) {
|
40 |
-
|
41 |
-
if ( o.hasOwnProperty( 'm' ) ) {
|
42 |
-
|
43 |
-
if ( o.m.length > 1 ) {
|
44 |
-
|
45 |
-
if ( ! o.m[ level ].c ) {
|
46 |
-
|
47 |
-
o.m.splice( level, 1 );
|
48 |
-
} else {
|
49 |
-
|
50 |
-
delete o.m[ level ].s;
|
51 |
-
}
|
52 |
-
} else {
|
53 |
-
|
54 |
-
delete o.m;
|
55 |
-
}
|
56 |
-
} else {
|
57 |
-
|
58 |
-
o = {};
|
59 |
-
}
|
60 |
-
}
|
61 |
-
|
62 |
-
var newValue = typeof (
|
63 |
-
o
|
64 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
65 |
-
|
66 |
-
console.log( 'result:', newValue );
|
67 |
-
return newValue;
|
68 |
-
}
|
69 |
-
|
70 |
-
function tvc_storeConditionValue( sourceLevel, conditionLevel, currentMetaValue, newCondition ) {
|
71 |
-
|
72 |
-
console.log( 'sourceLevel:', sourceLevel );
|
73 |
-
console.log( 'conditionLevel:', conditionLevel );
|
74 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
75 |
-
console.log( 'newCondition:', newCondition );
|
76 |
-
|
77 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
78 |
-
var conditionPos = conditionLevel - 1;
|
79 |
-
var t = {};
|
80 |
-
var q = {};
|
81 |
-
|
82 |
-
if ( newCondition ) {
|
83 |
-
|
84 |
-
if ( ! o.hasOwnProperty( 'm' ) ) {
|
85 |
-
|
86 |
-
var m = [];
|
87 |
-
|
88 |
-
m.push( t );
|
89 |
-
o.m = m;
|
90 |
-
}
|
91 |
-
|
92 |
-
if ( o.m[ sourceLevel ] && o.m[ sourceLevel ].hasOwnProperty( 'c' ) ) {
|
93 |
-
|
94 |
-
q[ conditionLevel ] = newCondition;
|
95 |
-
|
96 |
-
if ( o.m[ sourceLevel ].c.hasOwnProperty( conditionPos ) ) {
|
97 |
-
|
98 |
-
o.m[ sourceLevel ].c[ conditionPos ] = q;
|
99 |
-
} else {
|
100 |
-
|
101 |
-
o.m[ sourceLevel ].c.push( q );
|
102 |
-
}
|
103 |
-
} else {
|
104 |
-
|
105 |
-
var c = [];
|
106 |
-
|
107 |
-
q[ conditionLevel ] = newCondition;
|
108 |
-
|
109 |
-
c.push( q );
|
110 |
-
|
111 |
-
t.c = c;
|
112 |
-
|
113 |
-
o.m[ sourceLevel ].c = c;
|
114 |
-
}
|
115 |
-
}
|
116 |
-
|
117 |
-
var newValue = typeof (
|
118 |
-
o
|
119 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
120 |
-
|
121 |
-
console.log( 'result:', newValue );
|
122 |
-
return newValue;
|
123 |
-
}
|
124 |
-
|
125 |
-
function tvc_storeCombinedValue( sourceLevel, currentMetaValue, valueToStore ) {
|
126 |
-
|
127 |
-
console.log( 'sourceLevel:', sourceLevel );
|
128 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
129 |
-
console.log( 'valueToStore:', valueToStore );
|
130 |
-
|
131 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
132 |
-
|
133 |
-
if ( valueToStore ) {
|
134 |
-
|
135 |
-
var m = [], t = {}, s = {};
|
136 |
-
|
137 |
-
if ( ! o.hasOwnProperty( 'm' ) ) {
|
138 |
-
|
139 |
-
m.push( t );
|
140 |
-
o.m = m;
|
141 |
-
}
|
142 |
-
|
143 |
-
if ( ! o.m[ sourceLevel ].hasOwnProperty( 's' ) ) {
|
144 |
-
|
145 |
-
s[ 'source' ] = 'combined';
|
146 |
-
o.m[ sourceLevel ].s = s;
|
147 |
-
}
|
148 |
-
|
149 |
-
o.m[ sourceLevel ].s.f = valueToStore;
|
150 |
-
}
|
151 |
-
|
152 |
-
var newValue = typeof (
|
153 |
-
o
|
154 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
155 |
-
|
156 |
-
console.log( 'result:', newValue );
|
157 |
-
|
158 |
-
return newValue;
|
159 |
-
}
|
160 |
-
|
161 |
-
function tvc_storeValueChange( sourceLevel, valueEditorLevel, valueToStore, action, currentMetaValue ) {
|
162 |
-
|
163 |
-
console.log( 'sourceLevel:', sourceLevel );
|
164 |
-
console.log( 'valueEditorLevel:', valueEditorLevel );
|
165 |
-
console.log( 'valueToStore:', valueToStore );
|
166 |
-
console.log( 'action:', action );
|
167 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
168 |
-
|
169 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
170 |
-
var t = {};
|
171 |
-
|
172 |
-
if ( valueToStore && action === 'add' ) {
|
173 |
-
|
174 |
-
t[ sourceLevel + 1 ] = valueToStore;
|
175 |
-
|
176 |
-
if ( o.hasOwnProperty( 'v' ) ) {
|
177 |
-
|
178 |
-
if ( o.v[ sourceLevel ] && o.v[ sourceLevel ].hasOwnProperty( 'q' ) ) {
|
179 |
-
|
180 |
-
o.v[ sourceLevel ][ valueEditorLevel + 1 ] = valueToStore;
|
181 |
-
} else {
|
182 |
-
|
183 |
-
o.v[ sourceLevel ] = t;
|
184 |
-
}
|
185 |
-
} else {
|
186 |
-
|
187 |
-
var v = [];
|
188 |
-
|
189 |
-
v.push( t );
|
190 |
-
o.v = v;
|
191 |
-
}
|
192 |
-
} else if ( action === 'clear' ) {
|
193 |
-
|
194 |
-
if ( 'v' in o ) {
|
195 |
-
|
196 |
-
if ( o.v.length > 1 ) {
|
197 |
-
|
198 |
-
if ( ! o.v[ sourceLevel ].q ) {
|
199 |
-
|
200 |
-
o.v.splice( sourceLevel, 1 );
|
201 |
-
} else {
|
202 |
-
|
203 |
-
delete o.v[ sourceLevel ].s;
|
204 |
-
}
|
205 |
-
} else {
|
206 |
-
|
207 |
-
delete o.v;
|
208 |
-
}
|
209 |
-
} else {
|
210 |
-
|
211 |
-
o = {};
|
212 |
-
}
|
213 |
-
}
|
214 |
-
|
215 |
-
var newValue = typeof (
|
216 |
-
o
|
217 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
218 |
-
|
219 |
-
console.log( 'result:', newValue );
|
220 |
-
|
221 |
-
return newValue;
|
222 |
-
}
|
223 |
-
|
224 |
-
function tvc_removeCombinedValue( sourceLevel, combinedLevel, currentMetaValue ) {
|
225 |
-
|
226 |
-
console.log( 'sourceLevel:', sourceLevel );
|
227 |
-
console.log( 'combinedLevel:', combinedLevel );
|
228 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
229 |
-
|
230 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
231 |
-
|
232 |
-
if ( o.hasOwnProperty( 'm' ) && o.m[ sourceLevel ].hasOwnProperty( 's' ) && o.m[ sourceLevel ].s.hasOwnProperty( 'f' ) ) {
|
233 |
-
|
234 |
-
if ( o.m[ sourceLevel ].s.f ) {
|
235 |
-
|
236 |
-
var combinedValues = o.m[ sourceLevel ].s.f.split( '|' );
|
237 |
-
|
238 |
-
combinedValues.splice( combinedLevel - 1, 1 );
|
239 |
-
|
240 |
-
o.m[ sourceLevel ].s.f = tvc_makeCombinedValuesStringFromArray( combinedValues );
|
241 |
-
}
|
242 |
-
}
|
243 |
-
|
244 |
-
var newValue = typeof (
|
245 |
-
o
|
246 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
247 |
-
|
248 |
-
console.log( 'result:', newValue );
|
249 |
-
|
250 |
-
return newValue;
|
251 |
-
}
|
252 |
-
|
253 |
-
function tvc_removeConditionValue( sourceLevel, conditionLevel, currentMetaValue ) {
|
254 |
-
|
255 |
-
console.log( 'sourceLevel:', sourceLevel );
|
256 |
-
console.log( 'conditionLevel:', conditionLevel );
|
257 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
258 |
-
|
259 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
260 |
-
var coi = null;
|
261 |
-
|
262 |
-
if ( o && o.hasOwnProperty( 'm' ) && o.m[ sourceLevel ] && o.m[ sourceLevel ].hasOwnProperty( 'c' ) ) {
|
263 |
-
|
264 |
-
if ( o.m[ sourceLevel ].c[ conditionLevel ] ) {
|
265 |
-
|
266 |
-
if ( o.m[ sourceLevel ].c.length > 1 ) {
|
267 |
-
|
268 |
-
// remove the correct condition
|
269 |
-
o.m[ sourceLevel ].c.splice( conditionLevel, 1 );
|
270 |
-
|
271 |
-
// and resort the remaining conditions
|
272 |
-
o.m[ sourceLevel ].c = tvc_resortObject( o.m[ sourceLevel ].c );
|
273 |
-
} else {
|
274 |
-
|
275 |
-
// check what is left in the mapping part
|
276 |
-
coi = tvc_countObjectItems( o.m );
|
277 |
-
|
278 |
-
if ( coi > 2 ) {
|
279 |
-
|
280 |
-
o.m.splice( [ sourceLevel ], 1 );
|
281 |
-
} else {
|
282 |
-
|
283 |
-
if ( coi < 1 ) {
|
284 |
-
|
285 |
-
if ( o.hasOwnProperty( 'v' ) ) {
|
286 |
-
|
287 |
-
// when the object also has a v element only remove the m element
|
288 |
-
delete o.m[ sourceLevel ];
|
289 |
-
} else {
|
290 |
-
|
291 |
-
// but when the object only has an m element then empty the object
|
292 |
-
o = {};
|
293 |
-
}
|
294 |
-
} else {
|
295 |
-
|
296 |
-
if ( o.m[ sourceLevel ].hasOwnProperty( 's' ) ) {
|
297 |
-
|
298 |
-
// remove the condition
|
299 |
-
delete o.m[ sourceLevel ].c;
|
300 |
-
|
301 |
-
// and remove the source that was selected as the condition would be met
|
302 |
-
o.m.splice( [ sourceLevel + 1 ], 1 );
|
303 |
-
} else {
|
304 |
-
|
305 |
-
if ( o.hasOwnProperty( 'v' ) ) {
|
306 |
-
|
307 |
-
// when the object also has a v element only remove the m element
|
308 |
-
delete o.m[ sourceLevel ];
|
309 |
-
} else {
|
310 |
-
|
311 |
-
// but when the object only has an m element then empty the object
|
312 |
-
o = {};
|
313 |
-
}
|
314 |
-
}
|
315 |
-
}
|
316 |
-
}
|
317 |
-
}
|
318 |
-
}
|
319 |
-
} else if ( o && o.hasOwnProperty( 'm' ) && o.m[ sourceLevel ] && o.m[ sourceLevel ].hasOwnProperty( 's' ) ) {
|
320 |
-
|
321 |
-
coi = tvc_countObjectItems( o.m );
|
322 |
-
|
323 |
-
if ( coi > 1 ) {
|
324 |
-
|
325 |
-
o.m.splice( [ sourceLevel ], 1 );
|
326 |
-
} else {
|
327 |
-
|
328 |
-
if ( o.hasOwnProperty( 'v' ) ) {
|
329 |
-
|
330 |
-
// when the object also has a v element only remove the m element
|
331 |
-
delete o.m[ sourceLevel ];
|
332 |
-
} else {
|
333 |
-
|
334 |
-
// but when the object only has an m element then empty the object
|
335 |
-
o = {};
|
336 |
-
}
|
337 |
-
}
|
338 |
-
}
|
339 |
-
|
340 |
-
var newValue = typeof (
|
341 |
-
o
|
342 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
343 |
-
|
344 |
-
console.log( 'result:', newValue );
|
345 |
-
|
346 |
-
return newValue;
|
347 |
-
}
|
348 |
-
|
349 |
-
function tvc_removeQueryValue( sourceLevel, conditionLevel, currentMetaValue ) {
|
350 |
-
|
351 |
-
console.log( 'sourceLevel:', sourceLevel );
|
352 |
-
console.log( 'conditionLevel:', conditionLevel );
|
353 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
354 |
-
|
355 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
356 |
-
|
357 |
-
if ( o && o.hasOwnProperty( 'v' ) && o.v[ sourceLevel ] && o.v[ sourceLevel ].hasOwnProperty( 'q' ) ) {
|
358 |
-
|
359 |
-
if ( o.v[ sourceLevel ].q[ conditionLevel - 1 ] ) {
|
360 |
-
|
361 |
-
if ( o.v[ sourceLevel ].q.length > 1 ) {
|
362 |
-
|
363 |
-
// remove the correct condition
|
364 |
-
o.v[ sourceLevel ].q.splice( ( conditionLevel - 1 ), 1 );
|
365 |
-
|
366 |
-
// and resort the remaining conditions
|
367 |
-
o.v[ sourceLevel ].q = tvc_resortObject( o.v[ sourceLevel ].q );
|
368 |
-
} else {
|
369 |
-
|
370 |
-
// check what is left in the mapping part
|
371 |
-
var coi = tvc_countObjectItems( o.v );
|
372 |
-
|
373 |
-
if ( coi > 2 ) {
|
374 |
-
|
375 |
-
o.v.splice( [ sourceLevel ], 1 );
|
376 |
-
} else {
|
377 |
-
|
378 |
-
if ( coi < 1 ) {
|
379 |
-
|
380 |
-
if ( o.hasOwnProperty( 'm' ) ) {
|
381 |
-
|
382 |
-
// when the object also has an m element only remove the v element
|
383 |
-
delete o.v[ sourceLevel ];
|
384 |
-
} else {
|
385 |
-
|
386 |
-
// but when the object only has a v element then empty the object
|
387 |
-
o = {};
|
388 |
-
}
|
389 |
-
} else {
|
390 |
-
|
391 |
-
if ( o.v[ sourceLevel ].hasOwnProperty( '1' ) ) {
|
392 |
-
|
393 |
-
// remove the condition
|
394 |
-
delete o.v[ sourceLevel ].q;
|
395 |
-
} else {
|
396 |
-
|
397 |
-
if ( o.hasOwnProperty( 'm' ) ) {
|
398 |
-
|
399 |
-
// when the object also has an m element only remove the v element
|
400 |
-
delete o.v[ sourceLevel ];
|
401 |
-
} else {
|
402 |
-
|
403 |
-
// but when the object only has an m element then empty the object
|
404 |
-
o = {};
|
405 |
-
}
|
406 |
-
}
|
407 |
-
}
|
408 |
-
}
|
409 |
-
}
|
410 |
-
}
|
411 |
-
}
|
412 |
-
|
413 |
-
var newValue = typeof (
|
414 |
-
o
|
415 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
416 |
-
|
417 |
-
console.log( 'result:', newValue );
|
418 |
-
|
419 |
-
return newValue;
|
420 |
-
}
|
421 |
-
|
422 |
-
function tvc_removeEditValuesValue( sourceLevel, valueEditorLevel, currentMetaValue ) {
|
423 |
-
|
424 |
-
console.log( 'sourceLevel:', sourceLevel );
|
425 |
-
console.log( 'valueEditorLevel:', valueEditorLevel );
|
426 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
427 |
-
|
428 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
429 |
-
|
430 |
-
if ( 'v' in o ) {
|
431 |
-
|
432 |
-
if ( o.v.length > 1 ) {
|
433 |
-
|
434 |
-
o.v.splice( sourceLevel, 1 );
|
435 |
-
} else {
|
436 |
-
|
437 |
-
delete o.v;
|
438 |
-
}
|
439 |
-
} else {
|
440 |
-
|
441 |
-
o = {};
|
442 |
-
}
|
443 |
-
|
444 |
-
var newValue = typeof (
|
445 |
-
o
|
446 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
447 |
-
|
448 |
-
console.log( 'result:', newValue );
|
449 |
-
|
450 |
-
return newValue;
|
451 |
-
|
452 |
-
}
|
453 |
-
|
454 |
-
function tvc_storeQueryValue( sourceLevel, queryLevel, currentMetaValue, newQuery ) {
|
455 |
-
|
456 |
-
console.log( 'sourceLevel:', sourceLevel );
|
457 |
-
console.log( 'queryLevel:', queryLevel );
|
458 |
-
console.log( 'currentMetaValue:', currentMetaValue );
|
459 |
-
console.log( 'newQuery:', newQuery );
|
460 |
-
|
461 |
-
var o = currentMetaValue ? JSON.parse( currentMetaValue ) : {};
|
462 |
-
var conditionPos = queryLevel - 1;
|
463 |
-
var t = {};
|
464 |
-
var vq = {};
|
465 |
-
|
466 |
-
if ( newQuery ) {
|
467 |
-
|
468 |
-
if ( ! o.hasOwnProperty( 'v' ) ) {
|
469 |
-
|
470 |
-
var v = [];
|
471 |
-
|
472 |
-
v.push( t );
|
473 |
-
o.v = v;
|
474 |
-
}
|
475 |
-
|
476 |
-
if ( o.v[ sourceLevel ] && o.v[ sourceLevel ].hasOwnProperty( 'q' ) ) {
|
477 |
-
|
478 |
-
vq[ queryLevel ] = newQuery;
|
479 |
-
|
480 |
-
if ( o.v[ sourceLevel ].q.hasOwnProperty( conditionPos ) ) {
|
481 |
-
|
482 |
-
o.v[ sourceLevel ].q[ conditionPos ] = vq;
|
483 |
-
} else {
|
484 |
-
|
485 |
-
o.v[ sourceLevel ].q.push( vq );
|
486 |
-
}
|
487 |
-
} else {
|
488 |
-
|
489 |
-
var q = [];
|
490 |
-
|
491 |
-
vq[ queryLevel ] = newQuery;
|
492 |
-
|
493 |
-
q.push( vq );
|
494 |
-
|
495 |
-
t.q = q;
|
496 |
-
|
497 |
-
o.v[ sourceLevel ].q = q;
|
498 |
-
}
|
499 |
-
}
|
500 |
-
|
501 |
-
var newValue = typeof (
|
502 |
-
o
|
503 |
-
) && ! jQuery.isEmptyObject( o ) ? JSON.stringify( o ) : '';
|
504 |
-
|
505 |
-
console.log( 'result:', newValue );
|
506 |
-
return newValue;
|
507 |
-
}
|
508 |
-
|
509 |
-
function tvc_makeCombinedValuesStringFromArray( combinedValuesArray ) {
|
510 |
-
|
511 |
-
var combinedValuesString = '';
|
512 |
-
|
513 |
-
for ( var i = 0; i < combinedValuesArray.length; i ++ ) {
|
514 |
-
|
515 |
-
combinedValuesString += combinedValuesArray[ i ];
|
516 |
-
combinedValuesString += i < (
|
517 |
-
combinedValuesArray.length - 1
|
518 |
-
) ? '|' : '';
|
519 |
-
}
|
520 |
-
|
521 |
-
return combinedValuesString;
|
522 |
-
}
|
523 |
-
|
524 |
-
function changeFeedFilterValue( workValue, newValues, changedFilterLevel ) {
|
525 |
-
|
526 |
-
console.log( 'workValue:', workValue );
|
527 |
-
console.log( 'newValues:', newValues );
|
528 |
-
console.log( 'changedFilterLevel:', changedFilterLevel );
|
529 |
-
|
530 |
-
var filterObject = [];
|
531 |
-
|
532 |
-
if ( workValue ) {
|
533 |
-
filterObject = JSON.parse( workValue[ 0 ][ 'meta_value' ] );
|
534 |
-
} else {
|
535 |
-
filterObject = [];
|
536 |
-
|
537 |
-
workValue = []; // build a new empty workValue
|
538 |
-
var m = {'meta_value': ''};
|
539 |
-
workValue.push( m );
|
540 |
-
}
|
541 |
-
|
542 |
-
var nrFilters = filterObject.length;
|
543 |
-
|
544 |
-
var newValueString = newValues[ 0 ] + '#' + newValues[ 1 ] + '#' + newValues[ 2 ];
|
545 |
-
newValueString += newValues[ 2 ] !== '4' && newValues[ 2 ] !== '5' ? '#' + newValues[ 3 ] : '';
|
546 |
-
|
547 |
-
if ( changedFilterLevel <= nrFilters ) {
|
548 |
-
filterObject[ changedFilterLevel - 1 ][ changedFilterLevel ] = newValueString;
|
549 |
-
} else {
|
550 |
-
|
551 |
-
var n = {};
|
552 |
-
|
553 |
-
n[ changedFilterLevel ] = newValueString;
|
554 |
-
//filterObject.push( n );
|
555 |
-
filterObject[ changedFilterLevel - 1 ] = n;
|
556 |
-
}
|
557 |
-
|
558 |
-
workValue[ 0 ][ 'meta_value' ] = JSON.stringify( filterObject );
|
559 |
-
|
560 |
-
console.log( 'result:', JSON.stringify( workValue ) );
|
561 |
-
|
562 |
-
return workValue;
|
563 |
-
}
|
564 |
-
|
565 |
-
function removeFeedFilterLevel( workValue, levelToRemove ) {
|
566 |
-
|
567 |
-
console.log( 'workValue:', workValue );
|
568 |
-
console.log( 'levelToRemove:', levelToRemove );
|
569 |
-
|
570 |
-
var filterObject = workValue ? JSON.parse( workValue[ 0 ][ 'meta_value' ] ) : {};
|
571 |
-
var returnFilterObject = [];
|
572 |
-
var i = 0;
|
573 |
-
|
574 |
-
for ( var key in filterObject ) {
|
575 |
-
|
576 |
-
if ( parseInt( key ) !== levelToRemove - 1 ) {
|
577 |
-
|
578 |
-
var v = {};
|
579 |
-
v[ i + 1 ] = filterObject[ key ][ parseInt( key ) + 1 ];
|
580 |
-
|
581 |
-
returnFilterObject[ i ] = v;
|
582 |
-
|
583 |
-
i ++;
|
584 |
-
}
|
585 |
-
}
|
586 |
-
|
587 |
-
if ( returnFilterObject.length > 0 ) {
|
588 |
-
workValue[ 0 ][ 'meta_value' ] = JSON.stringify( returnFilterObject );
|
589 |
-
console.log( 'result:', JSON.stringify( workValue ) );
|
590 |
-
} else {
|
591 |
-
workValue = '';
|
592 |
-
console.log( 'result:', workValue );
|
593 |
-
}
|
594 |
-
|
595 |
-
return workValue;
|
596 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/data/js/tvc_metadatahandling.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
function tvc_storeSourceValue(a,b,g,c){console.log("level:",a);console.log("currentMetaValue:",b);console.log("type:",g);console.log("valueToStore:",c);var e=b?JSON.parse(b):{};if(e&&"t" in e){return b}if(c&&g!=="clear"){var h={},i={};i[g]=c;h.s=i;if(e.hasOwnProperty("m")){if(!e.m[a]){e.m[a]=h}else{e.m[a].s=i}}else{var f=[];f.push(h);e.m=f}}else{if(g==="clear"){if(e.hasOwnProperty("m")){if(e.m.length>1){if(!e.m[a].c){e.m.splice(a,1)}else{delete e.m[a].s}}else{delete e.m}}else{e={}}}}var d=typeof(e)&&!jQuery.isEmptyObject(e)?JSON.stringify(e):"";console.log("result:",d);return d}function tvc_storeConditionValue(a,l,d,g){console.log("sourceLevel:",a);console.log("conditionLevel:",l);console.log("currentMetaValue:",d);console.log("newCondition:",g);var f=d?JSON.parse(d):{};var j=l-1;var k={};var b={};if(g){if(!f.hasOwnProperty("m")){var h=[];h.push(k);f.m=h}if(f.m[a]&&f.m[a].hasOwnProperty("c")){b[l]=g;if(f.m[a].c.hasOwnProperty(j)){f.m[a].c[j]=b}else{f.m[a].c.push(b)}}else{var i=[];b[l]=g;i.push(b);k.c=i;f.m[a].c=i}}var e=typeof(f)&&!jQuery.isEmptyObject(f)?JSON.stringify(f):"";console.log("result:",e);return e}function tvc_storeCombinedValue(f,c,b){console.log("sourceLevel:",f);console.log("currentMetaValue:",c);console.log("valueToStore:",b);var h=c?JSON.parse(c):{};if(b){var a=[],d={},e={};if(!h.hasOwnProperty("m")){a.push(d);h.m=a}if(!h.m[f].hasOwnProperty("s")){e.source="combined";h.m[f].s=e}h.m[f].s.f=b}var g=typeof(h)&&!jQuery.isEmptyObject(h)?JSON.stringify(h):"";console.log("result:",g);return g}function tvc_storeValueChange(a,g,b,f,c){console.log("sourceLevel:",a);console.log("valueEditorLevel:",g);console.log("valueToStore:",b);console.log("action:",f);console.log("currentMetaValue:",c);var e=c?JSON.parse(c):{};var i={};if(b&&f==="add"){i[a+1]=b;if(e.hasOwnProperty("v")){if(e.v[a]&&e.v[a].hasOwnProperty("q")){e.v[a][g+1]=b}else{e.v[a]=i}}else{var h=[];h.push(i);e.v=h}}else{if(f==="clear"){if("v" in e){if(e.v.length>1){if(!e.v[a].q){e.v.splice(a,1)}else{delete e.v[a].s}}else{delete e.v}}else{e={}}}}var d=typeof(e)&&!jQuery.isEmptyObject(e)?JSON.stringify(e):"";console.log("result:",d);return d}function tvc_removeCombinedValue(d,c,a){console.log("sourceLevel:",d);console.log("combinedLevel:",c);console.log("currentMetaValue:",a);var f=a?JSON.parse(a):{};if(f.hasOwnProperty("m")&&f.m[d].hasOwnProperty("s")&&f.m[d].s.hasOwnProperty("f")){if(f.m[d].s.f){var b=f.m[d].s.f.split("|");b.splice(c-1,1);f.m[d].s.f=tvc_makeCombinedValuesStringFromArray(b)}}var e=typeof(f)&&!jQuery.isEmptyObject(f)?JSON.stringify(f):"";console.log("result:",e);return e}function tvc_removeConditionValue(d,b,a){console.log("sourceLevel:",d);console.log("conditionLevel:",b);console.log("currentMetaValue:",a);var f=a?JSON.parse(a):{};var c=null;if(f&&f.hasOwnProperty("m")&&f.m[d]&&f.m[d].hasOwnProperty("c")){if(f.m[d].c[b]){if(f.m[d].c.length>1){f.m[d].c.splice(b,1);f.m[d].c=tvc_resortObject(f.m[d].c)}else{c=tvc_countObjectItems(f.m);if(c>2){f.m.splice([d],1)}else{if(c<1){if(f.hasOwnProperty("v")){delete f.m[d]}else{f={}}}else{if(f.m[d].hasOwnProperty("s")){delete f.m[d].c;f.m.splice([d+1],1)}else{if(f.hasOwnProperty("v")){delete f.m[d]}else{f={}}}}}}}}else{if(f&&f.hasOwnProperty("m")&&f.m[d]&&f.m[d].hasOwnProperty("s")){c=tvc_countObjectItems(f.m);if(c>1){f.m.splice([d],1)}else{if(f.hasOwnProperty("v")){delete f.m[d]}else{f={}}}}}var e=typeof(f)&&!jQuery.isEmptyObject(f)?JSON.stringify(f):"";console.log("result:",e);return e}function tvc_removeQueryValue(d,b,a){console.log("sourceLevel:",d);console.log("conditionLevel:",b);console.log("currentMetaValue:",a);var f=a?JSON.parse(a):{};if(f&&f.hasOwnProperty("v")&&f.v[d]&&f.v[d].hasOwnProperty("q")){if(f.v[d].q[b-1]){if(f.v[d].q.length>1){f.v[d].q.splice((b-1),1);f.v[d].q=tvc_resortObject(f.v[d].q)}else{var c=tvc_countObjectItems(f.v);if(c>2){f.v.splice([d],1)}else{if(c<1){if(f.hasOwnProperty("m")){delete f.v[d]}else{f={}}}else{if(f.v[d].hasOwnProperty("1")){delete f.v[d].q}else{if(f.hasOwnProperty("m")){delete f.v[d]}else{f={}}}}}}}}var e=typeof(f)&&!jQuery.isEmptyObject(f)?JSON.stringify(f):"";console.log("result:",e);return e}function tvc_removeEditValuesValue(b,e,a){console.log("sourceLevel:",b);console.log("valueEditorLevel:",e);console.log("currentMetaValue:",a);var d=a?JSON.parse(a):{};if("v" in d){if(d.v.length>1){d.v.splice(b,1)}else{delete d.v}}else{d={}}var c=typeof(d)&&!jQuery.isEmptyObject(d)?JSON.stringify(d):"";console.log("result:",c);return c}function tvc_storeQueryValue(c,g,d,k){console.log("sourceLevel:",c);console.log("queryLevel:",g);console.log("currentMetaValue:",d);console.log("newQuery:",k);var f=d?JSON.parse(d):{};var h=g-1;var j={};var a={};if(k){if(!f.hasOwnProperty("v")){var i=[];i.push(j);f.v=i}if(f.v[c]&&f.v[c].hasOwnProperty("q")){a[g]=k;if(f.v[c].q.hasOwnProperty(h)){f.v[c].q[h]=a}else{f.v[c].q.push(a)}}else{var b=[];a[g]=k;b.push(a);j.q=b;f.v[c].q=b}}var e=typeof(f)&&!jQuery.isEmptyObject(f)?JSON.stringify(f):"";console.log("result:",e);return e}function tvc_makeCombinedValuesStringFromArray(b){var a="";for(var c=0;c<b.length;c++){a+=b[c];a+=c<(b.length-1)?"|":""}return a}function changeFeedFilterValue(g,c,f){console.log("workValue:",g);console.log("newValues:",c);console.log("changedFilterLevel:",f);var e=[];if(g){e=JSON.parse(g[0]["meta_value"])}else{e=[];g=[];var a={meta_value:""};g.push(a)}var d=e.length;var b=c[0]+"#"+c[1]+"#"+c[2];b+=c[2]!=="4"&&c[2]!=="5"?"#"+c[3]:"";if(f<=d){e[f-1][f]=b}else{var h={};h[f]=b;e[f-1]=h}g[0]["meta_value"]=JSON.stringify(e);console.log("result:",JSON.stringify(g));return g}function removeFeedFilterLevel(f,g){console.log("workValue:",f);console.log("levelToRemove:",g);var e=f?JSON.parse(f[0]["meta_value"]):{};var d=[];var c=0;for(var b in e){if(parseInt(b)!==g-1){var a={};a[c+1]=e[b][parseInt(b)+1];d[c]=a;c++}}if(d.length>0){f[0]["meta_value"]=JSON.stringify(d);console.log("result:",JSON.stringify(f))}else{f="";console.log("result:",f)}return f};
|
|
includes/libraries/tvc-async-request.php
DELETED
@@ -1,187 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
3 |
-
exit;
|
4 |
-
}
|
5 |
-
|
6 |
-
/**
|
7 |
-
* Abstract TVC_Async_Request class derived from https://github.com/A5hleyRich/wp-background-processing.
|
8 |
-
*
|
9 |
-
* @package TVC-Background-Processing
|
10 |
-
* @abstract
|
11 |
-
*/
|
12 |
-
abstract class TVC_Async_Request {
|
13 |
-
|
14 |
-
/**
|
15 |
-
* Prefix
|
16 |
-
*
|
17 |
-
* (default value: 'tvc')
|
18 |
-
*
|
19 |
-
* @var string
|
20 |
-
* @access protected
|
21 |
-
*/
|
22 |
-
protected $prefix = 'tvc';
|
23 |
-
|
24 |
-
/**
|
25 |
-
* Action
|
26 |
-
*
|
27 |
-
* (default value: 'async_request')
|
28 |
-
*
|
29 |
-
* @var string
|
30 |
-
*/
|
31 |
-
protected $action = 'async_request';
|
32 |
-
|
33 |
-
/**
|
34 |
-
* Identifier
|
35 |
-
*
|
36 |
-
* @var mixed
|
37 |
-
*/
|
38 |
-
protected $identifier;
|
39 |
-
|
40 |
-
/**
|
41 |
-
* Data
|
42 |
-
*
|
43 |
-
* (default value: array())
|
44 |
-
*
|
45 |
-
* @var array
|
46 |
-
*/
|
47 |
-
protected $data = array();
|
48 |
-
|
49 |
-
/**
|
50 |
-
* File Path
|
51 |
-
*
|
52 |
-
* (default value: empty string)
|
53 |
-
*
|
54 |
-
* @var string
|
55 |
-
*/
|
56 |
-
protected $file_path = '';
|
57 |
-
|
58 |
-
/**
|
59 |
-
* Contains the general data of the feed
|
60 |
-
*
|
61 |
-
* (default value: empty string)
|
62 |
-
*
|
63 |
-
* @var string
|
64 |
-
*/
|
65 |
-
protected $feed_data = '';
|
66 |
-
|
67 |
-
/**
|
68 |
-
* Contains general pre feed production data
|
69 |
-
*
|
70 |
-
* @var array
|
71 |
-
*/
|
72 |
-
protected $pre_data;
|
73 |
-
|
74 |
-
/**
|
75 |
-
* Contains the channels category title and description title
|
76 |
-
*
|
77 |
-
* @var array
|
78 |
-
*/
|
79 |
-
protected $channel_details;
|
80 |
-
|
81 |
-
/**
|
82 |
-
* Contains the relations between the WooCommerce and channel fields
|
83 |
-
*
|
84 |
-
* @var array
|
85 |
-
*/
|
86 |
-
protected $relations_table;
|
87 |
-
|
88 |
-
/**
|
89 |
-
* Initiate new async request
|
90 |
-
*/
|
91 |
-
public function __construct() {
|
92 |
-
$this->identifier = $this->prefix . '_' . $this->action;
|
93 |
-
|
94 |
-
add_action( 'wp_ajax_' . $this->identifier, array( $this, 'maybe_handle' ) );
|
95 |
-
add_action( 'wp_ajax_nopriv_' . $this->identifier, array( $this, 'maybe_handle' ) );
|
96 |
-
}
|
97 |
-
|
98 |
-
/**
|
99 |
-
* Set data used during the request
|
100 |
-
*
|
101 |
-
* @param array $data Data.
|
102 |
-
*
|
103 |
-
* @return $this
|
104 |
-
*/
|
105 |
-
public function data( $data ) {
|
106 |
-
$this->data = $data;
|
107 |
-
|
108 |
-
return $this;
|
109 |
-
}
|
110 |
-
|
111 |
-
/**
|
112 |
-
* Dispatch the async request to trigger the feed process with a remote post.
|
113 |
-
*
|
114 |
-
* @param string $feed_id
|
115 |
-
*/
|
116 |
-
public function dispatch( $feed_id ) {
|
117 |
-
if ( get_option( 'tvc_disabled_background_mode', 'false' ) === 'false' ) { // start a background process
|
118 |
-
$url = add_query_arg( $this->get_query_args(), $this->get_query_url() );
|
119 |
-
$args = $this->get_post_args();
|
120 |
-
do_action( 'tvc_register_remote_post_args', $feed_id, $url, $args );
|
121 |
-
|
122 |
-
// activate the background process
|
123 |
-
//wp_remote_post( esc_url_raw( $url ), $args );
|
124 |
-
} else { // start a foreground process
|
125 |
-
$this->maybe_handle();
|
126 |
-
}
|
127 |
-
}
|
128 |
-
|
129 |
-
/**
|
130 |
-
* Get query args
|
131 |
-
*
|
132 |
-
* @return array
|
133 |
-
*/
|
134 |
-
protected function get_query_args() {
|
135 |
-
return array(
|
136 |
-
'action' => $this->identifier,
|
137 |
-
'nonce' => wp_create_nonce( $this->identifier ),
|
138 |
-
);
|
139 |
-
}
|
140 |
-
|
141 |
-
/**
|
142 |
-
* Get query URL
|
143 |
-
*
|
144 |
-
* @return string
|
145 |
-
*/
|
146 |
-
protected function get_query_url() {
|
147 |
-
return admin_url( 'admin-ajax.php' );
|
148 |
-
}
|
149 |
-
|
150 |
-
/**
|
151 |
-
* Get post args
|
152 |
-
*
|
153 |
-
* @return array
|
154 |
-
*/
|
155 |
-
protected function get_post_args() {
|
156 |
-
return array(
|
157 |
-
'timeout' => 0.01,
|
158 |
-
'blocking' => false, // false because the wp_remote_call will always return a WP_Error for a cURL error 28
|
159 |
-
'body' => $this->data,
|
160 |
-
'cookies' => stripslashes_deep( $_COOKIE ),
|
161 |
-
);
|
162 |
-
}
|
163 |
-
|
164 |
-
/**
|
165 |
-
* Maybe handle
|
166 |
-
*
|
167 |
-
* Check for correct nonce and pass to handler.
|
168 |
-
*/
|
169 |
-
public function maybe_handle() {
|
170 |
-
// Don't lock up other requests while processing
|
171 |
-
session_write_close();
|
172 |
-
|
173 |
-
check_ajax_referer( $this->identifier, 'nonce' );
|
174 |
-
|
175 |
-
$this->handle();
|
176 |
-
|
177 |
-
wp_die();
|
178 |
-
}
|
179 |
-
|
180 |
-
/**
|
181 |
-
* Handle
|
182 |
-
*
|
183 |
-
* Override this method to perform any actions required
|
184 |
-
* during the async request.
|
185 |
-
*/
|
186 |
-
abstract protected function handle();
|
187 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/setup/add-campaign.php
CHANGED
@@ -437,7 +437,7 @@ class AddCampaign {
|
|
437 |
}
|
438 |
|
439 |
public function spinner() {
|
440 |
-
$spinner_gif = ENHANCAD_PLUGIN_URL . '/images/ajax-loader.gif';
|
441 |
echo '<div class="feed-spinner" id="feed-spinner" style="display:none;">
|
442 |
<img id="img-spinner" src="' . $spinner_gif . '" alt="Loading" />
|
443 |
</div>';
|
437 |
}
|
438 |
|
439 |
public function spinner() {
|
440 |
+
$spinner_gif = ENHANCAD_PLUGIN_URL . '/admin/images/ajax-loader.gif';
|
441 |
echo '<div class="feed-spinner" id="feed-spinner" style="display:none;">
|
442 |
<img id="img-spinner" src="' . $spinner_gif . '" alt="Loading" />
|
443 |
</div>';
|
includes/setup/google-shopping-feed-gaa-config.php
CHANGED
@@ -152,17 +152,18 @@ class GAAConfiguration {
|
|
152 |
</div>
|
153 |
</div>
|
154 |
</div>
|
155 |
-
<div class="modal fade popup-modal create-
|
156 |
<div class="modal-dialog modal-dialog-centered">
|
157 |
-
<div class="modal-content">
|
158 |
-
<div class="modal-body
|
159 |
-
<
|
160 |
-
<
|
|
|
161 |
</p>
|
162 |
<div class="wizard-section campaign-wizard">
|
163 |
<div class="wizard-content">
|
164 |
-
|
165 |
-
<form class="tab-wizard wizard-
|
166 |
<h5><span class="wiz-title">Category Mapping</span></h5>
|
167 |
<section>
|
168 |
<div class="card-wrapper">
|
@@ -189,7 +190,10 @@ class GAAConfiguration {
|
|
189 |
</div>
|
190 |
</div>
|
191 |
<?php
|
|
|
|
|
192 |
foreach ($this->TVC_Admin_Helper->get_gmcAttributes() as $key => $attribute) {
|
|
|
193 |
echo '<div class="row">
|
194 |
<div class="col-6 align-self-center">
|
195 |
<div class="form-group">
|
@@ -199,19 +203,38 @@ class GAAConfiguration {
|
|
199 |
</div>
|
200 |
<div class="col-6 align-self-center">
|
201 |
<div class="form-group">';
|
|
|
|
|
|
|
202 |
if($attribute["field"]=='link'){
|
203 |
echo "product link";
|
204 |
-
}else if($attribute["field"]=='
|
205 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
206 |
}else{
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
|
|
|
|
|
|
|
|
|
|
215 |
}
|
216 |
echo '</div>
|
217 |
</div>
|
@@ -225,7 +248,9 @@ class GAAConfiguration {
|
|
225 |
</div>
|
226 |
</div>
|
227 |
</div>
|
228 |
-
</div
|
|
|
|
|
229 |
<script type="text/javascript">
|
230 |
$(document).ready(function() {
|
231 |
$(".select2").select2();
|
@@ -240,6 +265,22 @@ $(".tab-wizard").steps({
|
|
240 |
next: "Next",
|
241 |
previous: "Previous",
|
242 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
onStepChanged: function(event, currentIndex, priorIndex) {
|
244 |
$('.steps .current').prevAll().addClass('disabled');
|
245 |
},
|
152 |
</div>
|
153 |
</div>
|
154 |
</div>
|
155 |
+
<div class="modal fade popup-modal create-campa overlay" id="syncProduct" data-backdrop="false">
|
156 |
<div class="modal-dialog modal-dialog-centered">
|
157 |
+
<div class="modal-content">
|
158 |
+
<div class="modal-body">
|
159 |
+
<button type="button" class="close tvc-popup-close" data-dismiss="modal"> × </button>
|
160 |
+
<h5>Map your product attributes</h5>
|
161 |
+
<p>Google Merchant Center uses attributes to format your product information for Shopping Ads. Map your product attributes to the Merchant Center product attributes below. You can also edit each product’s individual attributes after you sync your products. Not all fields below are marked required, however based on your shop's categories and your country you might map a few optional attributes as well. See the full guide <a target="_blank" href="https://support.google.com/merchants/answer/7052112">here</a>.
|
162 |
</p>
|
163 |
<div class="wizard-section campaign-wizard">
|
164 |
<div class="wizard-content">
|
165 |
+
<input type="hidden" name="merchant_id" id="merchant_id" value="<?php echo $this->merchantId; ?>">
|
166 |
+
<form class="tab-wizard wizard- wizard" id="productSync" method="POST">
|
167 |
<h5><span class="wiz-title">Category Mapping</span></h5>
|
168 |
<section>
|
169 |
<div class="card-wrapper">
|
190 |
</div>
|
191 |
</div>
|
192 |
<?php
|
193 |
+
$ee_mapped_attrs = unserialize(get_option('ee_prod_mapped_attrs'));
|
194 |
+
$wooCommerceAttributes = $this->wooCommerceAttributes();
|
195 |
foreach ($this->TVC_Admin_Helper->get_gmcAttributes() as $key => $attribute) {
|
196 |
+
$sel_val="";
|
197 |
echo '<div class="row">
|
198 |
<div class="col-6 align-self-center">
|
199 |
<div class="form-group">
|
203 |
</div>
|
204 |
<div class="col-6 align-self-center">
|
205 |
<div class="form-group">';
|
206 |
+
$tvc_select_option = $wooCommerceAttributes;
|
207 |
+
$require = (isset($attribute['required']) && $attribute['required'])?true:false;
|
208 |
+
$sel_val = (isset($attribute['wAttribute']))?$attribute['wAttribute']:"";
|
209 |
if($attribute["field"]=='link'){
|
210 |
echo "product link";
|
211 |
+
}else if($attribute["field"]=='shipping'){
|
212 |
+
$sel_val = (isset($ee_mapped_attrs[$attribute["field"]]))?$ee_mapped_attrs[$attribute["field"]]:"";
|
213 |
+
//$name, $class_id, string $label=null, $sel_val = null, bool $require = false
|
214 |
+
echo $this->TVC_Admin_Helper->tvc_text($attribute["field"], 'number', '', 'Add shipping flat rate', $sel_val, $require);
|
215 |
+
}else if($attribute["field"]=='tax'){
|
216 |
+
$sel_val = (isset($ee_mapped_attrs[$attribute["field"]]))?$ee_mapped_attrs[$attribute["field"]]:"";
|
217 |
+
//$name, $class_id, string $label=null, $sel_val = null, bool $require = false
|
218 |
+
echo $this->TVC_Admin_Helper->tvc_text($attribute["field"], 'number', '', 'Add TAX flat (%)', $sel_val, $require);
|
219 |
+
}else if($attribute["field"]=='content_language'){
|
220 |
+
echo $this->TVC_Admin_Helper->tvc_language_select($attribute["field"], '', 'Please Select Attribute', 'en',$require);
|
221 |
+
}else if($attribute["field"]=='target_country'){
|
222 |
+
//$name, $class_id, bool $require = false
|
223 |
+
echo $this->TVC_Admin_Helper->tvc_countries_select($attribute["field"], '', 'Please Select Attribute', $require);
|
224 |
}else{
|
225 |
+
if(isset($attribute['fixed_options']) && $attribute['fixed_options'] !=""){
|
226 |
+
$tvc_select_option_t = explode(",", $attribute['fixed_options']);
|
227 |
+
$tvc_select_option=[];
|
228 |
+
foreach( $tvc_select_option_t as $o_val ){
|
229 |
+
$tvc_select_option[]['field'] = $o_val;
|
230 |
+
}
|
231 |
+
$this->TVC_Admin_Helper->tvc_select($attribute["field"],'','Please Select Attribute', $sel_val, $require, $tvc_select_option);
|
232 |
+
}else{
|
233 |
+
//print_r($ee_mapped_attrs);
|
234 |
+
$sel_val = (isset($ee_mapped_attrs[$attribute["field"]]))?$ee_mapped_attrs[$attribute["field"]]:"";
|
235 |
+
//$name, $class_id, $label="Please Select", $sel_val, $require, $option_list
|
236 |
+
$this->TVC_Admin_Helper->tvc_select($attribute["field"],'','Please Select Attribute', $sel_val, $require, $tvc_select_option);
|
237 |
+
}
|
238 |
}
|
239 |
echo '</div>
|
240 |
</div>
|
248 |
</div>
|
249 |
</div>
|
250 |
</div>
|
251 |
+
</div>
|
252 |
+
<?php echo get_connect_google_popup_html()?>
|
253 |
+
<?php $shop_categories_list = $this->TVC_Admin_Helper->get_tvc_product_cat_list(); ?>
|
254 |
<script type="text/javascript">
|
255 |
$(document).ready(function() {
|
256 |
$(".select2").select2();
|
265 |
next: "Next",
|
266 |
previous: "Previous",
|
267 |
},
|
268 |
+
onStepChanging: function(e, currentIndex, newIndex) {
|
269 |
+
var shop_categories = JSON.parse("<?php echo $shop_categories_list; ?>");
|
270 |
+
var is_tvc_cat_selecte = false;
|
271 |
+
shop_categories.forEach(function(v,i){
|
272 |
+
if(is_tvc_cat_selecte == false && $("#category-"+v).val() != "" && $("#category-"+v).val() != 0){
|
273 |
+
is_tvc_cat_selecte =true;
|
274 |
+
return false;
|
275 |
+
}
|
276 |
+
});
|
277 |
+
if(is_tvc_cat_selecte == 1 || is_tvc_cat_selecte == true){
|
278 |
+
return true;
|
279 |
+
}else{
|
280 |
+
alert("Select at least one Google Merchant Center Category.");
|
281 |
+
return false;
|
282 |
+
}
|
283 |
+
},
|
284 |
onStepChanged: function(event, currentIndex, priorIndex) {
|
285 |
$('.steps .current').prevAll().addClass('disabled');
|
286 |
},
|
includes/setup/google-shopping-feed-shopping-campaigns.php
CHANGED
@@ -52,7 +52,7 @@ class CampaignsConfiguration
|
|
52 |
|
53 |
public function spinner()
|
54 |
{
|
55 |
-
$spinner_gif = ENHANCAD_PLUGIN_URL . '/images/ajax-loader.gif';
|
56 |
echo '<div class="feed-spinner" id="feed-spinner" style="display:none;">
|
57 |
<img id="img-spinner" src="' . $spinner_gif . '" alt="Loading" />
|
58 |
</div>';
|
52 |
|
53 |
public function spinner()
|
54 |
{
|
55 |
+
$spinner_gif = ENHANCAD_PLUGIN_URL . '/admin/images/ajax-loader.gif';
|
56 |
echo '<div class="feed-spinner" id="feed-spinner" style="display:none;">
|
57 |
<img id="img-spinner" src="' . $spinner_gif . '" alt="Loading" />
|
58 |
</div>';
|
includes/setup/google-shopping-feed-sync-product.php
CHANGED
@@ -194,12 +194,13 @@ public function create_form(){
|
|
194 |
</div>
|
195 |
</div>
|
196 |
</div>
|
197 |
-
<div class="modal fade popup-modal create-
|
198 |
<div class="modal-dialog modal-dialog-centered">
|
199 |
-
<div class="modal-content">
|
200 |
-
<div class="modal-body
|
201 |
-
<
|
202 |
-
<
|
|
|
203 |
</p>
|
204 |
<div class="wizard-section campaign-wizard">
|
205 |
<div class="wizard-content">
|
@@ -231,7 +232,10 @@ public function create_form(){
|
|
231 |
</div>
|
232 |
</div>
|
233 |
<?php
|
|
|
|
|
234 |
foreach ($this->TVC_Admin_Helper->get_gmcAttributes() as $key => $attribute) {
|
|
|
235 |
echo '<div class="row">
|
236 |
<div class="col-6 align-self-center">
|
237 |
<div class="form-group">
|
@@ -241,19 +245,40 @@ public function create_form(){
|
|
241 |
</div>
|
242 |
<div class="col-6 align-self-center">
|
243 |
<div class="form-group">';
|
|
|
|
|
|
|
244 |
if($attribute["field"]=='link'){
|
245 |
echo "product link";
|
246 |
-
}else if($attribute["field"]=='
|
247 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
248 |
}else{
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
257 |
}
|
258 |
echo '</div>
|
259 |
</div>
|
@@ -268,6 +293,7 @@ public function create_form(){
|
|
268 |
</div>
|
269 |
</div>
|
270 |
</div>
|
|
|
271 |
<script type="text/javascript">
|
272 |
function call_tvc_api_sync_up(){
|
273 |
var tvs_this = event.target;
|
@@ -285,8 +311,7 @@ function call_tvc_api_sync_up(){
|
|
285 |
setTimeout(function(){ $("#tvc_msg").remove(); location.reload();}, 4000);
|
286 |
}
|
287 |
});
|
288 |
-
}
|
289 |
-
|
290 |
|
291 |
$(document).ready(function() {
|
292 |
$(".select2").select2();
|
@@ -301,8 +326,24 @@ $(".tab-wizard").steps({
|
|
301 |
next: "Next",
|
302 |
previous: "Previous",
|
303 |
},
|
304 |
-
|
305 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
306 |
},
|
307 |
onFinished: function(event, currentIndex) {
|
308 |
var valid=true;
|
194 |
</div>
|
195 |
</div>
|
196 |
</div>
|
197 |
+
<div class="modal fade popup-modal create-campa overlay" id="syncProduct" data-backdrop="false">
|
198 |
<div class="modal-dialog modal-dialog-centered">
|
199 |
+
<div class="modal-content">
|
200 |
+
<div class="modal-body">
|
201 |
+
<button type="button" class="close tvc-popup-close" data-dismiss="modal"> × </button>
|
202 |
+
<h5>Map your product attributes</h5>
|
203 |
+
<p>Google Merchant Center uses attributes to format your product information for Shopping Ads. Map your product attributes to the Merchant Center product attributes below. You can also edit each product’s individual attributes after you sync your products. Not all fields below are marked required, however based on your shop's categories and your country you might map a few optional attributes as well. See the full guide <a target="_blank" href="https://support.google.com/merchants/answer/7052112">here</a>.
|
204 |
</p>
|
205 |
<div class="wizard-section campaign-wizard">
|
206 |
<div class="wizard-content">
|
232 |
</div>
|
233 |
</div>
|
234 |
<?php
|
235 |
+
$ee_mapped_attrs = unserialize(get_option('ee_prod_mapped_attrs'));
|
236 |
+
$wooCommerceAttributes = $this->wooCommerceAttributes();
|
237 |
foreach ($this->TVC_Admin_Helper->get_gmcAttributes() as $key => $attribute) {
|
238 |
+
$sel_val="";
|
239 |
echo '<div class="row">
|
240 |
<div class="col-6 align-self-center">
|
241 |
<div class="form-group">
|
245 |
</div>
|
246 |
<div class="col-6 align-self-center">
|
247 |
<div class="form-group">';
|
248 |
+
$tvc_select_option = $wooCommerceAttributes;
|
249 |
+
$require = (isset($attribute['required']) && $attribute['required'])?true:false;
|
250 |
+
$sel_val = (isset($attribute['wAttribute']))?$attribute['wAttribute']:"";
|
251 |
if($attribute["field"]=='link'){
|
252 |
echo "product link";
|
253 |
+
}else if($attribute["field"]=='shipping'){
|
254 |
+
//$name, $class_id, string $label=null, $sel_val = null, bool $require = false
|
255 |
+
$sel_val = (isset($ee_mapped_attrs[$attribute["field"]]))?$ee_mapped_attrs[$attribute["field"]]:"";
|
256 |
+
echo $this->TVC_Admin_Helper->tvc_text($attribute["field"], 'number', '', 'Add shipping flat rate', $sel_val, $require);
|
257 |
+
}else if($attribute["field"]=='tax'){
|
258 |
+
//$name, $class_id, string $label=null, $sel_val = null, bool $require = false
|
259 |
+
$sel_val = (isset($ee_mapped_attrs[$attribute["field"]]))?$ee_mapped_attrs[$attribute["field"]]:"";
|
260 |
+
echo $this->TVC_Admin_Helper->tvc_text($attribute["field"], 'number', '', 'Add TAX flat (%)', $sel_val, $require);
|
261 |
+
}else if($attribute["field"]=='content_language'){
|
262 |
+
echo $this->TVC_Admin_Helper->tvc_language_select($attribute["field"], '', 'Please Select Attribute', 'en',$require);
|
263 |
+
}else if($attribute["field"]=='target_country'){
|
264 |
+
//$name, $class_id, bool $require = false
|
265 |
+
echo $this->TVC_Admin_Helper->tvc_countries_select($attribute["field"], '', 'Please Select Attribute', $require);
|
266 |
}else{
|
267 |
+
if(isset($attribute['fixed_options']) && $attribute['fixed_options'] !=""){
|
268 |
+
$tvc_select_option_t = explode(",", $attribute['fixed_options']);
|
269 |
+
$tvc_select_option=[];
|
270 |
+
foreach( $tvc_select_option_t as $o_val ){
|
271 |
+
$tvc_select_option[]['field'] = $o_val;
|
272 |
+
}
|
273 |
+
$this->TVC_Admin_Helper->tvc_select($attribute["field"],'','Please Select Attribute', $sel_val, $require, $tvc_select_option);
|
274 |
+
}else{
|
275 |
+
|
276 |
+
//print_r($ee_mapped_attrs);
|
277 |
+
$sel_val = (isset($ee_mapped_attrs[$attribute["field"]]))?$ee_mapped_attrs[$attribute["field"]]:"";
|
278 |
+
//$name, $class_id, $label="Please Select", $sel_val, $require, $option_list
|
279 |
+
$this->TVC_Admin_Helper->tvc_select($attribute["field"],'','Please Select Attribute', $sel_val, $require, $tvc_select_option);
|
280 |
+
}
|
281 |
+
|
282 |
}
|
283 |
echo '</div>
|
284 |
</div>
|
293 |
</div>
|
294 |
</div>
|
295 |
</div>
|
296 |
+
<?php $shop_categories_list = $this->TVC_Admin_Helper->get_tvc_product_cat_list(); ?>
|
297 |
<script type="text/javascript">
|
298 |
function call_tvc_api_sync_up(){
|
299 |
var tvs_this = event.target;
|
311 |
setTimeout(function(){ $("#tvc_msg").remove(); location.reload();}, 4000);
|
312 |
}
|
313 |
});
|
314 |
+
}
|
|
|
315 |
|
316 |
$(document).ready(function() {
|
317 |
$(".select2").select2();
|
326 |
next: "Next",
|
327 |
previous: "Previous",
|
328 |
},
|
329 |
+
onStepChanging: function(e, currentIndex, newIndex) {
|
330 |
+
var shop_categories = JSON.parse("<?php echo $shop_categories_list; ?>");
|
331 |
+
var is_tvc_cat_selecte = false;
|
332 |
+
shop_categories.forEach(function(v,i){
|
333 |
+
if(is_tvc_cat_selecte == false && $("#category-"+v).val() != "" && $("#category-"+v).val() != 0){
|
334 |
+
is_tvc_cat_selecte =true;
|
335 |
+
return false;
|
336 |
+
}
|
337 |
+
});
|
338 |
+
if(is_tvc_cat_selecte == 1 || is_tvc_cat_selecte == true){
|
339 |
+
return true;
|
340 |
+
}else{
|
341 |
+
alert("Select at least one Google Merchant Center Category.");
|
342 |
+
return false;
|
343 |
+
}
|
344 |
+
},
|
345 |
+
onStepChanged: function(event, currentIndex, priorIndex) {
|
346 |
+
$('.steps .current').prevAll().addClass('disabled');
|
347 |
},
|
348 |
onFinished: function(event, currentIndex) {
|
349 |
var valid=true;
|
includes/setup/google-shopping-feed.php
CHANGED
@@ -33,6 +33,31 @@ class GoogleShoppingFeed {
|
|
33 |
</div>
|
34 |
</li>';
|
35 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
public function create_form() {
|
37 |
$googleDetail = [];
|
38 |
$google_detail = $this->TVC_Admin_Helper->get_ee_options_data();
|
@@ -117,10 +142,15 @@ class GoogleShoppingFeed {
|
|
117 |
</div>
|
118 |
<div class="card-body">
|
119 |
<ul class="list-unstyled"><?php
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
|
|
|
|
|
|
|
|
|
|
124 |
?>
|
125 |
</ul>
|
126 |
</div>
|
@@ -190,6 +220,26 @@ class GoogleShoppingFeed {
|
|
190 |
</div>
|
191 |
</div>
|
192 |
<script type="text/javascript">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
193 |
function call_tvc_api_sync_up(){
|
194 |
var tvs_this = event.target;
|
195 |
$("#tvc_msg").remove();
|
33 |
</div>
|
34 |
</li>';
|
35 |
}
|
36 |
+
public function configuration_error_list_html($title, $val){
|
37 |
+
if($this->subscriptionId != ""){
|
38 |
+
return '<li>
|
39 |
+
<div class="row">
|
40 |
+
<div class="col-7 col-md-7 col-lg-7 align-self-center pr-0">
|
41 |
+
<span class="text">'.$title.'</span>
|
42 |
+
</div>
|
43 |
+
<div class="col-5 col-md-5 col-lg-5 align-self-center text-right">
|
44 |
+
<div class="list-image"><img id="refresh_domain_claim" onclick="call_domain_claim();" src="'. ENHANCAD_PLUGIN_URL.'/admin/images/refresh.png"><img src="' . ENHANCAD_PLUGIN_URL.'/admin/images/exclaimation.png" alt="no-config-success"/></div>
|
45 |
+
</div>
|
46 |
+
</div>
|
47 |
+
</li>';
|
48 |
+
}else{
|
49 |
+
return '<li>
|
50 |
+
<div class="row">
|
51 |
+
<div class="col-7 col-md-7 col-lg-7 align-self-center pr-0">
|
52 |
+
<span class="text">'.$title.'</span>
|
53 |
+
</div>
|
54 |
+
<div class="col-5 col-md-5 col-lg-5 align-self-center text-right">
|
55 |
+
<div class="list-image"><img src="' . ENHANCAD_PLUGIN_URL.'/admin/images/exclaimation.png" alt="no-config-success"/></div>
|
56 |
+
</div>
|
57 |
+
</div>
|
58 |
+
</li>';
|
59 |
+
}
|
60 |
+
}
|
61 |
public function create_form() {
|
62 |
$googleDetail = [];
|
63 |
$google_detail = $this->TVC_Admin_Helper->get_ee_options_data();
|
142 |
</div>
|
143 |
<div class="card-body">
|
144 |
<ul class="list-unstyled"><?php
|
145 |
+
$is_domain_claim = (isset($googleDetail->is_domain_claim))?$googleDetail->is_domain_claim:"";
|
146 |
+
echo $this->configuration_list_html("Google merchant center",(isset($googleDetail->google_merchant_center_id))?$googleDetail->google_merchant_center_id:"");
|
147 |
+
echo $this->configuration_list_html("Site Verified",(isset($googleDetail->is_site_verified))?$googleDetail->is_site_verified:"");
|
148 |
+
if($is_domain_claim ==1){
|
149 |
+
echo $this->configuration_list_html("Domain claim",$is_domain_claim);
|
150 |
+
}else{
|
151 |
+
echo $this->configuration_error_list_html("Domain claim",$is_domain_claim);
|
152 |
+
}
|
153 |
+
echo $this->configuration_list_html("Google Ads linking",((isset($googleDetail->google_ads_id)))?$googleDetail->google_ads_id:"");
|
154 |
?>
|
155 |
</ul>
|
156 |
</div>
|
220 |
</div>
|
221 |
</div>
|
222 |
<script type="text/javascript">
|
223 |
+
function call_domain_claim(){
|
224 |
+
var tvs_this = event.target;
|
225 |
+
$("#refresh_domain_claim").css("visibility","hidden");
|
226 |
+
$(tvs_this).after('<div class="domain-claim-spinner tvc-nb-spinner" id="domain-claim-spinner"></div>');
|
227 |
+
jQuery.post(myAjaxNonces.ajaxurl,{
|
228 |
+
action: "tvc_call_domain_claim",
|
229 |
+
apiDomainClaimNonce: myAjaxNonces.apiDomainClaimNonce
|
230 |
+
},function( response ){
|
231 |
+
var rsp = JSON.parse(response);
|
232 |
+
if(rsp.status == "success"){
|
233 |
+
alert(rsp.message);
|
234 |
+
location.reload();
|
235 |
+
//$(tvs_this).after('<span id="tvc_msg">'+rsp.message+"</span>");
|
236 |
+
//setTimeout(function(){ $("#tvc_msg").remove(); location.reload();}, 4000);
|
237 |
+
}else{
|
238 |
+
alert(rsp.message);
|
239 |
+
}
|
240 |
+
$("#domain-claim-spinner").remove();
|
241 |
+
});
|
242 |
+
}
|
243 |
function call_tvc_api_sync_up(){
|
244 |
var tvs_this = event.target;
|
245 |
$("#tvc_msg").remove();
|
includes/setup/help-html.php
CHANGED
@@ -18,11 +18,9 @@ function get_connect_google_popup_html(){
|
|
18 |
</div>
|
19 |
<div class="modal-footer">
|
20 |
<a target="_blank" class="ee-oauth-container btn darken-4 white black-text" href="'. $TVC_Admin_Helper->get_connect_url().'" style="text-transform:none; margin: 0 auto;">
|
21 |
-
|
22 |
-
|
23 |
-
src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/53/Google_%22G%22_Logo.svg/512px-Google_%22G%22_Logo.svg.png" />
|
24 |
-
</div>
|
25 |
-
<p style="font-size: inherit; margin-top:5px; margin-right:8px; ">Sign In With Google</p>
|
26 |
</a>
|
27 |
<!--sigin with google end-->
|
28 |
</div>
|
@@ -46,14 +44,13 @@ function get_google_shopping_tabs_html($site_url, $google_merchant_center_id){
|
|
46 |
$tab = (isset($_GET['tab']) && $_GET['tab'])?$_GET['tab']:"";
|
47 |
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
48 |
$setting_status = $TVC_Admin_Helper->check_setting_status_sub_tabs();
|
49 |
-
//echo "<pre>";
|
50 |
//print_r($setting_status);
|
51 |
$google_shopping_conf_msg ="";
|
52 |
if(isset($setting_status['google_shopping_conf'] ) && $setting_status['google_shopping_conf'] == false && isset($setting_status["google_shopping_conf_msg"]) && $setting_status["google_shopping_conf_msg"]){
|
53 |
$google_shopping_conf_msg = '<span class="tvc-tooltiptext tvc-tooltip-right">'.((isset($setting_status["google_shopping_conf_msg"]))?$setting_status["google_shopping_conf_msg"]:"").'</span>';
|
54 |
}
|
55 |
$google_shopping_p_sync_msg="";
|
56 |
-
if(isset($setting_status['
|
57 |
$google_shopping_p_sync_msg = '<span class="tvc-tooltiptext tvc-tooltip-right">'.((isset($setting_status["google_shopping_p_sync_msg"]))?$setting_status["google_shopping_p_sync_msg"]:"").'</span>';
|
58 |
}
|
59 |
|
18 |
</div>
|
19 |
<div class="modal-footer">
|
20 |
<a target="_blank" class="ee-oauth-container btn darken-4 white black-text" href="'. $TVC_Admin_Helper->get_connect_url().'" style="text-transform:none; margin: 0 auto;">
|
21 |
+
|
22 |
+
<p style="font-size: inherit; margin-top:5px;"><img width="20px" style="margin-right:8px" alt="Google sign-in"
|
23 |
+
src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/53/Google_%22G%22_Logo.svg/512px-Google_%22G%22_Logo.svg.png" />Sign In With Google</p>
|
|
|
|
|
24 |
</a>
|
25 |
<!--sigin with google end-->
|
26 |
</div>
|
44 |
$tab = (isset($_GET['tab']) && $_GET['tab'])?$_GET['tab']:"";
|
45 |
$TVC_Admin_Helper = new TVC_Admin_Helper();
|
46 |
$setting_status = $TVC_Admin_Helper->check_setting_status_sub_tabs();
|
|
|
47 |
//print_r($setting_status);
|
48 |
$google_shopping_conf_msg ="";
|
49 |
if(isset($setting_status['google_shopping_conf'] ) && $setting_status['google_shopping_conf'] == false && isset($setting_status["google_shopping_conf_msg"]) && $setting_status["google_shopping_conf_msg"]){
|
50 |
$google_shopping_conf_msg = '<span class="tvc-tooltiptext tvc-tooltip-right">'.((isset($setting_status["google_shopping_conf_msg"]))?$setting_status["google_shopping_conf_msg"]:"").'</span>';
|
51 |
}
|
52 |
$google_shopping_p_sync_msg="";
|
53 |
+
if(isset($setting_status['google_shopping_p_sync'] ) && $setting_status['google_shopping_p_sync'] == false && isset($setting_status["google_shopping_p_sync_msg"]) && $setting_status["google_shopping_p_sync_msg"] !=""){
|
54 |
$google_shopping_p_sync_msg = '<span class="tvc-tooltiptext tvc-tooltip-right">'.((isset($setting_status["google_shopping_p_sync_msg"]))?$setting_status["google_shopping_p_sync_msg"]:"").'</span>';
|
55 |
}
|
56 |
|
includes/setup/json/geotargets.csv
DELETED
@@ -1,103827 +0,0 @@
|
|
1 |
-
"1000002","Kabul","Kabul,Kabul,Afghanistan","9075393","AF","City",Active
|
2 |
-
"1000003","Luanda","Luanda,Luanda Province,Angola","9070431","AO","City",Active
|
3 |
-
"1000004","The Valley","The Valley,Anguilla","2660","AI","City",Active
|
4 |
-
"1000010","Abu Dhabi","Abu Dhabi,Abu Dhabi,United Arab Emirates","9041082","AE","City",Active
|
5 |
-
"1000011","Ajman","Ajman,Ajman,United Arab Emirates","9047096","AE","City",Active
|
6 |
-
"1000012","Al Ain","Al Ain,Abu Dhabi,United Arab Emirates","9041082","AE","City",Active
|
7 |
-
"1000013","Dubai","Dubai,Dubai,United Arab Emirates","9041083","AE","City",Active
|
8 |
-
"1000014","Ras Al-Khaimah","Ras Al-Khaimah,Ras al Khaimah,United Arab Emirates","9047098","AE","City",Active
|
9 |
-
"1000018","Salta","Salta,Salta Province,Argentina","20008","AR","City",Active
|
10 |
-
"1000021","Avellaneda","Avellaneda,Buenos Aires Province,Argentina","20009","AR","City",Active
|
11 |
-
"1000024","Bahia Blanca","Bahia Blanca,Buenos Aires Province,Argentina","20009","AR","City",Active
|
12 |
-
"1000025","Balcarce","Balcarce,Buenos Aires Province,Argentina","20009","AR","City",Active
|
13 |
-
"1000027","Brandsen","Brandsen,Buenos Aires Province,Argentina","20009","AR","City",Active
|
14 |
-
"1000028","Campana","Campana,Buenos Aires Province,Argentina","20009","AR","City",Active
|
15 |
-
"1000029","Chacabuco","Chacabuco,Buenos Aires Province,Argentina","20009","AR","City",Active
|
16 |
-
"1000030","Colon","Colon,Buenos Aires Province,Argentina","20009","AR","City",Active
|
17 |
-
"1000031","Del Viso","Del Viso,Pilar,Buenos Aires Province,Argentina","20009","AR","City",Active
|
18 |
-
"1000035","Isidro Casanova","Isidro Casanova,Buenos Aires Province,Argentina","20009","AR","City",Active
|
19 |
-
"1000036","Junin","Junin,Buenos Aires Province,Argentina","20009","AR","City",Active
|
20 |
-
"1000037","La Plata","La Plata,Buenos Aires Province,Argentina","20009","AR","City",Active
|
21 |
-
"1000039","Lomas de Zamora","Lomas de Zamora,Buenos Aires Province,Argentina","20009","AR","City",Active
|
22 |
-
"1000040","Luis Guillon","Luis Guillon,Buenos Aires Province,Argentina","20009","AR","City",Active
|
23 |
-
"1000041","Lujan","Lujan,Buenos Aires Province,Argentina","20009","AR","City",Active
|
24 |
-
"1000042","Mar del Plata","Mar del Plata,Buenos Aires Province,Argentina","20009","AR","City",Active
|
25 |
-
"1000044","Moron","Moron,Buenos Aires Province,Argentina","20009","AR","City",Active
|
26 |
-
"1000045","Olavarria","Olavarria,Buenos Aires Province,Argentina","20009","AR","City",Active
|
27 |
-
"1000047","Pergamino","Pergamino,Buenos Aires Province,Argentina","20009","AR","City",Active
|
28 |
-
"1000050","Pinamar","Pinamar,Buenos Aires Province,Argentina","20009","AR","City",Active
|
29 |
-
"1000053","Quilmes","Quilmes,Buenos Aires Province,Argentina","20009","AR","City",Active
|
30 |
-
"1000058","San Antonio de Padua","San Antonio de Padua,Buenos Aires Province,Argentina","20009","AR","City",Active
|
31 |
-
"1000059","San Fernando","San Fernando,Buenos Aires Province,Argentina","20009","AR","City",Active
|
32 |
-
"1000060","San Isidro","San Isidro,Buenos Aires Province,Argentina","20009","AR","City",Active
|
33 |
-
"1000062","San Nicolas de los Arroyos","San Nicolas de los Arroyos,Buenos Aires Province,Argentina","20009","AR","City",Active
|
34 |
-
"1000063","San Pedro","San Pedro,Buenos Aires Province,Argentina","20009","AR","City",Active
|
35 |
-
"1000065","Tandil","Tandil,Buenos Aires Province,Argentina","20009","AR","City",Active
|
36 |
-
"1000066","Tortuguitas","Tortuguitas,Buenos Aires Province,Argentina","20009","AR","City",Active
|
37 |
-
"1000067","Trenque Lauquen","Trenque Lauquen,Buenos Aires Province,Argentina","20009","AR","City",Active
|
38 |
-
"1000069","Vicente Lopez","Vicente Lopez,Buenos Aires Province,Argentina","20009","AR","City",Active
|
39 |
-
"1000070","Villa Gesell","Villa Gesell,Buenos Aires Province,Argentina","20009","AR","City",Active
|
40 |
-
"1000072","Zarate","Zarate,Buenos Aires Province,Argentina","20009","AR","City",Active
|
41 |
-
"1000073","Buenos Aires","Buenos Aires,Buenos Aires,Argentina","20010","AR","City",Active
|
42 |
-
"1000075","Concepcion del Uruguay","Concepcion del Uruguay,Entre Rios,Argentina","20011","AR","City",Active
|
43 |
-
"1000077","Gualeguaychu","Gualeguaychu,Entre Rios,Argentina","20011","AR","City",Active
|
44 |
-
"1000078","Parana","Parana,Entre Rios,Argentina","20011","AR","City",Active
|
45 |
-
"1000080","La Rioja","La Rioja,La Rioja Province,Argentina","20012","AR","City",Active
|
46 |
-
"1000081","Santiago del Estero","Santiago del Estero,Santiago del Estero Province,Argentina","21298","AR","City",Active
|
47 |
-
"1000082","Resistencia","Resistencia,Chaco Province,Argentina","20013","AR","City",Active
|
48 |
-
"1000083","Roque Saenz Pena","Roque Saenz Pena,Santa Fe Province,Argentina","20021","AR","City",Active
|
49 |
-
"1000085","San Juan","San Juan,San Juan Province,Argentina","20014","AR","City",Active
|
50 |
-
"1000086","Catamarca","Catamarca,Catamarca Province,Argentina","20015","AR","City",Active
|
51 |
-
"1000088","General Pico","General Pico,La Pampa,Argentina","20016","AR","City",Active
|
52 |
-
"1000089","Santa Rosa","Santa Rosa,La Pampa,Argentina","20016","AR","City",Active
|
53 |
-
"1000092","Mendoza","Mendoza,Mendoza Province,Argentina","20017","AR","City",Active
|
54 |
-
"1000094","San Martin","San Martin,Mendoza Province,Argentina","20017","AR","City",Active
|
55 |
-
"1000095","San Rafael","San Rafael,Mendoza Province,Argentina","20017","AR","City",Active
|
56 |
-
"1000096","Posadas","Posadas,Misiones Province,Argentina","20018","AR","City",Active
|
57 |
-
"1000097","Formosa","Formosa,Formosa Province,Argentina","21299","AR","City",Active
|
58 |
-
"1000099","Neuquen","Neuquen,Neuquen,Argentina","20019","AR","City",Active
|
59 |
-
"1000100","San Martin de los Andes","San Martin de los Andes,Neuquen,Argentina","20019","AR","City",Active
|
60 |
-
"1000104","San Carlos de Bariloche","San Carlos de Bariloche,Rio Negro,Argentina","20020","AR","City",Active
|
61 |
-
"1000105","Viedma","Viedma,Rio Negro,Argentina","20020","AR","City",Active
|
62 |
-
"1000108","Rafaela","Rafaela,Santa Fe Province,Argentina","20021","AR","City",Active
|
63 |
-
"1000109","Rosario","Rosario,Santa Fe Province,Argentina","20021","AR","City",Active
|
64 |
-
"1000112","Santa Fe","Santa Fe,Santa Fe Province,Argentina","20021","AR","City",Active
|
65 |
-
"1000114","Venado Tuerto","Venado Tuerto,Santa Fe Province,Argentina","20021","AR","City",Active
|
66 |
-
"1000115","Villa Constitucion","Villa Constitucion,Santa Fe Province,Argentina","20021","AR","City",Active
|
67 |
-
"1000116","San Miguel de Tucuman","San Miguel de Tucuman,Tucuman,Argentina","20022","AR","City",Active
|
68 |
-
"1000117","Comodoro Rivadavia","Comodoro Rivadavia,Chubut Province,Argentina","20023","AR","City",Active
|
69 |
-
"1000119","Puerto Madryn","Puerto Madryn,Chubut Province,Argentina","20023","AR","City",Active
|
70 |
-
"1000121","Rio Grande","Rio Grande,Tierra del Fuego Province,Argentina","20024","AR","City",Active
|
71 |
-
"1000122","Ushuaia","Ushuaia,Tierra del Fuego Province,Argentina","20024","AR","City",Active
|
72 |
-
"1000123","Corrientes","Corrientes,Corrientes,Argentina","20025","AR","City",Active
|
73 |
-
"1000126","Cordoba","Cordoba,Cordoba,Argentina","20026","AR","City",Active
|
74 |
-
"1000128","Rio Cuarto","Rio Cuarto,Cordoba,Argentina","20026","AR","City",Active
|
75 |
-
"1000129","San Francisco","San Francisco,Cordoba,Argentina","20026","AR","City",Active
|
76 |
-
"1000130","Villa Maria","Villa Maria,Cordoba,Argentina","20026","AR","City",Active
|
77 |
-
"1000133","Jujuy","Jujuy,Jujuy,Argentina","20027","AR","City",Active
|
78 |
-
"1000134","Caleta Olivia","Caleta Olivia,Santa Cruz Province,Argentina","20028","AR","City",Active
|
79 |
-
"1000135","Rio Gallegos","Rio Gallegos,Santa Cruz Province,Argentina","20028","AR","City",Active
|
80 |
-
"1000138","Saint John's","Saint John's,Saint John,Antigua and Barbuda","9075418","AG","City",Active
|
81 |
-
"1000142","Canberra","Canberra,Australian Capital Territory,Australia","20034","AU","City",Active
|
82 |
-
"1000144","Barwon Downs","Barwon Downs,Victoria,Australia","20040","AU","City",Active
|
83 |
-
"1000148","Albury","Albury,New South Wales,Australia","20035","AU","City",Active
|
84 |
-
"1000149","Armidale","Armidale,New South Wales,Australia","20035","AU","City",Active
|
85 |
-
"1000152","Ballina","Ballina,New South Wales,Australia","20035","AU","City",Active
|
86 |
-
"1000156","Batemans Bay","Batemans Bay,New South Wales,Australia","20035","AU","City",Active
|
87 |
-
"1000157","Bathurst","Bathurst,New South Wales,Australia","20035","AU","City",Active
|
88 |
-
"1000170","Broken Hill","Broken Hill,New South Wales,Australia","20035","AU","City",Active
|
89 |
-
"1000173","Cessnock","Cessnock,New South Wales,Australia","20035","AU","City",Active
|
90 |
-
"1000184","Coffs Harbour","Coffs Harbour,New South Wales,Australia","20035","AU","City",Active
|
91 |
-
"1000200","Dubbo","Dubbo,New South Wales,Australia","20035","AU","City",Active
|
92 |
-
"1000211","Goulburn","Goulburn,New South Wales,Australia","20035","AU","City",Active
|
93 |
-
"1000212","Grafton","Grafton,New South Wales,Australia","20035","AU","City",Active
|
94 |
-
"1000213","Griffith","Griffith,New South Wales,Australia","20035","AU","City",Active
|
95 |
-
"1000225","Kiama","Kiama,New South Wales,Australia","20035","AU","City",Active
|
96 |
-
"1000226","Victoria Point","Victoria Point,Queensland,Australia","20037","AU","City",Active
|
97 |
-
"1000227","Katoomba","Katoomba,New South Wales,Australia","20035","AU","City",Active
|
98 |
-
"1000233","Lismore","Lismore,New South Wales,Australia","20035","AU","City",Active
|
99 |
-
"1000234","Lithgow","Lithgow,New South Wales,Australia","20035","AU","City",Active
|
100 |
-
"1000236","Maitland","Maitland,New South Wales,Australia","20035","AU","City",Active
|
101 |
-
"1000246","Craigieburn","Craigieburn,Victoria,Australia","20040","AU","City",Active
|
102 |
-
"1000250","Muswellbrook","Muswellbrook,New South Wales,Australia","20035","AU","City",Active
|
103 |
-
"1000255","Newcastle","Newcastle,New South Wales,Australia","20035","AU","City",Active
|
104 |
-
"1000259","Nowra","Nowra,New South Wales,Australia","20035","AU","City",Active
|
105 |
-
"1000262","Orange","Orange,New South Wales,Australia","20035","AU","City",Active
|
106 |
-
"1000264","Parkes","Parkes,New South Wales,Australia","20035","AU","City",Active
|
107 |
-
"1000269","Port Macquarie","Port Macquarie,New South Wales,Australia","20035","AU","City",Active
|
108 |
-
"1000274","Raymond Terrace","Raymond Terrace,New South Wales,Australia","20035","AU","City",Active
|
109 |
-
"1000278","Richmond","Richmond,New South Wales,Australia","20035","AU","City",Active
|
110 |
-
"1000281","Sawtell","Sawtell,New South Wales,Australia","20035","AU","City",Active
|
111 |
-
"1000284","Singleton","Singleton,New South Wales,Australia","20035","AU","City",Active
|
112 |
-
"1000286","Sydney","Sydney,New South Wales,Australia","20035","AU","City",Active
|
113 |
-
"1000287","Tamworth","Tamworth,New South Wales,Australia","20035","AU","City",Active
|
114 |
-
"1000288","Taree","Taree,New South Wales,Australia","20035","AU","City",Active
|
115 |
-
"1000304","Wagga Wagga","Wagga Wagga,New South Wales,Australia","20035","AU","City",Active
|
116 |
-
"1000314","Wollongong","Wollongong,New South Wales,Australia","20035","AU","City",Active
|
117 |
-
"1000320","Alice Springs","Alice Springs,Northern Territory,Australia","20036","AU","City",Active
|
118 |
-
"1000322","Darwin","Darwin,Northern Territory,Australia","20036","AU","City",Active
|
119 |
-
"1000336","Bongaree","Bongaree,Queensland,Australia","20037","AU","City",Active
|
120 |
-
"1000339","Brisbane","Brisbane,Queensland,Australia","20037","AU","City",Active
|
121 |
-
"1000341","Buderim","Buderim,Queensland,Australia","20037","AU","City",Active
|
122 |
-
"1000342","Bundaberg","Bundaberg,Queensland,Australia","20037","AU","City",Active
|
123 |
-
"1000346","Caboolture","Caboolture,Queensland,Australia","20037","AU","City",Active
|
124 |
-
"1000347","Cairns","Cairns,Queensland,Australia","20037","AU","City",Active
|
125 |
-
"1000348","Caloundra","Caloundra,Queensland,Australia","20037","AU","City",Active
|
126 |
-
"1000358","Dalby","Dalby,Queensland,Australia","20037","AU","City",Active
|
127 |
-
"1000364","Gladstone","Gladstone,Queensland,Australia","20037","AU","City",Active
|
128 |
-
"1000366","Gympie","Gympie,Queensland,Australia","20037","AU","City",Active
|
129 |
-
"1000376","Kingston","Kingston,Tasmania,Australia","20039","AU","City",Active
|
130 |
-
"1000377","Kawana","Kawana,Queensland,Australia","20037","AU","City",Active
|
131 |
-
"1000380","Mackay","Mackay,Queensland,Australia","20037","AU","City",Active
|
132 |
-
"1000382","Maroochydore","Maroochydore,Queensland,Australia","20037","AU","City",Active
|
133 |
-
"1000383","Maryborough","Maryborough,Queensland,Australia","20037","AU","City",Active
|
134 |
-
"1000388","Mount Isa","Mount Isa,Queensland,Australia","20037","AU","City",Active
|
135 |
-
"1000390","Nambour","Nambour,Queensland,Australia","20037","AU","City",Active
|
136 |
-
"1000392","Nerang","Nerang,Queensland,Australia","20037","AU","City",Active
|
137 |
-
"1000401","Redcliffe","Redcliffe,Queensland,Australia","20037","AU","City",Active
|
138 |
-
"1000404","Rockhampton","Rockhampton,Queensland,Australia","20037","AU","City",Active
|
139 |
-
"1000412","Toowoomba","Toowoomba,Queensland,Australia","20037","AU","City",Active
|
140 |
-
"1000414","Townsville","Townsville,Queensland,Australia","20037","AU","City",Active
|
141 |
-
"1000415","Warwick","Warwick,Queensland,Australia","20037","AU","City",Active
|
142 |
-
"1000422","Adelaide","Adelaide,South Australia,Australia","20038","AU","City",Active
|
143 |
-
"1000438","Gawler","Gawler,South Australia,Australia","20038","AU","City",Active
|
144 |
-
"1000449","Mount Gambier","Mount Gambier,South Australia,Australia","20038","AU","City",Active
|
145 |
-
"1000450","Murray Bridge","Murray Bridge,South Australia,Australia","20038","AU","City",Active
|
146 |
-
"1000456","Port Augusta","Port Augusta,South Australia,Australia","20038","AU","City",Active
|
147 |
-
"1000457","Port Lincoln","Port Lincoln,South Australia,Australia","20038","AU","City",Active
|
148 |
-
"1000458","Port Pirie","Port Pirie,South Australia,Australia","20038","AU","City",Active
|
149 |
-
"1000469","Whyalla","Whyalla,South Australia,Australia","20038","AU","City",Active
|
150 |
-
"1000476","Burnie - Somerset","Burnie - Somerset,Tasmania,Australia","20039","AU","City",Active
|
151 |
-
"1000479","Devonport","Devonport,Tasmania,Australia","20039","AU","City",Active
|
152 |
-
"1000480","Hobart","Hobart,Tasmania,Australia","20039","AU","City",Active
|
153 |
-
"1000481","Launceston","Launceston,Tasmania,Australia","20039","AU","City",Active
|
154 |
-
"1000485","Ulverstone","Ulverstone,Tasmania,Australia","20039","AU","City",Active
|
155 |
-
"1000490","Bacchus Marsh","Bacchus Marsh,Victoria,Australia","20040","AU","City",Active
|
156 |
-
"1000491","Bairnsdale","Bairnsdale,Victoria,Australia","20040","AU","City",Active
|
157 |
-
"1000492","Ballarat","Ballarat,Victoria,Australia","20040","AU","City",Active
|
158 |
-
"1000498","Bendigo","Bendigo,Victoria,Australia","20040","AU","City",Active
|
159 |
-
"1000521","Cranbourne","Cranbourne,Victoria,Australia","20040","AU","City",Active
|
160 |
-
"1000530","Echuca","Echuca,Victoria,Australia","20040","AU","City",Active
|
161 |
-
"1000537","Geelong","Geelong,Victoria,Australia","20040","AU","City",Active
|
162 |
-
"1000549","Horsham","Horsham,Victoria,Australia","20040","AU","City",Active
|
163 |
-
"1000550","Palmerston City","Palmerston City,Northern Territory,Australia","20036","AU","City",Active
|
164 |
-
"1000567","Melbourne","Melbourne,Victoria,Australia","20040","AU","City",Active
|
165 |
-
"1000568","Melton","Melton,Victoria,Australia","20040","AU","City",Active
|
166 |
-
"1000571","Mildura","Mildura,Victoria,Australia","20040","AU","City",Active
|
167 |
-
"1000572","Moe - Newborough","Moe - Newborough,Victoria,Australia","20040","AU","City",Active
|
168 |
-
"1000576","Morwell","Morwell,Victoria,Australia","20040","AU","City",Active
|
169 |
-
"1000588","Colac","Colac,Victoria,Australia","20040","AU","City",Active
|
170 |
-
"1000590","Pakenham","Pakenham,Victoria,Australia","20040","AU","City",Active
|
171 |
-
"1000593","Portland","Portland,Victoria,Australia","20040","AU","City",Active
|
172 |
-
"1000594","Central Coast","Central Coast,New South Wales,Australia","20035","AU","City",Active
|
173 |
-
"1000599","Casino","Casino,New South Wales,Australia","20035","AU","City",Active
|
174 |
-
"1000602","Sale","Sale,Victoria,Australia","20040","AU","City",Active
|
175 |
-
"1000605","Shepparton - Mooroopna","Shepparton - Mooroopna,Victoria,Australia","20040","AU","City",Active
|
176 |
-
"1000609","Sunbury","Sunbury,Victoria,Australia","20040","AU","City",Active
|
177 |
-
"1000614","Traralgon","Traralgon,Victoria,Australia","20040","AU","City",Active
|
178 |
-
"1000616","Wangaratta","Wangaratta,Victoria,Australia","20040","AU","City",Active
|
179 |
-
"1000620","Warrnambool","Warrnambool,Victoria,Australia","20040","AU","City",Active
|
180 |
-
"1000630","Albany","Albany,Western Australia,Australia","20041","AU","City",Active
|
181 |
-
"1000635","Broome","Broome,Western Australia,Australia","20041","AU","City",Active
|
182 |
-
"1000636","Bunbury","Bunbury,Western Australia,Australia","20041","AU","City",Active
|
183 |
-
"1000637","Busselton","Busselton,Western Australia,Australia","20041","AU","City",Active
|
184 |
-
"1000650","Geraldton","Geraldton,Western Australia,Australia","20041","AU","City",Active
|
185 |
-
"1000652","Hervey Bay","Hervey Bay,Queensland,Australia","20037","AU","City",Active
|
186 |
-
"1000653","Kalgoorlie - Boulder","Kalgoorlie - Boulder,Western Australia,Australia","20041","AU","City",Active
|
187 |
-
"1000654","Karratha","Karratha,Western Australia,Australia","20041","AU","City",Active
|
188 |
-
"1000658","Kwinana Town Centre","Kwinana Town Centre,Western Australia,Australia","20041","AU","City",Active
|
189 |
-
"1000662","Mandurah","Mandurah,Western Australia,Australia","20041","AU","City",Active
|
190 |
-
"1000665","Gold Coast","Gold Coast,Queensland,Australia","20037","AU","City",Active
|
191 |
-
"1000676","Perth","Perth,Western Australia,Australia","20041","AU","City",Active
|
192 |
-
"1000678","Port Hedland","Port Hedland,Western Australia,Australia","20041","AU","City",Active
|
193 |
-
"1000679","Rockingham","Rockingham,Western Australia,Australia","20041","AU","City",Active
|
194 |
-
"1000683","Bad Tatzmannsdorf","Bad Tatzmannsdorf,Burgenland,Austria","20042","AT","City",Active
|
195 |
-
"1000684","Eisenstadt","Eisenstadt,Burgenland,Austria","20042","AT","City",Active
|
196 |
-
"1000685","Grosspetersdorf","Grosspetersdorf,Burgenland,Austria","20042","AT","City",Active
|
197 |
-
"1000686","Jennersdorf","Jennersdorf,Burgenland,Austria","20042","AT","City",Active
|
198 |
-
"1000687","Landsee","Landsee,Burgenland,Austria","20042","AT","City",Active
|
199 |
-
"1000688","Lockenhaus","Lockenhaus,Burgenland,Austria","20042","AT","City",Active
|
200 |
-
"1000689","Mattersburg","Mattersburg,Burgenland,Austria","20042","AT","City",Active
|
201 |
-
"1000690","Neusiedl am See","Neusiedl am See,Burgenland,Austria","20042","AT","City",Active
|
202 |
-
"1000691","Oberpullendorf","Oberpullendorf,Burgenland,Austria","20042","AT","City",Active
|
203 |
-
"1000692","Oberwart","Oberwart,Burgenland,Austria","20042","AT","City",Active
|
204 |
-
"1000693","Parndorf","Parndorf,Burgenland,Austria","20042","AT","City",Active
|
205 |
-
"1000694","Wimpassing an der Leitha","Wimpassing an der Leitha,Austria","2040","AT","City",Active
|
206 |
-
"1000695","Arnoldstein","Arnoldstein,Carinthia,Austria","20043","AT","City",Active
|
207 |
-
"1000696","Bad Sankt Leonhard im Lavanttal","Bad Sankt Leonhard im Lavanttal,Carinthia,Austria","20043","AT","City",Active
|
208 |
-
"1000697","Bad Bleiberg","Bad Bleiberg,Carinthia,Austria","20043","AT","City",Active
|
209 |
-
"1000698","Feistritz an der Drau","Feistritz an der Drau,Carinthia,Austria","20043","AT","City",Active
|
210 |
-
"1000699","Frantschach","Frantschach,Carinthia,Austria","20043","AT","City",Active
|
211 |
-
"1000700","Friesach","Friesach,Carinthia,Austria","20043","AT","City",Active
|
212 |
-
"1000701","Klagenfurt","Klagenfurt,Carinthia,Austria","20043","AT","City",Active
|
213 |
-
"1000702","Mallnitz","Mallnitz,Carinthia,Austria","20043","AT","City",Active
|
214 |
-
"1000703","Neudorfl","Neudorfl,Burgenland,Austria","20042","AT","City",Active
|
215 |
-
"1000704","Radenthein","Radenthein,Carinthia,Austria","20043","AT","City",Active
|
216 |
-
"1000705","Treffen","Treffen,Carinthia,Austria","20043","AT","City",Active
|
217 |
-
"1000707","Villach","Villach,Carinthia,Austria","20043","AT","City",Active
|
218 |
-
"1000708","Wernberg","Wernberg,Carinthia,Austria","20043","AT","City",Active
|
219 |
-
"1000709","Amstetten","Amstetten,Lower Austria,Austria","20044","AT","City",Active
|
220 |
-
"1000710","Baden bei Wien","Baden bei Wien,Lower Austria,Austria","20044","AT","City",Active
|
221 |
-
"1000711","Bruck an der Leitha","Bruck an der Leitha,Lower Austria,Austria","20044","AT","City",Active
|
222 |
-
"1000712","Ebergassing","Ebergassing,Lower Austria,Austria","20044","AT","City",Active
|
223 |
-
"1000713","Eggenburg","Eggenburg,Lower Austria,Austria","20044","AT","City",Active
|
224 |
-
"1000714","Enzesfeld","Enzesfeld,Lower Austria,Austria","20044","AT","City",Active
|
225 |
-
"1000715","Gablitz","Gablitz,Lower Austria,Austria","20044","AT","City",Active
|
226 |
-
"1000716","Gaming","Gaming,Lower Austria,Austria","20044","AT","City",Active
|
227 |
-
"1000717","Gars am Kamp","Gars am Kamp,Lower Austria,Austria","20044","AT","City",Active
|
228 |
-
"1000718","Gerasdorf","Gerasdorf,Lower Austria,Austria","20044","AT","City",Active
|
229 |
-
"1000719","Gloggnitz","Gloggnitz,Lower Austria,Austria","20044","AT","City",Active
|
230 |
-
"1000720","Gresten","Gresten,Lower Austria,Austria","20044","AT","City",Active
|
231 |
-
"1000721","Gross-Enzersdorf","Gross-Enzersdorf,Lower Austria,Austria","20044","AT","City",Active
|
232 |
-
"1000722","Gumpoldskirchen","Gumpoldskirchen,Lower Austria,Austria","20044","AT","City",Active
|
233 |
-
"1000723","Guntramsdorf","Guntramsdorf,Lower Austria,Austria","20044","AT","City",Active
|
234 |
-
"1000724","Hainburg an der Donau","Hainburg an der Donau,Lower Austria,Austria","20044","AT","City",Active
|
235 |
-
"1000725","Hainfeld","Hainfeld,Lower Austria,Austria","20044","AT","City",Active
|
236 |
-
"1000727","Heidenreichstein","Heidenreichstein,Lower Austria,Austria","20044","AT","City",Active
|
237 |
-
"1000728","Herzogenburg","Herzogenburg,Lower Austria,Austria","20044","AT","City",Active
|
238 |
-
"1000729","Himberg","Himberg,Lower Austria,Austria","20044","AT","City",Active
|
239 |
-
"1000731","Hirtenberg","Hirtenberg,Lower Austria,Austria","20044","AT","City",Active
|
240 |
-
"1000733","Hohenberg","Hohenberg,Lower Austria,Austria","20044","AT","City",Active
|
241 |
-
"1000734","Hollabrunn","Hollabrunn,Lower Austria,Austria","20044","AT","City",Active
|
242 |
-
"1000735","Horn","Horn,Lower Austria,Austria","20044","AT","City",Active
|
243 |
-
"1000736","Kaltenleutgeben","Kaltenleutgeben,Lower Austria,Austria","20044","AT","City",Active
|
244 |
-
"1000737","Kirchberg am Wechsel","Kirchberg am Wechsel,Lower Austria,Austria","20044","AT","City",Active
|
245 |
-
"1000738","Klosterneuburg","Klosterneuburg,Lower Austria,Austria","20044","AT","City",Active
|
246 |
-
"1000739","Korneuburg","Korneuburg,Lower Austria,Austria","20044","AT","City",Active
|
247 |
-
"1000740","Kottingbrunn","Kottingbrunn,Lower Austria,Austria","20044","AT","City",Active
|
248 |
-
"1000741","Krems an der Donau","Krems an der Donau,Lower Austria,Austria","20044","AT","City",Active
|
249 |
-
"1000742","Langenzersdorf","Langenzersdorf,Lower Austria,Austria","20044","AT","City",Active
|
250 |
-
"1000743","Lanzendorf","Lanzendorf,Lower Austria,Austria","20044","AT","City",Active
|
251 |
-
"1000744","Laxenburg","Laxenburg,Lower Austria,Austria","20044","AT","City",Active
|
252 |
-
"1000745","Leopoldsdorf","Leopoldsdorf,Lower Austria,Austria","20044","AT","City",Active
|
253 |
-
"1000746","Lilienfeld","Lilienfeld,Lower Austria,Austria","20044","AT","City",Active
|
254 |
-
"1000747","Lunz am See","Lunz am See,Lower Austria,Austria","20044","AT","City",Active
|
255 |
-
"1000748","Mank","Mank,Lower Austria,Austria","20044","AT","City",Active
|
256 |
-
"1000749","Maria Enzersdorf","Maria Enzersdorf,Lower Austria,Austria","20044","AT","City",Active
|
257 |
-
"1000750","Melk","Melk,Lower Austria,Austria","20044","AT","City",Active
|
258 |
-
"1000751","Mistelbach","Mistelbach,Lower Austria,Austria","20044","AT","City",Active
|
259 |
-
"1000752","Mitterbach am Erlaufsee","Mitterbach am Erlaufsee,Lower Austria,Austria","20044","AT","Municipality",Active
|
260 |
-
"1000753","Modling","Modling,Lower Austria,Austria","20044","AT","City",Active
|
261 |
-
"1000754","Monichkirchen","Monichkirchen,Lower Austria,Austria","20044","AT","City",Active
|
262 |
-
"1000755","Moosbrunn","Moosbrunn,Lower Austria,Austria","20044","AT","City",Active
|
263 |
-
"1000757","Neulengbach","Neulengbach,Lower Austria,Austria","20044","AT","City",Active
|
264 |
-
"1000758","Neunkirchen","Neunkirchen,Lower Austria,Austria","20044","AT","City",Active
|
265 |
-
"1000759","Ober-Grafendorf","Ober-Grafendorf,Lower Austria,Austria","20044","AT","City",Active
|
266 |
-
"1000763","Perchtoldsdorf","Perchtoldsdorf,Lower Austria,Austria","20044","AT","City",Active
|
267 |
-
"1000764","Pernitz","Pernitz,Lower Austria,Austria","20044","AT","City",Active
|
268 |
-
"1000765","Pochlarn","Pochlarn,Lower Austria,Austria","20044","AT","City",Active
|
269 |
-
"1000766","Poysdorf","Poysdorf,Lower Austria,Austria","20044","AT","City",Active
|
270 |
-
"1000767","Pressbaum","Pressbaum,Lower Austria,Austria","20044","AT","City",Active
|
271 |
-
"1000768","Purkersdorf","Purkersdorf,Lower Austria,Austria","20044","AT","City",Active
|
272 |
-
"1000769","Reichenau an der Rax","Reichenau an der Rax,Lower Austria,Austria","20044","AT","City",Active
|
273 |
-
"1000770","Retz","Retz,Lower Austria,Austria","20044","AT","City",Active
|
274 |
-
"1000772","Saint Polten","Saint Polten,Lower Austria,Austria","20044","AT","City",Active
|
275 |
-
"1000773","Saint Valentin","Saint Valentin,Lower Austria,Austria","20044","AT","City",Active
|
276 |
-
"1000774","Schrems","Schrems,Lower Austria,Austria","20044","AT","City",Active
|
277 |
-
"1000775","Schwadorf","Schwadorf,Lower Austria,Austria","20044","AT","City",Active
|
278 |
-
"1000776","Schwechat","Schwechat,Lower Austria,Austria","20044","AT","City",Active
|
279 |
-
"1000777","Seitenstetten","Seitenstetten,Lower Austria,Austria","20044","AT","City",Active
|
280 |
-
"1000779","Stockerau","Stockerau,Lower Austria,Austria","20044","AT","City",Active
|
281 |
-
"1000780","Strasshof an der Nordbahn","Strasshof an der Nordbahn,Lower Austria,Austria","20044","AT","City",Active
|
282 |
-
"1000781","Teesdorf","Teesdorf,Lower Austria,Austria","20044","AT","City",Active
|
283 |
-
"1000782","Ternitz","Ternitz,Lower Austria,Austria","20044","AT","City",Active
|
284 |
-
"1000784","Traiskirchen","Traiskirchen,Lower Austria,Austria","20044","AT","City",Active
|
285 |
-
"1000786","Tulln","Tulln,Lower Austria,Austria","20044","AT","City",Active
|
286 |
-
"1000788","Vosendorf","Vosendorf,Lower Austria,Austria","20044","AT","City",Active
|
287 |
-
"1000790","Waidhofen an der Ybbs","Waidhofen an der Ybbs,Lower Austria,Austria","20044","AT","City",Active
|
288 |
-
"1000791","Wartmannstetten","Wartmannstetten,Lower Austria,Austria","20044","AT","City",Active
|
289 |
-
"1000792","Wiener Neudorf","Wiener Neudorf,Lower Austria,Austria","20044","AT","City",Active
|
290 |
-
"1000793","Wiener Neustadt","Wiener Neustadt,Lower Austria,Austria","20044","AT","City",Active
|
291 |
-
"1000794","Wolkersdorf","Wolkersdorf,Lower Austria,Austria","20044","AT","City",Active
|
292 |
-
"1000795","Ybbsitz","Ybbsitz,Lower Austria,Austria","20044","AT","City",Active
|
293 |
-
"1000796","Ziersdorf","Ziersdorf,Lower Austria,Austria","20044","AT","City",Active
|
294 |
-
"1000797","Zwettl","Zwettl,Lower Austria,Austria","20044","AT","City",Active
|
295 |
-
"1000799","Alkoven","Alkoven,Upper Austria,Austria","20045","AT","City",Active
|
296 |
-
"1000801","Altheim","Altheim,Upper Austria,Austria","20045","AT","Municipality",Active
|
297 |
-
"1000802","Altmunster","Altmunster,Upper Austria,Austria","20045","AT","City",Active
|
298 |
-
"1000803","Ansfelden","Ansfelden,Upper Austria,Austria","20045","AT","City",Active
|
299 |
-
"1000804","Bad Ischl","Bad Ischl,Upper Austria,Austria","20045","AT","City",Active
|
300 |
-
"1000805","Braunau am Inn","Braunau am Inn,Upper Austria,Austria","20045","AT","City",Active
|
301 |
-
"1000806","Burgkirchen","Burgkirchen,Upper Austria,Austria","20045","AT","Municipality",Active
|
302 |
-
"1000807","Eferding","Eferding,Upper Austria,Austria","20045","AT","City",Active
|
303 |
-
"1000808","Eggelsberg","Eggelsberg,Upper Austria,Austria","20045","AT","City",Active
|
304 |
-
"1000809","Enns","Enns,Upper Austria,Austria","20045","AT","City",Active
|
305 |
-
"1000810","Esternberg","Esternberg,Upper Austria,Austria","20045","AT","City",Active
|
306 |
-
"1000811","Feldkirchen an der Donau","Feldkirchen an der Donau,Upper Austria,Austria","20045","AT","City",Active
|
307 |
-
"1000812","Frankenburg","Frankenburg,Upper Austria,Austria","20045","AT","City",Active
|
308 |
-
"1000813","Frankenmarkt","Frankenmarkt,Upper Austria,Austria","20045","AT","City",Active
|
309 |
-
"1000814","Gallspach","Gallspach,Upper Austria,Austria","20045","AT","City",Active
|
310 |
-
"1000815","Garsten","Garsten,Upper Austria,Austria","20045","AT","City",Active
|
311 |
-
"1000816","Gmunden","Gmunden,Upper Austria,Austria","20045","AT","City",Active
|
312 |
-
"1000817","Grieskirchen","Grieskirchen,Upper Austria,Austria","20045","AT","City",Active
|
313 |
-
"1000818","Gunskirchen","Gunskirchen,Upper Austria,Austria","20045","AT","City",Active
|
314 |
-
"1000819","Gutau","Gutau,Upper Austria,Austria","20045","AT","City",Active
|
315 |
-
"1000820","Hagenberg","Hagenberg,Upper Austria,Austria","20045","AT","City",Active
|
316 |
-
"1000821","Horsching","Horsching,Upper Austria,Austria","20045","AT","City",Active
|
317 |
-
"1000822","Kirchdorf an der Krems","Kirchdorf an der Krems,Upper Austria,Austria","20045","AT","City",Active
|
318 |
-
"1000823","Kremsmunster","Kremsmunster,Upper Austria,Austria","20045","AT","City",Active
|
319 |
-
"1000824","Laakirchen","Laakirchen,Upper Austria,Austria","20045","AT","City",Active
|
320 |
-
"1000825","Lenzing","Lenzing,Upper Austria,Austria","20045","AT","City",Active
|
321 |
-
"1000826","Leonding","Leonding,Upper Austria,Austria","20045","AT","City",Active
|
322 |
-
"1000827","Linz","Linz,Upper Austria,Austria","20045","AT","City",Active
|
323 |
-
"1000828","Marchtrenk","Marchtrenk,Upper Austria,Austria","20045","AT","City",Active
|
324 |
-
"1000829","Mauthausen","Mauthausen,Upper Austria,Austria","20045","AT","City",Active
|
325 |
-
"1000830","Micheldorf in Oberosterreich","Micheldorf in Oberosterreich,Upper Austria,Austria","20045","AT","City",Active
|
326 |
-
"1000831","Mondsee","Mondsee,Upper Austria,Austria","20045","AT","City",Active
|
327 |
-
"1000835","Niederwaldkirchen","Niederwaldkirchen,Upper Austria,Austria","20045","AT","City",Active
|
328 |
-
"1000836","Ohlsdorf","Ohlsdorf,Upper Austria,Austria","20045","AT","City",Active
|
329 |
-
"1000837","Ort","Ort,Upper Austria,Austria","20045","AT","City",Active
|
330 |
-
"1000838","Pasching","Pasching,Upper Austria,Austria","20045","AT","City",Active
|
331 |
-
"1000839","Perg","Perg,Upper Austria,Austria","20045","AT","City",Active
|
332 |
-
"1000840","Peuerbach","Peuerbach,Upper Austria,Austria","20045","AT","City",Active
|
333 |
-
"1000841","Pram","Pram,Upper Austria,Austria","20045","AT","City",Active
|
334 |
-
"1000843","Ried im Innkreis","Ried im Innkreis,Upper Austria,Austria","20045","AT","City",Active
|
335 |
-
"1000844","Sankt Florian","Sankt Florian,Upper Austria,Austria","20045","AT","City",Active
|
336 |
-
"1000845","Scharding","Scharding,Upper Austria,Austria","20045","AT","City",Active
|
337 |
-
"1000846","Scharnstein","Scharnstein,Upper Austria,Austria","20045","AT","City",Active
|
338 |
-
"1000847","Schwertberg","Schwertberg,Upper Austria,Austria","20045","AT","City",Active
|
339 |
-
"1000848","Seewalchen am Attersee","Seewalchen am Attersee,Upper Austria,Austria","20045","AT","City",Active
|
340 |
-
"1000849","Stadl-Paura","Stadl-Paura,Upper Austria,Austria","20045","AT","Municipality",Active
|
341 |
-
"1000850","Steyr","Steyr,Upper Austria,Austria","20045","AT","City",Active
|
342 |
-
"1000851","Thalheim bei Wels","Thalheim bei Wels,Upper Austria,Austria","20045","AT","City",Active
|
343 |
-
"1000852","Traun","Traun,Upper Austria,Austria","20045","AT","City",Active
|
344 |
-
"1000853","Vocklabruck","Vocklabruck,Upper Austria,Austria","20045","AT","City",Active
|
345 |
-
"1000854","Vocklamarkt","Vocklamarkt,Upper Austria,Austria","20045","AT","City",Active
|
346 |
-
"1000855","Vorchdorf","Vorchdorf,Upper Austria,Austria","20045","AT","City",Active
|
347 |
-
"1000856","Waldkirchen am Wesen","Waldkirchen am Wesen,Upper Austria,Austria","20045","AT","City",Active
|
348 |
-
"1000857","Wels","Wels,Upper Austria,Austria","20045","AT","City",Active
|
349 |
-
"1000858","Wernstein am Inn","Wernstein am Inn,Upper Austria,Austria","20045","AT","City",Active
|
350 |
-
"1000860","Anif","Anif,Salzburg,Austria","20046","AT","City",Active
|
351 |
-
"1000861","Bad Hofgastein","Bad Hofgastein,Salzburg,Austria","20046","AT","City",Active
|
352 |
-
"1000862","Badgastein","Badgastein,Salzburg,Austria","20046","AT","City",Active
|
353 |
-
"1000863","Bergheim","Bergheim,Salzburg,Austria","20046","AT","City",Active
|
354 |
-
"1000864","Bischofshofen","Bischofshofen,Salzburg,Austria","20046","AT","City",Active
|
355 |
-
"1000865","Eugendorf","Eugendorf,Salzburg,Austria","20046","AT","City",Active
|
356 |
-
"1000866","Fusch","Fusch,Salzburg,Austria","20046","AT","City",Active
|
357 |
-
"1000867","Fuschl","Fuschl,Salzburg,Austria","20046","AT","City",Active
|
358 |
-
"1000869","Grodig","Grodig,Salzburg,Austria","20046","AT","City",Active
|
359 |
-
"1000870","Hallein","Hallein,Salzburg,Austria","20046","AT","City",Active
|
360 |
-
"1000871","Kaprun","Kaprun,Salzburg,Austria","20046","AT","City",Active
|
361 |
-
"1000872","Lofer","Lofer,Salzburg,Austria","20046","AT","City",Active
|
362 |
-
"1000873","Michaelbeuern","Michaelbeuern,Salzburg,Austria","20046","AT","City",Active
|
363 |
-
"1000874","Oberalm","Oberalm,Salzburg,Austria","20046","AT","City",Active
|
364 |
-
"1000875","Pfarrwerfen","Pfarrwerfen,Salzburg,Austria","20046","AT","City",Active
|
365 |
-
"1000876","Rauris","Rauris,Salzburg,Austria","20046","AT","City",Active
|
366 |
-
"1000877","Saalbach-Hinterglemm","Saalbach-Hinterglemm,Salzburg,Austria","20046","AT","City",Active
|
367 |
-
"1000878","Salzburg","Salzburg,Salzburg,Austria","20046","AT","City",Active
|
368 |
-
"1000879","Schwarzach im Pongau","Schwarzach im Pongau,Salzburg,Austria","20046","AT","City",Active
|
369 |
-
"1000880","Siezenheim","Siezenheim,Salzburg,Austria","20046","AT","City",Active
|
370 |
-
"1000881","Tamsweg","Tamsweg,Salzburg,Austria","20046","AT","City",Active
|
371 |
-
"1000882","Thalgau","Thalgau,Salzburg,Austria","20046","AT","City",Active
|
372 |
-
"1000884","Zell am See","Zell am See,Salzburg,Austria","20046","AT","City",Active
|
373 |
-
"1000885","Admont","Admont,Styria,Austria","20047","AT","City",Active
|
374 |
-
"1000886","Bad Gleichenberg","Bad Gleichenberg,Styria,Austria","20047","AT","City",Active
|
375 |
-
"1000887","Bad Radkersburg","Bad Radkersburg,Styria,Austria","20047","AT","City",Active
|
376 |
-
"1000888","Birkfeld","Birkfeld,Styria,Austria","20047","AT","City",Active
|
377 |
-
"1000889","Bruck an der Mur","Bruck an der Mur,Styria,Austria","20047","AT","City",Active
|
378 |
-
"1000890","Deutschlandsberg","Deutschlandsberg,Styria,Austria","20047","AT","City",Active
|
379 |
-
"1000892","Ehrenhausen","Ehrenhausen,Styria,Austria","20047","AT","City",Active
|
380 |
-
"1000893","Eisenerz","Eisenerz,Styria,Austria","20047","AT","City",Active
|
381 |
-
"1000894","Feldbach","Feldbach,Styria,Austria","20047","AT","City",Active
|
382 |
-
"1000895","Frauental an der Lassnitz","Frauental an der Lassnitz,Styria,Austria","20047","AT","Neighborhood",Active
|
383 |
-
"1000896","Frohnleiten","Frohnleiten,Styria,Austria","20047","AT","City",Active
|
384 |
-
"1000898","Gleisdorf","Gleisdorf,Styria,Austria","20047","AT","City",Active
|
385 |
-
"1000899","Gratkorn","Gratkorn,Styria,Austria","20047","AT","City",Active
|
386 |
-
"1000900","Graz","Graz,Styria,Austria","20047","AT","City",Active
|
387 |
-
"1000901","Hartberg","Hartberg,Styria,Austria","20047","AT","City",Active
|
388 |
-
"1000902","Hausmannstatten","Hausmannstatten,Styria,Austria","20047","AT","City",Active
|
389 |
-
"1000903","Ilz","Ilz,Styria,Austria","20047","AT","City",Active
|
390 |
-
"1000904","Judenburg","Judenburg,Styria,Austria","20047","AT","City",Active
|
391 |
-
"1000905","Kalsdorf bei Graz","Kalsdorf bei Graz,Styria,Austria","20047","AT","City",Active
|
392 |
-
"1000906","Kapfenberg","Kapfenberg,Styria,Austria","20047","AT","City",Active
|
393 |
-
"1000907","Kindberg","Kindberg,Styria,Austria","20047","AT","City",Active
|
394 |
-
"1000908","Knittelfeld","Knittelfeld,Styria,Austria","20047","AT","City",Active
|
395 |
-
"1000909","Koflach","Koflach,Styria,Austria","20047","AT","City",Active
|
396 |
-
"1000910","Alpl","Alpl,Styria,Austria","20047","AT","City",Active
|
397 |
-
"1000911","Leibnitz","Leibnitz,Styria,Austria","20047","AT","City",Active
|
398 |
-
"1000912","Leoben","Leoben,Styria,Austria","20047","AT","City",Active
|
399 |
-
"1000913","Liezen","Liezen,Styria,Austria","20047","AT","City",Active
|
400 |
-
"1000914","Mariazell","Mariazell,Styria,Austria","20047","AT","City",Active
|
401 |
-
"1000915","Murau","Murau,Styria,Austria","20047","AT","City",Active
|
402 |
-
"1000916","Mureck","Mureck,Styria,Austria","20047","AT","City",Active
|
403 |
-
"1000917","Murzzuschlag","Murzzuschlag,Styria,Austria","20047","AT","City",Active
|
404 |
-
"1000918","Rottenmann","Rottenmann,Styria,Austria","20047","AT","City",Active
|
405 |
-
"1000919","Sankt Lambrecht","Sankt Lambrecht,Styria,Austria","20047","AT","City",Active
|
406 |
-
"1000920","Sankt Margarethen an der Raab","Sankt Margarethen an der Raab,Styria,Austria","20047","AT","City",Active
|
407 |
-
"1000922","Schladming","Schladming,Styria,Austria","20047","AT","City",Active
|
408 |
-
"1000924","Stubenberg","Stubenberg,Styria,Austria","20047","AT","City",Active
|
409 |
-
"1000925","Unterpremstatten","Unterpremstatten,Styria,Austria","20047","AT","City",Active
|
410 |
-
"1000926","Voitsberg","Voitsberg,Styria,Austria","20047","AT","City",Active
|
411 |
-
"1000927","Weiz","Weiz,Styria,Austria","20047","AT","City",Active
|
412 |
-
"1000928","Zeltweg","Zeltweg,Styria,Austria","20047","AT","City",Active
|
413 |
-
"1000929","Absam","Absam,Tyrol,Austria","20048","AT","City",Active
|
414 |
-
"1000930","Achenkirch","Achenkirch,Tyrol,Austria","20048","AT","City",Active
|
415 |
-
"1000931","Axams","Axams,Tyrol,Austria","20048","AT","City",Active
|
416 |
-
"1000932","Brixlegg","Brixlegg,Tyrol,Austria","20048","AT","City",Active
|
417 |
-
"1000933","Bruck am Ziller","Bruck am Ziller,Tyrol,Austria","20048","AT","City",Active
|
418 |
-
"1000934","Ehrwald","Ehrwald,Tyrol,Austria","20048","AT","City",Active
|
419 |
-
"1000935","Fulpmes","Fulpmes,Tyrol,Austria","20048","AT","City",Active
|
420 |
-
"1000936","Galtur","Galtur,Tyrol,Austria","20048","AT","City",Active
|
421 |
-
"1000937","Hall in Tirol","Hall in Tirol,Tyrol,Austria","20048","AT","City",Active
|
422 |
-
"1000939","Hopfgarten im Brixental","Hopfgarten im Brixental,Tyrol,Austria","20048","AT","City",Active
|
423 |
-
"1000940","Imst","Imst,Tyrol,Austria","20048","AT","City",Active
|
424 |
-
"1000941","Innsbruck","Innsbruck,Tyrol,Austria","20048","AT","City",Active
|
425 |
-
"1000942","Jenbach","Jenbach,Tyrol,Austria","20048","AT","City",Active
|
426 |
-
"1000943","Kitzbuhel","Kitzbuhel,Tyrol,Austria","20048","AT","City",Active
|
427 |
-
"1000944","Kufstein","Kufstein,Tyrol,Austria","20048","AT","City",Active
|
428 |
-
"1000945","Kundl","Kundl,Tyrol,Austria","20048","AT","City",Active
|
429 |
-
"1000946","Landeck","Landeck,Tyrol,Austria","20048","AT","City",Active
|
430 |
-
"1000947","Lermoos","Lermoos,Tyrol,Austria","20048","AT","City",Active
|
431 |
-
"1000948","Lienz","Lienz,Tyrol,Austria","20048","AT","City",Active
|
432 |
-
"1000949","Mayrhofen","Mayrhofen,Tyrol,Austria","20048","AT","City",Active
|
433 |
-
"1000950","Mieming","Mieming,Tyrol,Austria","20048","AT","City",Active
|
434 |
-
"1000951","Pians","Pians,Tyrol,Austria","20048","AT","City",Active
|
435 |
-
"1000952","Pill","Pill,Tyrol,Austria","20048","AT","City",Active
|
436 |
-
"1000953","Reutte","Reutte,Tyrol,Austria","20048","AT","City",Active
|
437 |
-
"1000954","Saint Anton am Arlberg","Saint Anton am Arlberg,Tyrol,Austria","20048","AT","City",Active
|
438 |
-
"1000955","Sankt Johann Im Walde","Sankt Johann Im Walde,Tyrol,Austria","20048","AT","City",Active
|
439 |
-
"1000956","Schwaz","Schwaz,Tyrol,Austria","20048","AT","City",Active
|
440 |
-
"1000957","Seefeld","Seefeld,Tyrol,Austria","20048","AT","City",Active
|
441 |
-
"1000958","Sillian","Sillian,Tyrol,Austria","20048","AT","City",Active
|
442 |
-
"1000959","Soelden","Soelden,Tyrol,Austria","20048","AT","City",Active
|
443 |
-
"1000960","Steeg","Steeg,Tyrol,Austria","20048","AT","City",Active
|
444 |
-
"1000962","Volders","Volders,Tyrol,Austria","20048","AT","City",Active
|
445 |
-
"1000963","Vomp","Vomp,Tyrol,Austria","20048","AT","City",Active
|
446 |
-
"1000964","Walchsee","Walchsee,Tyrol,Austria","20048","AT","City",Active
|
447 |
-
"1000965","Wattens","Wattens,Tyrol,Austria","20048","AT","City",Active
|
448 |
-
"1000966","Worgl","Worgl,Tyrol,Austria","20048","AT","City",Active
|
449 |
-
"1000967","Zams","Zams,Tyrol,Austria","20048","AT","City",Active
|
450 |
-
"1000968","Zirl","Zirl,Tyrol,Austria","20048","AT","City",Active
|
451 |
-
"1000969","Altach","Altach,Vorarlberg,Austria","20049","AT","City",Active
|
452 |
-
"1000970","Bezau","Bezau,Vorarlberg,Austria","20049","AT","City",Active
|
453 |
-
"1000971","Bludenz","Bludenz,Vorarlberg,Austria","20049","AT","City",Active
|
454 |
-
"1000972","Brand","Brand,Vorarlberg,Austria","20049","AT","City",Active
|
455 |
-
"1000973","Bregenz","Bregenz,Vorarlberg,Austria","20049","AT","City",Active
|
456 |
-
"1000974","Dornbirn","Dornbirn,Vorarlberg,Austria","20049","AT","City",Active
|
457 |
-
"1000975","Egg","Egg,Vorarlberg,Austria","20049","AT","City",Active
|
458 |
-
"1000976","Feldkirch","Feldkirch,Vorarlberg,Austria","20049","AT","City",Active
|
459 |
-
"1000978","Gotzis","Gotzis,Vorarlberg,Austria","20049","AT","City",Active
|
460 |
-
"1000979","Hard","Hard,Vorarlberg,Austria","20049","AT","City",Active
|
461 |
-
"1000981","Hochst","Hochst,Vorarlberg,Austria","20049","AT","City",Active
|
462 |
-
"1000982","Hohenems","Hohenems,Vorarlberg,Austria","20049","AT","City",Active
|
463 |
-
"1000983","Kennelbach","Kennelbach,Vorarlberg,Austria","20049","AT","City",Active
|
464 |
-
"1000984","Koblach","Koblach,Vorarlberg,Austria","20049","AT","City",Active
|
465 |
-
"1000985","Lauterach","Lauterach,Vorarlberg,Austria","20049","AT","City",Active
|
466 |
-
"1000986","Lech","Lech,Vorarlberg,Austria","20049","AT","City",Active
|
467 |
-
"1000987","Lochau","Lochau,Vorarlberg,Austria","20049","AT","City",Active
|
468 |
-
"1000988","Lustenau","Lustenau,Vorarlberg,Austria","20049","AT","City",Active
|
469 |
-
"1000989","Nenzing","Nenzing,Vorarlberg,Austria","20049","AT","City",Active
|
470 |
-
"1000990","Rankweil","Rankweil,Vorarlberg,Austria","20049","AT","City",Active
|
471 |
-
"1000991","Schlins","Schlins,Vorarlberg,Austria","20049","AT","City",Active
|
472 |
-
"1000992","Schruns","Schruns,Vorarlberg,Austria","20049","AT","City",Active
|
473 |
-
"1000993","Schwarzach","Schwarzach,Vorarlberg,Austria","20049","AT","City",Active
|
474 |
-
"1000994","Sulzberg","Sulzberg,Vorarlberg,Austria","20049","AT","City",Active
|
475 |
-
"1000996","Wolfurt","Wolfurt,Vorarlberg,Austria","20049","AT","City",Active
|
476 |
-
"1000997","Vienna","Vienna,Vienna,Austria","20050","AT","City",Active
|
477 |
-
"1000998","Baku","Baku,Azerbaijan","2031","AZ","City",Active
|
478 |
-
"1001001","Anderlecht","Anderlecht,Brussels,Belgium","20052","BE","City",Active
|
479 |
-
"1001003","Bertem","Bertem,Flanders,Belgium","9069523","BE","City",Active
|
480 |
-
"1001004","Brussels","Brussels,Brussels,Belgium","20052","BE","City",Active
|
481 |
-
"1001006","Etterbeek","Etterbeek,Brussels,Belgium","20052","BE","City",Active
|
482 |
-
"1001007","Evere","Evere,Brussels,Belgium","20052","BE","City",Active
|
483 |
-
"1001009","Hoeilaart","Hoeilaart,Flanders,Belgium","9069523","BE","City",Active
|
484 |
-
"1001010","Ixelles","Ixelles,Brussels,Belgium","20052","BE","City",Active
|
485 |
-
"1001011","Jette","Jette,Brussels,Belgium","20052","BE","City",Active
|
486 |
-
"1001012","Kraainem","Kraainem,Flanders,Belgium","9069523","BE","City",Active
|
487 |
-
"1001015","Schaerbeek","Schaerbeek,Brussels,Belgium","20052","BE","City",Active
|
488 |
-
"1001018","Uccle","Uccle,Brussels,Belgium","20052","BE","City",Active
|
489 |
-
"1001019","Wezembeek-Oppem","Wezembeek-Oppem,Flanders,Belgium","9069523","BE","City",Active
|
490 |
-
"1001020","Woluwe-Saint-Lambert","Woluwe-Saint-Lambert,Brussels,Belgium","20052","BE","City",Active
|
491 |
-
"1001021","Antwerp","Antwerp,Antwerp,Flanders,Belgium","9069523","BE","City",Active
|
492 |
-
"1001022","Arendonk","Arendonk,Flanders,Belgium","9069523","BE","City",Active
|
493 |
-
"1001025","Balen","Balen,Flanders,Belgium","9069523","BE","City",Active
|
494 |
-
"1001026","Beerse","Beerse,Flanders,Belgium","9069523","BE","City",Active
|
495 |
-
"1001027","Boechout","Boechout,Flanders,Belgium","9069523","BE","City",Active
|
496 |
-
"1001028","Bonheiden","Bonheiden,Flanders,Belgium","9069523","BE","City",Active
|
497 |
-
"1001030","Boom","Boom,Flanders,Belgium","9069523","BE","City",Active
|
498 |
-
"1001032","Bornem","Bornem,Flanders,Belgium","9069523","BE","City",Active
|
499 |
-
"1001034","Brasschaat","Brasschaat,Flanders,Belgium","9069523","BE","City",Active
|
500 |
-
"1001038","Duffel","Duffel,Flanders,Belgium","9069523","BE","City",Active
|
501 |
-
"1001039","Edegem","Edegem,Flanders,Belgium","9069523","BE","City",Active
|
502 |
-
"1001041","Essen","Essen,Flanders,Belgium","9069523","BE","City",Active
|
503 |
-
"1001042","Geel","Geel,Flanders,Belgium","9069523","BE","City",Active
|
504 |
-
"1001044","Grobbendonk","Grobbendonk,Flanders,Belgium","9069523","BE","City",Active
|
505 |
-
"1001045","Heist-op-den-Berg","Heist-op-den-Berg,Flanders,Belgium","9069523","BE","City",Active
|
506 |
-
"1001046","Hemiksem","Hemiksem,Flanders,Belgium","9069523","BE","City",Active
|
507 |
-
"1001047","Herentals","Herentals,Flanders,Belgium","9069523","BE","City",Active
|
508 |
-
"1001049","Hoogstraten","Hoogstraten,Flanders,Belgium","9069523","BE","City",Active
|
509 |
-
"1001051","Kalmthout","Kalmthout,Flanders,Belgium","9069523","BE","City",Active
|
510 |
-
"1001052","Kapellen","Kapellen,Flanders,Belgium","9069523","BE","City",Active
|
511 |
-
"1001054","Kontich","Kontich,Flanders,Belgium","9069523","BE","City",Active
|
512 |
-
"1001057","Lier","Lier,Flanders,Belgium","9069523","BE","City",Active
|
513 |
-
"1001058","Malle","Malle,Flanders,Belgium","9069523","BE","City",Active
|
514 |
-
"1001059","Mechelen","Mechelen,Flanders,Belgium","9069523","BE","City",Active
|
515 |
-
"1001062","Mol","Mol,Flanders,Belgium","9069523","BE","City",Active
|
516 |
-
"1001063","Mortsel","Mortsel,Flanders,Belgium","9069523","BE","City",Active
|
517 |
-
"1001066","Olen","Olen,Flanders,Belgium","9069523","BE","City",Active
|
518 |
-
"1001068","Puurs","Puurs,Flanders,Belgium","9069523","BE","City",Active
|
519 |
-
"1001070","Rijkevorsel","Rijkevorsel,Flanders,Belgium","9069523","BE","City",Active
|
520 |
-
"1001071","Rumst","Rumst,Flanders,Belgium","9069523","BE","City",Active
|
521 |
-
"1001072","Schelle","Schelle,Flanders,Belgium","9069523","BE","City",Active
|
522 |
-
"1001073","Schilde","Schilde,Flanders,Belgium","9069523","BE","City",Active
|
523 |
-
"1001074","Schoten","Schoten,Flanders,Belgium","9069523","BE","City",Active
|
524 |
-
"1001076","Sint-Amands","Sint-Amands,Flanders,Belgium","9069523","BE","City",Active
|
525 |
-
"1001078","Stabroek","Stabroek,Flanders,Belgium","9069523","BE","City",Active
|
526 |
-
"1001080","Turnhout","Turnhout,Flanders,Belgium","9069523","BE","City",Active
|
527 |
-
"1001082","Vosselaar","Vosselaar,Flanders,Belgium","9069523","BE","City",Active
|
528 |
-
"1001083","Westerlo","Westerlo,Flanders,Belgium","9069523","BE","City",Active
|
529 |
-
"1001084","Wijnegem","Wijnegem,Flanders,Belgium","9069523","BE","City",Active
|
530 |
-
"1001085","Willebroek","Willebroek,Flanders,Belgium","9069523","BE","City",Active
|
531 |
-
"1001087","Wommelgem","Wommelgem,Flanders,Belgium","9069523","BE","City",Active
|
532 |
-
"1001088","Zandhoven","Zandhoven,Flanders,Belgium","9069523","BE","City",Active
|
533 |
-
"1001089","Zoersel","Zoersel,Flanders,Belgium","9069523","BE","City",Active
|
534 |
-
"1001090","Zwijndrecht","Zwijndrecht,Flanders,Belgium","9069523","BE","City",Active
|
535 |
-
"1001091","Aarschot","Aarschot,Flanders,Belgium","9069523","BE","City",Active
|
536 |
-
"1001092","Asse","Asse,Flanders,Belgium","9069523","BE","City",Active
|
537 |
-
"1001094","Beauvechain","Beauvechain,Wallonia,Belgium","9069524","BE","City",Active
|
538 |
-
"1001095","Begijnendijk","Begijnendijk,Flanders,Belgium","9069523","BE","City",Active
|
539 |
-
"1001097","Bierbeek","Bierbeek,Flanders,Belgium","9069523","BE","City",Active
|
540 |
-
"1001098","Boutersem","Boutersem,Flanders,Belgium","9069523","BE","City",Active
|
541 |
-
"1001100","Dilbeek","Dilbeek,Flanders,Belgium","9069523","BE","City",Active
|
542 |
-
"1001104","Grimbergen","Grimbergen,Flanders,Belgium","9069523","BE","City",Active
|
543 |
-
"1001105","Haacht","Haacht,Flanders,Belgium","9069523","BE","City",Active
|
544 |
-
"1001107","Halle","Halle,Flanders,Belgium","9069523","BE","City",Active
|
545 |
-
"1001108","Herent","Herent,Flanders,Belgium","9069523","BE","City",Active
|
546 |
-
"1001110","Holsbeek","Holsbeek,Flanders,Belgium","9069523","BE","City",Active
|
547 |
-
"1001112","Keerbergen","Keerbergen,Flanders,Belgium","9069523","BE","City",Active
|
548 |
-
"1001116","Kortenberg","Kortenberg,Flanders,Belgium","9069523","BE","City",Active
|
549 |
-
"1001117","Lennik","Lennik,Flanders,Belgium","9069523","BE","City",Active
|
550 |
-
"1001118","Leuven","Leuven,Flanders,Belgium","9069523","BE","City",Active
|
551 |
-
"1001121","Londerzeel","Londerzeel,Flanders,Belgium","9069523","BE","City",Active
|
552 |
-
"1001122","Lubbeek","Lubbeek,Flanders,Belgium","9069523","BE","City",Active
|
553 |
-
"1001123","Machelen","Machelen,Flanders,Belgium","9069523","BE","City",Active
|
554 |
-
"1001125","Meise","Meise,Flanders,Belgium","9069523","BE","City",Active
|
555 |
-
"1001129","Opwijk","Opwijk,Flanders,Belgium","9069523","BE","City",Active
|
556 |
-
"1001130","Overijse","Overijse,Flanders,Belgium","9069523","BE","City",Active
|
557 |
-
"1001133","Roosdaal","Roosdaal,Flanders,Belgium","9069523","BE","City",Active
|
558 |
-
"1001134","Rotselaar","Rotselaar,Flanders,Belgium","9069523","BE","City",Active
|
559 |
-
"1001136","Sint-Pieters-Leeuw","Sint-Pieters-Leeuw,Flanders,Belgium","9069523","BE","City",Active
|
560 |
-
"1001138","Steenokkerzeel","Steenokkerzeel,Flanders,Belgium","9069523","BE","City",Active
|
561 |
-
"1001140","Ternat","Ternat,Flanders,Belgium","9069523","BE","City",Active
|
562 |
-
"1001141","Tervuren","Tervuren,Flanders,Belgium","9069523","BE","City",Active
|
563 |
-
"1001142","Tienen","Tienen,Flanders,Belgium","9069523","BE","City",Active
|
564 |
-
"1001143","Tremelo","Tremelo,Flanders,Belgium","9069523","BE","City",Active
|
565 |
-
"1001145","Vilvoorde","Vilvoorde,Flanders,Belgium","9069523","BE","City",Active
|
566 |
-
"1001150","Zaventem","Zaventem,Flanders,Belgium","9069523","BE","City",Active
|
567 |
-
"1001152","Alken","Alken,Flanders,Belgium","9069523","BE","City",Active
|
568 |
-
"1001153","Beringen","Beringen,Flanders,Belgium","9069523","BE","City",Active
|
569 |
-
"1001154","Bilzen","Bilzen,Flanders,Belgium","9069523","BE","City",Active
|
570 |
-
"1001157","Bree","Bree,Flanders,Belgium","9069523","BE","City",Active
|
571 |
-
"1001159","Diepenbeek","Diepenbeek,Flanders,Belgium","9069523","BE","City",Active
|
572 |
-
"1001162","Genk","Genk,Flanders,Belgium","9069523","BE","City",Active
|
573 |
-
"1001163","Halen","Halen,Flanders,Belgium","9069523","BE","City",Active
|
574 |
-
"1001165","Hasselt","Hasselt,Flanders,Belgium","9069523","BE","City",Active
|
575 |
-
"1001166","Herk-de-Stad","Herk-de-Stad,Flanders,Belgium","9069523","BE","City",Active
|
576 |
-
"1001167","Hoeselt","Hoeselt,Flanders,Belgium","9069523","BE","City",Active
|
577 |
-
"1001170","Kinrooi","Kinrooi,Flanders,Belgium","9069523","BE","City",Active
|
578 |
-
"1001172","Lanaken","Lanaken,Flanders,Belgium","9069523","BE","City",Active
|
579 |
-
"1001174","Leopoldsburg","Leopoldsburg,Flanders,Belgium","9069523","BE","City",Active
|
580 |
-
"1001175","Lommel","Lommel,Flanders,Belgium","9069523","BE","City",Active
|
581 |
-
"1001176","Maaseik","Maaseik,Flanders,Belgium","9069523","BE","City",Active
|
582 |
-
"1001178","Opglabbeek","Opglabbeek,Flanders,Belgium","9069523","BE","City",Active
|
583 |
-
"1001179","Overpelt","Overpelt,Belgium","2056","BE","City",Active
|
584 |
-
"1001181","Peer","Peer,Flanders,Belgium","9069523","BE","City",Active
|
585 |
-
"1001182","Sint-Truiden","Sint-Truiden,Flanders,Belgium","9069523","BE","City",Active
|
586 |
-
"1001183","Tessenderlo","Tessenderlo,Flanders,Belgium","9069523","BE","City",Active
|
587 |
-
"1001184","Tongeren","Tongeren,Flanders,Belgium","9069523","BE","City",Active
|
588 |
-
"1001185","Zonhoven","Zonhoven,Flanders,Belgium","9069523","BE","City",Active
|
589 |
-
"1001187","Aalst","Aalst,Flanders,Belgium","9069523","BE","City",Active
|
590 |
-
"1001188","Aalter","Aalter,Flanders,Belgium","9069523","BE","City",Active
|
591 |
-
"1001189","Assenede","Assenede,Flanders,Belgium","9069523","BE","City",Active
|
592 |
-
"1001191","Beveren","Beveren,Flanders,Belgium","9069523","BE","City",Active
|
593 |
-
"1001193","Brakel","Brakel,Flanders,Belgium","9069523","BE","City",Active
|
594 |
-
"1001194","Buggenhout","Buggenhout,Flanders,Belgium","9069523","BE","City",Active
|
595 |
-
"1001196","Deerlijk","Deerlijk,Flanders,Belgium","9069523","BE","City",Active
|
596 |
-
"1001197","Deinze","Deinze,Flanders,Belgium","9069523","BE","City",Active
|
597 |
-
"1001198","Dendermonde","Dendermonde,Flanders,Belgium","9069523","BE","City",Active
|
598 |
-
"1001199","Destelbergen","Destelbergen,Flanders,Belgium","9069523","BE","City",Active
|
599 |
-
"1001201","Eeklo","Eeklo,Flanders,Belgium","9069523","BE","City",Active
|
600 |
-
"1001206","Evergem","Evergem,Flanders,Belgium","9069523","BE","City",Active
|
601 |
-
"1001207","Gavere","Gavere,Flanders,Belgium","9069523","BE","City",Active
|
602 |
-
"1001208","Ghent","Ghent,Flanders,Belgium","9069523","BE","City",Active
|
603 |
-
"1001209","Geraardsbergen","Geraardsbergen,Flanders,Belgium","9069523","BE","City",Active
|
604 |
-
"1001210","Hamme","Hamme,Flanders,Belgium","9069523","BE","City",Active
|
605 |
-
"1001215","Kruibeke","Kruibeke,Flanders,Belgium","9069523","BE","City",Active
|
606 |
-
"1001216","Kruishoutem","Kruishoutem,Belgium","2056","BE","Municipality",Active
|
607 |
-
"1001217","Lebbeke","Lebbeke,Flanders,Belgium","9069523","BE","City",Active
|
608 |
-
"1001221","Lochristi","Lochristi,Flanders,Belgium","9069523","BE","City",Active
|
609 |
-
"1001222","Lokeren","Lokeren,Flanders,Belgium","9069523","BE","City",Active
|
610 |
-
"1001223","Lovendegem","Lovendegem,Belgium","2056","BE","City",Active
|
611 |
-
"1001224","Maldegem","Maldegem,Flanders,Belgium","9069523","BE","City",Active
|
612 |
-
"1001225","Melle","Melle,Flanders,Belgium","9069523","BE","City",Active
|
613 |
-
"1001228","Merelbeke","Merelbeke,Flanders,Belgium","9069523","BE","City",Active
|
614 |
-
"1001231","Nazareth","Nazareth,Flanders,Belgium","9069523","BE","City",Active
|
615 |
-
"1001232","Nevele","Nevele,Flanders,Belgium","9069523","BE","City",Active
|
616 |
-
"1001234","Ninove","Ninove,Flanders,Belgium","9069523","BE","City",Active
|
617 |
-
"1001236","Oosterzele","Oosterzele,Flanders,Belgium","9069523","BE","City",Active
|
618 |
-
"1001237","Oudenaarde","Oudenaarde,Flanders,Belgium","9069523","BE","City",Active
|
619 |
-
"1001238","Ronse","Ronse,Flanders,Belgium","9069523","BE","City",Active
|
620 |
-
"1001242","Sint-Niklaas","Sint-Niklaas,Flanders,Belgium","9069523","BE","City",Active
|
621 |
-
"1001243","Stekene","Stekene,Flanders,Belgium","9069523","BE","City",Active
|
622 |
-
"1001244","Temse","Temse,Flanders,Belgium","9069523","BE","City",Active
|
623 |
-
"1001247","Waarschoot","Waarschoot,Belgium","2056","BE","City",Active
|
624 |
-
"1001249","Wetteren","Wetteren,Flanders,Belgium","9069523","BE","City",Active
|
625 |
-
"1001252","Zele","Zele,Flanders,Belgium","9069523","BE","City",Active
|
626 |
-
"1001254","Zottegem","Zottegem,Flanders,Belgium","9069523","BE","City",Active
|
627 |
-
"1001256","Ardooie","Ardooie,Flanders,Belgium","9069523","BE","City",Active
|
628 |
-
"1001259","Bruges","Bruges,Flanders,Belgium","9069523","BE","City",Active
|
629 |
-
"1001261","Diksmuide","Diksmuide,Flanders,Belgium","9069523","BE","City",Active
|
630 |
-
"1001262","Gistel","Gistel,Flanders,Belgium","9069523","BE","City",Active
|
631 |
-
"1001266","Harelbeke","Harelbeke,Flanders,Belgium","9069523","BE","City",Active
|
632 |
-
"1001268","Hooglede","Hooglede,Flanders,Belgium","9069523","BE","City",Active
|
633 |
-
"1001269","Ypres","Ypres,Flanders,Belgium","9069523","BE","City",Active
|
634 |
-
"1001270","Izegem","Izegem,Flanders,Belgium","9069523","BE","City",Active
|
635 |
-
"1001271","Jabbeke","Jabbeke,Flanders,Belgium","9069523","BE","City",Active
|
636 |
-
"1001273","Knokke-Heist","Knokke-Heist,Flanders,Belgium","9069523","BE","City",Active
|
637 |
-
"1001274","Koksijde","Koksijde,Flanders,Belgium","9069523","BE","City",Active
|
638 |
-
"1001275","Kortrijk","Kortrijk,Flanders,Belgium","9069523","BE","City",Active
|
639 |
-
"1001276","Kuurne","Kuurne,Flanders,Belgium","9069523","BE","City",Active
|
640 |
-
"1001277","Menen","Menen,Flanders,Belgium","9069523","BE","City",Active
|
641 |
-
"1001278","Meulebeke","Meulebeke,Flanders,Belgium","9069523","BE","City",Active
|
642 |
-
"1001281","Nieuwpoort","Nieuwpoort,Flanders,Belgium","9069523","BE","City",Active
|
643 |
-
"1001282","Ostend","Ostend,Flanders,Belgium","9069523","BE","City",Active
|
644 |
-
"1001283","Oostkamp","Oostkamp,Flanders,Belgium","9069523","BE","City",Active
|
645 |
-
"1001286","Poperinge","Poperinge,Flanders,Belgium","9069523","BE","City",Active
|
646 |
-
"1001287","Roeselare","Roeselare,Flanders,Belgium","9069523","BE","City",Active
|
647 |
-
"1001292","Staden","Staden,Flanders,Belgium","9069523","BE","City",Active
|
648 |
-
"1001293","Tielt","Tielt,Flanders,Belgium","9069523","BE","City",Active
|
649 |
-
"1001294","Torhout","Torhout,Flanders,Belgium","9069523","BE","City",Active
|
650 |
-
"1001297","Waregem","Waregem,Flanders,Belgium","9069523","BE","City",Active
|
651 |
-
"1001298","Wervik","Wervik,Flanders,Belgium","9069523","BE","City",Active
|
652 |
-
"1001300","Wevelgem","Wevelgem,Flanders,Belgium","9069523","BE","City",Active
|
653 |
-
"1001301","Wielsbeke","Wielsbeke,Flanders,Belgium","9069523","BE","City",Active
|
654 |
-
"1001302","Zedelgem","Zedelgem,Flanders,Belgium","9069523","BE","City",Active
|
655 |
-
"1001304","Zwevegem","Zwevegem,Flanders,Belgium","9069523","BE","City",Active
|
656 |
-
"1001305","Aartselaar","Aartselaar,Flanders,Belgium","9069523","BE","City",Active
|
657 |
-
"1001307","Boortmeerbeek","Boortmeerbeek,Flanders,Belgium","9069523","BE","City",Active
|
658 |
-
"1001308","Braine-l'Alleud","Braine-l'Alleud,Wallonia,Belgium","9069524","BE","City",Active
|
659 |
-
"1001310","Diest","Diest,Flanders,Belgium","9069523","BE","City",Active
|
660 |
-
"1001313","Grez-Doiceau","Grez-Doiceau,Wallonia,Belgium","9069524","BE","City",Active
|
661 |
-
"1001314","Jodoigne","Jodoigne,Wallonia,Belgium","9069524","BE","City",Active
|
662 |
-
"1001315","Kampenhout","Kampenhout,Flanders,Belgium","9069523","BE","City",Active
|
663 |
-
"1001316","La Hulpe","La Hulpe,Wallonia,Belgium","9069524","BE","City",Active
|
664 |
-
"1001317","Lasne","Lasne,Wallonia,Belgium","9069524","BE","City",Active
|
665 |
-
"1001319","Ottignies-Louvain-la-Neuve","Ottignies-Louvain-la-Neuve,Wallonia,Belgium","9069524","BE","City",Active
|
666 |
-
"1001321","Nivelles","Nivelles,Wallonia,Belgium","9069524","BE","City",Active
|
667 |
-
"1001326","Tubize","Tubize,Wallonia,Belgium","9069524","BE","City",Active
|
668 |
-
"1001327","Waterloo","Waterloo,Wallonia,Belgium","9069524","BE","City",Active
|
669 |
-
"1001329","Wavre","Wavre,Wallonia,Belgium","9069524","BE","City",Active
|
670 |
-
"1001330","Ath","Ath,Wallonia,Belgium","9069524","BE","City",Active
|
671 |
-
"1001332","Binche","Binche,Wallonia,Belgium","9069524","BE","City",Active
|
672 |
-
"1001333","Braine-le-Comte","Braine-le-Comte,Wallonia,Belgium","9069524","BE","City",Active
|
673 |
-
"1001334","Charleroi","Charleroi,Wallonia,Belgium","9069524","BE","City",Active
|
674 |
-
"1001337","Courcelles","Courcelles,Wallonia,Belgium","9069524","BE","City",Active
|
675 |
-
"1001342","Enghien","Enghien,Wallonia,Belgium","9069524","BE","City",Active
|
676 |
-
"1001343","Fleurus","Fleurus,Wallonia,Belgium","9069524","BE","City",Active
|
677 |
-
"1001344","Frameries","Frameries,Wallonia,Belgium","9069524","BE","City",Active
|
678 |
-
"1001355","La Louviere","La Louviere,Wallonia,Belgium","9069524","BE","City",Active
|
679 |
-
"1001356","Lessines","Lessines,Wallonia,Belgium","9069524","BE","City",Active
|
680 |
-
"1001360","Mons","Mons,Wallonia,Belgium","9069524","BE","City",Active
|
681 |
-
"1001361","Mouscron","Mouscron,Wallonia,Belgium","9069524","BE","City",Active
|
682 |
-
"1001363","Peruwelz","Peruwelz,Wallonia,Belgium","9069524","BE","City",Active
|
683 |
-
"1001366","Seneffe","Seneffe,Wallonia,Belgium","9069524","BE","City",Active
|
684 |
-
"1001367","Soignies","Soignies,Wallonia,Belgium","9069524","BE","City",Active
|
685 |
-
"1001370","Tournai","Tournai,Wallonia,Belgium","9069524","BE","City",Active
|
686 |
-
"1001379","Chaudfontaine","Chaudfontaine,Wallonia,Belgium","9069524","BE","City",Active
|
687 |
-
"1001382","Eupen","Eupen,Wallonia,Belgium","9069524","BE","City",Active
|
688 |
-
"1001385","Grace-Hollogne","Grace-Hollogne,Wallonia,Belgium","9069524","BE","City",Active
|
689 |
-
"1001386","Hannut","Hannut,Wallonia,Belgium","9069524","BE","City",Active
|
690 |
-
"1001389","Herstal","Herstal,Wallonia,Belgium","9069524","BE","City",Active
|
691 |
-
"1001390","Herve","Herve,Wallonia,Belgium","9069524","BE","City",Active
|
692 |
-
"1001392","Huy","Huy,Wallonia,Belgium","9069524","BE","City",Active
|
693 |
-
"1001393","Landen","Landen,Flanders,Belgium","9069523","BE","City",Active
|
694 |
-
"1001394","Liege","Liege,Liege,Wallonia,Belgium","9069524","BE","City",Active
|
695 |
-
"1001400","Namur","Namur,Wallonia,Belgium","9069524","BE","City",Active
|
696 |
-
"1001404","Seraing","Seraing,Wallonia,Belgium","9069524","BE","City",Active
|
697 |
-
"1001408","Verviers","Verviers,Wallonia,Belgium","9069524","BE","City",Active
|
698 |
-
"1001409","Vise","Vise,Wallonia,Belgium","9069524","BE","City",Active
|
699 |
-
"1001413","Wanze","Wanze,Wallonia,Belgium","9069524","BE","City",Active
|
700 |
-
"1001414","Waremme","Waremme,Wallonia,Belgium","9069524","BE","City",Active
|
701 |
-
"1001418","Arlon","Arlon,Wallonia,Belgium","9069524","BE","City",Active
|
702 |
-
"1001421","Bastogne","Bastogne,Wallonia,Belgium","9069524","BE","City",Active
|
703 |
-
"1001426","Marche-en-Famenne","Marche-en-Famenne,Wallonia,Belgium","9069524","BE","City",Active
|
704 |
-
"1001430","Ciney","Ciney,Wallonia,Belgium","9069524","BE","City",Active
|
705 |
-
"1001431","Dinant","Dinant,Wallonia,Belgium","9069524","BE","City",Active
|
706 |
-
"1001432","Gembloux","Gembloux,Wallonia,Belgium","9069524","BE","City",Active
|
707 |
-
"1001434","Sambreville","Sambreville,Wallonia,Belgium","9069524","BE","City",Active
|
708 |
-
"1001437","Cotonou","Cotonou,Littoral Department,Benin","9070230","BJ","City",Active
|
709 |
-
"1001440","Chattogram","Chattogram,Chittagong Division,Bangladesh","9070359","BD","City",Active
|
710 |
-
"1001442","Khulna","Khulna,Khulna Division,Bangladesh","9070358","BD","City",Active
|
711 |
-
"1001444","Sylhet","Sylhet,Sylhet Division,Bangladesh","9069794","BD","City",Active
|
712 |
-
"1001445","Blagoevgrad","Blagoevgrad,Blagoevgrad Province,Bulgaria","9040105","BG","City",Active
|
713 |
-
"1001446","Dupnica","Dupnica,Kyustendil Province,Bulgaria","9040100","BG","City",Active
|
714 |
-
"1001447","Kyustendil","Kyustendil,Kyustendil Province,Bulgaria","9040100","BG","City",Active
|
715 |
-
"1001448","Sofia","Sofia,Sofia-Capital,Bulgaria","9047101","BG","Municipality",Active
|
716 |
-
"1001449","Burgas","Burgas,Burgas,Bulgaria","9040121","BG","City",Active
|
717 |
-
"1001450","Pomorie","Pomorie,Burgas,Bulgaria","9040121","BG","City",Active
|
718 |
-
"1001451","Sliven","Sliven,Sliven Province,Bulgaria","9040119","BG","City",Active
|
719 |
-
"1001452","Yambol","Yambol,Jambol,Bulgaria","9040122","BG","City",Active
|
720 |
-
"1001453","Dobrich","Dobrich,Dobrich Province,Bulgaria","9040115","BG","City",Active
|
721 |
-
"1001454","Varna","Varna,Varna,Bulgaria","9040118","BG","City",Active
|
722 |
-
"1001455","Gabrovo","Gabrovo,Gabrovo,Bulgaria","9040125","BG","City",Active
|
723 |
-
"1001456","Lovech","Lovech,Lovec,Bulgaria","9040133","BG","City",Active
|
724 |
-
"1001457","Pleven","Pleven,Pleven Province,Bulgaria","9040134","BG","City",Active
|
725 |
-
"1001458","Sevlievo","Sevlievo,Gabrovo,Bulgaria","9040125","BG","Municipality",Active
|
726 |
-
"1001459","Veliko Tarnovo","Veliko Tarnovo,Veliko Tarnovo Province,Bulgaria","9040127","BG","City",Active
|
727 |
-
"1001460","Montana","Montana,Montana Province,Bulgaria","9040146","BG","City",Active
|
728 |
-
"1001461","Vidin","Vidin,Vidin,Bulgaria","9040145","BG","City",Active
|
729 |
-
"1001462","Vratsa","Vratsa,Vraca,Bulgaria","9040131","BG","City",Active
|
730 |
-
"1001463","Karlovo","Karlovo,Plovdiv Province,Bulgaria","9040109","BG","Municipality",Active
|
731 |
-
"1001464","Plovdiv","Plovdiv,Plovdiv Province,Bulgaria","9040109","BG","Municipality",Active
|
732 |
-
"1001465","Smolyan","Smolyan,Smoljan,Bulgaria","9040106","BG","City",Active
|
733 |
-
"1001466","Razgrad","Razgrad,Razgrad,Bulgaria","9040140","BG","City",Active
|
734 |
-
"1001467","Ruse","Ruse,Ruse,Bulgaria","9040137","BG","City",Active
|
735 |
-
"1001468","Silistra","Silistra,Silistra,Bulgaria","9040142","BG","City",Active
|
736 |
-
"1001469","Targovishte","Targovishte,Targovishte Province,Bulgaria","9040139","BG","City",Active
|
737 |
-
"1001470","Pernik","Pernik,Pernik,Bulgaria","9040101","BG","City",Active
|
738 |
-
"1001471","Petrich","Petrich,Blagoevgrad Province,Bulgaria","9040105","BG","City",Active
|
739 |
-
"1001472","Dimitrovgrad","Dimitrovgrad,Haskovo Province,Bulgaria","9040114","BG","City",Active
|
740 |
-
"1001473","Haskovo","Haskovo,Haskovo Province,Bulgaria","9040114","BG","City",Active
|
741 |
-
"1001474","Kardzali","Kardzali,Kardzhali Province,Bulgaria","9040111","BG","City",Active
|
742 |
-
"1001475","Kazanluk","Kazanluk,Stara Zagora,Bulgaria","9040123","BG","City",Active
|
743 |
-
"1001476","Stara Zagora","Stara Zagora,Stara Zagora,Bulgaria","9040123","BG","City",Active
|
744 |
-
"1001477","Svilengrad","Svilengrad,Haskovo Province,Bulgaria","9040114","BG","City",Active
|
745 |
-
"1001478","Manama","Manama,Capital Governorate,Bahrain","9069830","BH","City",Active
|
746 |
-
"1001492","Gomel","Gomel,Gomel Region,Belarus","9069576","BY","City",Active
|
747 |
-
"1001493","Minsk","Minsk,Minsk Region,Belarus","9069578","BY","City",Active
|
748 |
-
"1001494","Navapolatsk","Navapolatsk,Vitebsk Region,Belarus","9069577","BY","City",Active
|
749 |
-
"1001495","Viciebsk","Viciebsk,Vitebsk Region,Belarus","9069577","BY","City",Active
|
750 |
-
"1001504","Rio Branco","Rio Branco,State of Acre,Brazil","21232","BR","City",Active
|
751 |
-
"1001505","Capela","Capela,State of Alagoas,Brazil","20086","BR","City",Active
|
752 |
-
"1001506","Maceio","Maceio,State of Alagoas,Brazil","20086","BR","City",Active
|
753 |
-
"1001507","Matriz de Camaragibe","Matriz de Camaragibe,State of Alagoas,Brazil","20086","BR","City",Active
|
754 |
-
"1001510","Itacoatiara","Itacoatiara,State of Amazonas,Brazil","20087","BR","City",Active
|
755 |
-
"1001511","Manaus","Manaus,State of Amazonas,Brazil","20087","BR","City",Active
|
756 |
-
"1001513","Tefe","Tefe,State of Amazonas,Brazil","20087","BR","City",Active
|
757 |
-
"1001515","Macapa","Macapa,State of Amapa,Brazil","21226","BR","City",Active
|
758 |
-
"1001516","Alagoinhas","Alagoinhas,State of Bahia,Brazil","20088","BR","City",Active
|
759 |
-
"1001517","Barreiras","Barreiras,State of Bahia,Brazil","20088","BR","City",Active
|
760 |
-
"1001518","Caetite","Caetite,State of Bahia,Brazil","20088","BR","City",Active
|
761 |
-
"1001520","Eunapolis","Eunapolis,State of Bahia,Brazil","20088","BR","City",Active
|
762 |
-
"1001521","Feira de Santana","Feira de Santana,State of Bahia,Brazil","20088","BR","City",Active
|
763 |
-
"1001522","Guanambi","Guanambi,State of Bahia,Brazil","20088","BR","City",Active
|
764 |
-
"1001523","Itabuna","Itabuna,State of Bahia,Brazil","20088","BR","City",Active
|
765 |
-
"1001524","Itamaraju","Itamaraju,State of Bahia,Brazil","20088","BR","City",Active
|
766 |
-
"1001525","Itapetinga","Itapetinga,State of Bahia,Brazil","20088","BR","City",Active
|
767 |
-
"1001528","Jequie","Jequie,State of Bahia,Brazil","20088","BR","City",Active
|
768 |
-
"1001529","Juazeiro","Juazeiro,State of Bahia,Brazil","20088","BR","City",Active
|
769 |
-
"1001533","Salvador","Salvador,State of Bahia,Brazil","20088","BR","City",Active
|
770 |
-
"1001534","Santo Antonio de Jesus","Santo Antonio de Jesus,State of Bahia,Brazil","20088","BR","City",Active
|
771 |
-
"1001535","Simoes Filho","Simoes Filho,State of Bahia,Brazil","20088","BR","City",Active
|
772 |
-
"1001536","Vitoria da Conquista","Vitoria da Conquista,State of Bahia,Brazil","20088","BR","City",Active
|
773 |
-
"1001537","Caninde","Caninde,State of Ceara,Brazil","20089","BR","City",Active
|
774 |
-
"1001538","Fortaleza","Fortaleza,State of Ceara,Brazil","20089","BR","City",Active
|
775 |
-
"1001539","Juazeiro do Norte","Juazeiro do Norte,State of Ceara,Brazil","20089","BR","City",Active
|
776 |
-
"1001540","Sobral","Sobral,State of Ceara,Brazil","20089","BR","City",Active
|
777 |
-
"1001541","Brasilia","Brasilia,Federal District,Brazil","20090","BR","City",Active
|
778 |
-
"1001542","Cachoeiro de Itapemirim","Cachoeiro de Itapemirim,State of Espirito Santo,Brazil","20091","BR","City",Active
|
779 |
-
"1001543","Castelo","Castelo,State of Espirito Santo,Brazil","20091","BR","City",Active
|
780 |
-
"1001544","Colatina","Colatina,State of Espirito Santo,Brazil","20091","BR","City",Active
|
781 |
-
"1001545","Linhares","Linhares,State of Espirito Santo,Brazil","20091","BR","City",Active
|
782 |
-
"1001546","Sao Mateus","Sao Mateus,State of Espirito Santo,Brazil","20091","BR","City",Active
|
783 |
-
"1001547","Serra","Serra,State of Espirito Santo,Brazil","20091","BR","City",Active
|
784 |
-
"1001548","Vila Velha","Vila Velha,State of Espirito Santo,Brazil","20091","BR","City",Active
|
785 |
-
"1001549","Vitoria","Vitoria,State of Espirito Santo,Brazil","20091","BR","City",Active
|
786 |
-
"1001550","Catalao","Catalao,State of Goias,Brazil","20092","BR","City",Active
|
787 |
-
"1001551","Ceres","Ceres,State of Goias,Brazil","20092","BR","City",Active
|
788 |
-
"1001552","Goiania","Goiania,State of Goias,Brazil","20092","BR","City",Active
|
789 |
-
"1001554","Itumbiara","Itumbiara,State of Goias,Brazil","20092","BR","City",Active
|
790 |
-
"1001555","Jatai","Jatai,State of Goias,Brazil","20092","BR","City",Active
|
791 |
-
"1001556","Rio Verde","Rio Verde,State of Goias,Brazil","20092","BR","City",Active
|
792 |
-
"1001557","Trindade","Trindade,State of Goias,Brazil","20092","BR","City",Active
|
793 |
-
"1001559","Balsas","Balsas,State of Maranhao,Brazil","20093","BR","City",Active
|
794 |
-
"1001560","Imperatriz","Imperatriz,State of Maranhao,Brazil","20093","BR","City",Active
|
795 |
-
"1001561","Sao Luis","Sao Luis,State of Maranhao,Brazil","20093","BR","City",Active
|
796 |
-
"1001562","Alfenas","Alfenas,State of Minas Gerais,Brazil","20094","BR","City",Active
|
797 |
-
"1001563","Araxa","Araxa,State of Minas Gerais,Brazil","20094","BR","City",Active
|
798 |
-
"1001564","Arcos","Arcos,State of Minas Gerais,Brazil","20094","BR","City",Active
|
799 |
-
"1001565","Barbacena","Barbacena,State of Minas Gerais,Brazil","20094","BR","City",Active
|
800 |
-
"1001566","Belo Horizonte","Belo Horizonte,State of Minas Gerais,Brazil","20094","BR","City",Active
|
801 |
-
"1001567","Caceres","Caceres,State of Mato Grosso,Brazil","20096","BR","City",Active
|
802 |
-
"1001568","Cataguases","Cataguases,State of Minas Gerais,Brazil","20094","BR","City",Active
|
803 |
-
"1001570","Divinopolis","Divinopolis,State of Minas Gerais,Brazil","20094","BR","City",Active
|
804 |
-
"1001571","Governador Valadares","Governador Valadares,State of Minas Gerais,Brazil","20094","BR","City",Active
|
805 |
-
"1001572","Ipatinga","Ipatinga,State of Minas Gerais,Brazil","20094","BR","City",Active
|
806 |
-
"1001573","Itajuba","Itajuba,State of Minas Gerais,Brazil","20094","BR","City",Active
|
807 |
-
"1001574","Juatuba","Juatuba,State of Minas Gerais,Brazil","20094","BR","City",Active
|
808 |
-
"1001575","Juiz de Fora","Juiz de Fora,State of Minas Gerais,Brazil","20094","BR","City",Active
|
809 |
-
"1001576","Lavras","Lavras,State of Minas Gerais,Brazil","20094","BR","City",Active
|
810 |
-
"1001577","Manhuacu","Manhuacu,State of Minas Gerais,Brazil","20094","BR","City",Active
|
811 |
-
"1001578","Monte Carmelo","Monte Carmelo,State of Minas Gerais,Brazil","20094","BR","City",Active
|
812 |
-
"1001579","Montes Claros","Montes Claros,State of Minas Gerais,Brazil","20094","BR","City",Active
|
813 |
-
"1001580","Ouro Preto","Ouro Preto,State of Minas Gerais,Brazil","20094","BR","City",Active
|
814 |
-
"1001581","Passos","Passos,State of Minas Gerais,Brazil","20094","BR","City",Active
|
815 |
-
"1001582","Patrocinio","Patrocinio,State of Minas Gerais,Brazil","20094","BR","City",Active
|
816 |
-
"1001583","Pirapora","Pirapora,State of Minas Gerais,Brazil","20094","BR","City",Active
|
817 |
-
"1001584","Pocos de Caldas","Pocos de Caldas,State of Minas Gerais,Brazil","20094","BR","City",Active
|
818 |
-
"1001585","Sao Joao del Rei","Sao Joao del Rei,State of Minas Gerais,Brazil","20094","BR","City",Active
|
819 |
-
"1001586","Sete Lagoas","Sete Lagoas,State of Minas Gerais,Brazil","20094","BR","City",Active
|
820 |
-
"1001587","Teofilo Otoni","Teofilo Otoni,State of Minas Gerais,Brazil","20094","BR","City",Active
|
821 |
-
"1001588","Tres Coracoes","Tres Coracoes,State of Minas Gerais,Brazil","20094","BR","City",Active
|
822 |
-
"1001589","Uberaba","Uberaba,State of Minas Gerais,Brazil","20094","BR","City",Active
|
823 |
-
"1001590","Uberlandia","Uberlandia,State of Minas Gerais,Brazil","20094","BR","City",Active
|
824 |
-
"1001591","Unai","Unai,State of Minas Gerais,Brazil","20094","BR","City",Active
|
825 |
-
"1001592","Vicosa","Vicosa,State of Minas Gerais,Brazil","20094","BR","City",Active
|
826 |
-
"1001593","Campo Grande","Campo Grande,State of Mato Grosso do Sul,Brazil","20095","BR","City",Active
|
827 |
-
"1001595","Corumba","Corumba,State of Mato Grosso do Sul,Brazil","20095","BR","City",Active
|
828 |
-
"1001596","Dourados","Dourados,State of Mato Grosso do Sul,Brazil","20095","BR","City",Active
|
829 |
-
"1001598","Ponta Pora","Ponta Pora,State of Mato Grosso do Sul,Brazil","20095","BR","City",Active
|
830 |
-
"1001599","Tres Lagoas","Tres Lagoas,State of Mato Grosso do Sul,Brazil","20095","BR","City",Active
|
831 |
-
"1001600","Alta Floresta","Alta Floresta,State of Mato Grosso,Brazil","20096","BR","City",Active
|
832 |
-
"1001602","Cuiaba","Cuiaba,State of Mato Grosso,Brazil","20096","BR","City",Active
|
833 |
-
"1001604","Presidente Epitacio","Presidente Epitacio,State of Sao Paulo,Brazil","20106","BR","City",Active
|
834 |
-
"1001605","Rondonopolis","Rondonopolis,State of Mato Grosso,Brazil","20096","BR","City",Active
|
835 |
-
"1001606","Sinop","Sinop,State of Mato Grosso,Brazil","20096","BR","City",Active
|
836 |
-
"1001607","Tangara da Serra","Tangara da Serra,State of Mato Grosso,Brazil","20096","BR","City",Active
|
837 |
-
"1001609","Altamira","Altamira,State of Para,Brazil","20097","BR","City",Active
|
838 |
-
"1001610","Belem","Belem,State of Para,Brazil","20097","BR","City",Active
|
839 |
-
"1001613","Castanhal","Castanhal,State of Para,Brazil","20097","BR","City",Active
|
840 |
-
"1001614","Itaituba","Itaituba,State of Para,Brazil","20097","BR","City",Active
|
841 |
-
"1001615","Maraba","Maraba,State of Para,Brazil","20097","BR","City",Active
|
842 |
-
"1001616","Paragominas","Paragominas,State of Para,Brazil","20097","BR","City",Active
|
843 |
-
"1001617","Redencao","Redencao,State of Para,Brazil","20097","BR","City",Active
|
844 |
-
"1001618","Santarem","Santarem,State of Para,Brazil","20097","BR","City",Active
|
845 |
-
"1001620","Tucurui","Tucurui,State of Para,Brazil","20097","BR","City",Active
|
846 |
-
"1001621","Campina Grande","Campina Grande,State of Paraiba,Brazil","20098","BR","City",Active
|
847 |
-
"1001622","Joao Pessoa","Joao Pessoa,State of Paraiba,Brazil","20098","BR","City",Active
|
848 |
-
"1001624","Paulista","Paulista,State of Pernambuco,Brazil","20099","BR","City",Active
|
849 |
-
"1001625","Recife","Recife,State of Pernambuco,Brazil","20099","BR","City",Active
|
850 |
-
"1001629","Teresina","Teresina,State of Piaui,Brazil","20100","BR","City",Active
|
851 |
-
"1001630","Apucarana","Apucarana,State of Parana,Brazil","20101","BR","City",Active
|
852 |
-
"1001631","Cafelandia","Cafelandia,State of Parana,Brazil","20101","BR","City",Active
|
853 |
-
"1001632","Cascavel","Cascavel,State of Parana,Brazil","20101","BR","City",Active
|
854 |
-
"1001633","Cornelio Procopio","Cornelio Procopio,State of Parana,Brazil","20101","BR","City",Active
|
855 |
-
"1001634","Curitiba","Curitiba,State of Parana,Brazil","20101","BR","City",Active
|
856 |
-
"1001635","Guarapuava","Guarapuava,State of Parana,Brazil","20101","BR","City",Active
|
857 |
-
"1001636","Ibaiti","Ibaiti,State of Parana,Brazil","20101","BR","City",Active
|
858 |
-
"1001637","Londrina","Londrina,State of Parana,Brazil","20101","BR","City",Active
|
859 |
-
"1001638","Palmas","Palmas,State of Parana,Brazil","20101","BR","City",Active
|
860 |
-
"1001639","Paranagua","Paranagua,State of Parana,Brazil","20101","BR","City",Active
|
861 |
-
"1001640","Ponta Grossa","Ponta Grossa,State of Parana,Brazil","20101","BR","City",Active
|
862 |
-
"1001641","Santo Antonio da Platina","Santo Antonio da Platina,State of Parana,Brazil","20101","BR","City",Active
|
863 |
-
"1001642","Sao Mateus do Sul","Sao Mateus do Sul,State of Parana,Brazil","20101","BR","City",Active
|
864 |
-
"1001643","Umuarama","Umuarama,State of Parana,Brazil","20101","BR","City",Active
|
865 |
-
"1001644","Barra Mansa","Barra Mansa,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
866 |
-
"1001645","Cabo Frio","Cabo Frio,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
867 |
-
"1001646","Campos dos Goytacazes","Campos dos Goytacazes,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
868 |
-
"1001647","Itaguai","Itaguai,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
869 |
-
"1001648","Itaperuna","Itaperuna,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
870 |
-
"1001649","Macae","Macae,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
871 |
-
"1001650","Niteroi","Niteroi,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
872 |
-
"1001651","Nova Friburgo","Nova Friburgo,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
873 |
-
"1001652","Nova Iguacu","Nova Iguacu,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
874 |
-
"1001653","Petropolis","Petropolis,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
875 |
-
"1001654","Porto Real","Porto Real,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
876 |
-
"1001655","Rio de Janeiro","Rio de Janeiro,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
877 |
-
"1001656","Sao Jose do Vale do Rio Preto","Sao Jose do Vale do Rio Preto,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
878 |
-
"1001657","Seropedica","Seropedica,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
879 |
-
"1001658","Teresopolis","Teresopolis,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
880 |
-
"1001659","Valenca","Valenca,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
881 |
-
"1001660","Vassouras","Vassouras,State of Rio de Janeiro,Brazil","20102","BR","City",Active
|
882 |
-
"1001661","Mossoro","Mossoro,State of Rio Grande do Norte,Brazil","20103","BR","City",Active
|
883 |
-
"1001662","Natal","Natal,State of Rio Grande do Norte,Brazil","20103","BR","City",Active
|
884 |
-
"1001664","Cacoal","Cacoal,State of Rondonia,Brazil","21227","BR","City",Active
|
885 |
-
"1001665","Ji-Parana","Ji-Parana,State of Rondonia,Brazil","21227","BR","City",Active
|
886 |
-
"1001666","Porto Velho","Porto Velho,State of Rondonia,Brazil","21227","BR","City",Active
|
887 |
-
"1001667","Bage","Bage,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
888 |
-
"1001668","Cachoeira do Sul","Cachoeira do Sul,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
889 |
-
"1001669","Camaqua","Camaqua,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
890 |
-
"1001670","Canoas","Canoas,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
891 |
-
"1001671","Capao da Canoa","Capao da Canoa,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
892 |
-
"1001672","Caxias do Sul","Caxias do Sul,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
893 |
-
"1001673","Erechim","Erechim,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
894 |
-
"1001674","Flores da Cunha","Flores da Cunha,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
895 |
-
"1001675","Guapore","Guapore,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
896 |
-
"1001676","Ibiruba","Ibiruba,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
897 |
-
"1001677","Ijui","Ijui,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
898 |
-
"1001678","Jaguarao","Jaguarao,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
899 |
-
"1001679","Lajeado","Lajeado,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
900 |
-
"1001681","Novo Hamburgo","Novo Hamburgo,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
901 |
-
"1001682","Palmeira das Missoes","Palmeira das Missoes,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
902 |
-
"1001683","Parobe","Parobe,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
903 |
-
"1001684","Passo Fundo","Passo Fundo,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
904 |
-
"1001685","Pelotas","Pelotas,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
905 |
-
"1001686","Porto Alegre","Porto Alegre,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
906 |
-
"1001687","Rio Grande","Rio Grande,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
907 |
-
"1001688","Santa Cruz do Sul","Santa Cruz do Sul,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
908 |
-
"1001689","Santa Maria","Santa Maria,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
909 |
-
"1001690","Santa Rosa","Santa Rosa,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
910 |
-
"1001691","Santana do Livramento","Santana do Livramento,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
911 |
-
"1001692","Sao Leopoldo","Sao Leopoldo,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
912 |
-
"1001693","Tapes","Tapes,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
913 |
-
"1001694","Taquari","Taquari,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
914 |
-
"1001695","Torres","Torres,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
915 |
-
"1001696","Uruguaiana","Uruguaiana,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
916 |
-
"1001697","Vacaria","Vacaria,State of Rio Grande do Sul,Brazil","20104","BR","City",Active
|
917 |
-
"1001698","Blumenau","Blumenau,State of Santa Catarina,Brazil","20105","BR","City",Active
|
918 |
-
"1001699","Braco do Norte","Braco do Norte,State of Santa Catarina,Brazil","20105","BR","City",Active
|
919 |
-
"1001700","Cacador","Cacador,State of Santa Catarina,Brazil","20105","BR","City",Active
|
920 |
-
"1001701","Canoinhas","Canoinhas,State of Santa Catarina,Brazil","20105","BR","City",Active
|
921 |
-
"1001702","Chapeco","Chapeco,State of Santa Catarina,Brazil","20105","BR","City",Active
|
922 |
-
"1001703","Concordia","Concordia,State of Santa Catarina,Brazil","20105","BR","City",Active
|
923 |
-
"1001704","Criciuma","Criciuma,State of Santa Catarina,Brazil","20105","BR","City",Active
|
924 |
-
"1001705","Curitibanos","Curitibanos,State of Santa Catarina,Brazil","20105","BR","City",Active
|
925 |
-
"1001706","Florianopolis","Florianopolis,State of Santa Catarina,Brazil","20105","BR","City",Active
|
926 |
-
"1001707","Imbituba","Imbituba,State of Santa Catarina,Brazil","20105","BR","City",Active
|
927 |
-
"1001708","Itajai","Itajai,State of Santa Catarina,Brazil","20105","BR","City",Active
|
928 |
-
"1001709","Joacaba","Joacaba,State of Santa Catarina,Brazil","20105","BR","City",Active
|
929 |
-
"1001710","Joinville","Joinville,State of Santa Catarina,Brazil","20105","BR","City",Active
|
930 |
-
"1001712","Navegantes","Navegantes,State of Santa Catarina,Brazil","20105","BR","City",Active
|
931 |
-
"1001713","Rio do Sul","Rio do Sul,State of Santa Catarina,Brazil","20105","BR","City",Active
|
932 |
-
"1001714","Rio Negrinho","Rio Negrinho,State of Santa Catarina,Brazil","20105","BR","City",Active
|
933 |
-
"1001715","Aracaju","Aracaju,State of Sergipe,Brazil","21229","BR","City",Active
|
934 |
-
"1001716","Adamantina","Adamantina,State of Sao Paulo,Brazil","20106","BR","City",Active
|
935 |
-
"1001717","Americana","Americana,State of Sao Paulo,Brazil","20106","BR","City",Active
|
936 |
-
"1001718","Aracatuba","Aracatuba,State of Sao Paulo,Brazil","20106","BR","City",Active
|
937 |
-
"1001719","Araraquara","Araraquara,State of Sao Paulo,Brazil","20106","BR","City",Active
|
938 |
-
"1001720","Assis","Assis,State of Sao Paulo,Brazil","20106","BR","City",Active
|
939 |
-
"1001721","Avare","Avare,State of Sao Paulo,Brazil","20106","BR","City",Active
|
940 |
-
"1001722","Bariri","Bariri,State of Sao Paulo,Brazil","20106","BR","City",Active
|
941 |
-
"1001723","Barretos","Barretos,State of Sao Paulo,Brazil","20106","BR","City",Active
|
942 |
-
"1001724","Barueri","Barueri,State of Sao Paulo,Brazil","20106","BR","City",Active
|
943 |
-
"1001725","Bauru","Bauru,State of Sao Paulo,Brazil","20106","BR","City",Active
|
944 |
-
"1001726","Botucatu","Botucatu,State of Sao Paulo,Brazil","20106","BR","City",Active
|
945 |
-
"1001727","Braganca Paulista","Braganca Paulista,State of Sao Paulo,Brazil","20106","BR","City",Active
|
946 |
-
"1001728","Cachoeira Paulista","Cachoeira Paulista,State of Sao Paulo,Brazil","20106","BR","City",Active
|
947 |
-
"1001729","Campinas","Campinas,State of Sao Paulo,Brazil","20106","BR","City",Active
|
948 |
-
"1001730","Catanduva","Catanduva,State of Sao Paulo,Brazil","20106","BR","City",Active
|
949 |
-
"1001731","Cotia","Cotia,State of Sao Paulo,Brazil","20106","BR","City",Active
|
950 |
-
"1001732","Cubatao","Cubatao,State of Sao Paulo,Brazil","20106","BR","City",Active
|
951 |
-
"1001733","Dracena","Dracena,State of Sao Paulo,Brazil","20106","BR","City",Active
|
952 |
-
"1001734","Fernandopolis","Fernandopolis,State of Sao Paulo,Brazil","20106","BR","City",Active
|
953 |
-
"1001735","Franca","Franca,State of Sao Paulo,Brazil","20106","BR","City",Active
|
954 |
-
"1001736","Guarulhos","Guarulhos,State of Sao Paulo,Brazil","20106","BR","City",Active
|
955 |
-
"1001737","Hortolandia","Hortolandia,State of Sao Paulo,Brazil","20106","BR","City",Active
|
956 |
-
"1001738","Indaiatuba","Indaiatuba,State of Sao Paulo,Brazil","20106","BR","City",Active
|
957 |
-
"1001739","Ipero","Ipero,State of Sao Paulo,Brazil","20106","BR","City",Active
|
958 |
-
"1001740","Itapetininga","Itapetininga,State of Sao Paulo,Brazil","20106","BR","City",Active
|
959 |
-
"1001741","Itapeva","Itapeva,State of Sao Paulo,Brazil","20106","BR","City",Active
|
960 |
-
"1001742","Itarare","Itarare,State of Sao Paulo,Brazil","20106","BR","City",Active
|
961 |
-
"1001743","Jundiai","Jundiai,State of Sao Paulo,Brazil","20106","BR","City",Active
|
962 |
-
"1001744","Laranjal Paulista","Laranjal Paulista,State of Sao Paulo,Brazil","20106","BR","City",Active
|
963 |
-
"1001745","Leme","Leme,State of Sao Paulo,Brazil","20106","BR","City",Active
|
964 |
-
"1001746","Limeira","Limeira,State of Sao Paulo,Brazil","20106","BR","City",Active
|
965 |
-
"1001747","Lins","Lins,State of Sao Paulo,Brazil","20106","BR","City",Active
|
966 |
-
"1001748","Lorena","Lorena,State of Sao Paulo,Brazil","20106","BR","City",Active
|
967 |
-
"1001749","Marilia","Marilia,State of Sao Paulo,Brazil","20106","BR","City",Active
|
968 |
-
"1001750","Mococa","Mococa,State of Sao Paulo,Brazil","20106","BR","City",Active
|
969 |
-
"1001751","Mogi Guacu","Mogi Guacu,State of Sao Paulo,Brazil","20106","BR","City",Active
|
970 |
-
"1001752","Moji-Mirim","Moji-Mirim,State of Sao Paulo,Brazil","20106","BR","City",Active
|
971 |
-
"1001753","Nova Odessa","Nova Odessa,State of Sao Paulo,Brazil","20106","BR","City",Active
|
972 |
-
"1001754","Osasco","Osasco,State of Sao Paulo,Brazil","20106","BR","City",Active
|
973 |
-
"1001755","Ourinhos","Ourinhos,State of Sao Paulo,Brazil","20106","BR","City",Active
|
974 |
-
"1001756","Paulinia","Paulinia,State of Sao Paulo,Brazil","20106","BR","City",Active
|
975 |
-
"1001757","Pindamonhangaba","Pindamonhangaba,State of Sao Paulo,Brazil","20106","BR","City",Active
|
976 |
-
"1001758","Piracicaba","Piracicaba,State of Sao Paulo,Brazil","20106","BR","City",Active
|
977 |
-
"1001759","Porto Ferreira","Porto Ferreira,State of Sao Paulo,Brazil","20106","BR","City",Active
|
978 |
-
"1001760","Presidente Prudente","Presidente Prudente,State of Sao Paulo,Brazil","20106","BR","City",Active
|
979 |
-
"1001761","Registro","Registro,State of Sao Paulo,Brazil","20106","BR","City",Active
|
980 |
-
"1001762","Ribeirao Pires","Ribeirao Pires,State of Sao Paulo,Brazil","20106","BR","City",Active
|
981 |
-
"1001763","Ribeirao Preto","Ribeirao Preto,State of Sao Paulo,Brazil","20106","BR","City",Active
|
982 |
-
"1001764","Rio Claro","Rio Claro,State of Sao Paulo,Brazil","20106","BR","City",Active
|
983 |
-
"1001765","Santo Andre","Santo Andre,State of Sao Paulo,Brazil","20106","BR","City",Active
|
984 |
-
"1001766","Santos","Santos,State of Sao Paulo,Brazil","20106","BR","City",Active
|
985 |
-
"1001767","Sao Bernardo do Campo","Sao Bernardo do Campo,State of Sao Paulo,Brazil","20106","BR","City",Active
|
986 |
-
"1001768","Sao Caetano do Sul","Sao Caetano do Sul,State of Sao Paulo,Brazil","20106","BR","City",Active
|
987 |
-
"1001769","Sao Carlos","Sao Carlos,State of Sao Paulo,Brazil","20106","BR","City",Active
|
988 |
-
"1001770","Sao Joao da Boa Vista","Sao Joao da Boa Vista,State of Sao Paulo,Brazil","20106","BR","City",Active
|
989 |
-
"1001771","Sao Jose do Rio Preto","Sao Jose do Rio Preto,State of Sao Paulo,Brazil","20106","BR","City",Active
|
990 |
-
"1001772","Sao Jose dos Campos","Sao Jose dos Campos,State of Sao Paulo,Brazil","20106","BR","City",Active
|
991 |
-
"1001773","Sao Paulo","Sao Paulo,State of Sao Paulo,Brazil","20106","BR","City",Active
|
992 |
-
"1001774","Sao Sebastiao","Sao Sebastiao,State of Sao Paulo,Brazil","20106","BR","City",Active
|
993 |
-
"1001775","Sao Vicente","Sao Vicente,State of Sao Paulo,Brazil","20106","BR","City",Active
|
994 |
-
"1001776","Sorocaba","Sorocaba,State of Sao Paulo,Brazil","20106","BR","City",Active
|
995 |
-
"1001777","Suzano","Suzano,State of Sao Paulo,Brazil","20106","BR","City",Active
|
996 |
-
"1001778","Taubate","Taubate,State of Sao Paulo,Brazil","20106","BR","City",Active
|
997 |
-
"1001779","Tupa","Tupa,State of Sao Paulo,Brazil","20106","BR","City",Active
|
998 |
-
"1001780","Araguaina","Araguaina,State of Tocantins,Brazil","21230","BR","City",Active
|
999 |
-
"1001784","Saint James","Saint James,Barbados","2052","BB","City",Active
|
1000 |
-
"1001785","Saint Michael","Saint Michael,Barbados","2052","BB","City",Active
|
1001 |
-
"1001786","Bandar Seri Begawan","Bandar Seri Begawan,Brunei-Muara District,Brunei","9070436","BN","City",Active
|
1002 |
-
"1001792","Acme","Acme,Alberta,Canada","20113","CA","City",Active
|
1003 |
-
"1001793","Airdrie","Airdrie,Alberta,Canada","20113","CA","City",Active
|
1004 |
-
"1001794","Athabasca","Athabasca,Alberta,Canada","20113","CA","City",Active
|
1005 |
-
"1001795","Banff","Banff,Alberta,Canada","20113","CA","City",Active
|
1006 |
-
"1001796","Barrhead","Barrhead,Alberta,Canada","20113","CA","City",Active
|
1007 |
-
"1001797","Bonnyville","Bonnyville,Alberta,Canada","20113","CA","City",Active
|
1008 |
-
"1001798","Bow Island","Bow Island,Alberta,Canada","20113","CA","City",Active
|
1009 |
-
"1001799","Breton","Breton,Alberta,Canada","20113","CA","City",Active
|
1010 |
-
"1001800","Brooks","Brooks,Alberta,Canada","20113","CA","City",Active
|
1011 |
-
"1001801","Calgary","Calgary,Alberta,Canada","20113","CA","City",Active
|
1012 |
-
"1001802","Camrose","Camrose,Alberta,Canada","20113","CA","City",Active
|
1013 |
-
"1001803","Canmore","Canmore,Alberta,Canada","20113","CA","City",Active
|
1014 |
-
"1001804","Cold Lake","Cold Lake,Alberta,Canada","20113","CA","City",Active
|
1015 |
-
"1001805","Didsbury","Didsbury,Alberta,Canada","20113","CA","City",Active
|
1016 |
-
"1001806","Drayton Valley","Drayton Valley,Alberta,Canada","20113","CA","City",Active
|
1017 |
-
"1001807","Drumheller","Drumheller,Alberta,Canada","20113","CA","City",Active
|
1018 |
-
"1001808","Edmonton","Edmonton,Alberta,Canada","20113","CA","City",Active
|
1019 |
-
"1001809","Edson","Edson,Alberta,Canada","20113","CA","City",Active
|
1020 |
-
"1001810","Fairview","Fairview,Alberta,Canada","20113","CA","City",Active
|
1021 |
-
"1001811","Fort MacLeod","Fort MacLeod,Alberta,Canada","20113","CA","City",Active
|
1022 |
-
"1001812","Fort McMurray","Fort McMurray,Alberta,Canada","20113","CA","City",Active
|
1023 |
-
"1001813","Fort Saskatchewan","Fort Saskatchewan,Alberta,Canada","20113","CA","City",Active
|
1024 |
-
"1001814","Cold Lake South","Cold Lake South,Alberta,Canada","20113","CA","Neighborhood",Active
|
1025 |
-
"1001815","Grande Cache","Grande Cache,Alberta,Canada","20113","CA","City",Active
|
1026 |
-
"1001816","Grande Prairie","Grande Prairie,Alberta,Canada","20113","CA","City",Active
|
1027 |
-
"1001817","High Level","High Level,Alberta,Canada","20113","CA","City",Active
|
1028 |
-
"1001818","High Prairie","High Prairie,Alberta,Canada","20113","CA","City",Active
|
1029 |
-
"1001819","High River","High River,Alberta,Canada","20113","CA","City",Active
|
1030 |
-
"1001820","Hinton","Hinton,Alberta,Canada","20113","CA","City",Active
|
1031 |
-
"1001821","Jasper","Jasper,Alberta,Canada","20113","CA","City",Active
|
1032 |
-
"1001822","Lac la Biche","Lac la Biche,Alberta,Canada","20113","CA","City",Active
|
1033 |
-
"1001823","Lacombe","Lacombe,Alberta,Canada","20113","CA","City",Active
|
1034 |
-
"1001824","Langdon","Langdon,Alberta,Canada","20113","CA","City",Active
|
1035 |
-
"1001825","Leduc","Leduc,Alberta,Canada","20113","CA","City",Active
|
1036 |
-
"1001826","Lethbridge","Lethbridge,Alberta,Canada","20113","CA","City",Active
|
1037 |
-
"1001827","Lloydminster","Lloydminster,Alberta,Canada","20113","CA","City",Active
|
1038 |
-
"1001828","Medicine Hat","Medicine Hat,Alberta,Canada","20113","CA","City",Active
|
1039 |
-
"1001829","Morinville","Morinville,Alberta,Canada","20113","CA","City",Active
|
1040 |
-
"1001830","Munson","Munson,Alberta,Canada","20113","CA","City",Active
|
1041 |
-
"1001831","Nisku","Nisku,Alberta,Canada","20113","CA","City",Active
|
1042 |
-
"1001832","Okotoks","Okotoks,Alberta,Canada","20113","CA","City",Active
|
1043 |
-
"1001833","Olds","Olds,Alberta,Canada","20113","CA","City",Active
|
1044 |
-
"1001834","Peace River","Peace River,Alberta,Canada","20113","CA","City",Active
|
1045 |
-
"1001835","Ponoka","Ponoka,Alberta,Canada","20113","CA","City",Active
|
1046 |
-
"1001836","Provost","Provost,Alberta,Canada","20113","CA","City",Active
|
1047 |
-
"1001837","Red Deer","Red Deer,Alberta,Canada","20113","CA","City",Active
|
1048 |
-
"1001838","Redcliff","Redcliff,Alberta,Canada","20113","CA","City",Active
|
1049 |
-
"1001839","Redwood Meadows","Redwood Meadows,Alberta,Canada","20113","CA","City",Active
|
1050 |
-
"1001840","Rocky Mountain House","Rocky Mountain House,Alberta,Canada","20113","CA","City",Active
|
1051 |
-
"1001841","Sherwood Park","Sherwood Park,Alberta,Canada","20113","CA","City",Active
|
1052 |
-
"1001842","Slave Lake","Slave Lake,Alberta,Canada","20113","CA","City",Active
|
1053 |
-
"1001843","Spruce Grove","Spruce Grove,Alberta,Canada","20113","CA","City",Active
|
1054 |
-
"1001844","St. Albert","St. Albert,Alberta,Canada","20113","CA","City",Active
|
1055 |
-
"1001845","Saint Paul","Saint Paul,Alberta,Canada","20113","CA","City",Active
|
1056 |
-
"1001846","Stettler","Stettler,Alberta,Canada","20113","CA","City",Active
|
1057 |
-
"1001847","Stony Plain","Stony Plain,Alberta,Canada","20113","CA","City",Active
|
1058 |
-
"1001848","Swan Hills","Swan Hills,Alberta,Canada","20113","CA","City",Active
|
1059 |
-
"1001849","Taber","Taber,Alberta,Canada","20113","CA","City",Active
|
1060 |
-
"1001850","Tees","Tees,Alberta,Canada","20113","CA","City",Active
|
1061 |
-
"1001851","Three Hills","Three Hills,Alberta,Canada","20113","CA","City",Active
|
1062 |
-
"1001852","Valleyview","Valleyview,Alberta,Canada","20113","CA","City",Active
|
1063 |
-
"1001853","Vegreville","Vegreville,Alberta,Canada","20113","CA","City",Active
|
1064 |
-
"1001854","Vermilion River County No. 24","Vermilion River County No. 24,Alberta,Canada","20113","CA","Municipality",Active
|
1065 |
-
"1001855","Wainwright","Wainwright,Alberta,Canada","20113","CA","City",Active
|
1066 |
-
"1001856","Westlock","Westlock,Alberta,Canada","20113","CA","City",Active
|
1067 |
-
"1001857","Wetaskiwin","Wetaskiwin,Alberta,Canada","20113","CA","City",Active
|
1068 |
-
"1001858","Whitecourt","Whitecourt,Alberta,Canada","20113","CA","City",Active
|
1069 |
-
"1001860","100 Mile House","100 Mile House,British Columbia,Canada","20114","CA","City",Active
|
1070 |
-
"1001861","Abbotsford","Abbotsford,British Columbia,Canada","20114","CA","City",Active
|
1071 |
-
"1001862","Aldergrove","Aldergrove,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1072 |
-
"1001863","Alert Bay","Alert Bay,British Columbia,Canada","20114","CA","City",Active
|
1073 |
-
"1001864","Alexandria","Alexandria,British Columbia,Canada","20114","CA","City",Active
|
1074 |
-
"1001865","Armstrong","Armstrong,British Columbia,Canada","20114","CA","City",Active
|
1075 |
-
"1001866","Ashcroft","Ashcroft,British Columbia,Canada","20114","CA","City",Active
|
1076 |
-
"1001867","Bamfield","Bamfield,British Columbia,Canada","20114","CA","City",Active
|
1077 |
-
"1001868","Barriere","Barriere,British Columbia,Canada","20114","CA","City",Active
|
1078 |
-
"1001869","Bella Bella","Bella Bella,British Columbia,Canada","20114","CA","City",Active
|
1079 |
-
"1001870","Blue River","Blue River,British Columbia,Canada","20114","CA","City",Active
|
1080 |
-
"1001871","Brackendale","Brackendale,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1081 |
-
"1001872","Brentwood Bay","Brentwood Bay,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1082 |
-
"1001873","Burnaby","Burnaby,British Columbia,Canada","20114","CA","City",Active
|
1083 |
-
"1001874","Burns Lake","Burns Lake,British Columbia,Canada","20114","CA","City",Active
|
1084 |
-
"1001875","Campbell River","Campbell River,British Columbia,Canada","20114","CA","City",Active
|
1085 |
-
"1001876","Canyon","Canyon,British Columbia,Canada","20114","CA","City",Active
|
1086 |
-
"1001877","Castlegar","Castlegar,British Columbia,Canada","20114","CA","City",Active
|
1087 |
-
"1001878","Chase","Chase,British Columbia,Canada","20114","CA","City",Active
|
1088 |
-
"1001879","Chilliwack","Chilliwack,British Columbia,Canada","20114","CA","City",Active
|
1089 |
-
"1001880","Clearbrook","Clearbrook,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1090 |
-
"1001881","Clearwater","Clearwater,British Columbia,Canada","20114","CA","City",Active
|
1091 |
-
"1001882","Clinton","Clinton,British Columbia,Canada","20114","CA","City",Active
|
1092 |
-
"1001883","Cloverdale","Cloverdale,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1093 |
-
"1001884","Comox","Comox,British Columbia,Canada","20114","CA","City",Active
|
1094 |
-
"1001885","Coquitlam","Coquitlam,British Columbia,Canada","20114","CA","City",Active
|
1095 |
-
"1001886","Cordova Bay","Cordova Bay,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1096 |
-
"1001887","Courtenay","Courtenay,British Columbia,Canada","20114","CA","City",Active
|
1097 |
-
"1001888","Cranbrook","Cranbrook,British Columbia,Canada","20114","CA","City",Active
|
1098 |
-
"1001889","Creston","Creston,British Columbia,Canada","20114","CA","City",Active
|
1099 |
-
"1001890","Cumberland","Cumberland,British Columbia,Canada","20114","CA","City",Active
|
1100 |
-
"1001891","Dawson Creek","Dawson Creek,British Columbia,Canada","20114","CA","City",Active
|
1101 |
-
"1001892","Delta","Delta,British Columbia,Canada","20114","CA","Municipality",Active
|
1102 |
-
"1001893","Duncan","Duncan,British Columbia,Canada","20114","CA","City",Active
|
1103 |
-
"1001894","Fernie","Fernie,British Columbia,Canada","20114","CA","City",Active
|
1104 |
-
"1001895","Fort St. James","Fort St. James,British Columbia,Canada","20114","CA","City",Active
|
1105 |
-
"1001896","Fort St. John","Fort St. John,British Columbia,Canada","20114","CA","City",Active
|
1106 |
-
"1001897","Ganges","Ganges,British Columbia,Canada","20114","CA","City",Active
|
1107 |
-
"1001898","Gibsons","Gibsons,British Columbia,Canada","20114","CA","City",Active
|
1108 |
-
"1001899","Gold River","Gold River,British Columbia,Canada","20114","CA","City",Active
|
1109 |
-
"1001900","Golden","Golden,British Columbia,Canada","20114","CA","City",Active
|
1110 |
-
"1001901","Grand Forks","Grand Forks,British Columbia,Canada","20114","CA","City",Active
|
1111 |
-
"1001902","Haney","Haney,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1112 |
-
"1001903","Hope","Hope,British Columbia,Canada","20114","CA","City",Active
|
1113 |
-
"1001904","Houston","Houston,British Columbia,Canada","20114","CA","City",Active
|
1114 |
-
"1001905","Huntingdon","Huntingdon,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1115 |
-
"1001906","Invermere","Invermere,British Columbia,Canada","20114","CA","City",Active
|
1116 |
-
"1001907","Kamloops","Kamloops,British Columbia,Canada","20114","CA","City",Active
|
1117 |
-
"1001908","Kaslo","Kaslo,British Columbia,Canada","20114","CA","City",Active
|
1118 |
-
"1001909","Kelowna","Kelowna,British Columbia,Canada","20114","CA","City",Active
|
1119 |
-
"1001910","Kimberley","Kimberley,British Columbia,Canada","20114","CA","City",Active
|
1120 |
-
"1001911","Kitimat","Kitimat,British Columbia,Canada","20114","CA","City",Active
|
1121 |
-
"1001912","Ladner","Ladner,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1122 |
-
"1001913","Ladysmith","Ladysmith,British Columbia,Canada","20114","CA","City",Active
|
1123 |
-
"1001914","Lake Cowichan","Lake Cowichan,British Columbia,Canada","20114","CA","City",Active
|
1124 |
-
"1001915","Langley City","Langley City,British Columbia,Canada","20114","CA","City",Active
|
1125 |
-
"1001916","Lantzville","Lantzville,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1126 |
-
"1001917","Lillooet","Lillooet,British Columbia,Canada","20114","CA","City",Active
|
1127 |
-
"1001918","Lumby","Lumby,British Columbia,Canada","20114","CA","City",Active
|
1128 |
-
"1001919","Mackenzie","Mackenzie,British Columbia,Canada","20114","CA","City",Active
|
1129 |
-
"1001920","Maple Ridge","Maple Ridge,British Columbia,Canada","20114","CA","Municipality",Active
|
1130 |
-
"1001921","Marysville","Marysville,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1131 |
-
"1001922","Masset","Masset,British Columbia,Canada","20114","CA","City",Active
|
1132 |
-
"1001923","McBride","McBride,British Columbia,Canada","20114","CA","City",Active
|
1133 |
-
"1001924","Merritt","Merritt,British Columbia,Canada","20114","CA","City",Active
|
1134 |
-
"1001925","Mill Bay","Mill Bay,British Columbia,Canada","20114","CA","City",Active
|
1135 |
-
"1001926","Mission","Mission,British Columbia,Canada","20114","CA","City",Active
|
1136 |
-
"1001927","Nanaimo","Nanaimo,British Columbia,Canada","20114","CA","City",Active
|
1137 |
-
"1001928","Nelson","Nelson,British Columbia,Canada","20114","CA","City",Active
|
1138 |
-
"1001929","New Westminster","New Westminster,British Columbia,Canada","20114","CA","City",Active
|
1139 |
-
"1001930","North Saanich","North Saanich,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1140 |
-
"1001931","North Vancouver","North Vancouver,British Columbia,Canada","20114","CA","City",Active
|
1141 |
-
"1001932","Oliver","Oliver,British Columbia,Canada","20114","CA","City",Active
|
1142 |
-
"1001933","Osoyoos","Osoyoos,British Columbia,Canada","20114","CA","City",Active
|
1143 |
-
"1001934","Parksville","Parksville,British Columbia,Canada","20114","CA","City",Active
|
1144 |
-
"1001935","Penticton","Penticton,British Columbia,Canada","20114","CA","City",Active
|
1145 |
-
"1001936","Pitt Meadows","Pitt Meadows,British Columbia,Canada","20114","CA","Municipality",Active
|
1146 |
-
"1001937","Port Alberni","Port Alberni,British Columbia,Canada","20114","CA","City",Active
|
1147 |
-
"1001938","Port Coquitlam","Port Coquitlam,British Columbia,Canada","20114","CA","City",Active
|
1148 |
-
"1001939","Port Hardy","Port Hardy,British Columbia,Canada","20114","CA","City",Active
|
1149 |
-
"1001940","Port Mellon","Port Mellon,British Columbia,Canada","20114","CA","City",Active
|
1150 |
-
"1001941","Port Moody","Port Moody,British Columbia,Canada","20114","CA","City",Active
|
1151 |
-
"1001942","Powell River","Powell River,British Columbia,Canada","20114","CA","City",Active
|
1152 |
-
"1001943","Prince George","Prince George,British Columbia,Canada","20114","CA","City",Active
|
1153 |
-
"1001944","Prince Rupert","Prince Rupert,British Columbia,Canada","20114","CA","City",Active
|
1154 |
-
"1001945","Princeton","Princeton,British Columbia,Canada","20114","CA","City",Active
|
1155 |
-
"1001946","Queen Charlotte","Queen Charlotte,British Columbia,Canada","20114","CA","City",Active
|
1156 |
-
"1001947","Quesnel","Quesnel,British Columbia,Canada","20114","CA","City",Active
|
1157 |
-
"1001948","Revelstoke","Revelstoke,British Columbia,Canada","20114","CA","City",Active
|
1158 |
-
"1001949","Richmond","Richmond,British Columbia,Canada","20114","CA","City",Active
|
1159 |
-
"1001950","Roberts Creek","Roberts Creek,British Columbia,Canada","20114","CA","City",Active
|
1160 |
-
"1001951","Rosedale","Rosedale,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1161 |
-
"1001952","Salmon Arm","Salmon Arm,British Columbia,Canada","20114","CA","City",Active
|
1162 |
-
"1001953","Salt Spring Island","Salt Spring Island,British Columbia,Canada","20114","CA","Municipality",Active
|
1163 |
-
"1001954","Sardis","Sardis,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1164 |
-
"1001955","Shawnigan Lake","Shawnigan Lake,British Columbia,Canada","20114","CA","City",Active
|
1165 |
-
"1001956","Sicamous","Sicamous,British Columbia,Canada","20114","CA","City",Active
|
1166 |
-
"1001957","Sidney","Sidney,British Columbia,Canada","20114","CA","City",Active
|
1167 |
-
"1001958","Smithers","Smithers,British Columbia,Canada","20114","CA","City",Active
|
1168 |
-
"1001959","South Slocan","South Slocan,British Columbia,Canada","20114","CA","City",Active
|
1169 |
-
"1001960","Sparwood","Sparwood,British Columbia,Canada","20114","CA","City",Active
|
1170 |
-
"1001961","Squamish","Squamish,British Columbia,Canada","20114","CA","City",Active
|
1171 |
-
"1001962","Steveston","Steveston,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1172 |
-
"1001963","Summerland","Summerland,British Columbia,Canada","20114","CA","City",Active
|
1173 |
-
"1001964","Surrey","Surrey,British Columbia,Canada","20114","CA","City",Active
|
1174 |
-
"1001965","Terrace","Terrace,British Columbia,Canada","20114","CA","City",Active
|
1175 |
-
"1001966","Trail","Trail,British Columbia,Canada","20114","CA","City",Active
|
1176 |
-
"1001967","Tsawwassen","Tsawwassen,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1177 |
-
"1001968","Ucluelet","Ucluelet,British Columbia,Canada","20114","CA","City",Active
|
1178 |
-
"1001969","Valemount","Valemount,British Columbia,Canada","20114","CA","City",Active
|
1179 |
-
"1001970","Vancouver","Vancouver,British Columbia,Canada","20114","CA","City",Active
|
1180 |
-
"1001971","Vanderhoof","Vanderhoof,British Columbia,Canada","20114","CA","City",Active
|
1181 |
-
"1001972","Vernon","Vernon,British Columbia,Canada","20114","CA","City",Active
|
1182 |
-
"1001973","Victoria","Victoria,British Columbia,Canada","20114","CA","City",Active
|
1183 |
-
"1001974","Wellington","Wellington,British Columbia,Canada","20114","CA","Neighborhood",Active
|
1184 |
-
"1001975","West Vancouver","West Vancouver,British Columbia,Canada","20114","CA","City",Active
|
1185 |
-
"1001976","Whistler","Whistler,British Columbia,Canada","20114","CA","City",Active
|
1186 |
-
"1001977","White Rock","White Rock,British Columbia,Canada","20114","CA","City",Active
|
1187 |
-
"1001978","Williams Lake","Williams Lake,British Columbia,Canada","20114","CA","City",Active
|
1188 |
-
"1001979","Altona","Altona,Manitoba,Canada","20115","CA","City",Active
|
1189 |
-
"1001980","Arborg","Arborg,Manitoba,Canada","20115","CA","City",Active
|
1190 |
-
"1001981","Ashern","Ashern,Manitoba,Canada","20115","CA","City",Active
|
1191 |
-
"1001982","Austin","Austin,Manitoba,Canada","20115","CA","City",Active
|
1192 |
-
"1001983","Beausejour","Beausejour,Manitoba,Canada","20115","CA","City",Active
|
1193 |
-
"1001984","Boissevain","Boissevain,Manitoba,Canada","20115","CA","City",Active
|
1194 |
-
"1001985","Brandon","Brandon,Manitoba,Canada","20115","CA","City",Active
|
1195 |
-
"1001986","Carberry","Carberry,Manitoba,Canada","20115","CA","City",Active
|
1196 |
-
"1001987","Carman","Carman,Manitoba,Canada","20115","CA","City",Active
|
1197 |
-
"1001988","Cartier","Cartier,Manitoba,Canada","20115","CA","City",Active
|
1198 |
-
"1001989","Cranberry Portage","Cranberry Portage,Manitoba,Canada","20115","CA","City",Active
|
1199 |
-
"1001990","Dauphin","Dauphin,Manitoba,Canada","20115","CA","City",Active
|
1200 |
-
"1001991","Deloraine","Deloraine,Manitoba,Canada","20115","CA","City",Active
|
1201 |
-
"1001992","Dugald","Dugald,Manitoba,Canada","20115","CA","Neighborhood",Active
|
1202 |
-
"1001993","Elie","Elie,Manitoba,Canada","20115","CA","City",Active
|
1203 |
-
"1001994","Elphinstone","Elphinstone,Manitoba,Canada","20115","CA","City",Active
|
1204 |
-
"1001995","Eriksdale","Eriksdale,Manitoba,Canada","20115","CA","City",Active
|
1205 |
-
"1001996","Fisher Branch","Fisher Branch,Manitoba,Canada","20115","CA","City",Active
|
1206 |
-
"1001997","Flin Flon","Flin Flon,Manitoba,Canada","20115","CA","City",Active
|
1207 |
-
"1001998","Gimli","Gimli,Manitoba,Canada","20115","CA","City",Active
|
1208 |
-
"1001999","Glenboro","Glenboro,Manitoba,Canada","20115","CA","City",Active
|
1209 |
-
"1002000","Grosse Isle","Grosse Isle,Manitoba,Canada","20115","CA","City",Active
|
1210 |
-
"1002001","Gypsumville","Gypsumville,Manitoba,Canada","20115","CA","City",Active
|
1211 |
-
"1002002","Killarney","Killarney,Manitoba,Canada","20115","CA","City",Active
|
1212 |
-
"1002003","Lac du Bonnet","Lac du Bonnet,Manitoba,Canada","20115","CA","City",Active
|
1213 |
-
"1002004","Lorette","Lorette,Manitoba,Canada","20115","CA","City",Active
|
1214 |
-
"1002005","Lundar","Lundar,Manitoba,Canada","20115","CA","City",Active
|
1215 |
-
"1002006","MacGregor","MacGregor,Manitoba,Canada","20115","CA","City",Active
|
1216 |
-
"1002007","Manitou","Manitou,Manitoba,Canada","20115","CA","City",Active
|
1217 |
-
"1002008","McCreary","McCreary,Manitoba,Canada","20115","CA","City",Active
|
1218 |
-
"1002009","Miami","Miami,Manitoba,Canada","20115","CA","City",Active
|
1219 |
-
"1002010","Minnedosa","Minnedosa,Manitoba,Canada","20115","CA","City",Active
|
1220 |
-
"1002011","Moosehorn","Moosehorn,Manitoba,Canada","20115","CA","City",Active
|
1221 |
-
"1002012","Morden","Morden,Manitoba,Canada","20115","CA","City",Active
|
1222 |
-
"1002013","Morris","Morris,Manitoba,Canada","20115","CA","City",Active
|
1223 |
-
"1002014","Neepawa","Neepawa,Manitoba,Canada","20115","CA","City",Active
|
1224 |
-
"1002015","Nelson House","Nelson House,Manitoba,Canada","20115","CA","City",Active
|
1225 |
-
"1002016","Newton","Newton,Manitoba,Canada","20115","CA","City",Active
|
1226 |
-
"1002017","Niverville","Niverville,Manitoba,Canada","20115","CA","City",Active
|
1227 |
-
"1002018","Oak Bluff","Oak Bluff,Manitoba,Canada","20115","CA","City",Active
|
1228 |
-
"1002019","Onanole","Onanole,Manitoba,Canada","20115","CA","City",Active
|
1229 |
-
"1002020","Otterburne","Otterburne,Manitoba,Canada","20115","CA","City",Active
|
1230 |
-
"1002021","Pinawa","Pinawa,Manitoba,Canada","20115","CA","City",Active
|
1231 |
-
"1002022","Pine Falls","Pine Falls,Manitoba,Canada","20115","CA","Neighborhood",Active
|
1232 |
-
"1002023","Portage la Prairie","Portage la Prairie,Manitoba,Canada","20115","CA","City",Active
|
1233 |
-
"1002024","Rivers","Rivers,Manitoba,Canada","20115","CA","City",Active
|
1234 |
-
"1002025","Russell","Russell,Manitoba,Canada","20115","CA","City",Active
|
1235 |
-
"1002026","Selkirk","Selkirk,Manitoba,Canada","20115","CA","City",Active
|
1236 |
-
"1002027","Shoal Lake","Shoal Lake,Manitoba,Canada","20115","CA","City",Active
|
1237 |
-
"1002028","Snow Lake","Snow Lake,Manitoba,Canada","20115","CA","City",Active
|
1238 |
-
"1002029","Souris","Souris,Manitoba,Canada","20115","CA","City",Active
|
1239 |
-
"1002030","St-Lazare","St-Lazare,Manitoba,Canada","20115","CA","City",Active
|
1240 |
-
"1002031","Ste. Agathe","Ste. Agathe,Manitoba,Canada","20115","CA","City",Active
|
1241 |
-
"1002032","Ste. Anne","Ste. Anne,Manitoba,Canada","20115","CA","City",Active
|
1242 |
-
"1002033","Steinbach","Steinbach,Manitoba,Canada","20115","CA","City",Active
|
1243 |
-
"1002034","Stonewall","Stonewall,Manitoba,Canada","20115","CA","City",Active
|
1244 |
-
"1002035","Stony Mountain","Stony Mountain,Manitoba,Canada","20115","CA","City",Active
|
1245 |
-
"1002036","Swan Lake","Swan Lake,Manitoba,Canada","20115","CA","City",Active
|
1246 |
-
"1002037","Swan River","Swan River,Manitoba,Canada","20115","CA","City",Active
|
1247 |
-
"1002038","Teulon","Teulon,Manitoba,Canada","20115","CA","City",Active
|
1248 |
-
"1002039","The Pas","The Pas,Manitoba,Canada","20115","CA","City",Active
|
1249 |
-
"1002040","Thompson","Thompson,Manitoba,Canada","20115","CA","City",Active
|
1250 |
-
"1002041","Treherne","Treherne,Manitoba,Canada","20115","CA","City",Active
|
1251 |
-
"1002042","Virden","Virden,Manitoba,Canada","20115","CA","City",Active
|
1252 |
-
"1002043","Wawanesa","Wawanesa,Manitoba,Canada","20115","CA","City",Active
|
1253 |
-
"1002044","Winkler","Winkler,Manitoba,Canada","20115","CA","City",Active
|
1254 |
-
"1002045","Winnipeg","Winnipeg,Manitoba,Canada","20115","CA","City",Active
|
1255 |
-
"1002046","Atholville","Atholville,New Brunswick,Canada","20116","CA","City",Active
|
1256 |
-
"1002047","Bathurst","Bathurst,New Brunswick,Canada","20116","CA","City",Active
|
1257 |
-
"1002048","Beresford","Beresford,New Brunswick,Canada","20116","CA","City",Active
|
1258 |
-
"1002049","Bloomfield Ridge","Bloomfield Ridge,New Brunswick,Canada","20116","CA","City",Active
|
1259 |
-
"1002050","Bouctouche","Bouctouche,New Brunswick,Canada","20116","CA","City",Active
|
1260 |
-
"1002051","Clair","Clair,New Brunswick,Canada","20116","CA","City",Active
|
1261 |
-
"1002052","West Isles","West Isles,New Brunswick,Canada","20116","CA","Municipality",Active
|
1262 |
-
"1002053","Dieppe","Dieppe,New Brunswick,Canada","20116","CA","City",Active
|
1263 |
-
"1002054","Doaktown","Doaktown,New Brunswick,Canada","20116","CA","City",Active
|
1264 |
-
"1002055","Edmundston","Edmundston,New Brunswick,Canada","20116","CA","City",Active
|
1265 |
-
"1002056","Florenceville","Florenceville,New Brunswick,Canada","20116","CA","Neighborhood",Active
|
1266 |
-
"1002057","Fredericton","Fredericton,New Brunswick,Canada","20116","CA","City",Active
|
1267 |
-
"1002058","Juniper","Juniper,New Brunswick,Canada","20116","CA","City",Active
|
1268 |
-
"1002059","Memramcook","Memramcook,New Brunswick,Canada","20116","CA","City",Active
|
1269 |
-
"1002060","Miramichi","Miramichi,New Brunswick,Canada","20116","CA","City",Active
|
1270 |
-
"1002061","Moncton","Moncton,New Brunswick,Canada","20116","CA","City",Active
|
1271 |
-
"1002062","Mount Pisgah","Mount Pisgah,New Brunswick,Canada","20116","CA","City",Active
|
1272 |
-
"1002063","Newcastle","Newcastle,New Brunswick,Canada","20116","CA","Neighborhood",Active
|
1273 |
-
"1002064","Nigadoo","Nigadoo,New Brunswick,Canada","20116","CA","City",Active
|
1274 |
-
"1002065","Oromocto","Oromocto,New Brunswick,Canada","20116","CA","City",Active
|
1275 |
-
"1002066","Paquetville","Paquetville,New Brunswick,Canada","20116","CA","City",Active
|
1276 |
-
"1002067","Quispamsis","Quispamsis,New Brunswick,Canada","20116","CA","City",Active
|
1277 |
-
"1002068","Rexton","Rexton,New Brunswick,Canada","20116","CA","City",Active
|
1278 |
-
"1002069","Richibucto","Richibucto,New Brunswick,Canada","20116","CA","City",Active
|
1279 |
-
"1002070","Richibucto Road","Richibucto Road,New Brunswick,Canada","20116","CA","City",Active
|
1280 |
-
"1002071","Rothesay","Rothesay,New Brunswick,Canada","20116","CA","City",Active
|
1281 |
-
"1002072","Sackville","Sackville,New Brunswick,Canada","20116","CA","City",Active
|
1282 |
-
"1002073","Shediac","Shediac,New Brunswick,Canada","20116","CA","City",Active
|
1283 |
-
"1002074","Shippagan","Shippagan,New Brunswick,Canada","20116","CA","City",Active
|
1284 |
-
"1002075","Saint-Basile","Saint-Basile,New Brunswick,Canada","20116","CA","Municipality",Active
|
1285 |
-
"1002076","Saint George","Saint George,New Brunswick,Canada","20116","CA","City",Active
|
1286 |
-
"1002077","Saint John","Saint John,New Brunswick,Canada","20116","CA","City",Active
|
1287 |
-
"1002078","Saint-Louis de Kent","Saint-Louis de Kent,New Brunswick,Canada","20116","CA","City",Active
|
1288 |
-
"1002079","Saint Stephen","Saint Stephen,New Brunswick,Canada","20116","CA","City",Active
|
1289 |
-
"1002080","Saint-Paul","Saint-Paul,New Brunswick,Canada","20116","CA","City",Active
|
1290 |
-
"1002081","Saint-Quentin","Saint-Quentin,New Brunswick,Canada","20116","CA","City",Active
|
1291 |
-
"1002082","Sussex","Sussex,New Brunswick,Canada","20116","CA","City",Active
|
1292 |
-
"1002083","Tracadie-Sheila","Tracadie-Sheila,New Brunswick,Canada","20116","CA","City",Active
|
1293 |
-
"1002084","Welshpool","Welshpool,New Brunswick,Canada","20116","CA","City",Active
|
1294 |
-
"1002085","Woodstock","Woodstock,New Brunswick,Canada","20116","CA","City",Active
|
1295 |
-
"1002086","Baie Verte","Baie Verte,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1296 |
-
"1002087","Beaumont","Beaumont,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1297 |
-
"1002088","Catalina","Catalina,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1298 |
-
"1002089","Clarenville","Clarenville,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1299 |
-
"1002090","Corner Brook","Corner Brook,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1300 |
-
"1002091","Francois","Francois,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1301 |
-
"1002092","Gander","Gander,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1302 |
-
"1002093","Happy Valley-Goose Bay","Happy Valley-Goose Bay,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1303 |
-
"1002094","Grand Falls","Grand Falls,Newfoundland and Labrador,Canada","20117","CA","Neighborhood",Active
|
1304 |
-
"1002095","Labrador City","Labrador City,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1305 |
-
"1002096","Mount Pearl","Mount Pearl,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1306 |
-
"1002097","Postville","Postville,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1307 |
-
"1002098","Shoal Harbour","Shoal Harbour,Newfoundland and Labrador,Canada","20117","CA","Neighborhood",Active
|
1308 |
-
"1002099","St. John's","St. John's,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1309 |
-
"1002100","Stephenville","Stephenville,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1310 |
-
"1002102","Valleyfield","Valleyfield,Newfoundland and Labrador,Canada","20117","CA","Neighborhood",Active
|
1311 |
-
"1002103","Wabush","Wabush,Newfoundland and Labrador,Canada","20117","CA","City",Active
|
1312 |
-
"1002104","Windsor","Windsor,Newfoundland and Labrador,Canada","20117","CA","Neighborhood",Active
|
1313 |
-
"1002105","Amherst","Amherst,Nova Scotia,Canada","20118","CA","City",Active
|
1314 |
-
"1002106","Antigonish","Antigonish,Nova Scotia,Canada","20118","CA","City",Active
|
1315 |
-
"1002107","Barrington","Barrington,Nova Scotia,Canada","20118","CA","City",Active
|
1316 |
-
"1002108","Bedford","Bedford,Nova Scotia,Canada","20118","CA","City",Active
|
1317 |
-
"1002109","Bridgewater","Bridgewater,Nova Scotia,Canada","20118","CA","City",Active
|
1318 |
-
"1002110","Dartmouth","Dartmouth,Nova Scotia,Canada","20118","CA","City",Active
|
1319 |
-
"1002111","Digby","Digby,Nova Scotia,Canada","20118","CA","City",Active
|
1320 |
-
"1002112","Enfield","Enfield,Nova Scotia,Canada","20118","CA","City",Active
|
1321 |
-
"1002113","Halifax","Halifax,Nova Scotia,Canada","20118","CA","Municipality",Active
|
1322 |
-
"1002114","Hubbards","Hubbards,Nova Scotia,Canada","20118","CA","City",Active
|
1323 |
-
"1002115","Kentville","Kentville,Nova Scotia,Canada","20118","CA","City",Active
|
1324 |
-
"1002116","Lawrencetown","Lawrencetown,Nova Scotia,Canada","20118","CA","City",Active
|
1325 |
-
"1002117","Mahone Bay","Mahone Bay,Nova Scotia,Canada","20118","CA","City",Active
|
1326 |
-
"1002118","New Glasgow","New Glasgow,Nova Scotia,Canada","20118","CA","City",Active
|
1327 |
-
"1002119","New Minas","New Minas,Nova Scotia,Canada","20118","CA","City",Active
|
1328 |
-
"1002120","North Sydney","North Sydney,Nova Scotia,Canada","20118","CA","City",Active
|
1329 |
-
"1002121","Port Hawkesbury","Port Hawkesbury,Nova Scotia,Canada","20118","CA","City",Active
|
1330 |
-
"1002122","Sheet Harbour","Sheet Harbour,Nova Scotia,Canada","20118","CA","City",Active
|
1331 |
-
"1002123","Stellarton","Stellarton,Nova Scotia,Canada","20118","CA","City",Active
|
1332 |
-
"1002124","Sydney","Sydney,Nova Scotia,Canada","20118","CA","City",Active
|
1333 |
-
"1002125","Terence Bay","Terence Bay,Nova Scotia,Canada","20118","CA","City",Active
|
1334 |
-
"1002126","Troy","Troy,Nova Scotia,Canada","20118","CA","City",Active
|
1335 |
-
"1002127","Truro","Truro,Nova Scotia,Canada","20118","CA","City",Active
|
1336 |
-
"1002128","West Bay","West Bay,Nova Scotia,Canada","20118","CA","City",Active
|
1337 |
-
"1002129","Weymouth","Weymouth,Nova Scotia,Canada","20118","CA","City",Active
|
1338 |
-
"1002130","Windsor","Windsor,Nova Scotia,Canada","20118","CA","City",Active
|
1339 |
-
"1002131","Wolfville","Wolfville,Nova Scotia,Canada","20118","CA","City",Active
|
1340 |
-
"1002132","Yarmouth","Yarmouth,Nova Scotia,Canada","20118","CA","City",Active
|
1341 |
-
"1002133","Fort Providence","Fort Providence,Northwest Territories,Canada","20119","CA","City",Active
|
1342 |
-
"1002134","Fort Simpson","Fort Simpson,Northwest Territories,Canada","20119","CA","City",Active
|
1343 |
-
"1002135","Inuvik","Inuvik,Northwest Territories,Canada","20119","CA","City",Active
|
1344 |
-
"1002136","Lutselk'e","Lutselk'e,Northwest Territories,Canada","20119","CA","City",Active
|
1345 |
-
"1002137","Norman Wells","Norman Wells,Northwest Territories,Canada","20119","CA","City",Active
|
1346 |
-
"1002138","Rae","Rae,Northwest Territories,Canada","20119","CA","City",Active
|
1347 |
-
"1002139","Wekweeti","Wekweeti,Northwest Territories,Canada","20119","CA","City",Active
|
1348 |
-
"1002140","Trout Lake","Trout Lake,Northwest Territories,Canada","20119","CA","City",Active
|
1349 |
-
"1002141","Wrigley","Wrigley,Northwest Territories,Canada","20119","CA","City",Active
|
1350 |
-
"1002142","Yellowknife","Yellowknife,Northwest Territories,Canada","20119","CA","City",Active
|
1351 |
-
"1002143","Arviat","Arviat,Nunavut,Canada","20120","CA","City",Active
|
1352 |
-
"1002144","Baker Lake","Baker Lake,Nunavut,Canada","20120","CA","City",Active
|
1353 |
-
"1002145","Cambridge Bay","Cambridge Bay,Nunavut,Canada","20120","CA","City",Active
|
1354 |
-
"1002146","Cape Dorset","Cape Dorset,Nunavut,Canada","20120","CA","City",Active
|
1355 |
-
"1002147","Clyde River","Clyde River,Nunavut,Canada","20120","CA","City",Active
|
1356 |
-
"1002148","Gjoa Haven","Gjoa Haven,Nunavut,Canada","20120","CA","City",Active
|
1357 |
-
"1002149","Igloolik","Igloolik,Nunavut,Canada","20120","CA","City",Active
|
1358 |
-
"1002150","Iqaluit","Iqaluit,Nunavut,Canada","20120","CA","City",Active
|
1359 |
-
"1002151","Pangnirtung","Pangnirtung,Nunavut,Canada","20120","CA","City",Active
|
1360 |
-
"1002152","Pond Inlet","Pond Inlet,Nunavut,Canada","20120","CA","City",Active
|
1361 |
-
"1002153","Rankin Inlet","Rankin Inlet,Nunavut,Canada","20120","CA","City",Active
|
1362 |
-
"1002154","Acton","Acton,Ontario,Canada","20121","CA","City",Active
|
1363 |
-
"1002155","Agincourt","Agincourt,Ontario,Canada","20121","CA","Neighborhood",Active
|
1364 |
-
"1002156","Ajax","Ajax,Ontario,Canada","20121","CA","City",Active
|
1365 |
-
"1002157","Alexandria","Alexandria,Ontario,Canada","20121","CA","City",Active
|
1366 |
-
"1002158","Alliston","Alliston,Ontario,Canada","20121","CA","Neighborhood",Active
|
1367 |
-
"1002159","Almonte","Almonte,Ontario,Canada","20121","CA","Neighborhood",Active
|
1368 |
-
"1002160","Amherstburg","Amherstburg,Ontario,Canada","20121","CA","City",Active
|
1369 |
-
"1002161","Ancaster","Ancaster,Ontario,Canada","20121","CA","Neighborhood",Active
|
1370 |
-
"1002162","Angling Lake","Angling Lake,Ontario,Canada","20121","CA","City",Active
|
1371 |
-
"1002163","Angus","Angus,Ontario,Canada","20121","CA","City",Active
|
1372 |
-
"1002164","Apsley","Apsley,Ontario,Canada","20121","CA","City",Active
|
1373 |
-
"1002165","Arnprior","Arnprior,Ontario,Canada","20121","CA","City",Active
|
1374 |
-
"1002166","Arva","Arva,Ontario,Canada","20121","CA","City",Active
|
1375 |
-
"1002167","Atikokan","Atikokan,Ontario,Canada","20121","CA","City",Active
|
1376 |
-
"1002168","Aurora","Aurora,Ontario,Canada","20121","CA","City",Active
|
1377 |
-
"1002169","Aylmer","Aylmer,Ontario,Canada","20121","CA","City",Active
|
1378 |
-
"1002170","Ayr","Ayr,Ontario,Canada","20121","CA","City",Active
|
1379 |
-
"1002171","Baden","Baden,Ontario,Canada","20121","CA","City",Active
|
1380 |
-
"1002172","Balmertown","Balmertown,Ontario,Canada","20121","CA","Neighborhood",Active
|
1381 |
-
"1002173","Bancroft","Bancroft,Ontario,Canada","20121","CA","City",Active
|
1382 |
-
"1002174","Bannockburn","Bannockburn,Ontario,Canada","20121","CA","City",Active
|
1383 |
-
"1002175","Barrie","Barrie,Ontario,Canada","20121","CA","City",Active
|
1384 |
-
"1002176","Barry's Bay","Barry's Bay,Ontario,Canada","20121","CA","City",Active
|
1385 |
-
"1002177","Barwick","Barwick,Ontario,Canada","20121","CA","City",Active
|
1386 |
-
"1002178","Beamsville","Beamsville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1387 |
-
"1002179","Beaverton","Beaverton,Ontario,Canada","20121","CA","City",Active
|
1388 |
-
"1002180","Belleville","Belleville,Ontario,Canada","20121","CA","City",Active
|
1389 |
-
"1002181","Bethany","Bethany,Ontario,Canada","20121","CA","Neighborhood",Active
|
1390 |
-
"1002182","Big Trout Lake","Big Trout Lake,Ontario,Canada","20121","CA","City",Active
|
1391 |
-
"1002183","Blenheim","Blenheim,Ontario,Canada","20121","CA","Neighborhood",Active
|
1392 |
-
"1002184","Blind River","Blind River,Ontario,Canada","20121","CA","City",Active
|
1393 |
-
"1002185","Bloomfield","Bloomfield,Ontario,Canada","20121","CA","City",Active
|
1394 |
-
"1002186","Bolton","Bolton,Ontario,Canada","20121","CA","Neighborhood",Active
|
1395 |
-
"1002187","Bonfield","Bonfield,Ontario,Canada","20121","CA","City",Active
|
1396 |
-
"1002188","Bowmanville","Bowmanville,Ontario,Canada","20121","CA","City",Active
|
1397 |
-
"1002189","Bracebridge","Bracebridge,Ontario,Canada","20121","CA","City",Active
|
1398 |
-
"1002190","Bramalea","Bramalea,Ontario,Canada","20121","CA","Neighborhood",Active
|
1399 |
-
"1002191","Brampton","Brampton,Ontario,Canada","20121","CA","City",Active
|
1400 |
-
"1002192","Brantford","Brantford,Ontario,Canada","20121","CA","City",Active
|
1401 |
-
"1002193","Selwyn","Selwyn,Ontario,Canada","20121","CA","Municipality",Active
|
1402 |
-
"1002194","Brockville","Brockville,Ontario,Canada","20121","CA","City",Active
|
1403 |
-
"1002195","Burgessville","Burgessville,Ontario,Canada","20121","CA","City",Active
|
1404 |
-
"1002196","Burk's Falls","Burk's Falls,Ontario,Canada","20121","CA","City",Active
|
1405 |
-
"1002197","Burlington","Burlington,Ontario,Canada","20121","CA","City",Active
|
1406 |
-
"1002198","Cache Bay","Cache Bay,Ontario,Canada","20121","CA","City",Active
|
1407 |
-
"1002199","Caledon","Caledon,Ontario,Canada","20121","CA","City",Active
|
1408 |
-
"1002200","Cambridge","Cambridge,Ontario,Canada","20121","CA","City",Active
|
1409 |
-
"1002201","Campbellford","Campbellford,Ontario,Canada","20121","CA","City",Active
|
1410 |
-
"1002202","Campbellville","Campbellville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1411 |
-
"1002203","Capreol","Capreol,Ontario,Canada","20121","CA","City",Active
|
1412 |
-
"1002204","Carleton Place","Carleton Place,Ontario,Canada","20121","CA","City",Active
|
1413 |
-
"1002205","Carlisle","Carlisle,Ontario,Canada","20121","CA","Neighborhood",Active
|
1414 |
-
"1002206","Carp","Carp,Ontario,Canada","20121","CA","Neighborhood",Active
|
1415 |
-
"1002207","Casselman","Casselman,Ontario,Canada","20121","CA","City",Active
|
1416 |
-
"1002208","Cayuga","Cayuga,Ontario,Canada","20121","CA","Neighborhood",Active
|
1417 |
-
"1002209","Chalk River","Chalk River,Ontario,Canada","20121","CA","City",Active
|
1418 |
-
"1002210","Chapleau","Chapleau,Ontario,Canada","20121","CA","City",Active
|
1419 |
-
"1002211","Chatham","Chatham,Ontario,Canada","20121","CA","Neighborhood",Active
|
1420 |
-
"1002212","Chatsworth","Chatsworth,Ontario,Canada","20121","CA","City",Active
|
1421 |
-
"1002213","Chelmsford","Chelmsford,Ontario,Canada","20121","CA","Neighborhood",Active
|
1422 |
-
"1002214","Chesley","Chesley,Ontario,Canada","20121","CA","City",Active
|
1423 |
-
"1002215","Chesterville","Chesterville,Ontario,Canada","20121","CA","City",Active
|
1424 |
-
"1002216","Churchville","Churchville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1425 |
-
"1002217","Clarence Creek","Clarence Creek,Ontario,Canada","20121","CA","City",Active
|
1426 |
-
"1002218","Clarkson","Clarkson,Ontario,Canada","20121","CA","Neighborhood",Active
|
1427 |
-
"1002219","Clifford","Clifford,Ontario,Canada","20121","CA","Neighborhood",Active
|
1428 |
-
"1002220","Clinton","Clinton,Ontario,Canada","20121","CA","City",Active
|
1429 |
-
"1002221","Cobden","Cobden,Ontario,Canada","20121","CA","City",Active
|
1430 |
-
"1002222","Cobourg","Cobourg,Ontario,Canada","20121","CA","City",Active
|
1431 |
-
"1002223","Cochrane","Cochrane,Ontario,Canada","20121","CA","City",Active
|
1432 |
-
"1002224","Colborne","Colborne,Ontario,Canada","20121","CA","City",Active
|
1433 |
-
"1002225","Coldwater","Coldwater,Ontario,Canada","20121","CA","City",Active
|
1434 |
-
"1002226","Collingwood","Collingwood,Ontario,Canada","20121","CA","City",Active
|
1435 |
-
"1002227","Comber","Comber,Ontario,Canada","20121","CA","City",Active
|
1436 |
-
"1002228","Concord","Concord,Ontario,Canada","20121","CA","Neighborhood",Active
|
1437 |
-
"1002229","Cookstown","Cookstown,Ontario,Canada","20121","CA","Neighborhood",Active
|
1438 |
-
"1002230","Cooksville","Cooksville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1439 |
-
"1002231","Copper Cliff","Copper Cliff,Ontario,Canada","20121","CA","Neighborhood",Active
|
1440 |
-
"1002232","Cornwall","Cornwall,Ontario,Canada","20121","CA","City",Active
|
1441 |
-
"1002233","Cottam","Cottam,Ontario,Canada","20121","CA","Neighborhood",Active
|
1442 |
-
"1002234","Courtice","Courtice,Ontario,Canada","20121","CA","City",Active
|
1443 |
-
"1002235","Creemore","Creemore,Ontario,Canada","20121","CA","City",Active
|
1444 |
-
"1002236","Deep River","Deep River,Ontario,Canada","20121","CA","City",Active
|
1445 |
-
"1002237","Deer Lake Indian Reserve","Deer Lake Indian Reserve,Ontario,Canada","20121","CA","City",Active
|
1446 |
-
"1002238","Delta","Delta,Ontario,Canada","20121","CA","City",Active
|
1447 |
-
"1002239","Deseronto","Deseronto,Ontario,Canada","20121","CA","City",Active
|
1448 |
-
"1002240","Don Mills","Don Mills,Ontario,Canada","20121","CA","Neighborhood",Active
|
1449 |
-
"1002241","Dorset","Dorset,Ontario,Canada","20121","CA","City",Active
|
1450 |
-
"1002242","Dryden","Dryden,Ontario,Canada","20121","CA","City",Active
|
1451 |
-
"1002243","Dublin","Dublin,Ontario,Canada","20121","CA","City",Active
|
1452 |
-
"1002244","Dubreuilville","Dubreuilville,Ontario,Canada","20121","CA","City",Active
|
1453 |
-
"1002245","Dunchurch","Dunchurch,Ontario,Canada","20121","CA","City",Active
|
1454 |
-
"1002246","Dundas","Dundas,Ontario,Canada","20121","CA","Neighborhood",Active
|
1455 |
-
"1002247","Durham","Durham,Ontario,Canada","20121","CA","City",Active
|
1456 |
-
"1002248","Earlton","Earlton,Ontario,Canada","20121","CA","City",Active
|
1457 |
-
"1002249","East York","East York,Ontario,Canada","20121","CA","Neighborhood",Active
|
1458 |
-
"1002250","Eganville","Eganville,Ontario,Canada","20121","CA","City",Active
|
1459 |
-
"1002251","Elgin","Elgin,Ontario,Canada","20121","CA","City",Active
|
1460 |
-
"1002252","Elliot Lake","Elliot Lake,Ontario,Canada","20121","CA","City",Active
|
1461 |
-
"1002253","Elmira","Elmira,Ontario,Canada","20121","CA","City",Active
|
1462 |
-
"1002254","Elora","Elora,Ontario,Canada","20121","CA","City",Active
|
1463 |
-
"1002255","Embrun","Embrun,Ontario,Canada","20121","CA","City",Active
|
1464 |
-
"1002256","Englehart","Englehart,Ontario,Canada","20121","CA","City",Active
|
1465 |
-
"1002257","Erin","Erin,Ontario,Canada","20121","CA","City",Active
|
1466 |
-
"1002258","Espanola","Espanola,Ontario,Canada","20121","CA","City",Active
|
1467 |
-
"1002259","Essex","Essex,Ontario,Canada","20121","CA","City",Active
|
1468 |
-
"1002260","Etobicoke","Etobicoke,Ontario,Canada","20121","CA","Neighborhood",Active
|
1469 |
-
"1002261","Exeter","Exeter,Ontario,Canada","20121","CA","City",Active
|
1470 |
-
"1002262","Fenelon Falls","Fenelon Falls,Ontario,Canada","20121","CA","Neighborhood",Active
|
1471 |
-
"1002263","Fenwick","Fenwick,Ontario,Canada","20121","CA","Neighborhood",Active
|
1472 |
-
"1002264","Fergus","Fergus,Ontario,Canada","20121","CA","City",Active
|
1473 |
-
"1002265","Flamborough","Flamborough,Ontario,Canada","20121","CA","Neighborhood",Active
|
1474 |
-
"1002266","Fonthill","Fonthill,Ontario,Canada","20121","CA","Neighborhood",Active
|
1475 |
-
"1002267","Forest","Forest,Ontario,Canada","20121","CA","Neighborhood",Active
|
1476 |
-
"1002268","Frankford","Frankford,Ontario,Canada","20121","CA","Neighborhood",Active
|
1477 |
-
"1002269","Fort Erie","Fort Erie,Ontario,Canada","20121","CA","City",Active
|
1478 |
-
"1002270","Fort Frances","Fort Frances,Ontario,Canada","20121","CA","City",Active
|
1479 |
-
"1002271","Fort Severn","Fort Severn,Ontario,Canada","20121","CA","City",Active
|
1480 |
-
"1002272","Gananoque","Gananoque,Ontario,Canada","20121","CA","City",Active
|
1481 |
-
"1002273","Georgetown","Georgetown,Ontario,Canada","20121","CA","City",Active
|
1482 |
-
"1002274","Geraldton","Geraldton,Ontario,Canada","20121","CA","City",Active
|
1483 |
-
"1002275","Glencoe","Glencoe,Ontario,Canada","20121","CA","City",Active
|
1484 |
-
"1002276","Gloucester","Gloucester,Ontario,Canada","20121","CA","Neighborhood",Active
|
1485 |
-
"1002277","Goderich","Goderich,Ontario,Canada","20121","CA","City",Active
|
1486 |
-
"1002278","Gormley","Gormley,Ontario,Canada","20121","CA","City",Active
|
1487 |
-
"1002279","Grand Valley","Grand Valley,Ontario,Canada","20121","CA","City",Active
|
1488 |
-
"1002280","Gravenhurst","Gravenhurst,Ontario,Canada","20121","CA","City",Active
|
1489 |
-
"1002281","Green Valley","Green Valley,Ontario,Canada","20121","CA","City",Active
|
1490 |
-
"1002282","Grimsby","Grimsby,Ontario,Canada","20121","CA","City",Active
|
1491 |
-
"1002283","Guelph","Guelph,Ontario,Canada","20121","CA","City",Active
|
1492 |
-
"1002284","Hagersville","Hagersville,Ontario,Canada","20121","CA","City",Active
|
1493 |
-
"1002285","Haley Station","Haley Station,Ontario,Canada","20121","CA","City",Active
|
1494 |
-
"1002286","Haliburton","Haliburton,Ontario,Canada","20121","CA","City",Active
|
1495 |
-
"1002287","Hamilton","Hamilton,Ontario,Canada","20121","CA","City",Active
|
1496 |
-
"1002288","Hanmer","Hanmer,Ontario,Canada","20121","CA","Neighborhood",Active
|
1497 |
-
"1002289","Hanover","Hanover,Ontario,Canada","20121","CA","City",Active
|
1498 |
-
"1002290","Harrow","Harrow,Ontario,Canada","20121","CA","Neighborhood",Active
|
1499 |
-
"1002291","Hawkesbury","Hawkesbury,Ontario,Canada","20121","CA","City",Active
|
1500 |
-
"1002292","Hearst","Hearst,Ontario,Canada","20121","CA","City",Active
|
1501 |
-
"1002293","Heron Bay","Heron Bay,Ontario,Canada","20121","CA","City",Active
|
1502 |
-
"1002294","Holland Landing","Holland Landing,Ontario,Canada","20121","CA","Neighborhood",Active
|
1503 |
-
"1002295","Huntsville","Huntsville,Ontario,Canada","20121","CA","City",Active
|
1504 |
-
"1002296","Ingersoll","Ingersoll,Ontario,Canada","20121","CA","City",Active
|
1505 |
-
"1002297","Inglewood","Inglewood,Ontario,Canada","20121","CA","Neighborhood",Active
|
1506 |
-
"1002298","Innisfil","Innisfil,Ontario,Canada","20121","CA","City",Active
|
1507 |
-
"1002299","Iroquois Falls","Iroquois Falls,Ontario,Canada","20121","CA","City",Active
|
1508 |
-
"1002300","Islington","Islington,Ontario,Canada","20121","CA","Neighborhood",Active
|
1509 |
-
"1002301","Kanata","Kanata,Ontario,Canada","20121","CA","Neighborhood",Active
|
1510 |
-
"1002302","Kapuskasing","Kapuskasing,Ontario,Canada","20121","CA","City",Active
|
1511 |
-
"1002303","Keewatin","Keewatin,Ontario,Canada","20121","CA","Neighborhood",Active
|
1512 |
-
"1002304","Kemptville","Kemptville,Ontario,Canada","20121","CA","City",Active
|
1513 |
-
"1002305","Kenora","Kenora,Ontario,Canada","20121","CA","City",Active
|
1514 |
-
"1002306","Keswick","Keswick,Ontario,Canada","20121","CA","Neighborhood",Active
|
1515 |
-
"1002307","Kincardine","Kincardine,Ontario,Canada","20121","CA","City",Active
|
1516 |
-
"1002308","King City","King City,Ontario,Canada","20121","CA","City",Active
|
1517 |
-
"1002309","Kingfisher Lake","Kingfisher Lake,Ontario,Canada","20121","CA","City",Active
|
1518 |
-
"1002310","Kingston","Kingston,Ontario,Canada","20121","CA","City",Active
|
1519 |
-
"1002311","Kirkland Lake","Kirkland Lake,Ontario,Canada","20121","CA","Municipality",Active
|
1520 |
-
"1002312","Kitchener","Kitchener,Ontario,Canada","20121","CA","City",Active
|
1521 |
-
"1002313","Komoka","Komoka,Ontario,Canada","20121","CA","City",Active
|
1522 |
-
"1002314","L'Orignal","L'Orignal,Ontario,Canada","20121","CA","City",Active
|
1523 |
-
"1002315","Lakefield","Lakefield,Ontario,Canada","20121","CA","City",Active
|
1524 |
-
"1002316","London Borough of Lambeth","London Borough of Lambeth,England,United Kingdom","20339","GB","Municipality",Active
|
1525 |
-
"1002317","Lanark","Lanark,Ontario,Canada","20121","CA","Neighborhood",Active
|
1526 |
-
"1002318","Leamington","Leamington,Ontario,Canada","20121","CA","City",Active
|
1527 |
-
"1002319","Lindsay","Lindsay,Ontario,Canada","20121","CA","City",Active
|
1528 |
-
"1002320","Listowel","Listowel,Ontario,Canada","20121","CA","City",Active
|
1529 |
-
"1002321","Little Current","Little Current,Ontario,Canada","20121","CA","City",Active
|
1530 |
-
"1002322","Lively","Lively,Ontario,Canada","20121","CA","Neighborhood",Active
|
1531 |
-
"1002323","Kawartha Lakes","Kawartha Lakes,Ontario,Canada","20121","CA","City",Active
|
1532 |
-
"1002324","Lombardy","Lombardy,Ontario,Canada","20121","CA","City",Active
|
1533 |
-
"1002325","London","London,Ontario,Canada","20121","CA","City",Active
|
1534 |
-
"1002326","Madoc","Madoc,Ontario,Canada","20121","CA","City",Active
|
1535 |
-
"1002327","Malton","Malton,Ontario,Canada","20121","CA","Neighborhood",Active
|
1536 |
-
"1002328","Manitouwadge","Manitouwadge,Ontario,Canada","20121","CA","City",Active
|
1537 |
-
"1002329","Manotick","Manotick,Ontario,Canada","20121","CA","Neighborhood",Active
|
1538 |
-
"1002330","Maple","Maple,Ontario,Canada","20121","CA","Neighborhood",Active
|
1539 |
-
"1002331","Mar","Mar,Ontario,Canada","20121","CA","City",Active
|
1540 |
-
"1002332","Marathon","Marathon,Ontario,Canada","20121","CA","City",Active
|
1541 |
-
"1002333","Markdale","Markdale,Ontario,Canada","20121","CA","City",Active
|
1542 |
-
"1002334","Markham","Markham,Ontario,Canada","20121","CA","City",Active
|
1543 |
-
"1002335","Matachewan","Matachewan,Ontario,Canada","20121","CA","City",Active
|
1544 |
-
"1002336","Mattagami","Mattagami,Ontario,Canada","20121","CA","City",Active
|
1545 |
-
"1002337","Mattawa","Mattawa,Ontario,Canada","20121","CA","City",Active
|
1546 |
-
"1002338","Mattice","Mattice,Ontario,Canada","20121","CA","City",Active
|
1547 |
-
"1002339","Maynooth","Maynooth,Ontario,Canada","20121","CA","City",Active
|
1548 |
-
"1002340","McKellar","McKellar,Ontario,Canada","20121","CA","City",Active
|
1549 |
-
"1002341","Merrickville-Wolford","Merrickville-Wolford,Ontario,Canada","20121","CA","City",Active
|
1550 |
-
"1002342","Metcalfe","Metcalfe,Ontario,Canada","20121","CA","Neighborhood",Active
|
1551 |
-
"1002343","Midhurst","Midhurst,Ontario,Canada","20121","CA","City",Active
|
1552 |
-
"1002344","Midland","Midland,Ontario,Canada","20121","CA","City",Active
|
1553 |
-
"1002345","Millbrook","Millbrook,Ontario,Canada","20121","CA","City",Active
|
1554 |
-
"1002346","Millhaven","Millhaven,Ontario,Canada","20121","CA","City",Active
|
1555 |
-
"1002347","Milton","Milton,Ontario,Canada","20121","CA","City",Active
|
1556 |
-
"1002348","Milverton","Milverton,Ontario,Canada","20121","CA","City",Active
|
1557 |
-
"1002349","Minnitaki","Minnitaki,Ontario,Canada","20121","CA","City",Active
|
1558 |
-
"1002350","Mississauga","Mississauga,Ontario,Canada","20121","CA","City",Active
|
1559 |
-
"1002351","Monkland","Monkland,Ontario,Canada","20121","CA","City",Active
|
1560 |
-
"1002352","Moose Creek","Moose Creek,Ontario,Canada","20121","CA","City",Active
|
1561 |
-
"1002353","Morrisburg","Morrisburg,Ontario,Canada","20121","CA","City",Active
|
1562 |
-
"1002354","Mount Albert","Mount Albert,Ontario,Canada","20121","CA","City",Active
|
1563 |
-
"1002355","Mount Hope","Mount Hope,Ontario,Canada","20121","CA","Neighborhood",Active
|
1564 |
-
"1002356","Greater Napanee","Greater Napanee,Ontario,Canada","20121","CA","City",Active
|
1565 |
-
"1002357","Nepean","Nepean,Ontario,Canada","20121","CA","Neighborhood",Active
|
1566 |
-
"1002358","New Dundee","New Dundee,Ontario,Canada","20121","CA","City",Active
|
1567 |
-
"1002359","New Hamburg","New Hamburg,Ontario,Canada","20121","CA","City",Active
|
1568 |
-
"1002360","New Liskeard","New Liskeard,Ontario,Canada","20121","CA","Neighborhood",Active
|
1569 |
-
"1002361","Newcastle","Newcastle,Ontario,Canada","20121","CA","City",Active
|
1570 |
-
"1002362","Newmarket","Newmarket,Ontario,Canada","20121","CA","City",Active
|
1571 |
-
"1002363","Niagara Falls","Niagara Falls,Ontario,Canada","20121","CA","City",Active
|
1572 |
-
"1002364","Nipigon","Nipigon,Ontario,Canada","20121","CA","City",Active
|
1573 |
-
"1002365","Nobleton","Nobleton,Ontario,Canada","20121","CA","City",Active
|
1574 |
-
"1002366","Noelville","Noelville,Ontario,Canada","20121","CA","City",Active
|
1575 |
-
"1002367","North Bay","North Bay,Ontario,Canada","20121","CA","City",Active
|
1576 |
-
"1002368","North York","North York,Ontario,Canada","20121","CA","Neighborhood",Active
|
1577 |
-
"1002369","Norval","Norval,Ontario,Canada","20121","CA","Neighborhood",Active
|
1578 |
-
"1002370","Norwich","Norwich,Ontario,Canada","20121","CA","City",Active
|
1579 |
-
"1002371","Oakville","Oakville,Ontario,Canada","20121","CA","City",Active
|
1580 |
-
"1002372","Orangeville","Orangeville,Ontario,Canada","20121","CA","City",Active
|
1581 |
-
"1002373","Orillia","Orillia,Ontario,Canada","20121","CA","City",Active
|
1582 |
-
"1002374","Orleans","Orleans,Ontario,Canada","20121","CA","Neighborhood",Active
|
1583 |
-
"1002375","Oshawa","Oshawa,Ontario,Canada","20121","CA","City",Active
|
1584 |
-
"1002376","Ottawa","Ottawa,Ontario,Canada","20121","CA","City",Active
|
1585 |
-
"1002377","Owen Sound","Owen Sound,Ontario,Canada","20121","CA","City",Active
|
1586 |
-
"1002378","Paris","Paris,Ontario,Canada","20121","CA","Neighborhood",Active
|
1587 |
-
"1002379","Parry Sound","Parry Sound,Ontario,Canada","20121","CA","City",Active
|
1588 |
-
"1002380","Pawitik","Pawitik,Ontario,Canada","20121","CA","City",Active
|
1589 |
-
"1002381","Pembroke","Pembroke,Ontario,Canada","20121","CA","City",Active
|
1590 |
-
"1002382","Penetanguishene","Penetanguishene,Ontario,Canada","20121","CA","City",Active
|
1591 |
-
"1002383","Perth","Perth,Ontario,Canada","20121","CA","City",Active
|
1592 |
-
"1002384","Peterborough","Peterborough,Ontario,Canada","20121","CA","City",Active
|
1593 |
-
"1002385","Pickering","Pickering,Ontario,Canada","20121","CA","City",Active
|
1594 |
-
"1002386","Picton","Picton,Ontario,Canada","20121","CA","City",Active
|
1595 |
-
"1002387","Point Edward","Point Edward,Ontario,Canada","20121","CA","City",Active
|
1596 |
-
"1002388","Pontypool","Pontypool,Ontario,Canada","20121","CA","Neighborhood",Active
|
1597 |
-
"1002389","Poplar Hill","Poplar Hill,Ontario,Canada","20121","CA","City",Active
|
1598 |
-
"1002390","Port Colborne","Port Colborne,Ontario,Canada","20121","CA","City",Active
|
1599 |
-
"1002391","Port Credit","Port Credit,Ontario,Canada","20121","CA","Neighborhood",Active
|
1600 |
-
"1002392","Port Elgin","Port Elgin,Ontario,Canada","20121","CA","Neighborhood",Active
|
1601 |
-
"1002393","Port Hope","Port Hope,Ontario,Canada","20121","CA","City",Active
|
1602 |
-
"1002394","Port McNicoll","Port McNicoll,Ontario,Canada","20121","CA","City",Active
|
1603 |
-
"1002395","Port Perry","Port Perry,Ontario,Canada","20121","CA","City",Active
|
1604 |
-
"1002396","Powassan","Powassan,Ontario,Canada","20121","CA","Municipality",Active
|
1605 |
-
"1002397","Prescott","Prescott,Ontario,Canada","20121","CA","City",Active
|
1606 |
-
"1002398","Rainy River","Rainy River,Ontario,Canada","20121","CA","City",Active
|
1607 |
-
"1002399","Raith","Raith,Ontario,Canada","20121","CA","City",Active
|
1608 |
-
"1002400","Ramara","Ramara,Ontario,Canada","20121","CA","Municipality",Active
|
1609 |
-
"1002401","Red Lake","Red Lake,Ontario,Canada","20121","CA","City",Active
|
1610 |
-
"1002402","Renfrew","Renfrew,Ontario,Canada","20121","CA","City",Active
|
1611 |
-
"1002403","Thistletown","Thistletown,Ontario,Canada","20121","CA","Neighborhood",Active
|
1612 |
-
"1002404","Richmond","Richmond,Ontario,Canada","20121","CA","Neighborhood",Active
|
1613 |
-
"1002405","Richmond Hill","Richmond Hill,Ontario,Canada","20121","CA","City",Active
|
1614 |
-
"1002406","Ridgetown","Ridgetown,Ontario,Canada","20121","CA","Neighborhood",Active
|
1615 |
-
"1002407","Ripley","Ripley,Ontario,Canada","20121","CA","City",Active
|
1616 |
-
"1002408","Rockcliffe - Manor Park","Rockcliffe - Manor Park,Ontario,Canada","20121","CA","Neighborhood",Active
|
1617 |
-
"1002409","Rockland","Rockland,Ontario,Canada","20121","CA","Neighborhood",Active
|
1618 |
-
"1002410","Rossport","Rossport,Ontario,Canada","20121","CA","City",Active
|
1619 |
-
"1002411","Russell","Russell,Ontario,Canada","20121","CA","City",Active
|
1620 |
-
"1002412","Sandy Lake","Sandy Lake,Ontario,Canada","20121","CA","City",Active
|
1621 |
-
"1002413","Sarnia","Sarnia,Ontario,Canada","20121","CA","City",Active
|
1622 |
-
"1002414","Sault Ste. Marie","Sault Ste. Marie,Ontario,Canada","20121","CA","City",Active
|
1623 |
-
"1002416","Scarborough","Scarborough,Ontario,Canada","20121","CA","Neighborhood",Active
|
1624 |
-
"1002417","Schomberg","Schomberg,Ontario,Canada","20121","CA","City",Active
|
1625 |
-
"1002418","Schumacher","Schumacher,Ontario,Canada","20121","CA","Neighborhood",Active
|
1626 |
-
"1002419","Shelburne","Shelburne,Ontario,Canada","20121","CA","City",Active
|
1627 |
-
"1002420","Simcoe","Simcoe,Ontario,Canada","20121","CA","City",Active
|
1628 |
-
"1002421","Sioux Lookout","Sioux Lookout,Ontario,Canada","20121","CA","City",Active
|
1629 |
-
"1002422","Smiths Falls","Smiths Falls,Ontario,Canada","20121","CA","City",Active
|
1630 |
-
"1002423","Smithville","Smithville,Ontario,Canada","20121","CA","City",Active
|
1631 |
-
"1002424","Smooth Rock Falls","Smooth Rock Falls,Ontario,Canada","20121","CA","City",Active
|
1632 |
-
"1002425","South Lancaster","South Lancaster,Ontario,Canada","20121","CA","City",Active
|
1633 |
-
"1002426","South Porcupine","South Porcupine,Ontario,Canada","20121","CA","Neighborhood",Active
|
1634 |
-
"1002427","South River","South River,Ontario,Canada","20121","CA","City",Active
|
1635 |
-
"1002428","St. Catharines","St. Catharines,Ontario,Canada","20121","CA","City",Active
|
1636 |
-
"1002429","St. Jacobs","St. Jacobs,Ontario,Canada","20121","CA","City",Active
|
1637 |
-
"1002430","Saint Marys","Saint Marys,Ontario,Canada","20121","CA","City",Active
|
1638 |
-
"1002431","St. Thomas","St. Thomas,Ontario,Canada","20121","CA","City",Active
|
1639 |
-
"1002432","Stevensville","Stevensville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1640 |
-
"1002433","Stirling","Stirling,Ontario,Canada","20121","CA","City",Active
|
1641 |
-
"1002434","Stittsville","Stittsville,Ontario,Canada","20121","CA","City",Active
|
1642 |
-
"1002435","Stoney Creek","Stoney Creek,Ontario,Canada","20121","CA","Neighborhood",Active
|
1643 |
-
"1002436","Stouffville","Stouffville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1644 |
-
"1002437","Stratford","Stratford,Ontario,Canada","20121","CA","City",Active
|
1645 |
-
"1002438","Strathroy","Strathroy,Ontario,Canada","20121","CA","City",Active
|
1646 |
-
"1002439","Streetsville","Streetsville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1647 |
-
"1002440","West Nipissing","West Nipissing,Ontario,Canada","20121","CA","City",Active
|
1648 |
-
"1002441","Greater Sudbury","Greater Sudbury,Ontario,Canada","20121","CA","City",Active
|
1649 |
-
"1002442","Tecumseh","Tecumseh,Ontario,Canada","20121","CA","City",Active
|
1650 |
-
"1002443","Terrace Bay","Terrace Bay,Ontario,Canada","20121","CA","City",Active
|
1651 |
-
"1002444","Thessalon","Thessalon,Ontario,Canada","20121","CA","City",Active
|
1652 |
-
"1002445","Thornbury","Thornbury,Ontario,Canada","20121","CA","Neighborhood",Active
|
1653 |
-
"1002446","Thornhill","Thornhill,Ontario,Canada","20121","CA","Neighborhood",Active
|
1654 |
-
"1002447","Thorold","Thorold,Ontario,Canada","20121","CA","City",Active
|
1655 |
-
"1002448","Thunder Bay","Thunder Bay,Ontario,Canada","20121","CA","City",Active
|
1656 |
-
"1002449","Tillsonburg","Tillsonburg,Ontario,Canada","20121","CA","City",Active
|
1657 |
-
"1002450","Timmins","Timmins,Ontario,Canada","20121","CA","City",Active
|
1658 |
-
"1002451","Toronto","Toronto,Ontario,Canada","20121","CA","City",Active
|
1659 |
-
"1002452","Tottenham","Tottenham,Ontario,Canada","20121","CA","Neighborhood",Active
|
1660 |
-
"1002453","Trenton","Trenton,Ontario,Canada","20121","CA","Neighborhood",Active
|
1661 |
-
"1002454","Unionville","Unionville,Ontario,Canada","20121","CA","Neighborhood",Active
|
1662 |
-
"1002455","Utica","Utica,Ontario,Canada","20121","CA","City",Active
|
1663 |
-
"1002456","Val Caron","Val Caron,Ontario,Canada","20121","CA","Neighborhood",Active
|
1664 |
-
"1002457","Vanier","Vanier,Ontario,Canada","20121","CA","City",Active
|
1665 |
-
"1002458","Vankleek Hill","Vankleek Hill,Ontario,Canada","20121","CA","City",Active
|
1666 |
-
"1002459","Vaughan","Vaughan,Ontario,Canada","20121","CA","City",Active
|
1667 |
-
"1002460","Wainfleet","Wainfleet,Ontario,Canada","20121","CA","City",Active
|
1668 |
-
"1002461","Wallaceburg","Wallaceburg,Ontario,Canada","20121","CA","Neighborhood",Active
|
1669 |
-
"1002462","Waterdown","Waterdown,Ontario,Canada","20121","CA","Neighborhood",Active
|
1670 |
-
"1002463","Waterford","Waterford,Ontario,Canada","20121","CA","City",Active
|
1671 |
-
"1002464","Waterloo","Waterloo,Ontario,Canada","20121","CA","City",Active
|
1672 |
-
"1002465","Wawa","Wawa,Ontario,Canada","20121","CA","City",Active
|
1673 |
-
"1002466","Webequie","Webequie,Ontario,Canada","20121","CA","City",Active
|
1674 |
-
"1002467","Welland","Welland,Ontario,Canada","20121","CA","City",Active
|
1675 |
-
"1002468","West Hill","West Hill,Ontario,Canada","20121","CA","Neighborhood",Active
|
1676 |
-
"1002469","Pelham Park","Pelham Park,Ontario,Canada","20121","CA","Neighborhood",Active
|
1677 |
-
"1002470","Whitby","Whitby,Ontario,Canada","20121","CA","City",Active
|
1678 |
-
"1002471","Whitchurch-Stouffville","Whitchurch-Stouffville,Ontario,Canada","20121","CA","City",Active
|
1679 |
-
"1002472","Willowdale","Willowdale,Ontario,Canada","20121","CA","Neighborhood",Active
|
1680 |
-
"1002473","Windsor","Windsor,Ontario,Canada","20121","CA","City",Active
|
1681 |
-
"1002474","Wingham","Wingham,Ontario,Canada","20121","CA","City",Active
|
1682 |
-
"1002475","Winona","Winona,Ontario,Canada","20121","CA","Neighborhood",Active
|
1683 |
-
"1002476","Wolfe Island","Wolfe Island,Ontario,Canada","20121","CA","City",Active
|
1684 |
-
"1002477","Woodbridge","Woodbridge,Ontario,Canada","20121","CA","Neighborhood",Active
|
1685 |
-
"1002478","Woodstock","Woodstock,Ontario,Canada","20121","CA","City",Active
|
1686 |
-
"1002479","Wunnummin Lake","Wunnummin Lake,Ontario,Canada","20121","CA","City",Active
|
1687 |
-
"1002480","Wyoming","Wyoming,Ontario,Canada","20121","CA","Neighborhood",Active
|
1688 |
-
"1002481","York","York,Ontario,Canada","20121","CA","City",Active
|
1689 |
-
"1002482","Bonshaw","Bonshaw,Prince Edward Island,Canada","20122","CA","City",Active
|
1690 |
-
"1002483","Charlottetown","Charlottetown,Prince Edward Island,Canada","20122","CA","City",Active
|
1691 |
-
"1002484","Georgetown","Georgetown,Prince Edward Island,Canada","20122","CA","City",Active
|
1692 |
-
"1002485","Summerside","Summerside,Prince Edward Island,Canada","20122","CA","City",Active
|
1693 |
-
"1002486","Tignish","Tignish,Prince Edward Island,Canada","20122","CA","City",Active
|
1694 |
-
"1002487","Acton Vale","Acton Vale,Quebec,Canada","20123","CA","City",Active
|
1695 |
-
"1002488","Alma","Alma,Quebec,Canada","20123","CA","City",Active
|
1696 |
-
"1002489","Amos","Amos,Quebec,Canada","20123","CA","City",Active
|
1697 |
-
"1002490","L'Ancienne-Lorette","L'Ancienne-Lorette,Quebec,Canada","20123","CA","City",Active
|
1698 |
-
"1002491","Anjou","Anjou,Quebec,Canada","20123","CA","Neighborhood",Active
|
1699 |
-
"1002492","Asbestos","Asbestos,Quebec,Canada","20123","CA","City",Active
|
1700 |
-
"1002493","Aylmer","Aylmer,Quebec,Canada","20123","CA","Neighborhood",Active
|
1701 |
-
"1002494","Baie-Comeau","Baie-Comeau,Quebec,Canada","20123","CA","City",Active
|
1702 |
-
"1002495","Baie-D'Urfe","Baie-D'Urfe,Quebec,Canada","20123","CA","City",Active
|
1703 |
-
"1002496","Baie-Saint-Paul","Baie-Saint-Paul,Quebec,Canada","20123","CA","City",Active
|
1704 |
-
"1002497","Beaconsfield","Beaconsfield,Quebec,Canada","20123","CA","City",Active
|
1705 |
-
"1002498","Beauport","Beauport,Quebec,Canada","20123","CA","Neighborhood",Active
|
1706 |
-
"1002499","Beaupre","Beaupre,Quebec,Canada","20123","CA","City",Active
|
1707 |
-
"1002500","Becancour","Becancour,Quebec,Canada","20123","CA","City",Active
|
1708 |
-
"1002501","Bedford","Bedford,Quebec,Canada","20123","CA","City",Active
|
1709 |
-
"1002502","Bellefeuille","Bellefeuille,Quebec,Canada","20123","CA","Neighborhood",Active
|
1710 |
-
"1002503","Berthierville","Berthierville,Quebec,Canada","20123","CA","City",Active
|
1711 |
-
"1002504","Blainville","Blainville,Quebec,Canada","20123","CA","City",Active
|
1712 |
-
"1002505","Bois-des-Filion","Bois-des-Filion,Quebec,Canada","20123","CA","City",Active
|
1713 |
-
"1002506","Boisbriand","Boisbriand,Quebec,Canada","20123","CA","City",Active
|
1714 |
-
"1002507","Boischatel","Boischatel,Quebec,Canada","20123","CA","Municipality",Active
|
1715 |
-
"1002508","Bonaventure","Bonaventure,Quebec,Canada","20123","CA","City",Active
|
1716 |
-
"1002509","Boucherville","Boucherville,Quebec,Canada","20123","CA","City",Active
|
1717 |
-
"1002510","Brome","Brome,Quebec,Canada","20123","CA","City",Active
|
1718 |
-
"1002511","Bromont","Bromont,Quebec,Canada","20123","CA","City",Active
|
1719 |
-
"1002512","Brompton","Brompton,Quebec,Canada","20123","CA","Neighborhood",Active
|
1720 |
-
"1002513","Brossard","Brossard,Quebec,Canada","20123","CA","City",Active
|
1721 |
-
"1002514","Buckingham","Buckingham,Quebec,Canada","20123","CA","Neighborhood",Active
|
1722 |
-
"1002515","Cabano","Cabano,Quebec,Canada","20123","CA","Neighborhood",Active
|
1723 |
-
"1002516","Candiac","Candiac,Quebec,Canada","20123","CA","City",Active
|
1724 |
-
"1002517","Cap-de-la-Madeleine","Cap-de-la-Madeleine,Quebec,Canada","20123","CA","Neighborhood",Active
|
1725 |
-
"1002518","Caplan","Caplan,Quebec,Canada","20123","CA","City",Active
|
1726 |
-
"1002519","Carignan","Carignan,Quebec,Canada","20123","CA","City",Active
|
1727 |
-
"1002520","Carleton","Carleton,Quebec,Canada","20123","CA","Neighborhood",Active
|
1728 |
-
"1002521","Chambly","Chambly,Quebec,Canada","20123","CA","City",Active
|
1729 |
-
"1002522","Charlesbourg","Charlesbourg,Quebec,Canada","20123","CA","Neighborhood",Active
|
1730 |
-
"1002523","Charny","Charny,Quebec,Canada","20123","CA","Neighborhood",Active
|
1731 |
-
"1002524","Chateauguay","Chateauguay,Quebec,Canada","20123","CA","City",Active
|
1732 |
-
"1002525","Chelsea","Chelsea,Quebec,Canada","20123","CA","City",Active
|
1733 |
-
"1002526","Chibougamau","Chibougamau,Quebec,Canada","20123","CA","City",Active
|
1734 |
-
"1002527","Chicoutimi","Chicoutimi,Quebec,Canada","20123","CA","Neighborhood",Active
|
1735 |
-
"1002528","Coaticook","Coaticook,Quebec,Canada","20123","CA","City",Active
|
1736 |
-
"1002529","Cookshire","Cookshire,Quebec,Canada","20123","CA","Neighborhood",Active
|
1737 |
-
"1002530","Cote Saint-Luc","Cote Saint-Luc,Quebec,Canada","20123","CA","City",Active
|
1738 |
-
"1002531","Cowansville","Cowansville,Quebec,Canada","20123","CA","City",Active
|
1739 |
-
"1002532","Degelis","Degelis,Quebec,Canada","20123","CA","City",Active
|
1740 |
-
"1002533","Delson","Delson,Quebec,Canada","20123","CA","City",Active
|
1741 |
-
"1002534","Deschambault","Deschambault,Quebec,Canada","20123","CA","City",Active
|
1742 |
-
"1002535","Deux-Montagnes","Deux-Montagnes,Quebec,Canada","20123","CA","City",Active
|
1743 |
-
"1002536","Dolbeau","Dolbeau,Quebec,Canada","20123","CA","Neighborhood",Active
|
1744 |
-
"1002537","Dolbeau-Mistassini","Dolbeau-Mistassini,Quebec,Canada","20123","CA","City",Active
|
1745 |
-
"1002538","Dollard-Des Ormeaux","Dollard-Des Ormeaux,Quebec,Canada","20123","CA","City",Active
|
1746 |
-
"1002539","Donnacona","Donnacona,Quebec,Canada","20123","CA","City",Active
|
1747 |
-
"1002540","Dorion","Dorion,Quebec,Canada","20123","CA","Neighborhood",Active
|
1748 |
-
"1002541","Dorval","Dorval,Quebec,Canada","20123","CA","City",Active
|
1749 |
-
"1002542","Drummondville","Drummondville,Quebec,Canada","20123","CA","City",Active
|
1750 |
-
"1002543","Duvernay","Duvernay,Quebec,Canada","20123","CA","Neighborhood",Active
|
1751 |
-
"1002544","Fabreville","Fabreville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1752 |
-
"1002545","Farnham","Farnham,Quebec,Canada","20123","CA","City",Active
|
1753 |
-
"1002546","Fatima","Fatima,Quebec,Canada","20123","CA","City",Active
|
1754 |
-
"1002547","Fleurimont","Fleurimont,Quebec,Canada","20123","CA","Neighborhood",Active
|
1755 |
-
"1002548","Gaspe","Gaspe,Quebec,Canada","20123","CA","City",Active
|
1756 |
-
"1002549","Gatineau","Gatineau,Quebec,Canada","20123","CA","City",Active
|
1757 |
-
"1002550","Granby","Granby,Quebec,Canada","20123","CA","City",Active
|
1758 |
-
"1002551","Grande-Riviere","Grande-Riviere,Quebec,Canada","20123","CA","City",Active
|
1759 |
-
"1002552","Greenfield Park","Greenfield Park,Quebec,Canada","20123","CA","Neighborhood",Active
|
1760 |
-
"1002553","Hudson","Hudson,Quebec,Canada","20123","CA","City",Active
|
1761 |
-
"1002554","Hull","Hull,Quebec,Canada","20123","CA","Neighborhood",Active
|
1762 |
-
"1002555","Iberville","Iberville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1763 |
-
"1002556","Joliette","Joliette,Quebec,Canada","20123","CA","City",Active
|
1764 |
-
"1002557","Jonquiere","Jonquiere,Quebec,Canada","20123","CA","Neighborhood",Active
|
1765 |
-
"1002558","Kahnawake","Kahnawake,Quebec,Canada","20123","CA","Neighborhood",Active
|
1766 |
-
"1002559","Kirkland","Kirkland,Quebec,Canada","20123","CA","City",Active
|
1767 |
-
"1002560","Kuujjuaq","Kuujjuaq,Quebec,Canada","20123","CA","City",Active
|
1768 |
-
"1002561","L'Annonciation","L'Annonciation,Quebec,Canada","20123","CA","Neighborhood",Active
|
1769 |
-
"1002562","L'Assomption","L'Assomption,Quebec,Canada","20123","CA","City",Active
|
1770 |
-
"1002563","La Baie","La Baie,Quebec,Canada","20123","CA","Neighborhood",Active
|
1771 |
-
"1002564","La Malbaie","La Malbaie,Quebec,Canada","20123","CA","City",Active
|
1772 |
-
"1002565","La Prairie","La Prairie,Quebec,Canada","20123","CA","City",Active
|
1773 |
-
"1002566","La Romaine","La Romaine,Quebec,Canada","20123","CA","City",Active
|
1774 |
-
"1002568","La Tuque","La Tuque,Quebec,Canada","20123","CA","City",Active
|
1775 |
-
"1002569","Lac-Etchemin","Lac-Etchemin,Quebec,Canada","20123","CA","City",Active
|
1776 |
-
"1002570","Lac-Megantic","Lac-Megantic,Quebec,Canada","20123","CA","City",Active
|
1777 |
-
"1002571","Lachine","Lachine,Quebec,Canada","20123","CA","Neighborhood",Active
|
1778 |
-
"1002572","Lachute","Lachute,Quebec,Canada","20123","CA","City",Active
|
1779 |
-
"1002573","Lambton","Lambton,Quebec,Canada","20123","CA","City",Active
|
1780 |
-
"1002574","Larochelle","Larochelle,Quebec,Canada","20123","CA","Neighborhood",Active
|
1781 |
-
"1002575","Lasalle","Lasalle,Quebec,Canada","20123","CA","Neighborhood",Active
|
1782 |
-
"1002576","Laterriere","Laterriere,Quebec,Canada","20123","CA","Neighborhood",Active
|
1783 |
-
"1002577","Laurentiens","Laurentiens,Quebec,Canada","20123","CA","Neighborhood",Active
|
1784 |
-
"1002578","Laurier-Station","Laurier-Station,Quebec,Canada","20123","CA","City",Active
|
1785 |
-
"1002579","Laval","Laval,Quebec,Canada","20123","CA","City",Active
|
1786 |
-
"1002580","Le Gardeur","Le Gardeur,Quebec,Canada","20123","CA","Neighborhood",Active
|
1787 |
-
"1002581","Lennoxville","Lennoxville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1788 |
-
"1002582","Les Cedres","Les Cedres,Quebec,Canada","20123","CA","City",Active
|
1789 |
-
"1002583","Levis","Levis,Quebec,Canada","20123","CA","City",Active
|
1790 |
-
"1002584","Listuguj","Listuguj,Quebec,Canada","20123","CA","City",Active
|
1791 |
-
"1002585","Longueuil","Longueuil,Quebec,Canada","20123","CA","City",Active
|
1792 |
-
"1002586","Loretteville","Loretteville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1793 |
-
"1002587","Lorraine","Lorraine,Quebec,Canada","20123","CA","City",Active
|
1794 |
-
"1002589","Magog","Magog,Quebec,Canada","20123","CA","City",Active
|
1795 |
-
"1002590","Maniwaki","Maniwaki,Quebec,Canada","20123","CA","City",Active
|
1796 |
-
"1002591","Maria","Maria,Quebec,Canada","20123","CA","City",Active
|
1797 |
-
"1002592","Mascouche","Mascouche,Quebec,Canada","20123","CA","City",Active
|
1798 |
-
"1002593","Masson","Masson,Quebec,Canada","20123","CA","Neighborhood",Active
|
1799 |
-
"1002594","Matane","Matane,Quebec,Canada","20123","CA","City",Active
|
1800 |
-
"1002595","Mercier","Mercier,Quebec,Canada","20123","CA","City",Active
|
1801 |
-
"1002596","Mirabel","Mirabel,Quebec,Canada","20123","CA","City",Active
|
1802 |
-
"1002597","Mont-Joli","Mont-Joli,Quebec,Canada","20123","CA","City",Active
|
1803 |
-
"1002598","Mont-Laurier","Mont-Laurier,Quebec,Canada","20123","CA","City",Active
|
1804 |
-
"1002599","Mount Royal","Mount Royal,Quebec,Canada","20123","CA","City",Active
|
1805 |
-
"1002600","Mont-Saint-Hilaire","Mont-Saint-Hilaire,Quebec,Canada","20123","CA","City",Active
|
1806 |
-
"1002601","Mont-Tremblant","Mont-Tremblant,Quebec,Canada","20123","CA","City",Active
|
1807 |
-
"1002602","Montebello","Montebello,Quebec,Canada","20123","CA","City",Active
|
1808 |
-
"1002603","Montmagny","Montmagny,Quebec,Canada","20123","CA","City",Active
|
1809 |
-
"1002604","Montreal","Montreal,Quebec,Canada","20123","CA","City",Active
|
1810 |
-
"1002605","Napierville","Napierville,Quebec,Canada","20123","CA","City",Active
|
1811 |
-
"1002606","Neufchatel","Neufchatel,Quebec,Canada","20123","CA","Neighborhood",Active
|
1812 |
-
"1002607","New Carlisle","New Carlisle,Quebec,Canada","20123","CA","City",Active
|
1813 |
-
"1002608","New Richmond","New Richmond,Quebec,Canada","20123","CA","City",Active
|
1814 |
-
"1002609","Nicolet","Nicolet,Quebec,Canada","20123","CA","City",Active
|
1815 |
-
"1002610","Noranda","Noranda,Quebec,Canada","20123","CA","Neighborhood",Active
|
1816 |
-
"1002611","Omerville","Omerville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1817 |
-
"1002612","Outremont","Outremont,Quebec,Canada","20123","CA","Neighborhood",Active
|
1818 |
-
"1002613","Papineauville","Papineauville,Quebec,Canada","20123","CA","City",Active
|
1819 |
-
"1002614","Piedmont","Piedmont,Quebec,Canada","20123","CA","City",Active
|
1820 |
-
"1002615","Pierrefonds-Roxboro","Pierrefonds-Roxboro,Quebec,Canada","20123","CA","Neighborhood",Active
|
1821 |
-
"1002616","Pohenegamook","Pohenegamook,Quebec,Canada","20123","CA","City",Active
|
1822 |
-
"1002617","Pointe-a-la-Croix","Pointe-a-la-Croix,Quebec,Canada","20123","CA","Neighborhood",Active
|
1823 |
-
"1002618","Pointe-aux-Outardes","Pointe-aux-Outardes,Quebec,Canada","20123","CA","City",Active
|
1824 |
-
"1002619","Pointe-aux-Trembles","Pointe-aux-Trembles,Quebec,Canada","20123","CA","Neighborhood",Active
|
1825 |
-
"1002620","Pointe-Claire","Pointe-Claire,Quebec,Canada","20123","CA","City",Active
|
1826 |
-
"1002621","Pont-Rouge","Pont-Rouge,Quebec,Canada","20123","CA","City",Active
|
1827 |
-
"1002622","Port-Cartier","Port-Cartier,Quebec,Canada","20123","CA","City",Active
|
1828 |
-
"1002623","Portneuf","Portneuf,Quebec,Canada","20123","CA","City",Active
|
1829 |
-
"1002624","Quebec City","Quebec City,Quebec,Canada","20123","CA","City",Active
|
1830 |
-
"1002625","Repentigny","Repentigny,Quebec,Canada","20123","CA","City",Active
|
1831 |
-
"1002626","Richelieu","Richelieu,Quebec,Canada","20123","CA","City",Active
|
1832 |
-
"1002627","Richmond","Richmond,Quebec,Canada","20123","CA","City",Active
|
1833 |
-
"1002628","Rimouski","Rimouski,Quebec,Canada","20123","CA","City",Active
|
1834 |
-
"1002629","Riviere-du-Loup","Riviere-du-Loup,Quebec,Canada","20123","CA","City",Active
|
1835 |
-
"1002630","Robertsonville","Robertsonville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1836 |
-
"1002631","Roberval","Roberval,Quebec,Canada","20123","CA","City",Active
|
1837 |
-
"1002632","Rock Forest-Saint-Elie-Deauville","Rock Forest-Saint-Elie-Deauville,Quebec,Canada","20123","CA","Neighborhood",Active
|
1838 |
-
"1002633","Rosemere","Rosemere,Quebec,Canada","20123","CA","City",Active
|
1839 |
-
"1002634","Rouyn-Noranda","Rouyn-Noranda,Quebec,Canada","20123","CA","City",Active
|
1840 |
-
"1002635","Roxboro","Roxboro,Quebec,Canada","20123","CA","Neighborhood",Active
|
1841 |
-
"1002636","Sainte-Agathe-de-Lotbiniere","Sainte-Agathe-de-Lotbiniere,Quebec,Canada","20123","CA","Municipality",Active
|
1842 |
-
"1002637","Sainte-Agathe-des-Monts","Sainte-Agathe-des-Monts,Quebec,Canada","20123","CA","City",Active
|
1843 |
-
"1002638","Salaberry-de-Valleyfield","Salaberry-de-Valleyfield,Quebec,Canada","20123","CA","City",Active
|
1844 |
-
"1002639","Sault-au-Mouton","Sault-au-Mouton,Quebec,Canada","20123","CA","City",Active
|
1845 |
-
"1002640","Scott","Scott,Quebec,Canada","20123","CA","City",Active
|
1846 |
-
"1002641","Sept-Iles","Sept-Iles,Quebec,Canada","20123","CA","City",Active
|
1847 |
-
"1002642","Shawinigan","Shawinigan,Quebec,Canada","20123","CA","City",Active
|
1848 |
-
"1002643","Sherbrooke","Sherbrooke,Quebec,Canada","20123","CA","City",Active
|
1849 |
-
"1002644","Sillery","Sillery,Quebec,Canada","20123","CA","Neighborhood",Active
|
1850 |
-
"1002645","Sorel-Tracy","Sorel-Tracy,Quebec,Canada","20123","CA","City",Active
|
1851 |
-
"1002646","Saint-Bruno","Saint-Bruno,Quebec,Canada","20123","CA","Municipality",Active
|
1852 |
-
"1002647","Saint-Georges","Saint-Georges,Quebec,Canada","20123","CA","City",Active
|
1853 |
-
"1002648","Saint-Alphonse-de-Granby","Saint-Alphonse-de-Granby,Quebec,Canada","20123","CA","City",Active
|
1854 |
-
"1002649","Sainte-Anne-des-Monts--Tourelle","Sainte-Anne-des-Monts--Tourelle,Quebec,Canada","20123","CA","City",Active
|
1855 |
-
"1002650","Saint-Anselme","Saint-Anselme,Quebec,Canada","20123","CA","Municipality",Active
|
1856 |
-
"1002651","Saint-Augustin","Saint-Augustin,Quebec,Canada","20123","CA","City",Active
|
1857 |
-
"1002652","Saint-Basile-le-Grand","Saint-Basile-le-Grand,Quebec,Canada","20123","CA","City",Active
|
1858 |
-
"1002653","St-Bruno-de-Montarville","St-Bruno-de-Montarville,Quebec,Canada","20123","CA","City",Active
|
1859 |
-
"1002654","Saint-Constant","Saint-Constant,Quebec,Canada","20123","CA","City",Active
|
1860 |
-
"1002655","Saint-Cyrille-de-Wendover","Saint-Cyrille-de-Wendover,Quebec,Canada","20123","CA","Neighborhood",Active
|
1861 |
-
"1002656","Saint-Elzear","Saint-Elzear,Quebec,Canada","20123","CA","City",Active
|
1862 |
-
"1002657","Saint-Eustache","Saint-Eustache,Quebec,Canada","20123","CA","City",Active
|
1863 |
-
"1002658","Saint-Felicien","Saint-Felicien,Quebec,Canada","20123","CA","City",Active
|
1864 |
-
"1002659","Saint-Felix-de-Valois","Saint-Felix-de-Valois,Quebec,Canada","20123","CA","Municipality",Active
|
1865 |
-
"1002661","Saint-Hubert","Saint-Hubert,Quebec,Canada","20123","CA","Neighborhood",Active
|
1866 |
-
"1002662","Saint-Hyacinthe","Saint-Hyacinthe,Quebec,Canada","20123","CA","City",Active
|
1867 |
-
"1002663","Saint-Janvier","Saint-Janvier,Quebec,Canada","20123","CA","Neighborhood",Active
|
1868 |
-
"1002664","Saint-Jean-de-l'Ile-d'Orleans","Saint-Jean-de-l'Ile-d'Orleans,Quebec,Canada","20123","CA","City",Active
|
1869 |
-
"1002665","Saint-Jean-Chrysostome","Saint-Jean-Chrysostome,Quebec,Canada","20123","CA","City",Active
|
1870 |
-
"1002666","Saint-Jean-sur-Richelieu","Saint-Jean-sur-Richelieu,Quebec,Canada","20123","CA","City",Active
|
1871 |
-
"1002667","Saint-Jerome","Saint-Jerome,Quebec,Canada","20123","CA","City",Active
|
1872 |
-
"1002668","Saint-Jovite","Saint-Jovite,Quebec,Canada","20123","CA","Neighborhood",Active
|
1873 |
-
"1002669","Saint-Justin","Saint-Justin,Quebec,Canada","20123","CA","Municipality",Active
|
1874 |
-
"1002670","Saint-Lambert","Saint-Lambert,Quebec,Canada","20123","CA","City",Active
|
1875 |
-
"1002671","Saint-Laurent","Saint-Laurent,Quebec,Canada","20123","CA","Neighborhood",Active
|
1876 |
-
"1002672","Saint Leonard","Saint Leonard,Quebec,Canada","20123","CA","Neighborhood",Active
|
1877 |
-
"1002673","Saint-Louis-de-France","Saint-Louis-de-France,Quebec,Canada","20123","CA","Neighborhood",Active
|
1878 |
-
"1002674","Saint-Malo","Saint-Malo,Quebec,Canada","20123","CA","City",Active
|
1879 |
-
"1002675","Saint-Mathieu-de-Beloeil","Saint-Mathieu-de-Beloeil,Quebec,Canada","20123","CA","City",Active
|
1880 |
-
"1002676","Saint-Nicolas","Saint-Nicolas,Quebec,Canada","20123","CA","Neighborhood",Active
|
1881 |
-
"1002677","Saint-Pascal","Saint-Pascal,Quebec,Canada","20123","CA","City",Active
|
1882 |
-
"1002678","Saint-Pie","Saint-Pie,Quebec,Canada","20123","CA","City",Active
|
1883 |
-
"1002679","Saint-Pierre","Saint-Pierre,Quebec,Canada","20123","CA","City",Active
|
1884 |
-
"1002680","Saint-Pierre-de-l'Ile-d'Orleans","Saint-Pierre-de-l'Île-d'Orléans,Quebec,Canada","20123","CA","City",Active
|
1885 |
-
"1002681","St-Raymond","St-Raymond,Quebec,Canada","20123","CA","City",Active
|
1886 |
-
"1002682","Saint-Remi","Saint-Remi,Quebec,Canada","20123","CA","City",Active
|
1887 |
-
"1002683","St-Romuald","St-Romuald,Quebec,Canada","20123","CA","Neighborhood",Active
|
1888 |
-
"1002684","Saint-Sauveur-des-Monts","Saint-Sauveur-des-Monts,Quebec,Canada","20123","CA","Neighborhood",Active
|
1889 |
-
"1002685","Saint-Sylvestre","Saint-Sylvestre,Quebec,Canada","20123","CA","Municipality",Active
|
1890 |
-
"1002686","Saint-Timothee","Saint-Timothee,Quebec,Canada","20123","CA","Neighborhood",Active
|
1891 |
-
"1002687","St-Tite","St-Tite,Quebec,Canada","20123","CA","City",Active
|
1892 |
-
"1002688","Saint-Victor","Saint-Victor,Quebec,Canada","20123","CA","Municipality",Active
|
1893 |
-
"1002689","Stanstead","Stanstead,Quebec,Canada","20123","CA","City",Active
|
1894 |
-
"1002690","Sainte-Catherine","Sainte-Catherine,Quebec,Canada","20123","CA","City",Active
|
1895 |
-
"1002691","Sainte-Adele","Sainte-Adele,Quebec,Canada","20123","CA","City",Active
|
1896 |
-
"1002692","Sainte-Anne-de-Bellevue","Sainte-Anne-de-Bellevue,Quebec,Canada","20123","CA","City",Active
|
1897 |
-
"1002693","Sainte-Claire","Sainte-Claire,Quebec,Canada","20123","CA","City",Active
|
1898 |
-
"1002694","St-Croix","St-Croix,Quebec,Canada","20123","CA","City",Active
|
1899 |
-
"1002695","Sainte-Dorothee","Sainte-Dorothee,Quebec,Canada","20123","CA","City",Active
|
1900 |
-
"1002696","L'Aeroport","L'Aeroport,Quebec,Canada","20123","CA","Neighborhood",Active
|
1901 |
-
"1002697","Sainte-Genevieve","Sainte-Genevieve,Quebec,Canada","20123","CA","Neighborhood",Active
|
1902 |
-
"1002698","Sainte-Julie","Sainte-Julie,Quebec,Canada","20123","CA","City",Active
|
1903 |
-
"1002699","Sainte-Marguerite-du-Lac-Masson","Sainte-Marguerite-du-Lac-Masson,Quebec,Canada","20123","CA","City",Active
|
1904 |
-
"1002700","Sainte-Marie","Sainte-Marie,Quebec,Canada","20123","CA","City",Active
|
1905 |
-
"1002701","Sainte-Rosalie","Sainte-Rosalie,Quebec,Canada","20123","CA","Neighborhood",Active
|
1906 |
-
"1002702","Sainte-Therese","Sainte-Therese,Quebec,Canada","20123","CA","City",Active
|
1907 |
-
"1002703","Sutton","Sutton,Quebec,Canada","20123","CA","City",Active
|
1908 |
-
"1002704","Temiscaming","Temiscaming,Quebec,Canada","20123","CA","City",Active
|
1909 |
-
"1002705","Terrebonne","Terrebonne,Quebec,Canada","20123","CA","City",Active
|
1910 |
-
"1002706","Thetford Mines","Thetford Mines,Quebec,Canada","20123","CA","City",Active
|
1911 |
-
"1002707","Tracy","Tracy,Quebec,Canada","20123","CA","Neighborhood",Active
|
1912 |
-
"1002708","Trois-Rivieres","Trois-Rivieres,Quebec,Canada","20123","CA","City",Active
|
1913 |
-
"1002709","Val-Belair","Val-Belair,Quebec,Canada","20123","CA","Neighborhood",Active
|
1914 |
-
"1002710","Val-d'Or","Val-d'Or,Quebec,Canada","20123","CA","City",Active
|
1915 |
-
"1002711","Val-Morin","Val-Morin,Quebec,Canada","20123","CA","City",Active
|
1916 |
-
"1002712","Valcourt","Valcourt,Quebec,Canada","20123","CA","City",Active
|
1917 |
-
"1002713","Vallee-Jonction","Vallee-Jonction,Quebec,Canada","20123","CA","City",Active
|
1918 |
-
"1002715","Vanier","Vanier,Quebec,Canada","20123","CA","Neighborhood",Active
|
1919 |
-
"1002716","Varennes","Varennes,Quebec,Canada","20123","CA","City",Active
|
1920 |
-
"1002717","Vaudreuil-Dorion","Vaudreuil-Dorion,Quebec,Canada","20123","CA","City",Active
|
1921 |
-
"1002718","Verdun","Verdun,Quebec,Canada","20123","CA","Neighborhood",Active
|
1922 |
-
"1002719","Victoriaville","Victoriaville,Quebec,Canada","20123","CA","City",Active
|
1923 |
-
"1002720","Warwick","Warwick,Quebec,Canada","20123","CA","City",Active
|
1924 |
-
"1002721","Waswanipi","Waswanipi,Quebec,Canada","20123","CA","City",Active
|
1925 |
-
"1002722","Waterloo","Waterloo,Quebec,Canada","20123","CA","City",Active
|
1926 |
-
"1002723","Waterville","Waterville,Quebec,Canada","20123","CA","City",Active
|
1927 |
-
"1002724","Westmount","Westmount,Quebec,Canada","20123","CA","City",Active
|
1928 |
-
"1002725","Windsor","Windsor,Quebec,Canada","20123","CA","City",Active
|
1929 |
-
"1002726","Yamachiche","Yamachiche,Quebec,Canada","20123","CA","City",Active
|
1930 |
-
"1002727","Aberdeen","Aberdeen,Saskatchewan,Canada","20124","CA","City",Active
|
1931 |
-
"1002728","Allan","Allan,Saskatchewan,Canada","20124","CA","City",Active
|
1932 |
-
"1002729","Annaheim","Annaheim,Saskatchewan,Canada","20124","CA","City",Active
|
1933 |
-
"1002730","Assiniboia","Assiniboia,Saskatchewan,Canada","20124","CA","City",Active
|
1934 |
-
"1002731","Balcarres","Balcarres,Saskatchewan,Canada","20124","CA","City",Active
|
1935 |
-
"1002732","Beauval","Beauval,Saskatchewan,Canada","20124","CA","City",Active
|
1936 |
-
"1002733","Big River","Big River,Saskatchewan,Canada","20124","CA","City",Active
|
1937 |
-
"1002734","Biggar","Biggar,Saskatchewan,Canada","20124","CA","City",Active
|
1938 |
-
"1002735","Bruno","Bruno,Saskatchewan,Canada","20124","CA","City",Active
|
1939 |
-
"1002736","Buffalo Narrows","Buffalo Narrows,Saskatchewan,Canada","20124","CA","City",Active
|
1940 |
-
"1002737","Cabri","Cabri,Saskatchewan,Canada","20124","CA","City",Active
|
1941 |
-
"1002738","Canwood","Canwood,Saskatchewan,Canada","20124","CA","City",Active
|
1942 |
-
"1002739","Carlyle","Carlyle,Saskatchewan,Canada","20124","CA","City",Active
|
1943 |
-
"1002740","Caronport","Caronport,Saskatchewan,Canada","20124","CA","City",Active
|
1944 |
-
"1002741","Clavet","Clavet,Saskatchewan,Canada","20124","CA","City",Active
|
1945 |
-
"1002742","Colonsay","Colonsay,Saskatchewan,Canada","20124","CA","City",Active
|
1946 |
-
"1002743","Consul","Consul,Saskatchewan,Canada","20124","CA","City",Active
|
1947 |
-
"1002744","Cote","Cote,Saskatchewan,Canada","20124","CA","City",Active
|
1948 |
-
"1002745","Craik","Craik,Saskatchewan,Canada","20124","CA","City",Active
|
1949 |
-
"1002746","Creighton","Creighton,Saskatchewan,Canada","20124","CA","City",Active
|
1950 |
-
"1002747","Debden","Debden,Saskatchewan,Canada","20124","CA","City",Active
|
1951 |
-
"1002748","Dillon","Dillon,Saskatchewan,Canada","20124","CA","City",Active
|
1952 |
-
"1002749","Dundurn","Dundurn,Saskatchewan,Canada","20124","CA","City",Active
|
1953 |
-
"1002750","Edam","Edam,Saskatchewan,Canada","20124","CA","City",Active
|
1954 |
-
"1002751","Elfros","Elfros,Saskatchewan,Canada","20124","CA","City",Active
|
1955 |
-
"1002752","Esterhazy","Esterhazy,Saskatchewan,Canada","20124","CA","City",Active
|
1956 |
-
"1002753","Estevan","Estevan,Saskatchewan,Canada","20124","CA","City",Active
|
1957 |
-
"1002754","Eston","Eston,Saskatchewan,Canada","20124","CA","City",Active
|
1958 |
-
"1002755","Fillmore","Fillmore,Saskatchewan,Canada","20124","CA","City",Active
|
1959 |
-
"1002756","Frontier","Frontier,Saskatchewan,Canada","20124","CA","City",Active
|
1960 |
-
"1002757","Gravelbourg","Gravelbourg,Saskatchewan,Canada","20124","CA","City",Active
|
1961 |
-
"1002758","Griffin","Griffin,Saskatchewan,Canada","20124","CA","City",Active
|
1962 |
-
"1002759","Gull Lake","Gull Lake,Saskatchewan,Canada","20124","CA","City",Active
|
1963 |
-
"1002760","Hanley","Hanley,Saskatchewan,Canada","20124","CA","City",Active
|
1964 |
-
"1002761","Hudson Bay","Hudson Bay,Saskatchewan,Canada","20124","CA","City",Active
|
1965 |
-
"1002762","Humboldt","Humboldt,Saskatchewan,Canada","20124","CA","City",Active
|
1966 |
-
"1002763","Ile-a-la-Crosse","Ile-a-la-Crosse,Saskatchewan,Canada","20124","CA","City",Active
|
1967 |
-
"1002764","Indian Head","Indian Head,Saskatchewan,Canada","20124","CA","City",Active
|
1968 |
-
"1002765","Kamsack","Kamsack,Saskatchewan,Canada","20124","CA","City",Active
|
1969 |
-
"1002766","Kindersley","Kindersley,Saskatchewan,Canada","20124","CA","City",Active
|
1970 |
-
"1002767","La Loche","La Loche,Saskatchewan,Canada","20124","CA","City",Active
|
1971 |
-
"1002768","La Ronge","La Ronge,Saskatchewan,Canada","20124","CA","City",Active
|
1972 |
-
"1002769","Lampman","Lampman,Saskatchewan,Canada","20124","CA","City",Active
|
1973 |
-
"1002770","Lemberg","Lemberg,Saskatchewan,Canada","20124","CA","City",Active
|
1974 |
-
"1002772","Maple Creek","Maple Creek,Saskatchewan,Canada","20124","CA","City",Active
|
1975 |
-
"1002773","Maymont","Maymont,Saskatchewan,Canada","20124","CA","City",Active
|
1976 |
-
"1002774","Meadow Lake","Meadow Lake,Saskatchewan,Canada","20124","CA","City",Active
|
1977 |
-
"1002775","Melfort","Melfort,Saskatchewan,Canada","20124","CA","City",Active
|
1978 |
-
"1002776","Melville","Melville,Saskatchewan,Canada","20124","CA","City",Active
|
1979 |
-
"1002777","Moose Jaw","Moose Jaw,Saskatchewan,Canada","20124","CA","City",Active
|
1980 |
-
"1002778","Moosomin","Moosomin,Saskatchewan,Canada","20124","CA","City",Active
|
1981 |
-
"1002779","Muenster","Muenster,Saskatchewan,Canada","20124","CA","City",Active
|
1982 |
-
"1002780","Nipawin","Nipawin,Saskatchewan,Canada","20124","CA","City",Active
|
1983 |
-
"1002781","Norquay","Norquay,Saskatchewan,Canada","20124","CA","City",Active
|
1984 |
-
"1002782","North Battleford","North Battleford,Saskatchewan,Canada","20124","CA","City",Active
|
1985 |
-
"1002783","North Portal","North Portal,Saskatchewan,Canada","20124","CA","City",Active
|
1986 |
-
"1002784","Outlook","Outlook,Saskatchewan,Canada","20124","CA","City",Active
|
1987 |
-
"1002785","Prince Albert","Prince Albert,Saskatchewan,Canada","20124","CA","City",Active
|
1988 |
-
"1002786","Radville","Radville,Saskatchewan,Canada","20124","CA","City",Active
|
1989 |
-
"1002787","Regina","Regina,Saskatchewan,Canada","20124","CA","City",Active
|
1990 |
-
"1002788","Rocanville","Rocanville,Saskatchewan,Canada","20124","CA","City",Active
|
1991 |
-
"1002789","Rockglen","Rockglen,Saskatchewan,Canada","20124","CA","City",Active
|
1992 |
-
"1002790","Rosetown","Rosetown,Saskatchewan,Canada","20124","CA","City",Active
|
1993 |
-
"1002791","Saskatoon","Saskatoon,Saskatchewan,Canada","20124","CA","City",Active
|
1994 |
-
"1002792","Shaunavon","Shaunavon,Saskatchewan,Canada","20124","CA","City",Active
|
1995 |
-
"1002793","Shellbrook","Shellbrook,Saskatchewan,Canada","20124","CA","City",Active
|
1996 |
-
"1002794","Swift Current","Swift Current,Saskatchewan,Canada","20124","CA","City",Active
|
1997 |
-
"1002795","Tisdale","Tisdale,Saskatchewan,Canada","20124","CA","City",Active
|
1998 |
-
"1002796","Unity","Unity,Saskatchewan,Canada","20124","CA","City",Active
|
1999 |
-
"1002797","Wadena","Wadena,Saskatchewan,Canada","20124","CA","City",Active
|
2000 |
-
"1002798","Warman","Warman,Saskatchewan,Canada","20124","CA","City",Active
|
2001 |
-
"1002799","Weekes","Weekes,Saskatchewan,Canada","20124","CA","City",Active
|
2002 |
-
"1002800","Weyburn","Weyburn,Saskatchewan,Canada","20124","CA","City",Active
|
2003 |
-
"1002801","Whitewood","Whitewood,Saskatchewan,Canada","20124","CA","City",Active
|
2004 |
-
"1002802","Wilcox","Wilcox,Saskatchewan,Canada","20124","CA","City",Active
|
2005 |
-
"1002803","Wilkie","Wilkie,Saskatchewan,Canada","20124","CA","City",Active
|
2006 |
-
"1002804","Wynyard","Wynyard,Saskatchewan,Canada","20124","CA","City",Active
|
2007 |
-
"1002805","Yorkton","Yorkton,Saskatchewan,Canada","20124","CA","City",Active
|
2008 |
-
"1002806","Whitehorse","Whitehorse,Yukon,Canada","20125","CA","City",Active
|
2009 |
-
"1002807","Aarau","Aarau,Aargau,Switzerland","20126","CH","City",Active
|
2010 |
-
"1002808","Aarburg","Aarburg,Aargau,Switzerland","20126","CH","City",Active
|
2011 |
-
"1002809","Baden","Baden,Aargau,Switzerland","20126","CH","City",Active
|
2012 |
-
"1002810","Brittnau","Brittnau,Aargau,Switzerland","20126","CH","City",Active
|
2013 |
-
"1002811","Brugg","Brugg,Aargau,Switzerland","20126","CH","City",Active
|
2014 |
-
"1002812","Remetschwil","Remetschwil,Aargau,Switzerland","20126","CH","City",Active
|
2015 |
-
"1002813","Frick","Frick,Aargau,Switzerland","20126","CH","City",Active
|
2016 |
-
"1002814","Granichen","Granichen,Aargau,Switzerland","20126","CH","City",Active
|
2017 |
-
"1002815","Hirschthal","Hirschthal,Aargau,Switzerland","20126","CH","City",Active
|
2018 |
-
"1002816","Holderbank","Holderbank,Aargau,Switzerland","20126","CH","City",Active
|
2019 |
-
"1002817","Hunzenschwil","Hunzenschwil,Aargau,Switzerland","20126","CH","City",Active
|
2020 |
-
"1002818","Kaiseraugst","Kaiseraugst,Aargau,Switzerland","20126","CH","City",Active
|
2021 |
-
"1002820","Bottstein","Bottstein,Aargau,Switzerland","20126","CH","City",Active
|
2022 |
-
"1002821","Kolliken","Kolliken,Aargau,Switzerland","20126","CH","City",Active
|
2023 |
-
"1002822","Laufenburg","Laufenburg,Aargau,Switzerland","20126","CH","City",Active
|
2024 |
-
"1002823","Leibstadt","Leibstadt,Aargau,Switzerland","20126","CH","City",Active
|
2025 |
-
"1002824","Lenzburg","Lenzburg,Aargau,Switzerland","20126","CH","City",Active
|
2026 |
-
"1002825","Leuggern","Leuggern,Aargau,Switzerland","20126","CH","City",Active
|
2027 |
-
"1002826","Lupfig","Lupfig,Aargau,Switzerland","20126","CH","City",Active
|
2028 |
-
"1002827","Mellingen","Mellingen,Aargau,Switzerland","20126","CH","City",Active
|
2029 |
-
"1002828","Menziken","Menziken,Aargau,Switzerland","20126","CH","City",Active
|
2030 |
-
"1002829","Mohlin","Mohlin,Aargau,Switzerland","20126","CH","City",Active
|
2031 |
-
"1002830","Muhen","Muhen,Aargau,Switzerland","20126","CH","City",Active
|
2032 |
-
"1002831","Neuenhof","Neuenhof,Aargau,Switzerland","20126","CH","City",Active
|
2033 |
-
"1002832","Niederlenz","Niederlenz,Aargau,Switzerland","20126","CH","City",Active
|
2034 |
-
"1002833","Niederrohrdorf","Niederrohrdorf,Aargau,Switzerland","20126","CH","City",Active
|
2035 |
-
"1002834","Oberentfelden","Oberentfelden,Aargau,Switzerland","20126","CH","City",Active
|
2036 |
-
"1002835","Oberrohrdorf","Oberrohrdorf,Aargau,Switzerland","20126","CH","City",Active
|
2037 |
-
"1002836","Oftringen","Oftringen,Aargau,Switzerland","20126","CH","City",Active
|
2038 |
-
"1002837","Rheinfelden","Rheinfelden,Aargau,Switzerland","20126","CH","City",Active
|
2039 |
-
"1002839","Rothrist","Rothrist,Aargau,Switzerland","20126","CH","City",Active
|
2040 |
-
"1002840","Rudolfstetten-Friedlisberg","Rudolfstetten-Friedlisberg,Aargau,Switzerland","20126","CH","City",Active
|
2041 |
-
"1002841","Rupperswil","Rupperswil,Aargau,Switzerland","20126","CH","City",Active
|
2042 |
-
"1002842","Safenwil","Safenwil,Aargau,Switzerland","20126","CH","City",Active
|
2043 |
-
"1002844","Siglistorf","Siglistorf,Aargau,Switzerland","20126","CH","City",Active
|
2044 |
-
"1002845","Sins","Sins,Aargau,Switzerland","20126","CH","City",Active
|
2045 |
-
"1002846","Spreitenbach","Spreitenbach,Aargau,Switzerland","20126","CH","City",Active
|
2046 |
-
"1002847","Staufen","Staufen,Aargau,Switzerland","20126","CH","City",Active
|
2047 |
-
"1002848","Stein","Stein,Aargau,Switzerland","20126","CH","City",Active
|
2048 |
-
"1002849","Stetten","Stetten,Aargau,Switzerland","20126","CH","City",Active
|
2049 |
-
"1002850","Suhr","Suhr,Aargau,Switzerland","20126","CH","City",Active
|
2050 |
-
"1002852","Turgi","Turgi,Aargau,Switzerland","20126","CH","City",Active
|
2051 |
-
"1002853","Unterentfelden","Unterentfelden,Aargau,Switzerland","20126","CH","City",Active
|
2052 |
-
"1002854","Unterkulm","Unterkulm,Aargau,Switzerland","20126","CH","City",Active
|
2053 |
-
"1002855","Villigen","Villigen,Aargau,Switzerland","20126","CH","City",Active
|
2054 |
-
"1002856","Vordemwald","Vordemwald,Aargau,Switzerland","20126","CH","City",Active
|
2055 |
-
"1002857","Wettingen","Wettingen,Aargau,Switzerland","20126","CH","City",Active
|
2056 |
-
"1002858","Moriken-Wildegg","Moriken-Wildegg,Aargau,Switzerland","20126","CH","City",Active
|
2057 |
-
"1002859","Windisch","Windisch,Aargau,Switzerland","20126","CH","City",Active
|
2058 |
-
"1002860","Wohlen","Wohlen,Aargau,Switzerland","20126","CH","City",Active
|
2059 |
-
"1002861","Wurenlos","Wurenlos,Aargau,Switzerland","20126","CH","City",Active
|
2060 |
-
"1002862","Zofingen","Zofingen,Aargau,Switzerland","20126","CH","City",Active
|
2061 |
-
"1002863","Zufikon","Zufikon,Aargau,Switzerland","20126","CH","City",Active
|
2062 |
-
"1002864","Bad Zurzach","Bad Zurzach,Aargau,Switzerland","20126","CH","City",Active
|
2063 |
-
"1002865","Appenzell District","Appenzell District,Appenzell Innerrhoden,Switzerland","20127","CH","City",Active
|
2064 |
-
"1002866","Gais","Gais,Appenzell Ausserrhoden,Switzerland","20128","CH","City",Active
|
2065 |
-
"1002867","Heiden","Heiden,Appenzell Ausserrhoden,Switzerland","20128","CH","City",Active
|
2066 |
-
"1002868","Herisau","Herisau,Appenzell Ausserrhoden,Switzerland","20128","CH","City",Active
|
2067 |
-
"1002869","Teufen","Teufen,Appenzell Ausserrhoden,Switzerland","20128","CH","City",Active
|
2068 |
-
"1002870","Waldstatt","Waldstatt,Appenzell Ausserrhoden,Switzerland","20128","CH","City",Active
|
2069 |
-
"1002871","Aarberg","Aarberg,Canton of Bern,Switzerland","20129","CH","City",Active
|
2070 |
-
"1002872","Aarwangen","Aarwangen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2071 |
-
"1002873","Amsoldingen","Amsoldingen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2072 |
-
"1002874","Belp","Belp,Canton of Bern,Switzerland","20129","CH","City",Active
|
2073 |
-
"1002875","Bern","Bern,Canton of Bern,Switzerland","20129","CH","City",Active
|
2074 |
-
"1002876","Biel/Bienne","Biel/Bienne,Canton of Bern,Switzerland","20129","CH","City",Active
|
2075 |
-
"1002877","Brienz","Brienz,Canton of Bern,Switzerland","20129","CH","City",Active
|
2076 |
-
"1002879","Burgdorf","Burgdorf,Canton of Bern,Switzerland","20129","CH","City",Active
|
2077 |
-
"1002880","Ersigen","Ersigen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2078 |
-
"1002881","Farnern","Farnern,Canton of Bern,Switzerland","20129","CH","City",Active
|
2079 |
-
"1002882","Grindelwald","Grindelwald,Canton of Bern,Switzerland","20129","CH","City",Active
|
2080 |
-
"1002884","Muri bei Bern","Muri bei Bern,Canton of Bern,Switzerland","20129","CH","City",Active
|
2081 |
-
"1002887","Kirchlindach","Kirchlindach,Canton of Bern,Switzerland","20129","CH","City",Active
|
2082 |
-
"1002888","Herzogenbuchsee","Herzogenbuchsee,Canton of Bern,Switzerland","20129","CH","City",Active
|
2083 |
-
"1002889","Hilterfingen","Hilterfingen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2084 |
-
"1002890","Interlaken","Interlaken,Canton of Bern,Switzerland","20129","CH","City",Active
|
2085 |
-
"1002891","Ipsach","Ipsach,Canton of Bern,Switzerland","20129","CH","City",Active
|
2086 |
-
"1002892","Ittigen","Ittigen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2087 |
-
"1002893","Jegenstorf","Jegenstorf,Canton of Bern,Switzerland","20129","CH","City",Active
|
2088 |
-
"1002894","Kehrsatz","Kehrsatz,Canton of Bern,Switzerland","20129","CH","City",Active
|
2089 |
-
"1002895","Kirchberg","Kirchberg,Canton of Bern,Switzerland","20129","CH","City",Active
|
2090 |
-
"1002896","Konolfingen","Konolfingen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2091 |
-
"1002897","Langenthal","Langenthal,Canton of Bern,Switzerland","20129","CH","City",Active
|
2092 |
-
"1002898","Laufen","Laufen,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2093 |
-
"1002900","Lignieres","Lignieres,Neuchatel,Switzerland","20138","CH","City",Active
|
2094 |
-
"1002901","Lyss","Lyss,Canton of Bern,Switzerland","20129","CH","City",Active
|
2095 |
-
"1002902","Lyssach","Lyssach,Canton of Bern,Switzerland","20129","CH","City",Active
|
2096 |
-
"1002903","Madiswil","Madiswil,Canton of Bern,Switzerland","20129","CH","City",Active
|
2097 |
-
"1002904","Malleray","Malleray,Canton of Bern,Switzerland","20129","CH","City",Active
|
2098 |
-
"1002906","Meiringen","Meiringen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2099 |
-
"1002907","Moosseedorf","Moosseedorf,Canton of Bern,Switzerland","20129","CH","City",Active
|
2100 |
-
"1002908","Munsingen","Munsingen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2101 |
-
"1002909","Murten","Murten,Fribourg,Switzerland","20132","CH","City",Active
|
2102 |
-
"1002910","Nidau","Nidau,Canton of Bern,Switzerland","20129","CH","City",Active
|
2103 |
-
"1002913","Oberhofen","Oberhofen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2104 |
-
"1002916","Orpund","Orpund,Canton of Bern,Switzerland","20129","CH","City",Active
|
2105 |
-
"1002917","Orvin","Orvin,Canton of Bern,Switzerland","20129","CH","City",Active
|
2106 |
-
"1002918","Ostermundigen","Ostermundigen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2107 |
-
"1002919","Pery","Pery,Canton of Bern,Switzerland","20129","CH","City",Active
|
2108 |
-
"1002920","Pieterlen","Pieterlen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2109 |
-
"1002921","Schlosswil","Schlosswil,Canton of Bern,Switzerland","20129","CH","City",Active
|
2110 |
-
"1002922","Urtenen-Schonbuhl","Urtenen-Schonbuhl,Canton of Bern,Switzerland","20129","CH","City",Active
|
2111 |
-
"1002923","Schwadernau","Schwadernau,Canton of Bern,Switzerland","20129","CH","City",Active
|
2112 |
-
"1002924","Wahlern","Wahlern,Canton of Bern,Switzerland","20129","CH","City",Active
|
2113 |
-
"1002925","Seedorf","Seedorf,Canton of Bern,Switzerland","20129","CH","City",Active
|
2114 |
-
"1002926","Spiez","Spiez,Canton of Bern,Switzerland","20129","CH","City",Active
|
2115 |
-
"1002927","St-Imier","St-Imier,Canton of Bern,Switzerland","20129","CH","City",Active
|
2116 |
-
"1002928","Tavannes","Tavannes,Canton of Bern,Switzerland","20129","CH","City",Active
|
2117 |
-
"1002930","Thun","Thun,Canton of Bern,Switzerland","20129","CH","City",Active
|
2118 |
-
"1002931","Toffen","Toffen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2119 |
-
"1002932","Tramelan","Tramelan,Canton of Bern,Switzerland","20129","CH","City",Active
|
2120 |
-
"1002933","Trubschachen","Trubschachen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2121 |
-
"1002934","Uetendorf","Uetendorf,Canton of Bern,Switzerland","20129","CH","City",Active
|
2122 |
-
"1002935","Utzenstorf","Utzenstorf,Canton of Bern,Switzerland","20129","CH","City",Active
|
2123 |
-
"1002939","Worb","Worb,Canton of Bern,Switzerland","20129","CH","City",Active
|
2124 |
-
"1002940","Zollikofen","Zollikofen,Canton of Bern,Switzerland","20129","CH","City",Active
|
2125 |
-
"1002941","Aesch","Aesch,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2126 |
-
"1002942","Allschwil","Allschwil,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2127 |
-
"1002943","Arlesheim","Arlesheim,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2128 |
-
"1002944","Augst","Augst,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2129 |
-
"1002945","Binningen","Binningen,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2130 |
-
"1002946","Birsfelden","Birsfelden,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2131 |
-
"1002947","Blauen","Blauen,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2132 |
-
"1002948","Bockten","Bockten,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2133 |
-
"1002950","Giebenach","Giebenach,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2134 |
-
"1002951","Hersberg","Hersberg,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2135 |
-
"1002952","Holstein","Holstein,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2136 |
-
"1002953","Laufelfingen","Laufelfingen,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2137 |
-
"1002954","Liesberg","Liesberg,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2138 |
-
"1002955","Liestal","Liestal,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2139 |
-
"1002956","Munchenstein","Munchenstein,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2140 |
-
"1002957","Muttenz","Muttenz,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2141 |
-
"1002958","Oberwil","Oberwil,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2142 |
-
"1002959","Pratteln","Pratteln,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2143 |
-
"1002960","Reinach","Reinach,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2144 |
-
"1002961","Riehen","Riehen,Basel City,Switzerland","20131","CH","City",Active
|
2145 |
-
"1002962","Sissach","Sissach,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2146 |
-
"1002963","Waldenburg","Waldenburg,Basel-Landschaft,Switzerland","20130","CH","City",Active
|
2147 |
-
"1002964","Basel","Basel,Basel City,Switzerland","20131","CH","City",Active
|
2148 |
-
"1002965","Bettingen","Bettingen,Basel City,Switzerland","20131","CH","City",Active
|
2149 |
-
"1002967","Charmey","Charmey,Fribourg,Switzerland","20132","CH","City",Active
|
2150 |
-
"1002968","Chatel-Saint-Denis","Chatel-Saint-Denis,Fribourg,Switzerland","20132","CH","City",Active
|
2151 |
-
"1002969","Dudingen","Dudingen,Fribourg,Switzerland","20132","CH","City",Active
|
2152 |
-
"1002970","Wunnewil-Flamatt","Wunnewil-Flamatt,Fribourg,Switzerland","20132","CH","City",Active
|
2153 |
-
"1002971","Fribourg","Fribourg,Fribourg,Switzerland","20132","CH","City",Active
|
2154 |
-
"1002972","Givisiez","Givisiez,Fribourg,Switzerland","20132","CH","City",Active
|
2155 |
-
"1002973","Granges-Paccot","Granges-Paccot,Fribourg,Switzerland","20132","CH","City",Active
|
2156 |
-
"1002974","Marly","Marly,Fribourg,Switzerland","20132","CH","City",Active
|
2157 |
-
"1002975","Matran","Matran,Fribourg,Switzerland","20132","CH","City",Active
|
2158 |
-
"1002976","Neyruz","Neyruz,Fribourg,Switzerland","20132","CH","City",Active
|
2159 |
-
"1002977","Noreaz","Noreaz,Fribourg,Switzerland","20132","CH","City",Active
|
2160 |
-
"1002978","Payerne","Payerne,Vaud,Switzerland","20148","CH","City",Active
|
2161 |
-
"1002979","Tentlingen","Tentlingen,Fribourg,Switzerland","20132","CH","City",Active
|
2162 |
-
"1002980","Villars-sur-Glane","Villars-sur-Glane,Fribourg,Switzerland","20132","CH","City",Active
|
2163 |
-
"1002982","Bellevue","Bellevue,Geneva,Switzerland","20133","CH","City",Active
|
2164 |
-
"1002983","Carouge","Carouge,Geneva,Switzerland","20133","CH","City",Active
|
2165 |
-
"1002984","Pregny-Chambesy","Pregny-Chambesy,Geneva,Switzerland","20133","CH","City",Active
|
2166 |
-
"1002986","Chene-Bougeries","Chene-Bougeries,Geneva,Switzerland","20133","CH","City",Active
|
2167 |
-
"1002987","Chene-Bourg","Chene-Bourg,Geneva,Switzerland","20133","CH","City",Active
|
2168 |
-
"1002989","Collonge-Bellerive","Collonge-Bellerive,Geneva,Switzerland","20133","CH","City",Active
|
2169 |
-
"1002990","Cologny","Cologny,Geneva,Switzerland","20133","CH","City",Active
|
2170 |
-
"1002992","Geneva","Geneva,Geneva,Switzerland","20133","CH","City",Active
|
2171 |
-
"1002993","Grand-Saconnex","Grand-Saconnex,Geneva,Switzerland","20133","CH","City",Active
|
2172 |
-
"1002995","Jussy","Jussy,Geneva,Switzerland","20133","CH","City",Active
|
2173 |
-
"1002996","Lancy","Lancy,Geneva,Switzerland","20133","CH","City",Active
|
2174 |
-
"1002998","Meyrin","Meyrin,Geneva,Switzerland","20133","CH","City",Active
|
2175 |
-
"1002999","Perly","Perly,Geneva,Switzerland","20133","CH","City",Active
|
2176 |
-
"1003001","Plan-les-Ouates","Plan-les-Ouates,Geneva,Switzerland","20133","CH","City",Active
|
2177 |
-
"1003002","Presinge","Presinge,Geneva,Switzerland","20133","CH","City",Active
|
2178 |
-
"1003003","Thonex","Thonex,Geneva,Switzerland","20133","CH","City",Active
|
2179 |
-
"1003004","Vernier","Vernier,Geneva,Switzerland","20133","CH","City",Active
|
2180 |
-
"1003005","Versoix","Versoix,Geneva,Switzerland","20133","CH","City",Active
|
2181 |
-
"1003007","Veyrier","Veyrier,Geneva,Switzerland","20133","CH","City",Active
|
2182 |
-
"1003008","Bilten","Bilten,Glarus,Switzerland","20134","CH","City",Active
|
2183 |
-
"1003009","Ennenda","Ennenda,Glarus,Switzerland","20134","CH","City",Active
|
2184 |
-
"1003010","Glarus","Glarus,Glarus,Switzerland","20134","CH","City",Active
|
2185 |
-
"1003011","Mitlodi","Mitlodi,Glarus,Switzerland","20134","CH","Neighborhood",Active
|
2186 |
-
"1003012","Mollis","Mollis,Glarus,Switzerland","20134","CH","City",Active
|
2187 |
-
"1003013","Nafels","Nafels,Glarus,Switzerland","20134","CH","City",Active
|
2188 |
-
"1003014","Oberurnen","Oberurnen,Glarus,Switzerland","20134","CH","City",Active
|
2189 |
-
"1003015","Obstalden","Obstalden,Glarus,Switzerland","20134","CH","City",Active
|
2190 |
-
"1003016","Arosa","Arosa,Grisons,Switzerland","20135","CH","City",Active
|
2191 |
-
"1003017","Bonaduz","Bonaduz,Grisons,Switzerland","20135","CH","City",Active
|
2192 |
-
"1003018","Chur","Chur,Grisons,Switzerland","20135","CH","City",Active
|
2193 |
-
"1003019","Davos","Davos,Grisons,Switzerland","20135","CH","City",Active
|
2194 |
-
"1003022","Domat/Ems","Domat/Ems,Grisons,Switzerland","20135","CH","City",Active
|
2195 |
-
"1003023","Flims","Flims,Grisons,Switzerland","20135","CH","City",Active
|
2196 |
-
"1003024","Ilanz","Ilanz,Grisons,Switzerland","20135","CH","City",Active
|
2197 |
-
"1003025","Klosters-Serneus","Klosters-Serneus,Grisons,Switzerland","20135","CH","City",Active
|
2198 |
-
"1003026","Laax","Laax,Grisons,Switzerland","20135","CH","City",Active
|
2199 |
-
"1003028","Samedan","Samedan,Grisons,Switzerland","20135","CH","City",Active
|
2200 |
-
"1003030","Scuol","Scuol,Grisons,Switzerland","20135","CH","City",Active
|
2201 |
-
"1003031","Saint Moritz","Saint Moritz,Grisons,Switzerland","20135","CH","City",Active
|
2202 |
-
"1003032","Thusis","Thusis,Grisons,Switzerland","20135","CH","City",Active
|
2203 |
-
"1003033","Zizers","Zizers,Grisons,Switzerland","20135","CH","City",Active
|
2204 |
-
"1003034","Zuoz","Zuoz,Grisons,Switzerland","20135","CH","City",Active
|
2205 |
-
"1003036","Delemont","Delemont,Jura,Switzerland","20136","CH","City",Active
|
2206 |
-
"1003037","Le Noirmont","Le Noirmont,Jura,Switzerland","20136","CH","City",Active
|
2207 |
-
"1003038","Porrentruy","Porrentruy,Jura,Switzerland","20136","CH","City",Active
|
2208 |
-
"1003039","Rossemaison","Rossemaison,Jura,Switzerland","20136","CH","City",Active
|
2209 |
-
"1003040","Saignelegier","Saignelegier,Jura,Switzerland","20136","CH","City",Active
|
2210 |
-
"1003041","Adligenswil","Adligenswil,Lucerne,Switzerland","20137","CH","City",Active
|
2211 |
-
"1003042","Altishofen","Altishofen,Lucerne,Switzerland","20137","CH","City",Active
|
2212 |
-
"1003043","Ballwil","Ballwil,Lucerne,Switzerland","20137","CH","City",Active
|
2213 |
-
"1003044","Ebikon","Ebikon,Lucerne,Switzerland","20137","CH","City",Active
|
2214 |
-
"1003045","Emmen","Emmen,Lucerne,Switzerland","20137","CH","City",Active
|
2215 |
-
"1003047","Entlebuch","Entlebuch,Lucerne,Switzerland","20137","CH","City",Active
|
2216 |
-
"1003048","Gisikon","Gisikon,Lucerne,Switzerland","20137","CH","City",Active
|
2217 |
-
"1003049","Grosswangen","Grosswangen,Lucerne,Switzerland","20137","CH","City",Active
|
2218 |
-
"1003050","Hergiswil","Hergiswil,Nidwalden,Switzerland","20139","CH","City",Active
|
2219 |
-
"1003051","Hitzkirch","Hitzkirch,Lucerne,Switzerland","20137","CH","City",Active
|
2220 |
-
"1003052","Hochdorf","Hochdorf,Lucerne,Switzerland","20137","CH","City",Active
|
2221 |
-
"1003054","Kriens","Kriens,Lucerne,Switzerland","20137","CH","City",Active
|
2222 |
-
"1003055","Littau","Littau,Lucerne,Switzerland","20137","CH","City",Active
|
2223 |
-
"1003056","Lucerne","Lucerne,Lucerne,Switzerland","20137","CH","City",Active
|
2224 |
-
"1003057","Malters","Malters,Lucerne,Switzerland","20137","CH","City",Active
|
2225 |
-
"1003058","Marbach","Marbach,Lucerne,Switzerland","20137","CH","City",Active
|
2226 |
-
"1003059","Meggen","Meggen,Lucerne,Switzerland","20137","CH","City",Active
|
2227 |
-
"1003060","Menznau","Menznau,Lucerne,Switzerland","20137","CH","City",Active
|
2228 |
-
"1003061","Nottwil","Nottwil,Lucerne,Switzerland","20137","CH","City",Active
|
2229 |
-
"1003062","Reiden","Reiden,Lucerne,Switzerland","20137","CH","City",Active
|
2230 |
-
"1003063","Rickenbach","Rickenbach,Lucerne,Switzerland","20137","CH","City",Active
|
2231 |
-
"1003064","Root","Root,Lucerne,Switzerland","20137","CH","City",Active
|
2232 |
-
"1003065","Rothenburg","Rothenburg,Lucerne,Switzerland","20137","CH","City",Active
|
2233 |
-
"1003066","Ruswil","Ruswil,Lucerne,Switzerland","20137","CH","City",Active
|
2234 |
-
"1003069","Schupfheim","Schupfheim,Lucerne,Switzerland","20137","CH","City",Active
|
2235 |
-
"1003070","Sempach","Sempach,Lucerne,Switzerland","20137","CH","City",Active
|
2236 |
-
"1003071","Sursee","Sursee,Lucerne,Switzerland","20137","CH","City",Active
|
2237 |
-
"1003072","Triengen","Triengen,Lucerne,Switzerland","20137","CH","City",Active
|
2238 |
-
"1003073","Willisau","Willisau,Lucerne,Switzerland","20137","CH","City",Active
|
2239 |
-
"1003074","Wolhusen","Wolhusen,Lucerne,Switzerland","20137","CH","City",Active
|
2240 |
-
"1003075","Bevaix","Bevaix,Neuchatel,Switzerland","20138","CH","City",Active
|
2241 |
-
"1003076","Colombier","Colombier,Neuchatel,Switzerland","20138","CH","City",Active
|
2242 |
-
"1003078","Cortaillod","Cortaillod,Neuchatel,Switzerland","20138","CH","City",Active
|
2243 |
-
"1003079","Couvet","Couvet,Neuchatel,Switzerland","20138","CH","City",Active
|
2244 |
-
"1003080","Cressier","Cressier,Neuchatel,Switzerland","20138","CH","City",Active
|
2245 |
-
"1003082","La Chaux-de-Fonds","La Chaux-de-Fonds,Neuchatel,Switzerland","20138","CH","City",Active
|
2246 |
-
"1003083","La Neuveville","La Neuveville,Canton of Bern,Switzerland","20129","CH","City",Active
|
2247 |
-
"1003084","Le Locle","Le Locle,Neuchatel,Switzerland","20138","CH","City",Active
|
2248 |
-
"1003085","Les Brenets","Les Brenets,Neuchatel,Switzerland","20138","CH","City",Active
|
2249 |
-
"1003086","Les Geneveys-sur-Coffrane","Les Geneveys-sur-Coffrane,Neuchatel,Switzerland","20138","CH","City",Active
|
2250 |
-
"1003088","Neuchatel","Neuchatel,Neuchatel,Switzerland","20138","CH","City",Active
|
2251 |
-
"1003089","Saint-Blaise","Saint-Blaise,Neuchatel,Switzerland","20138","CH","City",Active
|
2252 |
-
"1003090","Buochs","Buochs,Nidwalden,Switzerland","20139","CH","City",Active
|
2253 |
-
"1003091","Ennetburgen","Ennetburgen,Nidwalden,Switzerland","20139","CH","City",Active
|
2254 |
-
"1003092","Stans","Stans,Nidwalden,Switzerland","20139","CH","City",Active
|
2255 |
-
"1003094","Stansstad","Stansstad,Nidwalden,Switzerland","20139","CH","City",Active
|
2256 |
-
"1003095","Engelberg","Engelberg,Obwalden,Switzerland","20140","CH","City",Active
|
2257 |
-
"1003096","Kerns","Kerns,Obwalden,Switzerland","20140","CH","City",Active
|
2258 |
-
"1003097","Au","Au,St. Gallen,Switzerland","20141","CH","City",Active
|
2259 |
-
"1003098","Buchs","Buchs,St. Gallen,Switzerland","20141","CH","City",Active
|
2260 |
-
"1003099","Flawil","Flawil,St. Gallen,Switzerland","20141","CH","City",Active
|
2261 |
-
"1003100","Gams","Gams,St. Gallen,Switzerland","20141","CH","City",Active
|
2262 |
-
"1003101","Gossau","Gossau,St. Gallen,Switzerland","20141","CH","City",Active
|
2263 |
-
"1003104","Lichtensteig","Lichtensteig,St. Gallen,Switzerland","20141","CH","City",Active
|
2264 |
-
"1003105","Mels","Mels,St. Gallen,Switzerland","20141","CH","City",Active
|
2265 |
-
"1003106","Nesslau-Krummenau","Nesslau-Krummenau,St. Gallen,Switzerland","20141","CH","City",Active
|
2266 |
-
"1003107","Oberriet","Oberriet,St. Gallen,Switzerland","20141","CH","City",Active
|
2267 |
-
"1003109","Rorschach","Rorschach,St. Gallen,Switzerland","20141","CH","City",Active
|
2268 |
-
"1003110","Sargans","Sargans,St. Gallen,Switzerland","20141","CH","City",Active
|
2269 |
-
"1003111","Schwerzenbach","Schwerzenbach,Zurich,Switzerland","20151","CH","City",Active
|
2270 |
-
"1003112","Sennwald","Sennwald,St. Gallen,Switzerland","20141","CH","City",Active
|
2271 |
-
"1003113","St. Gallen","St. Gallen,St. Gallen,Switzerland","20141","CH","City",Active
|
2272 |
-
"1003114","Uznach","Uznach,St. Gallen,Switzerland","20141","CH","City",Active
|
2273 |
-
"1003115","Wattwil","Wattwil,St. Gallen,Switzerland","20141","CH","City",Active
|
2274 |
-
"1003116","Wil","Wil,St. Gallen,Switzerland","20141","CH","City",Active
|
2275 |
-
"1003117","Beringen","Beringen,Schaffhausen,Switzerland","20142","CH","City",Active
|
2276 |
-
"1003119","Ramsen","Ramsen,Schaffhausen,Switzerland","20142","CH","City",Active
|
2277 |
-
"1003120","Schaffhausen","Schaffhausen,Schaffhausen,Switzerland","20142","CH","City",Active
|
2278 |
-
"1003121","Thayngen","Thayngen,Schaffhausen,Switzerland","20142","CH","City",Active
|
2279 |
-
"1003122","Balsthal","Balsthal,Solothurn,Switzerland","20143","CH","City",Active
|
2280 |
-
"1003123","Battwil","Battwil,Solothurn,Switzerland","20143","CH","City",Active
|
2281 |
-
"1003124","Bellach","Bellach,Solothurn,Switzerland","20143","CH","City",Active
|
2282 |
-
"1003125","Bettlach","Bettlach,Solothurn,Switzerland","20143","CH","City",Active
|
2283 |
-
"1003126","Biberist","Biberist,Solothurn,Switzerland","20143","CH","City",Active
|
2284 |
-
"1003127","Breitenbach","Breitenbach,Solothurn,Switzerland","20143","CH","City",Active
|
2285 |
-
"1003128","Daniken","Daniken,Solothurn,Switzerland","20143","CH","City",Active
|
2286 |
-
"1003129","Dornach","Dornach,Solothurn,Switzerland","20143","CH","City",Active
|
2287 |
-
"1003130","Dulliken","Dulliken,Solothurn,Switzerland","20143","CH","City",Active
|
2288 |
-
"1003131","Egerkingen","Egerkingen,Solothurn,Switzerland","20143","CH","City",Active
|
2289 |
-
"1003132","Grenchen","Grenchen,Solothurn,Switzerland","20143","CH","City",Active
|
2290 |
-
"1003133","Gretzenbach","Gretzenbach,Solothurn,Switzerland","20143","CH","City",Active
|
2291 |
-
"1003134","Hagendorf","Hagendorf,Solothurn,Switzerland","20143","CH","City",Active
|
2292 |
-
"1003135","Kleinlutzel","Kleinlutzel,Solothurn,Switzerland","20143","CH","City",Active
|
2293 |
-
"1003136","Lengnau","Lengnau,Canton of Bern,Switzerland","20129","CH","City",Active
|
2294 |
-
"1003137","Oberbuchsiten","Oberbuchsiten,Solothurn,Switzerland","20143","CH","City",Active
|
2295 |
-
"1003138","Oberdorf","Oberdorf,Solothurn,Switzerland","20143","CH","City",Active
|
2296 |
-
"1003139","Oensingen","Oensingen,Solothurn,Switzerland","20143","CH","City",Active
|
2297 |
-
"1003140","Schonenwerd","Schonenwerd,Solothurn,Switzerland","20143","CH","City",Active
|
2298 |
-
"1003141","Solothurn","Solothurn,Solothurn,Switzerland","20143","CH","City",Active
|
2299 |
-
"1003142","Zuchwil","Zuchwil,Solothurn,Switzerland","20143","CH","City",Active
|
2300 |
-
"1003143","Einsiedeln","Einsiedeln,Schwyz,Switzerland","20144","CH","City",Active
|
2301 |
-
"1003144","Freienbach","Freienbach,Schwyz,Switzerland","20144","CH","City",Active
|
2302 |
-
"1003145","Galgenen","Galgenen,Schwyz,Switzerland","20144","CH","City",Active
|
2303 |
-
"1003146","Gersau","Gersau,Schwyz,Switzerland","20144","CH","City",Active
|
2304 |
-
"1003148","Kussnacht","Kussnacht,Schwyz,Switzerland","20144","CH","City",Active
|
2305 |
-
"1003149","Schwyz","Schwyz,Schwyz,Switzerland","20144","CH","City",Active
|
2306 |
-
"1003151","Wollerau","Wollerau,Schwyz,Switzerland","20144","CH","City",Active
|
2307 |
-
"1003152","Amriswil","Amriswil,Thurgau,Switzerland","20145","CH","City",Active
|
2308 |
-
"1003153","Arbon","Arbon,Thurgau,Switzerland","20145","CH","City",Active
|
2309 |
-
"1003154","Bischofszell","Bischofszell,Thurgau,Switzerland","20145","CH","City",Active
|
2310 |
-
"1003155","Frauenfeld","Frauenfeld,Thurgau,Switzerland","20145","CH","City",Active
|
2311 |
-
"1003156","Gottlieben","Gottlieben,Thurgau,Switzerland","20145","CH","City",Active
|
2312 |
-
"1003157","Gachnang","Gachnang,Thurgau,Switzerland","20145","CH","City",Active
|
2313 |
-
"1003158","Matzingen","Matzingen,Thurgau,Switzerland","20145","CH","City",Active
|
2314 |
-
"1003159","Pfyn","Pfyn,Thurgau,Switzerland","20145","CH","City",Active
|
2315 |
-
"1003160","Roggwil","Roggwil,Thurgau,Switzerland","20145","CH","City",Active
|
2316 |
-
"1003161","Romanshorn","Romanshorn,Thurgau,Switzerland","20145","CH","City",Active
|
2317 |
-
"1003162","Sirnach","Sirnach,Thurgau,Switzerland","20145","CH","City",Active
|
2318 |
-
"1003163","Steckborn","Steckborn,Thurgau,Switzerland","20145","CH","City",Active
|
2319 |
-
"1003164","Wangi","Wangi,Thurgau,Switzerland","20145","CH","City",Active
|
2320 |
-
"1003165","Weinfelden","Weinfelden,Thurgau,Switzerland","20145","CH","City",Active
|
2321 |
-
"1003166","Agno","Agno,Ticino,Switzerland","20146","CH","City",Active
|
2322 |
-
"1003167","Ascona","Ascona,Ticino,Switzerland","20146","CH","City",Active
|
2323 |
-
"1003168","Balerna","Balerna,Ticino,Switzerland","20146","CH","City",Active
|
2324 |
-
"1003169","Bellinzona","Bellinzona,Ticino,Switzerland","20146","CH","City",Active
|
2325 |
-
"1003170","Chiasso","Chiasso,Ticino,Switzerland","20146","CH","City",Active
|
2326 |
-
"1003171","Giubiasco","Giubiasco,Ticino,Switzerland","20146","CH","City",Active
|
2327 |
-
"1003172","Ligornetto","Ligornetto,Ticino,Switzerland","20146","CH","City",Active
|
2328 |
-
"1003173","Losone","Losone,Ticino,Switzerland","20146","CH","City",Active
|
2329 |
-
"1003174","Lugano","Lugano,Ticino,Switzerland","20146","CH","City",Active
|
2330 |
-
"1003175","Manno","Manno,Ticino,Switzerland","20146","CH","City",Active
|
2331 |
-
"1003176","Melide","Melide,Ticino,Switzerland","20146","CH","City",Active
|
2332 |
-
"1003177","Mendrisio","Mendrisio,Ticino,Switzerland","20146","CH","City",Active
|
2333 |
-
"1003178","Muralto","Muralto,Ticino,Switzerland","20146","CH","City",Active
|
2334 |
-
"1003181","Aigle","Aigle,Vaud,Switzerland","20148","CH","City",Active
|
2335 |
-
"1003182","Aubonne","Aubonne,Vaud,Switzerland","20148","CH","City",Active
|
2336 |
-
"1003183","Bex","Bex,Vaud,Switzerland","20148","CH","City",Active
|
2337 |
-
"1003184","Bursins","Bursins,Vaud,Switzerland","20148","CH","City",Active
|
2338 |
-
"1003185","Chateau-d'Oex","Chateau-d'Oex,Vaud,Switzerland","20148","CH","City",Active
|
2339 |
-
"1003186","Chavannes-de-Bogis","Chavannes-de-Bogis,Vaud,Switzerland","20148","CH","City",Active
|
2340 |
-
"1003187","Coppet","Coppet,Vaud,Switzerland","20148","CH","City",Active
|
2341 |
-
"1003188","Cossonay","Cossonay,Vaud,Switzerland","20148","CH","City",Active
|
2342 |
-
"1003189","Crissier","Crissier,Vaud,Switzerland","20148","CH","City",Active
|
2343 |
-
"1003190","Denens","Denens,Vaud,Switzerland","20148","CH","City",Active
|
2344 |
-
"1003191","Ecublens","Ecublens,Vaud,Switzerland","20148","CH","City",Active
|
2345 |
-
"1003192","Epalinges","Epalinges,Vaud,Switzerland","20148","CH","City",Active
|
2346 |
-
"1003193","Founex","Founex,Vaud,Switzerland","20148","CH","City",Active
|
2347 |
-
"1003194","Gland","Gland,Vaud,Switzerland","20148","CH","City",Active
|
2348 |
-
"1003195","Henniez","Henniez,Vaud,Switzerland","20148","CH","City",Active
|
2349 |
-
"1003196","Lausanne","Lausanne,Vaud,Switzerland","20148","CH","City",Active
|
2350 |
-
"1003197","Le Mont-sur-Lausanne","Le Mont-sur-Lausanne,Vaud,Switzerland","20148","CH","City",Active
|
2351 |
-
"1003199","Leysin","Leysin,Vaud,Switzerland","20148","CH","City",Active
|
2352 |
-
"1003200","Lucens","Lucens,Vaud,Switzerland","20148","CH","City",Active
|
2353 |
-
"1003201","Mies","Mies,Vaud,Switzerland","20148","CH","City",Active
|
2354 |
-
"1003202","Montreux","Montreux,Vaud,Switzerland","20148","CH","City",Active
|
2355 |
-
"1003203","Morges","Morges,Vaud,Switzerland","20148","CH","City",Active
|
2356 |
-
"1003204","Moudon","Moudon,Vaud,Switzerland","20148","CH","City",Active
|
2357 |
-
"1003205","Nyon","Nyon,Vaud,Switzerland","20148","CH","City",Active
|
2358 |
-
"1003206","Oron-la-Ville","Oron-la-Ville,Vaud,Switzerland","20148","CH","City",Active
|
2359 |
-
"1003207","Penthalaz","Penthalaz,Vaud,Switzerland","20148","CH","City",Active
|
2360 |
-
"1003208","Pompaples","Pompaples,Vaud,Switzerland","20148","CH","City",Active
|
2361 |
-
"1003209","Prangins","Prangins,Vaud,Switzerland","20148","CH","City",Active
|
2362 |
-
"1003210","Preverenges","Preverenges,Vaud,Switzerland","20148","CH","City",Active
|
2363 |
-
"1003211","Prilly","Prilly,Vaud,Switzerland","20148","CH","City",Active
|
2364 |
-
"1003212","Pully","Pully,Vaud,Switzerland","20148","CH","City",Active
|
2365 |
-
"1003213","Renens","Renens,Vaud,Switzerland","20148","CH","City",Active
|
2366 |
-
"1003215","Saint-Sulpice","Saint-Sulpice,Vaud,Switzerland","20148","CH","City",Active
|
2367 |
-
"1003217","Vevey","Vevey,Vaud,Switzerland","20148","CH","City",Active
|
2368 |
-
"1003219","Yverdon-les-Bains","Yverdon-les-Bains,Vaud,Switzerland","20148","CH","City",Active
|
2369 |
-
"1003220","Brig","Brig,Valais,Switzerland","20149","CH","City",Active
|
2370 |
-
"1003221","Collombey","Collombey,Valais,Switzerland","20149","CH","City",Active
|
2371 |
-
"1003222","Martigny","Martigny,Valais,Switzerland","20149","CH","City",Active
|
2372 |
-
"1003223","Crans-Montana","Crans-Montana,Valais,Switzerland","20149","CH","City",Active
|
2373 |
-
"1003224","Naters","Naters,Valais,Switzerland","20149","CH","City",Active
|
2374 |
-
"1003225","Saas Fee","Saas Fee,Valais,Switzerland","20149","CH","City",Active
|
2375 |
-
"1003226","Sierre","Sierre,Valais,Switzerland","20149","CH","City",Active
|
2376 |
-
"1003227","Sion","Sion,Valais,Switzerland","20149","CH","City",Active
|
2377 |
-
"1003229","Zermatt","Zermatt,Valais,Switzerland","20149","CH","City",Active
|
2378 |
-
"1003230","Baar","Baar,Canton of Zug,Switzerland","20150","CH","City",Active
|
2379 |
-
"1003231","Cham","Cham,Canton of Zug,Switzerland","20150","CH","City",Active
|
2380 |
-
"1003232","Neuheim","Neuheim,Canton of Zug,Switzerland","20150","CH","City",Active
|
2381 |
-
"1003233","Risch-Rotkreuz","Risch-Rotkreuz,Canton of Zug,Switzerland","20150","CH","City",Active
|
2382 |
-
"1003234","Steinhausen","Steinhausen,Canton of Zug,Switzerland","20150","CH","City",Active
|
2383 |
-
"1003235","Zug","Zug,Canton of Zug,Switzerland","20150","CH","City",Active
|
2384 |
-
"1003236","Aadorf","Aadorf,Thurgau,Switzerland","20145","CH","City",Active
|
2385 |
-
"1003237","Adliswil","Adliswil,Zurich,Switzerland","20151","CH","City",Active
|
2386 |
-
"1003238","Bachenbulach","Bachenbulach,Zurich,Switzerland","20151","CH","City",Active
|
2387 |
-
"1003239","Bassersdorf","Bassersdorf,Zurich,Switzerland","20151","CH","City",Active
|
2388 |
-
"1003241","Bonstetten","Bonstetten,Zurich,Switzerland","20151","CH","City",Active
|
2389 |
-
"1003242","Bremgarten","Bremgarten,Aargau,Switzerland","20126","CH","City",Active
|
2390 |
-
"1003243","Wangen-Bruttisellen","Wangen-Bruttisellen,Zurich,Switzerland","20151","CH","City",Active
|
2391 |
-
"1003244","Bubikon","Bubikon,Zurich,Switzerland","20151","CH","City",Active
|
2392 |
-
"1003245","Bulach","Bulach,Zurich,Switzerland","20151","CH","City",Active
|
2393 |
-
"1003246","Dielsdorf","Dielsdorf,Zurich,Switzerland","20151","CH","City",Active
|
2394 |
-
"1003247","Dietikon","Dietikon,Zurich,Switzerland","20151","CH","City",Active
|
2395 |
-
"1003248","Dubendorf","Dubendorf,Zurich,Switzerland","20151","CH","City",Active
|
2396 |
-
"1003249","Maur","Maur,Zurich,Switzerland","20151","CH","City",Active
|
2397 |
-
"1003250","Effretikon","Effretikon,Zurich,Switzerland","20151","CH","City",Active
|
2398 |
-
"1003251","Egg","Egg,Zurich,Switzerland","20151","CH","City",Active
|
2399 |
-
"1003252","Eglisau","Eglisau,Switzerland","2756","CH","City",Active
|
2400 |
-
"1003253","Embrach","Embrach,Zurich,Switzerland","20151","CH","City",Active
|
2401 |
-
"1003254","Erlenbach","Erlenbach,Zurich,Switzerland","20151","CH","City",Active
|
2402 |
-
"1003257","Geroldswil","Geroldswil,Zurich,Switzerland","20151","CH","City",Active
|
2403 |
-
"1003258","Glattfelden","Glattfelden,Zurich,Switzerland","20151","CH","City",Active
|
2404 |
-
"1003259","Greifensee","Greifensee,Zurich,Switzerland","20151","CH","City",Active
|
2405 |
-
"1003260","Hedingen","Hedingen,Zurich,Switzerland","20151","CH","City",Active
|
2406 |
-
"1003261","Hinwil","Hinwil,Zurich,Switzerland","20151","CH","City",Active
|
2407 |
-
"1003262","Hombrechtikon","Hombrechtikon,Zurich,Switzerland","20151","CH","City",Active
|
2408 |
-
"1003263","Horgen","Horgen,Zurich,Switzerland","20151","CH","City",Active
|
2409 |
-
"1003264","Kilchberg","Kilchberg,Zurich,Switzerland","20151","CH","City",Active
|
2410 |
-
"1003265","Kloten","Kloten,Zurich,Switzerland","20151","CH","City",Active
|
2411 |
-
"1003267","Mannedorf","Mannedorf,Zurich,Switzerland","20151","CH","City",Active
|
2412 |
-
"1003269","Meilen","Meilen,Zurich,Switzerland","20151","CH","City",Active
|
2413 |
-
"1003270","Monchaltorf","Monchaltorf,Zurich,Switzerland","20151","CH","City",Active
|
2414 |
-
"1003271","Neuhausen am Rheinfall","Neuhausen am Rheinfall,Schaffhausen,Switzerland","20142","CH","City",Active
|
2415 |
-
"1003273","Opfikon","Opfikon,Zurich,Switzerland","20151","CH","City",Active
|
2416 |
-
"1003274","Otelfingen","Otelfingen,Zurich,Switzerland","20151","CH","City",Active
|
2417 |
-
"1003275","Pfaffikon","Pfaffikon,Zurich,Switzerland","20151","CH","City",Active
|
2418 |
-
"1003276","Regensdorf","Regensdorf,Zurich,Switzerland","20151","CH","City",Active
|
2419 |
-
"1003277","Richterswil","Richterswil,Zurich,Switzerland","20151","CH","City",Active
|
2420 |
-
"1003278","Rumlang","Rumlang,Zurich,Switzerland","20151","CH","City",Active
|
2421 |
-
"1003279","Ruschlikon","Ruschlikon,Zurich,Switzerland","20151","CH","City",Active
|
2422 |
-
"1003280","Ruti","Ruti,Switzerland","2756","CH","City",Active
|
2423 |
-
"1003281","Schlieren","Schlieren,Zurich,Switzerland","20151","CH","City",Active
|
2424 |
-
"1003282","Seuzach","Seuzach,Zurich,Switzerland","20151","CH","City",Active
|
2425 |
-
"1003283","Stafa","Stafa,Zurich,Switzerland","20151","CH","City",Active
|
2426 |
-
"1003284","Thalwil","Thalwil,Zurich,Switzerland","20151","CH","City",Active
|
2427 |
-
"1003285","Turbenthal","Turbenthal,Zurich,Switzerland","20151","CH","City",Active
|
2428 |
-
"1003286","Uetikon","Uetikon,Zurich,Switzerland","20151","CH","City",Active
|
2429 |
-
"1003287","Urdorf","Urdorf,Zurich,Switzerland","20151","CH","City",Active
|
2430 |
-
"1003288","Uster","Uster,Zurich,Switzerland","20151","CH","City",Active
|
2431 |
-
"1003289","Wadenswil","Wadenswil,Zurich,Switzerland","20151","CH","City",Active
|
2432 |
-
"1003290","Wallisellen","Wallisellen,Zurich,Switzerland","20151","CH","City",Active
|
2433 |
-
"1003291","Weisslingen","Weisslingen,Zurich,Switzerland","20151","CH","City",Active
|
2434 |
-
"1003292","Wetzikon","Wetzikon,Zurich,Switzerland","20151","CH","City",Active
|
2435 |
-
"1003293","Winterthur","Winterthur,Zurich,Switzerland","20151","CH","City",Active
|
2436 |
-
"1003294","Zollikon","Zollikon,Zurich,Switzerland","20151","CH","City",Active
|
2437 |
-
"1003296","Zumikon","Zumikon,Zurich,Switzerland","20151","CH","City",Active
|
2438 |
-
"1003297","Zurich","Zurich,Zurich,Switzerland","20151","CH","City",Active
|
2439 |
-
"1003298","Antofagasta","Antofagasta,Antofagasta,Chile","20152","CL","City",Active
|
2440 |
-
"1003299","Chuquicamata","Chuquicamata,Antofagasta,Chile","20152","CL","Neighborhood",Active
|
2441 |
-
"1003300","Temuco","Temuco,Araucania,Chile","20153","CL","City",Active
|
2442 |
-
"1003301","Victoria","Victoria,Araucania,Chile","20153","CL","City",Active
|
2443 |
-
"1003302","Concepcion","Concepcion,Bio Bio,Chile","20154","CL","City",Active
|
2444 |
-
"1003303","Los Angeles","Los Angeles,Bio Bio,Chile","20154","CL","City",Active
|
2445 |
-
"1003304","Talcahuano","Talcahuano,Bio Bio,Chile","20154","CL","City",Active
|
2446 |
-
"1003305","Algarrobo","Algarrobo,Coquimbo,Chile","20155","CL","Neighborhood",Active
|
2447 |
-
"1003306","La Serena","La Serena,Coquimbo,Chile","20155","CL","City",Active
|
2448 |
-
"1003307","Rancagua","Rancagua,O'Higgins,Chile","20156","CL","City",Active
|
2449 |
-
"1003308","Osorno","Osorno,Los Lagos,Chile","20157","CL","City",Active
|
2450 |
-
"1003309","Puerto Varas","Puerto Varas,Los Lagos,Chile","20157","CL","City",Active
|
2451 |
-
"1003310","Valdivia","Valdivia,Los Rios,Chile","9047105","CL","Municipality",Active
|
2452 |
-
"1003311","Punta Arenas","Punta Arenas,Magallanes and Chilean Antarctica,Chile","20158","CL","City",Active
|
2453 |
-
"1003312","Curico","Curico,Maule,Chile","20159","CL","City",Active
|
2454 |
-
"1003313","Talca","Talca,Maule,Chile","20159","CL","City",Active
|
2455 |
-
"1003314","Conchali","Conchali,Santiago Metropolitan Region,Chile","20160","CL","City",Active
|
2456 |
-
"1003315","La Cisterna","La Cisterna,Santiago Metropolitan Region,Chile","20160","CL","City",Active
|
2457 |
-
"1003316","La Florida","La Florida,Santiago Metropolitan Region,Chile","20160","CL","City",Active
|
2458 |
-
"1003317","Las Condes","Las Condes,Santiago Metropolitan Region,Chile","20160","CL","City",Active
|
2459 |
-
"1003318","Macul","Macul,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2460 |
-
"1003319","Maipu","Maipu,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2461 |
-
"1003320","Nunoa","Nunoa,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2462 |
-
"1003321","Providencia","Providencia,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2463 |
-
"1003322","Quilicura","Quilicura,Santiago Metropolitan Region,Chile","20160","CL","City",Active
|
2464 |
-
"1003323","Quinta Normal","Quinta Normal,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2465 |
-
"1003324","San Miguel","San Miguel,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2466 |
-
"1003325","Santiago","Santiago,Santiago Metropolitan Region,Chile","20160","CL","City",Active
|
2467 |
-
"1003326","Vitacura","Vitacura,Santiago Metropolitan Region,Chile","20160","CL","Municipality",Active
|
2468 |
-
"1003327","Iquique","Iquique,Tarapaca,Chile","20161","CL","City",Active
|
2469 |
-
"1003328","Los Andes","Los Andes,Valparaiso,Chile","20162","CL","City",Active
|
2470 |
-
"1003329","Quillota","Quillota,Valparaiso,Chile","20162","CL","City",Active
|
2471 |
-
"1003330","San Antonio","San Antonio,Valparaiso,Chile","20162","CL","City",Active
|
2472 |
-
"1003331","San Fernando","San Fernando,O'Higgins,Chile","20156","CL","City",Active
|
2473 |
-
"1003332","Valparaiso","Valparaiso,Valparaiso,Chile","20162","CL","City",Active
|
2474 |
-
"1003333","Vina del Mar","Vina del Mar,Valparaiso,Chile","20162","CL","Municipality",Active
|
2475 |
-
"1003334","Beijing","Beijing,Beijing,China","20163","CN","City",Active
|
2476 |
-
"1003338","Tianjin","Tianjin,Tianjin,China","20164","CN","City",Active
|
2477 |
-
"1003339","Chengde","Chengde,Hebei,China","20165","CN","City",Active
|
2478 |
-
"1003341","Handan","Handan,Hebei,China","20165","CN","City",Active
|
2479 |
-
"1003342","Hengshui","Hengshui,Hebei,China","20165","CN","City",Active
|
2480 |
-
"1003343","Langfang","Langfang,Hebei,China","20165","CN","City",Active
|
2481 |
-
"1003345","Qinhuangdao","Qinhuangdao,Hebei,China","20165","CN","City",Active
|
2482 |
-
"1003347","Shijiazhuang","Shijiazhuang,Hebei,China","20165","CN","City",Active
|
2483 |
-
"1003350","Zhangjiakou","Zhangjiakou,Hebei,China","20165","CN","City",Active
|
2484 |
-
"1003351","Ankang","Ankang,Shaanxi,China","20189","CN","City",Active
|
2485 |
-
"1003354","Hanzhong","Hanzhong,Shaanxi,China","20189","CN","City",Active
|
2486 |
-
"1003355","Jincheng","Jincheng,Shanxi,China","20166","CN","City",Active
|
2487 |
-
"1003356","Linfen","Linfen,Shanxi,China","20166","CN","City",Active
|
2488 |
-
"1003358","Sanmenxia","Sanmenxia,Henan,China","20178","CN","City",Active
|
2489 |
-
"1003362","Taiyuan","Taiyuan,Shanxi,China","20166","CN","City",Active
|
2490 |
-
"1003363","Tongchuan","Tongchuan,Shaanxi,China","20189","CN","City",Active
|
2491 |
-
"1003365","Baotou","Baotou,Inner Mongolia,China","20167","CN","City",Active
|
2492 |
-
"1003366","Chifeng","Chifeng,Inner Mongolia,China","20167","CN","City",Active
|
2493 |
-
"1003367","Hohhot","Hohhot,Inner Mongolia,China","20167","CN","City",Active
|
2494 |
-
"1003368","Anshan","Anshan,Liaoning,China","20168","CN","City",Active
|
2495 |
-
"1003369","Benxi","Benxi,Liaoning,China","20168","CN","City",Active
|
2496 |
-
"1003370","Chaoyang, Liaoning","Chaoyang, Liaoning,Liaoning,China","20168","CN","City",Active
|
2497 |
-
"1003371","Dalian","Dalian,Liaoning,China","20168","CN","City",Active
|
2498 |
-
"1003372","Dandong","Dandong,Liaoning,China","20168","CN","City",Active
|
2499 |
-
"1003373","Fushun","Fushun,Liaoning,China","20168","CN","City",Active
|
2500 |
-
"1003374","Fuxin","Fuxin,Liaoning,China","20168","CN","City",Active
|
2501 |
-
"1003376","Jinzhou","Jinzhou,Liaoning,China","20168","CN","City",Active
|
2502 |
-
"1003377","Liaoyang","Liaoyang,Liaoning,China","20168","CN","City",Active
|
2503 |
-
"1003378","Shenyang","Shenyang,Liaoning,China","20168","CN","City",Active
|
2504 |
-
"1003379","Tieling","Tieling,Liaoning,China","20168","CN","City",Active
|
2505 |
-
"1003380","Yingkou","Yingkou,Liaoning,China","20168","CN","City",Active
|
2506 |
-
"1003381","Baicheng","Baicheng,Jilin,China","20169","CN","City",Active
|
2507 |
-
"1003382","Changchun","Changchun,Jilin,China","20169","CN","City",Active
|
2508 |
-
"1003384","Jilin City","Jilin City,Jilin,China","20169","CN","City",Active
|
2509 |
-
"1003385","Liaoyuan","Liaoyuan,Jilin,China","20169","CN","City",Active
|
2510 |
-
"1003386","Siping","Siping,Jilin,China","20169","CN","City",Active
|
2511 |
-
"1003387","Tonghua","Tonghua,Jilin,China","20169","CN","City",Active
|
2512 |
-
"1003390","Harbin","Harbin,Heilongjiang,China","20170","CN","City",Active
|
2513 |
-
"1003391","Heihe","Heihe,Heilongjiang,China","20170","CN","City",Active
|
2514 |
-
"1003392","Jiamusi","Jiamusi,Heilongjiang,China","20170","CN","City",Active
|
2515 |
-
"1003393","Jixi","Jixi,Heilongjiang,China","20170","CN","City",Active
|
2516 |
-
"1003396","Mudanjiang","Mudanjiang,Heilongjiang,China","20170","CN","City",Active
|
2517 |
-
"1003397","Qiqihar","Qiqihar,Heilongjiang,China","20170","CN","City",Active
|
2518 |
-
"1003398","Suihua","Suihua,Heilongjiang,China","20170","CN","City",Active
|
2519 |
-
"1003401","Shanghai","Shanghai,Shanghai,China","20171","CN","City",Active
|
2520 |
-
"1003404","Changzhou","Changzhou,Jiangsu,China","20172","CN","City",Active
|
2521 |
-
"1003405","Huai'an","Huai'an,Jiangsu,China","20172","CN","City",Active
|
2522 |
-
"1003406","Lianyungang","Lianyungang,Jiangsu,China","20172","CN","City",Active
|
2523 |
-
"1003407","Nanjing","Nanjing,Jiangsu,China","20172","CN","City",Active
|
2524 |
-
"1003408","Nantong","Nantong,Jiangsu,China","20172","CN","City",Active
|
2525 |
-
"1003410","Suqian","Suqian,Jiangsu,China","20172","CN","City",Active
|
2526 |
-
"1003411","Suzhou","Suzhou,Jiangsu,China","20172","CN","City",Active
|
2527 |
-
"1003413","Wuxi","Wuxi,Jiangsu,China","20172","CN","City",Active
|
2528 |
-
"1003414","Xuzhou","Xuzhou,Jiangsu,China","20172","CN","City",Active
|
2529 |
-
"1003415","Yancheng","Yancheng,Jiangsu,China","20172","CN","City",Active
|
2530 |
-
"1003416","Yangzhou","Yangzhou,Jiangsu,China","20172","CN","City",Active
|
2531 |
-
"1003420","Hangzhou","Hangzhou,Zhejiang,China","20173","CN","City",Active
|
2532 |
-
"1003421","Huzhou","Huzhou,Zhejiang,China","20173","CN","City",Active
|
2533 |
-
"1003423","Jiaxing","Jiaxing,Zhejiang,China","20173","CN","City",Active
|
2534 |
-
"1003424","Jinhua","Jinhua,Zhejiang,China","20173","CN","City",Active
|
2535 |
-
"1003426","Lishui","Lishui,Zhejiang,China","20173","CN","City",Active
|
2536 |
-
"1003427","Ningbo","Ningbo,Zhejiang,China","20173","CN","City",Active
|
2537 |
-
"1003429","Shaoxing","Shaoxing,Zhejiang,China","20173","CN","City",Active
|
2538 |
-
"1003430","Taizhou","Taizhou,Zhejiang,China","20173","CN","City",Active
|
2539 |
-
"1003431","Wenzhou","Wenzhou,Zhejiang,China","20173","CN","City",Active
|
2540 |
-
"1003433","Zhoushan","Zhoushan,Zhejiang,China","20173","CN","City",Active
|
2541 |
-
"1003434","Anqing","Anqing,Anhui,China","20174","CN","City",Active
|
2542 |
-
"1003435","Bengbu","Bengbu,Anhui,China","20174","CN","City",Active
|
2543 |
-
"1003436","Chaohu","Chaohu,Anhui,China","20174","CN","City",Active
|
2544 |
-
"1003437","Chuzhou","Chuzhou,Anhui,China","20174","CN","City",Active
|
2545 |
-
"1003439","Fuyang","Fuyang,Anhui,China","20174","CN","City",Active
|
2546 |
-
"1003441","Hefei","Hefei,Anhui,China","20174","CN","City",Active
|
2547 |
-
"1003442","Huaibei","Huaibei,Anhui,China","20174","CN","City",Active
|
2548 |
-
"1003443","Huainan","Huainan,Anhui,China","20174","CN","City",Active
|
2549 |
-
"1003444","Lu'an","Lu'an,Anhui,China","20174","CN","City",Active
|
2550 |
-
"1003445","Tongling","Tongling,Anhui,China","20174","CN","City",Active
|
2551 |
-
"1003446","Wuhu","Wuhu,Anhui,China","20174","CN","City",Active
|
2552 |
-
"1003447","Xuancheng","Xuancheng,Anhui,China","20174","CN","City",Active
|
2553 |
-
"1003449","Fuzhou","Fuzhou,Fujian,China","20175","CN","City",Active
|
2554 |
-
"1003450","Longyan","Longyan,Fujian,China","20175","CN","City",Active
|
2555 |
-
"1003452","Nanping","Nanping,Fujian,China","20175","CN","City",Active
|
2556 |
-
"1003453","Ningde","Ningde,Fujian,China","20175","CN","City",Active
|
2557 |
-
"1003455","Putian","Putian,Fujian,China","20175","CN","City",Active
|
2558 |
-
"1003456","Quanzhou","Quanzhou,Fujian,China","20175","CN","City",Active
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|