Guest User

Untitled

a guest
Jun 30th, 2017
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 8.13 KB | None | 0 0
  1. @using SitefinityWebApp.Mvc.ViewModels;
  2. @using Newtonsoft.Json;
  3.  
  4. <script>
  5.     /** Setup endpoint and phones list for ajax request **/
  6.     const FilterSettings = {
  7.         Endpoint: '@Url.Action("Filter","PhonesController")'
  8.     }
  9.     let type = "phones";
  10.     let allProducts = @Html.Raw(JsonConvert.SerializeObject(Model))
  11. </script>
  12.  
  13. @model List<PhonesVM>
  14. @{
  15.     var phoneCount = Model.Count();
  16. }
  17.  
  18. <div class="tms-products__wrapper">
  19.     <div class="tms-products-page tms-container">
  20.         <div class="tms-filters filter-collapsible" id="filter-collapsible">
  21.             <div class="tms-filters__heading-wrapper">
  22.                 <button class="tms-filters__filter-btn" id="inner-filter-btn">Filters</button>
  23.                 <button class="tms-filters__clear-btn" id="clearAll">Clear All</button>
  24.             </div>
  25.             <div class="tms-filters__container">
  26.  
  27.                 @* Provider Filters *@
  28.                 <div class="tms-filter">
  29.                     <div class="tms-filter__heading">
  30.                         <label id="provider-filters_label">Providers</label>
  31.                         <button class="dropdown-btn" aria-controls="provider-filters_collapsible" aria-expanded="true" aria-labelledby="provider-filters_label"><i class="fa fa-angle-down"></i></button>
  32.                     </div>
  33.                     <div class="tms-filter-wrapper collapsible" id="provider-filters_collapsible">
  34.                         @foreach (var provider in ViewBag.Providers)
  35.                         {
  36.                             <div class="tms-filter__option">
  37.                                 <input type="checkbox" value="@provider.Name" name="Provider" id="@provider.Name" />
  38.                                 <label for="@provider.Name">@provider.Name</label>
  39.                             </div>
  40.                         }
  41.                     </div>
  42.                 </div>
  43.  
  44.                 @* Brand Filters *@
  45.                 <div class="tms-filter">
  46.                     <div class="tms-filter__heading">
  47.                         <label id="brand-filters__label">Brands</label>
  48.                         <button class="dropdown-btn" aria-controls="brand-filters_collapsible" aria-expanded="true" aria-labelledby="brand-filters__label"><i class="fa fa-angle-down"></i></button>
  49.                     </div>
  50.                     <div class="tms-filter-wrapper collapsible" id="brand-filters_collapsible">
  51.                         @foreach (var brand in ViewBag.Brands)
  52.                         {
  53.                             <div class="tms-filter__option">
  54.                                 <input type="checkbox" value="@brand.Name" name="Brand" id="@brand.Name" />
  55.                                 <label for="@brand.Name">@brand.Name </label>
  56.                             </div>
  57.                         }
  58.                     </div>
  59.                 </div>
  60.  
  61.                 @* Operating System Filters *@
  62.                 <div class="tms-filter">
  63.                     <div class="tms-filter__heading">
  64.                         <label id="os-filters_label">Operating System</label>
  65.                         <button class="dropdown-btn" aria-controls="os-filters_collapsible" aria-expanded="true" aria-labelledby="os-filters_label"><i class="fa fa-angle-down"></i></button>
  66.                     </div>
  67.                     <div class="tms-filter-wrapper collapsible" id="os-filters_collapsible">
  68.                         @foreach (var os in ViewBag.OSList)
  69.                         {
  70.                             <div class="tms-filter__option">
  71.                                 <input type="checkbox" value="@os" name="OS" id="@os" />
  72.                                 <label for="@os">@os </label>
  73.                             </div>
  74.                         }
  75.                     </div>
  76.                 </div>
  77.  
  78.                 @* Special Offer Filters *@
  79.                 <div class="tms-filter">
  80.                     <div class="tms-filter__heading">
  81.                         <label id="special-offers-filters_label">Special Offers</label>
  82.                         <button class="dropdown-btn" aria-controls="special-offers-collapsible" aria-expanded="true" aria-labelledby="special-offers-filters_label"><i class="fa fa-angle-down"></i></button>
  83.                     </div>
  84.                     <div class="tms-filter-wrapper collapsible" id="special-offers-collapsible">
  85.                         @foreach (var specialOffer in ViewBag.SpecialOffers)
  86.                         {
  87.                             <div class="tms-filter__option">
  88.                                 <input type="checkbox" value="@specialOffer.Heading" name="SpecialOffer" id="@specialOffer.Heading" />
  89.                                 <label for="@specialOffer.Heading">@specialOffer.Heading </label>
  90.                             </div>
  91.                         }
  92.                     </div>
  93.                 </div>
  94.             </div>
  95.             <div class="tms-fade-horizontal"></div>
  96.             <div class="tms-filters__apply-filters-wrapper" id="applyFilters">
  97.                 <button class="tms-filters__apply-filters-btn" id="applyFiltersBtn">Close</button>
  98.             </div>
  99.  
  100.         </div>
  101.  
  102.         <div class="tms-products ">
  103.             <div class="tms-products__heading-wrapper">
  104.                 <div class="tms-products__title-wrapper">
  105.                     <div class="tms-products__title">
  106.                         <h1>Phones</h1>
  107.                         <p id="productCount">(@phoneCount)</p>
  108.                     </div>
  109.                     <button class="tms-filters__filter-btn" id="outer-filter-btn" aria-label="Expand Filters Section" aria-expanded="false" aria-controls="filter-collapsible"> Filters</button>
  110.                 </div>
  111.             </div>
  112.             <div class="tms-products__container" id="productsContainer">
  113.                 @foreach (var product in Model)
  114.                 {
  115.                     var mainImg = product.Images.First();
  116.                     var hasPoints = product.MostPoints > 0;
  117.                     var hasSpecialOffer = product.SpecialOffers.Any();
  118.                     var hasOffer = product.Offers.Any();
  119.  
  120.                     <a class="tms-product" href="@Url.Action("Index", new { product.UrlName })">
  121.                         <div class="tms-product__image-wrapper">
  122.                             <img alt="@mainImg.Alt" src="@mainImg.Src" class="tms-product__image">
  123.                         </div>
  124.                         <div class="tms-product__content-wrapper">
  125.                             <div class="details">
  126.                                 <h2 class="tms-product__name">@product.SRTitle</h2>
  127.                                 @if (hasOffer)
  128.                                 {
  129.                                     <p class="tms-product__price">$ @Html.Raw(product.BestOffer.Price)</p>
  130.                                     <p class="tms-product__term">on a plan with a @product.BestOffer.Term-year agreement</p>
  131.                                     <div class="tms-product__compare-option">
  132.                                         <input type="checkbox" value="@product.Model" name="ProductCompare" id="@product.Model" />
  133.                                         <label for="@product.Model">Select to Compare </label>
  134.                                     </div>
  135.                                 }
  136.                                 else
  137.                                 {
  138.                                     <p>No Offer Available</p>
  139.                                 }
  140.                             </div>
  141.                             <div class="tms-product__banner-wrapper">
  142.                                 @if (hasSpecialOffer)
  143.                                 {
  144.                                     <p class="tms-product__has-offer">Special Offer</p>
  145.                                 }
  146.                                 @if (hasPoints)
  147.                                 {
  148.                                     <p class="tms-product__points"><span>up to</span> @product.MostPoints.ToString("N0") PTS</p>
  149.                                 }
  150.                             </div>
  151.                         </div>
  152.                     </a>
  153.                 }
  154.             </div>
  155.         </div>
  156.     </div>
  157. </div>
Add Comment
Please, Sign In to add comment