<!DOCTYPE html>
<html lang="en">

<head>
    <title>404 - Page not found</title>
    <script type="text/javascript">
function opsonloadcallback(e,t){let n;function o(){void 0!==e&&e(),document.removeEventListener("scroll",o),document.removeEventListener("mousedown",o),document.removeEventListener("mousemove",o),document.removeEventListener("touchstart",o),document.removeEventListener("scroll",o),document.removeEventListener("keydown",o),clearTimeout(n)}document.addEventListener("scroll",o),document.addEventListener("mousedown",o),document.addEventListener("mousemove",o),document.addEventListener("touchstart",o),document.addEventListener("scroll",o),document.addEventListener("keydown",o),!1!==t&&window.addEventListener("load",(function(){n=setTimeout((function(){o()}),t||100)}))}
</script><meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta charset="UTF-8">
<meta name="description" content="Wes-Tex Printing is a leading wholesale print reseller offering online ordering and design. We offer competitive rates and unique printing options such as foil stamping, digital, 4C, and raised ink printing." />
<meta property="twitter:image" content="https://d2t2lnj3ll8p1.cloudfront.net/images/websitelogos/store_1_retailer_site_logo785.png"/>
<meta property="og:image" content="https://d2t2lnj3ll8p1.cloudfront.net/images/websitelogos/retailer_site_logo643.png"/>
<meta name="googlebot" content="index,follow"/>
<meta name="language" content="EN"><meta name="url" content="https://www.wes-tex.com"><meta name="identifier-URL" content="https://www.wes-tex.com"><meta property="og:title" content="Wes-Tex Printing - Wholesale Print Reseller"/><meta property="og:url" content="https://www.wes-tex.com/404.php"/><meta property="og:site_name" content="Wes-Tex Printing"/><meta property="og:description" content="Wes-Tex Printing is a leading wholesale print reseller offering online ordering and design. We offer competitive rates and unique printing options such as foil stamping, digital, 4C, and raised ink printing."/><meta property="og:type" content="website"/><meta property="twitter:card" content="summary_large_image"><meta property="twitter:url" content="https://www.wes-tex.com/404.php"/><meta property="twitter:title" content="Wes-Tex Printing - Wholesale Print Reseller"/><meta property="twitter:description" content="Wes-Tex Printing is a leading wholesale print reseller offering online ordering and design. We offer competitive rates and unique printing options such as foil stamping, digital, 4C, and raised ink printing."/><meta property="twitter:site" content="https://www.wes-tex.com/404.php"/><meta property="twitter:creator" content="Wes-Tex Printing"/><meta name="csrf-token" content="16f7ef730da56a8b21c6a1a07258bc6c">
    <link rel="shortcut icon" href="https://d2t2lnj3ll8p1.cloudfront.net/images/websitelogos/store_1_retailer_favicon_logo608.ico">
<link href="https://www.wes-tex.com/dist/templates/css/style1.css?1778147305000"  rel="stylesheet" type="text/css" />
<link href="https://www.wes-tex.com/templates/css/promotional_message.css?1778146124"  rel="stylesheet" type="text/css" />
<link href="https://www.wes-tex.com/templates/css/tp4overcalc.css?1778146124"  rel="stylesheet" type="text/css" />
<link href="https://www.wes-tex.com/themes/westex/css/theme.css?1778146124"  rel="stylesheet" type="text/css" />
<!-- Global site tag (gtag.js) - Google Analytics --><!-- Global site tag (gtag.js) - Google Ads: 1051995378 --><script async src="https://www.googletagmanager.com/gtag/js?id=AW-1051995378"></script><script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'AW-1051995378');
</script>
<!-- Hotjar Tracking Code for www.wes-tex.com -->
<script>
    (function(h,o,t,j,a,r){
        h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
        h._hjSettings={hjid:2081035,hjsv:6};
        a=o.getElementsByTagName('head')[0];
        r=o.createElement('script');r.async=1;
        r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
        a.appendChild(r);
    })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
</script>
<script src="https://cdn.jsdelivr.net/npm/js-cookie@rc/dist/js.cookie.min.js"></script>
<script>
function getQueryStringValue (key) {  
  return decodeURIComponent(window.location.search.replace(new RegExp("^(?:.*[&\\?]" + encodeURIComponent(key).replace(/[\.\+\*]/g, "\\$&") + "(?:\\=([^&]*))?)?.*$", "i"), "$1"));  
} 
if (getQueryStringValue("src") == "GFL") 
Cookies.set('src',getQueryStringValue("src"));
//if (Cookies.get('src') == "GFL")
//alert('Google Free Listing');
</script>
<script id="mcjs">!function(c,h,i,m,p){m=c.createElement(h),p=c.getElementsByTagName(h)[0],m.async=1,m.src=i,p.parentNode.insertBefore(m,p)}(document,"script","https://chimpstatic.com/mcjs-connected/js/users/ba9e2f3a4779a1c706af65724/768fee16ffa20e816c6dd5465.js");</script>	<!--[if IE 8]>
	<style>#loading-text {	display: none;}	.loading-container-lg .loading, .loading-container-el .loading, .loading-container-sm .loading, .loading-container-es .loading, .loading-container .loading {background : url('/templates/images/loader_text.gif') no-repeat center;	border: 0px;}</style>
	<![endif]-->
	
    <!-- Facebook Pixel Code -->
