jQuery(document).ready(function($) {
// Find elements with class ".words-table"
$('.words-table').each(function() {
// Find text inside parentheses and wrap it with <em> tags
$(this).html(function(_, html) {
return html.replace(/\((.*?)\)/g, '(<em>$1</em>)');
});// Wrap the first column's text with <strong> tag
$(this).find('td:first-child').wrapInner('<strong></strong>');// Apply <strong> tag to the matching words in the third column (case insensitive)
$(this).find('tr').each(function() {
var firstColumnText = $(this).find('td:first-child').text().trim().toLowerCase(); // Convert to lowercase
var thirdColumnCell = $(this).find('td:nth-child(3)');var thirdColumnText = thirdColumnCell.text().trim(); // No need to convert to lowercase
if (thirdColumnText.toLowerCase().includes(firstColumnText)) {
thirdColumnCell.html(thirdColumnText.replace(new RegExp(firstColumnText, "gi"), '<strong>$&</strong>'));
}
});
});// Custom function for case-insensitive comparison
function isEqualIgnoreCase(str1, str2) {
return str1.localeCompare(str2, undefined, { sensitivity: 'base' }) === 0;
}
});
document.documentElement.className += " spai_has_js";
(function(w, d){
var b = d.getElementsByTagName('head')[0];
var s = d.createElement("script");
var v = ("IntersectionObserver" in w) ? "" : "-compat";
s.async = true; // This includes the script as async.
s.src = "https://cdn.shortpixel.ai/assets/js/bundles/spai-lib-bg" + v
+ ".1.1.min.js?v=3.11.6";
w.spaiDomain = "cdn.shortpixel.ai";
w.spaiData = {
version: "3.11.6",
key: "spai",
customKeys: [],
quality: "glossy",
convert: "auto",
lqip: false,
rootMargin: "500px",
crop: false,
sizeBreakpoints: {"on":false,"base":50,"rate":10},
backgroundsMaxWidth: 1920,
resizeStyleBackgrounds: false,
nativeLazyLoad: true,
safeLazyBackgrounds: false,
asyncInitialParsing: false,
debug: false,
doSelectors: "__SPAI_DO_SELECTORS__",
exclusions: "__SPAI_EXCLUSIONS__",
sizeFromImageSuffix: true,
ajax_url: "https://impactful.ninja/wp-admin/admin-ajax.php"
};
b.appendChild(s);
}(window, document));
Impactful Ninja is reader-supported. When you buy through links on our site, we may earn an affiliate commission. Learn moreLearn more.
Affiliate Disclosure
Hey fellow impactful ninja ?
You may have noticed that Impactful Ninja is all about providing helpful information to make a positive impact on the world and society. And that we love to link back to where we found all the information for each of our posts.
Most of these links are informational-based for you to check out their primary sources with one click.
But some of these links are so-called "affiliate links" to products that we recommend.
Why do we add these product links?
First and foremost, because we believe that they add value to you. For example, when we wrote a post about the environmental impact of long showers, we came across an EPA recommendation to use WaterSense showerheads. So we linked to where you can find them. Or, for many of our posts, we also link to our favorite books on that topic so that you can get a much more holistic overview than one single blog post could provide.
And when there is an affiliate program for these products, we sign up for it. For example, as Amazon Associates, we earn from qualifying purchases.
What do these affiliate links mean for you?
First, and most importantly, we still only recommend products that we believe add value for you.
When you buy something through one of our affiliate links, we may earn a small commission - but at no additional costs to you.
And when you buy something through a link that is not an affiliate link, we won’t receive any commission but we’ll still be happy to have helped you.
What do these affiliate links mean for us?
When we find products that we believe add value to you and the seller has an affiliate program, we sign up for it.
When you buy something through one of our affiliate links, we may earn a small commission (at no extra costs to you).
And at this point in time, all money is reinvested in sharing the most helpful content with you. This includes all operating costs for running this site and the content creation itself.
What does this mean for me personally?
You may have noticed by the way Impactful Ninja is operated that money is not the driving factor behind it. It is a passion project of mine and I love to share helpful information with you to make a positive impact on the world and society. However, it's a project in that I invest a lot of time and also quite some money.
Eventually, my dream is to one day turn this passion project into my full-time job and provide even more helpful information. But that's still a long time to go.
EcoVero™ is a relatively new viscose fabric, produced and trademarked by Lenzing AG since 2017. And Lenzing AG, as a company, is ranked in the top position of the Viscose Producer Performance report by the environmental nonprofit organization Canopy. Still, we had to ask: How sustainable are EcoVero™ fabrics?
EcoVero™ is one of the more sustainably-made viscose fabrics. The raw materials are sourced from sustainably managed forests and manufactured in a closed-loop process. In addition, EcoVero™ has approximately half the water impact and carbon emission of generic viscose.
In this article, we’ll walk you through the life-cycle of EcoVero™ fabrics used for clothes and bedding. Then, we evaluate its sustainability, potential, and shortfalls. And in the end, we’ll show you tips for buying sustainable products made with EcoVero™ fabrics.
Here’s How We Assessed the Sustainability of EcoVero™ Fabrics
EcoVero™ fabric is generally considered sustainable viscose fabric because of its relatively low-impact manufacturing process. Also, the company Lenzing AG only sources certified and controlled wood as raw materials for their EcoVero™ fabric.
“Sustainable: The ability to be maintained at a certain rate or level | Avoidance of the depletion of natural resources in order to maintain an ecological balance”
Oxford Dictionary
EcoVero™ is a type of viscose, a semi-synthetic fiber made in a chemical manufacturing process that breaks down natural cellulose fibers in wood and then regenerates fibers of desired properties. In the closed-loop manufacturing process of EcoVero™, more than 99% of chemicals are recovered and reused.
Viscose is one of three groups of rayon, divided by the changes in manufacturing technology.
Viscose, or the 1st generation of rayon in which EcoVero™ belongs
Regenerated cellulose fibers are similar to cotton, hemp, or linen in the sense that all of these fabrics contain cellulosic fibers. Still, the fibers in cotton, hemp, or linen are natural (instead of manufactured as in the case of viscose fibers, including EcoVero™).
To understand the sustainability of EcoVero™ fabrics, we must assess their life-cycle and each stage’s sustainability. This life-cycle assessment (LCA) is a method to evaluate the environmental impacts of products and materials. Over the years, companies have strategically used LCA to research and create more sustainable products. So, let’s have a look at the LCA of EcoVero™ fabrics!
In this article, we’ll use the cradle-to-grave perspective of the LCA, examining the five stages of the life-cycle of clothes and bedding made with EcoVero™ fabrics. When applicable, we also look at cradle-to-gate assessments.
The life-cycle stages of EcoVero™ fabrics
Each stage’s sustainability
Sourcing of EcoVero™ fabrics
The sourcing stage for EcoVero™ fabrics is generally sustainable thanks to Lenzing AG – EcoVero™ ‘s manufacturer – and their commitment to sourcing certified wood from sustainably managed forests as the raw materials.
Manufacturing of EcoVero™ fabrics
Manufacturing EcoVero™ fabrics is relatively sustainable and also more sustainable than manufacturing generic viscose fabrics. This is largely due to water usage and carbon dioxide emission reduction.
Transporting of EcoVero™ fabrics
Transporting can be a carbon-intensive stage in the life-cycle of items made with EcoVero™ fabrics because of the emissions associated with transporting and delivering vehicles. EcoVero™ fabrics typically travel first from forests, where raw materials for EcoVero™ are grown, to processing factories, and then to sorting centers, shops, and consumer’s houses before going to recycling centers or landfills.
Usage of EcoVero™ fabrics
The usage of EcoVero™ fabrics tends to be not very sustainable because viscose clothing, in general, has relatively low durability.
End-of-life of EcoVero™ fabrics
The end-of-life stage for EcoVero™ fabrics is generally sustainable because it is reusable, biodegradable, and compostable.
Overall, we can say that EcoVero™ is one of the more sustainably-made viscose fabrics. However, the actual environmental impact of a particular product, like a cocktail dress, depends on more specific factors, including the sourcing of the wood, manufacturing processes, and thedistance and mode of transportation. Let’s dive deeper into each life-cycle stage and find out how you can buy EcoVero™ fabrics more sustainably.
How Sustainable Is the Sourcing Raw Materials for EcoVero™ Fabrics
The sourcing stage for EcoVero™ fabrics is generally sustainable thanks to Lenzing AG – EcoVero™ ‘s manufacturer – and their commitment to sourcing certified wood from sustainably managed forests as the raw materials.
What Raw Materials Are Used for EcoVero™ Fabrics
Cellulose fibers are the main material used for EcoVero™ fabrics. They are derived from wood, a renewable resource.
(Synthetic chemicals are also used in making EcoVero™ fabrics, but we will discuss those agents in the manufacturing stage.)
How Do the Raw Materials Sourced for EcoVero™ Fabrics Impact the Environment
The main raw materials used in EcoVero™ fabrics come from the wood, which is largely renewable (sometimes at relatively quick replenish rates). Also, wood acts as a carbon storage thanks to the trees’ carbon sequestration.
Carbon sequestration: As trees grow, they absorb CO2 from the atmosphere while releasing oxygen. They act as a carbon sink, taking greenhouse gasses out of the atmosphere and helping to mitigate the climate crisis.
However, the audit body from the non-profit environmental protection organization Canopy has raised concerns about Lenzing’s mill and pulp production in Brazil, which is planned to open in 2023. This new operation will increase the risk of sourcing wood from Ancient and Endangered Forests or other controversial sources for Lenzing’s products, including EcoVero™ fibers.
How Sustainable Is the Manufacturing of EcoVero™ Fabrics
Manufacturing EcoVero™ fabrics is relatively sustainable and also more sustainable than manufacturing generic viscose fabrics. This is largely due to water usage and carbon dioxide emission reduction.
How Sustainably Is EcoVero™ Fabrics Generally Manufactured
Prepare the wood pulp (harvesting wood, cutting it into penny-sized pieces, and grinding the pieces into a pulp)
Wood pulp is first dissolved in caustic soda, then depolymerized and reacted with carbon disulfide to form cellulose xanthate, which is dissolved in once more time caustic soda
Filter, degas, and age the viscose solution
Spin the solution in an acidic bath containing sulphuric acid, sodium sulfate, and zinc sulfate to regenerate the viscose cellulose in filament form
Wash, beach, finish, dry, and weave the yarn into viscose fabric
Lenzing’s EcoVero™ is, however, manufactured more sustainably than generic viscose. The reasons are:
The closed-loop production technology means toxic gases are not released into the environment. Nearly all of the chemicals are recovered, converted, and returned to the production process to be used as raw materials.
The water impact is up to 50% lower thanks to a highly efficient usage rate and strict waste treatment standards. Water is cleaned up before returning to nature.
Carbon emission of EcoVero™, cradle-to-production gate, is up to 50% lower than for the calculation for generic viscose (cradle-to-finished material gate) by Higg MSI (Materials Sustainability Index).
However, manufacturing EcoVero™ still uses synthetic chemicals, making it less sustainable than Tencel™ Lyocell, which is Lenzing’s rayon fabric made with organic solvent (instead of artificial).
How Sustainable Is the Transportation of EcoVero™ Fabrics
Transporting can be a carbon-intensive stage in the life-cycle of items made with EcoVero™ fabrics because of the emissions associated with transporting and delivering vehicles. EcoVero™ fabrics typically travel first from forests, where raw materials for EcoVero™ are grown, to processing factories, and then to sorting centers, shops, and consumer’s houses before going to recycling centers or landfills.
In the life-cycle of EcoVero™ clothes, transportation typical occurs as below:
From forests where EcoVero™ raw materials are grown to the EcoVero™ pulp and fiber manufacturing locations
From the EcoVero™ fibers manufacturing location to the clothing manufacturing location
From the clothing manufacturing location to sorting centers/physical shops
From sorting centers/physical shops to the consumer’s house
From the consumer’s house to the centers for recycling/ disposing
Traveling Distances of EcoVero™ Fabrics Vary
It is uncommon for clothes to have raw materials grown, processed, sewn, and sold in one town, country, or even continent.
Here are three in many transporting scenarios for EcoVero™ clothes:
Wood is sourced from forests in Austria, then transported on rails to Lenzing’s factory (also) in Austria to be made into fibers, then shipped to clothing factories in the US to be turned into clothes and sold to US consumers.
Tropical wood is sourced from forests in Indonesia and transported to Lenzing’s China location for manufacturing EcoVero™ fibers. Once finished, EcoVero™ fibers are transported to factories in India and then to consumer markets in Europe or the US.
Wood is sourced from various certified sources, then shipped to a pulp and fiber factory in Austria. EcoVero™ fibers are then sent to China to be turned into clothes before selling to consumers worldwide.
You can reduce the transporting carbon footprint by opting for the EcoVero™ fabrics that travel a shorter distance from the forests and are made closer to your home.
The Carbon Footprint of Transporting EcoVero™ Fabrics Depends Largely on the Vehicle of Transportation
During its life-cycle, a piece of EcoVero™ clothing can be transported using various types of vehicles, including:
Large container ships
Planes
Freight trains
Long-distance trucks
Short-distance delivering vans
And these various types of transportation vehicles have different carbon footprint impacts:
Deliveries made by planes – for example, to fulfill fast shipping options for clothing – are the mode of transportation with the highest carbon footprint.
For example, as a consumer, you can choose not to pick the fast delivery option when ordering EcoVero™ clothes to reduce the carbon footprint of your EcoVero™ items.
How Sustainable Is the Usage of EcoVero™ Fabrics
The usage of EcoVero™ fabrics tends to be not very sustainable because viscose clothing, in general, has relatively low durability.
Long-lasting clothing is generally more sustainable because you don’t need to replace it too frequently (thus, no need for more resources to make the new one).
How Sustainable Is the End-of-Life of EcoVero™ Fabrics
The end-of-life stage for EcoVero™ fabric is generally sustainable because it is reusable, biodegradable, and compostable.
Viscose fabric (including EcoVero™ variety) is 100% cellulose, making it a biodegradable material. Thus, at the end of the fabric’s life, there are three available options:
Composting
Incineration
Landfilling
It takes about three months for a t-shirt produced with EcoVero™ fibers to decompose, contrary to plastic-based items that could take up space in the landfill for up to 100 years.
How Circular Are Products Made of EcoVero™ Fabrics
In the textile industry, a circular economy is designed to keep products and materials in use for as long as possible, especially through reusing and recycling. It also covers regenerating natural systems that support the industry and reducing polluted waste released into such systems.
“The circular economy is a systems solution framework that tackles global challenges like climate change, biodiversity loss, waste, and pollution.”
When it comes to regenerated cellulose fabrics, there have been incentives towards closed-loop manufacturing processes.
Since 2000, new technologies have emerged to produce cellulose fibers to keep harmful toxins from being released into the environment. Such closed-loop systems have excellent control to minimize the emission of gases to the environment and recover the solvent carbon disulfide up to 90-95%. Later technologies also improve the recovery of other resources (water and energy) used in manufacturing.
EcoVero™ fibers have the following environmental and original certifications:
Ecolabel: Ecolabel is the official European Union voluntary label recognized worldwide for certified products with a guaranteed, independently-verified low environmental impact. The label requires high environmental standards throughout the entire life-cycle: from raw material extraction through production and distribution to disposal. It also encourages companies to develop innovative, durable, easy-to-repair, and recyclable products.
Biodegradable/Compostable by TÜV Austria Belgium NV: This green mark signifies that the fabrics are biodegradable and compostable under industrial, home, soil, and marine conditions. Thus they can fully revert back to nature.
Forest Stewardship Council: An FSC certification ensures that the wood comes from responsibly managed forests that provide environmental, social, and economic benefits.
Program for Endorsement of Forest Certification: PEFC’s approaches to sustainable forest management are in line with protecting the forests globally and locally and making the certificate work for everyone. Getting a PEFC certification is strict enough to ensure the sustainable management of a forest is socially just, ecologically sound, and economically viable but attainable not only by big but small forest owners.
Furthermore, when buying clothes made with EcoVero™ fibers, you want to check if the clothes manufacturers have (some of) these key environmental and original certifications:
STeP by OEKO-TEX®: STeP by OEKO-TEX® is an independent certification system for brands, retailers, and manufacturers from the textile and leather industry. It communicates organizational environmental measures, including reducing carbon footprint and water usage.
B Corp Certification: The label B Corp is a certification reserved for for-profit companies. Certified holders are assessed on their social and environmental impacts.
Cradle2Cradle certification: Cradle2Cradle provides a standardized approach to material circularity. It assesses whether products have been suitably designed and made with the circular economy in mind covering five critical categories: material health, material reuse, renewable energy and carbon management, water stewardship, and social fairness.
Where to Buy Sustainable EcoVero™ Fabrics
If you are curious about buying EcoVero™ clothes, here are some sustainable brands that use these fabrics (in alphabetic order):
Why Is It Important to Buy Products Made of More Sustainable Fabrics
It is important to buy products made of more sustainable fabrics because a sustainable textile industry has a lower carbon footprint, helps save natural resources, and is better for forests, animals, and humans.
Buying Sustainable Fabrics Reduces Your Carbon Footprint
Buying Sustainable Fabrics Reduces Demand For Natural Resources and Waste Management
The textile industry uses water and land to grow cotton and other fibers. It is estimated that 79 billion cubic meters of water were used for the sector worldwide in 2015. For example, producing a single cotton t-shirt requires as much water as one person drinks for 2.5 years (2,700 liters of fresh water).
Less than 3% of materials used in the textile economy in 2015 came from recycled sources.
In other words, more than 97% of resources used in making clothes are extracted new.
When clothing items are disposed of within a short period of time – under a year in the case of half of the fast fashion clothes – the natural systems that provide raw materials for fabrics don’t have enough time to recover and regenerate, which could lead to ecological breakdown.
Sustainable fabrics are made with less water and emissions while lasting longer:
Because they are durable, you don’t need to buy new clothes too often.
Thus, you help reduce to pressure to extract more resources for making new items.
Similarly, making and consuming sustainable fabrics made with recycled materials reduces the demand for virgin materials while helping tackle waste management.
Buying Sustainable Fabrics Encourages Sustainable Management of Forests
Sustainable plant-based fabrics are made with raw materials from forests and plantations that are sustainably managed, such as complying with FSC standards.
When you buy sustainable plant-based fabrics, you discourage unsustainable forestry practices like illegal logging. You can help reduce deforestation, biodiversity loss, and the effect of climate change.
Buying Sustainable Fabrics Encourages Fairer Treatment of Animals
Buying sustainable vegan alternatives can help to reduce the pressure on raising more and more animals to meet the demand for animal-based fabrics while sacrificing their well-being and lives.
Suppose you have to buy fabrics made with, for example, leather or wool; make sure you only choose brands committed to cruelty-free products. In that case, you help advocate better treatments for animals raised within the textile industry.
Using Sustainable Fabrics Encourages Fairer Treatment of Textile Workers
When you buy sustainable fabrics from brands transparent about the working conditions at their factories, you discourage the use of child labor and help promote better working conditions for textile workers.
Final Thoughts
EcoVero™ is a sustainably-made viscose fabric with a relatively lower water impact and carbon footprint. Also, the raw materials are sourced from sustainably managed forests.
Still, the use of artificial chemicals makes EcoVero™ less sustainable than, for example, Tencel™ Lyocell – the third generation of rayon trademarked by Lenzing AG.
To make it more sustainable, you should buy second-hand EcoVero™ clothes, use clothes for as long as possible, upcycle the material to extend its usage, and arrange for it to be recycled appropriately.
Quynh loves to research and write about how we can live more sustainably. She holds a Master's degree in Cross-Cultural Communication and managed communications at the social enterprise Fargreen. And when she's not writing, she likes to run in the woods, dig in the garden, or knit the next jumper.
Get the 5-minute newsletter that brings real positive news to your inbox — every Mon, Wed, and Fri.
0
jQuery(document).ready(function () {
// Click event for the link with ".listen" class
$(".listen").click(function (e) {
e.preventDefault();
$("#affiliate-disclosure, #social-share-item").slideUp();
$("#l2it-audio-player").slideToggle("fast", "linear");
});// Click event for the link with ".disclosure" class
$(".disclosure").click(function (e) {
e.preventDefault();
$("#l2it-audio-player, #social-share-item").slideUp();
$("#affiliate-disclosure").slideToggle("fast", "linear");
});// Click event for the link with ".share-button" class
$(".share-button").click(function (e) {
e.preventDefault();
$("#l2it-audio-player, #affiliate-disclosure").slideUp();
$("#social-share-item").slideToggle("fast", "linear");
});// Open #affiliate-disclosure by default
$("#affiliate-disclosure").slideDown("fast", "linear");
});
window.fluent_form_ff_form_instance_5_2 = {"id":"5","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_5_2","form_id_selector":"fluentform_5","rules":{"description":{"required":{"value":true,"message":"Please enter your feedback here.","global_message":"This field is required","global":false}},"names[first_name]":{"required":{"value":true,"message":"Please enter your name (or any pseudonym if you prefer) here.","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please enter your email address here.","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
window.fluent_form_ff_form_instance_10_3 = {"id":"10","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_10_3","form_id_selector":"fluentform_10","rules":{"names[first_name]":{"required":{"value":true,"message":"Please fill your name","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please fill your email","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
window.fluent_form_ff_form_instance_17_4 = {"id":"17","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_17_4","form_id_selector":"fluentform_17","rules":{"names[first_name]":{"required":{"value":true,"message":"Please fill your name","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please fill your email","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
// Do not change this comment line otherwise Speed Optimizer won't be able to detect this script(function () {
function sendRequest(url, body) {
if(!window.fetch) {
const xhr = new XMLHttpRequest();
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
xhr.send(JSON.stringify(body))
return
}const request = fetch(url, {
method: 'POST',
body: JSON.stringify(body),
keepalive: true,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
});
}
const calculateParentDistance = (child, parent) => {
let count = 0;
let currentElement = child;// Traverse up the DOM tree until we reach parent or the top of the DOM
while (currentElement && currentElement !== parent) {
currentElement = currentElement.parentNode;
count++;
}// If parent was not found in the hierarchy, return -1
if (!currentElement) {
return -1; // Indicates parent is not an ancestor of element
}return count; // Number of layers between element and parent
}
const isMatchingClass = (linkRule, href, classes, ids) => {
return classes.includes(linkRule.value)
}
const isMatchingId = (linkRule, href, classes, ids) => {
return ids.includes(linkRule.value)
}
const isMatchingDomain = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)
const host = url.host
const hostsToMatch = [host]if(host.startsWith('www.')) {
hostsToMatch.push(host.substring(4))
} else {
hostsToMatch.push('www.' + host)
}return hostsToMatch.includes(linkRule.value)
}
const isMatchingExtension = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)return url.pathname.endsWith('.' + linkRule.value)
}
const isMatchingSubdirectory = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)return url.pathname.startsWith('/' + linkRule.value + '/')
}
const isMatchingProtocol = (linkRule, href, classes, ids) => {
if(!URL.canParse(href)) {
return false
}const url = new URL(href)return url.protocol === linkRule.value + ':'
}
const isMatchingExternal = (linkRule, href, classes, ids) => {
if(!URL.canParse(href) || !URL.canParse(document.location.href)) {
return false
}const matchingProtocols = ['http:', 'https:']
const siteUrl = new URL(document.location.href)
const linkUrl = new URL(href)// Links to subdomains will appear to be external matches according to JavaScript,
// but the PHP rules will filter those events out.
return matchingProtocols.includes(linkUrl.protocol) && siteUrl.host !== linkUrl.host
}
const isMatch = (linkRule, href, classes, ids) => {
switch (linkRule.type) {
case 'class':
return isMatchingClass(linkRule, href, classes, ids)
case 'id':
return isMatchingId(linkRule, href, classes, ids)
case 'domain':
return isMatchingDomain(linkRule, href, classes, ids)
case 'extension':
return isMatchingExtension(linkRule, href, classes, ids)
case 'subdirectory':
return isMatchingSubdirectory(linkRule, href, classes, ids)
case 'protocol':
return isMatchingProtocol(linkRule, href, classes, ids)
case 'external':
return isMatchingExternal(linkRule, href, classes, ids)
default:
return false;
}
}
const track = (element) => {
const href = element.href ?? null
const classes = Array.from(element.classList)
const ids = [element.id]
const linkRules = [{"type":"extension","value":"pdf"},{"type":"extension","value":"zip"},{"type":"protocol","value":"mailto"},{"type":"protocol","value":"tel"}]
if(linkRules.length === 0) {
return
}// For link rules that target an id, we need to allow that id to appear
// in any ancestor up to the 7th ancestor. This loop looks for those matches
// and counts them.
linkRules.forEach((linkRule) => {
if(linkRule.type !== 'id') {
return;
}const matchingAncestor = element.closest('#' + linkRule.value)if(!matchingAncestor || matchingAncestor.matches('html, body')) {
return;
}const depth = calculateParentDistance(element, matchingAncestor)if(depth < 7) {
ids.push(linkRule.value)
}
});// For link rules that target a class, we need to allow that class to appear
// in any ancestor up to the 7th ancestor. This loop looks for those matches
// and counts them.
linkRules.forEach((linkRule) => {
if(linkRule.type !== 'class') {
return;
}const matchingAncestor = element.closest('.' + linkRule.value)if(!matchingAncestor || matchingAncestor.matches('html, body')) {
return;
}const depth = calculateParentDistance(element, matchingAncestor)if(depth < 7) {
classes.push(linkRule.value)
}
});const hasMatch = linkRules.some((linkRule) => {
return isMatch(linkRule, href, classes, ids)
})if(!hasMatch) {
return
}const url = "https://impactful.ninja/wp-content/plugins/independent-analytics-pro/iawp-click-endpoint.php";
const siteId = "";
const body = {
href: href,
classes: classes.join(' '),
ids: ids.join(' '),
siteId: siteId,
...{"payload":{"resource":"singular","singular_id":27474,"page":1},"signature":"03288cac91c547aac259dbb31f386adc"} };sendRequest(url, body)
}
let hasSearched = false;
function search() {
if(hasSearched) {
return;
}
hasSearched = true;if (document.hasOwnProperty("visibilityState") && document.visibilityState === "prerender") {
return;
}if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
let referrer_url = null;if (typeof document.referrer === 'string' && document.referrer.length > 0) {
referrer_url = document.referrer;
}const params = location.search.slice(1).split('&').reduce((acc, s) => {
const [k, v] = s.split('=');
return Object.assign(acc, {[k]: v});
}, {});const url = "https://impactful.ninja/wp-json/iawp/search";
const body = {
referrer_url,
utm_source: params.utm_source,
utm_medium: params.utm_medium,
utm_campaign: params.utm_campaign,
utm_term: params.utm_term,
utm_content: params.utm_content,
gclid: params.gclid,
...{"payload":{"resource":"singular","singular_id":27474,"page":1},"signature":"03288cac91c547aac259dbb31f386adc"} };sendRequest(url, body)
}
document.addEventListener('mousedown', function (event) {
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
const element = event.target.closest('a')if(!element) {
return
}const isPro = true
if(!isPro) {
return
}// Don't track left clicks with this event. The click event is used for that.
if(event.button === 0) {
return
}track(element)
})
document.addEventListener('click', function (event) {
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
const element = event.target.closest('a, button, input[type="submit"], input[type="button"]')if(!element) {
return
}const isPro = true
if(!isPro) {
return
}track(element)
})
document.addEventListener('play', function (event) {
if (navigator.webdriver || /bot|crawler|spider|crawling|semrushbot|chrome-lighthouse/i.test(navigator.userAgent)) {
return;
}
const element = event.target.closest('audio, video')if(!element) {
return
}const isPro = true
if(!isPro) {
return
}track(element)
}, true)
document.addEventListener("DOMContentLoaded", function (e) {
search();
});
document.addEventListener("iawpSearch", function (e) {
search();
});
})();
var hamburgers = document.querySelectorAll(".hamburger"),
menuToggle = document.querySelector( '.menu-toggle' ),
menuItems = document.querySelectorAll( 'nav ul a' ),
htmlEl = document.documentElement;menuToggle.addEventListener("click", function() {
for ( var h = 0; h < hamburgers.length; h++ ) {
hamburgers[h].classList.toggle("is-active");
}
} );for ( var i = 0; i < menuItems.length; i++ ) {
menuItems[i].addEventListener( 'click', function( e ) {
var closest_nav = this.closest( 'nav' );
if ( closest_nav.classList.contains( 'toggled' ) || htmlEl.classList.contains( 'slide-opened' ) ) {
var url = this.getAttribute( 'href' );
var hash = url.split('#')[1];// Open the sub-menu if the link has no destination
if ( '#' === url ) {
e.preventDefault();
for ( var h = 0; h < hamburgers.length; h++ ) {
hamburgers[h].classList.toggle("is-active");
}
}
}
}, false );
}var checkHamburgers = function() {
var openedMobileMenus = document.querySelectorAll( '.toggled, .has-active-search' );for ( var i = 0; i < openedMobileMenus.length; i++ ) {
var menuToggle = openedMobileMenus[i].querySelector( '.menu-toggle' );if ( menuToggle && menuToggle.offsetParent === null ) {
if ( openedMobileMenus[i].classList.contains( 'toggled' ) ) {
var hamburgers = document.querySelectorAll(".hamburger");for ( var h = 0; h < hamburgers.length; h++ ) {
hamburgers[h].classList.remove("is-active");
}
}
}
}
}
window.addEventListener( 'resize', checkHamburgers, false );
window.addEventListener( 'orientationchange', checkHamburgers, false );
jQuery(document).ready(function() {
jQuery(".show-more button").on("click", function() {
var $this = jQuery(this);
var $content = $this.parent().prev("div.content");
$content.toggleClass("hideContent showContent");
$this.remove(); // Remove the button after it is clicked
});
});
window.fluent_form_ff_form_instance_17_1 = {"id":"17","ajaxUrl":"https:\/\/impactful.ninja\/wp-admin\/admin-ajax.php","settings":{"layout":{"labelPlacement":"top","helpMessagePlacement":"with_label","errorMessagePlacement":"inline"},"restrictions":{"denyEmptySubmission":{"enabled":false}}},"form_instance":"ff_form_instance_17_1","form_id_selector":"fluentform_17","rules":{"names[first_name]":{"required":{"value":true,"message":"Please fill your name","global_message":"This field is required","global":false}},"names[middle_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"names[last_name]":{"required":{"value":false,"message":"This field is required","global_message":"This field is required","global":true}},"email":{"required":{"value":true,"message":"Please fill your email","global_message":"This field is required","global":false},"email":{"value":true,"message":"This field must contain a valid email","global_message":"This field must contain a valid email","global":true}}},"debounce_time":300,"file_upload_settings":[]};
(function () {
var c = document.body.className;
c = c.replace(/woocommerce-no-js/, 'woocommerce-js');
document.body.className = c;
})();
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"8128faec0b","file_delete_nonce":"101d9f9ea3","form_id":"17","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_17 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_17 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_17 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_17 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_17 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"8128faec0b","file_delete_nonce":"101d9f9ea3","form_id":"5","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_5 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_5 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_5 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_5 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_5 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"8128faec0b","file_delete_nonce":"101d9f9ea3","form_id":"10","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_10 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_10 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_10 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_10 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_10 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentFormVars = {"ajaxUrl":"https://impactful.ninja/wp-admin/admin-ajax.php","forms":[],"step_text":"Step %activeStep% of %totalStep% - %stepTitle%","step_completed_text":"Completed","is_rtl":"","date_i18n":{"previousMonth":"Previous Month","nextMonth":"Next Month","months":{"shorthand":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"longhand":["January","February","March","April","May","June","July","August","September","October","November","December"]},"weekdays":{"longhand":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"shorthand":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},"daysInMonth":[31,28,31,30,31,30,31,31,30,31,30,31],"rangeSeparator":" to ","weekAbbreviation":"Wk","scrollTitle":"Scroll to increment","toggleTitle":"Click to toggle","amPM":["AM","PM"],"yearAriaLabel":"Year","firstDayOfWeek":1},"pro_version":"6.2.15","fluentform_version":"6.2.15","force_init":"","stepAnimationDuration":"350","upload_completed_txt":"100% Completed","upload_start_txt":"0% Completed","uploading_txt":"Uploading","choice_js_vars":{"noResultsText":"No results found","loadingText":"Loading...","noChoicesText":"No choices to choose from","itemSelectText":"Press to select","maxItemTextSingular":"Only %%maxItemCount%% option can be added","maxItemTextPlural":"Only %%maxItemCount%% options can be added"},"input_mask_vars":{"clearIfNotMatch":false},"nonce":"8128faec0b","file_delete_nonce":"101d9f9ea3","form_id":"17","step_change_focus":"1","has_cleantalk":"","pro_payment_script_compatible":"1","crop_image_title":"Crop Image","crop_confirm_txt":"Crop & Upload","crop_cancel_txt":"Cancel","crop_close_txt":"Close","crop_reset_txt":"Reset","crop_ratio_txt":"Crop ratio","crop_ratio_free_txt":"Free","crop_invalid_dimensions_txt":"The selected image is smaller than the required crop size.","crop_exact_dimensions_txt":"The cropped image must match the required width and height.","crop_dimension_instruction_txt":"Crop the image to exactly %1$s px x %2$s px.","crop_invalid_image_txt":"Unable to process the selected image.","crop_loading_txt":"Preparing image..."};
var fluentform_submission_messages_17 = {"file_upload_in_progress":"File upload in progress. Please wait...","javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_payment_messages_17 = {"stock_out_message":"This Item is Stock Out","item_label":"Item","price_label":"Price","qty_label":"Qty","line_total_label":"Line Total","sub_total_label":"Sub Total","discount_label":"Discount","total_label":"Total","signup_fee_label":"Signup Fee","trial_label":"Trial","processing_text":"Processing...","confirming_text":"Confirming..."};
var fluentform_save_progress_messages_17 = {"copy_button":"Copy","email_button":"Email","email_placeholder":"Your Email Here","copy_success":"Copied"};
var fluentform_address_messages_17 = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
var fluentform_gateway_messages_17 = {"request_failed":"Request failed. Please try again","payment_failed":"Payment process failed!","no_method_found":"No method found","processing_text":"Processing..."};
var fluentform_submission_messages_global = {"javascript_handler_failed":"Javascript handler could not be loaded. Form submission has been failed. Reload the page and try again"};
var fluentform_address_messages_global = {"please_wait":"Please wait ...","location_not_determined":"Could not determine address from location.","address_fetch_failed":"Failed to fetch address from coordinates.","geolocation_failed":"Geolocation failed or was denied.","geolocation_not_supported":"Geolocation is not supported by this browser."};
//# sourceURL=fluent-form-submission-js-extra
var PayPalCommerceGateway = {"url":"https://www.paypal.com/sdk/js?client-id=AV7sN95De2IGlDsM9Ik1rVkYH9DOGaadfuQEmmGw-rMqKiZ4eSw_A6MT_5-dnW8Aw3nJUWcRxdCVYV5w¤cy=USD&integration-date=2026-09-02&components=buttons,funding-eligibility&vault=false&commit=false&intent=capture&disable-funding=card,paylater&enable-funding=venmo","url_params":{"client-id":"AV7sN95De2IGlDsM9Ik1rVkYH9DOGaadfuQEmmGw-rMqKiZ4eSw_A6MT_5-dnW8Aw3nJUWcRxdCVYV5w","currency":"USD","integration-date":"2026-09-02","components":"buttons,funding-eligibility","vault":"false","commit":"false","intent":"capture","disable-funding":"bancontact,blik,eps,ideal,mybank,p24,trustly,multibanco,oxxo,card,paylater","enable-funding":"venmo"},"script_attributes":{"data-partner-attribution-id":"Woo_PPCP"},"client_id":"AV7sN95De2IGlDsM9Ik1rVkYH9DOGaadfuQEmmGw-rMqKiZ4eSw_A6MT_5-dnW8Aw3nJUWcRxdCVYV5w","currency":"USD","data_client_id":{"set_attribute":false,"endpoint":"/?wc-ajax=ppc-data-client-id","nonce":"cb904a6b37","user":0,"has_subscriptions":false,"paypal_subscriptions_enabled":true},"redirect":"https://impactful.ninja/checkout/","context":"mini-cart","ajax":{"simulate_cart":{"endpoint":"/?wc-ajax=ppc-simulate-cart","nonce":"5937be0b51"},"change_cart":{"endpoint":"/?wc-ajax=ppc-change-cart","nonce":"8e5cf35e1e"},"create_order":{"endpoint":"/?wc-ajax=ppc-create-order","nonce":"26296f60f4"},"approve_order":{"endpoint":"/?wc-ajax=ppc-approve-order","nonce":"36b801db69"},"get_order":{"endpoint":"/?wc-ajax=ppc-get-order","nonce":"e367835575"},"approve_subscription":{"endpoint":"/?wc-ajax=ppc-approve-subscription","nonce":"d6c42e0d16"},"save_checkout_form":{"endpoint":"/?wc-ajax=ppc-save-checkout-form","nonce":"d28140e271"},"validate_checkout":{"endpoint":"/?wc-ajax=ppc-validate-checkout","nonce":"65ebdbb3da"},"cart_script_params":{"endpoint":"/?wc-ajax=ppc-cart-script-params"},"create_setup_token":{"endpoint":"/?wc-ajax=ppc-create-setup-token","nonce":"285c6391a4"},"create_payment_token":{"endpoint":"/?wc-ajax=ppc-create-payment-token","nonce":"97f358832e"},"create_payment_token_for_guest":{"endpoint":"/?wc-ajax=ppc-update-customer-id","nonce":"2f0e6341ce"},"update_shipping":{"endpoint":"/?wc-ajax=ppc-update-shipping","nonce":"31b5c8a769"},"update_customer_shipping":{"shipping_options":{"endpoint":"https://impactful.ninja/wp-json/wc/store/v1/cart/select-shipping-rate"},"shipping_address":{"cart_endpoint":"https://impactful.ninja/wp-json/wc/store/v1/cart/","update_customer_endpoint":"https://impactful.ninja/wp-json/wc/store/v1/cart/update-customer"},"wp_rest_nonce":"9486d68be0","update_shipping_method":"/?wc-ajax=update_shipping_method"}},"cart_contains_subscription":"","subscription_plan_id":"","subscription_custom_id":"","variable_paypal_subscription_variations":[],"variable_paypal_subscription_variation_from_cart":"","subscription_product_allowed":"","subscription_button_allowed":"1","locations_with_subscription_product":{"product":false,"payorder":false,"cart":false},"subscriptions_accept_manual_renewals":"","enforce_vault":"","can_save_vault_token":"","is_free_trial_cart":"","bn_codes":{"checkout":"Woo_PPCP","cart":"Woo_PPCP","mini-cart":"Woo_PPCP","product":"Woo_PPCP"},"payer":null,"button":{"wrapper":"#ppc-button-ppcp-gateway","is_disabled":false,"mini_cart_wrapper":"#ppc-button-minicart","is_mini_cart_disabled":false,"cancel_wrapper":"#ppcp-cancel","mini_cart_style":{"layout":"vertical","color":"gold","shape":"rect","label":"paypal","tagline":false,"height":35},"style":{"layout":"vertical","color":"gold","shape":"rect","label":"paypal","tagline":false}},"separate_buttons":{"card":{"id":"ppcp-card-button-gateway","wrapper":"#ppc-button-ppcp-card-button-gateway","style":{"shape":"rect","color":"black","layout":"horizontal"}}},"hosted_fields":{"wrapper":"#ppcp-hosted-fields","labels":{"credit_card_number":"","cvv":"","mm_yy":"MM/YY","fields_empty":"Card payment details are missing. Please fill in all required fields.","fields_not_valid":"Unfortunately, your credit card details are not valid.","card_not_supported":"Unfortunately, we do not support your credit card.","cardholder_name_required":"Cardholder's first and last name are required, please fill the checkout form required fields."},"valid_cards":[],"contingency":"NO_3D_SECURE"},"messages":{"wrapper":".ppcp-messages","is_hidden":false,"block":{"enabled":false},"amount":0,"placement":"payment","style":{"layout":"text","logo":{"type":"primary","position":"left"},"text":{"color":"black","size":"12"},"color":"blue","ratio":"1x1"}},"labels":{"error":{"generic":"Something went wrong. Please try again or choose another payment source.","required":{"generic":"Required form fields are not filled.","field":"%s is a required field.","elements":{"terms":"Please read and accept the terms and conditions to proceed with your order."}}},"billing_field":"Billing %s","shipping_field":"Shipping %s"},"simulate_cart":{"enabled":true,"throttling":5000},"order_id":"0","order_key":"","single_product_buttons_enabled":"1","mini_cart_buttons_enabled":"1","basic_checkout_validation_enabled":"","early_checkout_validation_enabled":"1","funding_sources_without_redirect":["paypal","paylater","venmo","card"],"user":{"is_logged":false,"has_wc_card_payment_tokens":false},"should_handle_shipping_in_paypal":"","server_side_shipping_callback":{"enabled":true},"appswitch":{"enabled":true},"needShipping":"","vaultingEnabled":"","productType":null,"manualRenewalEnabled":"","final_review_enabled":"1"};
//# sourceURL=ppcp-smart-button-js-extra