Herren

Gefütterte Jacke | Stretch | Damen

No. 0897

Herren

 81,75 ( 81,75 exkl. MwSt. )

Attraktive wattierte Stretch-jacke mit leichten, schmalen, diagonalen Kanälen und Seitenteilen aus dehnbarer Qualität, die für hohen Tragekomfort und einen sportlichen Look sorgen....Mehr anzeigen
Error executing template "Designs/identity_v2/ecom/product/partials/add-to-cart.cshtml"
System.ArgumentException: An item with the same key has already been added.
   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at Co3.ID.Dw.Models.Frontend.Ecommerce.IdentityProduct.get_ImagePrimary()
   at CompiledRazorTemplates.Dynamic.RazorEngine_2193e61bc1524c8d90175fd1eb021221.<>c__DisplayClass0_0.<VariantOption>b__0(TextWriter __razor_helper_writer) in D:\dynamicweb.net\Solutions\id.espresso4.dk-e5\Files\Templates\Designs\identity_v2\ecom\product\partials\add-to-cart.cshtml:line 193
   at CompiledRazorTemplates.Dynamic.RazorEngine_2193e61bc1524c8d90175fd1eb021221.Execute() in D:\dynamicweb.net\Solutions\id.espresso4.dk-e5\Files\Templates\Designs\identity_v2\ecom\product\partials\add-to-cart.cshtml:line 126
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits ViewModelTemplate<Co3.ID.Dw.Models.Frontend.Ecommerce.IdentityProduct> 2 @using Co3.Espresso.Base.Extensions 3 @using Co3.Espresso.Website.Models.FrontEnd.Ecommerce 4 @using Co3.Espresso.Website.Models.FrontEnd.Settings 5 @using Co3.ID.Dw.Helpers 6 @using Co3.ID.Dw.Models.Frontend.Ecommerce 7 @using Dynamicweb.Ecommerce.Common 8 @using Dynamicweb.Ecommerce.Variants 9 @using Dynamicweb.Ecommerce.Products 10 @using Dynamicweb.Frontend 11 @using Dynamicweb.Rendering 12 @using Dynamicweb.Security.UserManagement 13 @using ProductService = Co3.ID.Dw.Services.ProductService 14 @using System.Web 15 16 @{ 17 var shopContext = SiteContext.CurrentSiteContext(); 18 string alternativeAction = string.IsNullOrEmpty(PageView.Current().Area.Item["EcommerceAlternativeCallToAction"]?.ToString()) == false ? PageView.Current().Area.Item["EcommerceAlternativeCallToAction"].ToString() : string.Empty; 19 20 21 } 22 23 24 25 <form action="/system/data/cart" class="e-product-form js-e-product-form js-e-product-form-addtocart pb-1" method="post"> 26 <input name="CartCmd" type="hidden" value="Add"> 27 <input name="ProductID" type="hidden" value="@Model.Id"> 28 <input name="VariantID" type="hidden" value="@Model.VariantId"> 29 <input name="Quantity" type="hidden" value="1"> 30 <input name="Redirect" type="hidden" value=""> 31 <input name="Name" type="hidden" value="@Model.Name"> 32 <input name="Number" type="hidden" value="@Model.Number"> 33 <input name="Price" type="hidden" value="@Model.Price.Value.ToJavaScript()"> 34 <input name="CurrencyCode" type="hidden" value="@Model.Price.CurrencyCode"> 35 36 37 @if (Model.VariantGroups.Any()) 38 { 39 <div class=""> 40 @foreach (KeyValuePair<string, EspressoVariantGroup> variantGroup in Model.VariantGroups) 41 { 42 bool isColorGroup = variantGroup.Value.Id == Co3.ID.Data.App.Constants.PRODUCT_VARIANT_GROUP_COLOR_ID; 43 string groupClassNameAppend = isColorGroup ? "color" : "size"; 44 int variantTake = 7; 45 46 47 string variantInputFieldName = string.Format("{0}_{1}", Model.Id, variantGroup.Value.Id); 48 <div class="form-group js-e-product-form-variant-form-group e-product-form-variant-form-group-@groupClassNameAppend js-e-product-form-variant-form-group-@groupClassNameAppend" data-auto-select="true" data-variant-take="@variantTake" @(((shopContext == ShopType.B2B || shopContext == ShopType.CustomerShop || !PageView.Current().IsBasketEnabled()) && groupClassNameAppend == "size") ? "hidden" : string.Empty)> 49 <label class="form-control-label d-flex font-weight-semibold small @(isColorGroup == false ? "d-flex justify-content-between" : string.Empty)"> 50 @Translate(string.Format("eCom - Product Details - variant header - {0}", variantGroup.Value.Name), variantGroup.Value.Name) 51 @if (isColorGroup == true) 52 { 53 <span class="js-identity-selected-color-variant-text">@Model.ColorVariantText</span> 54 55 if (Model.SizeGuidePageId > 0) 56 { 57 if (shopContext == ShopType.B2B || shopContext == ShopType.CustomerShop) 58 { 59 if (Model.SizeGuidePageId > 0 || Model.BrandCode == "PRIVATELAB") 60 { 61 <a class="ml-auto text-muted font-weight-normal link-underline" data-toggle="modal" data-target="#identity-size-guide-modal"> 62 @Translate("eCom - Product Details - size guide -link -text", "Størrelsesguide") 63 </a> 64 } 65 } 66 else 67 { 68 <a class="ml-auto text-muted font-weight-normal link-underline" data-toggle="modal" data-target="#identity-size-guide-modal"> 69 @Translate("eCom - Product Details - size guide -link -text", "Størrelsesguide") 70 </a> 71 } 72 73 } 74 75 } 76 </label> 77 <div class="identity-variant-group d-flex"> 78 @{ 79 int variantCount = variantGroup.Value.Options.Count; 80 bool shouldWrapLast = variantCount > variantTake; 81 int variantIndex = 0; 82 string collapseId = string.Format("collapseExtraVariants_{0}", variantGroup.Value.Name); 83 84 IOrderedEnumerable<KeyValuePair<string, EspressoVariantOption>> variantGroupOptions = variantGroup.Value.Options.OrderBy(o => o.Key); 85 86 if (isColorGroup) 87 { 88 variantGroupOptions = variantGroup.Value.Options.OrderByDescending(o => o.Value.Id == variantGroup.Value.SelectedOptionId); 89 } 90 else 91 { 92 Dictionary<string, int> variantGroupOptionSortOrder = ProductService.Instance.GetVariantGroupOptionSortOrder(variantGroup.Value.Name); 93 variantGroupOptions = variantGroup.Value.Options.OrderBy(o => o.Value.Id != null && variantGroupOptionSortOrder.ContainsKey(o.Value.Id) ? variantGroupOptionSortOrder[o.Value.Id] : 99); 94 } 95 } 96 97 98 @foreach (KeyValuePair<string, EspressoVariantOption> variantOption in variantGroupOptions) 99 { 100 string variantInputFieldId = string.Format("{0}_{1}", variantInputFieldName, variantOption.Value.Id); 101 bool isSelected = variantOption.Value.Id == variantGroup.Value.SelectedOptionId; 102 string lastVariantIdBeforeWrap = string.Empty; 103 104 105 if (shouldWrapLast && variantIndex == variantTake) 106 { 107 lastVariantIdBeforeWrap = variantOption.Key; 108 109 <label class="custom-control custom-radio identity-variant-select-option js-identity-variant-select-option"> 110 <span class="custom-control-description disabled"> 111 <span class="@(isColorGroup ? "identity-variant-select-option-color" : "identity-variant-select-option-generic") js-identity-extra-variants-toggler" data-toggle="collapse" href="#@collapseId" role="button" aria-expanded="false"> 112 <span class="js-variant-hidden-count" data-default="@(variantCount - variantTake)">+@(variantCount - variantTake)</span> 113 </span> 114 </span> 115 </label> 116 117 @VariantOption(isColorGroup, isSelected, variantInputFieldId, variantInputFieldName, variantOption, true) 118 119 @:</div> 120 @:<div class="collapse js-identity-extra-variants-collapse" id="@collapseId"> 121 @:<div class="identity-variant-group d-flex"> 122 } 123 124 if (variantOption.Key != lastVariantIdBeforeWrap) 125 { 126 @VariantOption(isColorGroup, isSelected, variantInputFieldId, variantInputFieldName, variantOption) 127 } 128 129 if (shouldWrapLast && (variantIndex + 1) == variantCount) 130 { 131 <label class="custom-control custom-radio identity-variant-select-option"> 132 <span class="custom-control-description disabled"> 133 <span class="@(isColorGroup ? "identity-variant-select-option-color" : "identity-variant-select-option-generic")" data-toggle="collapse" href="#@collapseId" role="button" aria-expanded="false"> 134 <span class="variant-close-toggle"></span> 135 </span> 136 </span> 137 </label> 138 @:</div> 139 } 140 variantIndex++; 141 } 142 </div> 143 </div> 144 } 145 146 </div> 147 } 148 @if (PageView.Current().IsBasketEnabled()) 149 { 150 if (shopContext == ShopType.B2C) 151 { 152 <button class="btn btn-primary btn-lg btn-block position-relative" type="submit"> 153 @Translate("eCom Product - Add To Cart - Button", "Add to cart") 154 </button> 155 } 156 } 157 else 158 { 159 @alternativeAction 160 } 161 162 </form> 163 164 165 @helper VariantOption(bool isColorGroup, bool isSelected, string variantInputFieldId, string variantInputFieldName, KeyValuePair<string, EspressoVariantOption> variantOption, bool boolHide = false) 166 { 167 <label class="custom-control custom-radio identity-variant-select-option @(boolHide == true ? "js-identity-variant-select-option-hidden d-none" : string.Empty)"> 168 <input class="custom-control-input js-e-product-form-variant-group-input required" id="@variantInputFieldId" name="@variantInputFieldName" title="@HttpUtility.HtmlAttributeEncode(variantOption.Value.Name)" data-name="@HttpUtility.HtmlAttributeEncode(variantOption.Value.Name)" type="radio" value="@variantOption.Value.Id" @(isSelected ? "checked" : string.Empty)> 169 @* 170 @if (isColorGroup) 171 { 172 173 } 174 else 175 { 176 string variantComboId = string.Format("{0}.{1}", Model.VariantGroups[Co3.ID.Data.App.Constants.PRODUCT_VARIANT_GROUP_COLOR_ID].SelectedOptionId, variantOption.Value.Id); 177 IdentityProduct idProduct = ProductService.Instance.GetVariantByComboId(Model, variantComboId); 178 <input class="custom-control-input js-e-product-form-variant-group-input required" id="@variantInputFieldId" name="@variantInputFieldName" title="@variantOption.Value.Name" data-name="@variantOption.Value.Name" type="radio" value="@variantOption.Value.Id" @(isSelected ? "checked" : string.Empty) @(idProduct.Stock.Quantity> 0 ? string.Empty : "disabled")> 179 }*@ 180 <span class="custom-control-description"> 181 <div class="identity-corner-brackets-container identity-corner-brackets-all border-primary is-corner-thumb p-0"> 182 <div class="identity-corner-brackets-wrapper border-primary"> 183 184 185 186 187 188 @if (isColorGroup) 189 { 190 EspressoVariantGroup sizeVariantGroup = Model.VariantGroups.FirstOrDefault(vg => vg.Key != Co3.ID.Data.App.Constants.PRODUCT_VARIANT_GROUP_COLOR_ID).Value; 191 string variantComboId = string.Format("{0}.{1}", variantOption.Value.Id, sizeVariantGroup.SelectedOptionId); 192 IdentityProduct idProduct = ProductService.Instance.GetVariantByComboId(Model, variantComboId); 193 EspressoProductImageUrl imageUrl = idProduct?.ImagePrimary; 194 195 if (imageUrl != null) 196 { 197 <span class="identity-variant-select-option-color js-variant-color-image" style="background-image: url(@imageUrl.Small);" data-image="@imageUrl.Small" data-name="@variantOption.Value.Name" data-toggle="tooltip" data-placement="top" title="@variantOption.Value.Name"></span> 198 } 199 else 200 { 201 <span class="identity-variant-select-option-generic"> 202 <span>@variantOption.Value.Name</span> 203 </span> 204 } 205 } 206 else 207 { 208 <span class="identity-variant-select-option-generic"> 209 <span class="js-variant-size-text">@variantOption.Value.Name</span> 210 </span> 211 } 212 213 214 </div> 215 </div> 216 </span> 217 </label> 218 } 219
Attraktive wattierte Stretch-jacke mit leichten, schmalen, diagonalen Kanälen und Seitenteilen aus dehnbarer Qualität, die für hohen Tragekomfort und einen sportlichen Look sorgen. Seitentaschen mit Reißverschluss. Attraktives Produkt mit hohem funktionalem Komfort
Gefütterte Jacke | Stretch | Damen
Gefütterte Jacke | Stretch | Damen
Gefütterte Jacke | Stretch | Damen
Gefütterte Jacke | Stretch | Damen
Gefütterte Jacke | Stretch | Damen
Gefütterte Jacke | Stretch | Damen
Gefütterte Jacke | Stretch | Damen