<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window,document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '2297029433853660'); 
fbq('track', 'PageView');
</script>
<noscript>
<img height="1" width="1" 
src="https://www.facebook.com/tr?id=2297029433853660&ev=PageView
&noscript=1"/>
</noscript>
<!-- End Facebook Pixel Code --><!-- Google Code for Remarketing Tag -->
<!--------------------------------------------------
Remarketing tags may not be associated with personally identifiable information or placed on pages related to sensitive categories. See more information and instructions on how to setup the tag on: http://google.com/ads/remarketingsetup
--------------------------------------------------->
<script type="text/javascript">
/* <![CDATA[ */
var google_conversion_id = 1051995378;
var google_custom_params = window.google_tag_params;
var google_remarketing_only = true;
/* ]]> */
</script>
<script type="text/javascript" src="//www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="//googleads.g.doubleclick.net/pagead/viewthroughconversion/1051995378/?guid=ON&script=0"/>
</div>
</noscript>

<script>
(function(i, s, o, g, r, a, m) {
            i['GoogleAnalyticsObject'] = r;
            i[r] = i[r] || function() {
                (i[r].q = i[r].q || []).push(arguments)
            }, i[r].l = 1 * new Date();
            a = s.createElement(o),
                    m = s.getElementsByTagName(o)[0];
            a.async = 1;
            a.src = g;
            m.parentNode.insertBefore(a, m)
        })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');

        ga('create', 'UA-2024791-1', 'auto');
        ga('send', 'pageview');
</script>

    <script>
        var AJAX_BASED_PRICE_CALCULATOR = "";
        var FILE_FORGOT_PASSWORD = "";
    </script>
</head>

<body>
    <div class="page-not-found d-flex align-items-center justify-content-center text-center flex-column mx-auto flex-wrap">
        <div class="page-header border-0">
            <h1 class="p-0">404 - Page not found</h1>
        </div>
        <div id="middle_bottom_bg">
            <p class="subheading">We are sorry the page you requested could not be found. Please go back to the home page or contact support.</p>
        </div>
        <a class="btn btn-secondary" href="/">Home</a>
        
