

10100
$999.00
InStock
9992
In stock
• 2-3 days delivery

GTw Avalanche 3.0 Disc Ladies
10123
$379.00
InStock
417
In stock
• 2-3 days delivery

Schwinn Sid Coasting Bike
10014
$349.00
InStock
466
In stock
• 2-3 days delivery

Scattante CFR Elite
10003
$1,799.00
InStock
9999
In stock
• 2-3 days delivery

Mongoose Ritual Street (T2)
10096
$1,000.00
InStock
9838
In stock
• 2-3 days delivery

Mongoose Ritual Dirt-Hi Mountain Bike (T5)
10125
$799.00
InStock
781
In stock
• 2-3 days delivery

Nirve Forty-Nine 3-Speed Cruiser Bike
10141
$598.00
InStock
10000
In stock
• 2-3 days delivery

Mongoose Crossway 450 Disc Lady
10020
$399.00
InStock
2010
In stock
• 2-3 days delivery

Mongoose Tyax Comp Disc (T3)
10001
$10,007.00
InStock
965
In stock
• 2-3 days delivery

Montague 34XZA
20005
$999.00
InStock
840
In stock
• 2-3 days delivery

Mongoose Crossway 450 Disc
10005
$399.00
InStock
1831
In stock
• 2-3 days delivery

K2 T:Nine Twister Ladies Road Bike cc
10101
$849.00
InStock
97
In stock
• 2-3 days delivery

K2 Merge Road Bike cc
10103
$649.00
InStock
197
In stock
• 2-3 days delivery

K2 Mod 3.0 Road Bike
10104
$899.00
InStock
196
In stock
• 2-3 days delivery

GT GTR Series Three Road Bike
10108
$599.00
InStock
190
In stock
• 2-3 days delivery

GT GTR Type CX Road Bike
10111
$1,349.00
InStock
10000
In stock
• 2-3 days delivery

Nirve Classic Single Speed Bike
10138
$290.00
OutOfStock
Out of stock

GT Peace Single Speed
10016
$4,995.00
InStock
993
In stock
• 2-3 days delivery

Mongoose Canaan Comp (T4)
10017
$1,999.00
InStock
344
In stock
• 2-3 days delivery

San Diego Aztec
10025
$299.00
InStock
396
In stock
• 2-3 days delivery

E-totem WS20
20003
$1,199.00
InStock
617
In stock
• 2-3 days delivery

Performance Liberty City Cycling Cap
10098
$14.99
InStock
9998
In stock
• 2-3 days delivery

Castelli Logo Bandana
10099
$16.99
InStock
97
In stock
• 2-3 days delivery

Performance Classic Sleeveless Jersey
10148
$10.00
InStock
655
In stock
• 2-3 days delivery

Schwinn Evolution IC Sleeveless Jersey
10149
$24.99
InStock
3567
In stock
• 2-3 days delivery

Performance Elite Short
10150
$55.00
InStock
759
In stock
• 2-3 days delivery

Fox Mojave Glove
10152
$24.99
InStock
433
In stock
• 2-3 days delivery

Adidas adiStar Glove
10153
$31.00
InStock
10000
In stock
• 2-3 days delivery

Race Face Deus XC Glove
10154
$40.00
InStock
98
In stock
• 2-3 days delivery

Pearl Izumi MicroSensor Balaclava
10161
$25.00
InStock
100
In stock
• 2-3 days delivery

Pearl Izumi Calien Toes
10162
$15.00
OutOfStock
Out of stock

Terry Velocity Short Sleeve Jersey
10059
$62.00
InStock
25919
In stock
• 2-3 days delivery

Cannondale Featherweight Jersey
10060
$49.99
InStock
10000
In stock
• 2-3 days delivery

Pearl Izumi Women’s Whisper Vest
10063
$64.99
InStock
544
In stock
• 2-3 days delivery

Louis Garneau Atmos 2 Vest
10068
$34.99
InStock
487
In stock
• 2-3 days delivery

Shimano SH-R075 Road Shoe
10079
$59.99
InStock
1960
In stock
• 2-3 days delivery

Pearl Izumi X-Alp Seek MTB Shoe
10083
$84.99
InStock
148
In stock
• 2-3 days delivery

Shimano SH-M122 MTB Shoe
10084
$79.99
InStock
979
In stock
• 2-3 days delivery

Terry Women's Rosie Saddle
10091
$64.99
InStock
97
In stock
• 2-3 days delivery

