www.customizebestball.com Open in urlscan Pro
2606:4700::6811:f777  Public Scan

Submitted URL: http://www.customizebestball.com/collections/torino
Effective URL: https://www.customizebestball.com/collections/torino
Submission: On August 25 via api from US — Scanned from DE

Form analysis 7 forms found in the DOM

GET /search

<form action="/search" method="get" class="tw-max-w-[250px] tw-mr-11">
  <div tabindex="-1" class="tw-flex tw-relative header__search">
    <input autocomplete="off" name="q" type="text"
      class="tw-w-full tw-flex-1 tw-h-10 tw-py-0 tw-pl-[14px] tw-pr-13 tw-bg-header-search tw-text-current tw-text-sm tw-leading-none tw-rounded-global  tw-border-none  tw-placeholder-current header__search-input" placeholder="Search...">
    <button type="submit" class="tw-flex tw-items-center tw-px-[14px] tw-m-0 tw-bg-transparent tw-text-current tw-border-none tw-outline-none tw-cursor-pointer tw-h-full tw-absolute tw-right-0 header__search-icon" tabindex="-1"><svg class=""
        width="24" height="24" xmlns="http://www.w3.org/2000/svg">
        <path d="M11.16 1a9.16 9.16 0 1 1 0 18.322A9.16 9.16 0 0 1 11.16 1zm0 1.629a7.532 7.532 0 1 0 0 15.064 7.532 7.532 0 0 0 0-15.064zm5.465 14.148 1.152-1.152L23 20.848 21.848 22l-5.223-5.223z" fill="currentColor"></path>
      </svg></button>
    <button type="button"
      class="tw-hidden tw-justify-center tw-items-center tw-pr-2 tw-pl-6 tw-m-0 tw-bg-transparent tw-text-header-color tw-border-none tw-outline-none tw-cursor-pointer header__search-close  lg:tw-absolute lg:tw--right-11 lg:tw-h-full "><svg class=""
        width="14" height="14" xmlns="http://www.w3.org/2000/svg">
        <path d="m3 3 8.485 8.485m0-8.485L3 11.485" stroke="currentColor" stroke-width="1.6" stroke-linecap="square"></path>
      </svg></button>
  </div>
</form>

GET /search

<form action="/search" method="get" class="">
  <div tabindex="-1" class="tw-flex tw-relative header__search">
    <input autocomplete="off" name="q" type="text"
      class="tw-w-full tw-flex-1 tw-h-10 tw-py-0 tw-pl-[14px] tw-pr-13 tw-bg-header-search tw-text-current tw-text-sm tw-leading-none tw-rounded-global  tw-border-none  tw-placeholder-current header__search-input" placeholder="Search...">
    <button type="submit" class="tw-flex tw-items-center tw-px-[14px] tw-m-0 tw-bg-transparent tw-text-current tw-border-none tw-outline-none tw-cursor-pointer tw-h-full tw-absolute tw-right-0 header__search-icon" tabindex="-1"><svg class=""
        width="24" height="24" xmlns="http://www.w3.org/2000/svg">
        <path d="M11.16 1a9.16 9.16 0 1 1 0 18.322A9.16 9.16 0 0 1 11.16 1zm0 1.629a7.532 7.532 0 1 0 0 15.064 7.532 7.532 0 0 0 0-15.064zm5.465 14.148 1.152-1.152L23 20.848 21.848 22l-5.223-5.223z" fill="currentColor"></path>
      </svg></button>
    <button type="button"
      class="tw-hidden tw-justify-center tw-items-center tw-pr-2 tw-pl-6 tw-m-0 tw-bg-transparent tw-text-header-color tw-border-none tw-outline-none tw-cursor-pointer header__search-close  lg:tw-absolute lg:tw--right-11 lg:tw-h-full "><svg class=""
        width="14" height="14" xmlns="http://www.w3.org/2000/svg">
        <path d="m3 3 8.485 8.485m0-8.485L3 11.485" stroke="currentColor" stroke-width="1.6" stroke-linecap="square"></path>
      </svg></button>
  </div>
</form>

GET /search

<form action="/search" method="get" class="">
  <div tabindex="-1" class="tw-flex tw-relative header__search">
    <input autocomplete="off" name="q" type="text"
      class="tw-w-full tw-flex-1 tw-h-10 tw-py-0 tw-pl-[14px] tw-pr-13 tw-bg-header-search tw-text-current tw-text-sm tw-leading-none tw-rounded-global  tw-border-none  tw-placeholder-current header__search-input" placeholder="Search...">
    <button type="submit" class="tw-flex tw-items-center tw-px-[14px] tw-m-0 tw-bg-transparent tw-text-current tw-border-none tw-outline-none tw-cursor-pointer tw-h-full tw-absolute tw-right-0 header__search-icon" tabindex="-1"><svg class=""
        width="24" height="24" xmlns="http://www.w3.org/2000/svg">
        <path d="M11.16 1a9.16 9.16 0 1 1 0 18.322A9.16 9.16 0 0 1 11.16 1zm0 1.629a7.532 7.532 0 1 0 0 15.064 7.532 7.532 0 0 0 0-15.064zm5.465 14.148 1.152-1.152L23 20.848 21.848 22l-5.223-5.223z" fill="currentColor"></path>
      </svg></button>
    <button type="button"
      class="tw-hidden tw-justify-center tw-items-center tw-pr-2 tw-pl-6 tw-m-0 tw-bg-transparent tw-text-header-color tw-border-none tw-outline-none tw-cursor-pointer header__search-close  lg:tw-absolute lg:tw--right-11 lg:tw-h-full "><svg class=""
        width="14" height="14" xmlns="http://www.w3.org/2000/svg">
        <path d="m3 3 8.485 8.485m0-8.485L3 11.485" stroke="currentColor" stroke-width="1.6" stroke-linecap="square"></path>
      </svg></button>
  </div>
</form>

GET /search

<form action="/search" method="get" class="">
  <div tabindex="-1" class="tw-flex tw-relative header__search">
    <input autocomplete="off" name="q" type="text"
      class="tw-w-full tw-flex-1 tw-h-10 tw-py-0 tw-pl-[14px] tw-pr-13 tw-bg-header-search tw-text-current tw-text-sm tw-leading-none tw-rounded-global  tw-border-none  tw-placeholder-current header__search-input" placeholder="Search...">
    <button type="submit" class="tw-flex tw-items-center tw-px-[14px] tw-m-0 tw-bg-transparent tw-text-current tw-border-none tw-outline-none tw-cursor-pointer tw-h-full tw-absolute tw-right-0 header__search-icon" tabindex="-1"><svg class=""
        width="24" height="24" xmlns="http://www.w3.org/2000/svg">
        <path d="M11.16 1a9.16 9.16 0 1 1 0 18.322A9.16 9.16 0 0 1 11.16 1zm0 1.629a7.532 7.532 0 1 0 0 15.064 7.532 7.532 0 0 0 0-15.064zm5.465 14.148 1.152-1.152L23 20.848 21.848 22l-5.223-5.223z" fill="currentColor"></path>
      </svg></button>
    <button type="button" class="tw-hidden tw-justify-center tw-items-center tw-pr-2 tw-pl-6 tw-m-0 tw-bg-transparent tw-text-header-color tw-border-none tw-outline-none tw-cursor-pointer header__search-close "><svg class="" width="14" height="14"
        xmlns="http://www.w3.org/2000/svg">
        <path d="m3 3 8.485 8.485m0-8.485L3 11.485" stroke="currentColor" stroke-width="1.6" stroke-linecap="square"></path>
      </svg></button>
  </div>
</form>