<script type="text/javascript">
if('serviceWorker' in navigator){window.addEventListener("load",()=>{let refreshing;const o=navigator.serviceWorker.controller;navigator.serviceWorker.register("/sw.js").then(function(n){if(o){navigator.serviceWorker.addEventListener('controllerchange',function(){if(refreshing)return;refreshing=!0;localStorage.removeItem('__amplify__templateData');window.location.reload()})}}).catch(function(o){console.error(o)})})}else{console.log('Service Worker is not supported in this browser.')}
</script><script>
var COMMON_ALERT_DELETE = 'Are you sure you want to delete?';
var SITE_UPLOAD_AJAX_DIRECTORY = 'uploader/';
var FILE_COMMON_UPLOAD = 'common_upload_file.php';
var SITE_DIRECTORY = '/';
var currency = 'USD';
var leftSymbol = '$';
var rightSymbol = '';
var decimalSeperator = '.';
var thousandSeprator = ',';
var priceValue = '1';
var IS_PRICE_VISIBLE = '1';
var COOKIE_WARNING = 'Cookies are necessary to get the website to function, but they also stores information about how you use our website so we can improve it for you and for others. Cookies on this website are used primarily for traffic measurement and optimization of page content. You can continue to use our side as always, if you accept that we use cookies. Learn more about how to manage cookies on your devices.<br/>';
var COOKIE_WARNING_ACCEPT = 'Accept';
var COOKIE_WARNING_TITLE = 'This website uses cookies';
var COOKIE_WARNING_DENY = 'Deny';
var FILE_ADVANCE_SEARCH = 'advance_search.php';
var MORE_SEARCH = 'See more results containing...';
var UPLOAD_MULTYFILE_DISABLED = 'You cannot upload more than one file at a time.';
var FILE_UPLOAD_ERROR = 'There was a problem while uploading your file, please upload your file again.';
var LABEL_PAGE = 'Page';
var SITE_URL = 'https://www.wes-tex.com/';
var FILE_FILENAME_WITH_EXT = '404.php';
var BOTTOM_TO_TOP_ARROW = 'Yes';
var COMMON_OK = 'Ok';
var COMMON_CANCEL = 'Cancel';
var PHONE_NUMBER_VALIDATION = '0';
var PHONE_NUB_REQUIRED = 'phone-1';
var INVALID_PHONE_NUMBER = 'Invalid Phone Number';
var LANGUAGE_SHORTNAME = 'EN';
var COMMON_SEARCH_NO_RESULT_FOUND = 'Your search <b>- {search_string} -</b> did not match any {section_name}.';
var DIR_HTTP_IMAGES_SITE_DEFAULTTEMPLATE = 'https://www.wes-tex.com/defaulttemplates/';
var DIR_HTTP_IMAGES_SITE_MASTERTEMPLATE = 'https://d2t2lnj3ll8p1.cloudfront.net/images/mastertemplates/';
var COMMON_REMOVE = 'Remove';
var BUTTON_CLOSE = 'Close';
var ADVANCE_SEARCH_SECTIONS = 'products';
var IS_S3_ENABLE = '1';
var AMAZON_PREFIX = '';
var AMAZON_BUCKET = 'westex-ops';
var AMAZON_REGION = 'us-east-1';
var SEARCH_API_LAMBDA_FUNCTION_URL = 'https://n3vssohcmj2wexhi73rqxvj5qu0rcbku.lambda-url.us-east-1.on.aws/';
var SEARCH_DOMAIN_DIRECTORY = 'default';
var IS_ADVANCE_SEARCH_ENABLE = '1';
var DEPARTMENT_ID = '0,0_0';
var TRENDING_SEARCH_CONFIGURATION = 'default';
var PRODUCT_CATEGORY_ENABLED = 'group';
var PASSWORD_STRENGTH = 'L';
var PASSWORD_ERROR_MSG = 'The password must be of at least 8 characters.';
var USERNAME_PASSWORD_IDENTICAL_ERROR_MSG = 'The Username/Email and Password cannot be identical. Kindly choose a different password.';
var JS_FORMAT = '0,0,0.00';
var CORPORATE_PRICE_TEXT = '';
var ALLOW_FANCYBOX_THUMBNAIL = '1';
var MANAGER_NOT_ALLOWED_TO_CHECKOUT = 'Please contact us directly at 800.346.0515 in reference to this order.';
var USER_TYPE = '1';
var GOOGLE_AUTO_SEARCH_ADDRESS_PATTERN = '{street_number},{route}';
var NO_PREVIEW_AVAILABLE = 'No Preview Available';
var FRONT_DATE_LOCALE = 'en';
var FILE_UPLOAD_MAX_SIZE_LIMIT = '150000000';
var CSRF_TOKEN_NAME = 'ops_csrf_token';
var CSRF_COOKIE_NAME = 'ops_csrf_cookie';
var CAPTCHA_SERVICE_TYPE = 'google';
var CAPTCHA_SITE_KEY = '6Lfa6yMkAAAAAPdeOg3RGDye0pBn0V1Yq9rLz3Lv';
var CAPTCHA_VERSION = 'v2';
var CAPTCHA_INVALID = 'Enter valid security code shown in image';
var CAPTCHA_SERVICE_ENABLE = '1';
var FILE_UPLOAD_ENDPOINT = 'https://www.wes-tex.com/upload_endpoint.php';
var UPLOAD_DRAGNDROP = 'Drag a file';
var COMMON_UPLOAD_FILE = 'Select File';
var COMMON_DELETE_TEXT = 'Delete';
var COMMON_OR_TEXT = 'OR';
var LABEL_UPLOAD_DRAGNDROP_MULTIPLE = 'Drag files';
var DRAG_AND_DROP_FILE_LABEL = 'Drag and Drop File Here';
var FILE_SUPPORTED_LABEL = 'Files Supported:';
var COMMON_UPLOAD = '';
var PRODUCT_INFO_IMAGE_GALLERY_THUMB = 'yes';
var COMMON_HELP_TITLE = 'Help';
var COOKIE_OPEN_DEPT_MODAL = '';
var COOKIE_KLAVIYO_IDENTIFY = '';
var IS_MOBILE_DEVICE = false;</script>
<!-- Start of LiveChat (www.livechatinc.com) code --><script type="text/javascript">
window.__lc = window.__lc || {};
window.__lc.license = 8061351;
(function() {
  var lc = document.createElement('script'); lc.type = 'text/javascript'; lc.async = true;
  lc.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'cdn.livechatinc.com/tracking.js';
  var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(lc, s);
})();
</script><!-- End of LiveChat code --><div class="scroll-top" style=""><a href="javascript://;" class="scroll-up" aria-label="Scroll to Top"><i class="fa fa-angle-up fa-lg"></i></a></div><div class="modal fade pr-0 overflow-hidden advance-search advance-search-popup" id="advanceSearch" tabindex="-1">
  <div class="modal-dialog modal-full">
    <div class="modal-content border-0 rounded-0">
      <div class="modal-body pt-4">
          <div class="container d-block px-0 pt-2">
            <div class="input-group pb-1 position-relative">
              <input type="text" class="form-control form-control-lg" name="search-box" placeholder="Product and something awesome..." id="search-box" autocomplete="off" aria-label="Product and something awesome..."/>
              <div class="input-group-append remove-search-text" id="remove-search-text" style="display: none">
                <div class="input-group-text border-0 bg-white pr-1"><span class="fal fa-times"></span></div>
              </div>
              <div class="input-group-append esc-search" data-dismiss="modal" aria-label="Close">
                <div class="input-group-text border-0 bg-white p-0">
                  <small class="btn btn-light active btn-sm">ESC</small>
                </div>
              </div>
            </div>
            <div class="search-history mb-3 mt-1 ml-1 d-flex align-items-center flex-wrap" id="modal-recent-search-history"></div>
                          <div class="modal-search-result pt-2 mb-4 d-none" id="modal-before-search">
                <div class="row modal-search-result-content modal-search-products-result">
                                      <div class="col-12 col-md-3 mb-3 d-none categories-data">
                      <h4><i class="fas fa-list"></i> Categories</h4>
                      <div class="categories-list"></div>
                    </div>
                                    <div class="col-12 col-md-9 d-none trending-product-data-div">
                    <h4>Popular Products</h4>
                    <div class="row modal-products-list"></div>
                  </div>
                </div>
              </div>
                        <div class="modal-search-result pt-2 mb-4 d-none" id="modal-after-search">
                            <div class="tab-content pt-4" id="myTabContentModal">
                <div class="tab-pane fade show active" id="modal-search-product" role="tabpanel" aria-labelledby="modal-search-product">
                  <div class="search-result-listing">
                    <p id="modal-no-products-result" class="modal-no-result" style="display: none"></p>
                    <div class="col-lg-4 col-md-6 mb-4 search_record" id="products-block" style="display: none">
  <div class="d-flex align-items-center">
    <div class="searchable-img rounded border align-self-start">
    </div>
    <div class="searchable-data pl-3">
      <p class="mb-0 text-primary products-name"></p>
      <small class="d-block text-muted text-truncate products-size" title=""></small>
            <p class="d-block text-muted text-truncate mb-0">in
        <small class="font-italic products-category-name"></small>
      </p>
          </div>
  </div>
  <a href="#" class="products-url stretched-link"><span class="sr-only products-name">Product Name</span></a>
