Headsets

Complete Brakes
Header Image
Maintenance
Submit

{"id":7474960236770,"title":"Burgtec - The Bartender Grip","handle":"burgtec-the-bartender-grip","description":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003eThe Bartender, the Jagermeister of grips. No fuss rubber, lock on and rock out. The combination of a tacky rubber compound and the knurled pattern offers the bench mark in traction and durability.\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eDirt 100 2018\u003c\/strong\u003e\u003cspan data-mce-fragment=\"1\"\u003e \u003c\/span\u003e\u003cem data-mce-fragment=\"1\"\u003e“THERE’S NOTHING HERE TO POKE HOLES IN, JUST A SOLID, SIMPLE DESIGN”\u003c\/em\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003eWeight 90g\u003cbr data-mce-fragment=\"1\"\u003eSingle lock on\u003cbr data-mce-fragment=\"1\"\u003eLow profile design\u003cbr data-mce-fragment=\"1\"\u003e30mm Diameter\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eIf any more information is needed, please don't hesitate to get in touch with one of the team:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eProjektRide Bike shop Edinburgh.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eedinburgh@projektride.co.uk\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eT- 01313745324\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","published_at":"2024-12-08T20:03:56+00:00","created_at":"2021-12-15T21:56:30+00:00","vendor":"Burgtec","type":"","tags":["Grips \u0026 Bar-tape","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled"],"price":1599,"price_min":1599,"price_max":1599,"available":true,"price_varies":false,"compare_at_price":1599,"compare_at_price_min":1599,"compare_at_price_max":1599,"compare_at_price_varies":false,"variants":[{"id":42170449199330,"title":"Black","option1":"Black","option2":null,"option3":null,"sku":"5531","requires_shipping":true,"taxable":true,"featured_image":{"id":36315021279458,"product_id":7474960236770,"position":1,"created_at":"2021-12-17T10:50:07+00:00","updated_at":"2021-12-17T10:50:07+00:00","alt":null,"width":1138,"height":1134,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51.png?v=1639738207","variant_ids":[42170449199330]},"available":true,"name":"Burgtec - The Bartender Grip - Black","public_title":"Black","options":["Black"],"price":1599,"weight":0,"compare_at_price":1599,"inventory_management":"shopify","barcode":"","featured_media":{"alt":null,"id":28865128333538,"position":1,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51.png?v=1639738207"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42170449232098,"title":"Blue","option1":"Blue","option2":null,"option3":null,"sku":"5533","requires_shipping":true,"taxable":true,"featured_image":{"id":36315075903714,"product_id":7474960236770,"position":2,"created_at":"2021-12-17T11:02:13+00:00","updated_at":"2021-12-17T11:02:13+00:00","alt":null,"width":1138,"height":1134,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.22.59.png?v=1639738933","variant_ids":[42170449232098]},"available":false,"name":"Burgtec - The Bartender Grip - Blue","public_title":"Blue","options":["Blue"],"price":1599,"weight":0,"compare_at_price":1599,"inventory_management":"shopify","barcode":"","featured_media":{"alt":null,"id":28865184006370,"position":2,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.22.59.png?v=1639738933"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42170449264866,"title":"Red","option1":"Red","option2":null,"option3":null,"sku":"5532","requires_shipping":true,"taxable":true,"featured_image":{"id":36315077345506,"product_id":7474960236770,"position":3,"created_at":"2021-12-17T11:02:33+00:00","updated_at":"2021-12-17T11:02:33+00:00","alt":null,"width":1138,"height":1134,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.28.png?v=1639738953","variant_ids":[42170449264866]},"available":false,"name":"Burgtec - The Bartender Grip - Red","public_title":"Red","options":["Red"],"price":1599,"weight":0,"compare_at_price":1599,"inventory_management":"shopify","barcode":"","featured_media":{"alt":null,"id":28865185513698,"position":3,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.28.png?v=1639738953"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42170449297634,"title":"Purple","option1":"Purple","option2":null,"option3":null,"sku":"5534","requires_shipping":true,"taxable":true,"featured_image":{"id":36315081474274,"product_id":7474960236770,"position":5,"created_at":"2021-12-17T11:03:25+00:00","updated_at":"2021-12-17T11:03:25+00:00","alt":null,"width":1138,"height":1134,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.38.png?v=1639739005","variant_ids":[42170449297634]},"available":false,"name":"Burgtec - The Bartender Grip - Purple","public_title":"Purple","options":["Purple"],"price":1599,"weight":0,"compare_at_price":1599,"inventory_management":"shopify","barcode":"","featured_media":{"alt":null,"id":28865189773538,"position":5,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.38.png?v=1639739005"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42170449330402,"title":"Gum","option1":"Gum","option2":null,"option3":null,"sku":"5535","requires_shipping":true,"taxable":true,"featured_image":{"id":36315080425698,"product_id":7474960236770,"position":4,"created_at":"2021-12-17T11:03:15+00:00","updated_at":"2021-12-17T11:03:15+00:00","alt":null,"width":1138,"height":1134,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.43.png?v=1639738995","variant_ids":[42170449330402]},"available":false,"name":"Burgtec - The Bartender Grip - Gum","public_title":"Gum","options":["Gum"],"price":1599,"weight":0,"compare_at_price":1599,"inventory_management":"shopify","barcode":"","featured_media":{"alt":null,"id":28865188692194,"position":4,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.43.png?v=1639738995"}},"requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42170449363170,"title":"Grey","option1":"Grey","option2":null,"option3":null,"sku":"5538","requires_shipping":true,"taxable":true,"featured_image":{"id":36315081703650,"product_id":7474960236770,"position":6,"created_at":"2021-12-17T11:03:29+00:00","updated_at":"2021-12-17T11:03:29+00:00","alt":null,"width":1138,"height":1134,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.52.png?v=1639739009","variant_ids":[42170449363170]},"available":false,"name":"Burgtec - The Bartender Grip - Grey","public_title":"Grey","options":["Grey"],"price":1599,"weight":0,"compare_at_price":1599,"inventory_management":"shopify","barcode":"","featured_media":{"alt":null,"id":28865190002914,"position":6,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.52.png?v=1639739009"}},"requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51.png?v=1639738207","\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.22.59.png?v=1639738933","\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.28.png?v=1639738953","\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.43.png?v=1639738995","\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.38.png?v=1639739005","\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.52.png?v=1639739009"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51.png?v=1639738207","options":["color"],"media":[{"alt":null,"id":28865128333538,"position":1,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51.png?v=1639738207"},"aspect_ratio":1.004,"height":1134,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51.png?v=1639738207","width":1138},{"alt":null,"id":28865184006370,"position":2,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.22.59.png?v=1639738933"},"aspect_ratio":1.004,"height":1134,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.22.59.png?v=1639738933","width":1138},{"alt":null,"id":28865185513698,"position":3,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.28.png?v=1639738953"},"aspect_ratio":1.004,"height":1134,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.28.png?v=1639738953","width":1138},{"alt":null,"id":28865188692194,"position":4,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.43.png?v=1639738995"},"aspect_ratio":1.004,"height":1134,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.43.png?v=1639738995","width":1138},{"alt":null,"id":28865189773538,"position":5,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.38.png?v=1639739005"},"aspect_ratio":1.004,"height":1134,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.38.png?v=1639739005","width":1138},{"alt":null,"id":28865190002914,"position":6,"preview_image":{"aspect_ratio":1.004,"height":1134,"width":1138,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.52.png?v=1639739009"},"aspect_ratio":1.004,"height":1134,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.23.52.png?v=1639739009","width":1138}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003eThe Bartender, the Jagermeister of grips. No fuss rubber, lock on and rock out. The combination of a tacky rubber compound and the knurled pattern offers the bench mark in traction and durability.\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eDirt 100 2018\u003c\/strong\u003e\u003cspan data-mce-fragment=\"1\"\u003e \u003c\/span\u003e\u003cem data-mce-fragment=\"1\"\u003e“THERE’S NOTHING HERE TO POKE HOLES IN, JUST A SOLID, SIMPLE DESIGN”\u003c\/em\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003eWeight 90g\u003cbr data-mce-fragment=\"1\"\u003eSingle lock on\u003cbr data-mce-fragment=\"1\"\u003eLow profile design\u003cbr data-mce-fragment=\"1\"\u003e30mm Diameter\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eIf any more information is needed, please don't hesitate to get in touch with one of the team:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eProjektRide Bike shop Edinburgh.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eedinburgh@projektride.co.uk\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eT- 01313745324\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e"}Select variant dropdown

[]80 mm - £219.99 GBP

90 mm - £219.99 GBPOpen navigation menu
100 mm - £219.99 GBP

{ "@context": "http://schema.org/", "@type": "Product", "name": "Burgtec - The Bartender Grip", "url": "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip","image": [ "https:\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot_2021-12-17_at_10.49.51_1138x.png?v=1639738207" ],"description": "\nThe Bartender, the Jagermeister of grips. No fuss rubber, lock on and rock out. The combination of a tacky rubber compound and the knurled pattern offers the bench mark in traction and durability.\nDirt 100 2018 “THERE’S NOTHING HERE TO POKE HOLES IN, JUST A SOLID, SIMPLE DESIGN”\nWeight 90gSingle lock onLow profile design30mm Diameter\nIf any more information is needed, please don't hesitate to get in touch with one of the team:\nProjektRide Bike shop Edinburgh.\nedinburgh@projektride.co.uk\nT- 01313745324\n ","sku": "5531","brand": { "@type": "Thing", "name": "Burgtec" },"gtin8": "","offers": [{ "@type" : "Offer","sku": "5531","availability" : "http://schema.org/InStock", "price" : 15.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip?variant=42170449199330" }, { "@type" : "Offer","sku": "5533","availability" : "http://schema.org/InStock", "price" : 15.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip?variant=42170449232098" }, { "@type" : "Offer","sku": "5532","availability" : "http://schema.org/InStock", "price" : 15.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip?variant=42170449264866" }, { "@type" : "Offer","sku": "5534","availability" : "http://schema.org/InStock", "price" : 15.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip?variant=42170449297634" }, { "@type" : "Offer","sku": "5535","availability" : "http://schema.org/InStock", "price" : 15.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip?variant=42170449330402" }, { "@type" : "Offer","sku": "5538","availability" : "http://schema.org/InStock", "price" : 15.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/burgtec-the-bartender-grip?variant=42170449363170" } ] }
Open search bar
Quantity:
Hire Lazer Compact Helmet
Decrease quantity
a class="product__media product__media--featured" href="/collections/cockpit/products/hire-smith-convoy-helmet" title="Hire Lazer Compact Helmet" aria-label="Hire Lazer Compact Helmet" style="background-image: url(//projektride.co.uk/cdn/shop/files/my2023_tempo-kineticore-black_right_1400x1011800x600-removebg-preview_1_600x.png?v=1747484784)"> span class="visually-hidden">Hire Lazer Compact Helmet > Increase quantityClose search bar
Hire Lazer Compact Helmet
Black
Submit your search request SubmitLoading more .£0.00 window.appBlockPlacements ||= []; if (window.klarnaAppBlocksManager) { window.klarnaAppBlocksManager.push({ productVariants: [{"id":43936328843490,"title":"80 mm","option1":"80 mm","option2":null,"option3":null,"sku":"BAJ0070","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 80 mm","public_title":"80 mm","options":["80 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43936328876258,"title":"90 mm","option1":"90 mm","option2":null,"option3":null,"sku":"BAJ0071","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 90 mm","public_title":"90 mm","options":["90 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43936328909026,"title":"100 mm","option1":"100 mm","option2":null,"option3":null,"sku":"BAJ0072","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 100 mm","public_title":"100 mm","options":["100 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}], templateName: 'product', dataKey: 'top-strip-promotion-badge', storefrontCurrency: 'GBP', storefrontCountry: 'GB', storefrontLanguage: 'en', shopLocale: 'en', shopDomain: 'projektride.co.uk', variantPrice: '21999', cartPrice: '0', selector: 'shopify-osm-ASUorQUNvQS9uckFQO__klarna_on_site_messaging_app_block_8gNReH', topPadding: '0', bottomPadding: '0', }); } else { window.appBlockPlacements.push({ productVariants: [{"id":43936328843490,"title":"80 mm","option1":"80 mm","option2":null,"option3":null,"sku":"BAJ0070","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 80 mm","public_title":"80 mm","options":["80 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43936328876258,"title":"90 mm","option1":"90 mm","option2":null,"option3":null,"sku":"BAJ0071","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 90 mm","public_title":"90 mm","options":["90 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43936328909026,"title":"100 mm","option1":"100 mm","option2":null,"option3":null,"sku":"BAJ0072","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 100 mm","public_title":"100 mm","options":["100 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}], templateName: 'product', shopLocale: 'en', dataKey: 'top-strip-promotion-badge', storefrontCurrency: 'GBP', storefrontCountry: 'GB', storefrontLanguage: 'en', shopDomain: 'projektride.co.uk', variantPrice: '21999', cartPrice: '0', selector: 'shopify-osm-ASUorQUNvQS9uckFQO__klarna_on_site_messaging_app_block_8gNReH', topPadding: '0', bottomPadding: '0', }); }
Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cable span class="visually-hidden">Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cablediv class="result__image-img product__media lazyload fade-in" data-bgset="{{ it.product.image.thumb }}" data-aspectratio="{{ it.product.image.aspectRatio }}" data-sizes="auto"> {{@if(it.product.badgeText)}}
> div class="product__tag{{ it.product.badgeClasses }}">Less Fatigue = Maximum Performance
Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cable>
> Compliance: up to 20mm£0.00> p class="result__title"> Weight: 225g - 235g a href="{{ it.product.url }}">{{ it.product.title }} > Angle: -6 degree Bar Clamp: 31.8mm
a class="product__media product__media--featured" href="/collections/cockpit/products/hire-bike-packing-bundle" title="HIRE - BIKE PACKING BUNDLE" aria-label="HIRE - BIKE PACKING BUNDLE" style="background-image: url(//projektride.co.uk/cdn/shop/files/Yourparagraphtext_600x.png?v=1747481130)"> li class="result result--full"> > >
> >
{ "@context": "http://schema.org", "@type": "Organization", "name": "ProjektRide","sameAs": [ null, null, null, null, null, null, null ], "url": "https:\/\/projektride.co.uk" }

div class="product__media-hover-img product__media" style="background-image: url(//projektride.co.uk/cdn/shop/files/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7_600x.jpg?v=1747481423)">
> console.log("pr-product-page");{"id":8055105388770,"title":"Cane Creek eeSILK Stem","handle":"cane-creek-eesilk-stem","description":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cdiv class=\"col\"\u003e\n\u003cdiv class=\"description\"\u003e\n\u003cp\u003e\u003cstrong\u003eLess Fatigue = Maximum Performance\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eIntroducing the newest member of the eeSilk compliance family, the eeSilk stem. The eeSilk stem features up to 20mm of tunable compliance via a single bolt external elastomer change and a compliance switch to choose between soft and firm modes for no matter where the ride takes you.\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eCompliance: up to 20mm\u003c\/li\u003e\n\u003cli\u003eWeight: 225g - 235g\u003c\/li\u003e\n\u003cli\u003eAngle: -6 degree\u003c\/li\u003e\n\u003cli\u003eStack Height: 49mm\u003c\/li\u003e\n\u003cli\u003eBar Clamp: 31.8mm\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"col\"\u003e\n\u003cdiv class=\"features\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e","published_at":"2023-03-18T14:24:58+00:00","created_at":"2023-03-18T14:24:58+00:00","vendor":"Cane Creek","type":"Apparel \u0026 Accessories","tags":["spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled","Stem","stems","suspension stem"],"price":21999,"price_min":21999,"price_max":21999,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":43936328843490,"title":"80 mm","option1":"80 mm","option2":null,"option3":null,"sku":"BAJ0070","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 80 mm","public_title":"80 mm","options":["80 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43936328876258,"title":"90 mm","option1":"90 mm","option2":null,"option3":null,"sku":"BAJ0071","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 90 mm","public_title":"90 mm","options":["90 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43936328909026,"title":"100 mm","option1":"100 mm","option2":null,"option3":null,"sku":"BAJ0072","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Cane Creek eeSILK Stem - 100 mm","public_title":"100 mm","options":["100 mm"],"price":21999,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/products\/35007-pm.png?v=1679149500"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/products\/35007-pm.png?v=1679149500","options":["Length"],"media":[{"alt":null,"id":31694932672738,"position":1,"preview_image":{"aspect_ratio":1.0,"height":776,"width":776,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/35007-pm.png?v=1679149500"},"aspect_ratio":1.0,"height":776,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/35007-pm.png?v=1679149500","width":776}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cdiv class=\"col\"\u003e\n\u003cdiv class=\"description\"\u003e\n\u003cp\u003e\u003cstrong\u003eLess Fatigue = Maximum Performance\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eIntroducing the newest member of the eeSilk compliance family, the eeSilk stem. The eeSilk stem features up to 20mm of tunable compliance via a single bolt external elastomer change and a compliance switch to choose between soft and firm modes for no matter where the ride takes you.\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eCompliance: up to 20mm\u003c\/li\u003e\n\u003cli\u003eWeight: 225g - 235g\u003c\/li\u003e\n\u003cli\u003eAngle: -6 degree\u003c\/li\u003e\n\u003cli\u003eStack Height: 49mm\u003c\/li\u003e\n\u003cli\u003eBar Clamp: 31.8mm\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"col\"\u003e\n\u003cdiv class=\"features\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e"}

[]

HIRE - BIKE PACKING BUNDLE

{ "@context": "http://schema.org/", "@type": "Product", "name": "Cane Creek eeSILK Stem", "url": "https:\/\/projektride.co.uk\/products\/cane-creek-eesilk-stem","image": [ "https:\/\/projektride.co.uk\/cdn\/shop\/products\/35007-pm_776x.png?v=1679149500" ],"description": "\n\n\nLess Fatigue = Maximum Performance\nIntroducing the newest member of the eeSilk compliance family, the eeSilk stem. The eeSilk stem features up to 20mm of tunable compliance via a single bolt external elastomer change and a compliance switch to choose between soft and firm modes for no matter where the ride takes you.\n\nCompliance: up to 20mm\nWeight: 225g - 235g\nAngle: -6 degree\nStack Height: 49mm\nBar Clamp: 31.8mm\n\n\n\n\n\n","sku": "BAJ0070","brand": { "@type": "Thing", "name": "Cane Creek" },"gtin8": "","offers": [{ "@type" : "Offer","sku": "BAJ0070","availability" : "http://schema.org/InStock", "price" : 219.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/cane-creek-eesilk-stem?variant=43936328843490" }, { "@type" : "Offer","sku": "BAJ0071","availability" : "http://schema.org/InStock", "price" : 219.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/cane-creek-eesilk-stem?variant=43936328876258" }, { "@type" : "Offer","sku": "BAJ0072","availability" : "http://schema.org/InStock", "price" : 219.99, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/cane-creek-eesilk-stem?variant=43936328909026" } ] }

£0.00

Would you like to add on any equipment?
  • #FeaturedImage--template--15326745395426__1645734801adfd4c07 { --overlay-opacity: 0.2; }
  • Hire Lazer Compact Helmet
  • div class="featured-image__bg bg-pos-center-center" style="background-image: url('//projektride.co.uk/cdn/shop/files/2571D9FF-E9AE-4004-9A55-C7FD4DD999D6_2048x.jpg?v=1640941114');">BUY
  • > a class="product__media product__media--featured" href="/collections/cockpit/products/hire-smith-convoy-helmet" title="Hire Lazer Compact Helmet" aria-label="Hire Lazer Compact Helmet" style="background-image: url(//projektride.co.uk/cdn/shop/files/my2023_tempo-kineticore-black_right_1400x1011800x600-removebg-preview_1_600x.png?v=1747484784)">
  • SELLspan class="visually-hidden">Hire Lazer Compact Helmet
  • >
  • RIDE CONFIDENT>
  • ProjektRide
  • Includes integrated, protected dynamo light and charger routing3cth scope=\"row\"\u003eStem clamping height\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003e43 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr class=\"bottom\"\u003e\n\u003cth scope=\"row\"\u003e\u003ca href=\"https:\/\/www.vecnum.com\/en\/products\/freeqence#jump-1\"\u003e\u003csmall\u003eRequired for mounting\u003c\/small\u003e\u003cbr\u003eMinium shaft length\u003csup\u003e1\u003c\/sup\u003e\u003c\/a\u003e\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003e42 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr class=\"bottom\"\u003e\n\u003cth scope=\"row\"\u003eHead tube diameter\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003e1⅛ inches\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr class=\"bottom\"\u003e\n\u003cth scope=\"row\"\u003eHandlebar diameter\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003e31,8 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\uBuy Sell Ride Confident
  • 29900,"price_min":29900,"price_max":29900,"available":false,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":43414855287010,"title":"90mm","option1":"90mm","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Vecnum FreeQence Suspension Stem - 90mm","public_title":"90mm","options":["90mm"],"price":29900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":43414855319778,"title":"105mm","option1":"105mm","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Vecnum FreeQence Suspension Stem - 105mm","public_title":"105mm","options":["105mm"],"price":29900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_a Hire Lazer Compact Helmet
  • Capacity for 18kg of kit on low mount rack, 10kg on front mount rack and 6kg either side of 3-pack mountv=1664639518","options":["Size"],"media":[{"alt":null,"id":30594427158754,"position":1,"preview_image":{"aspect_ratio":0.857,"height":1536,"width":1316,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-08-29at11.06.52.png?v=1664639518"},"aspect_ratio":0.857,"height":1536,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-08-29at11.06.52.png?v=1664639518","width":1316},{"alt":null,"id":30594427191522,"position":2,"preview_image":{"aspect_ratio":0.857,"height":1536,"width":1316,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-08-29at11.07.13.png?v=1664639518"},"aspect_ratio":0.857,"height":1536,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-08-29at11.07.13.png?v=1664639518","width":1316},{"alt":null,"id":30594427224290,"position":3,"preview_image":{"aspect_ratio":0.857,"height":1536,"width":1316,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-08-29at11.07.22.png?v=1664639518"},"aspect_r
  • /p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003eVecnum free\u003cstrong\u003eQENCE - \u003c\/strong\u003eTHE ultimate suspension stem with the longest travel, damping an sag. Effectively absorbs up to 75% of vibrations and shocks.\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eScope of delivery: \u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e1x Suspension stem Vecnum freeQENCE in desired length\u003c\/p\u003e\n\u003cp\u003e1x Manual for operation, mounting, maintenance\u003c\/p\u003e\n\u003cp\u003e1x Gauge for testing the minimum distance from stem to head tube for freeQENCE 90\u003c\/p\u003e\n\u003ch3 class=\"text-align-center\" data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eTHE SUSPENSION STEM\u003c\/strong\u003e\u003c\/h3\u003e\n\u003cp class=\"text-align-center\" data-mce-fragment=\"1\"\u003eMore comfort, safety \u0026amp; fun.\u003cbr data-mce-fragment=\"1\"\u003eFor gravel, road, touring bikes,\u003cbr data-mce-fragment=\"1\ £0.00
  • Compatible with axles of 12 x 100mm, rotors of either 140mm or 160mmontrast to supension forks, the frame geometry remains unchanged. The freeQENCE parallelogram enables an internal spring linkage.\u003c\/p\u003e\n\u003cp class=\"\"\u003e \u003c\/p\u003e\n\u003ch2\u003e\n\u003cstrong\u003eTOP PERFORMANCE \u003c\/strong\u003e\u003cbr\u003eIN ALL HANDLEBAR POSITIONS\u003c\/h2\u003e\n\u003cp class=\"\"\u003eIn contrast to single pivot supsenion stems, the lever length does not influence the spring characteristics - due to the elaborate and complex parallelogram kinematics. No matter if you use your handebars hoods, drop or top position - suspension and damping performance always remain optimal.\u003c\/p\u003e\n\u003cp class=\"\"\u003e \u003c\/p\u003e\n\u003ch2\u003e\n\u003cstrong\u003e30 MM TRAVEL \u003c\/strong\u003e\u003cbr\u003eWITH DAMPING \u0026amp; SAG\u003c\/h2\u003e\n\u003cp class=\"\"\u003eFour unobtrusive but perfectly tuned high-tech elastomers protect you from harsh impacts and vibrations. The maximum suspension travel of 30mm is split into 20mm positive travel andFAQ#ProductTemplate--template--15326745395426__main { background: #ffffff; } .shop-pay-terms { --payment-terms-background-color: #ffffff }
  • ared to a standard stem. Without the disadvantages of a supension fork, your bike does not suffer ftom aerodynamic losses, it remains light and agile when sprinting and riding out of the saddle. The bike geometry remains unchanged. You do not need a lockout for your freeQENCE stem.\u003c\/p\u003e\n\u003cp class=\"\"\u003e \u003c\/p\u003e\n\u003ch2\u003e\n\u003cstrong\u003eSIMPLY\u003c\/strong\u003e\u003cbr\u003eUPGRADE YOUR BIKE\u003c\/h2\u003e\n\u003cp class=\"\"\u003eThe suspension stem freeQENCE is simply mounted like a standard a-head stem. Upgrading is easy and done in a few minutes. Thanks to the open face 4-screw clamping, nothing needs to be dismounted from your handlebars.\u003c\/p\u003e\n\u003cp class=\"\"\u003e \u003c\/p\u003e\n\u003ch2\u003e\n\u003cstrong\u003eIN 3 LENGTHS \u003c\/strong\u003e\u003cbr\u003eFOR ALL SUSPENSIONLESS BIKES\u003c\/h2\u003e\n\u003cp class=\"\"\u003eAvailable in 3 lengths - 90 mm, 105 mm, 120 mm. \u003cbr\u003eFor 1⅛ inch forks and all handlebar types with 31,8 mm diaQuestions and answers Black
  • Steerer tube taper of 1.125” to 1.5”\u003e\n\u003cp class=\"\"\u003e31,8mm diameter handlebars, including carbon, all widths and types\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp class=\"\"\u003eRequired minimum distance from stem to head tube has to be tested with gauge included in freeQENCE 90 package\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003ctable class=\"table table-bordered table-striped table-condensed table-hover\"\u003e\n\u003ctbody\u003e\n\u003ctr class=\"thead\"\u003e\n\u003cth scope=\"col\"\u003eType\u003cspan class=\"visible-inline-xs\"\u003e\u003cspan\u003e \u003c\/span\u003efreeQENCE\u003c\/span\u003e\n\u003c\/th\u003e\n\u003cth class=\"align-right\" scope=\"col\"\u003e\n\u003cspan class=\"hidden-inline-xs\"\u003efreeQENCE\u003cbr\u003e\u003c\/span\u003e90 mm\u003c\/th\u003e\n\u003cth class=\"align-right\" scope=\"col\"\u003e\n\u003cspan class=\"hidden-inline-xs\"\u003efreeQENCE\u003cbr\u003e\u003c\/span\u003e105 mm\u003c\/th\u003e\n\u003cth class=\"align-r
  • enter\" colspan=\"3\" rowspan=\"1\"\u003e+3\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eRider weight\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003eStepless and external adjustment from 50 to 120 kg\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eStem clamping height\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003e43 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr class=\"bottom\"\u003e\n\u003cth scope=\"row\"\u003e\u003ca href=\"https:\/\/www.vecnum.com\/en\/products\/freeqence#jump-1\"\u003e\u003csmall\u003eRequired for mounting\u003c\/small\u003e\u003cbr\u003eMinium shaft length\u003csup\u003e1\u003c\/sup\u003e\u003c\/a\u003e\u003c\/th\u003e\n\u003ctd class=\"align-center\" colspan=\"3\" rowspan=\"1\"\u003e42 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr class=\"bottom\"\u003e\n\u003cth scope=\"row\"\u003eHead tube diameter\u003c\/th\u003e\n\u003ctd class=\"align-center\" c
scope=\"row\"\u003eWarranty\u003c\/th\u003e\n\u003ctd colspan=\"3\" rowspan=\"1\"\u003e2 years\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e"}; window._RestockRocketConfig.variantsInventoryPolicy = {43414855287010 : "deny",43414855319778 : "deny",43414855352546 : "deny",}; window._RestockRocketConfig.variantsInventoryQuantity = {43414855287010 : parseInt("0"),43414855319778 : parseInt("0"),43414855352546 : parseInt("0"),}; window._RestockRocketConfig.variantsPreorderCount = {43414855287010 : parseInt(""),43414855319778 : parseInt(""),43414855352546 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {43414855287010 : null,43414855319778 : null,43414855352546 : null,}; window._RestockRocketConfig.variantsPreorderMaxCount = {43414855287010 : parseInt(""),43414855319778 : parseInt(""),43414855352546 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderMaxCountForMarket = {43414855287010 : null,43414855319778 : null,43414855
ocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; // 15 minutes in milliseconds const LIQUID_CACHE_MAX_AGE = 2 * 60 * 60; // 2 hours in seconds // Calculate Liquid cache freshness once at initialization const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt; // Validate timestamp and calculate cache age if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) { console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh'); window._RestockRocketConfig.isLiquidCacheFresh = true; } else { const now = Math.floor(Date.now() / 1000); // Current time in seconds const liquidCacheAge = now - liquidRenderedAt; // Age in seconds // Handle client clock ahead of server if (liquidCacheAge Hire Ortlieb 40L Pannier Bags

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 I'm looking to find out more information about a product, where can I find this?

< = 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; } // Check if translations are enabled but missing from cache // This handles the backfill period where DB has translations but metafield doesn't if (settings.multi_language_enabled) { if (!settings.translations) { // Translations enabled but no img src="//projektride.co.uk/cdn/shop/files/Screenshot_2025-02-04_at_16.10.28_2048x2048.png?v=1738685436" alt="Hope Tech 4 V4 (dose not include rotors)" class="mfp-zoom-in-cur" id="64118893379967">
age = Date.now() - updatedAt.getTime(); if (age
SETTINGS_CACHE_DURATION) { console.debug('STOQ - settings changed recently, skipping cache'); return null; } return settings; } catch (error) { console.debug('STOQ - Error checking settings cache:', error); return null; } } function createRestockRocketContainer() { const restockRocketContainer = document.createElement('div'); restockRocketContainer.id = 'restock-rocket'; document.body.appendChild(restockRocketContainer); } function createRestockRocketScript(scriptUrl) { const restockRocketScriptElement = document.createElement('script'); restockRocketScriptElement.setAttribute('defer', 'defer'); restockRocketScriptElement.src = scriptUrl; document.body.appendChild(restockRocketScriptElement); } createRestockRocketContainer() console.debug('STOQ - extension activated') function applyTranslations(settings) { try { // Skip translation logic entirely if multi-language is not enabled if (!settings || Please get in touch with a member of the team either by phone (a class="product__media product__media--featured" href="/collections/cockpit/products/hire-ortlieb-40l-pannier-bags" title="Hire Ortlieb 40L Pannier Bags" aria-label="Hire Ortlieb 40L Pannier Bags" style="background-image: url(//projektride.co.uk/cdn/shop/files/resize_width_1000_600x.jpg?v=1741085512)">
]; 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; } } // Setup event listener for cart selling plan updates // This must be called before any scripts are loaded to avoid race conditions function setupCartSellingPlanUpdater(settings) { // Setup listener regardless - updateCartSellingPlans has its own guards // This ensures cleanup happens even when preorders are disabled globally // Listen for stoq:inventory-data-loaded event dispatched by api.js window.addEventListener('stoq:inventory-data-loaded', function(event) { console.debug('STOQ - Inventory data loaded, updating cart selling plans'); if (window._RestockRocket01313745324span class="visually-hidden">Hire Ortlieb 40L Pannier Bags
hopify.shop, 'ngrok-skip-browser-warning': 'skip' }; if (window.Shopify?.theme?.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 request failed and we have cached settings (even if expired), use them as fallback if (cachedSettings) { console.debug('STOQ - using expired cached settings as fallback'); initializeScripts(cac) or email (>
fig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'index' && (settings.show_button_on_index || settings.preorder_index_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'search' && (settings.show_button_on_search || settings.preorder_search_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'page' && (settings.show_button_on_page || settings.preorder_page_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'product') { createRestockRocketScript(window._RestockRocketConfig.scriptUrlProduct); } else if(hijackIntegration) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enab[email protected]>
ProjektRide Bike Shop Edinburgh
£0.00
<
ProjektRide<
-product.js' window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019cd40b-736e-74a5-adbe-431365bfd910/restockrocket-1-465/assets/restockrocket-collection.js' window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; // 15 minutes in milliseconds const LIQUID_CACHE_MAX_AGE = 2 * 60 * 60; // 2 hours in seconds // Calculate Liquid cache freshness once at initialization const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt; // Validate timestamp and calculate cache age if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) { console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh'); window._RestockRocketConfig.isLiquidCacheFresh = true; } else { cons
<

<

translation data in metafield // Metafield hasn't been backfilled yet - force refresh console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh'); return null; } // Translations object exists in metafield - cache is valid // If current locale isn't translated, applyTranslations will gracefully use default locale from base fields if (window._RestockRocketConfig.normalizedLocale && !Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) { console.debug('STOQ - locale not explicitly translated, will use default language from cache'); } // Don't return null - continue using cache even for untranslated locales } const updatedAt = new Date(settings.updated_at); if (isNaN(updatedAt.getTime())) { console.debug('STOQ - Invalid updated_at date format in settings'); return null; } const

<<
!settings.multi_language_enabled) { return settings; } if (!settings.translations) { console.debug('STOQ - No translations found, skipping translation'); return settings; } const normalizedLocale = window._RestockRocketConfig.normalizedLocale; const translations = settings.translations; if (!normalizedLocale) { // No matching locale has translations; drop payload to save memory console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {})); delete settings.translations; return settings; } console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); const translatedFields = translations[normalizedLocale]; if (translatedFields && typeof translatedFields === 'object') { Object.keys(translatedFields).forEach(function(key) { const value = translatedFields[key
&& window._RestockRocket.updateCartSellingPlans) { window._RestockRocket.updateCartSellingPlans() .then(hasUpdates => { if (hasUpdates) { console.debug('STOQ - cart selling plans updated successfully'); } else { console.debug('STOQ - no cart selling plan updates needed'); } }) .catch(error => { console.error('STOQ - error updating cart selling plans:', error); }); } }); } // First try to get settings from metafields with expiry check const cachedSettings = window._RestockRocketConfig.cachedSettings; const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; if (validCachedSettings) { console.debug('STOQ - using cached settings'); initializeScripts(validCachedSettings); } else { console.debug('STOQ - fetching fresh settings'); const headers = { 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.S
  • hedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function initializeScripts(settings) { settings = applyTranslations(settings); window._RestockRocketConfig.settings = settings; console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); // Setup cart selling plan updater BEFORE loading any scripts to avoid race conditions setupCartSellingPlanUpdater(settings); if(settings.enable_app) { const hijackIntegration = window._RestockRocketConfig.integrations.find(function(integration) { return integration.type === 'hijack' && integration.enabled && integration.page_types.includes(window._RestockRocketConfig.pageType); }) if(window._RestockRocketConfig.pageType === 'collection' && (settings.show_button_on_collection || settings.preorder_collection_enabled)) { createRestockRocketScript(window._RestockRocketCon
Braided