<form class="collection__form collection__form_md tw-mt-3 tw-flex-1 tw-overflow-x-hidden tw-overscroll-y-auto">
  <div class="tw-relative tw-transition-all tw-duration-300" data-current-levels="1">
    <ul class="tw-box-border tw-list-none tw-w-full tw-p-0 tw-m-0 tw-absolute tw-top-0 tw-transition-all tw-duration-300 is-active" data-ul="filter_content" data-levels="1">
      <div class="tw-flex tw-flex-shrink-0 md:tw-justify-between tw-pt-3 md:tw-py-10 md:tw-px-4">
        <div class=" lg:tw-pr-5  lg:tw-body-plus-2 md:tw-text-lg lg:tw-leading-10 md:tw-leading-none">Sort by</div>
        <div class="tw-relative">
          <select
            class="lg:tw-h-10 lg:tw-pl-3 tw-pr-[46px] tw-body-plus-4 lg:tw-leading-none tw-text-text-font-size type-body-font-family md:tw-text-right  md:tw-border-none md:tw-bg-transparent lg:tw-secondary-select tw-appearance-none collection_sort_by">
            <option name="sort_by" value="manual" selected=""> Featured </option>
            <option name="sort_by" value="price-ascending"> Price, low to high </option>
            <option name="sort_by" value="price-descending"> Price, high to low </option>
            <option name="sort_by" value="published-descending"> Newest in </option>
            <option name="sort_by" value="best-selling"> Total sales, high to low </option>
            <option name="sort_by" value="add_to_cart_count"> Purchases, high to low </option>
            <option name="sort_by" value="views"> Page views, high to low </option>
          </select>
          <svg class="tw-absolute tw-flex tw-top-1/2 md:tw-right-0 lg:tw-right-3 tw-transform tw--translate-y-1/2 tw-rotate-90 tw-pointer-events-none arrow" width="22" height="22" xmlns="http://www.w3.org/2000/svg">
            <path d="M14.576 10.573a.6.6 0 0 1 0 .849L8.99 17.008a.3.3 0 0 1-.424 0l-.51-.51a.3.3 0 0 1 0-.424l5.078-5.077L8.057 5.92a.3.3 0 0 1 0-.424l.509-.509a.3.3 0 0 1 .424 0l5.586 5.586z" fill="currentColor"></path>
          </svg>
        </div>
      </div>
    </ul>
  </div>
</form>

<form class="">
  <div class="zb-flex">
    <a href="${product.url}?${toQuery({ aid: 'smart_recommend.2.' + data.id, ifb: product.ifb || '', cfb: product.cfb || '', scm: product.scm || data.scm || '', ssp: data.ssp || '' })}" impr="1" imprevt="1" class="zb-w-[132px] zb-mr-4 rtl:zb-ml-4 rtl:zb-mr-0" data-prdct="${product.id}" data-ifb="${product.ifb || ''}" data-cfb="${product.cfb || ''}" data-scm="${product.scm || data.scm || ''}" data-spm="${productIndex}"> <ljs-render layout="container" id="smart_cart_pop_image_${product.id}" template="smart_cart_pop_image_template" manual=""></ljs-render> </a>
    <div class="zb-flex zb-flex-col zb-flex-grow zb-justify-between">
      <div>
        <div class="zb-line-clamp-2 zb-text-sm zb-mb-2">${product.title}</div> <ljs-render layout="container" id="smart_cart_pop_price_${product.id}" template="smart_cart_pop_price_template" manual=""></ljs-render>
      </div>
      <div>
        <div class="zb-relative zb-w-full zb-cursor-pointer">
          <div class="zb-border zb-border-solid zb-border-[#eee] zb-px-3 zb-py-[10px] zb-flex zb-items-center zb-justify-between zb-font-semibold zb-text-sm zb-rounded-sm"
            @tap="smart_pop_variant-select-${product.id}.toggleClass(class=zb-rotate-180);smart_cart_pop_variant_${product.id}_mobile.toggleClass(class=zb-hidden);smart_cart_pop_variant_${product.id}_pc.toggleClass(class=smart_cart_pop_variant_pc_show,force=true);smart_cart_pop_variant_modal_${product.id}.open"
            spz-if="${!!(product.options &amp;&amp; product.options.length &amp;&amp; product.options.length > 0) &amp;&amp; data.config.variant_select_visible}"> <ljs-render manual="" layout="container" id="smart_cart_pop_variant_text_${product.id}"
              template="smart_cart_pop_variant_text_template"></ljs-render> <svg id="smart_pop_variant-select-${product.id}" width="12" height="8" class="zb-ml-2" viewBox="0 0 12 8" fill="none" xmlns="http://www.w3.org/2000/svg">
              <path
                d="M6.00002 7.06738C6.19244 7.06775 6.38498 6.99453 6.5318 6.84772C6.54504 6.83447 6.55769 6.82086 6.56973 6.8069L11.1251 2.25152C11.418 1.95863 11.418 1.48375 11.1251 1.19086C10.8322 0.897968 10.3573 0.897968 10.0645 1.19086L6.00003 5.25529L1.9356 1.19086C1.64271 0.897968 1.16784 0.897968 0.874943 1.19086C0.58205 1.48375 0.58205 1.95863 0.874943 2.25152L5.43033 6.8069C5.44237 6.82086 5.45502 6.83447 5.46826 6.84772C5.61507 6.99453 5.8076 7.06775 6.00002 7.06738Z"
                fill="#0A1533"></path>
            </svg> </div> <ljs-lightbox layout="nodisplay" disable-unmount="" class="smart_cart_pop_lightbox_pc" id="smart_cart_pop_variant_modal_${product.id}" @close="smart_pop_variant-select-${product.id}.toggleClass(class=zb-rotate-180);">
            <div id="smart_cart_pop_variant_${product.id}_pc" class="zb-hidden"><ljs-variants id="smart_cart_pop_variants_${product.id}"
                class="md:!zb-absolute md:zb-top-[50px] md:zb-w-full md:zb-left-0 md:zb-z-30 md:zb-bg-white zb-max-h-[280px] zb-overflow-y-auto md:zb-shadow-pop" layout="container" template="smart_cart_pop_variant_template"
                onclick="event.stopPropagation()" disabled-dj-event="" interference=""> </ljs-variants></div>
          </ljs-lightbox>
        </div>
        <div class="zb-mt-3"> <button product-id="${product.id}" id="smart_cart_pop_atc_btn_${product.id}"
            class="zb-flex zb-items-center zb-justify-center zb-w-full zb-text-white zb-py-[10px] zb-h-9 zb-text-xs zb-font-normal zb-border-none zb-rounded-[4px] smart_cart_pop_atc_btn_bg" type="button" role="addToCart"
            @tap="smart_cart_pop_loading_${product.id}.toggleClass(class=zb-hidden);smart_cart_pop_atc_${product.id}.toggleClass(class=zb-hidden);smart_cart_pop_atc_btn_${product.id}.toggleClass(class=zb-pointer-events-none);custom-func.addATCHook(activity_id='${data.id}',ifb='${product.ifb}',cfb='${product.cfb}',scm='${product.scm || data.scm}',ssp='${data.ssp}',spm='${data.spmBase}.${productIndex}')">
            <ljs-render layout="container" id="smart_cart_pop_atc_${product.id}" template="smart_cart_pop_atc_template" mamual="" class="notranslate"> </ljs-render>
            <div id="smart_cart_pop_added_${product.id}" class="zb-hidden"><span class="zb-flex zb-justify-center zb-gap-1"><svg width="14" height="15" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg">
                  <path
                    d="M8 16.5006C3.58171 16.5006 0 12.9183 0 8.5C0 4.08171 3.58171 0.5 8 0.5C12.4183 0.5 16 4.08171 16 8.5C16 12.9183 12.4183 16.5006 8 16.5006ZM8 2.04344C4.21314 2.04344 1.54287 4.71371 1.54287 8.50057C1.54287 12.2874 4.21314 14.9577 8 14.9577C11.7869 14.9577 14.4571 12.2874 14.4571 8.50057C14.4571 4.71371 11.7869 2.04344 8 2.04344ZM7.26057 11.1909L7.12229 11.3286L7.09543 11.3017C7.02286 11.336 6.94286 11.3577 6.85714 11.3577C6.73543 11.3577 6.62857 11.3109 6.536 11.2463L6.52229 11.2594L6.45371 11.1909C6.45314 11.1903 6.45314 11.1903 6.45257 11.1897L4.09771 8.83486L4.90629 8.02686L6.85714 9.97771L11.1629 5.67143L11.9714 6.48L7.26171 11.1897C7.26114 11.1903 7.26114 11.1903 7.26057 11.1909Z"
                    fill="white"></path>
                </svg>Added</span></div>
            <div id="smart_cart_pop_loading_${product.id}" class="zb-hidden">
              <div class="smart_cart_pop_loading"></div>
            </div>
          </button> </div>
      </div>
    </div>
  </div>
  <div id="smart_cart_pop_variant_${product.id}_mobile" class="zb-hidden md:zb-hidden"><ljs-variants id="smart_cart_pop_variants_${product.id}"
      class="md:!zb-absolute md:zb-top-[50px] md:zb-w-full md:zb-left-0 md:zb-z-30 md:zb-bg-white zb-max-h-[280px] zb-overflow-y-auto md:zb-shadow-pop" layout="container" template="smart_cart_pop_variant_template" onclick="event.stopPropagation()"
      disabled-dj-event="" interference=""> </ljs-variants></div>
