Ein kompakter Spender für eine Schachtel Einweghandschuhe. Das intelligente Design ermöglicht es Ihnen, die Handschuhe leicht zu erreichen und die Box zu wechseln. Geeignet für alle Colad- und Finixa-Handschuhe. Passt auf eine Rasterplatte mit einem Raster von 9,0 x 9,0 x 38 mm. Abmessungen: T 135 x B 270 x H 90 mm. Pro Stück.
Bewahren Sie Ihre Einweghandschuhe praktisch auf, damit sie immer in Reichweite sind!
Der Colad Handschuhspender ist eine praktische und elegante Lösung für die Aufbewahrung und den einfachen Zugriff auf Einweghandschuhe. Sein kompaktes und funktionales Design ist perfekt für Arbeitsumgebungen, in denen Effizienz und Organisation entscheidend sind.
Montieren Sie den Spender an einer strategischen Stelle innerhalb des Rastersystems, z. B. in der Nähe Ihrer Werkbank oder Ihres Werkzeugwagens, damit Ihre Handschuhe immer in Reichweite sind. Perfekt für den täglichen Einsatz in der Autoreparatur und anderen Werkstätten, wo Hygiene und Effizienz entscheidend sind.
Entscheiden Sie sich für den Colad Handschuhspender, wenn es um Einfachheit, Organisation und Benutzerfreundlichkeit geht.
Optimieren Sie Ihren Arbeitsbereich und sparen Sie Zeit bei Ihren Aufgaben!
Maximale Effizienz mit E²M
Dieses Produkt ist Teil der revolutionären E²M-Linie von Colad, das modulare System, das deinen Arbeitsplatz smarter und effizienter macht. Mit dem flexiblen Hook-and-Grid-System erhalten Sie in Sekunden Ihre perfekte Einrichtung, ganz ohne Werkzeug. Erfahren Sie mehr auf: www.colade2m.com.
Vorteile
- Hilft Ihnen, die Ordnung an Ihrem Arbeitsplatz aufrechtzuerhalten
- Kompaktes Design für eine optimale Ausnutzung des Arbeitsbereichs
- Einfacher Wechsel der Handschuhboxen
- Vielseitig, kann nach Bedarf zusammengestellt werden
- Für die Aufbewahrung einer Schachtel Einweghandschuhe konzipiert
- Robustes und langlebiges Design, kompatibel mit verschiedenen Handschuhmarken
- Passt auf eine Rasterplatte mit einem Raster von 9,0 x 9,0 x 38 mm
Produktdetails
- Marke
- Colad
- Nummer
- 1247060
- EAN
- 8714247084205
- Höhe
- 13,5
- Breite
- 27
- Tiefe
- 9
- Produktgewicht
- 0.82 kg
- Farbe
- RAL7005
- Material
- Stahl
- Verpackung
- Pro Stück
- Äußere Verpackung
- 10 Stück pro Karton
Error executing template "Designs/Swift/Paragraph/Finixa_ProductFieldDisplayGroupsAccordion.cshtml" System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index') at System.Collections.Generic.List`1.get_Item(Int32 index) at CompiledRazorTemplates.Dynamic.RazorEngine_0ceb976a0d3f42fb93eda67229545e43.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> 2 @using Dynamicweb.Ecommerce.ProductCatalog 3 @using System.Linq 4 5 @functions { 6 7 class ContentSetting 8 { 9 public FieldGroupViewModel FieldDisplayGroup { get; set; } 10 public string LayoutPath { get; set; } 11 12 public ContentSetting(FieldGroupViewModel fieldDisplayGroup, string layoutPath) 13 { 14 FieldDisplayGroup = fieldDisplayGroup; 15 LayoutPath = GetLayoutPathFormatted(layoutPath); 16 } 17 } 18 19 ProductViewModel GetProduct() 20 { 21 ProductViewModel product = null; 22 23 if (Dynamicweb.Context.Current.Items.Contains("ProductDetails")) 24 { 25 product = (ProductViewModel)Dynamicweb.Context.Current.Items["ProductDetails"]; 26 } 27 28 return product; 29 } 30 31 List<ContentSetting> GetContentSettings(ProductViewModel product) 32 { 33 var displayGroups = GetDisplayGroups(product); 34 string defaultLayout = Model.Item.GetRawValueString("Layout", "list"); 35 var contentSettings = displayGroups.Select(displayGroup => new ContentSetting(displayGroup, defaultLayout)).ToList(); 36 bool layoutsCustomized = Model.Item.GetBoolean("CustomizeLayouts"); 37 38 return layoutsCustomized ? GetContentSettingsCustomizedLayoutSelection(contentSettings) : contentSettings; 39 } 40 41 List<FieldGroupViewModel> GetDisplayGroups(ProductViewModel product) 42 { 43 bool hideFieldsWithZeroValue = Model.Item.GetBoolean("HideFieldsWithZeroValue"); 44 var selectedDisplayGroupSystemName = Model.Item.GetList("FieldDisplayGroups")?.GetRawValue().OfType<string>(); 45 var displayGroups = product.GetProductDisplayGroupFieldsByGroupSystemNames(selectedDisplayGroupSystemName, hideFieldsWithZeroValue); 46 47 return displayGroups.ToList(); 48 } 49 50 List<ContentSetting> GetContentSettingsCustomizedLayoutSelection(List<ContentSetting> contentSettings) 51 { 52 var selections = Model.Item.GetItems("FieldDisplayGroupLayoutSelector"); 53 54 foreach (var contentSetting in contentSettings) 55 { 56 foreach (var selection in selections) 57 { 58 string displayGroupSystemName = string.Empty; 59 string layoutPath = string.Empty; 60 61 foreach (var field in selection.Fields) 62 { 63 displayGroupSystemName = field.SystemName == "FieldDisplayGroups" ? field.GetRawValueString() : displayGroupSystemName; 64 layoutPath = field.SystemName == "Layout" ? field.GetRawValueString() : layoutPath; 65 } 66 67 if (displayGroupSystemName == contentSetting.FieldDisplayGroup.SystemName) 68 { 69 contentSetting.LayoutPath = GetLayoutPathFormatted(layoutPath); 70 } 71 } 72 } 73 74 return contentSettings; 75 } 76 77 public static string GetLayoutPathFormatted(string layout) 78 { 79 string layoutPathInCapitalCase = layout[0].ToString().ToUpper() + layout.Substring(1); 80 return $"Components/Specifications/{layoutPathInCapitalCase}.cshtml"; 81 } 82 83 } 84 85 @{ 86 var product = GetProduct(); 87 88 if (product is object) 89 { 90 var accordionContentSettings = GetContentSettings(product); 91 92 string title = Model.Item.GetString("Title"); 93 bool hideLabels = Model.Item.GetBoolean("HideFieldLabels"); 94 bool hideTitle = Model.Item.GetBoolean("HideTitle"); 95 string titleFontSize = Model.Item.GetRawValueString("TitleFontSize", "display-4"); 96 var templateParams = new Dictionary<string, object> 97 { 98 {"Size", "compact" }, 99 { "HideGroupHeaders", true }, 100 { "HideTitle", true } 101 }; 102 103 string theme = !string.IsNullOrWhiteSpace(Model.Item.GetRawValueString("Theme")) ? " theme " + Model.Item.GetRawValueString("Theme").Replace(" ", "").Trim().ToLower() : ""; 104 string gapCss = "gap-2"; 105 string contentPadding = Model.Item.GetRawValueString("ContentPadding", ""); 106 contentPadding = contentPadding == "none" ? string.Empty : contentPadding; 107 contentPadding = contentPadding == "small" ? " p-2 p-md-3" : contentPadding; 108 contentPadding = contentPadding == "large" ? " p-4 p-md-5" : contentPadding; 109 110 <div class="h-100@(theme)@(contentPadding) item_@Model.Item.SystemName.ToLower()"> 111 <div class="grid @(gapCss)"> 112 @if (!hideTitle && accordionContentSettings.Any()) 113 { 114 <h2 class="g-col-12 @titleFontSize">Frequent Asked Questions</h2> 115 } 116 <div class="g-col-12"> 117 <div class="accordion accordion-flush w-100" id="Specifications_@Model.ID"> 118 @foreach (var contentSetting in accordionContentSettings) 119 { 120 foreach (var field in contentSetting.FieldDisplayGroup.Fields.Select((value, index) => new { value, index })) 121 { 122 if (field.index % 2 == 0) 123 { 124 var id = Guid.NewGuid().ToString(); 125 string groupHeadingId = $"SpecificationHeading_{Model.ID}_{id}"; 126 string groupItemId = $"SpecificationItem_{Model.ID}_{id}"; 127 128 <div class="accordion-item"> 129 <h2 class="accordion-header" id="@groupHeadingId"> 130 <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#@groupItemId" aria-expanded="false" aria-controls="@groupItemId"> 131 @field.value.Value 132 </button> 133 </h2> 134 135 <div id="@groupItemId" class="accordion-collapse collapse" aria-labelledby="@groupHeadingId" data-bs-parent="#Specifications_@Model.ID"> 136 <div class="accordion-body"> 137 <span>@contentSetting.FieldDisplayGroup.Fields[field.index + 1].Value</span> 138 </div> 139 </div> 140 </div> 141 } 142 } 143 } 144 </div> 145 </div> 146 </div> 147 </div> 148 } 149 else 150 { 151 <div class="alert alert-warning m-0">@Translate("Product Specification will be shown here if any")</div> 152 } 153 } 154
Downloads
Name | Dateityp | Sprache | Dateityp | Download |
---|---|---|---|---|
PDS_EN_1247060.pdf | TDS | English | 397 KB | |
EN_EN;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | English | 1686 KB | |
PDS_NL_1247060.pdf | TDS | Nederlands | 397 KB | |
NL_NL;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Nederlands | 1686 KB | |
PDS_ES_1247060.pdf | TDS | Español | 398 KB | |
ES_ES;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Español | 1688 KB | |
PDS_DE_1247060.pdf | TDS | Deutsch | 398 KB | |
DE_DE;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Deutsch | 1687 KB | |
PDS_IT_1247060.pdf | TDS | Italiano | 397 KB | |
IT_IT;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Italiano | 1680 KB | |
PDS_FR_1247060.pdf | TDS | Français | 398 KB | |
FR_FR;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Français | 1682 KB | |
PDS_PL_1247060.pdf | TDS | Polski | 399 KB | |
PL_PL;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Polski | 1688 KB | |
PDS_PT_1247060.pdf | TDS | Portuguese | 399 KB | |
PT_PT;Colad_Brochure_E2M_Assortment.pdf | Product_flyer | Portuguese | 1686 KB |