X

Enjoy $15 off!

Join the list & get $15 off your first Take Back Bag Rainbow 3-pack! Plus, get the scoop on new rewards and more.

Please enter a valid email address. Please enter a valid phone number. There was an error. Please try again or contact help@trashie.io

By signing up via text, you agree to receive recurring automated promotional and personalized marketing text messages (e.g. cart reminders) from Trashie at the phone number used when signing up. Consent is not a condition of any purchase. Reply HELP for help and STOP to cancel. Message frequency varies. Message and data rates may apply. View terms & privacy.

const formTitle = document.getElementById('form_title'); const formDescription = document.getElementById('form_description'); const formDisclaimer = document.getElementById('form_disclaimer'); const emailInput = document.getElementById('email_input'); const phoneNumberInput = document.getElementById('phone_number_input'); const submitButton = document.getElementById('submit_button'); const closeButton = document.getElementById('close_form_button'); const popupWrapper = document.getElementById('popup_wrapper'); phoneNumberInput.style.display = 'none'; formDisclaimer.style.display = 'none'; closeButton.style.display = 'block'; // Function to validate the email using a regular expression function isValidEmail(email) { const emailPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; return emailPattern.test(email); } function isValidUSPhoneNumber(phoneNumber) { const phonePattern = /^(?:\+1[-.\s]?|1[-.\s]?)?\(?(\d{3})\)?[-.\s]?(\d{3})[-.\s]?(\d{4})$/; return phonePattern.test(phoneNumber); } function closeForm() { popupWrapper.classList.remove("show"); } function submitForm() { const emailError = document.getElementById('email_error'); const phoneNumberError = document.getElementById('phone_number_error'); const formError = document.getElementById('form_error'); // Clear previous errors emailError.style.display = 'none'; phoneNumberError.style.display = 'none'; formError.style.display = 'none'; // Validate inputs let isValid = true; if (emailInput.style.display !== 'none') { if (!isValidEmail(emailInput.value)) { emailError.style.display = 'block'; isValid = false; console.log('email not valid'); } if (!isValid) { return; } const data = { "email": emailInput.value.trim(), "listId": 5122015 } fetch('https://us-central1-fd-swap-app-prod-1.cloudfunctions.net/api_v2/v1/marketing/conferenceSubscribe', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(response => { if (response.ok) { // Hide the email emailInput.style.display = 'none'; phoneNumberInput.style.display = 'block'; formTitle.textContent = 'Complete your signup'; //formDescription.textContent = ''; formDisclaimer.style.display = 'block'; phoneNumberInput.focus(); submitButton.textContent = 'Join the list'; posthog.capture( '$set', { $set: { closed_email_popup: 'true' } } ); } else { // Highlight the input fields in red and show error text formError.textContent = 'There was an error submitting the email 1'; formError.style.display = 'block'; } }) .catch((error) => { // Highlight the input fields in red and show error text formError.textContent = error; formError.style.display = 'block'; }); } else { if (!isValidUSPhoneNumber(phoneNumberInput.value)) { phoneNumberError.style.display = 'block'; isValid = false; console.log("Phone number not valid"); } if (!isValid) { return; } const data = { "email": emailInput.value.trim(), "phoneNumber": phoneNumberInput.value.trim(), "listId": 5122015 } fetch('https://us-central1-fd-swap-app-prod-1.cloudfunctions.net/api_v2/v1/marketing/conferenceSubscribe', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(response => { if (response.ok) { // Hide the email emailInput.style.display = 'none'; phoneNumberInput.style.display = 'none'; submitButton.style.display = 'none'; closeButton.style.display = 'block'; formDisclaimer.style.display = 'none'; formTitle.textContent = 'Signup successful!'; formDescription.textContent = 'You will get exclusive notice on new rewards, Take Back deals, and more!'; } else { // Highlight the input fields in red and show error text formError.textContent = 'There was an error submitting the phone number'; formError.style.display = 'block'; } }) .catch((error) => { // Highlight the input fields in red and show error text formError.textContent = 'There was an error submitting the phone number'; formError.style.display = 'block'; }); } }
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Trashie
Shop Take BackInstant DealsTrashieCash™ RewardsChrome Extension
Get Unlimited $68/yr
Menu button
Menu
Shop Take Back
TrashieCash™ rewards
How we donate
Trashie FAQs
Sign up
Login

Third-party/Service provider privacy policies, terms and conditions

Last Updated:
June 4, 2024
Name Terms of Service Privacy Policy
Google Analytics Terms Privacy
Posthog Terms Privacy
Shopify Terms Privacy
Awin Terms Privacy
CJ by Conversant Terms Privacy
FlexOffers Terms Privacy
Impact Terms Privacy
Pepperjam (owned by Partnerize) Terms Privacy
Partnerize Terms Privacy
Avantlink Terms Privacy
Rakuten Marketing Terms Privacy
ShareASale (owned by Awin) Terms Privacy
Refersion (acquired by Pantastic) Terms Privacy
Ebay Partner Network Terms Privacy
Admitad Terms Privacy
Commission Factory Terms Privacy
Webgains Terms Privacy
Trashie
shop take backTrashieCash™ rewardsHow we donateTrashie FAQs
Impact
How we recylePress
Contact
FAQ'SContact usschools and
universities
Partnerships
programs
HELP CENTER
Subscribe
Stay up to date on all things on Trashie
By subscribing you agree to with our Privacy Policy and provide consent to receive updates from our company.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
By subscribing you agree to with our Privacy Notice and provide consent to receive updates from our company.
© 2026 Trashie. All rights reserved.
Privacy NoticeTerms of ServiceCookies SettingsPreferences

We use cookies to improve your experience.

Privacy policyPreferences
RejectAccept
Manage Consent Preferences by Category
Essentials
Always active

Necessary for the site to function. Always On.

Remembers your preferences and provides enhanced features.

Measures usage and improves your experience.

Used for targeted advertising.

Reject AllAccept All
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Preferences