</form>

POST //translate.googleapis.com/translate_voting?client=te

<form id="goog-gt-votingForm" action="//translate.googleapis.com/translate_voting?client=te" method="post" target="votingFrame" class="VIpgJd-yAWNEb-hvhgNd-aXYTce"><input type="text" name="sl" id="goog-gt-votingInputSrcLang"><input type="text"
    name="tl" id="goog-gt-votingInputTrgLang"><input type="text" name="query" id="goog-gt-votingInputSrcText"><input type="text" name="gtrans" id="goog-gt-votingInputTrgText"><input type="text" name="vote" id="goog-gt-votingInputVote"></form>

Text Content

 * Free Shipping From 2 Shirts

 * Free Shipping From 2 Shirts

 * Free Shipping From 2 Shirts

 * Free Shipping From 2 Shirts


Powered by Google Übersetzer
Bahasa
Indonesia,English,한국어,简体中文,日本語,Português,العربية,Русский,Español,繁體中文,Français,ไทย,Italiano,Deutsch,Polski,Nederlands,Bahasa
Melayu,svenska,norsk,čeština,Lietuvis,Latvietis,Suomalainen,Ελληνικά,Eestlane,dansk,Magyar,Romanian,Slovenščina,Український,Slovenská,Български,Tiếng
Việt,Türkçe,Hrvatski jezik
EUR
 * United States Dollars (USD)
 * Euro (EUR)
 * United Kingdom Pounds (GBP)
 * Canadian Dollars (CAD)
 * Afghan Afghani (AFN)
 * Albanian Lek (ALL)
 * Algerian Dinar (DZD)
 * Angolan Kwanza (AOA)
 * Argentine Pesos (ARS)
 * Armenian Dram (AMD)
 * Aruban Florin (AWG)
 * Australian Dollars (AUD)
 * Barbadian Dollar (BBD)
 * Azerbaijani Manat (AZN)
 * Bangladesh Taka (BDT)
 * Bahamian Dollar (BSD)
 * Bahraini Dinar (BHD)
 * Belarusian Ruble (BYN)
 * Belize Dollar (BZD)
 * Bhutanese Ngultrum (BTN)
 * Bosnia and Herzegovina Convertible Mark (BAM)
 * Brazilian Real (BRL)
 * Bolivian Boliviano (BOB)
 * Botswana Pula (BWP)
 * Brunei Dollar (BND)
 * Bulgarian Lev (BGN)
 * Burmese Kyat (MMK)
 * Cambodian Riel (KHR)
 * Cape Verdean escudo (CVE)
 * Cayman Dollars (KYD)
 * Central African CFA Franc (XAF)
 * Chilean Peso (CLP)
 * Chinese Yuan Renminbi (CNY)
 * Colombian Peso (COP)
 * Comorian Franc (KMF)
 * Congolese franc (CDF)
 * Costa Rican Colones (CRC)
 * Croatian Kuna (HRK)
 * Czech Koruny (CZK)
 * Danish Kroner (DKK)
 * Dominican Peso (DOP)
 * East Caribbean Dollar (XCD)
 * Egyptian Pound (EGP)
 * Ethiopian Birr (ETB)
 * CFP Franc (XPF)
 * Fijian Dollars (FJD)
 * Gambian Dalasi (GMD)
 * Ghanaian Cedi (GHS)
 * Guatemalan Quetzal (GTQ)
 * Guyanese Dollar (GYD)
 * Georgian Lari (GEL)
 * Haitian Gourde (HTG)
 * Honduran Lempira (HNL)
 * Hong Kong Dollars (HKD)
 * Hungarian Forint (HUF)
 * Icelandic Kronur (ISK)
 * Indian Rupees (INR)
 * Indonesian Rupiah (IDR)
 * Israeli New Shekel (NIS)
 * Jamaican Dollars (JMD)
 * Japanese Yen (JPY)
 * Jersey Pound (JEP)
 * Jordanian Dinar (JOD)
 * Kazakhstani Tenge (KZT)
 * Kenyan Shilling (KES)
 * Kuwaiti Dinar (KWD)
 * Kyrgyzstani Som (KGS)
 * Laotian Kip (LAK)
 * Latvian Lati (LVL)
 * Lebanese Pounds (LBP)
 * Lesotho Loti (LSL)
 * Liberian Dollar (LRD)
 * Malagasy Ariary (MGA)
 * Macedonia Denar (MKD)
 * Macanese Pataca (MOP)
 * Malawian Kwacha (MWK)
 * Maldivian Rufiyaa (MVR)
 * Mexican Pesos (MXN)
 * Malaysian Ringgits (MYR)
 * Mauritian Rupee (MUR)
 * Moldovan Leu (MDL)
 * Moroccan Dirham (MAD)
 * Mongolian Tugrik (MNT)
 * Mozambican Metical (MZN)
 * Namibian Dollar (NAD)
 * Nepalese Rupee (NPR)
 * Netherlands Antillean Guilder (ANG)
 * New Zealand Dollars (NZD)
 * Nicaraguan Córdoba (NIO)
 * Nigerian Naira (NGN)
 * Norwegian Kroner (NOK)
 * Omani Rial (OMR)
 * Pakistani Rupee (PKR)
 * Papua New Guinean Kina (PGK)
 * Paraguayan Guarani (PYG)
 * Peruvian Nuevo Sol (PEN)
 * Philippine Peso (PHP)
 * Polish Zlotych (PLN)
 * Qatari Rial (QAR)
 * Romanian Lei (RON)
 * Russian Rubles (RUB)
 * Rwandan Franc (RWF)
 * Samoan Tala (WST)
 * Saudi Riyal (SAR)
 * Sao Tome And Principe Dobra (STD)
 * Serbian dinar (RSD)
 * Seychellois Rupee (SCR)
 * Singapore Dollars (SGD)
 * Sudanese Pound (SDG)
 * Syrian Pound (SYP)
 * South African Rand (ZAR)
 * South Korean Won (KRW)
 * South Sudanese Pound (SSP)
 * Solomon Islands Dollar (SBD)
 * Sri Lankan Rupees (LKR)
 * Surinamese Dollar (SRD)
 * Swazi Lilangeni (SZL)
 * Swedish Kronor (SEK)
 * Swiss Francs (CHF)
 * Taiwan Dollars (TWD)
 * Thai baht (THB)
 * Tanzanian Shilling (TZS)
 * Trinidad and Tobago Dollars (TTD)
 * Tunisian Dinar (TND)
 * Turkish Lira (TRY)
 * Turkmenistani Manat (TMT)
 * Ugandan Shilling (UGX)
 * Ukrainian Hryvnia (UAH)
 * United Arab Emirates Dirham (AED)
 * Uruguayan Pesos (UYU)
 * Uzbekistan som (UZS)
 * Vanuatu Vatu (VUV)
 * Venezuelan Bolivares (VEF)
 * Vietnamese đồng (VND)
 * West African CFA franc (XOF)
 * Yemeni Rial (YER)
 * Zambian Kwacha (ZMW)
 * Saint Helena pound
 * Burundian franc
 * Bermudian dollar
 * Cuban peso
 * Djiboutian franc
 * Eritrean nakfa
 * Guinean franc
 * North Korean won
 * Sierra Leonean leone
 * Somali shilling
 * Tajikistani somoni
 * Tongan paʻanga
 * Falkland Islands pound
 * Iraqi Dinar