</div>
                    <div class="row modal-search-result-content modal-search-products-result">
                                              <div class="col-12 col-md-3 mb-3 d-none categories-data">
                          <h4 class="mb-3"><i class="fas fa-list"></i> Categories</h4>
                          <div class="categories-list"></div>
                        </div>
                                            <div class="col-12 col-md-9">
                        <div class="row modal-products-list"></div>
                      </div>
                    </div>
                  </div>
                  <div class="search-result-view-all">
                    <a href="#" data-url="https://www.wes-tex.com/advance_search.php?search_section=products" class="btn-link btn pl-0 text-secondary modal-view-more-result"  style="font-size: 0.875rem; display: none"><u>VIEW ADVANCE SEARCH RESULTS</u></a>
                  </div>
                </div>
                <div class="tab-pane fade " id="modal-search-template" role="tabpanel" aria-labelledby="modal-search-template">
                  <div class="search-result-listing">
                    <p id="modal-no-templates-result" class="modal-no-result" style="display: none"></p>
                    <div class="col-lg-4 col-md-6 mb-4 search_record" id="templates-block" style="display: none">
  <div class="d-flex align-items-center">
    <div class="searchable-img rounded border align-self-start">
    </div>
    <div class="searchable-data pl-3">
      <p class="mb-0 text-primary templates-name"></p>
      <small class="d-block text-muted text-truncate templates-size" title=""></small>
        <p class="d-block text-muted text-truncate mb-0">
          in
          <small class="font-italic templates-product-name"></small>
        </p>
      </div>
  </div>
  <a href="#" class="templates-url stretched-link"><span class="sr-only templates-name">Templates</span></a>
</div>
                    <div class="row modal-search-result-content modal-search-templates-result"></div>
                  </div>
                  <div class="search-result-view-all">
                    <a href="#" data-url="https://www.wes-tex.com/advance_search.php?search_section=templates" class="btn-link btn pl-0 text-secondary modal-view-more-result" style="font-size: 0.875rem; display: none"><u>VIEW ADVANCE SEARCH RESULTS</u></a>
                  </div>
                </div>
              </div>
            </div>
          </div>
      </div>
    </div>
  </div>
</div>
<ul id="recentSearchHistoryList" class="m-0  list-unstyled bg-white">
</ul>
<div id="search-textbox-content" class="py-3 px-4 advance-search advance-search-dropdown shadow rounded-lg" style="display: none">
  <div class="search-history mb-1 d-flex align-items-center flex-wrap" id="recent-search-history"></div>
      <div class="search-result pt-2 d-none" id="before-search">
      <div class="row search-result-content mt-3 position-relative search-products-result">
                                <div class="col-md-3 d-none border-right categories-data">
            <h4 class="mb-3"><i class="fas fa-list"></i> Categories</h4>
            <div class="categories-list"></div>
        </div>
                <div class="col-md-9 d-none trending-product-data-div">
            <h4 class="mb-3"><i class="fas fa-fire"></i> Popular Products</h4>
            <div class="row products-list"></div>
        </div>
      </div>
    </div>
    <div class="search-result pt-2 d-none" id="after-search">
      <div class="tab-content pt-4 border-top" id="myTabContent">
      <div class="tab-pane fade show active" id="search-product" role="tabpanel" aria-labelledby="search-product">
        <div class="search-result-listing">
          <p id="no-products-result" class="no-result" style="display: none"></p>
          <div class="col-lg-4 col-md-6 mb-4 search_record" id="products-block" style="display: none">
  <div class="d-flex align-items-center">
    <div class="searchable-img rounded border align-self-start">
    </div>
    <div class="searchable-data pl-3">
      <p class="mb-0 text-primary products-name"></p>
      <small class="d-block text-muted text-truncate products-size" title=""></small>
            <p class="d-block text-muted text-truncate mb-0">in
        <small class="font-italic products-category-name"></small>
      </p>
          </div>
  </div>
  <a href="#" class="products-url stretched-link"><span class="sr-only products-name">Product Name</span></a>
</div>
          <div class="row search-result-content search-products-result">
                                                    <div class="col-md-3 d-none border-right categories-data">
                <h4 class="mb-3 categories-label"><i class="fas fa-list"></i> Categories</h4>
                <div class="categories-list"></div>
            </div>
                        <div class="col-md-9">
                <div class="row products-list"></div>
            </div>
          </div>
        </div>
        <div class="search-result-view-all text-center bg-light py-1 rounded">
          <a href="#" data-url="https://www.wes-tex.com/advance_search.php?search_section=products" class="btn-link btn pl-0 text-secondary view-more-result"  style="font-size: 0.875rem; display: none"><u>VIEW ADVANCE SEARCH RESULTS</u></a>
        </div>
      </div>
      <div class="tab-pane fade " id="search-template" role="tabpanel" aria-labelledby="search-template-tab">
        <div class="search-result-listing">
          <p id="no-templates-result" class="no-result" style="display: none"></p>
          <div class="col-lg-4 col-md-6 mb-4 search_record" id="templates-block" style="display: none">
  <div class="d-flex align-items-center">
    <div class="searchable-img rounded border align-self-start">
    </div>
    <div class="searchable-data pl-3">
      <p class="mb-0 text-primary templates-name"></p>
      <small class="d-block text-muted text-truncate templates-size" title=""></small>
        <p class="d-block text-muted text-truncate mb-0">
          in
          <small class="font-italic templates-product-name"></small>
        </p>
      </div>
  </div>
  <a href="#" class="templates-url stretched-link"><span class="sr-only templates-name">Templates</span></a>
