products.tpl 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. {include file="orderforms/{$carttpl}/common.tpl"}
  2. {if count($products) < 4}
  3. <style rel="stylesheet" type="text/css">
  4. @media (min-width: 1400px) {
  5. #order-clouder {
  6. {if count($products) == 1}
  7. margin: 0 auto; max-width: 25%; width: 25%;
  8. {elseif count($products) == 2}
  9. margin: 0 auto; max-width: 50%; width: 50%;
  10. {elseif count($products) == 3}
  11. margin: 0 auto; max-width: 75%; width: 75%;
  12. {else}
  13. {/if}
  14. }
  15. }
  16. @media (min-width: 992px) and (max-width: 1399px) {
  17. #order-clouder {
  18. {if count($products) == 1}
  19. margin: 0 auto; max-width: 33%; width: 33%;
  20. {elseif count($products) == 2}
  21. margin: 0 auto; max-width: 75%; width: 75%;
  22. {else}
  23. {/if}
  24. }
  25. }
  26. </style>
  27. {/if}
  28. {if file_exists("templates/orderforms/{$carttpl}/layouts/head.tpl")}
  29. {include file="templates/orderforms/{$carttpl}/layouts/head.tpl"}
  30. {/if}
  31. <div id="order-standard_cart">
  32. <div class="row">
  33. <div class="col-md-12">
  34. {if file_exists("templates/orderforms/{$carttpl}/layouts/head.tpl")}
  35. {else}
  36. <div class="header-lined">
  37. <h1>
  38. {$productGroup.name}
  39. </h1>
  40. {if $productGroup.headline}
  41. <h4 class="text-muted">{$productGroup.headline}</h4>
  42. {/if}
  43. {if $productGroup.tagline}
  44. <p class="text-muted">{$productGroup.tagline}</p>
  45. {/if}
  46. </div>
  47. {/if}
  48. <div class="TM-categories-options justify-content-center">
  49. <form>
  50. <select name="gid" id="gidForm" onchange="javascript:redirectToCartPage()" class="form-control">
  51. <optgroup label="Product Categories">
  52. {foreach key=num item=productgroup from=$productgroups}
  53. <option value="{$productgroup.routePath}"{if $gid eq $productgroup.gid} selected="selected"{/if}>{$productgroup.name}</option>
  54. {/foreach}
  55. </optgroup>
  56. <optgroup label="Actions">
  57. {if $loggedin}
  58. <option value="{$WEB_ROOT}/cart.php?gid=addons"{if $gid eq "addons"} selected{/if}>{$LANG.cartproductaddons}</option>
  59. {if $renewalsenabled}
  60. <option value="{$WEB_ROOT}/cart.php?gid=renewals"{if $gid eq "renewals"} selected{/if}>{$LANG.domainrenewals}</option>
  61. {/if}
  62. {/if}
  63. {if $registerdomainenabled}
  64. <option value="{$WEB_ROOT}/cart.php?gid=registerdomain"{if $domain eq "register"} selected{/if}>{$LANG.navregisterdomain}</option>
  65. {/if}
  66. {if $transferdomainenabled}
  67. <option value="{$WEB_ROOT}/cart.php?gid=transferdomain"{if $domain eq "transfer"} selected{/if}>{$LANG.transferinadomain}</option>
  68. {/if}
  69. <option value="{$WEB_ROOT}/cart.php?a=view"{if $action eq "view"} selected{/if}>{$LANG.viewcart}</option>
  70. </optgroup>
  71. </select>
  72. </form>
  73. </div>
  74. {if $errormessage}
  75. <div class="alert alert-danger">
  76. {$errormessage}
  77. </div>
  78. {elseif !$productGroup}
  79. <div class="alert alert-info">
  80. {lang key='orderForm.selectCategory'}
  81. </div>
  82. {/if}
  83. </div>
  84. <div class="col-md-12">
  85. <div id="order-clouder">
  86. <div id="products" class="cros-pricing-container">
  87. <div class="owl-carousel pricing-box no-padding-top">
  88. {foreach $products as $key => $product}
  89. <div class="slide-item" id="product{$product@iteration}">
  90. <div class="cros-pricing-table light fixed-height {if $product.isFeatured}active{/if}">
  91. <h4 id="product{$product@iteration}-name">{$product.name}</h4>
  92. {if $product.featuresdesc}<div class="desc">{$product.featuresdesc}</div>{else}{/if}
  93. <div id="product{$product@iteration}-price">
  94. {if $product.bid}
  95. <div class="small text-muted">{$LANG.bundledeal}</div>
  96. {if $product.displayprice}
  97. <span class="text-secondary bolder" style="font-size: 33px;">{$product.displayPriceSimple}</span>
  98. {/if}
  99. {/if}
  100. <div class="price">
  101. {if $product.bid}
  102. {elseif $product.paytype eq "free"}
  103. <mark>{$LANG.orderfree}</mark>
  104. {elseif $product.paytype eq "onetime"}
  105. <span>{$product.pricing.onetime} </span>{$LANG.orderpaymenttermonetime}
  106. {else}
  107. {if $product.pricing.hasconfigoptions}
  108. {$LANG.from}
  109. {/if}
  110. {assign var="ccurrency" value=$product.pricing.minprice.price->getCurrency()}
  111. <span class="prefix">{$ccurrency["prefix"]}</span>
  112. <span class="cost">{$product.pricing.minprice.price->toNumeric()}</span>
  113. <span class="suffix">{$ccurrency["suffix"]}</span>
  114. <span class="cycle">{if $product.pricing.minprice.cycle eq "monthly"}
  115. /{$LANG.pricingCycleShort.monthly}
  116. {elseif $product.pricing.minprice.cycle eq "quarterly"}
  117. /{$LANG.pricingCycleShort.quarterly}
  118. {elseif $product.pricing.minprice.cycle eq "semiannually"}
  119. /{$LANG.pricingCycleShort.semiannually}
  120. {elseif $product.pricing.minprice.cycle eq "annually"}
  121. /{$LANG.pricingCycleShort.annually}
  122. {elseif $product.pricing.minprice.cycle eq "biennially"}
  123. /{$LANG.pricingCycleShort.biennially}
  124. {elseif $product.pricing.minprice.cycle eq "triennially"}
  125. /{$LANG.pricingCycleShort.triennially}
  126. {/if}</span>
  127. {/if}
  128. </div>
  129. {if $product.pricing.minprice.setupFee}
  130. <div class="small text-muted">({$product.pricing.minprice.setupFee->toPrefixed()} {$LANG.ordersetupfee})</div>
  131. {/if}
  132. </div>
  133. <p class="PriceList-toggle collapsed" data-toggle="collapse" data-target="#PlanLists1">
  134. <span>Details</span>
  135. </p>
  136. <table class="plan-features collapse" id="PlanLists1"
  137. {foreach from=$product.features key=feature item=value}
  138. <tr>
  139. <td style="padding-right: 13px;"><b>{$feature}:</b></td>
  140. <td>
  141. {if $value == "Ja"} <i class="far fa-check-square" style="font-size:14px"></i>
  142. {elseif $value == "Nein"} <i class="far fa-square" style="font-size:14px"></i>
  143. {else}
  144. {$value}
  145. {/if}
  146. </td>
  147. </tr>
  148. {/foreach}
  149. </table>
  150. <!--
  151. <ul class="plan-features collapse" id="PlanLists1">
  152. {foreach from=$product.features key=feature item=value}
  153. <li>TD {$feature} <b>{$value}</b></li>
  154. {/foreach}
  155. </ul>
  156. -->
  157. {if $product.isFeatured}
  158. <!-- Popular plan sticker -->
  159. <div class="sticker-wrapper">
  160. <div class="sticker">
  161. {$LANG.featuredProduct}
  162. </div>
  163. </div>
  164. <!-- //End popular plan sticker-->
  165. {/if}
  166. <a href="{$WEB_ROOT}/cart.php?a=add&{if $product.bid}bid={$product.bid}{else}pid={$product.pid}{/if}" class="btn btn-primary btn-block" style="margin-top: 10px;" id="product{$product@iteration}-order-button">
  167. {$LANG.ordernowbutton}
  168. </a>
  169. </div>
  170. </div>
  171. {/foreach}
  172. </div>
  173. </div>
  174. </div>
  175. {if count($productGroup.features) > 0}
  176. <div class="space-30"></div>
  177. <div class="block-s3">
  178. <div class="text-center">
  179. <h2 class="no-margin">{$LANG.orderForm.includedWithPlans}</h2>
  180. </div>
  181. </div>
  182. <hr class="separator"></hr>
  183. <div class="cart-features no-margin-top">
  184. <div class="includes-features">
  185. <ul class="list-features">
  186. {foreach $productGroup.features as $features}
  187. <li>{$features.feature}</li>
  188. {/foreach}
  189. </ul>
  190. </div>
  191. </div>
  192. {/if}
  193. </div>
  194. </div>
  195. </div>
  196. {if file_exists("templates/orderforms/{$carttpl}/layouts/foot.tpl")}
  197. {include file="templates/orderforms/{$carttpl}/layouts/foot.tpl"}
  198. {/if}
  199. <script type="text/javascript">
  200. $(document).ready(function() {
  201. $(".pricing-box").owlCarousel({
  202. {if count($products) == 1}
  203. responsive:{
  204. 0:{
  205. items:1,
  206. }
  207. }
  208. {elseif count($products) == 2}
  209. responsive:{
  210. 0:{
  211. items:1,
  212. },
  213. 768:{
  214. items:2,
  215. }
  216. }
  217. {elseif count($products) == 3}
  218. responsive:{
  219. 0:{
  220. items:1,
  221. },
  222. 768:{
  223. items:2,
  224. },
  225. 992:{
  226. items:3,
  227. }
  228. }
  229. {else}
  230. responsive:{
  231. 0:{
  232. items:1,
  233. },
  234. 768:{
  235. items:2,
  236. },
  237. 992:{
  238. items:3,
  239. },
  240. 1200:{
  241. items:4,
  242. }
  243. }
  244. {/if}
  245. });
  246. });
  247. function redirectToCartPage()
  248. {
  249. var path = jQuery('#gidForm').val();
  250. if (path) {
  251. window.location.href = path;
  252. }
  253. }
  254. </script>