BESTBALLCUSTOMIZE


Bahasa
Indonesia,English,한국어,简体中文,日本語,Português,العربية,Русский,Español,繁體中文,Français,ไทย,Italiano,Deutsch,Polski,Nederlands,Bahasa
Melayu,svenska,norsk,čeština,Lietuvis,Latvietis,Suomalainen,Ελληνικά,Eestlane,dansk,Magyar,Romanian,Slovenščina,Український,Slovenská,Български,Tiếng
Việt,Türkçe,Hrvatski jezik
EUR
 * United States Dollars (USD)
 * Euro (EUR)
 * United Kingdom Pounds (GBP)
 * Canadian Dollars (CAD)
 * Afghan Afghani (AFN)
 * Albanian Lek (ALL)
 * Algerian Dinar (DZD)
 * Angolan Kwanza (AOA)
 * Argentine Pesos (ARS)
 * Armenian Dram (AMD)
 * Aruban Florin (AWG)
 * Australian Dollars (AUD)
 * Barbadian Dollar (BBD)
 * Azerbaijani Manat (AZN)
 * Bangladesh Taka (BDT)
 * Bahamian Dollar (BSD)
 * Bahraini Dinar (BHD)
 * Belarusian Ruble (BYN)
 * Belize Dollar (BZD)
 * Bhutanese Ngultrum (BTN)
 * Bosnia and Herzegovina Convertible Mark (BAM)
 * Brazilian Real (BRL)
 * Bolivian Boliviano (BOB)
 * Botswana Pula (BWP)
 * Brunei Dollar (BND)
 * Bulgarian Lev (BGN)
 * Burmese Kyat (MMK)
 * Cambodian Riel (KHR)
 * Cape Verdean escudo (CVE)
 * Cayman Dollars (KYD)
 * Central African CFA Franc (XAF)
 * Chilean Peso (CLP)
 * Chinese Yuan Renminbi (CNY)
 * Colombian Peso (COP)
 * Comorian Franc (KMF)
 * Congolese franc (CDF)
 * Costa Rican Colones (CRC)
 * Croatian Kuna (HRK)
 * Czech Koruny (CZK)
 * Danish Kroner (DKK)
 * Dominican Peso (DOP)
 * East Caribbean Dollar (XCD)
 * Egyptian Pound (EGP)
 * Ethiopian Birr (ETB)
 * CFP Franc (XPF)
 * Fijian Dollars (FJD)
 * Gambian Dalasi (GMD)
 * Ghanaian Cedi (GHS)
 * Guatemalan Quetzal (GTQ)
 * Guyanese Dollar (GYD)
 * Georgian Lari (GEL)
 * Haitian Gourde (HTG)
 * Honduran Lempira (HNL)
 * Hong Kong Dollars (HKD)
 * Hungarian Forint (HUF)
 * Icelandic Kronur (ISK)
 * Indian Rupees (INR)
 * Indonesian Rupiah (IDR)
 * Israeli New Shekel (NIS)
 * Jamaican Dollars (JMD)
 * Japanese Yen (JPY)
 * Jersey Pound (JEP)
 * Jordanian Dinar (JOD)
 * Kazakhstani Tenge (KZT)
 * Kenyan Shilling (KES)
 * Kuwaiti Dinar (KWD)
 * Kyrgyzstani Som (KGS)
 * Laotian Kip (LAK)
 * Latvian Lati (LVL)
 * Lebanese Pounds (LBP)
 * Lesotho Loti (LSL)
 * Liberian Dollar (LRD)
 * Malagasy Ariary (MGA)
 * Macedonia Denar (MKD)
 * Macanese Pataca (MOP)
 * Malawian Kwacha (MWK)
 * Maldivian Rufiyaa (MVR)
 * Mexican Pesos (MXN)
 * Malaysian Ringgits (MYR)
 * Mauritian Rupee (MUR)
 * Moldovan Leu (MDL)
 * Moroccan Dirham (MAD)
 * Mongolian Tugrik (MNT)
 * Mozambican Metical (MZN)
 * Namibian Dollar (NAD)
 * Nepalese Rupee (NPR)
 * Netherlands Antillean Guilder (ANG)
 * New Zealand Dollars (NZD)
 * Nicaraguan Córdoba (NIO)
 * Nigerian Naira (NGN)
 * Norwegian Kroner (NOK)
 * Omani Rial (OMR)
 * Pakistani Rupee (PKR)
 * Papua New Guinean Kina (PGK)
 * Paraguayan Guarani (PYG)
 * Peruvian Nuevo Sol (PEN)
 * Philippine Peso (PHP)
 * Polish Zlotych (PLN)
 * Qatari Rial (QAR)
 * Romanian Lei (RON)
 * Russian Rubles (RUB)
 * Rwandan Franc (RWF)
 * Samoan Tala (WST)
 * Saudi Riyal (SAR)
 * Sao Tome And Principe Dobra (STD)
 * Serbian dinar (RSD)
 * Seychellois Rupee (SCR)
 * Singapore Dollars (SGD)
 * Sudanese Pound (SDG)
 * Syrian Pound (SYP)
 * South African Rand (ZAR)
 * South Korean Won (KRW)
 * South Sudanese Pound (SSP)
 * Solomon Islands Dollar (SBD)
 * Sri Lankan Rupees (LKR)
 * Surinamese Dollar (SRD)
 * Swazi Lilangeni (SZL)
 * Swedish Kronor (SEK)
 * Swiss Francs (CHF)
 * Taiwan Dollars (TWD)
 * Thai baht (THB)
 * Tanzanian Shilling (TZS)
 * Trinidad and Tobago Dollars (TTD)
 * Tunisian Dinar (TND)
 * Turkish Lira (TRY)
 * Turkmenistani Manat (TMT)
 * Ugandan Shilling (UGX)
 * Ukrainian Hryvnia (UAH)
 * United Arab Emirates Dirham (AED)
 * Uruguayan Pesos (UYU)
 * Uzbekistan som (UZS)
 * Vanuatu Vatu (VUV)
 * Venezuelan Bolivares (VEF)
 * Vietnamese đồng (VND)
 * West African CFA franc (XOF)
 * Yemeni Rial (YER)
 * Zambian Kwacha (ZMW)
 * Saint Helena pound
 * Burundian franc
 * Bermudian dollar
 * Cuban peso
 * Djiboutian franc
 * Eritrean nakfa
 * Guinean franc
 * North Korean won
 * Sierra Leonean leone
 * Somali shilling
 * Tajikistani somoni
 * Tongan paʻanga
 * Falkland Islands pound
 * Iraqi Dinar


