Error executing template "Designs/Salts/eCom/Product/Product-Weglot.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_370b52dcd9ff47358ba362623bb58a09.Execute() in C:\SaltsWebsites\Salts\SaltsGlobalLive\Files\Templates\Designs\Salts\eCom\Product\Product-Weglot.cshtml:line 201
   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 @using Dynamicweb.Ecommerce.Products 2 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 3 @{ 4 string groupId = System.Web.HttpContext.Current.Request.QueryString["GroupID"]; 5 string baseWeglotLang = System.Web.HttpContext.Current.Request.Headers["weglot-language"]; 6 7 //Salts_Dw9.Files.Templates.Designs.Salts.Ecom.ProductList.GroupProducts.GetPageData(); 8 9 Dynamicweb.Ecommerce.Products.Group thePrimaryGroup = new Group(); 10 if (string.IsNullOrEmpty(groupId)) 11 { 12 groupId = (string)System.Web.HttpContext.Current.Session["CurrentGroupId"]; 13 } 14 15 Dynamicweb.Ecommerce.Products.Group thisGroup = Dynamicweb.Ecommerce.Services.ProductGroups.GetGroup(groupId, GetString("Ecom:Product.LanguageID")); 16 Group parentGroup = new Group(); 17 18 if (thisGroup !=null) 19 { 20 parentGroup = thisGroup.ParentGroups.FirstOrDefault(); 21 } 22 } 23 <div class="m-column-two"> 24 <div class="l-container"> 25 <div class="container-fluid"> 26 <div class="l-row row"> 27 <div class="col-xs-12 col-sm-12 col-md-3 col-lg-3" style="position: sticky; top: 0px;"> 28 <div id="product-menu" class="product-menu subnav-nested subnav-nested-primary subnav-nested-isactive"> 29 30 @*On Product page there is no reference to get the heirarchy*@ 31 @if (parentGroup != null && parentGroup.IsTopGroup) 32 { 33 34 <div class="subnav subnav-nested subnav-nested-primary subnav-nested-isactive"> 35 <div class="subnav-content"> 36 <nav aria-label="Sub Groups Navigation" role="navigation"> 37 <ul class="list-unstyled content-menu"> 38 <li><h3 class="section-navigation living"><a href="Default.aspx?ID=@GetInteger("Ecom:Product:Page.ID")">@parentGroup.Name</a></h3></li> 39 40 @foreach (Group group in parentGroup.Subgroups) 41 { 42 if (group.Id == GetString(("Ecom:Group.ID"))) 43 { 44 <li class="Selected" style="padding-left: 10px; padding-top: 10px;" id="@GetString("Ecom:Group.ID")-nav"><strong>@group.Name</strong></li> 45 } 46 else 47 { 48 <li style="padding-left: 10px; padding-top: 10px;" id="@(group.Id)-nav"><strong>@group.Name</strong></li> 49 } 50 51 Dynamicweb.Ecommerce.Products.Group currentGroup = new Dynamicweb.Ecommerce.Products.GroupService().GetGroup(group.Id); 52 53 if (new Dynamicweb.Ecommerce.Products.GroupService().HasProducts(currentGroup)) 54 { 55 foreach (var product in currentGroup.ProductsByLanguageWithOutVariants) 56 { 57 <li style="padding-left: 20px;" id="@product.Id"> 58 <a href="Default.aspx?ID=@GetInteger("Ecom:Product:Page.ID")&ProductID=@product.Id">@product.Name</a> 59 </li> 60 } 61 } 62 } 63 <li><h3 class="section-navigation living"><a href="/Default.aspx?ID=4521">@Translate("additional_products","Additional Products")</a></h3></li> 64 </ul> 65 </nav> 66 </div> 67 </div> 68 } 69 70 </div> 71 72 @if (parentGroup != null && parentGroup.IsTopGroup) 73 { 74 75 <div class="subnav subnav-nested subnav-nested-mobile"> 76 <div class="dropdown"> 77 <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown" style="width: 100%;">View @parentGroup.Name products<span class="caret"></span></button> 78 79 <ul class="dropdown-menu list-unstyled content-menu" style="padding: 8px; width: 100%;"> 80 @foreach (Group group in parentGroup.Subgroups) 81 { 82 if (group.Id == GetString(("Ecom:Group.ID"))) 83 { 84 <li class="Selected"><strong>@group.Name</strong></li> 85 } 86 else 87 { 88 <li><strong>@group.Name</strong></li> 89 } 90 91 Dynamicweb.Ecommerce.Products.Group currentGroup = new Dynamicweb.Ecommerce.Products.GroupService().GetGroup(group.Id); 92 93 if (new Dynamicweb.Ecommerce.Products.GroupService().HasProducts(currentGroup)) 94 { 95 <ul class="list-unstyled"> 96 @foreach (var product in currentGroup.ProductsByLanguageWithOutVariants) 97 { 98 if (product.Id == GetString("Ecom:Product.ID")) 99 { 100 <li class="Selected" id="@product.Id"> 101 <a href="Default.aspx?ID=@GetInteger("Ecom:Product:Page.ID")&ProductID=@product.Id">@product.Name</a> 102 </li> 103 } 104 else 105 { 106 <li id="@product.Id"> 107 <a href="Default.aspx?ID=@GetInteger("Ecom:Product:Page.ID")&ProductID=@product.Id">@product.Name</a> 108 </li> 109 } 110 111 } 112 </ul> 113 } 114 } 115 <li><a class="subnav-toggle subnav-toggle-secondary" href="/Default.aspx?ID=4521">@Translate("additional_products","Additional Products")</a></li> 116 </ul> 117 118 119 </div> 120 </div> 121 122 } 123 124 </div> <!-- col --> 125 126 <div class="col-xs-12 col-sm-12 col-md-9 col-lg-9"> 127 128 @*<p>Parent Group: @parentGroup.Name @parentGroup.Id</p> 129 @if (thePrimaryGroup != null) 130 { 131 <p>vs The Product Primary Group: @thePrimaryGroup.Id @GetString("Ecom:Product.PrimaryOrFirstGroupID") @thePrimaryGroup.Name</p> 132 <p>vs The group in session: (@System.Web.HttpContext.Current.Session["CurrentGroupId"])</p> 133 }*@ 134 135 136 <input type="hidden" id="currentProductId" value="@GetValue("Ecom:Product.ID")" /> 137 <div id="productdescription" style="display:none;"> 138 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product.Name"))) 139 { 140 <h2>@GetValue("Ecom:Product.Name")</h2> 141 } 142 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product.LongDescription"))) 143 { 144 @GetValue("Ecom:Product.LongDescription") 145 } 146 @if (GetString("Ecom:Product.ID") == "PROD40" || GetString("Ecom:Product.ID") == "PROD41" || GetString("Ecom:Product.ID") == "PROD68" || GetString("Ecom:Product.ID") == "PROD100") 147 { 148 } 149 else 150 { 151 <p><a href="@GetString("Ecom:Product.Link.Clean")#orderSample" class="m-btn m-btn-info btn btn-info text-uppercase" style="background-color: #77b800;">Request a sample</a></p> 152 } 153 </div> 154 155 <div class="m-product-gallery"> 156 <div class="m-product-gallery-large"> 157 <div> 158 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product.ImageMedium.Clean"))) 159 { 160 <img src="@GetString("Ecom:Product.ImageMedium.Clean")" alt="@GetString("Ecom:Product.Name")" class="img-responsive"> 161 } 162 else 163 { 164 <img src="@GetString("Ecom:Product.ImageMedium.Default.Clean")" alt="No image available" class="img-responsive"> 165 } 166 </div> 167 </div> <!-- m-product-gallery-large --> 168 </div> <!-- m-product-gallery --> 169 170 171 172 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product:Field.productInformation"))) 173 { 174 <h2>@Translate("product_information","Product Information")</h2> 175 @GetString("Ecom:Product:Field.productInformation") 176 <div class="spacer">&nbsp;</div> 177 } 178 179 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product:Field.productFeature"))) 180 { 181 @GetString("Ecom:Product:Field.productFeature") 182 <div class="spacer">&nbsp;</div> 183 } 184 185 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product:Field.productFeaturesWafer"))) 186 { 187 @GetString("Ecom:Product:Field.productFeaturesWafer") 188 <div class="spacer">&nbsp;</div> 189 } 190 191 @if (Dynamicweb.Core.Converter.ToBoolean(GetString("Ecom:Product:Field.videoLink"))) 192 { 193 <div class="m-embed-responsive embed-responsive embed-responsive-16by9"> 194 <iframe class="embed-responsive-item" src="@GetString("Ecom:Product:Field.videoLink")"></iframe> 195 </div> 196 <div class="spacer">&nbsp;</div> 197 } 198 @if (Dynamicweb.Core.Converter.ToBoolean(GetValue("Ecom:Product.VariantCount"))) 199 { 200 <h3 id="orderSample">Product sizes and sample ordering</h3> 201 <p>To order a sample of the @GetValue("Ecom:Product.Name") or any of the other <a href="Default.aspx?ID=@GetInteger("Ecom:Product:Page.ID")">@parentGroup.Name products</a> we supply, then simply click on the order sample button at the end of the relevant row. If you are unsure which product samples to order, then simply use our <a href="/contact-us">contact form</a> and let us know your requirements.</p> 202 } 203 <div class="m-table-responsive table-responsive"> 204 <table id="@GetValue("Ecom:Product.ID")" class="m-table-col-4 table table-bordered table-striped sortTable sample"> 205 <thead class="m-theme-bg-green-extralight"> 206 <tr> 207 <th class="id" scope="col" style="text-align:left;">Product Code</th> 208 <th class="details" scope="col" style="text-align:left;">Details</th> 209 <th class="number" scope="col" style="text-align:center;">Product Number</th> 210 <th class="samplequantity" scope="col" style="text-align:center;">Sample Quanity</th> 211 <th class="packsize" scope="col" style="text-align:center;">Pack Size</th> 212 <th class="add" scope="col">&nbsp;</th> 213 </tr> 214 </thead> 215 216 <tbody> 217 @foreach (LoopItem i in GetLoop("VariantCombinations")) 218 { 219 string cl = "listitem" + i.GetValue("VariantCombinations.LoopMod2"); 220 <tr class="@cl" data-sort="@i.GetValue("Ecom:Product:Field.sortOrder")" id="@(i.GetString("Ecom:Product.Number").Replace("*",""))"> 221 <td class="id skip-translate" style="text-align:left;">@i.GetValue("Ecom:Product.Number")</td> 222 <td class="details" style="text-align:left;">@i.GetValue("Ecom:Product.VariantText")</td> 223 @if (baseWeglotLang == "nl") 224 { 225 <td class="number" style="text-align:center;">@i.GetValue("Ecom:Product:Field.NetherlandsProductNumber.Value.Clean")</td> 226 } 227 else 228 { 229 <td class="number" style="text-align:center;">@i.GetValue("Ecom:Product:Field.NorwayProductNumber.Value.Clean")</td> 230 } 231 <td class="samplequantity" style="text-align:center;">@i.GetValue("Ecom:Product:Field.sampleQuantity.Value.Clean")</td> 232 <td class="packsize" style="text-align:center;">@i.GetValue("Ecom:Product:Field.packquantity.Value.Clean")</td> 233 <td class="add" ><a href="Default.aspx?ID=5 @i.GetValue("Ecom:VariantCombination.Page.ID")&amp;ProductID=@i.GetValue("Ecom:VariantCombination.Product.ID")&amp;variantid=@i.GetValue("Ecom:VariantCombination.VariantID")&amp;cartcmd=add" class="m-btn m-btn-primary btn btn-primary pull-right text-uppercase add-sample">@Translate("add","Add")</a></td> 234 </tr> 235 } 236 </tbody> 237 </table> 238 @if (GetString("Ecom:Product.ID") == "PROD40" || GetString("Ecom:Product.ID") == "PROD41" || GetString("Ecom:Product.ID") == "PROD68" || GetString("Ecom:Product.ID") == "PROD100") 239 { 240 } 241 else 242 { 243 <!--<p style="padding-top: 10px; width: 100%; text-align: right;"><a href="/sample-orders" class="m-btn m-btn-info btn btn-info text-uppercase" tabindex="0" style="background-color: #77b800;">Request a sample</a></p>--> 244 } 245 </div> <!-- table-responsive --> 246 247 <div class="table-footer"> 248 @if (GetString("Ecom:Product:Field.productTableFooter") != "") 249 { 250 <p>@GetValue("Ecom:Product:Field.productTableFooter")</p> 251 } 252 </div> 253 254 255 <div class="m-product-container-closed related-products"> 256 <h3>@Translate("other_additional_products","Other additional products")</h3> 257 <div class="l-group-3-inset row" style="overflow: auto; margin-bottom: 30px;"> 258 259 @foreach (LoopItem i in GetLoop("ProductRelatedGroups")) 260 { 261 foreach (LoopItem i2 in i.GetLoop("RelatedProducts")) 262 { 263 <div class="l-group-content col-ms-6 col-sm-4"> 264 <div class="m-product"> 265 <div class="m-product-visual"> 266 267 @{ 268 string link = string.Empty; 269 string image = string.Empty; 270 string button = string.Empty; 271 } 272 273 @*<p>ProductUrl: @i2.GetString("Ecom:Product.Link.Clean")</p> 274 <p>ProductImage: @i2.GetValue("Ecom:Product.ImageSmall.Clean")</p> 275 <p>ProductImage: @i2.GetValue("Ecom:Product.ImageSmall.Clean")</p> 276 <p>ProductImage2: @i2.GetValue("Ecom:Ecommerce.Product.ImageSmall.Default.Clean")</p>*@ 277 278 @if (Dynamicweb.Core.Converter.ToBoolean(i2.GetString("Ecom:Product:Field.ProductURL.Value.Clean"))) 279 { 280 link = "<a href=" + i2.GetString("Ecom:Product.Link.Clean") + ">{0}</a>"; 281 } 282 else 283 { 284 link = "<a href=" + i2.GetValue("Ecom:Product.Link.Clean") + ">{0}</a>"; 285 } 286 @if (Dynamicweb.Core.Converter.ToBoolean(i2.GetString("Ecom:Ecommerce.Product.ImageSmall.Default.Clean"))) 287 { 288 image = "<img class='img-responsive' src='" + i2.GetString("Ecom:Product.Link.Clean") + "' alt='No image currently available'>"; 289 } 290 else 291 { 292 image = "<h4 style='padding: 12px 12px 0px 12px; height: 42px;'>" + i2.GetString("Ecom:Product.Name") + "</h4><img class='img-responsive' src='" + i2.GetString("Ecom:Product.ImageSmall.Clean") + "' alt='" + i2.GetString("Ecom:Product.Name") + "'>"; 293 } 294 295 @string.Format(link, image) 296 297 </div> 298 <div class="m-product-cta text-center"> 299 @if (Dynamicweb.Core.Converter.ToBoolean(i2.GetValue("Ecom:Product:Field.ProductURL.Value.Clean"))) 300 { 301 <p><a href="@GetString("Ecom:Product.Link.Clean")" class="m-btn btn btn-primary text-uppercase">@Translate("ViewProduct", "View Product")</a></p> 302 if (GetString("Ecom:Product.Name") != "Salts Support Wear") 303 { 304 <p><a href="@GetString("Ecom:Product.Link.Clean")#orderSample" class="m-btn m-btn-info btn btn-info text-uppercase">@Translate("OrderSample", "Order Sample")</a></p> 305 } 306 } 307 else 308 { 309 <p><a href="@i2.GetString("Ecom:Product.Link.Clean")" class="m-btn btn btn-primary text-uppercase">@Translate("ViewProduct", "View Product")</a></p> 310 if (GetString("Ecom:Product.Name") != "Salts Support Wear") 311 { 312 <!--<p><a href="/sample-orders" class="m-btn m-btn-info btn btn-info text-uppercase">@Translate("OrderSample", "Order Sample")</a></p>--> 313 <p><a href="@i2.GetString("Ecom:Product.Link.Clean")#orderSample" class="m-btn m-btn-info btn btn-info text-uppercase">@Translate("OrderSample", "Order Sample")</a></p> 314 } 315 } 316 </div> 317 </div> <!-- m-product --> 318 </div> 319 } 320 } 321 322 </div> <!-- row --> 323 </div> 324 <!-- m-product --> 325 326 </div> <!-- col --> 327 </div> <!-- row --> 328 </div> <!-- container-fluid --> 329 </div> <!-- l-container --> 330 </div>

Informacje o produkcie

Worki urostomijne są stosowane po zabiegu wyłonienia urostomii. Po operacji wyłonienia urostomii do zbierania moczu zwykle podłącza się worek do nocnej zbiórki moczu. Worki urostomijne najczęściej są przezroczyste lub mają okienko podglądu. Dzięki temu  pielęgniarka stomijna może łatwo ocenić kolor i wielkość stomii.  

Rodzaje worków urostomijnych

Zależy nam na tworzeniu produktów urostomijnych, które wspierają komfort i jakość życia osób z wyłonioną stomią. W ofercie znajdują się jednoczęściowe worki urostomijne płaskie i wypukłe (convex), a także produkty dodatkowe, które można zamówić jako próbki.

Nasza oferta jednoczęściowych płaskich worków urostomijnych obejmuje: 

  • Confidence® Urostomia
  • Confidence® Natural
  • Confidence® Natural Advance

Elegancka torba o niskim profilu, która nie wygląda jak urządzenie medyczne. Wylot chowa się i jest solidnie zamocowany, dzięki czemu torba sprawia wrażenie zamkniętej, a miękka nasadka zapewnia komfort użytkowania bez utraty wygody. Mechanizm regulacji przepływu ułatwia kontrolowanie przepływu moczu, a obrotowy i odpinany pasek nasadki można odsunąć od strumienia moczu podczas opróżniania.

Seria Confidence® Natural posiada unikalną, pięciokątną płytkę Flexifit®, która zapewnia dobre dopasowanie. Zastosowane hydrokoloidy zawierają ekstrakty z aloesu, które pomagają łagodzić i chronić skórę.

W ofercie dostępna jest także seria Confidence® Convex Supersoft. Ta linia produktów urostomijnych zapewnia wyraźną wypukłość i jest wyjątkowo komfortowa w użytkowaniu.

To jest wyrób medyczny. Zawsze postępuj zgodnie z instrukcją używania.