@model ProductDetailsModel @using Nop.Core @using Nop.Core.Domain.Seo; @using Nop.Core.Infrastructure; @using Nop.Services.Localization; @using Nop.Web.Models.Catalog; @{ Layout = "~/Views/Shared/_ColumnsTwo.cshtml"; //title, meta Html.AddTitleParts(!String.IsNullOrEmpty(Model.MetaTitle) ? Model.MetaTitle : Model.Name); Html.AddMetaDescriptionParts(Model.MetaDescription); Html.AddMetaKeywordParts(Model.MetaKeywords); var seoSettings = EngineContext.Current.Resolve(); //canonical URL if (seoSettings.CanonicalUrlsEnabled) { var productUrl = Url.RouteUrl("Product", new { SeName = Model.SeName }, this.Request.Url.Scheme); Html.AddCanonicalUrlParts(productUrl); } //open graph META tags if (seoSettings.OpenGraphMetaTags) { var storeName = EngineContext.Current.Resolve().CurrentStore.GetLocalized(x => x.Name); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); } //Twitter META tags if (seoSettings.TwitterMetaTags) { var storeName = EngineContext.Current.Resolve().CurrentStore.GetLocalized(x => x.Name); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); Html.AddHeadCustomParts(""); } } @Html.Partial("_ProductBreadcrumb", Model.Breadcrumb) @Html.Widget("productdetails_after_breadcrumb", Model.Id)
@Html.Widget("productdetails_top", Model.Id) @using (Html.BeginRouteForm("Product", new { SeName = Model.SeName }, FormMethod.Post, new { id = "product-details-form" })) {
@Html.Widget("productdetails_before_pictures", Model.Id) @Html.Partial("_ProductDetailsPictures", Model) @Html.Widget("productdetails_after_pictures", Model.Id)

@Model.Name

@if (!String.IsNullOrEmpty(Model.ShortDescription)) {
@Html.Raw(Model.ShortDescription)
} @Html.Widget("productdetails_overview_top", Model.Id) @Html.Partial("_SKU_Man_Stock", Model) @Html.Partial("_BackInStockSubscription", Model) @Html.Partial("_ProductManufacturers", Model.ProductManufacturers) @Html.Partial("_ProductReviewOverview", Model.ProductReviewOverview) @Html.Partial("_DownloadSample", Model) @{ var dataDictAttributes = new ViewDataDictionary(); dataDictAttributes.TemplateInfo.HtmlFieldPrefix = string.Format("attributes_{0}", Model.Id); @Html.Partial("_ProductAttributes", Model.ProductAttributes, dataDictAttributes) } @{ var dataDictGiftCard = new ViewDataDictionary(); dataDictGiftCard.TemplateInfo.HtmlFieldPrefix = string.Format("giftcard_{0}", Model.Id); @Html.Partial("_GiftCardInfo", Model.GiftCard, dataDictGiftCard) } @{ var dataDictRental = new ViewDataDictionary(); dataDictRental.TemplateInfo.HtmlFieldPrefix = string.Format("rental_{0}", Model.Id); @Html.Partial("_RentalInfo", Model, dataDictRental) } @{ var dataDictPrice = new ViewDataDictionary(); dataDictPrice.TemplateInfo.HtmlFieldPrefix = string.Format("price_{0}", Model.Id); @Html.Partial("_ProductPrice", Model.ProductPrice, dataDictPrice) var dataDictAddToCart = new ViewDataDictionary(); dataDictAddToCart.TemplateInfo.HtmlFieldPrefix = string.Format("addtocart_{0}", Model.Id); @Html.Partial("_AddToCart", Model.AddToCart, dataDictAddToCart) } @Html.Partial("_ProductEmailAFriendButton", Model) @Html.Partial("_CompareProductsButton", Model) @Html.Partial("_ShareButton", Model) @Html.Widget("productdetails_overview_bottom", Model.Id)
@if (!String.IsNullOrEmpty(Model.FullDescription)) {
@Html.Raw(Model.FullDescription)
}
@Html.Widget("productdetails_before_collateral", Model.Id)
@Html.Partial("_ProductTierPrices", Model.TierPrices) @Html.Partial("_ProductSpecifications", Model.ProductSpecifications) @Html.Partial("_ProductTags", Model.ProductTags) @Html.Action("ProductsAlsoPurchased", "Product", new { productId = Model.Id }) @Html.Action("RelatedProducts", "Product", new { productId = Model.Id })
} @Html.Widget("productdetails_bottom", Model.Id)