Search
Account
 * Log in
 * Create an account

0 Cart
Close


 * Home
 * Club Team
    * Club Team
    * Premier League
      * Premier League
      * Arsenal
      * Manchester City
      * Manchester United
      * Chelsea
      * Liverpool
      * Tottenham
      * Everton
      * Newcastle United
      * Aston Villa
      * Leeds United
      * Leicester City
      * West Ham United
      * West Bromwich Albion
      * Wolverhampton Wanderers
      * Crystal Palace
      * Southampton
      * Nottingham Forest
      * Brighton
      * Fulham
      * Brentford
    * La Liga
      * La Liga
      * Girona
      * Barcelona
      * Real Madrid
      * Atletico Madrid
      * Osasuna
      * Athletic Bilbao
      * Seville
      * Real Betis
      * Real Valladolid
      * Real Sociedad
      * Vallecano
      * Alavés
      * Cádiz
      * Valencia
      * Espanyol
      * Granada
      * Villarreal
      * Celta
      * Almeria
      * Elche
      * las palmas
      * RCD Mallorca
    * Serie A
      * Serie A
      * AC Milan
      * Inter Milan
      * Juventus
      * Napoli
      * Roma
      * Fiorentina
      * Torino
      * Venezia
      * Atalanta
      * Lazio
    * Ligue 1
      * Ligue 1
      * Paris
      * Marseille
      * Lyon
      * Angers
      * Little
      * Nantes
      * RC Lens
    * Bundesliga
      * Bundesliga
      * Bayern
      * Dortmund
      * Leipzig
      * Mönchengladbach
      * Frankfurt
      * Leverkusen
      * VfB Stuttgart
      * FC Cologne
      * Union Berlin
    * Primeira Liga
      * Primeira Liga
      * Benfica
      * Harbor
      * Sporting Lisbon
      * Guild

 * 2024-2025 Season
 * National Team
    * National Team
    * Europe
      * Europe
      * Germany
      * France
      * Portugal
      * Belgium
      * Denmark
      * England
      * Spain
      * Russia
      * Turkey
      * Switzerland
      * Italy
      * Netherlands
      * Albania
      * Croatia
      * Finland
      * Sweden
      * Ireland
      * Poland
    * Noth America
      * Noth America
      * Mexico
      * Canada
      * El Salvador
      * Panama
      * Costa Rica
      * Jamaica
      * Honduras
      * Guatemala
    * South America
      * South America
      * Argentina
      * Uruguay
      * Brazil
      * Paraguay
      * Colombia
      * Ecuador
      * Chile
    * Asia
      * Asia
      * Korea
      * Japan
      * Saudi Arabia
      * Malaysia
      * Iraq
      * Qatar
      * Iran
      * Australia
    * Africa
      * Africa
      * Senegal
      * Tunisia
      * Algeria
      * Ivory Coast
      * Cameroon
      * Morocco
      * Ghana
      * Egypt
      * Nigeria

 * UEFA Euro 2024
    * UEFA Euro 2024
    * Germany
    * Scotland
    * Spain
    * Italy
    * France
    * England
    * Portugal
    * Hungary
    * Switzerland
    * Croatia
    * Albania
    * Slovenia
    * Denmark
    * Serbia
    * Wales
    * Netherlands
    * Austria
    * Belgium
    * Slovakia
    * Romania
    * Türkiye
    * Czechia
    * Poland
    * Norway

 * Copa America 2024
    * Copa America 2024
    * Canada
    * Colombia
    * Peru
    * Chile
    * Venezuela
    * Mexico
    * deer
    * Brazil
    * Argentina

 * Previous World Cup Champions
    * Previous World Cup Champions
    * 2022 - Argentina
    * 2018 - France
    * 2014 - Germany
    * 2010 - Spain
    * 2006 - Italy
    * 2002 - Brazil
    * 1990 - Germany
    * 1986 - Argentina
    * 1970 - Brazil

 * Other leagues
    * Other leagues
    * Ajax
    * Al-Nassr
    * Al Hilal SFC
    * Benfica
    * Porto
    * Sporting Lisbon
    * Feyenoord
    * Celtic
    * AFC Richmond
    * America
    * Chivas
    * add extra
    * Inter Miami
    * rangers
    * AFC Bournemouth
    * Malaga
    * Aberdeen
    * Al Hilal

 * other products
    * other products
    * Retro
    * Kids
    * Long Sleeve
    * Windbreaker
    * Shorts
    * Jacket
    * Special line logistics

 * Add Badge
    * Add Badge
    * Add Badge

   Log in
   
   Bahasa
   Indonesia,English,한국어,简体中文,日本語,Português,العربية,Русский,Español,繁體中文,Français,ไทย,Italiano,Deutsch,Polski,Nederlands,Bahasa
   Melayu,svenska,norsk,čeština,Lietuvis,Latvietis,Suomalainen,Ελληνικά,Eestlane,dansk,Magyar,Romanian,Slovenščina,Український,Slovenská,Български,Tiếng
   Việt,Türkçe,Hrvatski jezik
   EUR
    * United States Dollars (USD)
    * Euro (EUR)
    * United Kingdom Pounds (GBP)
    * Canadian Dollars (CAD)
    * Afghan Afghani (AFN)
    * Albanian Lek (ALL)
    * Algerian Dinar (DZD)
    * Angolan Kwanza (AOA)
    * Argentine Pesos (ARS)
    * Armenian Dram (AMD)
    * Aruban Florin (AWG)
    * Australian Dollars (AUD)
    * Barbadian Dollar (BBD)
    * Azerbaijani Manat (AZN)
    * Bangladesh Taka (BDT)
    * Bahamian Dollar (BSD)
    * Bahraini Dinar (BHD)
    * Belarusian Ruble (BYN)
    * Belize Dollar (BZD)
    * Bhutanese Ngultrum (BTN)
    * Bosnia and Herzegovina Convertible Mark (BAM)
    * Brazilian Real (BRL)
    * Bolivian Boliviano (BOB)
    * Botswana Pula (BWP)
    * Brunei Dollar (BND)
    * Bulgarian Lev (BGN)
    * Burmese Kyat (MMK)
    * Cambodian Riel (KHR)
    * Cape Verdean escudo (CVE)
    * Cayman Dollars (KYD)
    * Central African CFA Franc (XAF)
    * Chilean Peso (CLP)
    * Chinese Yuan Renminbi (CNY)
    * Colombian Peso (COP)
    * Comorian Franc (KMF)
    * Congolese franc (CDF)
    * Costa Rican Colones (CRC)
    * Croatian Kuna (HRK)
    * Czech Koruny (CZK)
    * Danish Kroner (DKK)
    * Dominican Peso (DOP)
    * East Caribbean Dollar (XCD)
    * Egyptian Pound (EGP)
    * Ethiopian Birr (ETB)
    * CFP Franc (XPF)
    * Fijian Dollars (FJD)
    * Gambian Dalasi (GMD)
    * Ghanaian Cedi (GHS)
    * Guatemalan Quetzal (GTQ)
    * Guyanese Dollar (GYD)
    * Georgian Lari (GEL)
    * Haitian Gourde (HTG)
    * Honduran Lempira (HNL)
    * Hong Kong Dollars (HKD)
    * Hungarian Forint (HUF)
    * Icelandic Kronur (ISK)
    * Indian Rupees (INR)
    * Indonesian Rupiah (IDR)
    * Israeli New Shekel (NIS)
    * Jamaican Dollars (JMD)
    * Japanese Yen (JPY)
    * Jersey Pound (JEP)
    * Jordanian Dinar (JOD)
    * Kazakhstani Tenge (KZT)
    * Kenyan Shilling (KES)
    * Kuwaiti Dinar (KWD)
    * Kyrgyzstani Som (KGS)
    * Laotian Kip (LAK)
    * Latvian Lati (LVL)
    * Lebanese Pounds (LBP)
    * Lesotho Loti (LSL)
    * Liberian Dollar (LRD)
    * Malagasy Ariary (MGA)
    * Macedonia Denar (MKD)
    * Macanese Pataca (MOP)
    * Malawian Kwacha (MWK)
    * Maldivian Rufiyaa (MVR)
    * Mexican Pesos (MXN)
    * Malaysian Ringgits (MYR)
    * Mauritian Rupee (MUR)
    * Moldovan Leu (MDL)
    * Moroccan Dirham (MAD)
    * Mongolian Tugrik (MNT)
    * Mozambican Metical (MZN)
    * Namibian Dollar (NAD)
    * Nepalese Rupee (NPR)
    * Netherlands Antillean Guilder (ANG)
    * New Zealand Dollars (NZD)
    * Nicaraguan Córdoba (NIO)
    * Nigerian Naira (NGN)
    * Norwegian Kroner (NOK)
    * Omani Rial (OMR)
    * Pakistani Rupee (PKR)
    * Papua New Guinean Kina (PGK)
    * Paraguayan Guarani (PYG)
    * Peruvian Nuevo Sol (PEN)
    * Philippine Peso (PHP)
    * Polish Zlotych (PLN)
    * Qatari Rial (QAR)
    * Romanian Lei (RON)
    * Russian Rubles (RUB)
    * Rwandan Franc (RWF)
    * Samoan Tala (WST)
    * Saudi Riyal (SAR)
    * Sao Tome And Principe Dobra (STD)
    * Serbian dinar (RSD)
    * Seychellois Rupee (SCR)
    * Singapore Dollars (SGD)
    * Sudanese Pound (SDG)
    * Syrian Pound (SYP)
    * South African Rand (ZAR)
    * South Korean Won (KRW)
    * South Sudanese Pound (SSP)
    * Solomon Islands Dollar (SBD)
    * Sri Lankan Rupees (LKR)
    * Surinamese Dollar (SRD)
    * Swazi Lilangeni (SZL)
    * Swedish Kronor (SEK)
    * Swiss Francs (CHF)
    * Taiwan Dollars (TWD)
    * Thai baht (THB)
    * Tanzanian Shilling (TZS)
    * Trinidad and Tobago Dollars (TTD)
    * Tunisian Dinar (TND)
    * Turkish Lira (TRY)
    * Turkmenistani Manat (TMT)
    * Ugandan Shilling (UGX)
    * Ukrainian Hryvnia (UAH)
    * United Arab Emirates Dirham (AED)
    * Uruguayan Pesos (UYU)
    * Uzbekistan som (UZS)
    * Vanuatu Vatu (VUV)
    * Venezuelan Bolivares (VEF)
    * Vietnamese đồng (VND)
    * West African CFA franc (XOF)
    * Yemeni Rial (YER)
    * Zambian Kwacha (ZMW)
    * Saint Helena pound
    * Burundian franc
    * Bermudian dollar
    * Cuban peso
    * Djiboutian franc
    * Eritrean nakfa
    * Guinean franc
    * North Korean won
    * Sierra Leonean leone
    * Somali shilling
    * Tajikistani somoni
    * Tongan paʻanga
    * Falkland Islands pound
    * Iraqi Dinar

 * Home
 * Club Team
    * Premier League Arsenal Manchester City Manchester United Chelsea Liverpool
      Tottenham Everton Newcastle United Aston Villa Leeds United Leicester City
      West Ham United West Bromwich Albion Wolverhampton Wanderers Crystal
      Palace Southampton Nottingham Forest Brighton Fulham Brentford
    * La Liga Girona Barcelona Real Madrid Atletico Madrid Osasuna Athletic
      Bilbao Seville Real Betis Real Valladolid Real Sociedad Vallecano Alavés
      Cádiz Valencia Espanyol Granada Villarreal Celta Almeria Elche las palmas
      RCD Mallorca
    * Serie A AC Milan Inter Milan Juventus Napoli Roma Fiorentina Torino
      Venezia Atalanta Lazio
    * Ligue 1 Paris Marseille Lyon Angers Little Nantes RC Lens
    * Bundesliga Bayern Dortmund Leipzig Mönchengladbach Frankfurt Leverkusen
      VfB Stuttgart FC Cologne Union Berlin
    * Primeira Liga Benfica Harbor Sporting Lisbon Guild

 * 2024-2025 Season
 * National Team
    * Europe Germany France Portugal Belgium Denmark England Spain Russia Turkey
      Switzerland Italy Netherlands Albania Croatia Finland Sweden Ireland
      Poland
    * Noth America Mexico Canada El Salvador Panama Costa Rica Jamaica Honduras
      Guatemala
    * South America Argentina Uruguay Brazil Paraguay Colombia Ecuador Chile
    * Asia Korea Japan Saudi Arabia Malaysia Iraq Qatar Iran Australia
    * Africa Senegal Tunisia Algeria Ivory Coast Cameroon Morocco Ghana Egypt
      Nigeria

 * UEFA Euro 2024
   Germany
   Scotland
   Spain
   Italy
   France
   England
   Portugal
   Hungary
   Switzerland
   Croatia
   Albania
   Slovenia
   Denmark
   Serbia
   Wales
   Netherlands
   Austria
   Belgium
   Slovakia
   Romania
   Türkiye
   Czechia
   Poland
   Norway
   
   SALE
   
   
   KIDS ITALY AWAY KIT 24/25 EURO CUP 2024 FOOTBALL JERSEY
   
   From €15.97 €32.03
   -€16.06
   
   
 * Copa America 2024
   Canada
   Colombia
   Peru
   Chile
   Venezuela
   Mexico
   deer
   Brazil
   Argentina
 * Previous World Cup Champions
   2022 - Argentina
   2018 - France
   2014 - Germany
   2010 - Spain
   2006 - Italy
   2002 - Brazil
   1990 - Germany
   1986 - Argentina
   1970 - Brazil
 * Other leagues
   Ajax
   Al-Nassr
   Al Hilal SFC
   Benfica
   Porto
   Sporting Lisbon
   Feyenoord
   Celtic
   AFC Richmond
   America
   Chivas
   add extra
   Inter Miami
   rangers
   AFC Bournemouth
   Malaga
   Aberdeen
   Al Hilal
 * other products
   Retro
   Kids
   Long Sleeve
   Windbreaker
   Shorts
   Jacket
   Special line logistics
 * Add Badge
   Add Badge
 * More links
   Other leagues
   other products
   Add Badge








