Välkommen till Outwell Kids Corner
Barn har det mer ROLIGT... Backa undan, mamma och pappa, och gör plats för Fladdermuspojken och Fjärilstjejen… det är dags att göra det bästa av utomhuslivet.
Hos Outwell handlar allt om familjecamping – så denna sektion är helt dedikerad till barnen. Aktiviteter på campingplatsen, lägereldsrecept, det bästa campingutrustningen för barn, målarbok – här hittar du allt du behöver för familjecamping med barn och våra bästa tips för att underhålla barnen på campingplatsen.
Ladda ner Outwell Kids Målarbok nedan – perfekt underhållning för de små på campingplatsen eller under bilresan till din nästa campingdestination.
Kolla in de tre roliga matrecepten att göra med barn när du campar från våra vänner på 'Get Out with the Kids'.
Ta del av Julia Bradburys bästa tips för camping med familjen eller låt dig inspireras av våra familjecampingexperters lista över viktig utrustning för barn.
Outwell Kids Målarbok
Perfekt underhållning för de små på campingplatsen eller under resan till din nästa campingdestination.
Exception in template (Designs/Outwell/Paragraph/FeaturedProductsRibbonItem.cshtml): System.NullReferenceException: Object reference not set to an instance of an object.
at CompiledRazorTemplates.Dynamic.ffcecbdafbd.Execute()
at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateBase.cs:line 126
at RazorEngine.Templating.TemplateService.Run(ITemplate template, DynamicViewBag viewBag) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 608
at RazorEngine.Templating.TemplateService.Parse(String razorTemplate, Object model, DynamicViewBag viewBag, String cacheName) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 439
at RazorEngine.Razor.Parse[T](String razorTemplate, T model, DynamicViewBag viewBag, String cacheName) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Razor.cs:line 290
at Dynamicweb.Rendering.Template.RenderRazorTemplate()
@using Dynamicweb.Extensibility;
@using Dynamicweb.Frontend;
@using Dynamicweb.Rendering;
@using Dynamicweb.Analytics;
@using Dynamicweb.Ecommerce.Common;
@using Dynamicweb.Ecommerce.Orders;
@using OaseOutdoors.Components.Shared.Paragraphs.FeaturedProductsRibbon.ModelBuilders
@using OaseOutdoors.Services.EcomUrlService.Initialization
@using OaseOutdoors.Services.ImageService.Enums
@using OaseOutdoors.Services.StaticResourceService.Initialization
@inherits ViewModelTemplate<ParagraphViewModel>
@{
var viewModelService = new FeaturedProductsRibbonViewModelBuilder();
var staticResourceService = ServiceLocator.Current.GetStaticResourceService();
var viewModel = viewModelService.GetViewModel(Model);
var urlService = ServiceLocator.Current.GetEcomUrlService();
var area = PageView.Current().Area;
var contextCart = Context.Cart;
var relewiseCss = "";
if (viewModel.RelewiseIsActive)
{
relewiseCss = "is-relewise";
}
}
<section id="featuredProducts" class="featured-products container-ribbon ribbon @relewiseCss" data-module="featured-products">
<div class="container">
@if (!string.IsNullOrEmpty(viewModel.Headline))
{
<h2 class="header1">@viewModel.Headline</h2>
}
<div class="featured-products__container">
@if (viewModel.RelewiseIsActive)
{
<div class="loading"><img src="/static/dist/img/loading.gif" /></div>
}
@foreach (var product in viewModel.ProductListRelewise)
{
var productUrl = urlService.GetUrl(product.GroupId, product.Id);
<article itemscope itemtype="https://schema.org/Product" class="product-item">
<a itemprop="url" href="@productUrl">
<div class="product-item__header">
@if (!string.IsNullOrEmpty(product.OutletcampingSplash))
{
var statustext = product.OutletcampingSplash;
<div class="product-item__labelstatusRibbon">
@if (statustext.Length > 8)
{
<div class="product-item__labelstatus-2Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length >= 6 && statustext.Length <= 8)
{
<div class="product-item__labelstatus-3Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length >= 4 && statustext.Length <= 6)
{
<div class="product-item__labelstatus-4Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length < 4)
{
<div class="product-item__labelstatus-5Ribbon">
<span>@statustext</span>
</div>
}
</div>
}
<figure>
<img src="@product.MainImage.SetWidth(500).SetHeight(300).SetCrop(CropType.KeepAspectRatio).SetCompression(50).GetCrop()" itemprop="image" content="@product.MainImage" alt="">
</figure>
@if (!string.IsNullOrEmpty(product.CollectionLogo))
{
var collogo = product.CollectionLogo;
collogo = collogo.ToString().Replace(".jpg", ".png");
<div class="product-item__collection">
<figure class="lazy" data-src-sm="@collogo" data-alt="Outwell @product.Name">
<noscript><img src="@collogo" itemprop="image" content="@collogo" alt="Outwell @product.Name"></noscript>
</figure>
</div>
}
@if (!string.IsNullOrEmpty(product.LabelText) && !string.IsNullOrEmpty(product.LabelColor))
{
<div class="product-item__labelRibbon">
<p>@product.LabelText</p>
</div>
}
</div>
<div class="product-item__body">
<div class="product-item__headline">
@if (!string.IsNullOrEmpty(product.Name))
{
<h3 class="header3" itemprop="name">@product.Name</h3>
}
</div>
<div class="product-item__information" itemprop="description">
@{
var ProductDescription = "";
if (!string.IsNullOrEmpty(product.LongDescription))
{
ProductDescription = product.LongDescription;
}
if (!string.IsNullOrWhiteSpace(ProductDescription) && ProductDescription.Length > 80)
{
ProductDescription = ProductDescription.Substring(0, 80) + "...";
}
}
@ProductDescription
</div>
<div class="product-item__bulletpoints">
<ul>
@if (!string.IsNullOrWhiteSpace(product.Bullet1))
{
<li>@product.Bullet1</li>
}
@if (!string.IsNullOrWhiteSpace(product.Feature1))
{
<li>@product.Feature1</li>
}
@if (!string.IsNullOrWhiteSpace(product.Feature2))
{
<li>@product.Feature2</li>
}
@if (!string.IsNullOrWhiteSpace(product.Feature3))
{
<li>@product.Feature3</li>
}
</ul>
</div>
@{
var productIsPreorder = false;
var availableAgain = product.AvailableAgain;
availableAgain = string.IsNullOrWhiteSpace(availableAgain) ? "1900-01-01" : availableAgain;
DateTime availableAgainDateOut;
if (DateTime.TryParse(Convert.ToDateTime(availableAgain).ToString(), out availableAgainDateOut))
{
availableAgain = Convert.ToDateTime(availableAgain).ToString("dd/MM/yy");
string minDate = Convert.ToDateTime("1900-01-01").ToString("dd/MM/yy");
productIsPreorder = availableAgain.Equals(minDate) ? false : true;
}
}
@if (product.Stock > 0 && !productIsPreorder)
{
<div class="product__availability product__availability--instock">
@Translate("InStock", "In stock")
</div>
}
else if (productIsPreorder)
{
<div class="product__availability product__availability--instock">
@Translate("Preorder", "Preorder")
</div>
}
else
{
<div class="product__availability">
@Translate("SoldOut", "Sold out")
</div>
}
<div class="product-item__RRPPrice">
@if (!string.IsNullOrEmpty(product.Price))
{
<span itemprop="priceCurrency" content="@product.CurrencySymbol">
@product.CurrencySymbol
</span>
<span itemprop="price" content="@product.UnformatedPrice">
@product.Price
</span>
if (@product.Price != @product.BeforePrice)
{
<p><span>@Translate("RRP", "RRP") : @product.CurrencySymbol @product.BeforePrice</span></p>
}
}
else
{
@Translate("SeeMore", "See more")
}
</div>
@{
var productId = product.Id;
var productName = product.Name;
var productNumber = product.ProductNumber;
var productCurrency = product.Currency;
var productUnformatedPrice = product.UnformatedPrice;
var productVariant = "";
var productVariants = product.ProductFieldValues;
foreach (var FieldValue in productVariants)
{
if (FieldValue.ProductField.SystemName == "VariantNumbers")
{
productVariant = FieldValue.Value.ToString();
}
}
var productStock = product.Stock;
var productCartCmd = "CartCmd" + productId;
var productKey = "Key" + productId;
var productOrderContext = "OrderContext" + productId;
var productRedirect = "Redirect" + productId;
OrderLine productOrderLine = null;
if (contextCart != null)
{
foreach (var orderline in contextCart.OrderLines)
{
if (orderline.ProductId == productId)
{
productOrderLine = orderline;
}
}
}
var productCartContext = "";
object cartContextObj = null;
if (area.Item.TryGetValue("CartContext", ref cartContextObj))
{
string cartContext = cartContextObj.ToString();
if (!string.IsNullOrWhiteSpace(cartContext))
{
productCartContext = cartContext;
}
}
if (productStock > 0 && string.IsNullOrEmpty(productVariant))
{
<div class="product-item__quickbuy">
<div class="product__button">
<form method="get" data-id="@productId" data-number="@productNumber" data-name="@productName.Replace("\"", "\'")" data-quantity="1" data-price="@productUnformatedPrice" data-currency="@productCurrency" data-brand="@product.BrandName" data-url="@productUrl">
<input type="hidden" name="CartCmd" id="@productCartCmd" value="@(productOrderLine != null && string.IsNullOrEmpty(productVariant) ? "incorderline" : "add")" />
<input type="hidden" name="Key" id="@productKey" value="@(productOrderLine != null ? productOrderLine.Id : "")" @(productOrderLine != null && string.IsNullOrEmpty(productVariant) ? "" : "disabled") />
<input type="hidden" name="OrderContext" id="@productOrderContext" value="@productCartContext" />
<input type="hidden" name="Redirect" id="@productRedirect" value="/WebServices/MiniCart.ashx?productId=@productId&areaId=@area.ID" disabled />
<input class="form-control" autocomplete="off" type="text" name="name" placeholder="Your name here">
<input class="form-control" autocomplete="off" type="text" name="phone" placeholder="Your phone here">
<input class="form-control" autocomplete="off" type="text" name="email" placeholder="Your email here">
<button type="submit" class="btn btn--big @(!string.IsNullOrEmpty(productVariant) ? "btn--disabled" : "")" @(productStock > 0 ? "" : "disabled") data-added-msg="@(Translate("AddedToCart", "Added to cart"))">
<span class="btn__icon">
<img src="/static/dist/img/outwell/quickbuy-icon.png" alt="" />
</span>
</button>
</form>
</div>
</div>
}
}
</div>
</a>
<div class="product-item__favorite" data-module="cookiefavorite">
<svg class="heart" viewBox="-2 -2 35 35" data-product="@product.ProductNumber">
<path class="heartfill" style="fill: #ffffff; stroke: #646464; stroke-width: 2px;" d="M23.6,0c-3.4,0-6.3,2.7-7.6,5.6C14.7,2.7,11.8,0,8.4,0C3.8,0,0,3.8,0,8.4c0,9.4,9.5,11.9,16,21.2 c6.1-9.3,16-12.1,16-21.2C32,3.8,28.2,0,23.6,0z" />
</svg>
</div>
</article>
}
@foreach (var product in viewModel.ProductList)
{
var productUrl = urlService.GetUrl(product.GroupId, product.Id);
<article itemscope itemtype="https://schema.org/Product" class="product-item">
<a itemprop="url" href="@productUrl">
<div class="product-item__header">
@if (!string.IsNullOrEmpty(product.OutletcampingSplash))
{
var statustext = product.OutletcampingSplash;
<div class="product-item__labelstatusRibbon">
@if (statustext.Length > 8)
{
<div class="product-item__labelstatus-2Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length >= 6 && statustext.Length <= 8)
{
<div class="product-item__labelstatus-3Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length >= 4 && statustext.Length <= 6)
{
<div class="product-item__labelstatus-4Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length < 4)
{
<div class="product-item__labelstatus-5Ribbon">
<span>@statustext</span>
</div>
}
</div>
}
@{
var imgSrc = product.MainImage.SetWidth(500).SetHeight(300).SetCrop(CropType.KeepAspectRatio).SetCompression(50).GetCrop();
var imgClass = "";
if (Pageview.Device == 0 && product.Image062.ToString() != "")
{
var imgHoverSrc = product.Image062.SetWidth(500).SetHeight(300).SetCrop(CropType.KeepAspectRatio).SetCompression(50).GetCrop();
imgClass = "orig";
<figure class="lazy hover" data-src-sm="@imgHoverSrc" data-alt="Outwell">
<noscript><img src="@imgHoverSrc" itemprop="image" content="@imgHoverSrc" alt="Outwell"></noscript>
</figure>
}
}
<figure class="lazy @imgClass" data-src-sm="@imgSrc" data-alt="Outwell">
<noscript><img src="@imgSrc" itemprop="image" content="@imgSrc" alt="Outwell"></noscript>
</figure>
@if (!string.IsNullOrEmpty(product.CollectionLogo))
{
var collogo = product.CollectionLogo;
collogo = collogo.ToString().Replace(".jpg", ".png");
<div class="product-item__collection">
<figure class="lazy" data-src-sm="@collogo" data-alt="Outwell @product.Name">
<noscript><img src="@collogo" itemprop="image" content="@collogo" alt="Outwell @product.Name" )"></noscript>
</figure>
</div>
}
@if (!string.IsNullOrEmpty(product.LabelText) && !string.IsNullOrEmpty(product.LabelColor))
{
<div class="product-item__labelRibbon">
<p>@product.LabelText</p>
</div>
}
</div>
<div class="product-item__body">
<div class="product-item__headline">
@if (!string.IsNullOrEmpty(product.Name))
{
<h3 class="header3" itemprop="name">@product.Name</h3>
}
</div>
<div class="product-item__information" itemprop="description">
@{
var ProductDescription = "";
if (!string.IsNullOrEmpty(product.LongDescription))
{
ProductDescription = product.LongDescription;
}
if (!string.IsNullOrWhiteSpace(ProductDescription) && ProductDescription.Length > 80)
{
ProductDescription = ProductDescription.Substring(0, 80) + "...";
}
}
@ProductDescription
</div>
<div class="product-item__bulletpoints">
<ul>
@if (!string.IsNullOrWhiteSpace(product.Bullet1))
{
<li>@product.Bullet1</li>
}
@if (!string.IsNullOrWhiteSpace(product.Feature1))
{
<li>@product.Feature1</li>
}
@if (!string.IsNullOrWhiteSpace(product.Feature2))
{
<li>@product.Feature2</li>
}
@if (!string.IsNullOrWhiteSpace(product.Feature3))
{
<li>@product.Feature3</li>
}
</ul>
</div>
@{
var productIsPreorder = false;
var availableAgain = product.AvailableAgain;
availableAgain = string.IsNullOrWhiteSpace(availableAgain) ? "1900-01-01" : availableAgain;
DateTime availableAgainDateOut;
if (DateTime.TryParse(Convert.ToDateTime(availableAgain).ToString(), out availableAgainDateOut))
{
availableAgain = Convert.ToDateTime(availableAgain).ToString("dd/MM/yy");
string minDate = Convert.ToDateTime("1900-01-01").ToString("dd/MM/yy");
productIsPreorder = availableAgain.Equals(minDate) ? false : true;
}
}
@if (product.Stock > 0 && !productIsPreorder)
{
<div class="product__availability product__availability--instock">
@Translate("InStock", "In stock")
</div>
}
else if (productIsPreorder)
{
<div class="product__availability product__availability--instock">
@Translate("Preorder", "Preorder")
</div>
}
else
{
<div class="product__availability">
@Translate("SoldOut", "Sold out")
</div>
}
<div class="product-item__RRPPrice">
@if (!string.IsNullOrEmpty(product.Price))
{
<span itemprop="priceCurrency" content="@product.CurrencySymbol">
@product.CurrencySymbol
</span>
<span itemprop="price" content="@product.UnformatedPrice">
@product.Price
</span>
if (@product.Price != @product.BeforePrice)
{
<p><span>@Translate("RRP", "RRP") : @product.CurrencySymbol @product.BeforePrice</span></p>
}
}
else
{
@Translate("SeeMore", "See more")
}
</div>
@{
var productId = product.Id;
var productName = product.Name;
var productNumber = product.ProductNumber;
var productCurrency = product.Currency;
var productUnformatedPrice = product.UnformatedPrice;
var productVariant = "";
var productVariants = product.ProductFieldValues;
foreach (var FieldValue in productVariants)
{
if (FieldValue.ProductField.SystemName == "VariantNumbers")
{
productVariant = FieldValue.Value.ToString();
}
}
var productStock = product.Stock;
var productCartCmd = "CartCmd" + productId;
var productKey = "Key" + productId;
var productOrderContext = "OrderContext" + productId;
var productRedirect = "Redirect" + productId;
OrderLine productOrderLine = null;
if (contextCart != null)
{
foreach (var orderline in contextCart.OrderLines)
{
if (orderline.ProductId == productId)
{
productOrderLine = orderline;
}
}
}
var productCartContext = "";
object cartContextObj = null;
if (area.Item.TryGetValue("CartContext", ref cartContextObj))
{
string cartContext = cartContextObj.ToString();
if (!string.IsNullOrWhiteSpace(cartContext))
{
productCartContext = cartContext;
}
}
if (productStock > 0 && string.IsNullOrEmpty(productVariant))
{
<div class="product-item__quickbuy">
<div class="product__button">
<form method="get" data-id="@productId" data-number="@productNumber" data-name="@productName.Replace("\"", "\'")" data-quantity="1" data-price="@productUnformatedPrice" data-currency="@productCurrency" data-brand="@product.BrandName" data-url="@productUrl">
<input type="hidden" name="CartCmd" id="@productCartCmd" value="@(productOrderLine != null && string.IsNullOrEmpty(productVariant) ? "incorderline" : "add")" />
<input type="hidden" name="Key" id="@productKey" value="@(productOrderLine != null ? productOrderLine.Id : "")" @(productOrderLine != null && string.IsNullOrEmpty(productVariant) ? "" : "disabled") />
<input type="hidden" name="OrderContext" id="@productOrderContext" value="@productCartContext" />
<input type="hidden" name="Redirect" id="@productRedirect" value="/WebServices/MiniCart.ashx?productId=@productId&areaId=@area.ID" disabled />
<input class="form-control" autocomplete="off" type="text" name="name" placeholder="Your name here">
<input class="form-control" autocomplete="off" type="text" name="phone" placeholder="Your phone here">
<input class="form-control" autocomplete="off" type="text" name="email" placeholder="Your email here">
<button type="submit" class="btn btn--big @(!string.IsNullOrEmpty(productVariant) ? "btn--disabled" : "")" @(productStock > 0 ? "" : "disabled") data-added-msg="@(Translate("AddedToCart", "Added to cart"))">
<span class="btn__icon">
<img src="/static/dist/img/outwell/quickbuy-icon.png" alt="" />
</span>
</button>
</form>
</div>
</div>
}
}
</div>
</a>
<div class="product-item__favorite" data-module="cookiefavorite">
<svg class="heart" viewBox="-2 -2 35 35" data-product="@product.ProductNumber">
<path class="heartfill" style="fill: #ffffff; stroke: #646464; stroke-width: 2px;" d="M23.6,0c-3.4,0-6.3,2.7-7.6,5.6C14.7,2.7,11.8,0,8.4,0C3.8,0,0,3.8,0,8.4c0,9.4,9.5,11.9,16,21.2 c6.1-9.3,16-12.1,16-21.2C32,3.8,28.2,0,23.6,0z" />
</svg>
</div>
</article>
}
@foreach (var product in viewModel.ProductListRaptor)
{
var productUrl = urlService.GetUrl(product.GroupId, product.Id);
<article itemscope itemtype="https://schema.org/Product" class="product-item">
<a itemprop="url" href="@productUrl" data-raptorrecommendation="productId:@product.ProductNumber">
<div class="product-item__header">
@if (!string.IsNullOrEmpty(product.OutletcampingSplash))
{
var statustext = product.OutletcampingSplash;
<div class="product-item__labelstatusRibbon">
@if (statustext.Length > 8)
{
<div class="product-item__labelstatus-2Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length >= 6 && statustext.Length <= 8)
{
<div class="product-item__labelstatus-3Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length >= 4 && statustext.Length <= 6)
{
<div class="product-item__labelstatus-4Ribbon">
<span>@statustext</span>
</div>
}
@if (statustext.Length < 4)
{
<div class="product-item__labelstatus-5Ribbon">
<span>@statustext</span>
</div>
}
</div>
}
<figure>
<img src="@product.MainImage.SetWidth(500).SetHeight(300).SetCrop(CropType.KeepAspectRatio).SetCompression(50).GetCrop()" itemprop="image" content="@product.MainImage" alt="">
</figure>
@if (!string.IsNullOrEmpty(product.CollectionLogo))
{
var collogo = product.CollectionLogo;
collogo = collogo.ToString().Replace(".jpg", ".png");
<div class="product-item__collection">
<figure class="lazy" data-src-sm="@collogo" data-alt="Outwell @product.Name">
<noscript><img src="@collogo" itemprop="image" content="@collogo" alt="Outwell @product.Name" )"></noscript>
</figure>
</div>
}
@if (!string.IsNullOrEmpty(product.LabelText) && !string.IsNullOrEmpty(product.LabelColor))
{
<div class="product-item__labelRibbon">
<p>@product.LabelText</p>
</div>
}
</div>
<div class="product-item__body">
<div class="product-item__headline">
@if (!string.IsNullOrEmpty(product.Name))
{
<h3 class="header3" itemprop="name">@product.Name</h3>
}
</div>
<div class="product-item__information" itemprop="description">
@{
var ProductDescription = "";
if (!string.IsNullOrEmpty(product.LongDescription))
{
ProductDescription = product.LongDescription;
}
if (!string.IsNullOrWhiteSpace(ProductDescription) && ProductDescription.Length > 80)
{
ProductDescription = ProductDescription.Substring(0, 80) + "...";
}
}
@ProductDescription
</div>
<div class="product-item__bulletpoints">
<ul>
@if (!string.IsNullOrWhiteSpace(product.Bullet1))
{
<li>@product.Bullet1</li>
}
@if (!string.IsNullOrWhiteSpace(product.Bullet2))
{
<li>@product.Bullet2</li>
}
@if (!string.IsNullOrWhiteSpace(product.Bullet3))
{
<li>@product.Bullet3</li>
}
@if (!string.IsNullOrWhiteSpace(product.PackSize))
{
<li>@Translate("Pack size", "Pack size"): @product.PackSize</li>
}
@if (!string.IsNullOrWhiteSpace(product.Weightsale))
{
<li>@Translate("Weight", "Weight"): @product.Weightsale</li>
}
</ul>
</div>
@{
var productIsPreorder = false;
var availableAgain = product.AvailableAgain;
availableAgain = string.IsNullOrWhiteSpace(availableAgain) ? "1900-01-01" : availableAgain;
DateTime availableAgainDateOut;
if (DateTime.TryParse(Convert.ToDateTime(availableAgain).ToString(), out availableAgainDateOut))
{
availableAgain = Convert.ToDateTime(availableAgain).ToString("dd/MM/yy");
string minDate = Convert.ToDateTime("1900-01-01").ToString("dd/MM/yy");
productIsPreorder = availableAgain.Equals(minDate) ? false : true;
}
}
@if (product.Stock > 0 && !productIsPreorder)
{
<div class="product__availability product__availability--instock">
@Translate("InStock", "In stock")
</div>
}
else if (productIsPreorder)
{
<div class="product__availability product__availability--instock">
@Translate("Preorder", "Preorder")
</div>
}
else
{
<div class="product__availability">
@Translate("SoldOut", "Sold out")
</div>
}
<div class="product-item__RRPPrice" itemprop="offers" itemscope itemtype="https://schema.org/Offer">
@if (!string.IsNullOrEmpty(product.Price))
{
<span itemprop="priceCurrency" content="@product.CurrencySymbol">
@product.CurrencySymbol
</span>
<span itemprop="price" content="@product.UnformatedPrice">
@product.Price
</span>
if (@product.Price != @product.BeforePrice)
{
<p><span>@Translate("RRP", "RRP") : @product.CurrencySymbol @product.BeforePrice</span></p>
}
}
else
{
@Translate("SeeMore", "See more")
}
</div>
@{
var productId = product.Id;
var productName = product.Name;
var productNumber = product.ProductNumber;
var productCurrency = product.Currency;
var productUnformatedPrice = product.UnformatedPrice;
var productVariant = "";
var productVariants = product.ProductFieldValues;
foreach (var FieldValue in productVariants)
{
if (FieldValue.ProductField.SystemName == "VariantNumbers")
{
productVariant = FieldValue.Value.ToString();
}
}
var productStock = product.Stock;
var productCartCmd = "CartCmd" + productId;
var productKey = "Key" + productId;
var productOrderContext = "OrderContext" + productId;
var productRedirect = "Redirect" + productId;
OrderLine productOrderLine = null;
if (contextCart != null)
{
foreach (var orderline in contextCart.OrderLines)
{
if (orderline.ProductId == productId)
{
productOrderLine = orderline;
}
}
}
var productCartContext = "";
object cartContextObj = null;
if (area.Item.TryGetValue("CartContext", ref cartContextObj))
{
string cartContext = cartContextObj.ToString();
if (!string.IsNullOrWhiteSpace(cartContext))
{
productCartContext = cartContext;
}
}
if (productStock > 0 && string.IsNullOrEmpty(productVariant))
{
<div class="product-item__quickbuy">
<div class="product__button">
<form method="get" data-id="@productId" data-number="@productNumber" data-name="@productName.Replace("\"", "\'")" data-quantity="1" data-price="@productUnformatedPrice" data-currency="@productCurrency" data-brand="@product.BrandName" data-url="@productUrl">
<input type="hidden" name="CartCmd" id="@productCartCmd" value="@(productOrderLine != null && string.IsNullOrEmpty(productVariant) ? "incorderline" : "add")" />
<input type="hidden" name="Key" id="@productKey" value="@(productOrderLine != null ? productOrderLine.Id : "")" @(productOrderLine != null && string.IsNullOrEmpty(productVariant) ? "" : "disabled") />
<input type="hidden" name="OrderContext" id="@productOrderContext" value="@productCartContext" />
<input type="hidden" name="Redirect" id="@productRedirect" value="/WebServices/MiniCart.ashx?productId=@productId&areaId=@area.ID" disabled />
<input class="form-control" autocomplete="off" type="text" name="name" placeholder="Your name here">
<input class="form-control" autocomplete="off" type="text" name="phone" placeholder="Your phone here">
<input class="form-control" autocomplete="off" type="text" name="email" placeholder="Your email here">
<button type="submit" class="btn btn--big @(!string.IsNullOrEmpty(productVariant) ? "btn--disabled" : "")" @(productStock > 0 ? "" : "disabled") data-added-msg="@(Translate("AddedToCart", "Added to cart"))">
<span class="btn__icon">
<img src="/static/dist/img/outwell/quickbuy-icon.png" alt="" />
</span>
</button>
</form>
</div>
</div>
}
}
</div>
</a>
<div class="product-item__favorite" data-module="cookiefavorite">
<svg class="heart" viewBox="-2 -2 35 35" data-product="@product.ProductNumber">
<path class="heartfill" style="fill: #ffffff; stroke: #646464; stroke-width: 2px;" d="M23.6,0c-3.4,0-6.3,2.7-7.6,5.6C14.7,2.7,11.8,0,8.4,0C3.8,0,0,3.8,0,8.4c0,9.4,9.5,11.9,16,21.2 c6.1-9.3,16-12.1,16-21.2C32,3.8,28.2,0,23.6,0z" />
</svg>
</div>
</article>
}
</div>
</div>
@*relewise tag for tracking*@
@if (viewModel.RelewiseIsActive)
{
<div class="relewise-recommendations-ribbon" data-relewise-service="@viewModel.RelewiseRecommendationService" data-relewise-number="@viewModel.RelewiseNumberOfItems" data-relewise-price="@viewModel.RelewiseMinPrice" data-relewise-user="@VisitorCookie.Current.VisitorID" data-relewise-language="@Pageview.Area.Culture" data-relewise-currency="@Pageview.Area.EcomCurrencyId" data-relewise-area="@Pageview.Area.ID" data-relewise-type="" data-relewise-dataid="@Pageview.Area.Item["RelewiseDataId"]" data-relewise-apikey="@Pageview.Area.Item["RelewiseApiKey"]" data-relewise-serverurl="@Pageview.Area.Item["RelewiseServerUrl"]"></div>
}
</section>