Terry Women’s Butterfly Saddle
10092
$89.99
InStock
48
In stock
• 2-3 days delivery

Selle Italia Flite Gel Flow Saddle
10093
$159.99
InStock
39
In stock
• 2-3 days delivery

The Seat by Ergo - Lycra Gel Saddle
10094
$39.99
InStock
234
In stock
• 2-3 days delivery

Scattante XRL Team Frame
10007
$299.00
InStock
485
In stock
• 2-3 days delivery

Mavic Crossland Disc Front Wheel
10163
$80.00
InStock
3456
In stock
• 2-3 days delivery

Lynskey House Blend PRO Cross Frame
10165
$1,994.99
InStock
200
In stock
• 2-3 days delivery

Performance Aluminum Frame
10166
$150.00
InStock
82
In stock
• 2-3 days delivery

Ritchey Break-Away Steel Road Frame
10167
$1,199.99
InStock
789
In stock
• 2-3 days delivery

Selle San Marco Arrowhead Saddle
10169
$115.00
OutOfStock
Out of stock

Crank Brothers 5050 XX Pedal
10170
$130.00
InStock
193
In stock
• 2-3 days delivery

Crank Brothers Acid 2 Pedal
10171
$239.99
InStock
191
In stock
• 2-3 days delivery

Crank Brothers Eggbeater C Pedal
10172
$90.00
InStock
2340
In stock
• 2-3 days delivery

Shimano Ultegra 6600/Mavic Wheelset
10173
$28,000.00
InStock
1234
In stock
• 2-3 days delivery

Easton EA90 SLX Wheelset
10174
$599.99
InStock
99
In stock
• 2-3 days delivery

Selle San Marco Women’s Saddle
10176
$85.00
InStock
688
In stock
• 2-3 days delivery

Scattante SSR Road Fork
10028
$99.99
InStock
196
In stock
• 2-3 days delivery

Lynskey House Blend R320
10033
$2,384.99
InStock
100
In stock
• 2-3 days delivery

Shimano Ultegra FC-6500 39T
10036
$19.99
InStock
457
In stock
• 2-3 days delivery

Shimano Dura-Ace FC-7800 39T
10038
$59.99
OutOfStock
Out of stock

Shimano Dura-Ace FC-7800 53T
10039
$119.99
InStock
395
In stock
• 2-3 days delivery

Forté Titan Rear Wheel
10073
$89.99
InStock
45
In stock
• 2-3 days delivery

Easton EA50 Wheelset
10074
$299.99
InStock
3444
In stock
• 2-3 days delivery

Shimano Dura-Ace WH-7801-Carbon 50 Tubular Wheelset
10075
$1,249.99
InStock
345
In stock
• 2-3 days delivery

Forté Loco Wheelset
10076
$169.98
InStock
97
In stock
• 2-3 days delivery

Forté ATB Comp Pedal
10088
$24.99
InStock
48
In stock
• 2-3 days delivery

Time ATAC XS Carbon MTB Pedal
10089
$234.99
InStock
69
In stock
• 2-3 days delivery

Bell Bellistic Helmet
10095
$44.99
InStock
10000
In stock
• 2-3 days delivery

Wald Lift-Off Basket
10116
$24.99
InStock
213
In stock
• 2-3 days delivery

Sunlite Willow Classic Basket
10118
$19.99
InStock
345
In stock
• 2-3 days delivery

Blackburn EX-1 Expedition Rack
10119
$45.00
InStock
578
In stock
• 2-3 days delivery

Bell Alchera Euro Road Helmet
10040
$49.95
InStock
10000
In stock
• 2-3 days delivery

Giro Atmos Road Helmet
10041
$68.99
InStock
4566
In stock
• 2-3 days delivery

Bell Delirium Euro MTB Helmet
10042
$54.99
InStock
4259
In stock
• 2-3 days delivery

Bell Triton Sport Helmet
10043
$34.99
InStock
285
In stock
• 2-3 days delivery

Profect Armor Old School BMX Helmet
10045
$14.99
InStock
11
In stock
• 2-3 days delivery

Prologue Photochromatic Multi-Lens
10046
$39.99
InStock
1143
In stock
• 2-3 days delivery

Performance Vector Multi-Lens
10047
$29.99
InStock
1031
In stock
• 2-3 days delivery

NiteRider Classic Halogen Headlight
10054
$149.99
InStock
300
In stock
• 2-3 days delivery

Cat Eye Compact Safety Taillight
10055
$12.99
InStock
200
In stock
• 2-3 days delivery

