ProjektRide
.
window._RestockRocketConfig = window._RestockRocketConfig || {}
window._RestockRocket = window._RestockRocket || {}
window._Stoq = window._RestockRocket
window._StoqConfig = window._RestockRocketConfig
try { window._RestockRocket.inlineRanAt = performance.now(); } catch (e) { }
function normalizeLocale(locale) {
if (!locale || locale.trim() === '') {
return '';
}
return locale.toString().toLowerCase().replace(/-/g, '_');
}
window._RestockRocketConfig.locale = 'en';
window._RestockRocketConfig.normalizedLocale = normalizeLocale('en');
window._RestockRocketConfig.shop = 'projektride.myshopify.com';
window._RestockRocketConfig.pageType = 'product';
window._RestockRocketConfig.liquidRenderedAt = 1788924700;window._RestockRocketConfig.marketId = 382140642;window._RestockRocketConfig.countryName = 'United Kingdom';
window._RestockRocketConfig.countryIsoCode = 'GB';window._RestockRocketConfig.languageIsoCode = 'en';window._RestockRocketConfig.cartInventoryQuantity = {};
if (!window._RestockRocketConfig.cartToken) {
try {
const m = document.cookie.match(/(?:^|;\s*)cart=([^;]+)/);
if (m && m[1]) window._RestockRocketConfig.cartToken = decodeURIComponent(m[1]);
} catch (e) { }
}
window._RestockRocketConfig.cachedSettings = {"id":38500,"shop_id":38436,"currency":"GBP","created_at":"2025-07-26T09:13:57.337Z","updated_at":"2026-08-12T16:44:57.298Z","enable_app":true,"enable_signup_widget":false,"storefront_button_text":"Notify me when available","storefront_button_text_color":"#FFFFFF","storefront_button_background_color":"#202223","storefront_form_header":"Notify me","storefront_form_description":"Get a notification as soon as this product is back in stock by signing up below!","storefront_form_button_text":"Notify me when available","storefront_form_button_text_color":"#FFFFFF","storefront_form_button_background_color":"#202223","storefront_form_terms":"Promise we won't spam. You'll only receive notifications for this product.","storefront_form_error":"Please enter a valid email address","storefront_form_success":"Thank you! We will notify you when the product is available.","enable_powered_by":true,"show_button_on_preorder":true,"sms_enabled":false,"email_enabled":true,"storefront_button_disable_tag":"rocket-hide","theme_config":{"disableDebugLoggingForNonPreorderItem":false},"storefront_form_email_placeholder":"Email address","storefront_form_phone_placeholder":"SMS","storefront_form_phone_label":"Phone number","storefront_form_email_label":"Email","storefront_form_phone_error":"Please enter a valid phone number","storefront_form_customer_name_placeholder":"Name","storefront_form_customer_name_error":"Please enter your name","storefront_form_did_you_mean_error":"Did you mean %{suggested_email}? Or use %{current_email}","form_customer_name_enabled":false,"form_customer_name_required":false,"css_config":"","js_config":null,"collect_promotion_consent":false,"storefront_form_promotion_consent_label":"Notify me about other news, sales, discounts & offers too","show_button_on_collection":false,"sms_default_country":"us","sms_allowed_countries":[],"sms_restrict_country":false,"sms_default_channel":true,"optin_required":false,"optin_custom_domain_enabled":false,"optin_success_text":"Registration confirmed! You'll receive an alert when the product is restocked.","storefront_button_border_radius":0,"storefront_button_disable_tag_hides_button":true,"storefront_button_disable_tag_enabled":false,"quantity_required":false,"storefront_form_quantity_label":"Quantity","enable_alerts":true,"sms_allowed":false,"email_allowed":true,"collect_promotion_consent_default":true,"insert_button_after_selector":null,"insert_button_after_selector_type":"afterend","storefront_button_position_type":"float-right","storefront_form_duplicate_error":"You've already subscribed for alerts to this product.","storefront_mixed_cart_error":"Preorders must be purchased separately from regular items. Please complete your current order first, or clear your cart to continue.","storefront_error_heading":"Error","default_locale":"en","collection_page_button_text_color":"#FFFFFF","collection_page_button_background_color":"#202223","show_button_if_any_out_of_stock":false,"show_button_if_any_variant_out_of_stock_collection":false,"show_button_on_index":false,"insert_button_after_selector_collection":".product-grid-item__info","insert_button_after_selector_index":".product-grid-item__info","push_enabled":false,"push_allowed":false,"storefront_form_push_label":"Push","storefront_form_push_description":"Click 'Allow' to be notified via push notification","storefront_form_push_error":"Permission rejected! Please review notification settings and try again","storefront_font_family":"OpenSans","insert_button_after_selector_collection_type":"afterend","show_channel_selector":false,"storefront_form_empty_error":"Please fill in one or more of the options above","storefront_form_push_input":"Send notification to your browser","insert_button_after_selector_page":".product-grid-item__info","show_button_on_page":false,"insert_button_after_selector_search":".grid","show_button_on_search":false,"app_proxy_path_prefix":"/apps/restockrocket-production","collection_link_selector":".product-grid-item__title","index_link_selector":".product-grid-item__title","page_link_selector":".product-grid-item__title","search_link_selector":".product-grid-item__title","collection_check_link_visibility":true,"collection_buttons_container":".grid","index_buttons_container":".carousel.grid--mobile .flickity-viewport","page_buttons_container":".grid","search_buttons_container":".grid","extension_enable_url_variant_detection":true,"extension_enable_value_variant_detection":true,"extension_value_variant_selector":"[name='id']","resubscribe_text":"This product is out of stock. Get notified when it's restocked again by entering your details below!","preorder_enabled":true,"preorder_buy_button_selector":"","preorder_add_to_cart_button_selector":".product__submit__holder .product__submit__buttons button","preorder_badge_selector":"","preorder_button_out_of_stock_text":"Out of stock","preorder_button_add_to_cart_text":"Add to cart","preorder_form_selector":"form[action*=\"/cart/add\"]","preorder_collection_enabled":false,"preorder_collection_form_selector":"form[action*=\"/cart/add\"]","preorder_collection_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_index_enabled":false,"preorder_index_form_selector":"form[action*=\"/cart/add\"]","preorder_index_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_page_enabled":false,"preorder_page_form_selector":"form[action*=\"/cart/add\"]","preorder_page_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_search_enabled":false,"preorder_search_form_selector":"form[action*=\"/cart/add\"]","preorder_search_add_to_cart_button_selector":"form[action*=\"/cart/add\"] button","preorder_collection_badge_selector":".product__media__holder","preorder_index_badge_selector":".product__media__holder","preorder_page_badge_selector":".product__media__holder","preorder_search_badge_selector":".product__media__holder","preorder_badge_selector_type":"afterend","preorder_collection_badge_selector_type":"afterend","preorder_button_child_selector":"span","preorder_button_disclaimer_insert_selector":".product__form .btn","preorder_button_disclaimer_insert_selector_type":"afterend","preorder_payment_insert_selector":"","preorder_payment_insert_selector_type":"afterend","preorder_price_container_selector":".product__price--regular","preorder_price_container_selector_insert_type":"afterend","preorder_terms_insert_selector":"","preorder_terms_insert_selector_type":"afterend","preorder_original_price_selector":".product__price--regular","preorder_price_format":"{{amount}} {{currency}}","show_badge_if_any_variant_is_preorder":false,"enable_console_debug":false,"inline_form_enabled":false,"inline_form_selector":".product__form","inline_form_selector_type":"afterend","storefront_form_prefill_customer":true,"storefront_form_show_image":false,"storefront_form_text_color":"#202223","storefront_form_background_color":"#FFFFFF","storefront_form_border_radius":0,"market_setup_type":"single_market","shopify_app_id":5940125,"preorder_progress_bar_insert_selector":null,"preorder_progress_bar_insert_selector_type":"beforebegin","countdown_timer_insert_selector":null,"countdown_timer_insert_selector_type":"afterend","configure_notify_me_enabled":false,"restock_note_insert_selector":null,"restock_note_insert_selector_type":"afterend","restock_note_background_color":"#f3f4f6","restock_note_text_color":"#202223","restock_note_border_radius":4,"preorder_modal_continue_button_text":"Continue","preorder_modal_cancel_button_text":"Cancel","meta_pixel_enabled":false,"meta_pixel_id":null,"cache":true,"cached_at":"2026-08-12T16:44:57.369Z","multi_language_enabled":false,"translation_locale":"en","disable_refresh_on_stale_liquid":false};
window._RestockRocketConfig.metafieldNamespace = 'restockrocket_production';window._RestockRocketConfig.cachedPreorderVariantIds = {"preorder_variant_ids":[42140096102626,42167799447778,43590980075746,43916521013474,43934694998242,43934695031010,43934695620834,43935975440610,43935975473378,43935989399778,43935989432546,43935990284514,43935994118370,43935995625698,43935995855074,43936000835810,43936003195106,43936003227874,43936008012002,43936008044770,43936022757602,43936022790370,43936022823138,43936022855906,43936056115426,43936061030626,43936064930018,43936070631650,43936078037218,43936078069986,43936088195298,43936093470946,43936101138658,43936107266274,43936124076258,43936124109026,43936124141794,43936124174562,43936129941730,43936129974498,43936130007266,43936142393570,43936142426338,43936142459106,43936152060130,43936152092898,43936152125666,43936193118434,43936250429666,43936255803618,43936266682594,43936266715362,43936293978338,43936294011106,43936316424418,43936316457186,43936320880866,43936320913634,43936320946402,43936327041250,43936327074018,43936327106786,43936331661538,43936332349666,43936351224034,43936353714402,43936362889442,43936362922210,43936388153570,43936389333218,43936395526370,43936398508258,43936408568034,43936414400738,43936700727522,43936706101474,43936706134242,43936706167010,43936706199778,43936706232546,43936706265314,43938298233058,43938298265826,43938298298594,43938298331362,43938298364130,43938298396898,43938298429666,43938298462434,43938299805922,43938299838690,43938299871458,43938299904226,43938299936994,43938299969762,43938300002530,43938308587746,43938308653282,43938308718818,43938308751586,43938308784354,43938308817122,43938322612450,43938322645218,43938322677986,43981336051938,43981336084706,43981336117474,43981336150242,43981345587426,43981345620194,43981345652962,43981345685730,43981357580514,43981357613282,43981362462946,43981362495714,43981362528482,43981369016546,43981369049314,43981374914786,43981374947554,43981374980322,43981382320354,43981392773346,43981392806114,43981392838882,43981392871650,43981392937186,43981695844578,43981695877346,43981695910114,43981695942882,43981986070754,43981987938530,44052906967266,44052907327714,44052907360482,44052907393250,44052907426018,44052907458786,44052907491554,44052909097186,44052909129954,44195991847138,44195991945442,44329993437410,44329993470178,44329993502946,44329993535714,44329993568482,45068753961186,45068753993954,45069622640866,45069622903010,45069622968546,45069750730978,45069750763746,45353010921698,45353010954466,45353010987234,45353018261730,45353018294498,45353018327266,55066403209599,55066403242367,55569712382335,55569712415103,55569712447871,55569712480639,55570017616255,55570550194559,55604008976767,55638316908927,55638316941695,55638316974463,56220814967167,56220814999935,56220815032703,56270279606655,56270279639423,56270279672191,56399322251647,58086872056191,58086872088959,58086941819263,58145667154303,58156649972095,58205080093055,58205080125823],"updated_at":"2026-09-09T03:15:48Z","market_locations_enabled":false,"market_id":382140642,"preorder_location_filter_enabled":false,"preorder_location_filter_ids":[],"collection_id":null,"bulk_operation":true};window._RestockRocketConfig.cachedInStockVariantIds = { in_stock_variant_ids: [] };window._RestockRocketConfig.cachedOutOfStockVariantIds = { out_of_stock_variant_ids: [] };window._RestockRocketConfig.cachedVariantPreorderLimits = {"variant_preorder_limits":{},"updated_at":"2026-09-09T03:27:25Z","shopify_market_id":382140642,"market_locations_enabled":false};
window._RestockRocketConfig.cachedVariantPreorderLimitsMarketKey = "variant_preorder_limits_for_market_382140642";window._RestockRocketConfig.cachedVariantShippingTexts = {"variant_shipping_texts":{},"updated_at":"2026-09-09T03:27:25Z","shopify_market_id":382140642,"market_locations_enabled":false};
window._RestockRocketConfig.cachedVariantShippingTextsMarketKey = "variant_shipping_texts_for_market_382140642";
window._RestockRocketConfig.sellingPlans = [];(function() {
const cachedData = {"plans":[{"shopify_selling_plan_group_id":98590196095,"shopify_selling_plan_id":713071886719,"enabled":true,"variant_ids":[55569712382335,55569712415103,55569712480639,55570017616255,55570017550719,55569712447871,55570017583487],"product_variants_source":"custom","name":"Preorder","preorder_button_text":"Preorder","preorder_button_description":"Note: This is a preorder. Items will ship based on the estimated delivery date.","preorder_button_description_enabled":true,"preorder_button_description_background_color":"#ebebeb","preorder_button_description_text_color":"#000000","preorder_button_description_border_radius":10,"preorder_button_description_show_quantity_limit":false,"preorder_button_description_quantity_limit_suffix":" units available for preorder","preorder_button_description_shipping_text_prefix":"Shipping: ","delivery_exact_time":null,"delivery_after_n_intervals":null,"delivery_at":"2025-07-26T09:20:18.169Z","delivery_type":"asap","quantity_limit_text":"{{ quantity }} units available for preorder","preorder_button_description_show_shipping":true,"preorder_button_description_icons_enabled":true,"preorder_shipping_text":"Estimated to ship within 2 months","shipping_applies_to_all_products":true,"shipping_text":"Estimated to ship within 2 months","payment_type":"full","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"discount_text":"Save {{ discount }}","billing_title":"Full payment","billing_description":null,"enable_billing_widget":false,"inventory_provider":"stoq","preorder_badge_enabled":false,"preorder_badge_text":"Preorder","preorder_badge_text_color":"#FFFFFF","preorder_badge_background_color":"#000000","preorder_discounted_price_enabled":null,"payment_line_item_property_enabled":false,"shipping_line_item_property_enabled":true,"custom_line_item_property_text":null,"preorder_button_text_color":"#ffffff","preorder_button_background_color":"#565557","preorder_button_colors_enabled":true,"markets_enabled":false,"shopify_market_ids":[],"use_shopify_selling_plan":true,"use_simplified_shipping_text":true,"payment_options":[{"billing_type":"no_remaining_balance","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","billing_at":"2025-07-26T09:20:38.472Z","billing_after_n_intervals":7,"billing_after_interval_type":"day","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"billing_title":"Full payment","billing_description":null,"discount_text":"Save {{ discount }}","shopify_selling_plan_id":713071886719,"is_default":true,"type":"full","translations":{}}],"require_preorder_acknowledgement":false,"preorder_acknowledgement_text":"I acknowledge and agree to the preorder terms and conditions for this product.","disable_button_until_acknowledged":false,"acknowledgement_line_item_property_enabled":false,"acknowledgement_line_item_property_text":"Preorder Terms Accepted","preorder_min_quantity":null,"preorder_max_quantity":null,"countdown_timer_enabled":false,"countdown_timer_style":"text","countdown_timer_text_color":"#000000","countdown_timer_background_color":"#f5f5f5","countdown_timer_border_radius":8,"countdown_timer_format":"DHMS","countdown_timer_use_schedule_dates":true,"countdown_timer_custom_start_date":null,"countdown_timer_custom_end_date":null,"countdown_timer_starts_text":null,"countdown_timer_ends_text":null,"countdown_timer_days_label":"Days","countdown_timer_hours_label":"Hours","countdown_timer_minutes_label":"Mins","countdown_timer_seconds_label":"Secs","schedule_offer":false,"schedule_start_date":null,"schedule_end_date":null,"updated_at":"2026-08-31T15:28:37.678Z","allow_mixed_cart":true,"mixed_cart_error_message":"Preorders must be purchased separately from regular items. Please complete your current order first, or clear your cart to continue.","b2b_enabled":true,"preorder_progress_bar_enabled":false,"preorder_progress_bar_text":"{{ sold }} of {{ total }} claimed","preorder_progress_bar_fill_color":"#000000","preorder_progress_bar_background_color":"#e5e5e5","preorder_progress_bar_text_color":"#FFFFFF","preorder_progress_bar_border_radius":4,"preorder_progress_bar_show_percentage":false,"batches_enabled":false,"preorder_batches":[],"batch_status_past_text":"Sold out","batch_status_live_text":"Live","batch_status_upcoming_text":"Coming soon"}],"disabled_plan_ids":[714631872895,713813721471,713176482175],"cached_at":"2026-08-31T15:28:38Z"};
if (cachedData && typeof cachedData === 'object' && cachedData.cached_at) {
window._RestockRocketConfig.readFlags = cachedData.read_flags || {};
const oldPlans = window._RestockRocketConfig.sellingPlans;
const maxUpdatedAt = Array.isArray(oldPlans) && oldPlans.length > 0
? oldPlans.reduce(function(max, plan) {
if (plan.updated_at) {
const planDate = new Date(plan.updated_at);
const maxDate = max ? new Date(max) : null;
return (!maxDate || (planDate && !isNaN(planDate) && planDate > maxDate)) ? plan.updated_at : max;
}
return max;
}, '')
: null;
const cachedDate = new Date(cachedData.cached_at);
const maxDate = maxUpdatedAt ? new Date(maxUpdatedAt) : null;
const useCached = !maxUpdatedAt || (cachedDate && !isNaN(cachedDate) && (!maxDate || cachedDate > maxDate));
if (useCached) {
if (Array.isArray(cachedData.plans)) {
window._RestockRocketConfig.sellingPlans = cachedData.plans;
window._RestockRocketConfig.disabledSellingPlanIds = cachedData.disabled_plan_ids || [];
console.debug('[RR] Using selling plans from cachedSellingPlans (cached_at: ' + cachedData.cached_at + ')');
}
} else {
window._RestockRocketConfig.disabledSellingPlanIds = [];
console.debug('[RR] Using selling plans from old format (max updated_at: ' + maxUpdatedAt + ')');
}
}
})();window._RestockRocketConfig.enabledNotifyMeVariantIds = [];window._RestockRocketConfig.disabledNotifyMeVariantIds = [];window._RestockRocketConfig.backInStockTemplates = [];window._RestockRocketConfig.restockNotes = {};window._RestockRocketConfig.integrations = [{"id":"15c94526-b6b8-4de1-9bc1-23b1ca52ddb0","shop_id":38436,"enabled":true,"page_types":["product","collection","index","search","page","cart","list-collections","article","blog"],"configuration":{"toastDuration":10000,"toastPosition":"bottom-right","enableXHRHijack":true,"enableFetchHijack":true,"quantityLimitDisabled":false},"type":"hijack","css_config":null,"js_config":null,"created_at":"2025-07-26T09:16:04.076Z","updated_at":"2025-07-26T09:16:04.076Z"}];window._RestockRocketConfig.product = {"id":15846726107519,"title":"Allant+ 6 Midstep","handle":"allant-6-midstep-41025","description":"\u003cp\u003eThe Allant+ 6 Mid-step is a deluxe city electric bike for soaring through commutes and exploring down gravel paths. It's equipped with the Bosch smart system that offers more connectivity than ever before. Pair your smartphone with your bike to log activities, plan routes and more. Available with your choice of battery size, ranging from 400 to 800-watt hours, so you can cruise comfortably all the way home. Plus, it's topped off with upgraded components where it matters most.\u003c\/p\u003e\n\u003ch3\u003eTechnology\u003c\/h3\u003e\u003cp\u003eA fully integrated digital experience - Paired with the eBike Flow app, the smart system from Bosch fully integrates every digital element of your ride – including display, drive unit, controller and eBike ABS – into a single outstanding digital experience.\u003c\/p\u003e\n\u003ch3\u003eSpecification\u003c\/h3\u003e\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003eFrame\u003c\/th\u003e\n\u003ctd\u003eHigh-performance hydroformed alloy, internal cable routing, external battery mount, post-mount disc, 135x5 mm QR\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFrame Material\u003c\/th\u003e\n\u003ctd\u003eALUMINIUM\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRim Size\u003c\/th\u003e\n\u003ctd\u003e27.5\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFork\u003c\/th\u003e\n\u003ctd\u003eSR Suntour\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFork\u003c\/th\u003e\n\u003ctd\u003eSR Suntour Mobie 34, air spring, rebound and compression adjust, tapered alloy steerer, 100x15 mm thru axle, 60 mm travel SR Suntour Mobie 34, air spring, rebound and compression adjust, tapered alloy steerer, 100x1\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eTires\u003c\/th\u003e\n\u003ctd\u003eSchwalbe G-One, Performance, RaceGuard, with reflective strip, 57-584\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eHub Front\u003c\/th\u003e\n\u003ctd\u003eBontrager sealed bearing, 32-hole, 15 mm alloy thru-axle\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eHub Rear\u003c\/th\u003e\n\u003ctd\u003eFormula CL-52 alloy, 135x5 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRims\u003c\/th\u003e\n\u003ctd\u003eBontrager Kovee, double-wall, Tubeless Ready, 28-hole, 23 mm width, Presta valve\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eShifter\u003c\/th\u003e\n\u003ctd\u003eShimano\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eDerailleur Rear\u003c\/th\u003e\n\u003ctd\u003eShimano CUES U6000 GS\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCrank\u003c\/th\u003e\n\u003ctd\u003eProWheel alloy, 170 mm length\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCassette\u003c\/th\u003e\n\u003ctd\u003eShimano CUES LG300, LINKGLIDE, 11-48, 10-speed\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eChain\u003c\/th\u003e\n\u003ctd\u003eShimano LG500, 9\/10\/11-speed\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBrake\u003c\/th\u003e\n\u003ctd\u003eShimano\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBrakeset\u003c\/th\u003e\n\u003ctd\u003eShimano 4-piston hydraulic disc, MT401 lever, MT420 calliper \/\/ Shimano MT401\/MT420 hydraulic disc Shimano 4-piston hydraulic disc, MT401 lever, MT420 caliper \/\/ Shimano MT401 \/ MT420 hydraulic disc\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBrake Rotor\u003c\/th\u003e\n\u003ctd\u003eShimano RT30, CentreLock, 203 mm \/\/ Shimano EM300, CentreLock, 180 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003ePedals\u003c\/th\u003e\n\u003ctd\u003eslip-proof pedals with reflectors\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSaddle\u003c\/th\u003e\n\u003ctd\u003eBontrager Commuter Comp\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSeatpost\u003c\/th\u003e\n\u003ctd\u003eBontrager alloy, 31.6 mm, 12 mm offset, 330 mm length\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eHandlebar\u003c\/th\u003e\n\u003ctd\u003eAlloy lowriser, 31.8 mm, 25 mm rise, 11-degree backsweep, 690 mm width\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eStem\u003c\/th\u003e\n\u003ctd\u003eBontrager Comp, 31.8 mm, Blendr compatible, 7-degree, 80 mm length\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eGrips\u003c\/th\u003e\n\u003ctd\u003eBontrager XR Endurance Elite\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFenders\u003c\/th\u003e\n\u003ctd\u003eSKS plastic, rear \/\/ SKS plastic, front\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCarrier Rear\u003c\/th\u003e\n\u003ctd\u003eMIK-compatible alloy rear rack, maximum load 25 kg\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eKickstand\u003c\/th\u003e\n\u003ctd\u003ePletscher Comp Flex 18\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eController\u003c\/th\u003e\n\u003ctd\u003eBosch Kiox 300, smart system\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eMotor\u003c\/th\u003e\n\u003ctd\u003eBosch Performance Line CX, 20 mph (25 km\/h in Europe) Bosch Performance Line CX, 25km\/h\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSize Chart Rider Height\u003c\/th\u003e\n\u003ctd\u003eRider Height - 165.0 - 175.0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSize Chart Rider Inseam\u003c\/th\u003e\n\u003ctd\u003eInseam - 77.0 - 83.0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e","published_at":"2026-08-18T16:03:36+01:00","created_at":"2026-08-18T15:17:12+01:00","vendor":"Trek","type":"Bike","tags":["2025","Bike","EBIKE","END OF LIFE","ETR - E-Trekking","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled","Trek"],"price":342500,"price_min":342500,"price_max":402500,"available":true,"price_varies":true,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":58205373825407,"title":"M \/ 5313772","option1":"M","option2":"5313772","option3":null,"sku":"5313772","requires_shipping":true,"taxable":true,"featured_image":{"id":86929787355519,"product_id":15846726107519,"position":1,"created_at":"2026-08-18T15:58:10+01:00","updated_at":"2026-08-18T15:58:15+01:00","alt":"Allant+ 6 Midstep","width":3000,"height":1790,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","variant_ids":[58205373825407,58205373858175,58205373890943,58205373923711,58205373956479,58205373989247]},"available":false,"name":"Allant+ 6 Midstep - M \/ 5313772","public_title":"M \/ 5313772","options":["M","5313772"],"price":342500,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"768682613269","featured_media":{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":58205373858175,"title":"M \/ 5313773","option1":"M","option2":"5313773","option3":null,"sku":"5313773","requires_shipping":true,"taxable":true,"featured_image":{"id":86929787355519,"product_id":15846726107519,"position":1,"created_at":"2026-08-18T15:58:10+01:00","updated_at":"2026-08-18T15:58:15+01:00","alt":"Allant+ 6 Midstep","width":3000,"height":1790,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","variant_ids":[58205373825407,58205373858175,58205373890943,58205373923711,58205373956479,58205373989247]},"available":true,"name":"Allant+ 6 Midstep - M \/ 5313773","public_title":"M \/ 5313773","options":["M","5313773"],"price":365000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"768682613283","featured_media":{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":58205373890943,"title":"M \/ 5313775","option1":"M","option2":"5313775","option3":null,"sku":"5313775","requires_shipping":true,"taxable":true,"featured_image":{"id":86929787355519,"product_id":15846726107519,"position":1,"created_at":"2026-08-18T15:58:10+01:00","updated_at":"2026-08-18T15:58:15+01:00","alt":"Allant+ 6 Midstep","width":3000,"height":1790,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","variant_ids":[58205373825407,58205373858175,58205373890943,58205373923711,58205373956479,58205373989247]},"available":true,"name":"Allant+ 6 Midstep - M \/ 5313775","public_title":"M \/ 5313775","options":["M","5313775"],"price":402500,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"768682613320","featured_media":{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":58205373923711,"title":"S \/ 5313768","option1":"S","option2":"5313768","option3":null,"sku":"5313768","requires_shipping":true,"taxable":true,"featured_image":{"id":86929787355519,"product_id":15846726107519,"position":1,"created_at":"2026-08-18T15:58:10+01:00","updated_at":"2026-08-18T15:58:15+01:00","alt":"Allant+ 6 Midstep","width":3000,"height":1790,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","variant_ids":[58205373825407,58205373858175,58205373890943,58205373923711,58205373956479,58205373989247]},"available":false,"name":"Allant+ 6 Midstep - S \/ 5313768","public_title":"S \/ 5313768","options":["S","5313768"],"price":342500,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"768682613184","featured_media":{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":58205373956479,"title":"S \/ 5313769","option1":"S","option2":"5313769","option3":null,"sku":"5313769","requires_shipping":true,"taxable":true,"featured_image":{"id":86929787355519,"product_id":15846726107519,"position":1,"created_at":"2026-08-18T15:58:10+01:00","updated_at":"2026-08-18T15:58:15+01:00","alt":"Allant+ 6 Midstep","width":3000,"height":1790,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","variant_ids":[58205373825407,58205373858175,58205373890943,58205373923711,58205373956479,58205373989247]},"available":true,"name":"Allant+ 6 Midstep - S \/ 5313769","public_title":"S \/ 5313769","options":["S","5313769"],"price":365000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"768682613207","featured_media":{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":58205373989247,"title":"S \/ 5313771","option1":"S","option2":"5313771","option3":null,"sku":"5313771","requires_shipping":true,"taxable":true,"featured_image":{"id":86929787355519,"product_id":15846726107519,"position":1,"created_at":"2026-08-18T15:58:10+01:00","updated_at":"2026-08-18T15:58:15+01:00","alt":"Allant+ 6 Midstep","width":3000,"height":1790,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","variant_ids":[58205373825407,58205373858175,58205373890943,58205373923711,58205373956479,58205373989247]},"available":true,"name":"Allant+ 6 Midstep - S \/ 5313771","public_title":"S \/ 5313771","options":["S","5313771"],"price":402500,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"768682613245","featured_media":{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","options":["Size","Variant"],"media":[{"alt":"Allant+ 6 Midstep","id":72254243996031,"position":1,"preview_image":{"aspect_ratio":1.676,"height":1790,"width":3000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095"},"aspect_ratio":1.676,"height":1790,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/AllantPlus6Stag-24-41025-A-Primary_a91a7c5e-58e0-4aa9-8c90-e618b1473953.jpg?v=1787065095","width":3000}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp\u003eThe Allant+ 6 Mid-step is a deluxe city electric bike for soaring through commutes and exploring down gravel paths. It's equipped with the Bosch smart system that offers more connectivity than ever before. Pair your smartphone with your bike to log activities, plan routes and more. Available with your choice of battery size, ranging from 400 to 800-watt hours, so you can cruise comfortably all the way home. Plus, it's topped off with upgraded components where it matters most.\u003c\/p\u003e\n\u003ch3\u003eTechnology\u003c\/h3\u003e\u003cp\u003eA fully integrated digital experience - Paired with the eBike Flow app, the smart system from Bosch fully integrates every digital element of your ride – including display, drive unit, controller and eBike ABS – into a single outstanding digital experience.\u003c\/p\u003e\n\u003ch3\u003eSpecification\u003c\/h3\u003e\u003ctable\u003e\n\u003ctr\u003e\n\u003cth\u003eFrame\u003c\/th\u003e\n\u003ctd\u003eHigh-performance hydroformed alloy, internal cable routing, external battery mount, post-mount disc, 135x5 mm QR\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFrame Material\u003c\/th\u003e\n\u003ctd\u003eALUMINIUM\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRim Size\u003c\/th\u003e\n\u003ctd\u003e27.5\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFork\u003c\/th\u003e\n\u003ctd\u003eSR Suntour\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFork\u003c\/th\u003e\n\u003ctd\u003eSR Suntour Mobie 34, air spring, rebound and compression adjust, tapered alloy steerer, 100x15 mm thru axle, 60 mm travel SR Suntour Mobie 34, air spring, rebound and compression adjust, tapered alloy steerer, 100x1\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eTires\u003c\/th\u003e\n\u003ctd\u003eSchwalbe G-One, Performance, RaceGuard, with reflective strip, 57-584\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eHub Front\u003c\/th\u003e\n\u003ctd\u003eBontrager sealed bearing, 32-hole, 15 mm alloy thru-axle\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eHub Rear\u003c\/th\u003e\n\u003ctd\u003eFormula CL-52 alloy, 135x5 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRims\u003c\/th\u003e\n\u003ctd\u003eBontrager Kovee, double-wall, Tubeless Ready, 28-hole, 23 mm width, Presta valve\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eShifter\u003c\/th\u003e\n\u003ctd\u003eShimano\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eDerailleur Rear\u003c\/th\u003e\n\u003ctd\u003eShimano CUES U6000 GS\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCrank\u003c\/th\u003e\n\u003ctd\u003eProWheel alloy, 170 mm length\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCassette\u003c\/th\u003e\n\u003ctd\u003eShimano CUES LG300, LINKGLIDE, 11-48, 10-speed\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eChain\u003c\/th\u003e\n\u003ctd\u003eShimano LG500, 9\/10\/11-speed\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBrake\u003c\/th\u003e\n\u003ctd\u003eShimano\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBrakeset\u003c\/th\u003e\n\u003ctd\u003eShimano 4-piston hydraulic disc, MT401 lever, MT420 calliper \/\/ Shimano MT401\/MT420 hydraulic disc Shimano 4-piston hydraulic disc, MT401 lever, MT420 caliper \/\/ Shimano MT401 \/ MT420 hydraulic disc\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBrake Rotor\u003c\/th\u003e\n\u003ctd\u003eShimano RT30, CentreLock, 203 mm \/\/ Shimano EM300, CentreLock, 180 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003ePedals\u003c\/th\u003e\n\u003ctd\u003eslip-proof pedals with reflectors\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSaddle\u003c\/th\u003e\n\u003ctd\u003eBontrager Commuter Comp\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSeatpost\u003c\/th\u003e\n\u003ctd\u003eBontrager alloy, 31.6 mm, 12 mm offset, 330 mm length\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eHandlebar\u003c\/th\u003e\n\u003ctd\u003eAlloy lowriser, 31.8 mm, 25 mm rise, 11-degree backsweep, 690 mm width\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eStem\u003c\/th\u003e\n\u003ctd\u003eBontrager Comp, 31.8 mm, Blendr compatible, 7-degree, 80 mm length\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eGrips\u003c\/th\u003e\n\u003ctd\u003eBontrager XR Endurance Elite\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFenders\u003c\/th\u003e\n\u003ctd\u003eSKS plastic, rear \/\/ SKS plastic, front\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCarrier Rear\u003c\/th\u003e\n\u003ctd\u003eMIK-compatible alloy rear rack, maximum load 25 kg\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eKickstand\u003c\/th\u003e\n\u003ctd\u003ePletscher Comp Flex 18\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eController\u003c\/th\u003e\n\u003ctd\u003eBosch Kiox 300, smart system\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eMotor\u003c\/th\u003e\n\u003ctd\u003eBosch Performance Line CX, 20 mph (25 km\/h in Europe) Bosch Performance Line CX, 25km\/h\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSize Chart Rider Height\u003c\/th\u003e\n\u003ctd\u003eRider Height - 165.0 - 175.0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSize Chart Rider Inseam\u003c\/th\u003e\n\u003ctd\u003eInseam - 77.0 - 83.0\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/table\u003e"};window._RestockRocketConfig.variantsInventoryPolicy = {58205373825407 : "deny",58205373858175 : "deny",58205373890943 : "deny",58205373923711 : "deny",58205373956479 : "deny",58205373989247 : "deny",};
window._RestockRocketConfig.variantsInventoryQuantity = {58205373825407 : parseInt("0"),58205373858175 : parseInt("51"),58205373890943 : parseInt("51"),58205373923711 : parseInt("0"),58205373956479 : parseInt("19"),58205373989247 : parseInt("19"),};
window._RestockRocketConfig.variantsPreorderCount = {58205373825407 : parseInt(""),58205373858175 : parseInt(""),58205373890943 : parseInt(""),58205373923711 : parseInt(""),58205373956479 : parseInt(""),58205373989247 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderCountForMarket = {58205373825407 : null,58205373858175 : null,58205373890943 : null,58205373923711 : null,58205373956479 : null,58205373989247 : null,};
window._RestockRocketConfig.variantsPreorderMaxCount = {58205373825407 : parseInt(""),58205373858175 : parseInt(""),58205373890943 : parseInt(""),58205373923711 : parseInt(""),58205373956479 : parseInt(""),58205373989247 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderMaxCountForMarket = {58205373825407 : null,58205373858175 : null,58205373890943 : null,58205373923711 : null,58205373956479 : null,58205373989247 : null,};
window._RestockRocketConfig.variantsShippingText = {58205373825407 : "",58205373858175 : "",58205373890943 : "",58205373923711 : "",58205373956479 : "",58205373989247 : "",};
window._RestockRocketConfig.variantsShippingTextForMarket = {58205373825407 : null,58205373858175 : null,58205373890943 : null,58205373923711 : null,58205373956479 : null,58205373989247 : null,};window._RestockRocketConfig.selected_variant_id = 58205373858175;
window._RestockRocketConfig.selected_variant_available = (window._RestockRocketConfig.product.variants.find(function(variant) { return variant.id == window._RestockRocketConfig.selected_variant_id }) || {}).available;
try {
var _sqCfg = window._RestockRocketConfig;
var _sqPlanEnabled = Array.isArray(_sqCfg.sellingPlans) &&
_sqCfg.sellingPlans.some(function (p) { return p && p.enabled; });
var _sqPreCount = ((_sqCfg.cachedPreorderVariantIds &&
_sqCfg.cachedPreorderVariantIds.preorder_variant_ids) || []).length;
_sqCfg.preordersConfigured = !!(_sqPlanEnabled && _sqPreCount);
} catch (e) { }
try {
var _sqc = window._RestockRocketConfig;
var _sqOn = !!(_sqc.cachedSettings && _sqc.cachedSettings.block_accelerated_checkout);
var _sqPre = (_sqc.cachedPreorderVariantIds &&
_sqc.cachedPreorderVariantIds.preorder_variant_ids) || [];
var _sqArm = false;
if (_sqOn && _sqc.preordersConfigured) {
if (_sqc.pageType === 'product' && _sqc.product && _sqc.product.variants) {
_sqArm = _sqc.product.variants.some(function (v) { return _sqPre.indexOf(Number(v.id)) !== -1; });
} else {
_sqArm = (_sqc.integrations || []).some(function (i) {
return i && i.type === 'featured_product' && i.enabled &&
Array.isArray(i.page_types) && i.page_types.indexOf(_sqc.pageType) !== -1;
});
}
}
if (_sqArm && document.documentElement) {
_sqc.acceleratedGateArmed = true;
document.documentElement.classList.add('stoq-buy-now-pending');
setTimeout(function () {
document.documentElement.classList.remove('stoq-buy-now-pending');
}, 6000);
}
} catch (e) { }
window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/01a06666-804b-764e-84be-c6136c33d807/restockrocket-1-581/assets/restockrocket-product.js'
window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/01a06666-804b-764e-84be-c6136c33d807/restockrocket-1-581/assets/restockrocket-collection.js'
window._RestockRocketConfig.scriptUrlProductBis = 'https://cdn.shopify.com/extensions/01a06666-804b-764e-84be-c6136c33d807/restockrocket-1-581/assets/restockrocket-product-bis.js'
window._RestockRocketConfig.scriptUrlCollectionBis = 'https://cdn.shopify.com/extensions/01a06666-804b-764e-84be-c6136c33d807/restockrocket-1-581/assets/restockrocket-collection-bis.js'
window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1)
window._RestockRocketConfig.host = (window._RestockRocketConfig.cachedSettings && window._RestockRocketConfig.cachedSettings.api_host) || 'https://app.restockrocket.io'
try {
const _stoqVersionMatch = window._RestockRocketConfig.scriptHost.match(/(\d+)\/?(?:assets\/?)?$/);
window._RestockRocketConfig.appVersion = (_stoqVersionMatch && _stoqVersionMatch[1]) || '';
} catch (e) {
window._RestockRocketConfig.appVersion = '';
}
const SETTINGS_CACHE_DURATION = 15 * 60 * 1000;
const LIQUID_CACHE_MAX_AGE = 15 * 60;
const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt;
if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) {
console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh');
window._RestockRocketConfig.isLiquidCacheFresh = true;
window._RestockRocketConfig.liquidCacheAge = null;
} else {
const now = Math.floor(Date.now() / 1000);
const liquidCacheAge = now - liquidRenderedAt;
window._RestockRocketConfig.liquidCacheAge = Math.max(0, liquidCacheAge);
if (liquidCacheAge
0) {
console.debug(`STOQ - Client clock appears ahead of server by ${Math.abs(Math.round(liquidCacheAge / 60))} minutes, assuming cache fresh`);
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else if (liquidCacheAge Powered by
= LIQUID_CACHE_MAX_AGE) {
console.debug(`STOQ - Liquid cache is fresh (${Math.round(liquidCacheAge / 60)} minutes old)`);
window._RestockRocketConfig.isLiquidCacheFresh = true;
} else {
console.debug(`STOQ - Liquid cache is stale (${Math.round(liquidCacheAge / 60)} minutes old, max ${Math.round(LIQUID_CACHE_MAX_AGE / 60)} minutes)`);
window._RestockRocketConfig.isLiquidCacheFresh = false;
}
}
function checkSettingsExpiry(settings) {
try {
if (!settings || !settings.updated_at) {
console.debug('STOQ - Invalid settings data structure');
return null;
}
if (!settings.cache) {
console.debug('STOQ - settings caching disabled');
return null;
}
if (settings.multi_language_enabled) {
if (!settings.translations) {
console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh');
return null;
}
if (window._RestockRocketConfig.normalizedLocale &Shopify
<.
nitConfig.product.variants))
? _stoqInitConfig.product.variants.map(function(v) { return v.id })
: [];
const _stoqSelectedVariantId = _stoqInitConfig.selected_variant_id;
var _stoqPageSeq = 0;
try {
_stoqPageSeq = (parseInt(window.sessionStorage.getItem('_stoq_pls') || '0', 10) || 0) + 1;
window.sessionStorage.setItem('_stoq_pls', String(_stoqPageSeq));
} catch (e) { }
Shopify?.analytics?.publish?.('stoq_initialized', {
cart_token: _stoqInitConfig.cartToken || '',
page_url: window.location.href,
page_type: _stoqInitConfig.pageType || '',
shop_domain: _stoqInitConfig.shop || '',
market_id: _stoqInitConfig.marketId || '',
country_code: _stoqInitConfig.countryIsoCode || '',
detected_variant_ids: _stoqDetectedVariantIds,
selected_variant_id: _stoqSelectedVariantId || '',
page_load_seq: _stoqPageSeq,
liquid_rendered_at: _stoqInitConfig.liquidRenderedAt || 0,
app_version: _stoqInitConfig.appVersion || '',
var _sqVidNum = Number(variantId);
var _sqPlan = null;
var _sqPlans = Array.isArray(_sqTrack.sellingPlans) ? _sqTrack.sellingPlans : [];
var _sqMktId = Number(_sqTrack.marketId);
var _sqForVariant = function (pl) {
return pl && pl.enabled && Array.isArray(pl.variant_ids) &&
pl.variant_ids.indexOf(_sqVidNum) !== -1;
};
_sqPlans.forEach(function (pl) {
if (!_sqPlan && _sqForVariant(pl) && pl.markets_enabled &&
Array.isArray(pl.shopify_market_ids) &&
pl.shopify_market_ids.indexOf(_sqMktId) !== -1) { _sqPlan = pl; }
});
if (!_sqPlan) {
_sqPlans.forEach(function (pl) {
if (!_sqPlan && _sqForVariant(pl) && !pl.markets_enabled) { _sqPlan = pl; }
});
}
Shopify?.analytics?.publish?.('stoq_accelerated_checkout_clicked', {
variant_id: variantId,
product_id: (_sqTrack.product && _sqTra
as(_sqTrack.cachedInStockVariantIds &&
_sqTrack.cachedInStockVariantIds.in_stock_variant_ids);
})(),
enrolled_plan_id: (_sqPlan && (_sqPlan.shopify_selling_plan_id || _sqPlan.shopify_selling_plan_group_id)) || '',
enrolled_plan_provider: (_sqPlan && _sqPlan.inventory_provider) || '',
block_enabled: !!(_sqTrack.cachedSettings && _sqTrack.cachedSettings.block_accelerated_checkout),
gate_armed: !!_sqTrack.acceleratedGateArmed,
gate_active_at_click: !!(document.documentElement &&
document.documentElement.classList.contains('stoq-buy-now-pending')),
blocked: (function () {
try {
var rr = window._RestockRocket;
return !!(rr && typeof rr.willBlockAcceleratedClick === 'function' &&
rr.willBlockAcceleratedClick(e));
} catch (err) { return false; }
})(),
},
});
function(key) {
const value = translatedFields[key];
if (value !== null && value !== undefined && value !== '') {
settings[key] = value;
}
});
} else {
console.debug('STOQ - No translated fields found for locale:', normalizedLocale);
}
delete settings.translations;
return settings;
} catch (e) {
console.debug('STOQ - error applying translations:', e);
return settings;
}
}
function setupCartSellingPlanUpdater(settings) {
window.addEventListener('stoq:inventory-data-loaded', function(event) {
console.debug('STOQ - Inventory data loaded, updating cart selling plans');
if (window._RestockRocket && window._RestockRocket.updateCartSellingPlans) {
window._RestockRocket.updateCartSellingPlans()
.then(hasUpdates => {
if (hasUpdates) {
console.debug('STOQ - cart selling plans updated successfully');
} else {
console.debug('STOQ -American Express
atus); }
return response.json();
})
.then(function(body) {
if (body && body.errors && body.errors.length) {
throw new Error('Storefront API errors: ' + body.errors.map(function(e) { return e && e.message; }).join(', '));
}
const value = body && body.data && body.data.shop && body.data.shop.metafield && body.data.shop.metafield.value;
if (!value) { throw new Error('Storefront API returned no settings metafield value'); }
cfg.storefrontSettings = JSON.parse(value);
console.debug('STOQ - stored live settings from Storefront API on config.storefrontSettings');
})
.catch(function(e) {
console.debug('STOQ - Storefront settings fetch failed (non-fatal):', e && e.message);
});
}
if (typeof window.requestIdleCallback === 'function') {
window.requestIdleCallback(run, { timeout: 5000 });
} else {
setTimeout(run, 0);
}
})();
const cachedSettings = window._RestockRocketConfig.cachedSetti
role === 'main') {
headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name;
headers['X-Shopify-Theme-Schema-Version'] = window.Shopify.theme.schema_version;
headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id;
}
fetch(
`${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`,
{ headers }
)
.then(function(response) {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(function(settings) {
initializeScripts(settings);
})
.catch(function(error) {
if (cachedSettings) {
console.debug('STOQ - using expired cached settings as fallback');
initializeScripts(cachedSettings);
} else {
console.error('STOQ - failed to load settings:', error);
}
})
.catch(function(e) {
console.error(e)
})
}
function fetchEmbed
tockRocketConfig.isLiquidCacheFresh && !settings.disable_refresh_on_stale_liquid) {
console.debug('STOQ - Liquid cache stale, refreshing selling_plans + integrations');
Promise.race([
Promise.all([
fetchEmbedConfig('selling_plans', function(data) {
if (data && Array.isArray(data.plans)) {
window._RestockRocketConfig.sellingPlans = data.plans;
window._RestockRocketConfig.disabledSellingPlanIds = data.disabled_plan_ids || [];
}
if (data && data.read_flags && typeof data.read_flags === 'object' && !Array.isArray(data.read_flags)) {
window._RestockRocketConfig.readFlags = data.read_flags;
}
}),
fetchEmbedConfig('integrations', function(data) {
if (Array.isArray(data)) {
window._RestockRocketConfig.integrations = data;
}
})
]),
new Promise(function(resolve) { setTimeout(resolve, 1000); })
]).then(function() Apple Pay
: window._RestockRocketConfig.scriptUrlCollectionBis;
const productScriptUrl = usePreorderBuild
? window._RestockRocketConfig.scriptUrlProduct
: window._RestockRocketConfig.scriptUrlProductBis;
const pageType = window._RestockRocketConfig.pageType;
const collectionPageTypes = ['collection', 'index', 'search', 'page'];
if(collectionPageTypes.indexOf(pageType) !== -1 && (settings[`show_button_on_${pageType}`] || settings[`preorder_${pageType}_enabled`])) {
createRestockRocketScript(collectionScriptUrl);
} else if(pageType === 'product') {
createRestockRocketScript(productScriptUrl);
} else if(hijackIntegration) {
createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection);
} else if(usePreorderBuild) {
createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection);
} else {
console.debug(`STOQ - no scripts enabled for ${pageType}`);
}
const appLoadedEvent = new Cust
Diners Club
Google Pay
Klarna
Shop Pay
Union Pay
Visa