TORINO

0 Products

0 Products
Featured Price, low to high Price, high to low Newest in Total sales, high to
low Purchases, high to low Page views, high to low
Sort
Sort
Sort by
Featured Price, low to high Price, high to low Newest in Total sales, high to
low Purchases, high to low Page views, high to low

Clear all Apply

Sorry, there are no products in this collection.




BESTBALLCUSTOMIZE.COM

It is an online football mall with a large number of high-quality sports
equipment adhering to the principle of "high quality, reliability, and low
price", providing the best shopping experience for football enthusiasts.

Subscribe today to hear first about our sales
Subscribe
Thanks for subscribing

We accept
American Express Apple Pay Mastercard PayPal Visa

© 2024 bestballcustomize
Terms and Conditions
Privacy Policy
About us
Contact Us
Comment On Bestfball
Tracking Order


SIGN UP AND SAVE

Entice customers to sign up for your mailing list with discounts or exclusive
offers. Include an image for extra impact.
Subscribe
Thanks for subscribing
Optional button


CART











111
GIFTS

POINTS




Item has been added
${(function(){ const products = data.products; const getDefaultVariant =
function(product){ if (product.min_price_variant.available){ return
product.min_price_variant; }else { const avail_variants =
product.variants.filter(function(variant){ return variant.available; }); if
(avail_variants.length) { return avail_variants[0]; } } }; const toQuery = obj
=> Object.keys(obj) .map(k => Array.isArray(obj[k]) ? obj[k].map(v =>
`${k}[]=${encodeURIComponent(v)}`).join('&') :
`${k}=${encodeURIComponent(obj[k])}` ) .join('&'); const getDefaultTrackParams =
function(product, index){ const variant = getDefaultVariant(product); const
params = { aid: 'smart_recommend.2.' + data.id, scm: product.scm || data.scm ||
'', spm: data.spmBase + '.' + index, ssp: data.ssp || '', }; const trackParams =
Object.keys(params).map(function(key){ return params[key]; }).join('__'); return
trackParams; }; const hasMore = (data.products.length -
data.target_top_product_num - data.page * data.limit) === 0; return `
${(function(){ return `
${data.config.pop_title}

${data.rebate_tips || ''}
`; })()}
${product.title}
Added




`; })()}