Ascent Jet Set Head/Taillight Combo
10056
$190.00
InStock
400
In stock
• 2-3 days delivery

Lightweights See Red Reflectors
10057
$4.00
InStock
400
In stock
• 2-3 days delivery

Tifosi Stelvio Fototec Eyewear
10058
$59.99
InStock
440
In stock
• 2-3 days delivery

SCULTURA 9000-E
6110830688M
$8,285.00
OutOfStock
Out of stock

SPEEDER 900 METALLIC BLACK/SILVER GOLD XS 47CM
6110863797M
$2,585.00
InStock
230
In stock
• 2-3 days delivery

SPEEDER 500 MATT ANTHRACITE/BLACK/BLUE XS 47CM
6110863850M
$2,255.00
InStock
483
In stock
• 2-3 days delivery

SPEEDER 400 MATT BLACK/GLOSSY BLACK XS 47CM
6110863913M
$1,975.00
InStock
715
In stock
• 2-3 days delivery

SPEEDER 300 ANTHRACITE/BLACK XS 47CM
6110863979M
$1,688.00
InStock
642
In stock
• 2-3 days delivery

SPEEDER 200 MATT BLACK/SILVER XS 47CM
6110864033M
$1,155.00
InStock
390
In stock
• 2-3 days delivery

E-SPRESSO CITY 300
6110865216M
$5,555.00
InStock
45
In stock
• 2-3 days delivery

E-SPRESSO CITY 500
6110865313M
$7,250.00
InStock
596
In stock
• 2-3 days delivery

E-SPRESSO CC 400 SE
6110865603M
$7,885.00
InStock
14
In stock
• 2-3 days delivery

E-SPRESSO CITY 400
6110866927M
$8,225.00
InStock
11
In stock
• 2-3 days delivery

E-BIG TOUR 400EQ
6110866994M
$4,285.00
InStock
35170
In stock
• 2-3 days delivery

E-BIG TOUR 600EQ
6110867155M
$5,675.00
InStock
1979
In stock
• 2-3 days delivery

E-ONE SIXTY 700
6110868996M
$5,000.00
InStock
2363
In stock
• 2-3 days delivery

