productlistone.tpl 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885
  1. <!-- Template Product List One croster/overwrites/front/productlistone.tpl -->
  2. {if $block.ptstyle == ''}
  3. {if $block.bstyle == ''}
  4. <section class="products{if $blockkey == "1" || $blockkey == "2"} margin-up{/if}{if $block.bgcolor != ""} {$block.bgcolor}{/if}{if $block.borders != ""} {$block.borders}{/if}">
  5. <div class="container">
  6. <div class="cros-pricing-container">
  7. <div class="pricing-slider" id="pricing-tables-{$blockkey}">
  8. {if count($block.table) > 0}
  9. {foreach from=$block.table item=$ditem key=$kk}
  10. <div class="slide-item" id="products-{$ditem@iteration}">
  11. <div class="cros-pricing-table{if $block.ststyle !== ""} {$block.ststyle}{/if}{if $block.noshadow} no-shadow{/if}{if $block.tablebg == "light"} light{elseif $block.tablebg == "primary"} bg-primary{elseif $block.tablebg == "dark"} dark{else} white{/if} fixed-height{if $ditem['Featured']} active{/if}">
  12. <h4>{$ditem['productdetails']['name']}</h4>
  13. {if $ditem['Featured']}
  14. <div class="st-sm">
  15. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  16. </div>
  17. {/if}
  18. {if $block.descp == ""}
  19. {if count($ditem['productdetails']['description']['features']) > 0}
  20. {if $ditem['productdetails']['description']['featuresdesc']}
  21. <div class="desc">{$ditem['productdetails']['description']['featuresdesc']}</div>
  22. {/if}
  23. {/if}
  24. {/if}
  25. <div class="price">
  26. {if $ditem["price"] != 'FREE'}
  27. {assign var="ccurrency" value=$ditem["productdetails"]["price"]["price"]->getCurrency()}
  28. <span class="prefix">{$ccurrency["prefix"]}&nbsp;</span>
  29. <span class="dollar">{$ditem["productdetails"]["price"]['dollars']}</span><span class="cents">.{$ditem["productdetails"]["price"]['cents']}</span>
  30. <span class="suffix">{$ccurrency["suffix"]}</span>
  31. {else}
  32. <h3 class="no-margin"><mark>{$WLANG.orderfree}</mark></h3>
  33. {/if}
  34. {if $ditem["billingcycle"] != ""}
  35. <span class="cycle">/{$ditem["billingcycle"]}</span>
  36. {elseif $ditem["productdetails"]["price"]["cycle"] == "onetime"}
  37. <span class="cycle">{$WLANG.orderpaymenttermonetime}</span>
  38. {/if}
  39. </div>
  40. {*
  41. {if $taxtype}
  42. <div class="small text-muted"><span><i class="fal fa-plus"></i></span>TAX {$taxtype}</div>
  43. {/if}
  44. *}
  45. {if $ditem["productdetails"]["price"]["setupFee"]}
  46. <div class="small text-muted"><span><i class="fal fa-plus"></i></span> {$ditem["productdetails"]["price"]["setupFee"]} {$WLANG.ordersetupfee}</div>
  47. {/if}
  48. {if $block.descp == "below"}
  49. {if count($ditem['productdetails']['description']['features']) > 0}
  50. {if $ditem['productdetails']['description']['featuresdesc']}
  51. <div class="desc">{$ditem['productdetails']['description']['featuresdesc']}</div>
  52. {/if}
  53. {/if}
  54. {/if}
  55. <p class="PriceList-toggle collapsed" data-toggle="collapse" data-target="#PlanLists{$kk + 1}">
  56. <span>{$WLANG.clientareaviewdetails}</span>
  57. </p>
  58. {if $ditem['productdetails']['description']}
  59. {if count($ditem['productdetails']['description']['features']) > 0}
  60. <table class="plan-features{if $block.flisticon == "check-list"} check-list{elseif $block.flisticon == "check-circle"} check-circle{elseif $block.flisticon == "check-square"} check-square{elseif $block.flisticon == "arrows"} arrows{else}{/if} collapse" style="padding-top:0px; padding-bottom: 15px;" id="PlanLists{$kk + 1}">
  61. {foreach $ditem['productdetails']['description']['features'] as $feature => $value}
  62. <tr>
  63. <td style="padding-right: 13px;"><b>{$feature}:</b></td>
  64. <td>
  65. {if $value == "Ja"} <i class="far fa-check-square" style="font-size:14px"></i>
  66. <span style="display:none; color:red; margin-top:15px; margin-left:28px; position:absolute; z-index:1000">Wird untersützt</span>
  67. {elseif $value == "Nein"} <i class="far fa-square" style="font-size:14px"></i>
  68. <span style="display:none; color:red; margin-top:15px; margin-left:28px; position:absolute; z-index:1000">Wird nicht untersützt</span>
  69. {elseif $value == "Optional"} <i class="fas fa-plus" style="font-size:14px"></i>
  70. <span style="display:none; color:red; margin-top:15px; margin-left:28px; position:absolute; z-index:1000">Ist optional Verfügbar</span>
  71. {else}
  72. {$value}
  73. {/if}
  74. </td>
  75. </tr>
  76. {/foreach}
  77. </table>
  78. <!--
  79. <ul class="plan-features{if $block.flisticon == "check-list"} check-list{elseif $block.flisticon == "check-circle"} check-circle{elseif $block.flisticon == "check-square"} check-square{elseif $block.flisticon == "arrows"} arrows{else}{/if} collapse" id="PlanLists{$kk + 1}">
  80. {foreach $ditem['productdetails']['description']['features'] as $feature => $value}
  81. <li><b>{$feature}:</b> {$value}</li>
  82. {/foreach}
  83. </ul>
  84. -->
  85. {else}
  86. <div class="plan-features collapse" id="PlanLists{$kk + 1}">
  87. {$ditem['productdetails']['description']['original']}
  88. </div>
  89. {/if}
  90. {/if}
  91. {if $ditem['Featured']}
  92. <div class="sticker-wrapper">
  93. <div class="sticker">
  94. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  95. </div>
  96. </div>
  97. {/if}
  98. <a href="{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}javascript:void(0){else}cart.php?a=add&pid={$ditem['Plan']}{/if}" class="btn btn-primary{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']} disabled{/if}">
  99. {if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}{$WLANG.outofstock}{elseif $block.btntext}{$block.btntext}{else}{$WLANG.addtocart}{/if}
  100. </a>
  101. </div>
  102. </div>
  103. {/foreach}
  104. {/if}
  105. </div>
  106. </div>
  107. </div>
  108. </section>
  109. <script>
  110. jQuery(document).ready(function () {
  111. var slider = tns({
  112. container: "#pricing-tables-{$blockkey}",
  113. nav: true,
  114. controls: true,
  115. navPosition: 'bottom',
  116. controlsText: ['<i class="fas fa-angle-left"></i>', '<i class="fas fa-angle-right"></i>'],
  117. loop: false,
  118. responsive: {
  119. 0: {
  120. items: 1
  121. },
  122. 768: {
  123. items: 2
  124. },
  125. 992: {
  126. items:{if $block.itemcounts == "2"} 2{else} 3{/if}
  127. },
  128. 1200: {
  129. items:{if $block.itemcounts == ""} 3{else} {$block.itemcounts}{/if}
  130. }
  131. }
  132. });
  133. {if $blockkey <= "2"}
  134. if (jQuery('.mass-head .hero-bg-wrap').hasClass('small-header')) {
  135. jQuery('.products').removeClass('margin-up');
  136. }
  137. {/if}
  138. });
  139. </script>
  140. {else}
  141. <section class="products{if $blockkey == "1" || $blockkey == "2"} margin-up mbo{/if}{if $block.bgcolor != ""} {$block.bgcolor}{/if}{if $block.borders != ""} {$block.borders}{/if}">
  142. <div class="container">
  143. <div class="cros-pricing-container mbo">
  144. <div class="pricing-slider pricing-{$blockkey} row" id="pricing-tables-{$blockkey}">
  145. {if count($block.table) > 0}
  146. {foreach from=$block.table item=$ditem key=$kk}
  147. <div class="{if $block.itemcounts == "2"} col-md-6{elseif $block.itemcounts == "3"} col-md-6 col-lg-4 col-xl-4{elseif $block.itemcounts == "4"} col-md-6 col-lg-4 col-xl-3{/if} slide-item" id="products-{$ditem@iteration}">
  148. <div class="cros-pricing-table{if $block.ststyle !== ""} {$block.ststyle}{/if}{if $block.noshadow} no-shadow{/if}{if $block.tablebg == "light"} light{elseif $block.tablebg == "primary"} bg-primary{elseif $block.tablebg == "dark"} dark{else} white{/if} fixed-height{if $ditem['Featured']} active{/if}">
  149. <div class="position-relative">
  150. <h4>{$ditem['productdetails']['name']}</h4>
  151. {if $ditem['Featured']}
  152. <div class="st-sm">
  153. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  154. </div>
  155. <div class="sticker-wrapper">
  156. <div class="sticker">
  157. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  158. </div>
  159. </div>
  160. {/if}
  161. </div>
  162. {if $block.descp == ""}
  163. {if count($ditem['productdetails']['description']['features']) > 0}
  164. {if $ditem['productdetails']['description']['featuresdesc']}
  165. <div class="desc">{$ditem['productdetails']['description']['featuresdesc']}</div>
  166. {/if}
  167. {/if}
  168. {/if}
  169. {if $ditem["billingcycle"] != ""}
  170. {if $block.bsco}
  171. {foreach $ditem["dropdown"] as $dropdownkey=>$dropdownprice}
  172. {$ditem["dropdown"][$dropdownkey] = $dropdownprice|@array_reverse}
  173. {/foreach}
  174. {/if}
  175. <div class="billing-cycle-pricing fixed-height float{if $block.descp == "below"} desc_belwo{/if}">
  176. <div class="btn-group">
  177. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  178. {assign var="dropdownprice" value=$ditem["dropdown"][$ditem['Plan']][0] nocache}
  179. {assign var="defaultbilling" value=$dropdownprice['cycle'] nocache}
  180. {assign var="taxtype" value=$dropdownprice['taxtype'] nocache}
  181. {assign var="hasconfigoptions" value=$dropdownprice['hasconfigoptions'] nocache}
  182. <div class="pricing_wrapr">
  183. {if $dropdownprice['save']}<div class="save_text"><mark>{$dropdownprice['save']}</mark></div>{/if}
  184. <div class="discounted_options">
  185. <div class="price_duration">
  186. {$dropdownprice['billingcycle']} @
  187. </div>
  188. {if $dropdownprice['save']}
  189. {if $dropdownprice['dollar']}
  190. <div class="regular_pricing{if $dropdownprice['save']} savecut{/if}">
  191. <span class="prefix">{$dropdownprice['prefix']}</span>
  192. <span class="dollar">{$dropdownprice['dollar']}</span>
  193. <span class="cents">.{$dropdownprice['cents']}</span>
  194. <span class="suffix">{$dropdownprice['suffix']}</span>
  195. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  196. </div>
  197. {/if}
  198. {/if}
  199. </div>
  200. <div class="current_prcing">
  201. <span class="prefix">{$dropdownprice['prefix']}</span>
  202. <span class="dollar">{$dropdownprice['monthlydollar']}</span>
  203. <span class="cents">.{$dropdownprice['monthlycents']}</span>
  204. <span class="suffix">{$dropdownprice['suffix']}</span>
  205. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  206. {if $dropdownprice['setup'] > 0}
  207. <div class="small text-muted">
  208. <span><i class="fal fa-plus"></i></span>
  209. <span>{$dropdownprice['prefix']}</span>
  210. {$dropdownprice['setup']}
  211. <span>{$dropdownprice['suffix']}</span>
  212. {$WLANG.ordersetupfee}
  213. </div>
  214. {/if}
  215. </div>
  216. </div>
  217. <span class="fas fa-angle-down"></span>
  218. </a>
  219. <ul class="dropdown-menu">
  220. {if $ditem["dropdown"][$ditem['Plan']]}
  221. {foreach $ditem["dropdown"][$ditem['Plan']] as $dropdownprice}
  222. <li class="billinging_wrapr" data-ultn-bilcycle="{$dropdownprice['cycle']}">
  223. <div class="pricing_wrapr">
  224. {if $dropdownprice['save']}<div class="save_text"><mark>{$dropdownprice['save']}</mark></div>{/if}
  225. <div class="discounted_options">
  226. <div class="price_duration">
  227. {$dropdownprice['billingcycle']} @
  228. </div>
  229. {if $dropdownprice['save']}
  230. {if $dropdownprice['dollar']}
  231. <div class="regular_pricing{if $dropdownprice['save']} savecut{/if}">
  232. <span class="prefix">{$dropdownprice['prefix']}</span>
  233. <span class="dollar">{$dropdownprice['dollar']}</span>
  234. <span class="cents">.{$dropdownprice['cents']}</span>
  235. <span class="suffix">{$dropdownprice['suffix']}</span>
  236. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  237. </div>
  238. {/if}
  239. {/if}
  240. </div>
  241. <div class="current_prcing">
  242. <span class="prefix">{$dropdownprice['prefix']}</span>
  243. <span class="dollar">{$dropdownprice['monthlydollar']}</span>
  244. <span class="cents">.{$dropdownprice['monthlycents']}</span>
  245. <span class="suffix">{$dropdownprice['suffix']}</span>
  246. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  247. {if $dropdownprice['setup'] > 0}
  248. <div class="small text-muted">
  249. <span><i class="fal fa-plus"></i></span>
  250. <span>{$dropdownprice['prefix']}</span>
  251. {$dropdownprice['setup']}
  252. <span>{$dropdownprice['suffix']}</span>
  253. {$WLANG.ordersetupfee}
  254. </div>
  255. {/if}
  256. </div>
  257. </div>
  258. </li>
  259. {/foreach}
  260. {/if}
  261. </ul>
  262. </div>
  263. </div>
  264. {else}
  265. <div class="price">
  266. {if $ditem["price"] != 'FREE'}
  267. {assign var="ccurrency" value=$ditem["productdetails"]["price"]["price"]->getCurrency()}
  268. <span class="prefix">{$ccurrency["prefix"]}</span>
  269. <span class="dollar">{$ditem["productdetails"]["price"]['dollars']}</span><span class="cents">.{$ditem["productdetails"]["price"]['cents']}</span>
  270. <span class="suffix">{$ccurrency["suffix"]}</span>
  271. {else}
  272. <h3 class="no-margin"><mark>{$WLANG.orderfree}</mark></h3>
  273. {/if}
  274. {if $ditem["billingcycle"] != ""}
  275. <span class="cycle">/{$ditem["billingcycle"]}</span>
  276. {elseif $ditem["productdetails"]["price"]["cycle"] == "onetime"}
  277. <span class="cycle">{$WLANG.orderpaymenttermonetime}</span>
  278. {/if}
  279. </div>
  280. {/if}
  281. {*
  282. {if $taxtype}
  283. <div class="small text-muted"><span><i class="fal fa-plus"></i></span>TAX {$taxtype}</div>
  284. {/if}
  285. *}
  286. {if $block.descp == "below"}
  287. {if count($ditem['productdetails']['description']['features']) > 0}
  288. {if $ditem['productdetails']['description']['featuresdesc']}
  289. <div class="desc">{$ditem['productdetails']['description']['featuresdesc']}</div>
  290. {/if}
  291. {/if}
  292. {/if}
  293. <a href="{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}javascript:void(0){else}cart.php?a=add&pid={$ditem['Plan']}{if $ditem["billingcycle"] != ""}&billingcycle={$defaultbilling}{/if}{/if}" class="btn btn-primary{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']} disabled{/if}">
  294. {if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}{$WLANG.outofstock}{elseif $block.btntext}{$block.btntext}{else}{$WLANG.addtocart}{/if}
  295. </a>
  296. <p class="PriceList-toggle collapsed" data-toggle="collapse" data-target="#PlanLists{$kk + 1}">
  297. <span>{$WLANG.clientareaviewdetails}</span>
  298. </p>
  299. {if $ditem['productdetails']['description']}
  300. {if count($ditem['productdetails']['description']['features']) > 0}
  301. <ul class="plan-features{if $block.flisticon == "check-list"} check-list{elseif $block.flisticon == "check-circle"} check-circle{elseif $block.flisticon == "check-square"} check-square{elseif $block.flisticon == "arrows"} arrows{else}{/if} collapse" id="PlanLists{$kk + 1}">
  302. {foreach $ditem['productdetails']['description']['features'] as $feature => $value}
  303. <li><b>{$value}</b> {$feature}</li>
  304. {/foreach}
  305. </ul>
  306. {else}
  307. <div class="plan-features collapse" id="PlanLists{$kk + 1}">
  308. {$ditem['productdetails']['description']['original']}
  309. </div>
  310. {/if}
  311. {/if}
  312. </div>
  313. </div>
  314. {/foreach}
  315. {/if}
  316. </div>
  317. </div>
  318. </div>
  319. </section>
  320. <script>
  321. jQuery(document).ready(function () {
  322. {if $blockkey <= "2"}
  323. if (jQuery('.mass-head .hero-bg-wrap').hasClass('small-header')) {
  324. jQuery('.products').removeClass('margin-up');
  325. }
  326. {/if}
  327. jQuery(".pricing-{$blockkey} .dropdown-menu li").click(function(){
  328. var selText = jQuery(this).html();
  329. jQuery(this).parents('.btn-group').find('.dropdown-toggle').html(selText+' <span class="fas fa-angle-down"></span>');
  330. });
  331. jQuery('.pricing-{$blockkey} .billinging_wrapr').click(function(){
  332. var disBtnBilCycle = jQuery(this).attr('data-ultn-bilcycle');
  333. var disBtnUrlFetch = jQuery(this).closest('.pricing-{$blockkey} .cros-pricing-table').find('.btn-primary').attr('href');
  334. var promocode = disBtnUrlFetch.split('&promocode');
  335. var disBtnUrlRemv = disBtnUrlFetch.indexOf('&billingcycle');
  336. var disBtnUrlFinal = disBtnUrlFetch.substring(0, disBtnUrlRemv);
  337. var disBtnUrlFinal = disBtnUrlFinal+'&billingcycle='+disBtnBilCycle;
  338. if(promocode['1'])
  339. {
  340. var disBtnUrlFinal = disBtnUrlFinal+'&promocode'+promocode['1'];
  341. }
  342. jQuery(this).closest('.pricing-{$blockkey} .cros-pricing-table').find('.btn-primary').attr('href',disBtnUrlFinal);
  343. });
  344. });
  345. </script>
  346. {/if}
  347. {elseif $block.ptstyle == 'pts_1'}
  348. <section class="products{if $blockkey == "1" || $blockkey == "2"} margin-up mbo{/if}{if $block.bgcolor != ""} {$block.bgcolor}{/if}{if $block.borders != ""} {$block.borders}{/if}">
  349. <div class="container">
  350. <div class="cros-pricing-container mbo">
  351. <div class="pricing-box pricing-{$blockkey}" id="pricing-tables-{$blockkey}">
  352. <table class="footable trns" id="footable-{$blockkey}">
  353. <tbody>
  354. {if count($block.table) > 0}
  355. {foreach from=$block.table item=$ditem key=$kk}
  356. <tr>
  357. <td>
  358. <div class="cros-pricing-table{if $block.ststyle !== ""} {$block.ststyle}{/if}{if $block.noshadow} no-shadow{/if}{if $block.tablebg == "light"} light{elseif $block.tablebg == "primary"} bg-primary{elseif $block.tablebg == "dark"} dark{else} white{/if} pt_st_4{if $ditem['Featured']} active{/if}">
  359. <div class="row no-gutters">
  360. <div class="col-md-4 col-lg-3">
  361. <div class="content">
  362. <h4 class="product-name">{$ditem['productdetails']['name']}</h4>
  363. {if $ditem["billingcycle"] != ""}
  364. {if $block.bsco}
  365. {foreach $ditem["dropdown"] as $dropdownkey=>$dropdownprice}
  366. {$ditem["dropdown"][$dropdownkey] = $dropdownprice|@array_reverse}
  367. {/foreach}
  368. {/if}
  369. <div class="billing-cycle-pricing float">
  370. <div class="btn-group">
  371. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  372. {assign var="dropdownprice" value=$ditem["dropdown"][$ditem['Plan']][0] nocache}
  373. {assign var="defaultbilling" value=$dropdownprice['cycle'] nocache}
  374. {assign var="taxtype" value=$dropdownprice['taxtype'] nocache}
  375. {assign var="hasconfigoptions" value=$dropdownprice['hasconfigoptions'] nocache}
  376. <div class="pricing_wrapr">
  377. {if $dropdownprice['save']}<div class="save_text"><mark>{$dropdownprice['save']}</mark></div>{/if}
  378. <div class="discounted_options">
  379. <div class="price_duration">
  380. {$dropdownprice['billingcycle']} @
  381. </div>
  382. {if $dropdownprice['save']}
  383. {if $dropdownprice['dollar']}
  384. <div class="regular_pricing{if $dropdownprice['save']} savecut{/if}">
  385. <span class="prefix">{$dropdownprice['prefix']}</span>
  386. <span class="dollar">{$dropdownprice['dollar']}</span>
  387. <span class="cents">.{$dropdownprice['cents']}</span>
  388. <span class="suffix">{$dropdownprice['suffix']}</span>
  389. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  390. </div>
  391. {/if}
  392. {/if}
  393. </div>
  394. <div class="current_prcing">
  395. <span class="prefix">{$dropdownprice['prefix']}</span>
  396. <span class="dollar">{$dropdownprice['monthlydollar']}</span>
  397. <span class="cents">.{$dropdownprice['monthlycents']}</span>
  398. <span class="suffix">{$dropdownprice['suffix']}</span>
  399. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  400. {if $dropdownprice['setup'] > 0}
  401. <div class="small text-muted">
  402. <span><i class="fal fa-plus"></i></span>
  403. <span>{$dropdownprice['prefix']}</span>
  404. {$dropdownprice['setup']}
  405. <span>{$dropdownprice['suffix']}</span>
  406. {$WLANG.ordersetupfee}
  407. </div>
  408. {/if}
  409. </div>
  410. </div>
  411. <span class="fas fa-angle-down"></span>
  412. </a>
  413. <ul class="dropdown-menu">
  414. {if $ditem["dropdown"][$ditem['Plan']]}
  415. {foreach $ditem["dropdown"][$ditem['Plan']] as $dropdownprice}
  416. <li class="billinging_wrapr" data-ultn-bilcycle="{$dropdownprice['cycle']}">
  417. <div class="pricing_wrapr">
  418. {if $dropdownprice['save']}<div class="save_text"><mark>{$dropdownprice['save']}</mark></div>{/if}
  419. <div class="discounted_options">
  420. <div class="price_duration">
  421. {$dropdownprice['billingcycle']} @
  422. </div>
  423. {if $dropdownprice['save']}
  424. {if $dropdownprice['dollar']}
  425. <div class="regular_pricing{if $dropdownprice['save']} savecut{/if}">
  426. <span class="prefix">{$dropdownprice['prefix']}</span>
  427. <span class="dollar">{$dropdownprice['dollar']}</span>
  428. <span class="cents">.{$dropdownprice['cents']}</span>
  429. <span class="suffix">{$dropdownprice['suffix']}</span>
  430. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  431. </div>
  432. {/if}
  433. {/if}
  434. </div>
  435. <div class="current_prcing">
  436. <span class="prefix">{$dropdownprice['prefix']}</span>
  437. <span class="dollar">{$dropdownprice['monthlydollar']}</span>
  438. <span class="cents">.{$dropdownprice['monthlycents']}</span>
  439. <span class="suffix">{$dropdownprice['suffix']}</span>
  440. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  441. {if $dropdownprice['setup'] > 0}
  442. <div class="small text-muted">
  443. <span><i class="fal fa-plus"></i></span>
  444. <span>{$dropdownprice['prefix']}</span>
  445. {$dropdownprice['setup']}
  446. <span>{$dropdownprice['suffix']}</span>
  447. {$WLANG.ordersetupfee}
  448. </div>
  449. {/if}
  450. </div>
  451. </div>
  452. </li>
  453. {/foreach}
  454. {/if}
  455. </ul>
  456. </div>
  457. </div>
  458. {else}
  459. <div class="price">
  460. {if $ditem["price"] != 'FREE'}
  461. {assign var="ccurrency" value=$ditem["productdetails"]["price"]["price"]->getCurrency()}
  462. <span class="prefix">{$ccurrency["prefix"]}</span>
  463. <span class="dollar">{$ditem["productdetails"]["price"]['dollars']}</span><span class="cents">.{$ditem["productdetails"]["price"]['cents']}</span>
  464. <span class="suffix">{$ccurrency["suffix"]}</span>
  465. {else}
  466. <h3 class="no-margin"><mark>{$WLANG.orderfree}</mark></h3>
  467. {/if}
  468. {if $ditem["billingcycle"] != ""}
  469. <span class="cycle">/{$ditem["billingcycle"]}</span>
  470. {elseif $ditem["productdetails"]["price"]["cycle"] == "onetime"}
  471. <span class="cycle">{$WLANG.orderpaymenttermonetime}</span>
  472. {/if}
  473. </div>
  474. {/if}
  475. {*
  476. {if $taxtype}
  477. <div class="small text-muted"><span><i class="fal fa-plus"></i></span>TAX {$taxtype}</div>
  478. {/if}
  479. *}
  480. </div>
  481. {if $ditem['Featured']}
  482. <div class="sticker-wrapper">
  483. <div class="sticker">
  484. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  485. </div>
  486. </div>
  487. {/if}
  488. </div>
  489. <div class="col-md-5 col-lg-7">
  490. <div class="content">
  491. {if $ditem['Featured']}
  492. <div class="st-sm">
  493. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  494. </div>
  495. {/if}
  496. {if $ditem['productdetails']['description']}
  497. {if count($ditem['productdetails']['description']['features']) > 0}
  498. <ul class="plan-features{if $block.flisticon == "check-list"} check-list{elseif $block.flisticon == "check-circle"} check-circle{elseif $block.flisticon == "check-square"} check-square{elseif $block.flisticon == "arrows"} arrows{else}{/if}" id="PlanLists{$kk + 1}">
  499. {foreach $ditem['productdetails']['description']['features'] as $feature => $value}
  500. <li><b>{$value}</b> {$feature}</li>
  501. {/foreach}
  502. </ul>
  503. {else}
  504. <div class="plan-features" id="PlanLists{$kk + 1}">
  505. {$ditem['productdetails']['description']['original']}
  506. </div>
  507. {/if}
  508. {/if}
  509. {if count($ditem['productdetails']['description']['features']) > 0}
  510. {if $ditem['productdetails']['description']['featuresdesc']}
  511. <div class="featured_desc">{$ditem['productdetails']['description']['featuresdesc']}</div>
  512. {/if}
  513. {/if}
  514. </div>
  515. </div>
  516. <div class="col-md-3 col-lg-2">
  517. <div class="content">
  518. <a href="{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}javascript:void(0){else}cart.php?a=add&pid={$ditem['Plan']}{if $ditem["billingcycle"] != ""}&billingcycle={$defaultbilling}{/if}{/if}" class="btn btn-primary btn-lg{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']} disabled{/if}">
  519. {if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}{$WLANG.outofstock}{elseif $block.btntext}{$block.btntext}{else}{$WLANG.addtocart}{/if}
  520. </a>
  521. </div>
  522. </div>
  523. </div>
  524. </div>
  525. </td>
  526. </tr>
  527. {/foreach}
  528. {/if}
  529. </tbody>
  530. <tfoot>
  531. <tr>
  532. <td class="text-center">
  533. <ul class="hide-if-no-paging pagination pagination-centered"></ul>
  534. </td>
  535. </tr>
  536. </tfoot>
  537. </table>
  538. </div>
  539. </div>
  540. </div>
  541. </section>
  542. <script>
  543. jQuery(document).ready(function () {
  544. jQuery(function () {
  545. jQuery('#footable-{$blockkey}').footable();
  546. });
  547. {if $blockkey <= "2"}
  548. if (jQuery('.mass-head .hero-bg-wrap').hasClass('small-header')) {
  549. jQuery('.products').removeClass('margin-up');
  550. }
  551. {/if}
  552. jQuery(".pricing-{$blockkey} .dropdown-menu li").click(function(){
  553. var selText = jQuery(this).html();
  554. jQuery(this).parents('.btn-group').find('.dropdown-toggle').html(selText+' <span class="fas fa-angle-down"></span>');
  555. });
  556. jQuery('.pricing-{$blockkey} .billinging_wrapr').click(function(){
  557. var disBtnBilCycle = jQuery(this).attr('data-ultn-bilcycle');
  558. var disBtnUrlFetch = jQuery(this).closest('.pricing-{$blockkey} .cros-pricing-table').find('.btn-primary').attr('href');
  559. var promocode = disBtnUrlFetch.split('&promocode');
  560. var disBtnUrlRemv = disBtnUrlFetch.indexOf('&billingcycle');
  561. var disBtnUrlFinal = disBtnUrlFetch.substring(0, disBtnUrlRemv);
  562. var disBtnUrlFinal = disBtnUrlFinal+'&billingcycle='+disBtnBilCycle;
  563. if(promocode['1'])
  564. {
  565. var disBtnUrlFinal = disBtnUrlFinal+'&promocode'+promocode['1'];
  566. }
  567. jQuery(this).closest('.pricing-{$blockkey} .cros-pricing-table').find('.btn-primary').attr('href',disBtnUrlFinal);
  568. });
  569. });
  570. </script>
  571. {elseif $block.ptstyle == 'pts_2'}
  572. <section class="products{if $blockkey == "1" || $blockkey == "2"} margin-up mbo{/if}{if $block.bgcolor != ""} {$block.bgcolor}{/if}{if $block.borders != ""} {$block.borders}{/if}">
  573. <div class="section__plan_comparison">
  574. <div class="container">
  575. {if $blockkey >= "2"}
  576. {if $block.sectitle}<div class="h1 text-center" style="margin-bottom: 60px;">{$block.sectitle}</div>{/if}
  577. {/if}
  578. <div class="cros-pricing-container">
  579. <div class="cros-pricing-table no-animation{if $block.noshadow} no-shadow{/if}{if $block.tablebg == "light"} light{elseif $block.tablebg == "primary"} bg-primary{elseif $block.tablebg == "dark"} dark{else} white{/if}">
  580. <div class="plan plan-{$blockkey}">
  581. <div class="plan__column plan__column--empty">
  582. <div class="plan__header"></div>
  583. <div class="plan__body plan__body--right">
  584. {foreach from=$block.table|@array_column:'featurelist'|@array_count_values item=count key=featurelist}
  585. {$featurelist}
  586. <div class="plan__cell plan__cell-last"></div>
  587. {/foreach}
  588. </div>
  589. </div>
  590. <div class="swiper-button-next">
  591. <span class="btn__text">{$WLANG.tablepagesnext}</span>
  592. <span class="btn__icon"><i class="far fa-long-arrow-right"></i></span>
  593. </div>
  594. <div class="swiper-button-prev">
  595. <span class="btn__icon"><i class="far fa-long-arrow-left"></i></span>
  596. <span class="btn__text">{$WLANG.tablepagesprevious}</span>
  597. </div>
  598. <div class="swiper-container" id="plans-slider-{$blockkey}">
  599. <div class="swiper-wrapper">
  600. {if count($block.table) > 0}
  601. {foreach from=$block.table item=$ditem key=$kk}
  602. <div class="swiper-slide">
  603. <div class="plan__column" id="products-{$ditem@iteration}">
  604. <div class="plan__header">
  605. <h4>{$ditem['productdetails']['name']}</h4>
  606. </div>
  607. <div class="plan__body">
  608. {$ditem['featuresvalues']}
  609. <div class="plan__cell plan__cell-last pricing__cell">
  610. <div class="pricing plan__pricing">
  611. <div class="pricing__price">
  612. {if $ditem["dropdown"][$ditem['Plan']]|@count > "1" && $block.bstyle != ''}
  613. {if $block.bsco}
  614. {foreach $ditem["dropdown"] as $dropdownkey=>$dropdownprice}
  615. {$ditem["dropdown"][$dropdownkey] = $dropdownprice|@array_reverse}
  616. {/foreach}
  617. {/if}
  618. <div class="billing-cycle-pricing">
  619. <div class="btn-group dropup">
  620. <a class="btn dropdown-toggle" data-toggle="dropdown" data-flip="false" href="#">
  621. {assign var="dropdownprice" value=$ditem["dropdown"][$ditem['Plan']][0] nocache}
  622. {assign var="defaultbilling" value=$dropdownprice['cycle'] nocache}
  623. {assign var="taxtype" value=$dropdownprice['taxtype'] nocache}
  624. {assign var="hasconfigoptions" value=$dropdownprice['hasconfigoptions'] nocache}
  625. <div class="pricing_wrapr">
  626. {if $dropdownprice['save']}<div class="save_text"><mark>{$dropdownprice['save']}</mark></div>{/if}
  627. <div class="discounted_options">
  628. <div class="price_duration">
  629. {$dropdownprice['billingcycle']} @
  630. </div>
  631. {if $dropdownprice['save']}
  632. {if $dropdownprice['dollar']}
  633. <div class="regular_pricing{if $dropdownprice['save']} savecut{/if}">
  634. <span class="prefix">{$dropdownprice['prefix']}</span>
  635. <span class="dollar">{$dropdownprice['dollar']}</span>
  636. <span class="cents">.{$dropdownprice['cents']}</span>
  637. <span class="suffix">{$dropdownprice['suffix']}</span>
  638. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  639. </div>
  640. {/if}
  641. {/if}
  642. </div>
  643. <div class="current_prcing">
  644. <span class="prefix">{$dropdownprice['prefix']}</span>
  645. <span class="dollar">{$dropdownprice['monthlydollar']}</span>
  646. <span class="cents">.{$dropdownprice['monthlycents']}</span>
  647. <span class="suffix">{$dropdownprice['suffix']}</span>
  648. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  649. {if $dropdownprice['setup'] > 0}
  650. <div class="small text-muted">
  651. <span><i class="fal fa-plus"></i></span>
  652. <span>{$dropdownprice['prefix']}</span>
  653. {$dropdownprice['setup']}
  654. <span>{$dropdownprice['suffix']}</span>
  655. {$WLANG.ordersetupfee}
  656. </div>
  657. {/if}
  658. </div>
  659. </div>
  660. <span class="fas fa-angle-down"></span>
  661. </a>
  662. <ul class="dropdown-menu">
  663. {if $ditem["dropdown"][$ditem['Plan']]}
  664. {foreach $ditem["dropdown"][$ditem['Plan']] as $dropdownprice}
  665. <li class="billinging_wrapr" data-ultn-bilcycle="{$dropdownprice['cycle']}">
  666. <div class="pricing_wrapr">
  667. {if $dropdownprice['save']}<div class="save_text"><mark>{$dropdownprice['save']}</mark></div>{/if}
  668. <div class="discounted_options">
  669. <div class="price_duration">
  670. {$dropdownprice['billingcycle']} @
  671. </div>
  672. {if $dropdownprice['save']}
  673. {if $dropdownprice['dollar']}
  674. <div class="regular_pricing{if $dropdownprice['save']} savecut{/if}">
  675. <span class="prefix">{$dropdownprice['prefix']}</span>
  676. <span class="dollar">{$dropdownprice['dollar']}</span>
  677. <span class="cents">.{$dropdownprice['cents']}</span>
  678. <span class="suffix">{$dropdownprice['suffix']}</span>
  679. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  680. </div>
  681. {/if}
  682. {/if}
  683. </div>
  684. <div class="current_prcing">
  685. <span class="prefix">{$dropdownprice['prefix']}</span>
  686. <span class="dollar">{$dropdownprice['monthlydollar']}</span>
  687. <span class="cents">.{$dropdownprice['monthlycents']}</span>
  688. <span class="suffix">{$dropdownprice['suffix']}</span>
  689. <span class="cycle">{$dropdownprice['monthlycycle']}</span>
  690. {if $dropdownprice['setup'] > 0}
  691. <div class="small text-muted">
  692. <span><i class="fal fa-plus"></i></span>
  693. <span>{$dropdownprice['prefix']}</span>
  694. {$dropdownprice['setup']}
  695. <span>{$dropdownprice['suffix']}</span>
  696. {$WLANG.ordersetupfee}
  697. </div>
  698. {/if}
  699. </div>
  700. </div>
  701. </li>
  702. {/foreach}
  703. {/if}
  704. </ul>
  705. </div>
  706. </div>
  707. {else}
  708. <div class="price">
  709. {if $ditem["price"] != 'FREE'}
  710. {assign var="ccurrency" value=$ditem["productdetails"]["price"]["price"]->getCurrency()}
  711. <span class="prefix">{$ccurrency["prefix"]}</span>
  712. <span class="dollar">{$ditem["productdetails"]["price"]['dollars']}</span><span class="cents">.{$ditem["productdetails"]["price"]['cents']}</span>
  713. <span class="suffix">{$ccurrency["suffix"]}</span>
  714. {else}
  715. <h3 class="no-margin"><mark>{$WLANG.orderfree}</mark></h3>
  716. {/if}
  717. {if $ditem["billingcycle"] != ""}
  718. <span class="cycle">/{$ditem["billingcycle"]}</span>
  719. {elseif $ditem["productdetails"]["price"]["cycle"] == "onetime"}
  720. <span class="cycle">{$WLANG.orderpaymenttermonetime}</span>
  721. {/if}
  722. </div>
  723. {/if}
  724. </div>
  725. </div>
  726. <a href="{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}javascript:void(0){else}cart.php?a=add&pid={$ditem['Plan']}{if $ditem["dropdown"][$ditem['Plan']]|@count > "1" && $block.bstyle != ''}{if $ditem["billingcycle"] != ""}&billingcycle={$defaultbilling}{/if}{/if}{/if}" class="btn btn-block btn-primary{if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']} disabled{/if}">
  727. {if $ditem['stockControlEnabled'] && !$ditem['quantityInStock']}{$WLANG.outofstock}{elseif $block.btntext}{$block.btntext}{else}{$WLANG.addtocart}{/if}
  728. </a>
  729. </div>
  730. </div>
  731. {if $ditem['Featured']}
  732. <div class="sticker-wrapper">
  733. <div class="sticker">
  734. {if $block.featured}{$block.featured}{else}{$WLANG.featuredProduct}{/if}
  735. </div>
  736. </div>
  737. {/if}
  738. </div>
  739. </div>
  740. {/foreach}
  741. {/if}
  742. </div>
  743. </div>
  744. </div>
  745. </div>
  746. </div>
  747. </div>
  748. </div>
  749. </section>
  750. <script>
  751. jQuery(document).ready(function () {
  752. var swiper = new Swiper('#plans-slider-{$blockkey}', {
  753. slidesPerView: 1,
  754. spaceBetween: 0,
  755. // init: false,
  756. pagination: {
  757. el: '.swiper-pagination',
  758. dynamicBullets: true,
  759. },
  760. navigation: {
  761. nextEl: '.swiper-button-next',
  762. prevEl: '.swiper-button-prev',
  763. },
  764. breakpoints: {
  765. 0: {
  766. slidesPerView: 1,
  767. },
  768. 768: {
  769. slidesPerView: 2,
  770. },
  771. 992: {
  772. slidesPerView: {if $block.itemcounts == "2"} 2{else} 3{/if},
  773. },
  774. 1200: {
  775. slidesPerView: {if $block.itemcounts == ""} 3{else} {$block.itemcounts}{/if},
  776. },
  777. }
  778. });
  779. {if $blockkey <= "2"}
  780. if (jQuery('.mass-head .hero-bg-wrap').hasClass('small-header')) {
  781. jQuery('.products').removeClass('margin-up');
  782. }
  783. {/if}
  784. {if $ditem["dropdown"][$ditem['Plan']]|@count > "1" && $block.bstyle != ''}
  785. jQuery(".plan-{$blockkey} .dropdown-menu li").click(function(){
  786. var selText = jQuery(this).html();
  787. jQuery(this).parents('.btn-group').find('.dropdown-toggle').html(selText+' <span class="fas fa-angle-down"></span>');
  788. });
  789. jQuery('.plan-{$blockkey} .billinging_wrapr').click(function(){
  790. var disBtnBilCycle = jQuery(this).attr('data-ultn-bilcycle');
  791. var disBtnUrlFetch = jQuery(this).closest('.plan-{$blockkey} .plan__body').find('.btn-primary').attr('href');
  792. var promocode = disBtnUrlFetch.split('&promocode');
  793. var disBtnUrlRemv = disBtnUrlFetch.indexOf('&billingcycle');
  794. var disBtnUrlFinal = disBtnUrlFetch.substring(0, disBtnUrlRemv);
  795. var disBtnUrlFinal = disBtnUrlFinal+'&billingcycle='+disBtnBilCycle;
  796. if(promocode['1'])
  797. {
  798. var disBtnUrlFinal = disBtnUrlFinal+'&promocode'+promocode['1'];
  799. }
  800. jQuery(this).closest('.plan-{$blockkey} .plan__body').find('.btn-primary').attr('href',disBtnUrlFinal);
  801. });
  802. {/if}
  803. });
  804. </script>
  805. {/if}