thermacell.registria.com
Open in
urlscan Pro
52.33.13.193
Public Scan
Submitted URL: http://thermacell.registria.com/
Effective URL: https://thermacell.registria.com/
Submission: On June 13 via api from US — Scanned from DE
Effective URL: https://thermacell.registria.com/
Submission: On June 13 via api from US — Scanned from DE
Form analysis
1 forms found in the DOMPOST /core/registrations
<form id="registria_form" enctype="multipart/form-data" action="/core/registrations" method="POST" onsubmit="return false;" novalidate="novalidate">
<div class="d-flex flex-column reg-page-sections">
<section class="mb-0 reg-page-sections-order">
<section class="aura-form ">
<h3 class="section-header">Your product </h3>
<div class="row " id="product_1">
<div class=" col-md-6 ">
<div class="form-group "><label for="model-drop" id="model-label"><span class="label-text">Repeller Name * </span> <input type="hidden" id="model" name="registration[model]" value=""> <input type="hidden" id="product"
name="registration[product_id]" value=""><select id="model-drop" class="custom-select registria-field" data-hide-sku="1">
<option value="" selected="selected"></option>
<option value="Backpacker-Series" data-id="824985">Backpacker Fuel-Powered Repeller</option>
<option value="CampLantern-Series" data-id="824986">Camp Lantern Fuel-Powered Repeller</option>
<option value="E55-Series" data-id="824987">E55 Rechargeable Repeller</option>
<option value="E65-Series" data-id="833141">E65 Rechargeable Repeller</option>
<option value="E90-Series" data-id="824988">E90 Rechargeable Repeller</option>
<option value="EL55-Series" data-id="824989">EL55 Lighted Rechargeable Repeller</option>
<option value="EX55-Series" data-id="824990">EX55 Rechargeable Repeller</option>
<option value="EX90-Series" data-id="824991">EX90 Rechargeable Repeller</option>
<option value="Liv-Series" data-id="824992">LIV Installed Repellent System</option>
<option value="3xx-4xx-Series" data-id="824984">MR300 / MR350 / MR450 Fuel-Powered Repeller</option>
<option value="PS-Series" data-id="824993">Patio Shield Fuel-Powered Repeller</option>
<option value="PSLantern-Series" data-id="824994">Patio Shield Lantern Fuel-Powered Repeller</option>
<option value="PSTorch-Series" data-id="824995">Patio Shield Torch Fuel-Powered Repeller</option>
<option value="Perimiter-Series" data-id="824996">Perimeter Fuel-Powered Repeller</option>
<option value="Radius-Series" data-id="824997">Radius Rechargeable Repeller</option>
</select></label></div>
<script>
$(document).ready(function() {
// no limit to show all products
var get_products_url = window.location.origin + "/services/products" + "?fields[]=active&fields[]=allow_registration&active=true&allow_registration=true" + "&product_locale=" + "en-us";
$.ajax({
url: get_products_url,
beforeSend: function(xhr) {
xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content'));
},
dataType: "json",
success: function(data) {
if (data.length > 0) {
var $select = $("#model-drop");
$select.empty();
var optionList = data;
$.each(optionList, function(i, el) {
var txtVal = '';
if ($select.attr('data-hide-sku') == "1") {
txtVal = el.name
} else {
txtVal = el.sku + ' (' + el.name + ')'
}
$select.append($('<option>', {
value: el.sku,
text: txtVal,
'data-id': el.id
}));
});
$select.prepend("<option value='' selected='selected'></option>");
$('#model-label').append($select);
$('#model-drop').rules('add', {
required: true
});
} else {
console.log('no products')
}
},
error: function(data) {
console.log(data);
}
});
});
$('#model-drop').on('change', function(event) {
$('#model').val($(this).find('option:selected').text());
$('#product').val($(this).find('option:selected').data('id'));
});
</script>
</div>
</div>
<section class="aura-form"> </section>
</section> <input type="hidden" id="input_version" name="registration[input_version]" value="GZA01"> <input type="hidden" id="cookie_policy_accepted" name="registration[cookie_policy_accepted]" class="registria_field" value="1">
</section>
<section class="mb-0 reg-page-sections-order">
<section class="aura-form">
<h3 class="section-header" id="header_text">Your information </h3>
<div class="row">
<div class="col-12">
<div class="row">
<div class="col-md-6">
<div class="form-group"><label for="first_name"><span class="label-text"><span id="first_name_label">First Name</span> * </span>
<div class="input-group"><input type="text" id="first_name" name="user[first_name]" class="form-control registria_field" value="" required=""></div>
</label></div>
</div>
<div class="col-md-6">
<div class="form-group"><label for="last_name"><span class="label-text"><span id="last_name_label">Last Name</span> * </span>
<div class="input-group"><input type="text" id="last_name" name="user[last_name]" class="form-control registria_field" value="" required=""></div>
</label></div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group"><label for="email"><span class="label-text"><span id="email_address_label">Email Address</span> * </span>
<div class="input-group"><input class="form-control email registria_field" id="email" name="user[email]" type="email" value="" required=""></div>
</label></div>
</div>
<div class="col-md-6">
<div class="form-group"><label for="phone"><span class="label-text"><span id="phone_number_label">Phone Number</span> * </span>
<div class="input-group"><input class="form-control phone registria_field mask-phone" id="phone" name="user[phone]" type="tel" value="" required=""></div>
</label></div>
</div>
</div>
<div class="row"> </div>
<div class="row">
<div class="col-md-8">
<div class="form-group"><label for="address1"><span class="label-text"><span id="street_address_label">Street Address</span> * </span>
<div class="input-group"><input class="form-control registria_field ui-autocomplete-input" autocomplete="off" data-allowfreeinput="true" id="address1" name="user[address_attributes][address1]"
placeholder="Enter your street address..." type="text" value="" required=""></div>
</label></div>
</div>
<div class="col-md-4">
<div class="form-group"><label for="address2"><span class="label-text"> <span id="street_address_2_label">Apt / Ste</span> </span>
<div class="input-group"><input class="form-control registria_field" id="address2" name="user[address_attributes][address2]" value="" type="text"></div>
</label></div>
</div>
<div class="col-md-4">
<div class="form-group"><label for="zip" class="col-1-4"><span class="label-text"><span id="zip_label">Zip Code</span> * </span>
<div class="input-group"><input class="form-control registria_field" id="zip" name="user[address_attributes][zip]" type="text" value="" required=""></div>
</label></div>
<script>
$(function() {
var country = $.currentLocale.split("-")[1] || "us";
var c = country.toUpperCase();
var $zip = $('#zip');
if (c === 'US' && $zip.length) {
$zip.rules('add', 'zipcodeUS');
};
});
</script>
</div>
<div class="col-md-4">
<div class="form-group"><label for="city" class="col-1-4"><span class="label-text"><span id="city_label">City</span> * </span>
<div class="input-group"><input class="form-control registria_field" id="city" name="user[address_attributes][city]" type="text" value="" required=""></div>
</label></div>
</div>
<div class="col-md-4">
<div class="form-group"><label for="state" class="col-1-4"><span class="label-text"><span id="state_label">State</span> * </span>
<div class="input-group"><input class="form-control registria_field autocomplete-state " id="state" name="user[address_attributes][state]" autocomplete="off" type="text" value="" required=""></div>
</label></div>
</div>
<div class="col-md-4">
<div class="form-group" id="country_row" data-country="United States" data-country-label="Country" style="display: none;"><label for="country"><span class="label-text">Country * </span>
<div class="input-group"><input class="form-control registria_field" id="country" name="user[address_attributes][country]" readonly="readonly" value="United States"></div>
</label></div>
</div>
</div>
<script>
var country_val, country_value;
var countries_codes = [];
var countries_iso = [];
var SetUpZipRegex = function(data) {
$.ajax({
type: "GET",
url: "/services/zip_code_regex",
data: data,
success: function(result) {
var regex = new RegExp(result, "i");
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length) {
$(".registria_field:input[name*='user[address_attributes][zip]']").rules("add", {
regex: regex.toString(),
messages: {
regex: $.polyglot.t('validations.invalid_zip')
}
});
$('.loading-overlay').css('opacity', '0');
$('.submitPayment').prop('disabled', false);
}
}
})
};
var SetUpZipRegexWithValid = function(data) {
$.ajax({
type: "GET",
url: "/services/zip_code_regex",
data: data,
success: function(result) {
var zip_filed = $(".registria_field:input[name*='user[address_attributes][zip]']");
var regex = new RegExp(result, "i");
zip_filed.rules("remove", "regex");
zip_filed.rules("add", {
regex: regex.toString(),
messages: {
regex: $.polyglot.t('validations.invalid_zip')
}
});
zip_filed.valid();
$('.loading-overlay').css('opacity', '0');
$('.submitPayment').prop('disabled', false);
}
})
};
$(function() {
var countriesUrl = '/services/countries_for_site';
countriesUrl += ('?locale=' + $.currentLocale);
$.ajax({
type: 'GET',
url: countriesUrl,
success: function(data) {
countries_codes = data;
if (countries_codes.length > 0) {
if (!$("#country_row").length) {
return;
}
changeBoxSizes();
var country_name = $("#country_row").data('country');
var country_label = $("#country_row").data('country-label');
$("#country_row").html('<label for="country"><span class="label-text">' + country_label +
' * </span><div class="input-group"><select class="form-control registria_field" id="country" name="user[address_attributes][country]" style="position:static;"></select></div></label>');
var current = 0;
countries_codes.forEach(function(country) {
var selected = country.name == country_name;
var country_label = "label.country_" + country.iso3.toLowerCase();
var translated_country = $.polyglot.has(country_label) && $.polyglot.t(country_label);
$('#country').append($("<option/>").attr('id', 'country_option_' + current).text(translated_country || country.name).val(country.name).prop('selected', selected));
current++;
});
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length && $(".registria_field:input[name*='user[address_attributes][country]']").length) {
var country = $(".registria_field:input[name*='user[address_attributes][country]']").val();
if (country) {
SetUpZipRegex({
country: country
})
}
$(".registria_field:input[name*='user[address_attributes][country]']").on('change', function() {
var country = $(this).val();
if (country) {
SetUpZipRegexWithValid({
country: country
})
}
});
}
} else {
if ($.currentLocale == "en-ca" || $.currentLocale == "fr-ca") {
changeBoxSizes();
$("#country_row").hide();
$("#country_row").html(
'<label for="country"><span class="label-text">Country * </span><div class="input-group"><input class="form-control registria_field" id="country" name="user[address_attributes][country]" readonly="readonly" value="Canada"></div></label>'
);
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length && $(".registria_field:input[name*='user[address_attributes][country]']").length) {
countries_codes = [{
name: "Canada",
iso3: "CAN"
}]
SetUpZipRegex({
country: 'CAN'
});
}
} else if ($.currentLocale == "es-mx") {
changeBoxSizes();
$("#country_row").hide();
$("#country_row").html(
'<label for="country"><span class="label-text">Country * </span><div class="input-group"><input class="form-control registria_field" id="country" name="user[address_attributes][country]" readonly="readonly" value="Mexico"></div></label>'
);
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length && $(".registria_field:input[name*='user[address_attributes][country]']").length) {
countries_codes = [{
name: "Mexico",
iso3: "MEX"
}]
SetUpZipRegex({
country: 'MEX'
});
}
} else {
changeBoxSizes();
$("#country_row").hide();
$("#country_row").html(
'<label for="country"><span class="label-text">Country * </span><div class="input-group"><input class="form-control registria_field" id="country" name="user[address_attributes][country]" readonly="readonly" value="United States"></div></label>'
);
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length && $(".registria_field:input[name*='user[address_attributes][country]']").length) {
countries_codes = [{
name: "United States",
iso3: "USA"
}]
SetUpZipRegex({
country: 'USA'
});
}
}
}
},
error: function(err) {
console.log(err.responseText, err);
}
});
});
var changeBoxSizes = function() {
var boxes = [{
name: 'zip',
oldSize: '1-3',
newSize: '1-4'
}, {
name: 'state',
oldSize: '1-3',
newSize: '1-4'
}, {
name: 'city',
oldSize: '1-3',
newSize: '1-4'
}];
boxes.forEach(function(box) {
var boxDiv = $('#' + box.name).parent().parent();
boxDiv.removeClass('col-' + box.oldSize);
boxDiv.addClass('col-' + box.newSize);
});
};
let API_KEY_HERE = "Z2ycLDO_AMPYdqZfkCCR2Rz0Xwvb8B668dy5-Vt0Zm8";
var noAutoCompelete = ["ja-jp", "en-jp"];
if (!(noAutoCompelete.includes($.currentLocale))) {
$("#address1").autocomplete({
source: addressAC,
minLength: 2,
select: function(event, ui) {
addressAutoFill(ui.item.id, "address1");
setTimeout(function() {
$('#state').trigger('focus');
$('#city').trigger('focus');
$('#zip').trigger('focus');
$('#address1').trigger('focus');
}, 500);
}
});
function addressAC(query, callback) {
var countries_query = "";
if (countries_codes.length > 0) {
countries_iso = countries_codes.map(function(country) {
return country.iso3;
});
countries_query = "&in=countryCode:" + countries_iso.join();
}
var xmlHttp = new XMLHttpRequest();
var destURL = "https://autocomplete.search.hereapi.com/v1/autocomplete?apiKey=" + API_KEY_HERE + "&q=" + query.term + "&limit=8&lang=en&at=30,-30" + countries_query;
xmlHttp.open("GET", destURL, true);
xmlHttp.onload = function() {
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
//var addresses = JSON.parse(this.response).items;
var addresses = JSON.parse(this.response).items.filter((item) => (item.resultType != "chainQuery" && item.resultType != "categoryQuery"));
if (addresses.length !== 0) {
addresses = addresses.map(addr => {
return {
title: addr.address.label,
value: addr.address.label,
id: addr.id
};
})
}
}
return callback(addresses)
}
xmlHttp.send();
}
var initAutocomplete = function(address_val, address_id) {
var xmlHttp = new XMLHttpRequest();
if ($('#' + address_id).val().length > 5) {
searchString = address_val;
var countries_query = "";
if (countries_codes.length > 0) {
countries_iso = countries_codes.map(function(country) {
return country.iso3;
});
countries_query = "&in=countryCode:" + countries_iso.join();
}
destURL = "https://autocomplete.search.hereapi.com/v1/autocomplete?apiKey=Z2ycLDO_AMPYdqZfkCCR2Rz0Xwvb8B668dy5-Vt0Zm8&q=" + searchString + "&limit=8&lang=en&at=30,-30" + countries_query;
xmlHttp.open("GET", destURL, true); // true for asynchronous
xmlHttp.send(null);
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
$("#here_autocomplete").text(xmlHttp.responseText);
var obj = JSON.parse(xmlHttp.responseText);
var arr = [];
if (obj.items) {
for (i = 0; i < obj.items.length; i++) {
var label = obj.items[i].title
var loc_id = obj.items[i].id;
arr.push({
label: label,
locationId: loc_id
});
}
$('#' + address_id).frautoComplete(arr, {
listLimit: 8
});
$('.frauto-list').find('*').addClass('option');
}
}
}
}
}
var addressAutoFill = function(loc_id, addr_id) {
var city, state, zip, county, country;
if (addr_id == "shipping_address1") {
city = "shipping_city";
state = "shipping_state";
county = "shipping_county";
country = "shipping_country";
zip = "shipping_zip";
} else if (addr_id == "billing_address1") {
city = "billing_city";
state = "billing_state";
county = "billing_county";
country = "billing_country";
zip = "billing_zip";
} else {
city = "city";
state = "state";
county = "county";
country = "country";
zip = "zip";
}
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var obj = JSON.parse(this.responseText);
$('#' + addr_id).val('');
var address_with_unit = obj.address.street;
if (obj.address.houseNumber) {
address_with_unit = obj.address.houseNumber + " " + obj.address.street;
}
$('#' + addr_id).val(address_with_unit);
if (obj.address.postalCode) {
if (!$('#' + zip).length && zip == "billing_zip") {
zip = "billing_zip";
} else if (!$('#' + zip).length && zip == "shipping_zip") {
zip = "shipping_zip";
}
$('#' + zip).val(obj.address.postalCode);
$('#' + zip).valid();
} else {
if (!$('#' + zip).length && zip == "billing_zip") {
zip = "billing_zip";
} else if (!$('#' + zip).length && zip == "shipping_zip") {
zip = "shipping_zip";
}
$('#' + zip).val('');
}
autoFillCSC(obj, city, state, county, country);
}
};
xhttp.open("GET", "https://lookup.search.hereapi.com/v1/lookup?id=" + loc_id + "&apiKey=Z2ycLDO_AMPYdqZfkCCR2Rz0Xwvb8B668dy5-Vt0Zm8&lang=en", true);
xhttp.send();
}
var autoFillCSC = function(obj, city, state, county, country) {
if ($('#' + city).length > 0 && obj.address.city) {
$('#' + city).val(obj.address.city);
$('#' + city).valid();
} else {
$('#' + city).val('');
}
if ($.currentLocale == "en-ph" || $.currentLocale == "en-nz") {
if ($('#' + county).length > 0 && obj.address.district) {
$('#' + county).val(obj.address.district);
$('#' + county).valid();
}
} else {
if ($('#' + county).length > 0 && obj.address.county) {
$('#' + county).val(obj.address.county);
$('#' + county).valid();
}
}
if ($('#' + state).length > 0 && obj.address.state) {
if ($('#delivery_date').length > 0) {
if (obj.address.state == "California" || $.siteConfiguration.registration_delivery_date_field.required) {
$('label[for="delivery_date"] .label-text').text('Date of Delivery *');
$("#delivery_date").rules('add', {
required: true
});
$('#delivery_date').valid();
$('#disclaimer-delivery').addClass('disclaimer-delivery');
if ($('#delivery_date-error.invalid').outerHeight()) {
$('#disclaimer-delivery').css({
'top': $('#delivery_date-error.invalid').outerHeight() + 'px'
}, {
'margin-bottom': "10px"
});
} else {
setTimeout(function() {
$('#disclaimer-delivery').css({
'top': $('#delivery_date-error.invalid').outerHeight() + 'px'
}, {
'margin-bottom': "10px"
});
}, 300);
}
} else {
$('label[for="delivery_date"] .label-text').text('Date of Delivery ');
$("#delivery_date").rules('add', {
required: false
});
$('#delivery_date').valid();
$('#disclaimer-delivery').removeClass('disclaimer-delivery');
$('#disclaimer-delivery').css({
'top': '0px'
}, {
'margin-bottom': "0px"
});
}
}
$('#' + state).val(obj.address.state);
$('#' + state).valid();
} else {
$('#' + state).val('');
}
if (obj.address.countryName) {
$(".registria_field:input[name*='user[address_attributes][country]']").find("option:contains('" + obj.address.countryName + "')").prop("selected", true);
stripZip($('#' + country).val(), country);
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length && $(".registria_field:input[name*='user[address_attributes][country]']").length) {
var country = $('#' + country).val();
if (country) {
SetUpZipRegexWithValid({
country: country
})
}
}
} else {
$(".registria_field:input[name*='user[address_attributes][country]']").find("option:contains('" + country_value + "')").prop("selected", true);
if ($(".registria_field:input[name*='user[address_attributes][zip]']").length && $(".registria_field:input[name*='user[address_attributes][country]']").length) {
var country = $('#' + country).val();
if (country) {
SetUpZipRegexWithValid({
country: country
})
}
}
}
}
var stripZip = function(country_value, country_field) {
if (country_value == ("United States")) {
var zip_field = "zip";
if (!$('#' + zip_field).length && country_field == "billing_country") {
zip_field = "order_billing_address_zip";
} else if (!$('#' + zip_field).length && country_field == "shipping_country") {
zip_field = "order_shipping_address_zip";
}
$('#' + zip_field).val($("#" + zip_field).val().split(" ")[0]);
$('#' + zip_field).val($("#" + zip_field).val().split("-")[0]);
$('#' + zip_field).valid()
}
}
$(function() {
var ip_country = $.IPInfo.country_code;
var locale = $.currentLocale;
if ((ip_country == 'CA') && (locale == 'en-ca' || locale == 'fr-ca')) {
country_val = "CAN";
country_value = "Canada";
} else if ((ip_country == 'MX') && (locale == 'en' || locale == 'es' || locale == 'es-mx')) {
country_val = "MEX";
country_value = "Mexico";
} else {
if (locale == 'en-ca' || locale == 'fr-ca') {
country_val = "CAN";
country_value = "Canada";
} else if (locale == 'es' || locale == 'es-mx') {
country_val = "MEX";
country_value = "Mexico";
} else if (locale == 'en-au') {
country_val = "AUS";
country_value = "Australia";
} else if (locale == 'en-sg') {
country_val = "SGP";
country_value = "Singapore";
} else if (locale == 'en-hk') {
country_val = "HKG";
country_value = "Hong Kong";
} else if (locale == 'en-my') {
country_val = "MYS";
country_value = "Malaysia";
} else if (locale == 'en-nz') {
country_val = "NZL";
country_value = "New Zealand";
} else if (locale == 'en-th') {
country_val = "THA";
country_value = "Thailand";
} else if (locale == 'en-ph') {
country_val = "PHL";
country_value = "Philippines";
} else if (locale == 'ja-jp' || locale == 'en-jp') {
country_val = "JPN";
country_value = "Japan";
} else if (locale == 'de-at') {
country_val = "AUT";
country_value = "Austria";
} else if (locale == 'fr-be' || locale == 'de-be' || locale == 'en-be') {
country_val = "BEL";
country_value = "Belgium";
} else if (locale == 'en-bg') {
country_val = "BGR";
country_value = "Bulgaria";
} else if (locale == 'en-cz') {
country_val = "CZE";
country_value = "Czech Republic";
} else if (locale == 'en-dk') {
country_val = "DNK";
country_value = "Denmark";
} else if (locale == 'en-fi') {
country_val = "FIN";
country_value = "Finland";
} else if (locale == 'en-gr') {
country_val = "GRC";
country_value = "Greece";
} else if (locale == 'en-hu') {
country_val = "HUN";
country_value = "Hungary";
} else if (locale == 'en-is') {
country_val = "ISL";
country_value = "Iceland";
} else if (locale == 'en-ie') {
country_val = "IRL";
country_value = "Ireland";
} else if (locale == 'en-it') {
country_val = "ITA";
country_value = "Italy";
} else if (locale == 'fr-lu' || locale == 'de-lu' || locale == 'en-lu') {
country_val = "LUX";
country_value = "Luxembourg";
} else if (locale == 'en-nl') {
country_val = "NLD";
country_value = "Netherlands";
} else if (locale == 'en-no') {
country_val = "NOR";
country_value = "Norway";
} else if (locale == 'en-pl') {
country_val = "POL";
country_value = "Poland";
} else if (locale == 'en-si') {
country_val = "SVN";
country_value = "Slovenia";
} else if (locale == 'es-es') {
country_val = "ESP";
country_value = "Spain";
} else if (locale == 'en-se') {
country_val = "SWE";
country_value = "Sweden";
} else if (locale == 'fr-ch' || locale == 'de-ch') {
country_val = "CHE";
country_value = "Switzerland";
} else if (locale == 'en-in') {
country_val = "IND";
country_value = "India";
} else if (locale == 'ko-kr' || locale == 'en-kr') {
country_val = "KOR";
country_value = "Korea";
} else if (locale == 'zh-tw') {
country_val = "TWN";
country_value = "Taiwan";
} else if (locale == 'es-ar') {
country_val = "ARG";
country_value = "Argentina";
} else if (locale == 'es-bz') {
country_val = "BLZ";
country_value = "Belize";
} else if (locale == 'es-bo') {
country_val = "BOL";
country_value = "Bolivia";
} else if (locale == 'pt-br') {
country_val = "BRA";
country_value = "Brazil";
} else if (locale == 'es-cl') {
country_val = "CHL";
country_value = "Chile";
} else if (locale == 'es-co') {
country_val = "COL";
country_value = "Colombia";
} else if (locale == 'es-cr') {
country_val = "CRI";
country_value = "Costa Rica";
} else if (locale == 'es-ec') {
country_val = "ECU";
country_value = "Ecuador";
} else if (locale == 'es-sv') {
country_val = "SLV";
country_value = "El Salvador";
} else if (locale == 'es-gf') {
country_val = "GUF";
country_value = "French Guiana";
} else if (locale == 'es-gt') {
country_val = "GTM";
country_value = "Guatemala";
} else if (locale == 'en-gy') {
country_val = "GUY";
country_value = "Guyana";
} else if (locale == 'es-hn') {
country_val = "HND";
country_value = "Honduras";
} else if (locale == 'es-ni') {
country_val = "NIC";
country_value = "Nicaragua";
} else if (locale == 'es-pa') {
country_val = "PAN";
country_value = "Panama";
} else if (locale == 'en-py' || locale == 'es-py') {
country_val = "PRY";
country_value = "Paraguay";
} else if (locale == 'es-pe') {
country_val = "PER";
country_value = "Peru";
} else if (locale == 'en-sr') {
country_val = "SUR";
country_value = "Suriname";
} else if (locale == 'en-tt') {
country_val = "TTO";
country_value = "Trinidad & Tobago";
} else if (locale == 'es-uy') {
country_val = "URY";
country_value = "Uruguay";
} else if (locale == 'es-ve') {
country_val = "VEN";
country_value = "Venezuela";
} else if (locale == 'en-jm') {
country_val = "JAM";
country_value = "Jamaica";
} else if (locale == 'es-do') {
country_val = "DOM";
country_value = "Dominican Republic";
} else if (locale == 'en-vc') {
country_val = "VCT";
country_value = "St Vincent and The Grenadines";
} else {
country_val = "USA,ASM,PRI,VIR,GUM,MNP";
country_value = "United States";
}
}
$("#shipping_address1, #billing_address1").on('keyup', function() {
var addr_val, addr_id;
if ($(this).val().length > 5) {
addr_val = $(this).val();
addr_id = $(this).attr('id');
initAutocomplete(addr_val, addr_id);
} // If address length greater than 5
});
$("#shipping_address1, #billing_address1").on('blur', function() {
var addr_id = $(this).attr('id');
if (addr_id == "shipping_address1") {
var loc_id = $("label[for='shipping_address1'] ul.frauto-list > li.selected").attr('data-loc');
} else {
var loc_id = $("label[for='billing_address1'] ul.frauto-list > li.selected").attr('data-loc');
}
if (loc_id) {
addressAutoFill(loc_id, addr_id);
} // End of if locationid
});
/****** For Zip AutoFill ******/
$("#zip, #order_shipping_address_zip, #order_billing_address_zip, #billing_zip, #shipping_zip").on('blur', function() {
var addr_id = $(this).attr('id');
var zip_val;
if (addr_id == "order_shipping_address_zip" || addr_id == "shipping_zip") {
zip_val = $("#" + addr_id).val();
city = "shipping_city";
state = "shipping_state";
county = "shipping_county";
country = "shipping_country";
} else if (addr_id == "order_billing_address_zip" || addr_id == "billing_zip") {
zip_val = $("#" + addr_id).val();
city = "billing_city";
state = "billing_state";
county = "billing_county";
country = "billing_country";
} else {
zip_val = $("#zip").val();
city = "city";
state = "state";
county = "county";
country = "country";
}
if (zip_val) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var obj = JSON.parse(this.responseText);
if (obj.items[0]) {
autoFillCSC(obj.items[0], city, state, county, country);
}
}
};
xhttp.open("GET", "https://geocode.search.hereapi.com/v1/geocode?qq=postalCode=" + zip_val + ";country=" + country_val + "&apiKey=Z2ycLDO_AMPYdqZfkCCR2Rz0Xwvb8B668dy5-Vt0Zm8&limit=8&lang=en&at=30,-30", true);
xhttp.send();
} // End of if zip exists
});
}); // End of main function
} // End of noAutoCompelete check
$('#address_type').on('click', function() {
var addressType = $(this).prop("checked") ? "work" : "home";
$('#address_type_value').val(addressType);
});
</script>
<section class="aura-form"> </section>
</section>
</section>
<section class="mb-0 reg-page-sections-order purchase-form">
<style>
@media screen and (min-width: 768px) {
.purchase-form .form-group {
margin-bottom: 0;
}
}
</style>
<section class="aura-form">
<h3 class="section-header"><span id="purchase_information_label">Your purchase information</span></h3>
<div class="row">
<div class="col-md col-sm-12">
<div class="form-group"> <label for="purchased-at-drop" id="purchased-at-drop-label"><span class="label-text"><span id="purchase_from_label">Purchased From</span> * </span>
<div class="input-group" id="drop-id"><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-1-rdnh" style="width: auto;"><span class="selection"><span
class="select2-selection select2-selection--single" role="combobox" aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-purchased-at-drop-container"><span
class="select2-selection__rendered" id="select2-purchased-at-drop-container" role="textbox" aria-readonly="true"></span><span class="select2-selection__arrow"
role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span></div><input type="hidden" name="registration[purchased_at]" id="purchased_at" value="">
<input type="hidden" name="registration[organization_id]" id="organization" value=""><select id="purchased-at-drop" class="form-control custom-select registria-field select2-hidden-accessible" data-locale="en-us"
data-select2-id="select2-data-purchased-at-drop" tabindex="-1" aria-hidden="true">
<option value="" selected="selected" data-select2-id="select2-data-2-w497"></option>
<option value="Ace Hardware" data-id="819267">Ace Hardware</option>
<option value="Amazon USA" data-id="819269">Amazon USA</option>
<option value="Bass Pro" data-id="819270">Bass Pro</option>
<option value="Bespoke" data-id="823329">Bespoke</option>
<option value="Best Buy" data-id="825564">Best Buy</option>
<option value="Cabela's" data-id="819271">Cabela's</option>
<option value="Costco USA" data-id="819275">Costco USA</option>
<option value="Dicks Sporting Goods" data-id="823325">Dicks Sporting Goods</option>
<option value="Do It Best" data-id="823326">Do It Best</option>
<option value="Gander Outdoors" data-id="819279">Gander Outdoors</option>
<option value="Home Depot" data-id="819280">Home Depot</option>
<option value="Lowes USA" data-id="819282">Lowes USA</option>
<option value="Meijer" data-id="819283">Meijer</option>
<option value="Menards" data-id="819284">Menards</option>
<option value="Mills Fleet Farm" data-id="819285">Mills Fleet Farm</option>
<option value="Other - USA" data-id="823265">Other - USA</option>
<option value="Overland Expo 2023" data-id="823264">Overland Expo 2023</option>
<option value="REI" data-id="819287">REI</option>
<option value="Sam's Club" data-id="819288">Sam's Club</option>
<option value="Sportsman's Warehouse" data-id="819289">Sportsman's Warehouse</option>
<option value="Thermacell.com" data-id="819291">Thermacell.com</option>
<option value="Tractor Supply" data-id="819292">Tractor Supply</option>
<option value="True Value" data-id="819293">True Value</option>
<option value="Walmart USA" data-id="819294">Walmart USA</option>
</select>
</label> </div>
<script>
$(function() {
// $("#purchased-at-drop").valid();
$("#purchased-at-drop").select2();
/* below code is to check invalid class for Select field and add it to Select2 */
const targetNode = document.getElementById('purchased-at-drop');
const config = {
attributes: true,
childList: true,
subtree: true
};
const callback = function(mutationsList, observer) {
if ($('.invalid').length) {
if ($('#purchased-at-drop').hasClass('invalid')) {
$(".select2-selection").addClass('invalid');
observer.disconnect();
}
} else {
console.log("no invalid class");
}
};
const observer = new MutationObserver(callback);
observer.observe(targetNode, config);
});
$('#purchased-at-drop').on('change blur', function(event) {
$('#purchased_at').val($(this).find('option:selected').text());
$('#organization').val($(this).find('option:selected').data('id'));
});
$('#purchased-at-drop').on('click', function(event) {
$('.select2-results__options li:first-child').css('display', 'none');
});
$("select").on("select2:close", function(e) {
$("#purchased-at-drop").valid();
if (!$("#purchased-at-drop").val()) {
$(".select2-selection").addClass('invalid');
} else {
$(".select2-selection").removeClass('invalid');
}
});
</script>
</div>
<div class="col-md col-sm-12">
<div class="form-group"><label for="purchase_date"><span class="label-text">Date of Purchase * </span>
<div class="input-group"><input type="tel" class="form-control registria_field mask-date datepicker hasDatepicker" readonly="readonly" name="registration[purchase_date]" id="purchase_date" value="" required="" placeholder="mm/dd/yy"
data-format="mdy"></div>
</label></div>
</div>
<div class="col-md col-sm-12">
<div class="form-group"><label for="delivery_date"><span class="label-text">Date of Delivery </span>
<div class="input-group"><input type="tel" class="form-control registria_field mask-date datepicker hasDatepicker" name="registration[delivery_date]" id="delivery_date" value="" placeholder="mm/dd/yy" data-format="mdy">
<p id="disclaimer-delivery" class=" font-size-xs" style="margin-bottom:0px;">When did the product arrive at your home, either from an online purchase or an in-store visit?</p>
</div>
</label></div>
<script>
function setFieldRequired() {
$('label[for="delivery_date"] .label-text').text('Date of Delivery *');
$("#delivery_date").rules('add', {
required: true
});
$('#disclaimer-delivery').addClass('disclaimer-delivery');
if ($('#delivery_date-error.invalid').outerHeight()) {
$('#disclaimer-delivery').css({
'top': $('#delivery_date-error.invalid').outerHeight() + 'px'
}, {
'margin-bottom': "10px"
});
} else {
setTimeout(function() {
$('#disclaimer-delivery').css({
'top': $('#delivery_date-error.invalid').outerHeight() + 'px'
}, {
'margin-bottom': "10px"
});
}, 300);
}
}
$('#state').on('change ', function() {
if ($('#delivery_date').length > 0) {
if ($('#state').val() == "California" || $.siteConfiguration.registration_delivery_date_field.required) {
setFieldRequired();
} else {
$('label[for="delivery_date"] .label-text').text('Date of Delivery ');
$("#delivery_date").rules('add', {
required: false
});
$('#delivery_date').valid();
$('#disclaimer-delivery').removeClass('disclaimer-delivery');
$('#disclaimer-delivery').css({
'top': '0px'
}, {
'margin-bottom': "0px"
});
}
}
});
/* compare Purchase date and Delivery Date */
$(function() {
if ($('#delivery_date').length > 0 && $('#purchase_date').length > 0) {
$('#delivery_date').rules('add', {
greaterThan: true
});
$('#purchase_date').on('change', function() {
if ($('#delivery_date').val()) {
$('#delivery_date').valid();
}
});
}
$('.datepicker').on('click', function() {
$(this).datepicker('show');
});
$.validator.addMethod('greaterThan', function(value, element) {
var pdate = $('#purchase_date').val();
var ddate = $('#delivery_date').val();
var pformat = $('#delivery_date').data("format");
pdate = pdate.split("/");
ddate = ddate.split("/");
if (pformat == "mdy") {
pdate = new Date(pdate[2], pdate[0] - 1, pdate[1]).getTime();
ddate = new Date(ddate[2], ddate[0] - 1, ddate[1]).getTime();
} else if (pformat == "dmy") {
pdate = new Date(pdate[2], pdate[1] - 1, pdate[0]).getTime();
ddate = new Date(ddate[2], ddate[1] - 1, ddate[0]).getTime();
} else if (pformat == "ymd") {
pdate = new Date(pdate[0], pdate[1] - 1, pdate[2]).getTime();
ddate = new Date(ddate[0], ddate[1] - 1, ddate[2]).getTime();
} else {
/* ydm format */
pdate = new Date(pdate[0], pdate[2] - 1, pdate[1]).getTime();
ddate = new Date(ddate[0], ddate[2] - 1, ddate[1]).getTime();
}
if (pdate <= ddate) {
$('#disclaimer-delivery').removeClass('disclaimer-delivery');
$('#disclaimer-delivery').css({
'top': '0px'
}, {
'margin-bottom': "0px"
});
} else {
$('#disclaimer-delivery').addClass('disclaimer-delivery');
if ($('#delivery_date-error.invalid').outerHeight()) {
$('#disclaimer-delivery').css({
'top': $('#delivery_date-error.invalid').outerHeight() + 'px'
}, {
'margin-bottom': "10px"
});
} else {
setTimeout(function() {
$('#disclaimer-delivery').css({
'top': $('#delivery_date-error.invalid').outerHeight() + 'px'
}, {
'margin-bottom': "10px"
});
}, 300);
}
}
return (($('#purchase_date').val().length <= 0 || $('#delivery_date').val().length <= 0) || $('#delivery_date').val().includes("mm")) ? true : pdate <= ddate ? true : false;
}, $.polyglot.t('validations.delivery_date_invalid'));
});
</script>
</div>
</div>
</section>
<section class="aura-form mb-0">
<div class="row">
<div class="form-group col-md-6 mb-12"><label for="registration_first_thermacell_purchase"><span class="d-block label-text"> Is this your first Thermacell purchase? * </span>
<div class="input-group"><select id="registration_first_thermacell_purchase" class="custom-select registria_field" type="text" name="registration[first_thermacell_purchase]" required="">
<option value="" disabled="disabled" selected="selected"> </option>
<option value="Yes"> Yes </option>
<option value="No"> No </option>
</select></div>
</label></div>
</div>
<div class="row">
<div class="form-group col-md-6 mb-12"><label for="registration_primary_activity"><span class="d-block label-text"> What is the primary activity you will use this product for? * </span>
<div class="input-group"><select id="registration_primary_activity" class="custom-select registria_field" type="text" name="registration[primary_activity]" required="">
<option value="" disabled="disabled" selected="selected"> </option>
<option value="Astronomy"> Astronomy </option>
<option value="Backyard"> Backyard and Patio </option>
<option value="Birding"> Birding </option>
<option value="Boating"> Boating </option>
<option value="Camping"> Camping </option>
<option value="Gardening"> Gardening </option>
<option value="Golfing"> Golfing </option>
<option value="Hiking and Backpacking"> Hiking and Backpacking </option>
<option value="Hunting"> Hunting or Fishing </option>
<option value="Outdoor events (parties & weddings)"> Outdoor events (parties, weddings) </option>
<option value="Professional"> Professional </option>
<option value="RVing"> RVing </option>
<option value="Shooting"> Shooting </option>
<option value="Tailgating and sports"> Tailgating and sports </option>
<option value="Travel"> Travel </option>
</select></div>
</label></div>
</div>
</section>
</section>
</div>
<section class="proof-of-purchase-field">
<h3 class="section-header">Upload your proof of purchase</h3>
<section class="aura-form">
<div class="form-group"><label for="proof_of_purchase" class="file-input"><span class="label-text">To help with future support, please take a photo of your receipt and upload. <small class="text-light">(Cannot exceed 10mb)</small>
</span></label>
<div class="input-group">
<div class="custom-file"><input type="file" class="custom-file-input registria_field" name="registration[proof_of_purchase]" id="proof_of_purchase"> <label class="custom-file-label upload-text" for="inputGroupFile01">Browse (jpg, jpeg, png,
pdf, gif) <span class="custom-file-input-icon mr-4 custom-file-input-icon-search"><i class="fa fa-search text-right" aria-hidden="true"></i></span></label></div>
</div>
</div>
<script>
$(document).ready(function() {
if ($("#proof_of_purchase").length) {
$("#proof_of_purchase").rules("add", {
maxFileSize: true,
imageFileExtension: true
});
}
$("#proof_of_purchase").on('change', function() {
$("#proof_of_purchase").valid();
});
$('#skip_proof_of_purchase_button').on('click', function() {
$('.upload-text').html('Browse (jpg, jpeg, png, pdf, gif)');
});
});
</script>
</section>
</section>
<script type="text/javascript">
$(function() {
var manageCustomOptins = function(optin) {};
var setProductOptin = function(checked) {
$('.custom-checkbox #receive_product_communication').prop("checked", checked).trigger('change');
};
var setProductDefault = function() {
setProductOptin(true);
};
var setSmsDefault = function() {
$('.custom-checkbox #receive_sms_communication').prop("checked", false).trigger('change');
};
setProductDefault();
setSmsDefault();
});
</script>
<div class="row mt-8">
<div class="col-md-12">
<div class="custom-control custom-checkbox user-optin-field"> <input type="checkbox" class="custom-control-input" id="receive_product_communication" name="user[receive_product_communication]"><input type="hidden"
name="user[receive_product_communication]" class="real_checkbox registria_field" value="1"> <label for="receive_product_communication" class="checkbox-opt-in-text custom-control-label">
<div class="opt-in-text">
<div class="markdown-body">
<p>Yes, sign me up to receive the latest promotions, deals, and information from Thermacell</p>
</div>
</div>
</label> </div>
</div>
</div>
<div class="modal fade" id="optInReminder" tabindex="-1" data-backdrop="static" data-keyboard="false" role="dialog" aria-labelledby="Enter Your Code" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body animated fade-in">
<div id="reg-opt-in-reminder" class="mb-8">
<div class="markdown-body">
<p><img src="//d3d2px1in9aet5.cloudfront.net/system/images/images/6581/original/Registria-OptIn-600x400_rebrand.jpg?1679607384" alt="Opt in for exclusive offers and more!"></p>
<h4 id="wethinkyouforgottooptintovaluableproductcommunicationandnewsclickiagreetooptin">We think you forgot to opt-in to valuable product communication and news! Click 'I Agree' to opt-in.</h4>
</div>
</div>
<div class="form-row">
<div class="col-md-6"><button type="submit" class="opt-in-reminder-no btn btn-outline-primary btn-block">Not Right Now</button></div>
<div class="col-md-6 mt-8 mt-md-0"><button id="next_button_2" type="submit" class="opt-in-reminder-yes btn btn-primary btn-block">I Agree</button></div><label class="invalid-make-selection"
style="color: red; right: 0; font-size: .65rem; padding: 5px 5px;" id="make-selection-text">Please make a selection.</label>
</div>
</div>
<div class="modal-footer justify-content-start bg-lightest font-size-xs d-inline"> By clicking "I Agree", <span class="opt_in_text_modal">
<div class="markdown-body d-inline">
<p>you consent to receive email notifications containing exclusive offers and the latest updates from Thermacell.</p>
</div>
</span></div>
</div>
</div>
</div>
<script>
$(function() {
$('#next_button').off("click").on('click', function(event) {
event.preventDefault();
event.stopImmediatePropagation();
var optedIn = $('#receive_product_communication').is(":checked");
if (!$('#registria_form').valid()) {
setTimeout(function() {
$('.custom-control-input').valid();
}, 500);
return false;
}
if (!optedIn) {
$('#make-selection-text').hide();
$('#optInReminder').modal('show');
$('#optInReminder').modal({
backdrop: 'static',
keyboard: false
});
return false;
}
if (optedIn) {
$('#registria_form').trigger('submit');
}
});
$('#optInReminder').on("click", function(e) {
if (e.target.type != "submit") {
$('#make-selection-text').show();
} else {
$('#make-selection-text').hide();
}
});
$('.opt-in-reminder-yes').on('click', function() {
$('#receive_product_communication').prop("checked", true).trigger('change');
$('#make-selection-text').hide();
$('#registria_form').trigger('submit');
});
$('.opt-in-reminder-no').on('click', function() {
$('#make-selection-text').hide();
$('#registria_form').trigger('submit');
});
});
</script>
<script>
$(function() {
$("#receive_sms_communication").on('change', function() {
if (this.checked) {
$("input[id*=phone]").rules("add", {
required: true,
messages: {
required: $.polyglot.t('validations.required_sms')
}
});
$("label[for='phone'] .field-optional").addClass("d-none");
} else {
$("input[id*=phone]").rules("remove", "required");
$("label[for='phone'] .field-optional").removeClass("d-none");
}
$("input[id*=phone]").valid();
});
$(function() {
$('[data-toggle="popover"]').popover()
})
});
$(function() {
if (_.get($.siteConfiguration, "user_sms_optin_field.display")) {
renderMarkdown($('#opt-in-sms-text'), $.polyglot.t('opt_in_sms_text', $.interpolations));
}
if (_.get($.siteConfiguration, "user_terms_of_use_accepted_field.display")) {
renderMarkdown($('#opt-in-terms-of-use-accepted-text'), $.polyglot.t('opt_in_terms_of_use_accepted_text', $.interpolations));
}
if (_.get($.siteConfiguration, "user_optin_field.display")) {
renderMarkdown($('.opt-in-text'), $.polyglot.t('opt_in_text', $.interpolations));
renderMarkdown($('.opt_in_text_modal'), $.polyglot.t('opt_in_text_modal', $.interpolations));
}
if (_.get($.siteConfiguration, "user_optin_field.display_benefits")) {
renderMarkdown($('#opt-in-benefits'), $.polyglot.t('optin_benefits', $.interpolations));
}
if (_.get($.siteConfiguration, "user_optin_field.opt_in_reminder_modal")) {
renderMarkdown($('#reg-opt-in-reminder'), $.polyglot.t('opt_in_reminder_text', $.interpolations));
}
});
$(function() {
$('.expand-button-inline').on('click', function() {
$(".icon", this).toggleClass('fa-angle-down fa-angle-up');
});
});
</script><input id="registration_id" class="registria_field" type="hidden" name="id" value=""> <input type="hidden" id="locale" name="user[locale]" value="en"> <input type="hidden" id="reg_locale" name="registration[locale]" class="registria_field"
value="en"> <input name="page[name]" value="reg" type="hidden"> <input type="hidden" name="_method" value="POST"> <input name="authenticity_token" value="Ublqedu7G4rXUT3fq3/Iftpor+Qh7y6Yc5qb2WH+qwQ4D6UnEHiWL277kXw7aOpO/IZg2L5E0DyFwsONtthfvw=="
type="hidden">
<div class="row submit-button justify-content-center">
<div class="col-md-6"><button id="next_button" onclick="gtmSetup()" class="btn btn-primary btn-lg btn-block" type="submit">Submit Registration</button></div>
</div>
</form>
Text Content
English (US) United States English (US) Canada English (CA) Français (CA) WELCOME TO THERMACELL PRODUCT REGISTRATION! REGISTER YOUR MOSQUITO REPELLER OR LIV® SYSTEM AND SIGN UP TO BECOME A THERMACELL OUTSIDER. Canadians: Please Select The Flag Drop Down In The Upper Right Corner. Don't Miss Out On The Benefits Of Registration Including: • Register Your Product Now To Extend Your Warranty An Extra Year. • Receive New Product Information & Exclusive Offers. • Find Your Next Adventure With Our “Outsiders” Newsletter Delivered Monthly. • Full Access To Our Best In Class Product Support! Review the fields highlighted in red before continuing * Required Fields YOUR PRODUCT Repeller Name * Backpacker Fuel-Powered RepellerCamp Lantern Fuel-Powered RepellerE55 Rechargeable RepellerE65 Rechargeable RepellerE90 Rechargeable RepellerEL55 Lighted Rechargeable RepellerEX55 Rechargeable RepellerEX90 Rechargeable RepellerLIV Installed Repellent SystemMR300 / MR350 / MR450 Fuel-Powered RepellerPatio Shield Fuel-Powered RepellerPatio Shield Lantern Fuel-Powered RepellerPatio Shield Torch Fuel-Powered RepellerPerimeter Fuel-Powered RepellerRadius Rechargeable Repeller YOUR INFORMATION First Name * Last Name * Email Address * Phone Number * Street Address * Apt / Ste Zip Code * City * State * Country * YOUR PURCHASE INFORMATION Purchased From * Ace HardwareAmazon USABass ProBespokeBest BuyCabela'sCostco USADicks Sporting GoodsDo It BestGander OutdoorsHome DepotLowes USAMeijerMenardsMills Fleet FarmOther - USAOverland Expo 2023REISam's ClubSportsman's WarehouseThermacell.comTractor SupplyTrue ValueWalmart USA Date of Purchase * Date of Delivery When did the product arrive at your home, either from an online purchase or an in-store visit? Is this your first Thermacell purchase? * Yes No What is the primary activity you will use this product for? * Astronomy Backyard and Patio Birding Boating Camping Gardening Golfing Hiking and Backpacking Hunting or Fishing Outdoor events (parties, weddings) Professional RVing Shooting Tailgating and sports Travel UPLOAD YOUR PROOF OF PURCHASE To help with future support, please take a photo of your receipt and upload. (Cannot exceed 10mb) Browse (jpg, jpeg, png, pdf, gif) Yes, sign me up to receive the latest promotions, deals, and information from Thermacell WE THINK YOU FORGOT TO OPT-IN TO VALUABLE PRODUCT COMMUNICATION AND NEWS! CLICK 'I AGREE' TO OPT-IN. Not Right Now I Agree Please make a selection. By clicking "I Agree", you consent to receive email notifications containing exclusive offers and the latest updates from Thermacell. Submit Registration © 2024 Thermacell | Privacy Policy This site uses cookies for a better experience. Learn More ok PrevNext JanFebMarAprMayJun1934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024 SuMoTuWeThFrSa 123456789101112131415161718192021222324252627282930