E-ONE SIXTY 8000
6110869146M
$8,650.00
InStock
5564
In stock
• 2-3 days delivery
Error executing template "Designs/Swift/Paragraph/Swift_ProductDefaultImage.cshtml" System.NullReferenceException: Object reference not set to an instance of an object. at CompiledRazorTemplates.Dynamic.RazorEngine_c33a64dc569e43748f758163674cef19.<>c__DisplayClass0_0.<ExecuteAsync>b__2(MediaViewModel x) at System.Collections.Generic.List`1.RemoveAll(Predicate`1 match) at CompiledRazorTemplates.Dynamic.RazorEngine_c33a64dc569e43748f758163674cef19.ExecuteAsync() at RazorEngine.Templating.TemplateBase.Run(ExecuteContext context, TextWriter reader) at RazorEngine.Templating.RazorEngineCore.RunTemplate(ICompiledTemplate template, TextWriter writer, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag) at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer) at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter) at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, Type modelType, Object model, DynamicViewBag viewBag) at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template) at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template) at Dynamicweb.Rendering.Template.RenderRazorTemplate()
1 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.ParagraphViewModel> @using Dynamicweb.Ecommerce.ProductCatalog @using Dynamicweb.Ecommerce.CustomerExperienceCenter.Favorites @{ ProductViewModel product = null; if (Dynamicweb.Context.Current.Items.Contains("ProductDetails")) { product = (ProductViewModel)Dynamicweb.Context.Current.Items["ProductDetails"]; } else if (Pageview.Page.Item["DummyProduct"] != null && Pageview.IsVisualEditorMode) { var pageViewModel = Dynamicweb.Frontend.ContentViewModelFactory.CreatePageInfoViewModel(Pageview.Page); ProductListViewModel productList = pageViewModel.Item.GetValue("DummyProduct") != null ? pageViewModel.Item.GetValue("DummyProduct") as ProductListViewModel : new ProductListViewModel(); if (productList?.Products is object) { product = productList.Products[0]; } } } @if (product is object) { string imagePath = product?.DefaultImage?.Value ?? ""; string imagePathUrlEncoded = Dynamicweb.Context.Current.Server.UrlEncode(imagePath); string ratio = Model.Item.GetRawValueString("ImageAspectRatio", ""); ratio = ratio != "0" ? ratio : ""; string ratioCssClass = ratio != "" ? " ratio" : ""; string ratioVariable = ratio != "" ? "--bs-aspect-ratio: " + ratio : ""; string width = Model.Item.GetRawValueString("Width", "auto"); int smallImageSize = 640; int largeImageSize = width == "auto" ? 1280 : Convert.ToInt32(width); string ImageObjectFit = Model.Item.GetRawValueString("ImageObjectFit", "contain"); string imagePathXs = "/Admin/Public/GetImage.ashx?width=" + smallImageSize + "&image=" + imagePathUrlEncoded + "&format=webp"; string imagePathS = "/Admin/Public/GetImage.ashx?width=" + largeImageSize + "&image=" + imagePathUrlEncoded + "&format=webp"; string imagePathFallBack = "/Admin/Public/GetImage.ashx?width=" + largeImageSize + "&image=" + imagePathUrlEncoded + "&format=webp"; var badgeParms = new Dictionary<string, object>(); badgeParms.Add("size", "h7"); badgeParms.Add("saleBadgeType", Model.Item.GetRawValue("SaleBadgeType")); badgeParms.Add("saleBadgeCssClassName", Model.Item.GetRawValue("SaleBadgeDesign")); badgeParms.Add("newBadgeCssClassName", Model.Item.GetRawValue("NewBadgeDesign")); badgeParms.Add("newPublicationDays", Model.Item.GetInt32("NewPublicationDays")); badgeParms.Add("campaignBadgesValues", Model.Item.GetList("CampaignBadges")?.GetRawValue().OfType<string>().ToList()); string badgeSize = Model.Item.GetRawValueString("BadgeSize", "fs-2"); bool showFavoritesSelector = !string.IsNullOrEmpty(Model.Item.GetString("ShowAddToFavorites")) ? Model.Item.GetBoolean("ShowAddToFavorites") : false; string anonymousUsersLimitations = Pageview.AreaSettings.GetRawValueString("AnonymousUsers", ""); bool anonymousUser = Pageview.User == null; var favoriteParameters = new Dictionary<string, object>(); if (!anonymousUser && showFavoritesSelector) { int defaultFavoriteListId = 0; IEnumerable<FavoriteList> favoreiteLists = Pageview.User.GetFavoriteLists(); if (favoreiteLists.Count() == 1) { foreach (FavoriteList list in favoreiteLists) { defaultFavoriteListId = list.ListId; } } favoriteParameters.Add("ListId", defaultFavoriteListId); } MediaViewModel alternativeImage = new MediaViewModel(); if (Model.Item.GetBoolean("ShowAlternativeImageOnHover")) { var selectedImageCategories = Model.Item.GetList("GetAlternativeImageFrom")?.GetRawValue().OfType<string>().ToList(); List<MediaViewModel> allAssetsImages = product.AssetCategories.Where(x => selectedImageCategories.Contains(x.SystemName)).SelectMany(x => x.Assets).ToList(); allAssetsImages.RemoveAll(x => x.Value == product.DefaultImage.Value); alternativeImage = allAssetsImages.FirstOrDefault(); } string altImagePathXs = string.Empty; string altImagePathS = string.Empty; if (!string.IsNullOrEmpty(alternativeImage?.Value)) { altImagePathXs = "/Admin/Public/GetImage.ashx?width=" + smallImageSize + "&image=" + Dynamicweb.Context.Current.Server.UrlEncode(alternativeImage.Value) + "&format=webp"; altImagePathS = "/Admin/Public/GetImage.ashx?width=" + largeImageSize + "&image=" + Dynamicweb.Context.Current.Server.UrlEncode(alternativeImage.Value) + "&format=webp"; } @* Theme settings *@ string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; string themeBorder = !string.IsNullOrWhiteSpace(theme) ? "border: 1px solid rgba(0,0,0,0)" : ""; string themePadding = !string.IsNullOrWhiteSpace(theme) ? "p-2 p-lg-3" : ""; string imageId = "ProductImage_" + product.Id + product.VariantId.Replace(".", "_"); bool saleBadgeEnabled = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("SaleBadgeDesign")) && Model.Item.GetRawValueString("SaleBadgeDesign") != "none" ? true : false; bool newBadgeEnabled = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("NewBadgeDesign")) && Model.Item.GetRawValueString("NewBadgeDesign") != "none" ? true : false; DateTime createdDate = product.Created.Value; bool showBadges = saleBadgeEnabled && product.Discount.Price != 0 ? true : false; showBadges = (newBadgeEnabled && Model.Item.GetInt32("NewPublicationDays") == 0) || (newBadgeEnabled && (createdDate.AddDays(Model.Item.GetInt32("NewPublicationDays")) > DateTime.Now)) ? true : showBadges; showBadges = !string.IsNullOrEmpty(Model.Item.GetRawValueString("CampaignBadges")) ? true : showBadges; string fullWidth = width == "auto" ? "w-100" : ""; string customWidth = width != "auto" ? "style=\"width: " + width + "px\"" : "style=\"min-width: 60px\""; if (!string.IsNullOrEmpty(imagePath)) { <div class="h-100 @fullWidth @theme position-relative item_@Model.Item.SystemName.ToLower()" @customWidth> <div class="ratio" style="@(ratioVariable)"> <div class="d-flex justify-content-center align-items-center"> @if (imagePath.StartsWith("/Files/", StringComparison.OrdinalIgnoreCase)) { <img id="@imageId" srcset=" @imagePathXs @(smallImageSize)w, @imagePathS @(largeImageSize)w" sizes="(max-width: 992px) 50vw, 25vw" src="@imagePathFallBack" @if (Model.Item.GetBoolean("ShowAlternativeImageOnHover") && !string.IsNullOrEmpty(alternativeImage?.Value)) { <text> data-alternative-image=" @altImagePathXs @(smallImageSize)w, @altImagePathS @(largeImageSize)w" onmouseover="swift.Image.swapImage(event)" onmouseout="swift.Image.swapImage(event)" </text> } loading="lazy" decoding="async" class="h-100 w-100 @themePadding" style="object-fit: @ImageObjectFit; @themeBorder" alt="@product.Name"> } else { <img src="@product.DefaultImage.Value" loading="lazy" class="h-100 w-100 @themePadding" style="object-fit: contain; @themeBorder" alt="@product.Name"> } </div> </div> @if (showBadges) { <div class="position-absolute top-0 left-0 p-2 p-lg-3 ps-0 ps-lg-0 @badgeSize"> @RenderPartial("Components/EcommerceBadge.cshtml", product, badgeParms) </div> } @if (!anonymousUser) { if (showFavoritesSelector) { <div class="position-absolute top-0 end-0 my-3" style="z-index: 2"> @RenderPartial("Components/ToggleFavorite.cshtml", product, favoriteParameters) </div> } } </div> } } else if (Pageview.IsVisualEditorMode) { <div class="alert alert-dark m-0">@Translate("No products available")</div> }
E-ONE SIXTY 9000
6110869243M
$10,899.00
InStock
100
In stock
• 2-3 days delivery

