Search Advanced Close

Um Produktinformationen zum Herunterladen zu finden, klicken Sie auf eine der oben stehenden Optionen und verwenden die Suchfelder, um sich die relevanten Dokumente anzeigen zu lassen.

 

Search Advanced Close

Sie haben keine Produkte in Ihrer Merkliste

Search Advanced Close

Rock It Kletterparcours, Burgrain, Garmisch-Partenkirchen

Unter einer Burgruine vor einem Felsmassiv gelegen, wurde für diesen Spielplatz nach einer optisch passenden Lösung zum Klettern gesucht, um den Spielplatz aufzuwerten.

23.01.2018 15:43:00

Weiterlesen

UniPlay Sonderanlage, Kiga Kiefernstraße, Putzbrunn

In diesem Kindergarten sollte die bestehende alte Spielanlage gegen eine neue wartungsarme Anlage ersetzt werden. Wichtig hierbei waren der Einbezug des Hügels, zu dem eine Verbindung geschaffen werden sollte.

28.11.2017 17:00:00

Weiterlesen

Shade Tension Sail, Spielplatz Solferinoweg, Stuttgart

Eine Beschattung für die Rutschbahn des bereits bestehenden Uni-Play Spielturms, das war die Anforderung bei diesem Projekt.

28.11.2017 16:46:00

Weiterlesen

Get more inspiration from other installations all around the world

Alle Referenzprojekte ansehen
Search Advanced Close
Exception in template (Designs\HagsCore\eCom/Product/Product.cshtml): System.Net.WebException: The remote server returned an error: (502) Bad Gateway.
   at System.Net.HttpWebRequest.GetResponse()
   at HagsWeb.Library.Services.IPCheck.CountryPriceAllowed(String currentCountry)
   at CompiledRazorTemplates.Dynamic.eafacaefffdb.Execute()
   at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context)
   at RazorEngine.Templating.TemplateService.Run(ITemplate template, DynamicViewBag viewBag)
   at RazorEngine.Templating.TemplateService.Parse(String razorTemplate, Object model, DynamicViewBag viewBag, String cacheName)
   at RazorEngine.Razor.Parse[T](String razorTemplate, T model, String cacheName)
   at Dynamicweb.Rendering.Template.Output()
@inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> @using System; @using System.Linq; @using Dynamicweb.Rendering; @using Dynamicweb.Content.Items; @using Dynamicweb.eCommerce.Products; @using HagsWeb.Library.Methods.AssetManager; @using HagsWeb.Library.BusinessObjects.UsersLists; @using HagsWeb.Library.Methods; @using HagsWeb.Library.State; @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> @using System; @using System.Collections.Generic; @using System.Linq; @using System.Text; @using Dynamicweb; @using Ionic.Zip; @using System.IO; @helper GetDownloadList(List<string> files, string sender) { if (files.Any()) { try { var zipArchives = System.Web.HttpContext.Current.Server.MapPath("Files/System/UserDownloads/Zips"); var transferFolder = System.Web.HttpContext.Current.Server.MapPath("Files/System/UserDownloads/Transfers"); // empty the zipArchives folder of zips that are 30 mins old var oldZips = new DirectoryInfo(zipArchives).EnumerateFiles() .Where(f => f.CreationTime < DateTime.Now.AddMinutes(-30)) .ToList(); oldZips.ForEach(f => f.Delete()); // Occasionally some files are read only and cannot be deleted so change all files, remove readonly before the delete new DirectoryInfo(transferFolder).EnumerateFiles().ToList().ForEach(file => file.Attributes &= ~FileAttributes.ReadOnly); Directory.EnumerateFiles(transferFolder).ToList().ForEach(f => System.IO.File.Delete(f)); // copy the selected files to the transferFolder files.ForEach(f => System.IO.File.Copy(f, Path.Combine(transferFolder, Path.GetFileName(f)), true)); // Set up our new zip folder var downloadFileName = string.Format("Hags_Download_Pack-{0}.zip", DateTime.Now.ToString("dd-MM-yyyy-HH_mm_ss")); var zipLocationUrl = "Files/System/UserDownloads/Zips/" + downloadFileName; using (var zip = new ZipFile()) { List<string> fileList = Directory.EnumerateFiles(transferFolder).ToList(); //zip.AddDirectoryByName(subfolderName); foreach (string file in fileList) { zip.AddFile(file, string.Empty); } //zip.Save(System.Web.HttpContext.Current.Response.OutputStream); zip.Save(zipArchives + "/" + downloadFileName); } // assign the .zip link to our download button if (sender == "AdvancedSearch") { <a href="@zipLocationUrl" class="m-btn-search btn btn-default btn-xs text-uppercase" download role="button">@Translate("DownloadAll", "Download All")</a> } if (sender == "Product") { <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="@zipLocationUrl" download role="button">@Translate("ImageDownloads", "Image Downloads")</a> } @*<a class="m-btn-search btn btn-default btn-xs text-uppercase" role="button"></a>*@ } catch (System.IO.FileNotFoundException notFoundEx) { HagsWeb.Library.CustomException.HagsException.SetHagsException(notFoundEx, "../Templates/HagsModules/UsersAssetsSearch/ProductDownloads/GetDownloads.cshtml" +notFoundEx.Message+" - The File: " +notFoundEx.FileName, System.Diagnostics.EventLogEntryType.Error); <span>Some files were not tranferred.</span> } catch (Exception ex) { HagsWeb.Library.CustomException.HagsException.SetHagsException(ex, "../Templates/HagsModules/UsersAssetsSearch/ProductDownloads/GetDownloads.cshtml" + ex.Message + " - The Inner Ex: " + ex.InnerException, System.Diagnostics.EventLogEntryType.Error); <span>There was an error.</span> } finally { } } else { <p>@Translate("NoFilesFound", "No Files Found.")</p> } } @{ Dynamicweb.Frontend.PageView thisPage = Dynamicweb.Frontend.PageView.Current() ?? Dynamicweb.Frontend.PageView.GetPageview(); Item areaItem = Item.GetItemById("Website_Settings", thisPage.Area.Item.Id); var siteSection = HagsWeb.Library.Methods.Page.HagsPages.GetSiteSection(thisPage.AreaID, thisPage.ID); string salesPhoneNumber = areaItem["Telephone"].ToString(); string productNumber = GetString("Ecom:Product.Number"); // The Product NUMBER for the moment List<ProductAsset> assets = AssetManager_Repository.GetAssets(productNumber, AssetType.All, true); List<ProductAsset> printImages = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images) && n.FileName.StartsWith("big_") || n.FileName.StartsWith("big_Color_")).ToList(); List<ProductAsset> hiResImages = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images) && n.FileName == productNumber + ".jpg" || n.FileName == productNumber + "_Side.jpg" || n.FileName == productNumber + "_Top.jpg").ToList(); string VariantId = Dynamicweb.Input.Request("VariantID"); // off the url if (String.IsNullOrEmpty(VariantId)) { VariantId = GetString("Ecom:Product.VariantID"); // The master variant if it exists // Empty on most Products } // The users Product Collection in session List<ProductCollectionItem> productCollectionItems = SessionManager.UsersMyProductCollection != null ? SessionManager.UsersMyProductCollection : new List<ProductCollectionItem>(); bool isProductCollection = productCollectionItems.Any(n => n.ProductNumber == productNumber); string currentCulture = GetGlobalValue("Global:Area.LongLang"); //en-GB, sv-SE string currentCountry = currentCulture.Substring(currentCulture.Length - 2); // GB, SE string ipPriceAllowed = HagsWeb.Library.Services.IPCheck.CountryPriceAllowed(currentCountry); // ZZZ,GB,SE (Web.config) string collectionData = string.Empty; if (!String.IsNullOrWhiteSpace(GetGlobalValue("Global:Extranet.Name"))) { // not used even if logged-in collectionData = GetString("Ecom:Product.AddToList"); // only available if logged-in } else { collectionData = string.Format("CCAddToMyLists={0}&CCAddToListVariantID={1}&CCAreaID={2}&CCAddToListCulture={3}&CCAddToListLanguageID={4}#{5}", GetString("Ecom:Product.Number"), GetString("Ecom:Product.VariantID"), GetGlobalValue("Global:Area.ID"), GetGlobalValue("Global:Area.LongLang"), @GetString("Ecom:Product.LanguageID"), siteSection); } // Related Products and their Assembly Instructions List<Product> relatedProducts = new List<Product>(); List<Product> relatedComponentProducts = new List<Product>(); List<ProductAsset> relatedProductsAssemblyInstructions = new List<ProductAsset>(); if (GetInteger("Ecom:Product.RelatedCount") > 0) { if(GetLoop("ProductRelatedGroups").Where(n => n.GetString("Ecom:Product:RelatedGroup.Name") == "Product Modules") != null) { relatedProducts = HagsWeb.Library.Methods.ProductFilter.ProductFilter.GetRelatedProducts(GetString("Ecom:Product.Number"), "Product Modules"); } if (GetLoop("ProductRelatedGroups").Where(n => n.GetString("Ecom:Product:RelatedGroup.Name") == "Product Components") != null) { relatedComponentProducts = HagsWeb.Library.Methods.ProductFilter.ProductFilter.GetRelatedProducts(GetString("Ecom:Product.Number"), "Product Components"); // Lookup Assembly Instructions Assets foreach (Product product in relatedComponentProducts) { List<ProductAsset> productAssemblyInstructions = AssetManager_Repository.GetAssets(product.Number, AssetType.AssemblyInstructions, false); if (productAssemblyInstructions.Any()) { List<ProductAsset> result = productAssemblyInstructions.Where(pa => !relatedProductsAssemblyInstructions.Any(pa2 => pa2.FileName == pa.FileName)).ToList(); relatedProductsAssemblyInstructions.AddRange(result); } } } } string selectedColourVariant = string.Empty; string selectedAnchoringVariant = string.Empty; string selectedMaterialVariant = string.Empty; string selectedOptionVariant = string.Empty; int combinationsCount = 0; if (GetInteger("Ecom:Product.VariantCount") > 0) { foreach (var variantGroup in GetLoop("VariantGroups").Where(n => n.GetString("Ecom:VariantGroup.ID") != "D")) // Remove All Date Variants { int optionsCount = variantGroup.GetLoop("VariantAvailableOptions").Count(); if (optionsCount > 0) { if (!string.IsNullOrEmpty("Ecom:Product.SelectedVariantComboID")) // optionsCount == 1 { foreach (var availableOption in variantGroup.GetLoop("VariantAvailableOptions")) { if (Dynamicweb.Input.FormatBoolean(availableOption.GetString("Ecom:VariantOption.Selected")) == true) { if (variantGroup.GetString("Ecom:VariantGroup.ID") == "S55") { selectedColourVariant = availableOption.GetString("Ecom:VariantOption.Name"); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP1") { selectedMaterialVariant = availableOption.GetString("Ecom:VariantOption.Name"); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP3") { selectedAnchoringVariant = availableOption.GetString("Ecom:VariantOption.Name"); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP4") { selectedOptionVariant = availableOption.GetString("Ecom:VariantOption.Name"); } } } } } } } string pageUrl = thisPage.Page.get_Value("pagepathurl").ToString(); List<string> ageRanges = new List<string>(); List<string> productTypes = new List<string>(); List<string> productFunctions = new List<string>(); List<string> brands = new List<string>(); List<string> models = new List<string>(); List<string> anchoringTypes = new List<string>(); } <!--Templates/Designs/HagsCore/eCom/Product/Product.cshtml--> <script type="text/javascript" src="Files/Templates/Designs/HagsCore/script/source/functions/kdl-product-filter.js"></script> <input type="hidden" id="productVariantId" value="@VariantId" /> <div class="m-heading m-theme-background-yellow m-theme-color-white breadcrumb product"> <div class="l-page"> <div class="container-fluid"> @{ string breadcrumb = HagsWeb.Library.Methods.Page.HagsPages.GetThisPageNavigation(pageUrl, GetGlobalValue("Global:Area.LongLang")); } <div class="m-menu-primary breadcrumb"> <nav class="text-centre text-uppercase"> @breadcrumb </nav> </div> </div> <!-- container-fluid --> </div> <!-- l-page --> </div> <!-- m-heading --> <div class="l-page"> <div class="container-fluid"> @*<p>@ipPriceAllowed</p>*@ <div class="row"> <div class="col-sm-7" style="float:right;"> <div class="m-product-gallery-visual-print"> @foreach (ProductAsset image in assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images) && n.FileName.StartsWith("big_") || n.FileName.StartsWith("big_Color_"))) { <p style="text-align:center !important;"><img src="@image.uri" class="img-responsive" alt="Masthead image" /></p> } </div> <!-- m-product-gallery-visual --> </div> <div class="col-sm-5" style="float:left;"> <h1>@GetValue("Ecom:Product.Name")</h1> @*@GetValue("Ecom:Product.LongDescription")*@ @*@if(!string.IsNullOrEmpty(GetString("Ecom:Product.VariantID")) || GetLoop("VariantCombinations").Count() == 1) {*@ @if (thisPage.Area.ID == 7) /*UK*/ { <h3 id="displayproductnumber" class="displayproductnumber" style="clear:both;float:none;padding-left:0px;">@Translate("ProductCode", "Product Number"): @GetString("Ecom:Product:Field.UKProductNumber")</h3> } else { <h3 id="displayproductnumber" class="displayproductnumber" style="clear:both;float:none;padding-left:0px;">@Translate("ProductCode", "Product Number"): @GetString("Ecom:Product.Number")</h3> } @*}*@ @if (!string.IsNullOrEmpty(GetString("Ecom:Product.VariantID")) || GetLoop("VariantCombinations").Count() == 1) { <div id="selected-variants" class="box-padding"> <ul> <li><span><strong>@Translate("ColourOptions", "Colour"):</strong></span> <span>@selectedColourVariant.Replace("Not applicable", Translate("NotApplicable", "Not applicable"))</span></li> <li><span><strong>@Translate("MaterialOptions", "Material"):</strong></span> <span>@selectedMaterialVariant.Replace("Not applicable", Translate("NotApplicable", "Not applicable"))</span></li> <li><span><strong>@Translate("AnchoringOptions", "Anchoring"):</strong></span> <span>@selectedAnchoringVariant.Replace("Not applicable", Translate("NotApplicable", "Not applicable"))</span></li> <li><span><strong>@Translate("OptionOptions", "Option"):</strong></span> <span>@selectedOptionVariant.Replace("Not applicable", Translate("NotApplicable", "Not applicable"))</span></li> </ul> </div> } @if (thisPage.Area.ID == 2 && (ipPriceAllowed == currentCountry)) /*Sweden*/ { <p><strong>@Translate("Price", "Price"): @GetString("Ecom:Product.Price.PriceFormatted")</strong></p> } @if (thisPage.Area.ID == 7) /*UK*/ { if (!string.IsNullOrEmpty(GetString("Ecom:Product:Field.UKProductNumber"))) { <p><strong>@Translate("ProductNumber", "Product Number"):</strong> @GetValue("Ecom:Product:Field.UKProductNumber")</p> } if (ipPriceAllowed == currentCountry) { string ukPrice = string.IsNullOrEmpty(GetString("Ecom:Product:Field.UKProductPrice")) ? "On Application" : "&pound;"+ string.Format(new System.Globalization.CultureInfo("en-GB", false), "{0:c}", GetValue("Ecom:Product:Field.UKProductPrice")); <p><strong>@Translate("Price", "Price"): @ukPrice</strong></p> } } <p>@GetValue("Ecom:Product.LongDescription")</p> <div id="colour-options" class="print-hide"><h5>@Translate("SelectColourOption", "Select your colour from the options below.")</h5></div> <div class="panel-group" id="accordion" role="tablist" aria-multiselectable="false"> <div class="panel panel-default print-hide"> <div class="panel-heading" role="tab" id="headingOne"> <h4 class="m-panel-title panel-title"> <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne" class=""> @Translate("ProductOptions", "Product Options") </a> </h4> </div> <div id="collapseOne" class="panel-collapse collapse in print-hide" role="tabpanel" aria-labelledby="headingOne" aria-expanded="true"> <div class="panel-body"> <p>@Translate("FindProductsOption", "To find the products that meet your requirements simply select from the product options below.")</p> <div class="print-hide" style="display:none;"> @{ combinationsCount = GetLoop("VariantCombinations").Count(); if (combinationsCount > 0) { <ul id="data-product-variants" style="display:block"> @foreach (LoopItem variantCombinationStrings in GetLoop("VariantCombinations")) { <li data-variantinfo="@variantCombinationStrings.GetString("Ecom:VariantCombination.Link.Clean")"> @variantCombinationStrings.GetString("Ecom:VariantCombination.Product.Number") @variantCombinationStrings.GetString("Ecom:VariantCombination.Link") </li> } </ul> <ul style="display:none"> @*maybe not used*@ @foreach (LoopItem variantCombinationStrings in GetLoop("VariantCombinations")) { <li data-variantinfo="@variantCombinationStrings.GetString("Ecom:VariantCombination.Link.Clean")" data-varianturl='@variantCombinationStrings.GetString("Ecom:VariantCombination.Link")'> @if (Dynamicweb.Input.FormatBoolean(variantCombinationStrings.GetValue("Ecom:VariantCombination.Selected"))) { <span style="color:red;">@variantCombinationStrings.GetValue("Ecom:VariantCombination.Product.Name") </span><span>@variantCombinationStrings.GetString("Ecom:VariantCombination.Link.Clean")</span> <span> @variantCombinationStrings.GetString("Ecom:VariantCombination.Product.Number") </span> @variantCombinationStrings.GetString("Ecom:VariantCombination.VariantText") } @if (!Dynamicweb.Input.FormatBoolean(variantCombinationStrings.GetValue("Ecom:VariantCombination.Selected"))) { <span>@variantCombinationStrings.GetString("Ecom:VariantCombination.Link.Clean")</span><span>@variantCombinationStrings.GetString("Ecom:VariantCombination.Product.Number") </span> @variantCombinationStrings.GetString("Ecom:VariantCombination.Link") } </li> } </ul> } } </div>@*maybe Variant Links not used*@ <div id="variants-filter" class="visible-screen print-hide"> @if (GetInteger("Ecom:Product.VariantCount") > 0) { foreach (var variantGroup in GetLoop("VariantGroups").Where(n => n.GetString("Ecom:VariantGroup.ID") != "D")) // Remove All Date Variants { int optionsCount = variantGroup.GetLoop("VariantAvailableOptions").Count(); if (optionsCount > 0) { <div class="form-group" style="padding-top:23px;"> <label for="@variantGroup.GetValue("Ecom.VariantGroup.ID")" class="col-sm-5 control-label">@variantGroup.GetValue("Ecom:VariantGroup.Name")</label> <div class="col-sm-7"> @if (optionsCount == 1) { foreach (var availableOption in variantGroup.GetLoop("VariantAvailableOptions")) { @*<span>@availableOption.GetString("Ecom:VariantOption.Name") @availableOption.GetString("Ecom:VariantOption.ID")</span>*@ if (Dynamicweb.Input.FormatBoolean(availableOption.GetString("Ecom:VariantOption.Selected")) == true) { if (variantGroup.GetString("Ecom:VariantGroup.ID") == "S55") { selectedColourVariant = availableOption.GetString("Ecom:VariantOption.Name"); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP1") { selectedMaterialVariant = availableOption.GetString("Ecom:VariantOption.Name"); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP3") { selectedAnchoringVariant = availableOption.GetString("Ecom:VariantOption.Name"); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP4") { selectedOptionVariant = availableOption.GetString("Ecom:VariantOption.Name"); } } <p>@availableOption.GetString("Ecom:VariantOption.Name").Replace("Not applicable", Translate("NotApplicable", "Not applicable"))</p> <input type="hidden" name="variantSelect" value="@availableOption.GetString("Ecom:VariantOption.ID")" /> } } @if (optionsCount > 1) { <select class="form-control filter-group" name="variantSelect" id="@variantGroup.GetValue("Ecom:VariantGroup.ID")" name="@variantGroup.GetValue("Ecom:VariantGroup.ID")"> <option value="0">@Translate("Any", "Any")</option> @*@if (Dynamicweb.Input.FormatBoolean(variantCombinationStrings.GetValue("Ecom:VariantCombination.Selected")))*@ @foreach (var availableOption in variantGroup.GetLoop("VariantAvailableOptions")) { string selected = string.Empty;// Dynamicweb.Input.FormatBoolean(availableOption.GetString("Ecom:VariantOption.Selected")) == true ? "selected='selected'" : string.Empty; if (!String.IsNullOrEmpty(GetString("Ecom:Product.VariantID"))) { selected = Dynamicweb.Input.FormatBoolean(availableOption.GetString("Ecom:VariantOption.Selected")) == true ? "selected='selected'" : string.Empty; } if (!string.IsNullOrEmpty(VariantId) && availableOption.GetString("Ecom:VariantOption.ID") == VariantId) { selected = "selected='selected'"; } //selectedAnchoringVariant = availableOption.GetString("Ecom:VariantOption.Name"); //selectedColourVariant = availableOption.GetString("Ecom:VariantOption.Name"); if (Dynamicweb.Input.FormatBoolean(availableOption.GetString("Ecom:VariantOption.Selected")) == true) { if (variantGroup.GetString("Ecom:VariantGroup.ID") == "S55") { selectedColourVariant = availableOption.GetString("Ecom:VariantOption.Name").Replace("Not applicable", Translate("NotApplicable", "Not applicable")); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP1") { selectedMaterialVariant = availableOption.GetString("Ecom:VariantOption.Name").Replace("Not applicable", Translate("NotApplicable", "Not applicable")); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP3") { selectedAnchoringVariant = availableOption.GetString("Ecom:VariantOption.Name").Replace("Not applicable", Translate("NotApplicable", "Not applicable")); } if (variantGroup.GetString("Ecom:VariantGroup.ID") == "ATP4") { selectedOptionVariant = availableOption.GetString("Ecom:VariantOption.Name").Replace("Not applicable", Translate("NotApplicable", "Not applicable")); } } //string url = "Default.aspx?ID=" + availableOption.GetValue("Ecom:VariantCombination.Page.ID") + // "&amp;ProductID=" + availableOption.GetValue("Ecom:VariantCombination.Product.ID") + // "&amp;variantid=" + availableOption.GetValue("Ecom:VariantCombination.VariantID") + // ">" + availableOption.GetValue("Ecom:VariantCombination.Product.Name") + " - " + // availableOption.GetValue("Ecom:VariantCombination.VariantText") + "</a> (stock: " + availableOption.GetValue("Ecom:VariantCombination.Product.Stock") + " )</h3>"; //string selected = Dynamicweb.Input.FormatBoolean(availableOption.GetString("Ecom:VariantOption.Selected")) == true ? "selected='selected'" : string.Empty; // } //string aUrl = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl(@GetValue("Ecom:Product.Link.Clean") + "&amp;ProductID=" + @GetString("Ecom:Product.ID") + "&amp;variantid=S554.A1DEFAULT.A320.A4222.D1012"); //string ayUrl = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl(@GetValue("Ecom:Product.Link.Clean") + "&amp;ProductID=" + @GetString("Ecom:Product.ID") + "&amp;variantid=" + @GetValue("Ecom:Product.SelectedVariantComboID")); //string optionName = availableOption.GetString("Ecom:VariantOption.Name") == "Not applicable" ? "Select an Option" : availableOption.GetString("Ecom:VariantOption.Name"); //string optionValue = availableOption.GetString("Ecom:VariantOption.Name") == "Not applicable" ? "0" : availableOption.GetString("Ecom:VariantOption.ID"); string optionName = availableOption.GetString("Ecom:VariantOption.Name").Replace("Not applicable", Translate("NotApplicable", "Not applicable")); string optionValue = availableOption.GetString("Ecom:VariantOption.ID"); <option value="@optionValue" @selected> @optionName</option> } </select> } </div> </div>@*@End form-group*@ } @*End if optionsCount > 0*@ } } </div> <div id="variant-selects"> <style type="text/css"> .radio-label { display: inline-block; margin-right: 12px; font-weight: normal; } .radio-label.disabled { color: #888; text-decoration: line-through; } .radio-parent { font-weight: bold; display: block; margin-bottom: 3px; margin-top: 10px; } #variant-selects .btn { float: right; display: block; javascript: void(0); } #variant-radio-group-3 { margin-bottom: 12px !important; border-bottom: 1px solid #ddd; padding-bottom: 18px; } </style> </div> <div class="variant-holder" style="display:block; float:left; width:100%;margin-bottom: 24px; display:none;"> <p><strong>Product variants found:</strong><br />Click one of the products listed to view.</p> <div id="variant-holder"></div> </div> <div id="message" class="error hidden">@selectedAnchoringVariant || @selectedColourVariant</div> @if (GetInteger("Ecom:Product.VariantCount") > 0) { <div class="m-product-options visible-print"> @foreach (var variantGroup in GetLoop("VariantGroups").Where(n => n.GetString("Ecom:VariantGroup.ID") != "D")) // Remove All Date Variants { foreach (var availableOption in variantGroup.GetLoop("VariantAvailableOptions")) { if (availableOption.GetBoolean("Ecom:VariantOption.Selected") && availableOption.GetString("Ecom:VariantOption.Name") != "Not applicable") { <div class="form-group"> <label class="col-sm-5 control-label">@variantGroup.GetValue("Ecom:VariantGroup.Name")</label> <div class="col-sm-7"> <p>@availableOption.GetString("Ecom:VariantOption.Name")</p> </div> </div> } } } </div> } @*Product Number Display*@ @if (!string.IsNullOrEmpty(GetString("Ecom:Product.VariantID")) || GetLoop("VariantCombinations").Count() == 1) { <div id="selected-variants" class="box-padding hide"> <ul> <li><span><strong>Colour:</strong></span> <span>@selectedColourVariant</span></li> <li><span><strong>Material:</strong></span> <span>@selectedMaterialVariant</span></li> <li><span><strong>Anchoring:</strong></span> <span>@selectedAnchoringVariant</span></li> <li><span><strong>Option:</strong></span> <span>@selectedOptionVariant</span></li> </ul> </div> } </div> </div> </div> <div class="panel panel-default"> <div class="panel-heading" role="tab" id="headingTwo"> <h4 class="m-panel-title panel-title"> <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="true" aria-controls="collapseTwo" class="collapsed"> @Translate("ProductSpecifications", "Product Specifications") </a> </h4> </div> <div id="collapseTwo" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingTwo" aria-expanded="true"> <div class="panel-body"> <div id="product-left"> <div class="padding"> <div id="product-list-information" class="box-padding"> @{ foreach (var age in GetLoop("AgeRange.Options")) { if (age.GetBoolean("AgeRange.Option.IsSelected")) { ageRanges.Add(age.GetString("AgeRange.Option.Name")); @* KOD <pre> @string.Join("\n", age.Values.Select(e => string.Format("{0}: {1}", e.Key, System.Web.HttpUtility.HtmlEncode(e.Value))).ToArray()) </pre >*@ } } foreach (var type in GetLoop("ProductTypes.Options")) { if (type.GetBoolean("ProductTypes.Option.IsSelected")) { productTypes.Add(type.GetString("ProductTypes.Option.Name")); } } foreach (var function in GetLoop("ProductFunctions.Options")) { if (function.GetBoolean("ProductFunctions.Option.IsSelected")) { productFunctions.Add(function.GetString("ProductFunctions.Option.Name")); } } foreach (var brand in GetLoop("Brand.Options")) { if (brand.GetBoolean("Brand.Option.IsSelected")) { brands.Add(brand.GetString("Brand.Option.Name")); } } foreach (var model in GetLoop("Model.Options")) { if (model.GetBoolean("Model.Option.IsSelected")) { models.Add(model.GetString("Model.Option.Name")); } } foreach (var anchoringType in GetLoop("AnchoringTypes.Options")) { if (anchoringType.GetBoolean("AnchoringTypes.Option.IsSelected")) { anchoringTypes.Add(anchoringType.GetString("AnchoringTypes.Option.Name")); } } } <ul> @if (thisPage.Area.ID == 7) /*UK*/ { <li><span><strong>@Translate("Product", "Product") #:</strong></span> <span>@GetString("Ecom:Product:Field.UKProductNumber")</span></li> } else { <li><span><strong>@Translate("Product", "Product") #:</strong></span> <span>@GetString("Ecom:Product.Number")</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.OldRefNumber"))) { <li><span><strong>@GetString("Ecom:Product:Field.OldRefNumber.Name") #:</strong></span> <span>@GetString("Ecom:Product:Field.OldRefNumber")</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.AgeRange"))) { <li><span><strong>@GetString("Ecom:Product:Field.AgeRange.Name"):</strong></span> <span>@string.Join(", ", ageRanges)</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.ProductFunctions"))) { <li><span><strong>@GetString("Ecom:Product:Field.ProductFunctions.Name"):</strong></span> <span>@string.Join(", ", productFunctions)</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.ProductTypes"))) { <li><span><strong>@GetString("Ecom:Product:Field.ProductTypes.Name"):</strong></span> <span>@string.Join(", ", productTypes)</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.Brand"))) { <li><span><strong>@GetString("Ecom:Product:Field.Brand.Name"):</strong></span> <span>@string.Join(", ", brands)</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.Model"))) { <li><span><strong>@GetString("Ecom:Product:Field.Model.Name"):</strong></span> <span>@string.Join(", ", models)</span></li> } @*Colour from Variant*@ @if (!string.IsNullOrEmpty(selectedColourVariant) && selectedColourVariant != "Not applicable") { <li><span><strong>@Translate("Colour", "Colour"):</strong></span> <span>@selectedColourVariant</span></li> } @if (thisPage.Area.ID == 2 && (ipPriceAllowed == currentCountry)) /*Sweden*/ { <li class="price"><span><strong>@Translate("Price", "Price"):</strong></span> <span class="product-price-container">@GetString("Ecom:Product.Price.PriceFormatted")</span></li> } @if (thisPage.Area.ID == 7) /*UK*/ { if (ipPriceAllowed == currentCountry) { string ukPrice = string.IsNullOrEmpty(GetString("Ecom:Product:Field.UKProductPrice")) ? "On Application" : "&pound;" + string.Format(new System.Globalization.CultureInfo("en-GB", false), "{0:c}", GetValue("Ecom:Product:Field.UKProductPrice")); <li class="price"><span><strong>@Translate("Price", "Price"):</strong></span> <span class="product-price-container">@ukPrice</span></li> } } </ul> <p>&nbsp;</p> <h4>@Translate("TechnicalInformation", "Technical information")</h4> <ul> @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.AssemblyTime"))) { <li><span><strong>@GetString("Ecom:Product:Field.AssemblyTime.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.AssemblyTime.Value.Raw") @Translate("Hours", "hours")</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.Length"))) { <li><span><strong>@GetString("Ecom:Product:Field.Length.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.Length.Value.Raw") mm</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.Width"))) { <li><span><strong>@GetString("Ecom:Product:Field.Width.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.Width.Value.Raw") mm</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.Height"))) { <li><span><strong>@GetString("Ecom:Product:Field.Height.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.Height.Value.Raw") mm</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.NetWeight"))) { <li><span><strong>@GetString("Ecom:Product:Field.NetWeight.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.NetWeight.Value.Raw") kg</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.Volume"))) { <li><span><strong>@GetString("Ecom:Product:Field.Volume.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.Volume.Value.Raw") m&#179;</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.FallHeight")) && GetInteger("Ecom:Product:Field.FallHeight.Value.Raw") > 0) { <li><span><strong>@GetString("Ecom:Product:Field.FallHeight.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.FallHeight.Value.Raw") mm</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.SafetyAreaWidth")) && GetInteger("Ecom:Product:Field.SafetyAreaWidth.Value.Raw") > 0) { <li><span><strong>@GetString("Ecom:Product:Field.SafetyAreaWidth.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.SafetyAreaWidth.Value.Raw") mm</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.SafetyAreaLength")) && GetInteger("Ecom:Product:Field.SafetyAreaLength.Value.Raw") > 0) { <li><span><strong>@GetString("Ecom:Product:Field.SafetyAreaLength.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.SafetyAreaLength.Value.Raw") mm</span></li> } @if (!String.IsNullOrWhiteSpace(GetString("Ecom:Product:Field.SaftyArea")) && GetInteger("Ecom:Product:Field.SaftyArea.Value.Raw") > 0) { <li><span><strong>@GetString("Ecom:Product:Field.SaftyArea.Name"):</strong></span> <span>@GetString("Ecom:Product:Field.SaftyArea.Value.Raw") m&#178;</span></li> } @*Anchoring from Variant*@ @if (!string.IsNullOrEmpty(selectedAnchoringVariant)) { string anchoringPage = HagsWeb.Library.Methods.DWUtilities.GetPageByNavigationTag("AnchoringTypes", thisPage.Area.ID); <li><span><strong>@Translate("Anchoring", "Anchoring"):</strong></span> <span>@selectedAnchoringVariant</span></li> if (!string.IsNullOrEmpty(anchoringPage)) { <li class="print-hide"><a href="@anchoringPage">@Translate("ReadMoreAnchoring", "Read more about anchoring")</a></li> } } </ul> </div> <p>&nbsp;</p> @{ string materialData = GetString("Ecom:Product:Field.Material");// Get Material data from a Field on the Product data from Jeeves (not implemented yet) GetString("Ecom:Product:Field.MaterialData"); if (!string.IsNullOrEmpty(materialData)) { //System.Xml.Linq.XDocument dataXML = System.Xml.Linq.XDocument.Load(System.Web.HttpContext.Current.Server.MapPath("~/Files/Templates/eCom/Product/meterial_xml_out_put.xml")); System.Xml.Linq.XDocument dataXML = System.Xml.Linq.XDocument.Parse(materialData); if (dataXML != null) { System.Globalization.NumberFormatInfo format = new System.Globalization.NumberFormatInfo(); format.NumberGroupSeparator = ","; //for thousands format.NumberDecimalSeparator = "."; //the decimal seperator var totalweight = Math.Round((from nd in dataXML.Descendants("kg") select Double.Parse(nd.Value, format)).Sum(), 0).ToString(); var totalpercent = Math.Round((from nd in dataXML.Descendants("percent") select Double.Parse(nd.Value, format)).Sum(), 0).ToString(); var details = from dat in dataXML.Descendants("Item") select new { material = dat.Element("material").Value, weight = dat.Element("kg").Value, percent = dat.Element("percent").Value }; <h4 class="print-hide">@GetString("Ecom:Product:Field.Material.Name")</h4> <table class="table"> <thead> <tr> <th>@GetString("Ecom:Product:Field.Material.Name")</th> <th>kg</th> <th>&#37;</th> </tr> </thead> <tbody> @foreach (var item in details) { <tr> <td>@item.material</td> <td>@item.weight</td> <td>@item.percent</td> </tr> } </tbody> <tfoot> <tr> <td>&nbsp;</td> <td><strong>@totalweight kg</strong></td> <td><strong>@totalpercent&#37;</strong></td> </tr> </tfoot> </table> <!--! #table-materials --> } } } </div> <!--! .padding --> </div> </div> </div> </div> </div> </div> <div class="col-sm-7"> <div class="m-product-gallery-visual print-hide" style="margin-top: 30px;display:block;float:left;width:100%;"> <ul> @foreach (ProductAsset image in assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images) && n.FileName.StartsWith("big_") || n.FileName.StartsWith("big_Color_"))) { <li style="text-align:left !important;"><img src="@image.uri" class="img-responsive" alt="Masthead image" style="width:auto;margin: 0 auto 0 auto;" /></li> } </ul> </div> <!-- m-product-gallery-visual --> <div class="m-product-gallery-sync slider-nav print-hide"> <ul class="list-inline thumbnails"> @foreach (ProductAsset image in assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images) && n.FileName.StartsWith("thumb_"))) { <li><img src="@image.uri" class="thumbnail img-responsive" alt="Masthead image" /></li> } </ul> </div> <div> <ul class="m-btn-menu-secondary print-hide"> @{ var imagesCount = assets.Select(n => n).Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images)).Count(); var brochCount = assets.Select(n => n).Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Brochures)).Count(); } @if (imagesCount + brochCount < assets.Count()) { <li> <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="#collapseThree" role="button" data-toggle="collapse" data-parent="#productdownload" id="productDownloadButton" aria-controls="collapseThree">@Translate("ProductDownloads", "Product Downloads")</a> </li> } @{ if (hiResImages.Count() > 0) { List<string> fileList = new List<string>(); foreach (var file in hiResImages) { fileList.Add(file.FullPath); } <li> @GetDownloadList(fileList, "Product") </li> } } <li> <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase" href="" role="button" data-toggle="collapse" data-parent="#productdownload" id="productSheetButton" aria-controls="collapseFour" onclick="javascript:window.print();">@Translate("ProductSheet", "Product Sheet")</a> </li> <li style="margin-top: 8px;"> @if (!string.IsNullOrEmpty(GetString("Ecom:Product.VariantID")) || GetLoop("VariantCombinations").Count() == 1) { if (isProductCollection) { <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase print-hide" href="" role="button" data-removeproductlist="@GetString("Ecom:Product.Number")" data-addproductlist=""><span>@Translate("RemoveFromCollection", "Remove from my Collection")</span></a> } else { <a class="m-btn-xs-more btn btn-default btn-xs text-uppercase print-hide" href="" role="button" data-removeproductlist="" data-addproductlist="@collectionData"><span>@Translate("AddToCollection", "Add to my collection")</span></a> } } </li> @*only works if logged-in <li><a href="@GetString("Ecom:Product.AddToList")">Add To List Do something else</a></li>*@ </ul> </div> <div class="panel-group" id="productdownload" role="tablist" aria-multiselectable="false"> <div id="collapseThree" class="panel-collapse collapse" role="tabpanel" aria-labelledby="productDownloadButton" aria-expanded="true" style="height: 0px;"> <div class="panel panel-default panel-body print-hide"> @{ List<ProductAsset> certAssets = new List<ProductAsset>(); if (thisPage.Area.ID == 1) { certAssets = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Certificates)).ToList(); } else { certAssets = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Certificates) && n.FileName.StartsWith(currentCountry + "_")).ToList(); } if (certAssets.Count() == 0) // if none are found try to get GB certificates { certAssets = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Certificates) && n.FileName.StartsWith("GB_")).ToList(); } } @if (certAssets.Count > 0) { <h5>@Translate("Certificates", "Certificates")</h5> <ul> @foreach (ProductAsset cert in certAssets) { <li> <a href="@cert.uri" download="@cert.FileName"> <span><img src="Admin/Images/ext/pdf.gif" /></span><span>@cert.FileName</span> </a> </li> } </ul> } @{ List<ProductAsset> assemblyAssets = new List<ProductAsset>(); assemblyAssets = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.AssemblyInstructions)).ToList(); } @if (assemblyAssets.Count > 0) { <h5>@Translate("InstallationGuides", "Installation Guides")</h5> <ul> @foreach (ProductAsset assemblyInstns in assemblyAssets) { <li> <a href="@assemblyInstns.uri" download="@assemblyInstns.FileName"> <span><img src="Admin/Images/ext/pdf.gif" /></span><span>@assemblyInstns.FileName</span> </a> </li> } </ul> } @if (relatedProductsAssemblyInstructions.Count > 0) { <h5>@Translate("DetailedInstallationGuides", "Detailed Installation Guides")</h5> <ul class="list-column list-inline"> @foreach (ProductAsset assemblyInstns in relatedProductsAssemblyInstructions) { <li> <a href="@assemblyInstns.uri" download="@assemblyInstns.FileName"> <span><img src="Admin/Images/ext/pdf.gif" /></span><span>@assemblyInstns.FileName</span> </a> </li> } </ul> } @{ List<ProductAsset> dwgAssets = new List<ProductAsset>(); dwgAssets = assets.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Drawings)).ToList(); } @if (dwgAssets.Count > 0) { <h5>@Translate("DWGFiles", "DWG Files")</h5> <ul> @foreach (ProductAsset dwg in dwgAssets) { <li> <a href="@dwg.uri" download="@dwg.FileName"> <span><img src="Admin/Images/ext/dwp.gif" /></span><span>@dwg.FileName</span> </a> </li> } </ul> } <h5>@Translate("GeneralInformation", "General Information")</h5> <ul> <li><a href="Files/Files/Downloads/hags-general-info-en%20(6).pdf"><span><img src="Admin/Images/ext/pdf.gif"></span><span>@Translate("GeneralInformation", "General Information")</span></a></li> <li><a href="Files/Files/Downloads/hags-technical-specs-en%20(2).pdf"><span><img src="Admin/Images/ext/pdf.gif"></span><span>@Translate("TechnicalInformation", "Technical Information")</span></a></li> </ul> </div> </div> <div id="collapseFour" class="panel-collapse collapse" role="tabpanel" aria-labelledby="productSheetButton" aria-expanded="true" style="height: 0px;"> <div class="panel-body print-hide"> <p>Printed</p> </div> </div> </div> @if (!String.IsNullOrEmpty(salesPhoneNumber)) { string contactUsLink = DWUtilities.GetPageByNavigationTag("ContactUs", thisPage.Area.ID); <p class="m-cta-call print-hide"><span>@Translate("CallOurSalesTeamOn", "Call a member of our team on") <a href="#"><strong>@salesPhoneNumber</strong></a> @Translate("OrUseOur", "or use our") <a href="@contactUsLink">@Translate("ContactForm", "Contact Form")</a>.</p> } @if (productFunctions.Count() > 0) { <div class="m-badges-container"> <h3>@GetString("Ecom:Product:Field.ProductFunctions.Name")</h3> <div class="m-badges"> <ul class="list-inline"> @foreach (string decal in productFunctions) { var decalImage = decal + ".png"; <li><img src="Files/Templates/Designs/HagsCore/res/img/playvalue/@decalImage" class="img-rounded"></li> } </ul> </div> <!-- m-badges --> </div> <!-- m-badges-container --> } @if (ageRanges.Count() > 0) { <div class="m-badges-container"> <h3>@GetString("Ecom:Product:Field.AgeRange.Name")</h3> <div class="m-badges"> <ul class="list-inline"> @foreach (var decal in ageRanges) { var decalImage = decal + ".png"; <li><img src="Files/Templates/Designs/HagsCore/res/img/agerange/@decalImage" class="img-rounded"></li> } </ul> </div> <!-- m-badges --> </div> <!-- m-badges-container --> } </div> </div> <!-- row --> </div> <!-- container-fluid --> </div> @*@revisit This*@ @if (GetInteger("Ecom:Product.RelatedCount") > 0 && GetLoop("ProductRelatedGroups").Where(n => n.GetString("Ecom:Product:RelatedGroup.Name") == "Product Modules") != null) { //List<Dynamicweb.eCommerce.Products.Product> relatedProducts = HagsWeb.Library.Methods.ProductFilter.ProductFilter.GetRelatedProducts(GetString("Ecom:Product.Number"), "Product Modules"); if (relatedProducts.Any()) { <div class="m-heading m-theme-background-lightgrey"> <div class="l-page"> <div class="container-fluid"> <h2>@Translate("PlayFunctions", "Play Functions")</h2> </div> <!-- container-fluid --> </div> <!-- l-page --> </div> <div class="m-attractor-group"> <div class="l-page"> <div class="container-fluid"> <div class="l-group-6 row"> @foreach (Product product in relatedProducts) { List<ProductAsset> productImages = AssetManager_Repository.GetAssets(product.Number, AssetType.Images, false); ProductAsset image = productImages.Where(n => n.Index == AssetTypeEnum.ToFriendlyAssetName(AssetType.Images) && n.FileName.StartsWith("big_") || n.FileName.StartsWith("big_Color_")).FirstOrDefault(); // in this case we dont show a link to the product -- // Create a Url through the Page hiearchy attached to Dw eCom_Catalog Module in a Paragraph to a product detail page //string detailUrl = DWUtilities.GetProductSearchResultUrl("ProductNumber=" + product.Number.ToString(), thisPage.Area.ID); //string friendlyUrl = Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl(detailUrl); // All Related products are now Active = false so no URLs exist <div class="l-group-content col-xs-12 col-ms-4 col-sm-2 modules"> <div class="m-attractor"> <div class="m-attractor-visual"> @if (productImages != null && productImages.Count > 0 && !String.IsNullOrEmpty(image.uri)) { <img src="@image.uri" class="img-responsive m-product-thumb" /> } else { <img src="/Files/Templates/Designs/HagsCore/res/img/image-not-found.png" class="img-responsive m-product-thumb" /> } </div> <div class="m-attractor-info m-attractor-info-product"> <h3 class="m-theme-after-yellow m-theme-border-yellow">@product.Name</h3> <!--<p><strong>Product Number:</strong> @product.Number</p>--> @*@if (thisPage.Area.ID > 1) // Not shown on Global Site { <p><stong>@product.Price.Price kr</stong></p> }*@ </div> <!-- attractor-info --> </div> <!-- attractor --> </div> } </div> <!-- row --> </div> <!-- container-fluid --> </div> <!-- l-page --> </div> } } @*Editors did not apply the advanced search paragraph to this page causing the My Product Collection functionality to fail*@ <script type="text/javascript"> if ($('script[src="Files/Templates/Designs/HagsCore/script/source/functions/advanced-search.js"]').length > 0) { //script exists //console.log("Script already Exists"); } else { $.getScript("Files/Templates/Designs/HagsCore/script/source/functions/advanced-search.js") .done(function (script, textStatus) { // console.log("Loading missing script: " + textStatus); }) } </script>