</div>
          <div class="row search-result-content search-templates-result"></div>
        </div>
        <div class="search-result-view-all text-center bg-light py-1 rounded">
          <a href="#" data-url="https://www.wes-tex.com/advance_search.php?search_section=templates" class="btn-link btn pl-0 text-secondary view-more-result" style="font-size: 0.875rem; display: none"><u>VIEW ADVANCE SEARCH RESULTS</u></a>
        </div>
      </div>
    </div>
  </div>
</div>
<script src="https://www.wes-tex.com/dist/templates/js/tp1.js?1778147416000"></script>
<script src="https://www.wes-tex.com/dist/templates/js/script.js?1778147386000"></script>
<script defer src="https://www.wes-tex.com/dist/templates/js/tp2.js?1778147403000"></script>
    
    <script>
    var enabledServices = ["facebookpixel"];
    var digitalServiceDetails = {"facebookpixel":"{\"section_id\":\"10\",\"service_id\":\"35\",\"Submit\":\"Save & Back\",\"facebook_pixel_code\":\"<!-- Facebook Pixel Code -->\\r\\n<script>\\r\\n!function(f,b,e,v,n,t,s)\\r\\n{if(f.fbq)return;n=f.fbq=function(){n.callMethod?\\r\\nn.callMethod.apply(n,arguments):n.queue.push(arguments)};\\r\\nif(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\\r\\nn.queue=[];t=b.createElement(e);t.async=!0;\\r\\nt.src=v;s=b.getElementsByTagName(e)[0];\\r\\ns.parentNode.insertBefore(t,s)}(window,document,'script',\\r\\n'https:\\\/\\\/connect.facebook.net\\\/en_US\\\/fbevents.js');\\r\\nfbq('init', '2297029433853660'); \\r\\nfbq('track', 'PageView');\\r\\n<\\\/script>\\r\\n<noscript>\\r\\n<img height=\\\"1\\\" width=\\\"1\\\" \\r\\nsrc=\\\"https:\\\/\\\/www.facebook.com\\\/tr?id=2297029433853660&ev=PageView\\r\\n&noscript=1\\\"\\\/>\\r\\n<\\\/noscript>\\r\\n<!-- End Facebook Pixel Code -->\",\"FB_pixel_event\":[{\"helper\":\"6\"}]}"};
    var root = location.protocol + '//' + location.host;
    var COMMON_EVENT_URL = root+"/common_event.php";
    var isGuestUser = 0;
    var ga4ServerSideConfigured = 0;

    /**
     * @param {string} service - Service name
     * @param {Object} data - Event data object
     * @returns {boolean}
     */
    function shouldExecuteClientSideTracking(service, data) {
        if (data[service] === undefined) return false;
        if (service !== 'facebookpixel') return true;

        var serviceDetails = $.parseJSON(digitalServiceDetails[service]);
        return serviceDetails.tracking_method == null || serviceDetails.tracking_method == 0 || serviceDetails.tracking_method == 2;
    }

    function submitEvents(eventName, callback) {
        var [shippingMethod, paymentMethod, predefinedAction] = ['', '', ''];
        var step = $('#datastep').val();
        var pid = $('input[name="prdid"]').val();
        var quantity = $('#prdqty').val();
        var price = jQuery(".hidden_total_price").val();
        if( typeof hiddenprice !== 'undefined') {
            var hidPrice = hiddenprice.replace(/[^0-9.]/gi, '');
            var fprice = parseFloat(hidPrice, 10);
        } else {
            var fprice = '';
        }
        if (eventName === 'event_checkoutExpress' || eventName === 'event_addShippingInfo') {
            var shipInputType = $('[name="rdshiptype"]').prop('tagName').toLowerCase();
            if (shipInputType === 'select')
                shippingMethod = $("#rdshiptype option:selected").data('shipname');
            if (shipInputType === 'input')
                shippingMethod = $('input[name="rdshiptype"]:checked').data('shipname');
        }
        if (eventName === 'event_checkoutExpress' || eventName === 'event_addPaymentInfo')
            paymentMethod = $("input[name='rdpaymenttype']:checked").parent().text();
        if (eventName == 'event_addToCart' && typeof action !== 'undefined')
            predefinedAction = action;

        let sendParam = "event=" + eventName + "&step=" + step + "&pid=" + pid + "&price=" + price + "&fprice=" + fprice + "&shippingMethod=" + shippingMethod + "&paymentMethod=" + paymentMethod + "&action=" + predefinedAction;

        // Pass form data only when required
        if (typeof FILE_SHOPPING_CART === 'undefined' || FILE_FILENAME_WITH_EXT !== FILE_SHOPPING_CART) {
            sendParam += "&" + $('form').serialize();
        }
        jQuery.ajax({
            url: COMMON_EVENT_URL,
            type: "POST",
            data: sendParam,
            success: function(data) {
                if(data != null ) {
                    $.each(data, function(datakey, dataval) {
                        $.each(enabledServices, function(key, service) {
                            if(shouldExecuteClientSideTracking(service, dataval)) {
                                eval("track_"+service+"(dataval[service])");
                                logDMEEventData(dataval[service], service);
                            }
                        });
                    });
                }
            }
        });
        if(callback) {
            callback();
        }
    }

    function searchproductImpression(eventName) {
        if($('#search_listing_area').length > 0) {
                var productList = [];
                var loadEventName = 'event_productImpression';
                var list = 'search-result-page';
                    $("#search_listing_area").find('a.edatalayer[data-purl!=""]').each(function( index ) {
                        var purl = $(this).data('purl');
                        var position = $(this).data('position');
                        productList.push({url: purl,  index: position});
                    });
                    jQuery.ajax({
                        url: COMMON_EVENT_URL,
                        type: "POST",
                        data:  {product_list : productList, event : loadEventName, list : list},
                        success: function(data) {
                            if(data != null ) {
                                $.each(enabledServices, function(key, service) {
                                    if(shouldExecuteClientSideTracking(service, data)) {
                                        eval("track_"+service+"(data[service])");
                                        logDMEEventData(data[service], service);
                                    }
                                });
                            }
                        }
                    });
        }
    }

    var clickEvents = [".edatalayer"];
    $.each(clickEvents, function(i, v) {
        $(v).click(function(event) {
            var step = $(this).attr('data-step');
            let eventName = 'event_productClick';
            var productList = [];
            if(!event.ctrlKey) {
                event.preventDefault();
            }
            var url = $(this).attr('href');
            var purl = $(this).attr('data-purl');

            if(purl != '') {
                var position = $(this).attr('data-position');
                var list = $(this).attr('data-list');
                productList.push({url: purl,  index:  position});
            }

            let clickEventData = {'event': eventName, 'data' : {product_list : productList, event : eventName, list : list ,step : step}};
            localStorage.setItem("clickEventData", JSON.stringify(clickEventData));

            if (!event.ctrlKey) {
                window.location.href = url;
            }
        });
    });
    var suggestions;
    $('.typeahead').bind('typeahead:render',
            function (ev) {
                suggestions = Array.prototype.slice.call(arguments, 1);
            }
    );
    $('.typeahead').keypress(function(e) {
        if(e.which==13 && $(".tt-more").length>0){
            var topSearch = $('#top_search').val();
            topSearchEvent(topSearch, suggestions);
        }
    }); 
    $('.typeahead').on('typeahead:select', function(e) {
        var topSearch = $('#top_search').val();
        topSearchEvent(topSearch, suggestions);
    });

    function topSearchEvent(searchString, suggestions) {
        var eventName = 'event_topSearch';
        let clickEventData = {'event': eventName, 'data' : {searchString : searchString, event : eventName, suggest : suggestions}};
        localStorage.setItem("clickEventData", JSON.stringify(clickEventData));
    }

    //Event with Confirm Box
    $('.cartdatalayer').click(function(event) {
        var url = $(this).attr('href');
        var productid = $(this).attr('data-productid');
        var cart_pos = $(this).attr('data-pos');
        var quantity = $(this).attr('data-qty');
        var product_price = $(this).attr('data-price');
        var sku = $(this).attr('data-sku');
        var size = $(this).attr('data-size');
        var sizeId = $(this).attr('data-sizeId');
        var prdRemainingStock = $(this).attr('data-prdRemainingStock');
        event.preventDefault();
        $('.cartdatalayer').removeClass('delete-cart-item');
                let clickEventData = {position :cart_pos, prd : productid, price : product_price, quantity : quantity, event : 'event_removeFromCart'};
                localStorage.setItem("clickEventData", JSON.stringify(clickEventData));
                jQuery.ajax({
                    async:false,
                    url: COMMON_EVENT_URL,
                    type: "POST",
                    data: {position :cart_pos, prd : productid, price : product_price, quantity : quantity, event : 'event_removeFromCart', 'sku': sku, 'size': size, 'sizeId': sizeId, 'prdRemainingStock': prdRemainingStock},
                    dataType: 'json',
                    success: function(data) {
                        if(data != null ) {
                            $.each(enabledServices, function(key, service) {
                                if(data[service] !== undefined ) {
                                    eval("track_"+service+"(data[service])");
                                    logDMEEventData(data[service], service);
                                }
                            });
                        }
                    }
                });
    });


    // Load Events Start Here
    var productList, list, pid, size_id, qty, price, optionarray , orderType, email, firstname, lastname, productURL, currency, orderid, orderAmt, cancleMsg, priceDefiningMethod, customWidth, customHeight, customLength, measurementUnit, uprice, catName, productName, imageURL, isBuynowOrder;
    var loadEventName = [];

    if (localStorage.getItem("clickEventData") !== null) {
        var clickEventData = JSON.parse(localStorage.getItem("clickEventData"));
        loadEventName.push(clickEventData.event);
        localStorage.removeItem('clickEventData');
    }

    // Product List page Impression call
    var url = window.location.pathname;
    var productfilename = url.substring(url.lastIndexOf('/')+1);
    //productlist_category_wise,index,advance_search
    if(typeof FILE_FILENAME_WITHOUT_EXT !== 'undefined' && (FILE_FILENAME_WITHOUT_EXT == 'advance_search' || FILE_FILENAME_WITHOUT_EXT == 'productlist_category_wise' || FILE_FILENAME_WITHOUT_EXT == 'index' || FILE_FILENAME_WITHOUT_EXT == 'product_info')) {
        if($("#home_page").find('.edatalayer').length > 0) {
            var productList = [];
            loadEventName.push("event_productImpression");
            var list = 'home-page';
            $("#home_page").find('a.edatalayer[data-purl!=""]').each(function( index ) {
                var purl = $(this).data('purl');
                var position = $(this).data('position');
                productList.push({url: purl, index: position});
            });
        }
        if($('#category_product_list').length > 0) {
            var productList = [];
            loadEventName.push("event_productImpression");
            loadEventName.push("event_contentCategory");
            var list = 'product-listing-page';
            var catID = categoryID;
            $("#category_product_list").find('a.edatalayer[data-purl!=""]').each(function( index ) {
                var purl = $(this).data('purl');
                var position = $(this).data('position');
                productList.push({url: purl, index: position});
            });
        }
        
        if($('#related-product').length > 0) {
            var productList = [];
            loadEventName.push("event_productImpression");
            var list = 'related-products';
            $("#related-product").find('a.edatalayer[data-purl!=""]').each(function( index ) {
                var purl = $(this).data('purl');
                var position = $(this).data('position');
                productList.push({url: purl, index: position});
            });
        }
    }

    var url = window.location.pathname;
    var addInfofilename = url.substring(url.lastIndexOf('/')+1);
    if(typeof FILE_FILENAME_WITHOUT_EXT !== 'undefined' && 'product_info' == FILE_FILENAME_WITHOUT_EXT && AJAX_BASED_PRICE_CALCULATOR == 'no') {
        setPriceCalcData();
        loadEventName.push("event_productInfo");
    }

    var url = window.location.pathname;
    var quotefilename = url.substring(url.lastIndexOf('/')+1);
    if('quote_place_success.php' == quotefilename) {
        loadEventName.push("event_quote");
    }

    var url = window.location.pathname;
    var contactfilename = url.substring(url.lastIndexOf('/')+1);
    if('contact_us_success.php' == contactfilename) {
        loadEventName.push("event_contactUs");
    }

    var url = window.location.pathname;
    var accountfilename = url.substring(url.lastIndexOf('/')+1);
    if((typeof FILE_MY_ACCOUNT !== 'undefined' && FILE_MY_ACCOUNT == accountfilename)|| getCookieValue("klaviyo_identify") == '1') {
        if(typeof KLAVIYO_EMAIL != 'undefined' && typeof KLAVIYO_FIRSTNAME != 'undefined' && typeof KLAVIYO_LASTNAME != 'undefined') {
            var email = KLAVIYO_EMAIL;
            var firstname = KLAVIYO_FIRSTNAME;
            var lastname = KLAVIYO_LASTNAME;
        }
        loadEventName.push("event_userProfile");
    }

    if (isGuestUser == 1) {
        loadEventName.push("event_userProfile");
    }

    var url = window.location.pathname;
    var cartfilename = url.substring(url.lastIndexOf('/')+1);
    if(typeof FILE_SHOPPING_CART !== 'undefined' && FILE_SHOPPING_CART == cartfilename) {
        if (document.referrer.indexOf('checkout_guest_address.php') == -1) {
            loadEventName.push("event_viewCart");
            if(checkoutStyle == '' && performance.getEntriesByType("navigation")[0].redirectCount > 0) {
                submitEvents("event_startedCheckout");
            }
        }
        // trigger add_payment_info event while change payment method
        $('body').on('change', 'input[name=rdpaymenttype]', function () {
            if (typeof triggerPayment !== 'undefined' && triggerPayment)
                submitEvents('event_addPaymentInfo');
        });
        $("input[name=rdpaymenttype]:checked").trigger('change');
    }

    function setPriceCalcData() {
        price = jQuery(".hidden_total_price").val();
        qty = 0;
        catName = catName;
        productName = productName;
        imageURL = imageURL;
        uprice = prodPrice;
        if($('#prdqty').length) {
            qty = $("input[name=prdqty]:checked").val();
            if(qty == undefined || qty == '') {
                $("input:radio[name=prdqty]:first").attr('checked','checked');
                qty = $("input[name=prdqty]:checked").val();
            }
        }
        if(qty == undefined || qty == '') {
            if($('#prdqty').length) {
                qty = document.getElementById("prdqty").value;
            } else {
                qty = $('input[name=prdqty][type=radio][checked=checked]').val();
            }
        }
        if($('#prdqty4over').length) {
            qty = $('#prdqty4over :checked').data('value');
        }
        // Size id of the product.
        size_id = $('#prdsize').val();
        priceDefiningMethod = $('#price_define_method').val();
        customWidth = $('#custom_width').val();
        customHeight = $('#custom_height').val();
        customLength = $('#custom_length').val();
        measurementUnit = $('#prev_measurement_unit').val();
        pid = $('#prdid').val();
        optionarray = {};
        $('[name^="aoptions"]').each(function(key, val) {
            if($(this).val() != '' && (val.type == 'radio' || val.type == 'checkbox' || val.type == 'select-one')) {
                var optionid = val.name;
                optionid = optionid.match(/\[(.*?)\]/)[1];
                if(val.type == 'checkbox') {
                    if(!optionarray[optionid]) {
                        eval('optionarray['+optionid+']=new Array("'+val.value+'")');
                    } else {
                        eval('optionarray['+optionid+'].push('+val.value+')');
                    }
                } else {
                    eval('optionarray['+optionid+']="'+val.value+'"');
                }
            }
        });
        //Default action cart-page is set.will be used if required.(optional)
        var orderType = 'cart-page';
    }

    var url = window.location.pathname;
    var checkoutfile = url.substring(url.lastIndexOf('/')+1);
    if('checkout_success.php' == checkoutfile) {
        // Check if only 'googletagmanager' is enabled
        var onlyGTM = enabledServices.length === 1 && enabledServices[0] === "googletagmanager";
        // Check if Facebook Pixel is enabled and tracking method is Conversions API only
        var fbPixelConfig = {};
        var fbCAPIOnly = false;
        if (typeof digitalServiceDetails.facebookpixel === "string") {
            fbPixelConfig = JSON.parse(digitalServiceDetails.facebookpixel);
            fbCAPIOnly = enabledServices.includes("facebookpixel") && digitalServiceDetails.facebookpixel && fbPixelConfig.tracking_method === "1";
        }
        if (performance.navigation.redirectCount > 0) {
          // If GTM is not the only enabled service OR GA4 server-side is not configured
          // AND Facebook is not set to CAPI-only
          if ((!onlyGTM || ga4ServerSideConfigured == 0) && !fbCAPIOnly) {
            loadEventName.push("event_checkoutSuccess");
          }
            loadEventName.push("event_orderedProduct");
        }
        var orderid = orderId;
        var orderAmt = orderAmount
        var isBuynowOrder = isBuynow;
        var currency = currencyCode;
        cancleMsg = new URLSearchParams(window.location.search).get('cancleMsg');
    }
    function triggerEvent(event) {
        if (event != null) {
            if (event == 'event_productInfo' && AJAX_BASED_PRICE_CALCULATOR == 'yes') {
                setPriceCalcData();
            }
            if (typeof clickEventData !== 'undefined' && clickEventData.event == event) {
                var postDataArray = clickEventData.data;
            } else {
                var postDataArray = {product_list: productList, event : event, list : list,prd: pid,prdsize:size_id,quantity:qty,price:price,option:optionarray, email:email, firstname:firstname, lastname:lastname, catName : catName, productName : productName, imageURL : imageURL, productURL : productURL, orderId : orderid, orderAmt : orderAmt, currenyCode : currency, uprice : uprice, catID : catID, cancleMsg : cancleMsg, priceDefiningMethod : priceDefiningMethod, customWidth : customWidth, customHeight : customHeight, customLength : customLength, measurementUnit : measurementUnit, isBuynowOrder: isBuynowOrder};
            }
            jQuery.ajax({
                url: COMMON_EVENT_URL,
                type: "POST",
                data: postDataArray,
                async:true,
                success: function(data) {
                    if (data != null ) {
                        $.each(enabledServices, function(key, service) {
                            if(shouldExecuteClientSideTracking(service, data)) {
                                eval("track_"+service+"(data[service])");
                                logDMEEventData(data[service], service);
                            }
                        });
                    }
                }
            });
        }
    }

    // Function is used to log the request data for the client side digital marketing events which are pushed
    function logDMEEventData(data, serviceName) {
        var allowDebug = 0;
        if (digitalServiceDetails && serviceName) {
            if (digitalServiceDetails.hasOwnProperty(serviceName)) {
                try {
                    var details = JSON.parse(digitalServiceDetails[serviceName]);
                    if (details.hasOwnProperty('allow_debug')) {
                        allowDebug = (details.allow_debug !== undefined && details.allow_debug !== null) ? parseInt(details.allow_debug) : 0;
                    }
                } catch (error) {
                    console.error(error);
                }
            }
        }

        if (allowDebug === 1) {
            var additionalData = {
                action: 'logDMEEventData',
                data: data,
                service: serviceName
            };
            $.ajax({
                url: COMMON_EVENT_URL,
                type: "POST",
                data: additionalData,
                async: true,
                success: function() {
                },
                error: function(xhr, status, error) {
                    console.error(`Error logging`, {
                        status: status,
                        error: error,
                        responseText: xhr.responseText
                    });
                }
            });
        }
    }

    $( document ).ready(function() {
        if ($.inArray("googletagmanager", enabledServices) !== -1 && getCookieValue("event_user_details") !== undefined && getCookieValue("event_user_details") !== "") {
            var serviceDetails = $.parseJSON(digitalServiceDetails.googletagmanager);
            var userDetails = getCookieValue("event_user_details");
            userDetails = $.parseJSON(userDetails);
            if (($.inArray("8", serviceDetails.gtm_event) !== -1 && userDetails.visitorLoginState === "sign_up") || ($.inArray("9", serviceDetails.gtm_event) !== -1 && userDetails.visitorLoginState === "login"))
                gtag("event", userDetails.visitorLoginState, userDetails);
                logDMEEventData(userDetails, "googletagmanager");
        }
        jQuery.each( loadEventName, function( i, val ) {
            var event = val;
            var isValid = true;
            if (event == 'event_productInfo' && AJAX_BASED_PRICE_CALCULATOR == 'yes') {
                isValid = false;
            }
            if (isValid) {
                triggerEvent(event);
            }
        });
    });
    </script>    
    <script>
    const expressCheckoutError = localStorage.getItem('expressCheckoutError');
    if (expressCheckoutError) {
        $.bootstrapGrowl(expressCheckoutError, {
            type: 'danger',
            align: 'center',
            icon: 'fa fa-exclamation-triangle fa-2x',
            delay: -1
        });
        localStorage.removeItem('expressCheckoutError'); // Clear the error message from local storage
    }
    </script><script src="https://d2t2lnj3ll8p1.cloudfront.net/images/custom_js/westex.js?v=1694089850"></script>

    </div>
</body>

</html>