E-ONE SIXTY 10K
6110869298M
$12,895.00
InStock
1494
In stock
• 2-3 days delivery

SCULTURA 8000-E
6110873102M
$7,285.00
InStock
10
In stock
• 5-7 days delivery

SCULTURA 7000-E
6110873384M
$6,599.00
InStock
28
In stock
• 2-3 days delivery

SCULTURA 6000
6110873511M
$4,885.00
InStock
25
In stock
• 2-3 days delivery

New Performance Elite Short
11150
$55.00
InStock
87
In stock
• 2-3 days delivery

Test No Discounts (incl VAT)
test012
$100.00
InStock
967
In stock
• 2-3 days delivery

Performance Body-Secure Jersey
10156
$85.00
InStock
10000
In stock
• 2-3 days delivery

Lock DIGITS Cable Lock
2134002617
$61.00
InStock
115
In stock
• 2-3 days delivery

Lock KEYS Cable Lock
2134002640
$52.00
InStock
99
In stock
• 2-3 days delivery

Test Discount product (incl VAT)
test02
$100.00
InStock
998
In stock
• 2-3 days delivery

Test Variant product (incl VAT)
test03
$100.00
InStock
5999
In stock
• 2-3 days delivery

Test product with min. quantity
test05
$25.00
InStock
990
In stock
• 2-3 days delivery

Test variant family
test06
$0.00
InStock
100
In stock
• 2-3 days delivery

Product never out of stock
test04
$100.00
Available in stock

Test No Discounts (excl VAT)
test011
$100.00
InStock
964
In stock
• 2-3 days delivery

Dr. Jackson's rain stain
$100.00
InStock
2443
In stock
• 2-3 days delivery
112 out of 112 products
112 out of 112 products