class SpzCustomComponent extends SPZ.BaseElement { constructor(element) {
super(element); this.templates_ = null; this.container_ = null;
this._atcLineItem = {}; this.cart_ = {}; this.top_product_ids_ = [];
this.products_ = []; this.activityId_ = null; this.rendered_ = false;
this.myInterceptor_ = null; this.i18n_ = {}; this.config_ = {}; this.page_ = 1;
this.limit_ = 10; this.loading_ = false; } static deferredMount() { return
false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER;
} buildCallback() { this.templates_ = SPZServices.templatesForDoc(this.element);
this.setAction_(); } mountCallback() { console.log('pop mounted'); this.i18n_ =
window.smartRecommendI18n &&
window.smartRecommendI18n[document.documentElement.lang || 'en-US'] || {}; const
cartPopRenderEl = document.getElementById("smart_cart_pop_render"); const
modalEl = document.getElementById("smart_cart_pop_modal"); const spmBase =
`smart_recommend_2`; const extra = { spmBase: spmBase, i18n: this.i18n_, };
const that = this; document.addEventListener('dj.addToCart', (event) => { try {
const e = event.detail; if (e.source === 'buy_now' || window.__upsell_block ||
this.rendered_) return; that.fetchActivityData({product_id: e.product_id,
variant_id: e.variant_id}).then(data => { if (!data || !data.products ||
!data.products.length) return; that.config_ = data.config; const recommendStyle
= document.createElement('style'); recommendStyle.innerHTML = `
#plugin_recommend_atc_pop { display: none !important; } `;
document.head.appendChild(recommendStyle); if (data.config.pop_frequency ===
'once' && window.sessionStorage.getItem('smart_pop_times') > 0) return;
SPZ.whenApiDefined(cartPopRenderEl).then(function(api){
api.render(Object.assign({}, data, extra), true).then(function() {
that.rendered_ = true; if (data.products.length) { const headEl =
document.getElementById("smart_cart_pop_head_render"); if (headEl) {
SPZ.whenApiDefined(headEl).then(function(head){ head.render({ data: data }); });
} SPZ.whenApiDefined(modalEl).then(function(api){
that.impressListen('#smart_cart_pop_activity', function(){
that.trackPluginImpression_(data); }); api.open(); const intersectionObserver =
new IntersectionObserver( function (entries) { if (entries[0].intersectionRatio
> 0){ !that.loading_ && (that.products_.length - that.target_top_product_num_)
=== that.page_ * that.limit_ && that.viewMore(); } }, { threshold: [0.1] } );
intersectionObserver.observe(
document.querySelector('#smart_cart_pop_view_more_text') ); }); } }) }); }) }
catch (e) { console.error(e); } }); } unmountCallback() { } viewMore () { const
cartPopRenderEl = document.getElementById("smart_cart_pop_render"); const that =
this; const data = {}; SPZ.whenApiDefined(cartPopRenderEl).then(function(api){
that.fetchActivityData({ page: that.page_ + 1, limit: that.limit_
}).then(function(data) { data.products = that.products_;
data.target_top_product_num = that.target_top_product_num_; data.i18n =
that.i18n_; data.spmBase = `smart_recommend_2`; api.render(data); }) }) }
fetchActivityData(data) { const that = this; if (data.product_id) {
that._atcLineItem = data; } that.loading_ = true; return
that.getCart().then(cart => { that.cart_ = cart.cart; return
fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_activities", {
method: "POST", headers: { "Content-Type": "application/json", "store-id":
window.SHOPLAZZA.shop.shop_id, }, body: JSON.stringify({ "show_type": 2,
"line_item": { "product_id": that._atcLineItem.product_id, "variant_id":
that._atcLineItem.variant_id, }, line_items: cart.cart.line_items, "page":
data.page || 1, "limit": data.limit || 10, }) }).then(function(res){ if(res.ok){
return res.json(); } }).then(function(data){ data.cart = cart.cart; if
(data.page === 1) { that.target_top_product_num_ = data.target_top_product_num
|| 0; } that.products_ = that.products_.concat(data.products || []); that.page_
= data.page || 1; that.limit_ = data.limit || 10; return data;
}).catch(function(e){ console.log(e); }).finally(function(){ that.loading_ =
false; }) }); }; setAction_() { this.registerAction('changeBannerColor', (data)
=> { if (!data.args.data || !data.args.data.data || !data.args.data.data.data)
return false; const config = data.args.data.data.data.config; const bannerBgEl =
document.querySelector('.smart_cart_pop_banner_bg'); if (bannerBgEl && config) {
bannerBgEl.style.background = config.banner_bg_color; bannerBgEl.style.color =
config.banner_text_color; } }); this.registerAction('handleProductChange',
(data) => { const that = this; const imageEl =
document.getElementById(`smart_cart_pop_image_${data.args.data.product_id}`);
SPZ.whenApiDefined(imageEl).then(function(api){ api.render({ data:
data.args.data, config: that.config_ }); }); const atcTextEl =
document.getElementById(`smart_cart_pop_atc_${data.args.data.product_id}`);
SPZ.whenApiDefined(atcTextEl).then(function(api){ api.render({ data:
data.args.data, defaultText: data.args.defaultText, soldOutText:
that.i18n_.sold_out }); }); if (data.args.data.variant.available) {
document.getElementById(`smart_cart_pop_atc_btn_${data.args.data.product_id}`).classList.remove('zb-pointer-events-none');
} else {
document.getElementById(`smart_cart_pop_atc_btn_${data.args.data.product_id}`).classList.add('zb-pointer-events-none');
} }); this.registerAction('handleProduct', (detail) => { const that = this;
this.renderProductsForm_(detail.args.data.data); });
this.registerAction('addATCHook', (data) => { const params = data.args;
this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({
event: 'dj.addToCart', params: { aid: 'smart_recommend.2.' + params.activity_id,
ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm:
`..${window.SHOPLAZZA.meta.page.template_name}.${params.spm}`, }, once: true });
}); this.registerAction('handleAtcSuccess', (detail) => {
detail.args.data.product = detail.args.data.product || {};
detail.args.data.variant = detail.args.data.variant || {}; const defParams =
detail.args.product.split('__'); const product_id = detail.args.data.product.id;
const product_title = detail.args.data.product.title; const variant_id =
detail.args.data.variant.id; const price = detail.args.data.variant.price; const
aid = defParams[0]; const ifb = detail.args.data.product.ifb; const cfb =
detail.args.data.product.cfb; const scm = defParams[1]; const spm =
defParams[2]; const ssp = defParams[3]; const params = { id: product_id,
product_id: product_id, number: 1, name: product_title, variant_id: variant_id,
childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid:
aid, ifb: ifb, cfb: cfb, scm: scm, spm:
`..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; const
activity_id = `${detail.args.activity_id}`; const target_drive_way =
detail.args.target_drive_way;
document.getElementById(`smart_cart_pop_loading_${product_id}`).classList.add('zb-hidden');
document.getElementById(`smart_cart_pop_added_${product_id}`).classList.remove('zb-hidden');
setTimeout(() => {
document.getElementById(`smart_cart_pop_added_${product_id}`).classList.add('zb-hidden');
document.getElementById(`smart_cart_pop_atc_${product_id}`).classList.remove('zb-hidden');
document.getElementById(`smart_cart_pop_atc_btn_${product_id}`).classList.remove('zb-pointer-events-none');
}, 1000); this.tranckAddToCart(params); if (target_drive_way === 'rebate') {
const bannerEl = document.getElementById(`smart_cart_pop_banner`);
this.getRecommendInfo(activity_id).then(res => { if (res && res.rebate_tips) {
bannerEl.innerHTML = res.rebate_tips; } }) } });
this.registerAction('handleCartSummary', (event) => { const that = this; const
checkoutButtonEle = document.getElementById("smart_cart_pop_checkout_button");
if (checkoutButtonEle) {
SPZ.whenApiDefined(checkoutButtonEle).then(function(api){ api.render({ i18n:
that.i18n_ }, false); }); } const tipEl =
document.getElementById("smart_cart_pop_tip_info"); const cart = event &&
event.args && event.args.data && event.args.data.data; if (!tipEl || !cart)
return; let total_price = cart.total_price; if (!total_price) {
SPZ.whenApiDefined(tipEl).then(function(api){ api.render({ total_price:
total_price, i18n: that.i18n_ }, false); }); } else {
this.getBindDiscount_(cart.line_items).then(res => { if (res &&
res.discount_code){ const total = cart.line_price - cart.total_discount -
res.bundle_discount_value; if (total > 0) { total_price = total; } else {
total_price = 0; } } SPZ.whenApiDefined(tipEl).then(function(api){ api.render({
total_price: total_price, i18n: that.i18n_ }, false); }); }) } });
this.registerAction('open', () => {
window.sessionStorage.setItem('smart_pop_times',
Number(window.sessionStorage.getItem('smart_pop_times')) + 1); });
this.registerAction('close', () => { this.rendered_ = false; this.products_ =
[]; window.djInterceptors &&
window.djInterceptors.track.eject(this.myInterceptor_); }); } getCart() { return
fetch(`${window.SHOPLAZZA.routes.root || ''}/api/cart`, { method: 'GET',
headers: { 'Content-Type': 'application/json; charset=UTF-8', }, }).then(res =>
res.json()) } getRecommendInfo (activity_id) { return this.getCart().then(cart
=> { this.cart_ = cart.cart; return fetch(`${window.SHOPLAZZA.routes.root ||
''}/api/possum/recommend_info`, { method: 'POST', headers: { 'Content-Type':
'application/json; charset=UTF-8', }, body: JSON.stringify({ show_type: 2,
rule_id: `${activity_id}`, line_items: cart.cart.line_items, line_item:
this._atcLineItem, }) }).then(res => res.json()) }) } renderProductsForm_(data)
{ const products = data.products; const listPopRenderEl =
document.getElementById("smart_cart_pop_render"); if (!listPopRenderEl) return;
listPopRenderEl.querySelectorAll('.smart_cart_pop_atc_btn_bg').forEach(function(el){
el.style.background = data.config.add_to_cart_button_color; });
products.forEach(function(product){ const productId = product.id; const
productFormEls =
listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]`);
let variantsEl =
listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]
#smart_cart_pop_variant_${productId}_mobile ljs-variants`); if
(window.innerWidth > 768) { variantsEl =
listPopRenderEl.querySelectorAll(`ljs-product-form[product-id="${productId}"]
#smart_cart_pop_variant_${productId}_pc ljs-variants`); }
productFormEls.forEach(function(el){ SPZ.whenApiDefined(el).then(function(api){
api.setProduct(product); }); }); variantsEl.forEach(function(el){
SPZ.whenApiDefined(el).then(function(api){ api.handleRender(product); }); }) });
} tranckAddToCart(detail) { if (window.$) {
window.$(document.body).trigger('dj.addToCart', detail); } }
trackPluginImpression_(rule){ if (window.sa && window.sa.track) {
window.sa.track("module_impressions", { aid: `smart_recommend.2.${rule.id}` });
} } getBindDiscount_(carts) { let bundle_sale_ids = []; try { bundle_sale_ids =
sessionStorage['bundle_sale_ids'] &&
JSON.parse(sessionStorage['bundle_sale_ids']).filter((item, index, arr) =>
arr.indexOf(item, 0) === index).slice(-5); } catch (err) { console.error(err); }
if (!carts.length) { Promise.resolve(); } return
fetch(`${window.SHOPLAZZA.routes.root || ''}/api/bundle-sales/cart`, { method:
'POST', headers: { 'Content-Type': 'application/json; charset=UTF-8',
'store-id': window.SHOPLAZZA.shop.shop_id, }, body: JSON.stringify({ cart:
carts, action_type: 'cart', bundle_sale_ids }) }).then(res => res.json()) }
impressListen(selector, cb) { const el = document.querySelector(selector); const
onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el &&
!el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else
if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart',
SpzCustomComponent); ${function(){ return `
${data.data.rebate_tips || ''}
`; }()} ${function(){ const getImageHeight = function(image){ const width =
image.width || 500; const height = image.height || 500; const image_size =
data.config.image_size || 0; let ratio = 0; if(image_size == 0){ ratio = (height
/ width).toFixed(2); }else if(image_size == 1){ ratio = 1.5; } return 132 *
ratio; }; const image = data.data.variant.image || data.data.product.image;
return ` `; }()}
${(function(){ const product = data.product; const avail_variants =
product.variants.filter(function(variant){ return variant.available; }); const
selected_variant = product.min_price_variant.available ?
product.min_price_variant : avail_variants.length && avail_variants[0]; return `
${option.name}
${ option.values.map(function(value, index){ const checked =
selected_variant["option"+option.position] == value ? "checked": ""; return `
${value}
` }).join("") }
` })()}
${(function(){ const variant = data.variant; return `

`; })()} ${(function(){ const variant = data.variant; return `
${ variant.options.map(function(option){ return option.value; }).join("/") ||
'Not exist' }
`; })()} ${(function(){ const variant = data.data && data.data.variant; const
defaultText = data.defaultText || 'Add To Cart'; const text = (!variant ||
variant.available) ? defaultText: data.soldOutText; return `
${text}
`; })()} ${(function(){ let cart = data; if(data.data) { cart = data.data; }
return `
${cart.item_count >=0 ? cart.item_count : '..'}
`; })()} ${(function(){ return `
${data.i18n.checkout}
`; })()}
Originaltext

Diese Übersetzung bewerten
Mit deinem Feedback können wir Google Übersetzer weiter verbessern