Error executing template "/Designs/HagsCore/Paragraph/AssetsSearch.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 Dynamicweb.Rendering.Translation.Source.GetTranslationSource(String designName, String moduleName, String cultureName)
   at Dynamicweb.Rendering.TemplateBase`1.Translate(String text, String defaultValue, String cultureName)
   at CompiledRazorTemplates.Dynamic.RazorEngine_ff982e3f24e349ee9a7703ecd2c61f6b.Execute() in C:\Projects\Hags_Dw9\Files\Templates\Designs\HagsCore\Paragraph\AssetsSearch.cshtml:line 26
   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.b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 2 @using System.Web.Optimization; 3 @using Dynamicweb.Ecommerce.Variants; 4 @{ 5 string validationMessages = string.Format("messages_{0}.min.js", GetGlobalValue("Global:Area.Lang")); 6 string areaLanguage = GetGlobalValue("Global:Area.Lang"); 7 string customErrorMessage = HagsWeb.Library.Utilities.DWUtilities.GetTranslation("AdvancedSearchError", "You must provide a Product Code or a Product Name for your Search", GetGlobalValue("Global:Area.LongLang")); 8 } 9 10 @*@Scripts.Render("~/bundle/AssetSearch") 11 12 @if (areaLanguage != "en") 13 { 14 // non english validation messages 15 <script src="/Files/Templates/Designs/HagsCore/script/source/libraries/validation/localization/@validationMessages"></script> 16 }*@ 17 18 <input type="hidden" id="CultureLanguage" value="@GetGlobalValue("Global:Area.LongLang")" /> 19 <input type="hidden" id="PageID" value="@GetGlobalValue("Global:Page.ID")" /> 20 <input type="hidden" id="ErrorMessage" value="@customErrorMessage" /> 21 22 <div id="advancedSearch"> 23 <div class="m-search-primary"> 24 <div class="text-center"> 25 <ul> 26 <li><a class="m-btn-search-options btn btn-default text-uppercase" role="button" href="#advancedsearch-ui" data-toggle="tab">@Translate("AdvancedSearch", "Advanced Search")</a></li> 27 <li><a class="m-btn-search-options btn btn-default text-uppercase" role="button" href="#downloadfinder" data-toggle="tab">@Translate("ProductDownloads", "Product Downloads")</a></li> 28 <li><a class="m-btn-search-options btn btn-default text-uppercase" role="button" href="#productcollection" data-toggle="tab">@Translate("MyProductCollection", "My Product Collection")</a></li> 29 <li><a class="m-btn-search-options btn btn-default text-uppercase" role="button" href="#inspirationfinder" data-toggle="tab">@Translate("InspirationFinder", "Inspiration Finder")</a></li> 30 </ul> 31 </div> 32 </div> 33 34 35 <div class="container"> 36 37 <div class="content"> 38 39 <div class="tab-content"> 40 41 <div class="tab-pane fade" id="advancedsearch-ui"> 42 43 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 44 @using Dynamicweb.Ecommerce.Variants; 45 @using HagsWeb.Library.BusinessObjects.UsersLists; 46 @using HagsWeb.Library.State; 47 @{} 48 49 @*@helper AdvancedSearch(string name) { 50 // your helper can contain code and/or markup, e.g. 51 // var msg = "Hello " + name; 52 // <p>@msg</p> 53 // For more information, visit http://go.microsoft.com/fwlink/?LinkID=204658 54 }*@ 55 56 57 @{ 58 Dynamicweb.Frontend.PageView advSearchPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 59 Dynamicweb.Content.Area advSearchArea = new Dynamicweb.Content.AreaService().GetArea(advSearchPage.AreaID); 60 61 string advancedSearchUrl = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl((Int32)new Dynamicweb.Content.PageService().GetFirstModulePageForArea(advSearchArea.ID, "Searchv1").ID); 62 63 // Search Results in Session - Phase 2 64 //List<AdvancedSearchState> advancedSearchState = SessionManager.UsersAdvancedSearchState != null ? SessionManager.UsersAdvancedSearchState as List<AdvancedSearchState> : new List<AdvancedSearchState>(); 65 66 67 68 69 70 // Dynamicweb.Frontend.PageView thisPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 71 // var area = Dynamicweb.Content.Area.GetAreaById(thisPage.AreaID); 72 73 //var AnchoringVariants = GlobalAnchoringVariants; // Defined in AssetsSearch.cshtml, the controls' parent 74 75 //Dynamicweb.Frontend.PageView thisPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 76 //var area = Dynamicweb.Content.Area.GetAreaById(thisPage.AreaID); 77 78 //Dynamicweb.Frontend.PageView thisPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 79 //ParagraphCollection pageParagraphCollection = Dynamicweb.Content.Paragraph.GetParagraphsByPageID(thisPage.ID); 80 //string pageId = thisPage.ID.ToString(); 81 82 //var area = Dynamicweb.Content.Area.GetAreaById(thisPage.AreaID); 83 // //var l = area.EcomLanguageId; 84 //string EcomLanguageID = area.EcomLanguageId; 85 //string EcomShopID = area.EcomShopID; 86 87 ////string lang = thisPage.GlobalTags.GetTagByName("LongLang").Value; 88 //string l = thisPage.Area.Values["areaecomlanguageid"].ToString(); 89 } 90 91 <div class="m-search-advanced" style="display:block;visibility:visible;"> 92 <div class="m-search-advanced-panel m-search-advanced-product" style="display:block;visibility:visible;"> 93 <div class="l-page"> 94 <div class="container-fluid"> 95 <nav class="text-center"> 96 <ul class="m-nav-tabs-search nav nav-tabs text-uppercase"> 97 <li id="tabSearchPlay" class="active"><a href="#advancedsearch-Play" data-toggle="tab">@Translate("play", "Play")</a></li> 98 <li id="tabSearchSportFitness"><a href="#advancedsearch-SportFitness" data-toggle="tab">@Translate("sport", "Sport &amp; Fitness")</a></li> 99 <li id="tabSearchParkUrban"><a href="#advancedsearch-ParkUrban" data-toggle="tab">@Translate("park", "Park &amp; Urban")</a></li> 100 <li id="tabSearchMarine"><a href="#advancedsearch-Marine" data-toggle="tab">@Translate("marine", "Marine")</a></li> 101 <li id="tabSearchShade"><a href="#advancedsearch-Shade" data-toggle="tab">@Translate("shade", "Shade")</a></li> 102 </ul> 103 </nav> 104 </div> <!-- container-fluid --> 105 <div class="tab-content"> 106 <div class="tab-pane fade in active" id="advancedsearch-Play"> 107 <form id="search-play" name="search-form" method="get" action="@advancedSearchUrl"> 108 <input type="hidden" name="Products" value="Play" /> 109 <div class="l-page"> 110 <div class="container-fluid"> 111 <div class="form-horizontal"> 112 <fieldset class="m-theme-border-grey"> 113 114 <div class="row"> 115 <div class="col-ms-4 col-sm-4"> 116 <div class="form-group"> 117 <label for="aspProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 118 <div class="col-sm-7"><input type="text" class="form-control search-group" id="aspProductCode" name="ProductCode" /></div> 119 </div> 120 </div> 121 <div class="col-ms-4 col-sm-4"> 122 <div class="form-group"> 123 <label for="aspProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 124 <div class="col-sm-7"><input type="text" class="form-control search-group" id="aspProductName" name="ProductName" /></div> 125 </div> 126 </div> 127 @{ 128 List<VariantOption> PlayAnchoringVariants = new HagsWeb.Library.Methods.AssetSearch.ProductAssets().CheckValidVariantOptions("ATP3", "Play", advSearchArea.EcomLanguageId); 129 130 if (PlayAnchoringVariants.Count > 0) 131 { 132 <div class="col-ms-4 col-sm-4"> 133 <div class="form-group"> 134 135 <label for="aspAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 136 <div class="col-sm-7"> 137 <select class="form-control" id="aspAnchoringType" name="AnchoringType"> 138 @if (PlayAnchoringVariants.Count > 1) 139 { 140 <option value="0"> @Translate("SelectAnchoring", "Select Anchoring Type") </option> 141 } 142 @foreach (var option in PlayAnchoringVariants) 143 { 144 <option value='@option.Id'>@option.Name</option> 145 } 146 </select> 147 </div> 148 </div> 149 </div> 150 } 151 else 152 { 153 <input type="hidden" name="AnchoringType" value="0" /> 154 } 155 156 } 157 158 </div> <!-- row --> 159 @*<input type="hidden" name="productsInSession" value="@advancedSearchState.Count()" />*@ 160 161 </fieldset> 162 163 164 165 166 </div> <!--form - horizontal--> 167 </div> <!--container - fluid--> 168 </div> <!--l - page--> 169 <div class="m-search-advanced-buttons text-center"> 170 <button class="m-btn-search btn btn-default text-uppercase" type="reset" name="reset">@Translate("Reset", "Reset")</button> 171 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 172 </div> 173 </form> 174 175 @*<script> 176 $("#search-play").validate(); 177 </script>*@ 178 <div id="results-search-play" class="m-search-advanced-results-panel"> 179 180 @*// Search Results in Session - Phase 2 181 @if (advancedSearchState.Any()) 182 { 183 184 foreach (AdvancedSearchState product in advancedSearchState) 185 { 186 @String.Format("{0}", product.Products) 187 } 188 }*@ 189 190 </div> 191 </div> 192 <div class="tab-pane fade in" id="advancedsearch-SportFitness"> 193 <form id="search-sport" name="search-form" method="get" action="@advancedSearchUrl"> 194 <input type="hidden" name="Products" value="Sport" /> 195 <div class="l-page"> 196 <div class="container-fluid"> 197 <div class="form-horizontal"> 198 <fieldset class="m-theme-border-grey"> 199 <div class="row"> 200 <div class="col-ms-4 col-sm-4"> 201 <div class="form-group"> 202 <label for="sfProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 203 <div class="col-sm-7"><input type="text" class="form-control search-group" id="sfProductCode" name="ProductCode" /></div> 204 </div> 205 </div> 206 <div class="col-ms-4 col-sm-4"> 207 <div class="form-group"> 208 <label for="sfProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 209 <div class="col-sm-7"><input type="text" class="form-control search-group" id="sfProductName" name="ProductName" /></div> 210 </div> 211 </div> 212 213 @{ 214 List<VariantOption> SportAnchoringVariants = new HagsWeb.Library.Methods.AssetSearch.ProductAssets().CheckValidVariantOptions("ATP3", "Sport", advSearchArea.EcomLanguageId); 215 216 if (SportAnchoringVariants.Count > 0) 217 { 218 <div class="col-ms-4 col-sm-4"> 219 <div class="form-group"> 220 <label for="sfAdvancedSearch" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 221 <div class="col-sm-7"> 222 <select class="form-control" id="sfAdvancedSearch" name="AnchoringType"> 223 @if (SportAnchoringVariants.Count > 1) 224 { 225 <option value="0"> @Translate("SelectAnchoring", "Select Anchoring Type") </option> 226 } 227 @foreach (var option in SportAnchoringVariants) 228 { 229 <option value='@option.Id'> @option.Name </option> 230 } 231 </select> 232 </div> 233 </div> 234 </div> 235 } 236 else 237 { 238 <input type="hidden" name="AnchoringType" value="0" /> 239 } 240 } 241 242 </div> <!-- row --> 243 </fieldset> 244 </div> <!-- form-horizontal --> 245 </div> <!-- container-fluid --> 246 </div> <!-- l-page --> 247 <div class="m-search-advanced-buttons text-center"> 248 <button class="m-btn-search btn btn-default text-uppercase" type="reset" name="reset">@Translate("Reset", "Reset")</button> 249 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 250 </div> 251 </form> 252 <div id="results-search-sportfitness" class="m-search-advanced-results-panel"> 253 @*// Search Results in Session - Phase 2 254 @if (advancedSearchState.Any()) 255 { 256 257 foreach (AdvancedSearchState product in advancedSearchState) 258 { 259 @String.Format("{0}", product.Products) 260 } 261 }*@ 262 </div> 263 </div> 264 <div class="tab-pane fade in" id="advancedsearch-ParkUrban"> 265 <form id="search-park" name="search-form" method="get" action="@advancedSearchUrl"> 266 <input type="hidden" name="Products" value="Park" /> 267 <div class="l-page"> 268 <div class="container-fluid"> 269 <div class="form-horizontal"> 270 <fieldset class="m-theme-border-grey"> 271 <div class="row"> 272 <div class="col-ms-4 col-sm-4"> 273 <div class="form-group"> 274 <label for="puProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 275 <div class="col-sm-7"><input type="text" class="form-control search-group" id="puProductCode" name="ProductCode" /></div> 276 </div> 277 </div> 278 <div class="col-ms-4 col-sm-4"> 279 <div class="form-group"> 280 <label for="puProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 281 <div class="col-sm-7"><input type="text" class="form-control search-group" id="puProductName" name="ProductName" /></div> 282 </div> 283 </div> 284 @{ 285 List<VariantOption> ParkAnchoringVariants = new HagsWeb.Library.Methods.AssetSearch.ProductAssets().CheckValidVariantOptions("ATP3", "Park", advSearchArea.EcomLanguageId); 286 287 if (ParkAnchoringVariants.Count > 0) 288 { 289 <div class="col-ms-4 col-sm-4"> 290 <div class="form-group"> 291 <label for="puAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 292 <div class="col-sm-7"> 293 <select class="form-control" id="puAnchoringType" name="AnchoringType"> 294 @if (ParkAnchoringVariants.Count > 1) 295 { 296 <option value="0"> @Translate("SelectAnchoring", "Select Anchoring Type") </option> 297 } 298 @foreach (var option in ParkAnchoringVariants) 299 { 300 <option value='@option.Id'> @option.Name </option> 301 } 302 </select> 303 </div> 304 </div> 305 </div> 306 } 307 else 308 { 309 <input type="hidden" name="AnchoringType" value="0" /> 310 } 311 } 312 313 </div> <!-- row --> 314 </fieldset> 315 </div> <!-- form-horizontal --> 316 </div> <!-- container-fluid --> 317 </div> <!-- l-page --> 318 <div class="m-search-advanced-buttons text-center"> 319 <button class="m-btn-search btn btn-default text-uppercase" type="reset" name="reset">@Translate("Reset", "Reset")</button> 320 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 321 </div> 322 </form> 323 <div id="results-search-parkurban" class="m-search-advanced-results-panel"> 324 @*// Search Results in Session - Phase 2 325 @if (advancedSearchState.Any()) 326 { 327 328 foreach (AdvancedSearchState product in advancedSearchState) 329 { 330 @String.Format("{0}", product.Products) 331 } 332 }*@ 333 </div> 334 </div> 335 <div class="tab-pane fade in" id="advancedsearch-Marine"> 336 <form id="search-marine" name="search-form" method="get" action="@advancedSearchUrl"> 337 <input type="hidden" name="Products" value="Marine" /> 338 <div class="l-page"> 339 <div class="container-fluid"> 340 <div class="form-horizontal"> 341 <fieldset class="m-theme-border-grey"> 342 <div class="row"> 343 <div class="col-ms-4 col-sm-4"> 344 <div class="form-group"> 345 <label for="mProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 346 <div class="col-sm-7"><input type="text" class="form-control search-group" id="mProductCode" name="ProductCode" /></div> 347 </div> 348 </div> 349 <div class="col-ms-4 col-sm-4"> 350 <div class="form-group"> 351 <label for="mProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 352 <div class="col-sm-7"><input type="text" class="form-control search-group" id="mProductName" name="ProductName" /></div> 353 </div> 354 </div> 355 @{ 356 List<VariantOption> MarineAnchoringVariants = new HagsWeb.Library.Methods.AssetSearch.ProductAssets().CheckValidVariantOptions("ATP3", "Marine", advSearchArea.EcomLanguageId); 357 358 if (MarineAnchoringVariants.Count > 0) 359 { 360 <div class="col-ms-4 col-sm-4"> 361 <div class="form-group"> 362 <label for="mAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 363 <div class="col-sm-7"> 364 <select class="form-control" id="mAnchoringType" name="AnchoringType"> 365 @if (MarineAnchoringVariants.Count > 1) 366 { 367 <option value="0"> @Translate("SelectAnchoring", "Select Anchoring Type") </option> 368 } 369 @foreach (var option in MarineAnchoringVariants) 370 { 371 <option value='@option.Id'> @option.Name </option> 372 } 373 </select> 374 </div> 375 </div> 376 </div> 377 } 378 else 379 { 380 <input type="hidden" name="AnchoringType" value="0" /> 381 } 382 } 383 384 </div> <!-- row --> 385 </fieldset> 386 </div> <!-- form-horizontal --> 387 </div> <!-- container-fluid --> 388 </div> <!-- l-page --> 389 <div class="m-search-advanced-buttons text-center"> 390 <button class="m-btn-search btn btn-default text-uppercase" type="reset" name="reset">@Translate("Reset", "Reset")</button> 391 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 392 </div> 393 </form> 394 <div id="results-search-marine" class="m-search-advanced-results-panel"> 395 @*// Search Results in Session - Phase 2 396 @if (advancedSearchState.Any()) 397 { 398 399 foreach (AdvancedSearchState product in advancedSearchState) 400 { 401 @String.Format("{0}", product.Products) 402 } 403 }*@ 404 </div> 405 </div> 406 <div class="tab-pane fade in" id="advancedsearch-Shade"> 407 <form id="search-shade" name="search-form" method="get" action="@advancedSearchUrl"> 408 <input type="hidden" name="Products" value="Shade" /> 409 <div class="l-page"> 410 <div class="container-fluid"> 411 <div class="form-horizontal"> 412 <fieldset class="m-theme-border-grey"> 413 <div class="row"> 414 <div class="col-ms-4 col-sm-4"> 415 <div class="form-group"> 416 <label for="sProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 417 <div class="col-sm-7"><input type="text" class="form-control search-group" id="sProductCode" name="ProductCode" /></div> 418 </div> 419 </div> 420 <div class="col-ms-4 col-sm-4"> 421 <div class="form-group"> 422 <label for="sProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 423 <div class="col-sm-7"><input type="text" class="form-control search-group" id="sProductName" name="ProductName" /></div> 424 </div> 425 </div> 426 @{ 427 List<VariantOption> ShadeAnchoringVariants = new HagsWeb.Library.Methods.AssetSearch.ProductAssets().CheckValidVariantOptions("ATP3", "Shade", advSearchArea.EcomLanguageId); 428 429 if (ShadeAnchoringVariants.Count > 0) 430 { 431 <div class="col-ms-4 col-sm-4"> 432 <div class="form-group"> 433 <label for="sAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 434 <div class="col-sm-7"> 435 <select class="form-control" id="sAnchoringType" name="AnchoringType"> 436 @if (ShadeAnchoringVariants.Count > 1) 437 { 438 <option value="0"> @Translate("SelectAnchoring", "Select Anchoring Type") </option> 439 } 440 @foreach (var option in ShadeAnchoringVariants) 441 { 442 <option value='@option.Id'> @option.Name </option> 443 } 444 </select> 445 </div> 446 </div> 447 </div> 448 } 449 else 450 { 451 <input type="hidden" name="AnchoringType" value="0" /> 452 } 453 } 454 455 </div> <!-- row --> 456 </fieldset> 457 </div> <!-- form-horizontal --> 458 </div> <!-- container-fluid --> 459 </div> <!-- l-page --> 460 <div class="m-search-advanced-buttons text-center"> 461 <button class="m-btn-search btn btn-default text-uppercase" type="reset" name="reset">@Translate("Reset", "Reset")</button> 462 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 463 </div> 464 </form> 465 <div id="results-search-shade" class="m-search-advanced-results-panel"> 466 @*// Search Results in Session - Phase 2 467 @if (advancedSearchState.Any()) 468 { 469 470 foreach (AdvancedSearchState product in advancedSearchState) 471 { 472 @String.Format("{0}", product.Products) 473 } 474 }*@ 475 </div> 476 </div> 477 </div> 478 </div> <!-- l-page --> 479 </div> <!-- m-search-advanced-product --> 480 <div class="text-center"> 481 <a href="#advancedsearch-ui" class="m-search-advanced-close"><img src="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.svg" data-nosvg="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.png" width="112" alt="Search Advanced Close"></a> 482 </div> 483 </div> 484 485 486 487 @*<h1>@GetGlobalValue("Global:Page.Name")</h1> 488 <h1>@GetValue("Global:Page.Name")</h1> 489 <h1>The Advanced Search Include is here.. PageID = @pageId, l=, LanguageID=@EcomLanguageID, ShopID=@EcomShopID, lang=@l</h1> 490 491 <h1>Set Tag = @GetString("CheckTag") // @GetValue("CheckTag") </h1> 492 493 @foreach (var p in pageParagraphCollection) 494 { 495 var a = p.Template; 496 var b = p.ID.ToString(); 497 var c = p.Text; 498 var f = p.Languages; 499 <ul> 500 <li>@a</li> 501 <li>@b</li> 502 <li>@c</li> 503 <li>@f</li> 504 </ul> 505 }*@ 506 507 508 </div> 509 510 <div class="tab-pane fade" id="downloadfinder"> 511 512 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 513 @using HagsWeb.Library.BusinessObjects.UsersLists; 514 @using HagsWeb.Library.State; 515 @using Dynamicweb.Ecommerce.Variants; 516 @{ 517 Dynamicweb.Frontend.PageView downloadsPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 518 Dynamicweb.Content.Area downloadsArea = new Dynamicweb.Content.AreaService().GetArea(downloadsPage.AreaID); 519 520 string downloadsSearchUrl = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl((Int32)new Dynamicweb.Content.PageService().GetFirstModulePageForArea(downloadsArea.ID, "Searchv1").ID); 521 522 // This seems to be still valid 523 List<VariantOption> ProductDownloadsAnchoringVariants = new HagsWeb.Library.Methods.AssetSearch.ProductAssets().GetVariantOptions("ATP3", downloadsArea.EcomLanguageId); 524 525 526 #region Search Results in Session - Phase 2 527 528 529 //// Search Results in Session - Phase 2 530 //List<AdvancedSearchState> downloadsSearchState = SessionManager.UsersAdvancedSearchState != null ? SessionManager.UsersAdvancedSearchState as List<AdvancedSearchState> : new List<AdvancedSearchState>(); 531 //List<AdvancedSearchState> brochuresStateList = new List<AdvancedSearchState>(); 532 //List<AdvancedSearchState> dwgsStateList = new List<AdvancedSearchState>(); 533 //List<AdvancedSearchState> certificatesStateList = new List<AdvancedSearchState>(); 534 //List<AdvancedSearchState> installationGuidesStateList = new List<AdvancedSearchState>(); 535 536 //if (downloadsSearchState.Count() > 0) 537 //{ 538 // foreach (AdvancedSearchState downloadsState in downloadsSearchState) 539 // { 540 // if (!String.IsNullOrEmpty(downloadsState.Brochures)) 541 // { 542 // AdvancedSearchState broch = new AdvancedSearchState(); 543 // broch.Brochures = downloadsState.Brochures; 544 // brochuresStateList.Add(broch); 545 // } 546 // if (!String.IsNullOrEmpty(downloadsState.Dwgs)) 547 // { 548 // AdvancedSearchState dwg = new AdvancedSearchState(); 549 // dwg.Dwgs = downloadsState.Dwgs; 550 // dwgsStateList.Add(dwg); 551 // } 552 // if (!String.IsNullOrEmpty(downloadsState.Certificates)) 553 // { 554 // AdvancedSearchState certs = new AdvancedSearchState(); 555 // certs.Certificates = downloadsState.Certificates; 556 // certificatesStateList.Add(certs); 557 // } 558 // if (!String.IsNullOrEmpty(downloadsState.InstallationGuides)) 559 // { 560 // AdvancedSearchState guide = new AdvancedSearchState(); 561 // guide.InstallationGuides = downloadsState.InstallationGuides; 562 // installationGuidesStateList.Add(guide); 563 // } 564 // } 565 566 //} 567 #endregion 568 569 } 570 <div class="m-search-advanced" style="display:block;visibility:visible;"> 571 <div class="m-search-advanced-panel m-search-advanced-product" style="display:block;visibility:visible;"> 572 <div class="l-page"> 573 <div class="container-fluid"> 574 <nav class="text-center"> 575 <ul class="m-nav-tabs-search nav nav-tabs text-uppercase"> 576 <li><a href="#download-brochures" data-toggle="tab">@Translate("Brochures", "Brochures")</a></li> 577 <li><a href="#download-dwg" data-toggle="tab">@Translate("DWGFiles", "DWG Files")</a></li> 578 <li><a href="#download-certificates" data-toggle="tab">@Translate("Certificates", "Certificates")</a></li> 579 <li><a href="#download-installationguides" data-toggle="tab">@Translate("InstallationGuides", "Installation Guides")</a></li> 580 </ul> 581 </nav> 582 <p>@Translate("ProductDownloadsInstructions", "To find product downloads simply click on one of the options above and then use the search form displayed to find all the documents associated with your search.")</p> 583 <p>&nbsp;</p> 584 </div> <!-- container-fluid --> 585 <div class="tab-content"> 586 587 <div class="tab-pane fade in" id="download-brochures"> 588 <form id="search-brochures" name="search-form" method="post" action="@downloadsSearchUrl?Assets=download-brochures"> 589 <div class="l-page"> 590 <div class="container-fluid"> 591 <div class="form-horizontal"> 592 <input type="hidden" name="SearchType" value="download-brochures" /> 593 </div> <!-- form-horizontal --> 594 </div> <!-- container-fluid --> 595 </div> <!-- l-page --> 596 <div class="m-search-advanced-buttons text-center"> 597 @*<button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("DownloadAll", "Download All")</button>*@ 598 @*<button class="m-btn-search btn btn-default text-uppercase" type="reset" >@Translate("Reset", "Reset")</button>*@ 599 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("DisplayBrochures", "Display All Brochures")</button> 600 </div> 601 <div class="l-page"> 602 <div class="container-fluid"> 603 604 <div id="results-brochures" class="m-downloads m-search-advanced-results-panel"> 605 @*// SearchState - Phase 2 606 @if (brochuresStateList.Any()) 607 { 608 foreach (AdvancedSearchState brochures in brochuresStateList) 609 { 610 @String.Format("{0}", brochures.Brochures) 611 } 612 }*@ 613 </div> <!-- m-downloads --> 614 </div> <!-- container-fluid --> 615 </div> <!-- l-page --> 616 </form> 617 </div> 618 619 <div class="tab-pane fade in" id="download-dwg"> 620 <form id="search-dwg" name="search-form" method="post" action="@downloadsSearchUrl?Assets=download-dwg"> 621 <div class="l-page"> 622 <div class="container-fluid"> 623 <div class="form-horizontal"> 624 <fieldset id="dwg-criteria" class="m-theme-border-grey"> 625 <input type="hidden" name="SearchType" value="download-dwg" /> 626 <div class="row"> 627 <div class="col-ms-4 col-sm-4"> 628 <div class="form-group"> 629 <label for="dwgProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 630 <div class="col-sm-7"><input type="text" class="form-control search-group" id="dwgProductCode" name="ProductCode" /></div> 631 </div> 632 </div> 633 <div class="col-ms-4 col-sm-4"> 634 <div class="form-group"> 635 <label for="dwgProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 636 <div class="col-sm-7"><input type="text" class="form-control search-group" id="dwgProductName" name="ProductName" /></div> 637 </div> 638 </div> 639 @if (ProductDownloadsAnchoringVariants.Count > 0) 640 { 641 642 <div class="col-ms-4 col-sm-4"> 643 <div class="form-group"> 644 645 <label for="dwgAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 646 <div class="col-sm-7"> 647 <select class="form-control" id="dwgAnchoringType" name="AnchoringType"> 648 <option value="0">@Translate("SelectAnchoring", "Select Anchoring Type")</option> 649 @foreach (var option in ProductDownloadsAnchoringVariants) 650 { 651 <option value='@option.Id'>@option.Name</option> 652 } 653 </select> 654 </div> 655 </div> 656 </div> 657 658 } 659 </div> <!-- row --> 660 </fieldset> 661 </div> <!-- form-horizontal --> 662 </div> <!-- container-fluid --> 663 </div> <!-- l-page --> 664 <div class="m-search-advanced-buttons text-center"> 665 @*<button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("DownloadAll", "Download All")</button>*@ 666 <button class="m-btn-search btn btn-default text-uppercase" type="reset">@Translate("Reset", "Reset")</button> 667 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 668 </div> 669 <div class="l-page"> 670 <div class="container-fluid"> 671 672 <div id="results-dwgs" class="m-downloads m-search-advanced-results-panel"> 673 @*// SearchState - Phase 2 674 @if (dwgsStateList.Any()) 675 { 676 foreach (AdvancedSearchState dwgs in dwgsStateList) 677 { 678 @String.Format("{0}", dwgs.Dwgs) 679 } 680 }*@ 681 </div> <!-- m-downloads --> 682 683 684 </div> <!-- container-fluid --> 685 </div> <!-- l-page --> 686 </form> 687 </div> 688 <div class="tab-pane fade in" id="download-certificates"> 689 <form id="search-certificates" name="search-form" method="post" action="@downloadsSearchUrl?Assets=download-certificates"> 690 <div class="l-page"> 691 <div class="container-fluid"> 692 <div class="form-horizontal"> 693 <fieldset id="certificates-criteria" class="m-theme-border-grey"> 694 <input type="hidden" name="SearchType" value="download-certificates" /> 695 <div class="row"> 696 <div class="col-ms-4 col-sm-4"> 697 <div class="form-group"> 698 <label for="certsProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 699 <div class="col-sm-7"><input type="text" class="form-control search-group" id="certsProductCode" name="ProductCode" /></div> 700 </div> 701 </div> 702 <div class="col-ms-4 col-sm-4"> 703 <div class="form-group"> 704 <label for="certsProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 705 <div class="col-sm-7"><input type="text" class="form-control search-group" id="certsProductName" name="ProductName" /></div> 706 </div> 707 </div> 708 @if (ProductDownloadsAnchoringVariants.Count() > 0) 709 { 710 711 <div class="col-ms-4 col-sm-4"> 712 <div class="form-group"> 713 714 <label for="certsAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 715 <div class="col-sm-7"> 716 <select class="form-control" id="certsAnchoringType" name="AnchoringType"> 717 <option value="0">@Translate("SelectAnchoring", "Select Anchoring Type")</option> 718 @foreach (var option in ProductDownloadsAnchoringVariants) 719 { 720 <option value='@option.Id'>@option.Name</option> 721 } 722 </select> 723 </div> 724 </div> 725 </div> 726 727 } 728 </div> <!-- row --> 729 </fieldset> 730 </div> <!-- form-horizontal --> 731 </div> <!-- container-fluid --> 732 </div> <!-- l-page --> 733 <div class="m-search-advanced-buttons text-center"> 734 @*<button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("DownloadAll", "Download All")</button>*@ 735 <button class="m-btn-search btn btn-default text-uppercase" type="reset">@Translate("Reset", "Reset")</button> 736 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 737 738 <div class="adviceMessage"></div> 739 740 </div> 741 <div class="l-page"> 742 <div class="container-fluid"> 743 744 <div id="results-certificates" class="m-downloads m-search-advanced-results-panel"> 745 @*// SearchState - Phase 2 746 @if (certificatesStateList.Any()) 747 { 748 foreach (AdvancedSearchState certs in certificatesStateList) 749 { 750 @String.Format("{0}", certs.Certificates) 751 } 752 }*@ 753 754 </div> <!-- m-downloads --> 755 756 757 </div> <!-- container-fluid --> 758 759 </div> <!-- l-page --> 760 </form> 761 </div> 762 <div class="tab-pane fade in" id="download-installationguides"> 763 <form id="search-installationguides" name="search-form" method="post" action="@downloadsSearchUrl?Assets=download-installationguides"> 764 <div class="l-page"> 765 <div class="container-fluid"> 766 <div class="form-horizontal"> 767 <fieldset id="installationguides-criteria" class="m-theme-border-grey"> 768 <input type="hidden" name="SearchType" value="download-installationguides" /> 769 <div class="row"> 770 <div class="col-ms-4 col-sm-4"> 771 <div class="form-group"> 772 <label for="guidesProductCode" class="col-sm-5 control-label">@Translate("ProductCode", "Product Code")</label> 773 <div class="col-sm-7"><input type="text" class="form-control search-group" id="guidesProductCode" name="ProductCode" /></div> 774 </div> 775 </div> 776 <div class="col-ms-4 col-sm-4"> 777 <div class="form-group"> 778 <label for="guidesProductName" class="col-sm-5 control-label">@Translate("Name", "Name")</label> 779 <div class="col-sm-7"><input type="text" class="form-control search-group" id="guidesProductName" name="ProductName" /></div> 780 </div> 781 </div> 782 @if (ProductDownloadsAnchoringVariants.Count() > 0) 783 { 784 785 <div class="col-ms-4 col-sm-4"> 786 <div class="form-group"> 787 788 <label for="guidesAnchoringType" class="col-sm-5 control-label">@Translate("Anchoring", "Anchoring")</label> 789 <div class="col-sm-7"> 790 <select class="form-control" id="guidesAnchoringType" name="AnchoringType"> 791 <option value="0">@Translate("SelectAnchoring", "Select Anchoring Type")</option> 792 @foreach (var option in ProductDownloadsAnchoringVariants) 793 { 794 <option value='@option.Id'>@option.Name</option> 795 } 796 </select> 797 </div> 798 </div> 799 </div> 800 801 } 802 </div> <!-- row --> 803 </fieldset> 804 </div> <!-- form-horizontal --> 805 </div> <!-- container-fluid --> 806 </div> <!-- l-page --> 807 <div class="m-search-advanced-buttons text-center"> 808 @*<button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("DownloadAll", "Download All")</button>*@ 809 <button class="m-btn-search btn btn-default text-uppercase" type="reset">@Translate("Reset", "Reset")</button> 810 <button class="m-btn-search btn btn-default text-uppercase" type="submit">@Translate("Search", "Search")</button> 811 </div> 812 <div class="l-page"> 813 <div class="container-fluid"> 814 815 <div id="results-guides" class="m-downloads m-search-advanced-results-panel"> 816 @*// SearchState - Phase 2 817 @if (installationGuidesStateList.Any()) 818 { 819 foreach (AdvancedSearchState guide in installationGuidesStateList) 820 { 821 @String.Format("{0}", guide.InstallationGuides) 822 } 823 }*@ 824 825 </div> <!-- m-downloads --> 826 827 828 </div> <!-- container-fluid --> 829 </div> <!-- l-page --> 830 </form> 831 </div> 832 833 </div> 834 </div> <!-- l-page --> 835 </div> <!-- m-search-advanced-product --> 836 <div class="text-center"> 837 <a href="#downloadfinder" class="m-search-advanced-close"><img src="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.svg" data-nosvg="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.png" width="112" alt="Search Advanced Close"></a> 838 </div> 839 </div> 840 841 </div> 842 <div class="tab-pane fade" id="productcollection"> 843 844 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 845 @using System 846 @using System.Collections.Generic 847 @using System.Linq 848 @using HagsWeb.Library.BusinessObjects.UsersLists; 849 @using HagsWeb.Library.Methods.AssetManager; 850 @using HagsWeb.Library.State; 851 852 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 853 @using System.Collections.Generic 854 @using HagsWeb.Library.BusinessObjects.UsersLists 855 856 @helper CatalogueHelper(List<ProductCollectionItem> catalogueCollectionItems, string LanguageId) 857 { 858 859 @*the bootstrap modal background/backdrop misbehaves in some browsers covering the modal completly so turn it off data-background="false"*@ 860 <div id="CreateCatalog" class="modal fade in" data-background="false" tabindex="-1" role="dialog" aria-labelledby="CreateCatalogModalLabel" aria-hidden="true"> 861 <div class="modal-backdrop fade in" data-backdrop="static" style="z-index:180;"></div> 862 <div class="modal-dialog" style="width: 1450px;"> 863 <div class="m-form-contact-modal modal-content"> 864 <div class="modal-header"> 865 <button type="button" class="close blue-close icon-remove" data-dismiss="modal"></button> 866 <button type="button" class="close" data-dismiss="modal"> 867 <span aria-hidden="true">x</span> 868 <span class="sr-only">Close</span> 869 </button> 870 <h4 class="modal-title" id="CreateCatalogModalLabel"> 871 @Translate("CreateYourCatalog", "Create Your Catalogue") 872 </h4> 873 </div> 874 <div class="row2"> 875 @*<div class="container-fluid"> 876 <nav class="text-center"> 877 <ul class="m-nav-tabs-search nav nav-tabs text-uppercase"> 878 <li id="tabCatProductList" class="active"><a href="#cat-productlist" data-toggle="tab">Product List</a></li> 879 <li id="tabCustomCatalogue"><a href="#cat-custom" data-toggle="tab">Catalogue</a></li> 880 </ul> 881 </nav> 882 </div>*@ <!-- container-fluid --> 883 </div> 884 885 <div id="div_CreateCatalog"> 886 <div class="row2"> 887 <div id="" class="tab-content"> 888 @*<div id="cat-custom" class="tab-pane fade in active">*@ 889 <div id="cat-custom"> 890 <div class="l-page"> 891 <div class="container-fluid"> 892 <div class="col-ms-12 col-sm-12" style="margin-top: 20px;"> 893 <div class="col-ms-6 col-sm-4"> 894 895 <form id="frm_CreateCatalog" class="form-horizontal" style="display:block"> 896 <input type="hidden" name="languageId" value="@LanguageId" /> 897 <fieldset class="m-theme-border-grey col-ms-12 col-sm-12"> 898 <div class="row"> 899 <div class="col-ms-12 col-sm-12"> 900 <div class="form-group"> 901 <label for="catName" class="col-sm-4 control-label">Catalogue Name:</label> 902 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catName" placeholder="Catalogue Name" value="Custom Catalogue Name" /></div> 903 </div> 904 </div> 905 <div class="col-ms-12 col-sm-12"> 906 <div class="form-group"> 907 <label for="catHagsContactName" class="col-sm-4 control-label">Hags Contact Name:</label> 908 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catHagsContactName" placeholder="Hags Contact Name Text" value="Sales Contact Name" /></div> 909 </div> 910 </div> 911 <div class="col-ms-12 col-sm-12"> 912 <div class="form-group"> 913 <label for="catHagsContactPhone" class="col-sm-4 control-label">Hags Phone Number:</label> 914 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catHagsContactPhone" placeholder="Hags Contact Phone Number" value="Sales Contact Phone Number" /></div> 915 </div> 916 </div> 917 <div class="col-ms-12 col-sm-12"> 918 <div class="form-group"> 919 <label for="catHagsContactEmail" class="col-sm-4 control-label">Hags Contact Email:</label> 920 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catHagsContactEmail" placeholder="Hags Contact Email" value="Sales Contact Email" /></div> 921 </div> 922 </div> 923 <div class="col-ms-12 col-sm-12"> 924 <div class="form-group"> 925 <label for="catCompanyName" class="col-sm-4 control-label">Company Name:</label> 926 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catCompanyName" placeholder="Company Name" value="Company Name" /></div> 927 </div> 928 </div> 929 <div class="col-ms-12 col-sm-12"> 930 <div class="form-group"> 931 <label for="catAddress" class="col-sm-4 control-label">Company Address:</label> 932 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catAddress" placeholder="Address" value="Address" /></div> 933 </div> 934 </div> 935 <div class="col-ms-12 col-sm-12"> 936 <div class="form-group"> 937 <label for="catAddress2" class="col-sm-4 control-label">&nbsp;</label> 938 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catAddress2" placeholder="Address" value="Address2" /></div> 939 </div> 940 </div> 941 <div class="col-ms-12 col-sm-12"> 942 <div class="form-group"> 943 <label for="catAddrTown" class="col-sm-4 control-label">Company Town:</label> 944 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catAddrTown" placeholder="Town" value="Town" /></div> 945 </div> 946 </div> 947 <div class="col-ms-12 col-sm-12"> 948 <div class="form-group"> 949 <label for="catAddrPostCode" class="col-sm-4 control-label">Company Postal Code:</label> 950 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catAddrPostCode" placeholder="Post Code" value="Postal Code" /></div> 951 </div> 952 </div> 953 <div class="col-ms-12 col-sm-12"> 954 <div class="form-group"> 955 <label for="catAddrCountry" class="col-sm-4 control-label">Company Country:</label> 956 <div class="col-sm-8"><input type="text" class="form-control search-group" name="catAddrCountry" placeholder="Country" value="Country" /></div> 957 </div> 958 </div> 959 <div class="col-ms-12 col-sm-12"> 960 <div class="m-search-advanced-buttons text-right"> 961 <button class="m-btn-search btn btn-default text-uppercase" name="updatecatalogue" type="button" role="button">Update Catalogue</button> 962 <button class="m-btn-search btn btn-default text-uppercase" style="display: none;" name="emailcatalogue" type="button" role="button">Send Email</button> 963 <button class="m-btn-search btn btn-default text-uppercase" style="display: none;" name="refreshemail" type="button" role="button">Refresh</button> 964 <button class="m-btn-search btn btn-default text-uppercase" style="display: none;" data-dismiss="modal" type="button" role="button">Cancel</button> 965 </div> 966 </div> 967 </div> <!-- row --> 968 </fieldset> 969 </form> <!--form - horizontal--> 970 971 @*Switch Form here*@ 972 973 <form id="frm_EmailSettings" role="form" class="form-horizontal" style="display:none"> 974 975 <fieldset class="m-theme-border-grey col-ms-12 col-sm-12"> 976 <div class="row"> 977 <div class="col-ms-12 col-sm-12"> 978 <div class="form-group"> 979 <label for="emailFrom" class="col-sm-4 control-label">@Translate("EmailFrom", "Email from"):</label> 980 <div class="col-sm-8"><input type="text" class="form-control search-group" name="emailFrom" required placeholder='@Translate("EmailFrom", "Email from")' value="" /></div> 981 </div> 982 </div> 983 <div class="col-ms-12 col-sm-12"> 984 <div class="form-group"> 985 <label for="emailTo" class="col-sm-4 control-label">@Translate("EmailTo", "Email to"):</label> 986 <div class="col-sm-8"><input type="text" class="form-control search-group" name="emailTo" required placeholder='@Translate("EmailTo", "Email to")' value="" /></div> 987 </div> 988 </div> 989 <div class="col-ms-12 col-sm-12"> 990 <div class="form-group"> 991 <label for="emailSubject" class="col-sm-4 control-label">@Translate("EmailSubject", "Subject"):</label> 992 <div class="col-sm-8"><input type="text" class="form-control search-group" name="emailSubject" placeholder='@Translate("EmailSubject", "Subject")' value="" /></div> 993 </div> 994 </div> 995 <div class="col-ms-12 col-sm-12"> 996 <div class="form-group"> 997 <label for="emailMessage" class="col-sm-4 control-label">@Translate("EmailMessage", "Message"):</label> 998 <div class="col-sm-8"><textarea class="form-control" name="emailMessage" cols="45" rows="7" value="Test Message">My Message - Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.</textarea></div> 999 </div> 1000 </div> 1001 </div> 1002 </fieldset> 1003 1004 <div id="emailProgress" style="display: none;"> 1005 <span id="CreateCatalogueEmailLabel" style="display:block; text-align:center; margin:auto;">@Translate("SendingYourEmail", "Sending your Email")</span> 1006 <img src="Files/Templates/Designs/HagsCore/res/img/loader/ajax-loader.gif" style="margin:auto;display:block;" /> 1007 1008 1009 @*<div class='form-horizontal' style="display: block;"><h4>Your Catalogue was sent</h4><fieldset style='text-align:center'><div class='col-ms-6 col-sm-12'><div class='form-group'> 1010 <p>Thank You - Your message was sent.</p></div></div></fieldset></div>*@ 1011 1012 1013 1014 </div> <!--container - fluid--> 1015 1016 <div> 1017 1018 <div class="m-search-advanced-buttons text-center"> 1019 1020 <button class="m-btn-search btn btn-default text-uppercase" name="emailcatalogue" type="button" role="button">@Translate("SendEmail", "Send Email")</button> 1021 <button class="m-btn-search btn btn-default text-uppercase" style="display: none;" name="refreshemail" type="button" role="button">@Translate("Refresh", "Refresh")</button> 1022 <button class="m-btn-search btn btn-default text-uppercase" name="cancelemail" type="button" role="button">@Translate("Cancel", "Cancel")</button> 1023 1024 </div> 1025 1026 </div> 1027 1028 </form> 1029 <script> 1030 $("#frm_EmailSettings").validate(); 1031 </script> 1032 1033 </div> 1034 <div class="col-ms-6 col-sm-8"> 1035 <div class="row2"> 1036 <div id="loader" style="display:none;text-align:center"> 1037 <span id="CreateCataloguePdfLabel" style="display: inline-block;margin: 10px 10px 0 0;padding: 5px 10px"></span> 1038 <img src="Files/Templates/Designs/HagsCore/res/img/loader/ajax-loader.gif" style="margin:auto;display:block;" /> 1039 </div> 1040 1041 <div id="pdfViewer"> 1042 @*<object id="pdfObjectViewer" style="display: none;" data="" type="application/pdf" width="100%" height="600" /> 1043 <embed id="pdfViewer" style="display: none;" src="" type="application/pdf" /> 1044 <iframe src="" id="pdfIframeViewer" width="100%" height="600" type="application/pdf" style="display:none;" />*@ 1045 </div> 1046 </div> 1047 </div> 1048 </div> 1049 </div> <!--container - fluid--> 1050 </div> 1051 </div> 1052 </div> 1053 1054 1055 1056 1057 1058 1059 @*Probably not needed now. Remove the code in GetCatalogueUI(*@ 1060 @*<div class="row2"> 1061 <div id="cat-productlist" class="hide"> 1062 data from Ajax call 1063 <table id="tbl_MyCatalogueCollection" class="table" style="text-align:left"> 1064 <thead><tr><th>&nbsp;</th><th>Product Name</th><th>Product Number</th><th>Price</th></tr></thead> 1065 <tbody></tbody> 1066 </table> 1067 </div> 1068 </div>*@ 1069 1070 </div> 1071 1072 <div id="adviceMessage"></div> 1073 1074 1075 1076 1077 </div> 1078 1079 <div class="modal-footer" id="main-footer"> 1080 1081 <div class="m-search-advanced-buttons text-center"> 1082 1083 <button class="m-btn-search btn btn-default text-uppercase" name="createemail" type="button" role="button">Email Catalogue</button> 1084 1085 <button class="m-btn-search btn btn-default text-uppercase" data-dismiss="modal" type="button">Cancel</button> 1086 1087 </div> 1088 1089 </div> 1090 1091 </div> 1092 </div> 1093 1094 </div> 1095 1096 } 1097 @{ 1098 Dynamicweb.Frontend.PageView collectionPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 1099 Dynamicweb.Content.Area collectionArea = new Dynamicweb.Content.AreaService().GetArea(collectionPage.AreaID); 1100 1101 List<ProductCollectionItem> productCollectionItems = SessionManager.UsersMyProductCollection != null ? SessionManager.UsersMyProductCollection : new List<ProductCollectionItem>(); 1102 bool isQuote = Convert.ToBoolean(collectionArea.Item["QuoteAndOrderChk"]); 1103 bool isCatalog = true; // Convert.ToBoolean(collectionArea.Item["CatalogueServiceChk"]); // To Be Implemented in Site Settings 1104 string downloadingText = HagsWeb.Library.Utilities.DWUtilities.GetTranslation("Downloading...", "Downloading...", collectionArea.Culture); 1105 int currentPage = collectionArea.ID; 1106 } 1107 1108 @if (isCatalog) 1109 { 1110 1111 } 1112 @CatalogueHelper(productCollectionItems, collectionArea.EcomLanguageId) 1113 1114 <input type="hidden" id="isQuote" value="@isQuote" /> 1115 <input type="hidden" id="downloadingText" value="@downloadingText" /> 1116 <div class="m-search-advanced" style="display:block;visibility:visible;"> 1117 1118 <!--<div class="pull-left"><h4 class="clearfix">@Translate("MyProductCollection", "My Product Collection")</h4></div>--> 1119 1120 <div class="text-center" style="clear:both;padding-top:10px; border-bottom: 2px solid #000; padding-bottom: 20px;"> 1121 <div id="btns_MyProductCollection"> 1122 @if (productCollectionItems.Any()) 1123 { 1124 <p>@Translate("ProductCollectionButtonInstructions", "Use the buttons below to either download files, create quotes or create orders based on the products you have added to your collection.")</p> 1125 1126 <ul class="list-inline print-hide"> 1127 @{ 1128 List<ProductAsset> imageFileList = new List<ProductAsset>(); 1129 List<ProductAsset> dwgFileList = new List<ProductAsset>(); 1130 List<ProductAsset> instructionsFileList = new List<ProductAsset>(); 1131 string contactUsLink = HagsWeb.Library.Utilities.DWUtilities.GetPageByNavigationTag("ContactUs", currentPage); // /kontakta-oss?mode=quote#contactForms // /kontakta-oss?success=True&mode=quote#contactForms // restful url 1132 1133 foreach (var item in productCollectionItems) 1134 { 1135 1136 foreach (ProductAsset asset in item.AssetDownloads.Where(n => n.Index == HagsWeb.Library.Methods.AssetManager.AssetTypeEnum.ToFriendlyAssetName(HagsWeb.Library.Methods.AssetManager.AssetType.Images) && n.FileName == item.ProductNumber + ".jpg" || n.FileName == item.ProductNumber + "_Side.jpg" || n.FileName == item.ProductNumber + "_Top.jpg").ToList()) 1137 { 1138 imageFileList.Add(asset); 1139 } 1140 1141 foreach (ProductAsset asset in item.AssetDownloads.Where(n => n.Index == HagsWeb.Library.Methods.AssetManager.AssetTypeEnum.ToFriendlyAssetName(HagsWeb.Library.Methods.AssetManager.AssetType.Drawings)).ToList()) 1142 { 1143 dwgFileList.Add(asset); 1144 } 1145 1146 foreach (ProductAsset asset in item.AssetDownloads.Where(n => n.Index == HagsWeb.Library.Methods.AssetManager.AssetTypeEnum.ToFriendlyAssetName(HagsWeb.Library.Methods.AssetManager.AssetType.AssemblyInstructions)).ToList()) 1147 { 1148 instructionsFileList.Add(asset); 1149 } 1150 1151 1152 } 1153 1154 if (imageFileList.Any()) 1155 { 1156 <li> 1157 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" name="download" role="button" data-parent="Bilder" id="imageDownloadButton">@Translate("DownloadImages", "Download Images")</a> 1158 </li> 1159 } 1160 1161 if (dwgFileList.Any()) 1162 { 1163 <li> 1164 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" name="download" role="button" data-parent="Ritningar" id="dwgDownloadButton">@Translate("DownloadDWGFiles", "Download DWG Files")</a> 1165 </li> 1166 } 1167 1168 if (instructionsFileList.Any()) 1169 { 1170 <li> 1171 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" name="download" role="button" data-parent="Monteringsanvisningar" id="instructionsDownloadButton">@Translate("DownloadInstallationGuides", "Download Installation Guides")</a> 1172 </li> 1173 } 1174 1175 if (isQuote) 1176 { 1177 if (!string.IsNullOrEmpty(contactUsLink)) 1178 { 1179 <li> 1180 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@contactUsLink?mode=QuickQuote" role="button" data-parent="#quickquote" id="quickQuoteButton">@Translate("CreateQuickQuote", "Create a Quick Quote")</a> 1181 </li> 1182 <li> 1183 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@contactUsLink?mode=QuickOrder" role="button" data-parent="#quickorder" id="quickOrderButton">@Translate("CreateQuickOrder", "Create a Quick Order")</a> 1184 </li> 1185 } 1186 } 1187 if (isCatalog) 1188 { 1189 @*<li> 1190 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" name="TESTcatalogPublishing" role="button" >TEST Button</a> 1191 </li>*@ 1192 <li> 1193 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" data-toggle="modal" data-target="#CreateCatalog" name="catalogPublishing" role="button" data-parent="#catalogue">@Translate("CreateCatalogue", "Create Catalogue")</a> 1194 </li> 1195 } 1196 1197 } 1198 </ul> 1199 1200 } 1201 1202 <span class="error hide"></span> 1203 1204 </div> 1205 1206 <div class="m-search-advanced-results-panel" id="frm_MyProductCollection"> 1207 <div class="row2"> 1208 @if (productCollectionItems.Any()) 1209 { 1210 1211 foreach (ProductCollectionItem item in productCollectionItems) 1212 { 1213 1214 <div class="l-group-5 text-left"> 1215 <div class="m-attractor"> 1216 <div class="m-attractor-visual"> 1217 1218 1219 @if (item.ProductImageUrl != null && !String.IsNullOrEmpty(item.ProductUrlReference)) 1220 { 1221 <a href="@item.ProductUrlReference"><img src="@item.ProductImageUrl" class="img-responsive m-product-thumb" /></a> 1222 } 1223 else 1224 { 1225 <img src="/Files/Templates/Designs/HagsCore/res/img/image-not-found.png" class="img-responsive m-product-thumb" /> 1226 } 1227 1228 1229 </div> 1230 1231 <div class="m-attractor-info m-attractor-info-product"> 1232 <h3 class="m-theme-after-yellow m-theme-border-yellow"><a href="@item.ProductUrlReference">@item.ProductName</a></h3> 1233 @*<p>@item.ProductDescription</p>*@ 1234 <p>@Translate("ProductNumber", "Product Number"): @item.ProductNumber</p> 1235 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@item.ProductUrlReference" role="button">@Translate("ProductDetails", "Product Details")</a> 1236 </div> <!-- attractor-info --> 1237 <div class="m-attractor-options"> 1238 <ul class="m-icon-links list-unstyled"> 1239 <li><a href="" name='productcollection' class="clearfix productcollection" data-removeProductlist="@item.ProductNumber"><img src="/Files/Templates/Designs/HagsCore/res/img/icons/plus.svg" data-nosvg="/Files/Templates/Designs/HagsCore/res/img/icons/plus.png" class="m-icon pull-left"><span>@Translate("RemoveFromCollection", "Remove from my collection")</span></a></li> 1240 </ul> 1241 </div> <!-- m-attractor-options --> 1242 </div> 1243 1244 </div> 1245 1246 1247 } 1248 1249 } 1250 else 1251 { 1252 <p>@Translate("NoProductsInCollection", "You have no products in your collection.")</p> 1253 } 1254 </div> 1255 1256 </div> 1257 1258 </div> 1259 1260 <div class="text-center clearfix" style="clear:both;padding-top:10px;"> 1261 <a href="#productcollection" class="m-search-advanced-close"><img src="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.svg" data-nosvg="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.png" width="112" alt="Search Advanced Close"></a> 1262 </div> 1263 </div> 1264 1265 1266 1267 </div> 1268 1269 <div class="tab-pane fade" id="inspirationfinder"> 1270 1271 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 1272 @using System.Linq; 1273 @using Dynamicweb.Content.Items; 1274 @{ 1275 Dynamicweb.Frontend.PageView thePage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.Current(); 1276 int areaId = thePage.Area.ID; 1277 1278 // Get the current area's Paragraphs and find the ItemPublisher Module, returning a link and its paragraph content. Checks if Normalize latin Chars is set in DW 1279 var tuple = HagsWeb.Library.Methods.Items.ItemTypeMethods.GetDefaultCaseStudies(areaId, 3); 1280 string paraContent = tuple.Item1; 1281 int pageId = tuple.Item2; // The Target Case Study Page listin Case study Item Types 1282 string hyperLink = tuple.Item3; 1283 bool latinCharacters = tuple.Item4; 1284 IEnumerable<Item> caseStudies = tuple.Item5; 1285 1286 //http://developer.dynamicweb-cms.com/documentation/for-developers/item-based-structure/querying-items.aspx 1287 1288 //string DataFromItem = RenderItemList(new 1289 //{ 1290 // ItemType = "Case_Study", 1291 // ListSourceType = "Page", 1292 // ListSourcePage = "62", 1293 // //IncludeAllChildItems = true, 1294 // //IncludeParagraphItems = true, 1295 // ItemFieldsList = "*", 1296 // ListTemplate = "ItemPublisher/List/Case Study List.cshtml", 1297 // ListPageSize = "100" 1298 //}).ToString(); 1299 1300 ////int productsPageId = GetPageIdByNavigationTag("Legals"); 1301 } 1302 <div class="m-search-advanced" style="display:block;visibility:visible;"> 1303 <!--<h4>@Translate("InspirationFinder", "Inspiration Finder")</h4>--> 1304 1305 <div class="m-search-advanced-results-panel fade in" id="frm_InspirationFinder"> 1306 1307 @if (caseStudies.Any()) 1308 { 1309 1310 foreach (var study in caseStudies) 1311 { 1312 string studyId = study["Id"].ToString(); 1313 string Name = study["Study_Heading"] == null ? string.Empty : study["Study_Heading"].ToString(); 1314 string hyperlinkId = study["Read_More_Button"] == null ? String.Empty : study["Read_More_Button"].ToString(); 1315 string hyperlinkText = string.Empty; 1316 string Url = "Default.aspx?ID=" + pageId + "&itemId=Case_Study:" + studyId; 1317 1318 1319 // string sb_trim_Original = System.Text.RegularExpressions.Regex.Replace(Name, @"[., ?\/#!$%\^&\*;:{}=\-_`~()]", "-").ToLower(); 1320 //string sb_trim = System.Text.RegularExpressions.Regex.Replace(Name, @"[., ?\/#!$%\^&\*;:{}=\-_`~]", "-").ToLower(); 1321 1322 //string Url = hyperLink + "/" + sb_trim; 1323 1324 //if (latinCharacters) 1325 //{ 1326 // Url = HagsWeb.Library.Utilities.DWUtilities.NormalizeLatinCharacters(Url); 1327 //} 1328 1329 //string Url = hyperLink + "/" + sb_trim; 1330 string DateCreated = study["Study_Created_Date"] == null ? string.Empty : study["Study_Created_Date"].ToString(); 1331 string Description = study["Study_Content"] == null ? string.Empty : study["Study_Content"].ToString(); 1332 string StudyImages = study["Images"] == null ? string.Empty : study["Images"].ToString(); 1333 Item studyImage = null; 1334 1335 if (!string.IsNullOrEmpty(StudyImages)) 1336 { 1337 studyImage = HagsWeb.Library.Methods.Items.ItemTypeMethods.GetItemImages(study["Images"].ToString(), 1).FirstOrDefault(); 1338 } 1339 1340 1341 <div class="l-group-content col-xs-6 col-ms-4 col-sm-3"> 1342 1343 <div class="m-attractor"> 1344 1345 <div class="m-attractor-visual"> 1346 1347 @if (studyImage == null) 1348 { 1349 <a href="@Url"><img src="/Files/Templates/Designs/HagsCore/res/img/image-not-found.png" class="img-responsive" /></a> 1350 } 1351 else 1352 { 1353 <a href="@Url"><img src='@studyImage["Image"].ToString()' class="img-responsive"></a> 1354 } 1355 1356 1357 @*<img src="/Admin/Public/GetImage.ashx?width=1920&Compression=75&image=@image">*@ 1358 </div> 1359 1360 <div class="m-attractor-info m-attractor-info-product"> 1361 @if (!String.IsNullOrEmpty(Name)) 1362 { 1363 <h3 class="m-theme-after-yellow m-theme-border-yellow"><a href="@Url">@Name</a></h3> 1364 } 1365 @if (!String.IsNullOrEmpty(Description)) 1366 { 1367 <p>@Description</p> 1368 } 1369 1370 @if (!String.IsNullOrEmpty(DateCreated)) 1371 { 1372 <p>@DateCreated</p> 1373 } 1374 1375 @if (!String.IsNullOrEmpty(Url)) 1376 { 1377 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@Url" role="button">@Translate("CaseStudyDetails", "Case Study Details")</a> 1378 } 1379 1380 1381 </div> <!-- attractor-info --> 1382 @*<div class="m-attractor-options"> 1383 1384 <ul class="m-icon-links list-unstyled"> 1385 <li><a href="#" class="clearfix"><img src="/Files/Templates/Designs/HagsCore/res/img/icons/plus.svg" data-nosvg="/Files/Templates/Designs/HagsCore/res/img/icons/plus.png" class="m-icon pull-left"><span>Add to my collection</span></a></li> 1386 </ul> 1387 1388 </div>*@ <!-- m-attractor-options --> 1389 1390 </div> <!-- attractor --> 1391 1392 </div> 1393 } 1394 } 1395 1396 </div> 1397 1398 <div class="text-center all-case-studies"> 1399 1400 @if (!String.IsNullOrEmpty(paraContent)) 1401 { 1402 @paraContent 1403 } 1404 1405 @if (!String.IsNullOrEmpty(hyperLink)) 1406 { 1407 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@hyperLink" role="button">@Translate("ViewAllCaseStudies", "View all our case studies")</a> 1408 } 1409 1410 </div> 1411 1412 @*<div class="m-search-advanced-buttons text-center"> 1413 <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@hyperLink" role="button">@Translate("ViewAllCaseStudies", "View all our case studies")</a> 1414 </div>*@ 1415 1416 @*</div>*@ 1417 1418 <div class="text-center"> 1419 <a href="#inspirationfinder" class="m-search-advanced-close"><img src="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.svg" data-nosvg="/Files/Templates/Designs/HagsCore/res/img/buttons/search-advanced-close.png" width="112" alt="Search Advanced Close"></a> 1420 </div> 1421 </div> 1422 1423 </div> 1424 </div> 1425 1426 <div id="NoResults" style="display:none;">Sorry there are currently no items that match your search criteria. Please refine your search using the options above.</div> 1427 1428 </div> 1429 </div> 1430 1431 <div style="margin-top:50px; display:none;" id="SearchResults">@Translate("YourResults", "YourResults") **Search Results here**</div> 1432 1433 1434 </div> 1435 1436 @Scripts.Render("~/bundle/AssetSearch") 1437 1438 @if (areaLanguage != "en") 1439 { 1440 // non english validation messages 1441 <script src="/Files/Templates/Designs/HagsCore/script/source/libraries/validation/localization/@validationMessages"></script> 1442 } 1443

Omega Base Module

2 seat beam

2 seat beam

8057787

Sunken Foundation

Base Module 2 Places
Green – Sunken Foundation

s

7800 x 3200

  • Age Range: 5-12, 3-5
  • Assembly Time: 3 hours
  • Length (mm): 3933 mm
  • Width (mm): 1950 mm
  • Height (mm): 2480 mm
  • Fall Height (mm): 1500 mm
  • Safety Area Width (mm): 7800 mm
  • Safety Area Length (mm): 3200 mm
  • Safety Area : 25 m²
Read more about anchoring