Your Trusted Partner in Bicycle Solutions
We are passionate about cycling and committed to providing businesses with high-quality bicycles and equipment. Our mission is to empower retailers, distributors, and cycling enthusiasts with the best products in the industry.
Error executing template "Designs/Swift-v2/Components/VideoPlayer.cshtml" System.UnauthorizedAccessException: Access to the path 'D:\dynamicweb.net\Solutions\actronair.dw10.dynamicweb.cloud\wwwroot\Files\Templates\Designs\Swift-v2\Translations.xml' is denied. at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at System.Xml.XmlTextWriter..ctor(String filename, Encoding encoding) at Dynamicweb.Rendering.Translation.Source.WriteDocument(XmlDocument document) at Dynamicweb.Rendering.Translation.Source.Save() at Dynamicweb.Rendering.Translation.Source.UpdateTranslationSource(Source source, IEnumerable`1 newKeys, String designName, IEnumerable`1 cultures) at Dynamicweb.Rendering.Template.TranslateText(String text, String defaultValue, String cultureName) at CompiledRazorTemplates.Dynamic.RazorEngine_08236ca9bdd644dc808d3f4c7f16a7ab.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.VideoViewModel> 2 @using System.IO; 3 @using Dynamicweb.Frontend 4 5 @if(!string.IsNullOrEmpty(Model.Path)) 6 { 7 <swift-video-player itemscope itemtype="https://schema.org/VideoObject"> 8 <figure class="m-0 ratio ratio-16x9"> 9 <meta itemprop="name" content="@GetViewParameterString("VideoName")" /> 10 <meta itemprop="description" content="@GetViewParameterString("VideoDescription")" /> 11 <meta itemprop="contentUrl" content="@Model.Path" /> 12 13 @if (!string.IsNullOrEmpty(Model.Thumbnail)) 14 { 15 <meta itemprop="thumbnailUrl" content="@Model.Thumbnail" /> 16 } 17 18 @if (Model.IsExternalLink()) 19 { 20 <iframe src="@Model.ToEmbedUrl()" title="@GetViewParameterString("VideoName")" frameborder="0" allow="fullscreen; picture-in-picture; autoplay; clipboard-write; encrypted-media; web-share"></iframe> 21 } 22 else 23 { 24 <video preload="auto" data-swift-video poster="@Model.Thumbnail"> 25 <source src="@Model.Path" type="@Model.GetVideoType()"> 26 </video> 27 <button type="button" aria-label="@Translate("Play/Pause video")" data-swift-video-play-btn></button> 28 } 29 </figure> 30 </swift-video-player> 31 } 32
Quality
We believe that quality should never be compromised. All our products are sourced from trusted manufacturers who share our commitment to excellence.
Sustainability
We are committed to promoting environmentally friendly practices, from sourcing materials to packaging.
Customer Focus
Our customers are at the heart of everything we do. We strive to understand their needs and provide tailored solutions that enhance their business operations.
Partner with us
We believe in building long-lasting partnerships. By working together, we can help your business thrive in the competitive cycling market.
Ready to take the next step? Contact Us to learn more about our offerings and how we can support your business.
500k
Shoppers
4,500+
Cities
650+
Retail Brands
Our Management
Get in Touch
We’re here to help! If you have any questions or need assistance, please reach out to us through the form below or contact one of our dedicated sales representatives.