Mit Bedacht Waschen

Mit dem richtigen Waschen, Trocknen und Pflegen können Sie die Lebensdauer Ihrer Kleidung verlängern.

Zu unseren Tipps und Tricks


Keine Kleidung, die Ihren Bedürfnissen entspricht?

Mit einer Private-Label-Lösung haben Sie alle Möglichkeiten, Ihre eigenen Stile mit Ihrem Namen/Ihrer Marke zu entwerfen.

Finde mehr heraus

Everyday wear

More than sportswear

Passion for shirts

Made to last

Zeitlose Corporate Wear

Corporate Wear mit einem klassischen
und zeitlosen Design, das seit
1983 weiter verfeinert wurde

Gemeinsame Identität

Kleidung, die eine gemeinsame
Identität unterstreicht und den
Gemeinschaftssinn stärkt

Finden Sie Ihre Farbe

Wählen Sie aus mehr als 60
Farbvarianten – es ist garantiert auch
eine Farbe für Sie dabei

Qualität, die hält

Immer und immer wieder
verwendet zu werden – behält
die Passform und Farbe

Erklärung zur sozialen Verantwortung, vgl. § 99a des dänischen Rechnungsabschlussgesetzes". BCI cotton Unseren Verantwortungsbericht hier ansehen

keyboard_arrow_up