order.tpl.orig 68 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150
  1. <link rel="stylesheet" type="text/css" href="{$WEB_ROOT}/templates/orderforms/{$carttpl}/css/all.min.css?v={$versionHash}" />
  2. <link rel="stylesheet" type="text/css" href="{$WEB_ROOT}/templates/orderforms/{$carttpl}/css/style.css?v={$versionHash}" />
  3. <script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/main.min.js?v={$versionHash}"></script>
  4. {if $ordertype == 'global'}
  5. <script>
  6. jQuery(document).ready(function () {
  7. recalcsummary();
  8. if (jQuery('#hiddenpromo').val().trim() != '') {
  9. jQuery('#promocode').val(jQuery('#hiddenpromo').val());
  10. jQuery('.applypromo').trigger('click');
  11. setTimeout(function(){ recalcheckout(); }, 1000);
  12. }else{
  13. recalcheckout();
  14. }
  15. {if $pid}jQuery('#pid_{$pid}').trigger('click');{/if}
  16. {if $domainorder == 'transfer'}jQuery(".domain-trans").trigger("click");{/if}
  17. });
  18. var ccdordertype = 'all';
  19. {if $domainorder == 'register'}
  20. ccdordertype = 'register';
  21. {/if}
  22. {if $domainorder == 'transfer'}
  23. ccdordertype = 'transfer';
  24. {/if}
  25. </script>
  26. {if $themesettings.orderform.opcnoheader}
  27. <div class="hero spc no-padding-bottom">
  28. <div class="container">
  29. <div class="logo-section">
  30. <a class="logo" href="{$WEB_ROOT}/">
  31. {if $themesettings.general.enablelogo}
  32. <img src="{$themesettings.general.logourl}" alt="{$companyname}" class="logo-light img-responsive" />
  33. {if $themesettings.general.darklogo}
  34. <img src="{$themesettings.general.darklogo}" alt="{$companyname}" class="logo-dark img-responsive" />
  35. {else}
  36. <span class="logo-dark">{$companyname}</span>
  37. {/if}
  38. {else}
  39. <span class="logo-light">{$companyname}</span>
  40. {/if}
  41. </a>
  42. </div>
  43. <div class="page-title">
  44. <div class="header-lined">
  45. <div>
  46. </div>
  47. <div>
  48. {include file="$template/includes/breadcrumb.tpl"}
  49. {if $desc}
  50. <span>{$desc}</span>
  51. {/if}
  52. </div>
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. {else}
  58. <div class="hero d-flex align-items-center no-padding-bottom">
  59. <div class="container">
  60. <div class="page-title">
  61. {include file="$template/includes/pageheader.tpl" title=$displayTitle desc=$tagline showbreadcrumb=true}
  62. </div>
  63. </div>
  64. </div>
  65. {/if}
  66. <div id="order-standard_cart">
  67. <input type="hidden" value="{$promocode}" id="hiddenpromo"/>
  68. <div class="cat-loader" style="display: none;">
  69. <div class="loader-icon">
  70. <i class="fad fa-circle-notch fa-spin fa-3x"></i>
  71. </div>
  72. </div>
  73. <div class="container">
  74. <div class="onepage_cart" id="onepage_cart">
  75. <div class="row ajaxcart_cont">
  76. <div class="col-lg-8 col-xl-9">
  77. <span class="d-block d-lg-none float-right">
  78. <a href="{$WEB_ROOT}/order.php{if $domainorder == 'register'}?domainaction=register{elseif $domainorder == 'transfer'}?domainaction=transfer{/if}" onclick="emptyCart()" class="btn btn-link btn-emptycart" data-toggle="tooltip" data-placement="top" title="{$LANG.emptycart}"><i class="fas fa-trash"></i> {$LANG.emptycart}</a>
  79. </span>
  80. <div class="clearfix"></div>
  81. <form id="coniguration_form" onsubmit="return false;">
  82. <div class="p_error" style="display: none;"></div>
  83. {if $domainorder == 'all'}
  84. <div class="TM-card blocks products{if $themesettings.orderform.opcpab}{if $smarty.get.pid || $smarty.get.billingcycle} hidden{/if}{/if}">
  85. <div class="blocks_heading">
  86. <div>
  87. <label>
  88. <input class="no-icheck ortype no-radio" {if $ordertype != 'domain'}checked="checked"{/if} name="ortype" type="radio" value="productdomain">
  89. <span class="scheck no-icon"><h6 class="h4 fw-500">&nbsp;{$LANG.orderchooseapackage}</h6></span>
  90. </label>
  91. </div>
  92. </div>
  93. <div class="blocks_body productsbody" {if $ordertype == 'domain'}style="display:none;"{/if}>
  94. <div class="padding-all no-padding-bottom">
  95. <div class="groups_sec">
  96. <select name="gid" onchange="getProducts()" id="gid" class="form-control">
  97. {foreach from=$productgroups key=num item=group}
  98. {if $group.hidden eq '0'}
  99. <option value="{$group.id}" {if $gid eq $group.id}selected="selected"{/if}>{$group.name}</option>
  100. {/if}
  101. {/foreach}
  102. </select>
  103. </div>
  104. </div>
  105. <div class="space-8"></div>
  106. <div class="product_list border-top" id="product_body">
  107. <div class="plan-list-slider">
  108. {foreach from=$products key=num item=product}
  109. <div {if $num eq 0}class="class="empty_p"{/if}{if $product.extra.hidden neq "0" || $product.extra.retired neq "0"} style="display: none;"{/if}>
  110. <label for="pid_{$product.id}">
  111. <input type="radio" {if $product.extra.freedomain !== ''}data-freedomain='{$product.extra.freedomain}'{/if} data-havedomain='{if $product.showdomainoptions}1{else}0{/if}' {if $product.extra.subdomain != ''}data-havesubdomain='1' data-subdomains='{$product.extra.subdomain}'{else}data-havesubdomain='0' {/if} class="no-icheck no-radio domaincheckhaveit" name="pid" {if $pid eq $product.id}checked="checked"{/if} value="{$product.id}" id="pid_{$product.id}" onclick="addToCart(); triggerProduct();"/>
  112. <span class="scheck products-radio"><h6 class="h5">{$product.name}</h6></span>
  113. </label>
  114. {if $product.extra.freedomainpaymentterms !== ''}
  115. <input type="hidden" name="freedomainpaymentterms" id="freedomainpaymentterms{$product.id}" value="{$product.extra.freedomainpaymentterms}">
  116. {assign var=freedomainpaymentterms value=$product.extra.freedomainpaymentterms }
  117. {/if}
  118. {if $product.extra.freedomaintlds !== ''}
  119. <input type="hidden" name="freedomaintlds" id="freedomaintlds{$product.id}" value="{$product.extra.freedomaintlds}">
  120. {assign var=freedomaintlds value=$product.extra.freedomaintlds }
  121. {/if}
  122. {if $product.extra.freedomaintlds !==''}
  123. {assign var=freedomainvar value=$product.extra.freedomain }
  124. {/if}
  125. </div>
  126. {/foreach}
  127. </div>
  128. </div>
  129. </div>
  130. </div>
  131. <div class="blocks products_billingcycle{if $themesettings.orderform.opcpab}{if $smarty.get.billingcycle} hidden{/if}{/if}" id="products-billingcycle" style="display:none;">
  132. <div class="blocks_body productsbody">
  133. <div class="no-padding-bottom" style="font-size: 0;">
  134. {foreach from=$products key=num item=product}
  135. {if $product.paytype eq 'onetime' || $product.paytype eq 'free' || $product.pricing|@count eq '0'}
  136. <input type="hidden" name="billingcycle[{$product.id}]" value="monthly">
  137. {else}
  138. <div class="row div_billingcyle" style="display:none;" id="billingcycle_{$product.id}">
  139. {foreach from=$product.pricing item=pricing}
  140. {if isset($smarty.get.billingcycle)}
  141. {$BACKCART['products'][0]['billingcycle'] = ""}
  142. {$pricing.checked = ""}
  143. {/if}
  144. {if $pricing.monthly}
  145. <div class="col-sm-4">
  146. <div class="form-group">
  147. <label>
  148. <input type="radio" class="cros-checkbox no-icheck" id="monthly{$product.id}" name="billingcycle[{$product.id}]" value="monthly" onclick="addToCart();triggerBillingCycle();" {if $BACKCART['products'][0]['pid'] == $product.id && $BACKCART['products'][0]['billingcycle'] == 'monthly'} checked='checked'{elseif $smarty.get.billingcycle=='monthly'} checked='checked'{elseif $pricing.checked} checked='checked'{/if}>
  149. <span class="pcb xs">
  150. <span class="c-name">{$LANG.orderpaymenttermmonthly}</span>
  151. <span class="c-price">{$pricing.monthly}</span>
  152. </span>
  153. </label>
  154. </div>
  155. </div>
  156. {elseif $pricing.quarterly}
  157. <div class="col-sm-4">
  158. <div class="form-group">
  159. <label>
  160. <input type="radio" class="cros-checkbox no-icheck" id="quarterly{$product.id}" name="billingcycle[{$product.id}]" value="quarterly" onclick="addToCart();triggerBillingCycle();" {if $BACKCART['products'][0]['pid'] == $product.id && $BACKCART['products'][0]['billingcycle'] == 'quarterly'} checked='checked'{elseif $smarty.get.billingcycle=='quarterly'} checked='checked'{elseif $pricing.checked} checked='checked'{/if}>
  161. <span class="pcb xs">
  162. <span class="c-name">{$LANG.orderpaymenttermquarterly}</span>
  163. <span class="c-price">{$pricing.quarterly}</span>
  164. {if $pricing.savetext}<span class="c-save">{$pricing.savetext}</span>{/if}
  165. </span>
  166. </label>
  167. </div>
  168. </div>
  169. {elseif $pricing.semiannually}
  170. <div class="col-sm-4">
  171. <div class="form-group">
  172. <label>
  173. <input type="radio" class="cros-checkbox no-icheck" id="semiannually{$product.id}" name="billingcycle[{$product.id}]" value="semiannually" onclick="addToCart();triggerBillingCycle();" {if $BACKCART['products'][0]['pid'] == $product.id && $BACKCART['products'][0]['billingcycle'] == 'semiannually'} checked='checked'{elseif $smarty.get.billingcycle=='semiannually'} checked='checked'{elseif $pricing.checked} checked='checked'{/if}>
  174. <span class="pcb xs">
  175. <span class="c-name">{$LANG.orderpaymenttermsemiannually}</span>
  176. <span class="c-price">{$pricing.semiannually}</span>
  177. {if $pricing.savetext}<span class="c-save">{$pricing.savetext}</span>{/if}
  178. </span>
  179. </label>
  180. </div>
  181. </div>
  182. {elseif $pricing.annually}
  183. <div class="col-sm-4">
  184. <div class="form-group">
  185. <label>
  186. <input type="radio" class="cros-checkbox no-icheck" id="annually{$product.id}" name="billingcycle[{$product.id}]" value="annually" onclick="addToCart();triggerBillingCycle();" {if $BACKCART['products'][0]['pid'] == $product.id && $BACKCART['products'][0]['billingcycle'] == 'annually'} checked='checked'{elseif $smarty.get.billingcycle=='annually'} checked='checked'{elseif $pricing.checked} checked='checked'{/if}>
  187. <span class="pcb xs">
  188. <span class="c-name">{$LANG.orderpaymenttermannually}</span>
  189. <span class="c-price">{$pricing.annually}</span>
  190. {if $pricing.savetext}<span class="c-save">{$pricing.savetext}</span>{/if}
  191. </span>
  192. </label>
  193. </div>
  194. </div>
  195. {elseif $pricing.biennially}
  196. <div class="col-sm-4">
  197. <div class="form-group">
  198. <label>
  199. <input type="radio" class="cros-checkbox no-icheck" id="biennially{$product.id}" name="billingcycle[{$product.id}]" value="biennially" onclick="addToCart();triggerBillingCycle();" {if $BACKCART['products'][0]['pid'] == $product.id && $BACKCART['products'][0]['billingcycle'] == 'biennially'} checked='checked'{elseif $smarty.get.billingcycle=='biennially'} checked='checked'{elseif $pricing.checked} checked='checked'{/if}>
  200. <span class="pcb xs">
  201. <span class="c-name">{$LANG.orderpaymenttermbiennially}</span>
  202. <span class="c-price">{$pricing.biennially}</span>
  203. {if $pricing.savetext}<span class="c-save">{$pricing.savetext}</span>{/if}
  204. </span>
  205. </label>
  206. </div>
  207. </div>
  208. {elseif $pricing.triennially}
  209. <div class="col-sm-4">
  210. <div class="form-group">
  211. <label>
  212. <input type="radio" class="cros-checkbox no-icheck" id="triennially{$product.id}" name="billingcycle[{$product.id}]" value="triennially" onclick="addToCart();triggerBillingCycle();" {if $BACKCART['products'][0]['pid'] == $product.id && $BACKCART['products'][0]['billingcycle'] == 'triennially'} checked='checked'{elseif $smarty.get.billingcycle=='triennially'} checked='checked'{elseif $pricing.checked} checked='checked'{/if}>
  213. <span class="pcb xs">
  214. <span class="c-name">{$LANG.orderpaymenttermtriennially}</span>
  215. <span class="c-price">{$pricing.triennially}</span>
  216. {if $pricing.savetext}<span class="c-save">{$pricing.savetext}</span>{/if}
  217. </span>
  218. </label>
  219. </div>
  220. </div>
  221. {/if}
  222. {/foreach}
  223. </div>
  224. {/if}
  225. {/foreach}
  226. </div>
  227. </div>
  228. </div>
  229. {/if}
  230. <div class="domain_error" style="display: none;"></div>
  231. {if $CONFIG.AllowRegister == 'on' || $CONFIG.AllowTransfer == 'on' || $CONFIG.AllowOwnDomain == 'on'}
  232. <div class="TM-card blocks domain_cont domainareadata" {if $domainorder == 'all'} style="display: none;" {else}style="display: block;"{/if}>
  233. <div class="blocks_heading">
  234. <h2>{$LANG.cartproductdomainchoose}</h2>
  235. </div>
  236. {assign var=freedomaindisplay value='none' }
  237. {if $freedomainpaymentterms|strstr:$BACKCART['products'][0]['billingcycle']}
  238. {assign var=freedomaindisplay value='block' }
  239. {/if}
  240. {if ($CONFIG.AllowRegister == 'on' || $CONFIG.AllowTransfer == 'on') && $freedomainvar}
  241. <div class="domain_spcl_offer" style="display:{$freedomaindisplay};">
  242. <p>
  243. <span class="bold">Get a free <span class="terms-once">1 year</span> {$LANG.orderdomainregonly}</span> or <span class="bold">{$LANG.orderdomaintransfer}</span>
  244. </p>
  245. {if $freedomaintlds}
  246. <p><small>{$LANG.orderfreedomainappliesto}: <span id="freetlds">{$freedomaintlds}</span></small></p>
  247. {/if}
  248. </div>
  249. {/if}
  250. {if $CONFIG.AllowRegister !== 'on' || $CONFIG.AllowTransfer !== 'on'}
  251. <div class="blocks_body domains">
  252. {if $CONFIG.AllowOwnDomain == 'on'}
  253. <a href="javascript:void(0)" class="domain_sec domain-own hidden {if $BACKCART['products'][0]['domain'] != '' && !empty($BACKCART['domains']) <= 0}domain_sec_active{/if}">
  254. <input type="radio" class="no-radio no-icheck" name="domaintype" {if $BACKCART['products'][0]['domain'] != '' && !empty($BACKCART['domains']) <= 0 && $domainorder !== 'transfer'}checked='checked'{/if} value="owndomain" id="owndomain" checked='checked'/>&nbsp;{$LANG.domaincheckerhostingonly}
  255. </a>
  256. {/if}
  257. <div class="domain-input">
  258. <div class="do-desc">
  259. {$LANG.cartexistingdomainchoice|sprintf2:$companyname}
  260. </div>
  261. <div class="input-group">
  262. <span class="input-group-prepend">
  263. <span class="input-group-text">www.</span>
  264. </span>
  265. <input type="text" value="{if !empty($BACKCART['domains'][0]['domain_cart']) && $BACKCART['domains'][0]['type'] != 'owndomain'}{$BACKCART['domains'][0]['domain_cart'][0]}{elseif !empty($BACKCART['domains'][0]['domain_cart']) <= 0 && $BACKCART['products'][0]['domain'] != ''}{$BACKCART['products'][0]['domain']}{/if}" name="domain" id="domainname" class="form-control" data-toggle="tooltip" data-placement="top" data-trigger="manual" title="{lang key='orderForm.enterDomain'}" />
  266. <input type="hidden" value="" name="hiddendomain" id="hiddendomainname"/>
  267. </div>
  268. </div>
  269. </div>
  270. {else}
  271. <div class="blocks_body domains">
  272. <div class="domain-section-tabs{if $domainorder != 'all'} hidden{/if}">
  273. {if $CONFIG.AllowRegister == 'on'}
  274. <a href="javascript:void(0)" {if $domainorder != 'all' && $domainorder == 'transfer'}style="display: none"{/if} class="domain_sec {if !isset($BACKCART['domains'][0]['type']) && (!isset($BACKCART['products'][0]['domain']) || $BACKCART['products'][0]['domain'] == '')}domain_sec_active{/if} {if $BACKCART['domains'][0]['type'] == 'register'}domain_sec_active{/if}">
  275. <input type="radio" class="no-radio no-icheck" name="domaintype" value="register" id="register" {if !isset($BACKCART['domains'][0]['type']) && (!isset($BACKCART['products'][0]['domain']) || $BACKCART['products'][0]['domain'] == '') && $domainorder !== 'transfer' }checked="checked"{/if} {if $BACKCART['domains'][0]['type'] == 'register'}checked="checked"{/if} />&nbsp;{$LANG.navdomainsearch}
  276. </a>
  277. {/if}
  278. {if $CONFIG.AllowTransfer == 'on'}
  279. <a href="javascript:void(0)" {if $domainorder != 'all' && $domainorder == 'register'}style="display: none"{/if} class="domain_sec domain-trans {if $BACKCART['domains'][0]['type'] == 'transfer'}domain_sec_active{/if}">
  280. <input type="radio" class="no-radio no-icheck" name="domaintype" {if $BACKCART['domains'][0]['type'] == 'transfer'}checked='checked'{/if} value="transfer" id="transfer"/>&nbsp;{$LANG.domaintransfer}
  281. </a>
  282. {/if}
  283. {if $domainorder == 'all'}
  284. {if $CONFIG.AllowOwnDomain == 'on'}
  285. <a href="javascript:void(0)" class="domain_sec domain-own {if $BACKCART['products'][0]['domain'] != '' && !empty($BACKCART['domains']) <= 0}domain_sec_active{/if}">
  286. <input type="radio" class="no-radio no-icheck" name="domaintype" {if $BACKCART['products'][0]['domain'] != '' && !empty($BACKCART['domains']) <= 0}checked='checked'{/if} value="owndomain" id="owndomain"/>&nbsp;{$LANG.domaincheckerhostingonly}
  287. </a>
  288. {/if}
  289. <a href="javascript:void(0)" class="hidden domain_sec domain-subdomain">
  290. <input type="radio" class="no-radio no-icheck" name="domaintype" value="subdomain" id="subdomain"/>&nbsp;{$LANG.orderusesubdomain}
  291. </a>
  292. {/if}
  293. </div>
  294. <div class="domain-input clearfix hidden" id="domainsubdomain">
  295. <div class="sd-desc">
  296. {$LANG.cartsubdomainchoice|sprintf2:$companyname}
  297. </div>
  298. <div class="row">
  299. <div class="col-sm-10">
  300. <div class="row domains-row">
  301. <div class="col-xs-7 col-7">
  302. <div class="input-group">
  303. <span class="input-group-prepend">
  304. <span class="input-group-text">https://</span>
  305. </span>
  306. <input type="text" name="subdomainvaltext" id="subdomainsld" value="" placeholder="yourname" class="form-control" autocapitalize="none" data-toggle="tooltip" data-placement="top" data-trigger="manual" title="{lang key='orderForm.enterDomain'}" />
  307. </div>
  308. </div>
  309. <div class="col-xs-5 col-5">
  310. <select id="subdomaintld" name="subdomainval" class="form-control">
  311. </select>
  312. </div>
  313. </div>
  314. </div>
  315. <div class="col-sm-2">
  316. <button type="button" onclick="checksubdomain()" class="btn btn-primary btn-block">
  317. {$LANG.orderForm.check}
  318. </button>
  319. </div>
  320. </div>
  321. <div class="row">
  322. <div class="col-md-12">
  323. <div class="domain-msg1" id="domain_msg1" style="display: none;"></div>
  324. </div>
  325. </div>
  326. </div>
  327. <div class="domain-input">
  328. <div class="dr-desc {if $domainorder != 'all' && $domainorder == 'transfer'}hidden{/if}">
  329. {$LANG.cartregisterdomainchoice|sprintf2:$companyname}
  330. </div>
  331. <div class="dt-desc {if $domainorder != 'all' && $domainorder == 'transfer'}{else}hidden{/if}">
  332. {$LANG.carttransferdomainchoice|sprintf2:$companyname}
  333. </div>
  334. <div class="do-desc hidden">
  335. {$LANG.cartexistingdomainchoice|sprintf2:$companyname}
  336. </div>
  337. <div class="domain-inputs-sec">
  338. <div class="domain-input-col">
  339. <div class="input-group">
  340. <span class="input-group-prepend">
  341. <span class="input-group-text">www.</span>
  342. </span>
  343. <input type="text" value="{if !empty($BACKCART['domains'][0]['domain_cart']) && $BACKCART['domains'][0]['type'] != 'owndomain'}{$BACKCART['domains'][0]['domain_cart'][0]}{elseif !empty($BACKCART['domains'][0]['domain_cart']) <= 0 && $BACKCART['products'][0]['domain'] != ''}{$BACKCART['products'][0]['domain']}{/if}" name="domain" id="domainname" class="form-control" data-toggle="tooltip" data-placement="top" data-trigger="manual" title="{lang key='orderForm.enterDomain'}" />
  344. <input type="hidden" value="" name="hiddendomain" id="hiddendomainname"/>
  345. </div>
  346. </div>
  347. <div class="tld">
  348. <select class="form-control" name="tld">
  349. {foreach from=$tlds key=num item=tld}
  350. <option value="{$tld.extension}" {if !empty($BACKCART['domains'][0]['domain_cart']) && $BACKCART['domains'][0]['domain_cart'][1] == $tld.extension}selected='selected'{/if}>{$tld.extension}</option>
  351. {/foreach}
  352. </select>
  353. </div>
  354. <div class="authcode" style="display: none;">
  355. <input type="text" name="eppcode" value="" id="eppcode" class="form-control" placeholder="{lang key='orderForm.authCodePlaceholder'}" <input type="text" name="eppcode" value="" id="eppcode" class="form-control" placeholder="{lang key='orderForm.authCodePlaceholder'}" data-toggle="tooltip" data-placement="top" data-trigger="manual" title="{lang key='orderForm.authCodeTooltip'}" />
  356. </div>
  357. <div class="domain_search">
  358. <button class="btn btn-primary btn-block" onclick="domainSearch();">{$LANG.search}</button>
  359. </div>
  360. </div>
  361. <div class="domainloaderi loader-img" style="display: none;margin: 25px;"><i class="fad fa-circle-notch fa-spin fa-2x"></i></div>
  362. <div class="domain-msg domain_config" id="domain_msg" style="display: none;">
  363. {foreach from=$existingdomains item=edomain}
  364. {if !$edomain.domain} {continue} {/if}
  365. <div data-domain="{$edomain.domain}" class="alert domainresuc domain_success">{$edomain.domain} {$LANG.orderForm.domainAddedToCart}<a href="#" class="close deletedod" data-domain="{$edomain.domain}" aria-label="close"><i class="fas fa-times"></i></a></div>
  366. {/foreach}
  367. </div>
  368. <div class="suggested-domains{if !$showSuggestionsContainer} hidden{/if}">
  369. <div class="panel-heading">
  370. {lang key='orderForm.suggestedDomains'}
  371. </div>
  372. <div id="suggestionsLoader" class="panel-body domain-lookup-loader domain-lookup-suggestions-loader">
  373. <i class="fas fa-spinner fa-spin"></i> {lang key='orderForm.generatingSuggestions'}
  374. </div>
  375. <ul id="domainSuggestionsbackup" style="display: none"><li class="domain-suggestion list-group-item hidden">
  376. <span class="domain"></span><span class="extension"></span>
  377. <span class="promo hidden">
  378. <span class="sales-group-hot hidden">{lang key='domainCheckerSalesGroup.hot'}</span>
  379. <span class="sales-group-new hidden">{lang key='domainCheckerSalesGroup.new'}</span>
  380. <span class="sales-group-sale hidden">{lang key='domainCheckerSalesGroup.sale'}</span>
  381. </span>
  382. <div class="actions">
  383. <span class="price"></span>
  384. <button type="button" class="btn btn-add-to-cart2" data-whois="1" data-domain="">
  385. <span class="to-add">{$LANG.addtocart}</span>
  386. <span class="added"><i class="far fa-shopping-cart"></i>{$LANG.domaincheckeradded} - <span class="removedd">{$LANG.cartremove}?</span></span>
  387. <span class="unavailable">{$LANG.domaincheckertaken}</span>
  388. </button>
  389. <button type="button" class="btn btn-primary domain-contact-support hidden">
  390. {lang key='domainChecker.contactSupport'}
  391. </button>
  392. </div>
  393. </li></ul>
  394. <ul id="domainSuggestions" class="domain-lookup-result list-group hidden">
  395. <li class="domain-suggestion list-group-item hidden">
  396. <span class="domain"></span><span class="extension"></span>
  397. <span class="promo hidden">
  398. <span class="sales-group-hot hidden">{lang key='domainCheckerSalesGroup.hot'}</span>
  399. <span class="sales-group-new hidden">{lang key='domainCheckerSalesGroup.new'}</span>
  400. <span class="sales-group-sale hidden">{lang key='domainCheckerSalesGroup.sale'}</span>
  401. </span>
  402. <div class="actions">
  403. <span class="price"></span>
  404. <button type="button" class="btn btn-add-to-cart2" data-whois="1" data-domain="">
  405. <span class="to-add">{$LANG.addtocart}</span>
  406. <span class="added"><i class="far fa-shopping-cart"></i>{$LANG.domaincheckeradded} - <span class="removedd">{$LANG.cartremove}?</span></span>
  407. <span class="unavailable">{$LANG.domaincheckertaken}</span>
  408. </button>
  409. <button type="button" class="btn btn-primary domain-contact-support hidden">
  410. {lang key='domainChecker.contactSupport'}
  411. </button>
  412. </div>
  413. </li>
  414. </ul>
  415. <div class="panel-footer more-suggestions hidden text-center">
  416. <a id="moreSuggestions" href="#" onclick="loadMoreSuggestions();
  417. return false;">{lang key='domainsmoresuggestions'}</a>
  418. <span id="noMoreSuggestions" class="no-more small hidden">{lang key='domaincheckernomoresuggestions'}</span>
  419. </div>
  420. <div class="text-center text-muted domain-suggestions-warning">
  421. <p>{lang key='domainssuggestionswarnings'}</p>
  422. </div>
  423. </div>
  424. </div>
  425. </div>
  426. {/if}
  427. </div>
  428. <div class="domain_config" style="display: none;">
  429. <div class="TM-card blocks domainconfig">
  430. <div class="blocks_heading">
  431. <h2>{$LANG.cartdomainsconfig}</h2>
  432. </div>
  433. <div class="blocks_body" id="domain_config"></div>
  434. </div>
  435. </div>
  436. {/if}
  437. <div class="product_config" style="display: none;">
  438. <div class="p_config_error" style="display: none;"></div>
  439. <div class="blocks_body" id="product_config"></div>
  440. </div>
  441. <div class="row">
  442. <div class="col-md-12">
  443. <div class="coupon_cont">
  444. <div class="form-group prepend-icon">
  445. <div class="input-group">
  446. <label for="cardno" class="field-icon">
  447. <i class="fad fa-cut text-primary"></i>
  448. </label>
  449. <input type="text" value="" name="promocode" id="promocode" class="form-control field" placeholder="{lang key="orderPromoCodePlaceholder"}" />
  450. <span class="input-group-btn">
  451. <a href="javascript:void(0)" class="btn btn-primary promo_btn applypromo" onclick="applyPromo();"><span class="d-block d-sm-none"><i class="fas fa-check"></i></span><span class="d-none d-sm-block">{$LANG.orderpromovalidatebutton}</span></a>
  452. <a href="javascript:void(0)" class="btn btn-danger promo_btn removepromo" onclick="removePromo();" style="display: none;"><span class="d-block d-sm-none"><i class="fas fa-times"></i></span><span class="d-none d-sm-block">{$LANG.orderForm.remove}</span></a>
  453. </span>
  454. </div>
  455. </div>
  456. </div>
  457. <div class="promo-msg" style="display: none;"></div>
  458. </div>
  459. </div>
  460. </form>
  461. <div id="ws-ajax-order-form">
  462. </div>
  463. </div>
  464. <div class="col-lg-4 col-xl-3">
  465. <div id="sidebar">
  466. <div class="sidebar__inner blocks cartsummary">
  467. <div class="blocks_summaryheading d-none d-lg-block">
  468. <div class="d-flex align-items-center justify-content-between">
  469. <span class="h2">
  470. <i class="fal fa-shopping-cart"></i>&nbsp;{$LANG.ordersummary}
  471. </span>
  472. </div>
  473. </div>
  474. <div id="ordersummary">
  475. <div class="cartsummary_cont">
  476. <div class="heading">
  477. <ul>
  478. <li>
  479. {$LANG.orderdesc}
  480. </li>
  481. <li>
  482. {$LANG.orderprice}
  483. </li>
  484. </ul>
  485. </div>
  486. <div class="summary_body">
  487. <div class="cart-contents collapse" id="CartContents">
  488. <div class="emptycart">
  489. {$LANG.cartempty}
  490. </div>
  491. <div class="subtotal">
  492. <ul>
  493. <li>Subtotal</li>
  494. <li>0.00</li>
  495. </ul>
  496. </div>
  497. </div>
  498. <div class="total">
  499. <div class="d-flex align-items-center">
  500. <button type="button" class="btn btn-cart-contents"><i class="fas fa-chevron-up"></i></button>
  501. </div>
  502. <ul>
  503. <li>Total Due Today</li>
  504. <li>0.00</li>
  505. </ul>
  506. </div>
  507. <div class="cart-loader">
  508. <i class="fad fa-circle-notch fa-spin fa-2x"></i>
  509. </div>
  510. </div>
  511. </div>
  512. </div>
  513. <span class="d-none d-lg-block">
  514. <a href="{$WEB_ROOT}/order.php{if $domainorder == 'register'}?domainaction=register{elseif $domainorder == 'transfer'}?domainaction=transfer{/if}" onclick="emptyCart()" class="btn btn-link btn-emptycart" data-toggle="tooltip" data-placement="top" title="{$LANG.emptycart}"><i class="fas fa-trash"></i> {$LANG.emptycart}</a>
  515. </span>
  516. </div>
  517. </div>
  518. </div>
  519. </div>
  520. </div>
  521. </div>
  522. </div>
  523. {elseif $ordertype == 'domainrenewals'}
  524. <script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/domainrenewal.min.js?v={$versionHash}"></script>
  525. <script>
  526. jQuery(document).ready(function () {
  527. recalcsummary();
  528. recalcheckout();
  529. {if $pid}jQuery('#pid_{$pid}').trigger('click');{/if}
  530. });
  531. var ccdordertype = 'domainrenewals';
  532. </script>
  533. {if $themesettings.orderform.opcnoheader}
  534. <div class="hero spc no-padding-bottom">
  535. <div class="container">
  536. <div class="logo-section">
  537. <a class="logo" href="{$WEB_ROOT}/">
  538. {if $themesettings.general.enablelogo}
  539. <img src="{$themesettings.general.logourl}" alt="{$companyname}" class="logo-light img-responsive" />
  540. {if $themesettings.general.darklogo}
  541. <img src="{$themesettings.general.darklogo}" alt="{$companyname}" class="logo-dark img-responsive" />
  542. {else}
  543. <span class="logo-dark">{$companyname}</span>
  544. {/if}
  545. {else}
  546. <span class="logo-light">{$companyname}</span>
  547. {/if}
  548. </a>
  549. </div>
  550. <div class="page-title">
  551. <div class="header-lined">
  552. <div>
  553. </div>
  554. <div>
  555. {include file="$template/includes/breadcrumb.tpl"}
  556. {if $desc}
  557. <span>{$desc}</span>
  558. {/if}
  559. </div>
  560. </div>
  561. </div>
  562. </div>
  563. </div>
  564. {else}
  565. <div class="hero d-flex align-items-center no-padding-bottom">
  566. <div class="container">
  567. <div class="page-title">
  568. <div class="header-lined">
  569. <h1>
  570. {if count($renewals) > 1}{lang key='domainrenewals'}{else}{lang key='domainrenewal'}{/if}
  571. {if count($renewals) > 5}
  572. <div class="float-right">
  573. <input id="domainRenewalFilter" type="search" class="domain-renewals-filter form-control input-inline-100" placeholder="{lang key='searchenterdomain'}">
  574. </div>
  575. {/if}
  576. </h1>
  577. </div>
  578. </div>
  579. </div>
  580. </div>
  581. {/if}
  582. {if count($renewals) == 0}
  583. <div class="container">
  584. <div id="no-domains" class="alert alert-warning text-center" role="alert">
  585. {lang key='domainRenewal.noDomains'}
  586. </div>
  587. <p class="text-center">
  588. <a href="clientarea.php" class="btn btn-default">
  589. <i class="fas fa-arrow-circle-left"></i>
  590. {$LANG.orderForm.returnToClientArea}
  591. </a>
  592. </p>
  593. </div>
  594. {else}
  595. <div id="order-standard_cart">
  596. <input type="hidden" value="{$promocode}" id="hiddenpromo"/>
  597. <div class="cat-loader" style="display: none;">
  598. <div class="loader-icon">
  599. <i class="fad fa-circle-notch fa-spin fa-3x"></i>
  600. </div>
  601. </div>
  602. <div class="container">
  603. <div class="onepage_cart" id="onepage_cart">
  604. <div class="row ajaxcart_cont">
  605. <div class="col-lg-8 col-xl-9">
  606. <span class="d-block d-lg-none float-right">
  607. <a href="{$WEB_ROOT}/order.php?ordertype=domain_renewal" onclick="emptyCart()" class="btn btn-link btn-emptycart" data-toggle="tooltip" data-placement="top" title="{$LANG.emptycart}"><i class="fas fa-trash"></i> {$LANG.emptycart}</a>
  608. </span>
  609. <div class="clearfix"></div>
  610. <div class="domain_error" style="display: none;"></div>
  611. <p>{$LANG.domainrenewdesc}</p>
  612. <form method="post" id="coniguration_form" action="cart.php?a=add&renewals=true">
  613. {foreach from=$renewals item=renewal}
  614. <div id="domainRenewals" class="card renewals">
  615. <div class="card-body">
  616. <h4 class="m-0">{$renewal.domain} <span class="label label-default">{$renewal.status}</span></h4>
  617. <p class="small text-muted">
  618. {if $renewal.daysuntilexpiry > 30}
  619. <span class="text-success">
  620. {$renewal.daysuntilexpiry} {$LANG.domainrenewalsdays}
  621. </span>
  622. {elseif $renewal.daysuntilexpiry > 0}
  623. <span class="text-danger">
  624. {$renewal.daysuntilexpiry} {$LANG.domainrenewalsdays}
  625. </span>
  626. {else}
  627. <span>
  628. {$renewal.daysuntilexpiry*-1} {$LANG.domainrenewalsdaysago}
  629. </span>
  630. {/if}
  631. {if $renewal.ingraceperiod}
  632. <br />
  633. <span class="text-danger">
  634. {$LANG.domainrenewalsingraceperiod}
  635. </span>
  636. {/if}
  637. </p>
  638. {if $renewal.beforerenewlimit}
  639. <p class="text-danger">
  640. {$LANG.domainrenewalsbeforerenewlimit|sprintf2:$renewal.beforerenewlimitdays}
  641. </p>
  642. {elseif $renewal.pastgraceperiod}
  643. <p class="text-danger">
  644. {$LANG.domainrenewalspastgraceperiod}
  645. </p>
  646. {else}
  647. <div class="form-group">
  648. <select class="form-control" name="renewalperiod[{$renewal.id}]">
  649. {foreach from=$renewal.renewaloptions item=renewaloption}
  650. <option value="{$renewaloption.period}">
  651. {$renewaloption.period} {$LANG.orderyears} @ {$renewaloption.price}
  652. </option>
  653. {/foreach}
  654. </select>
  655. </div>
  656. {/if}
  657. </div>
  658. <div class="card-footer">
  659. {if !$renewal.pastgraceperiod && !$renewal.beforerenewlimit}
  660. <div class="text-right">
  661. <label class="mb-0">
  662. <input type="checkbox" class="no-icheck nocheck domainrenewald" name="renewalids[]" value="{$renewal.id}" />
  663. <span class="scheck btn btn-primary btn-sm"><h6 class="h5">{$LANG.addtocart}</h6></span>
  664. </label>
  665. </div>
  666. {/if}
  667. </div>
  668. </div>
  669. {foreachelse}
  670. <div class="alert alert-info">
  671. {$LANG.domainrenewalsnoneavailable}
  672. </div>
  673. {/foreach}
  674. <div class="row">
  675. <div class="col-md-12">
  676. <div class="coupon_cont">
  677. <div class="form-group prepend-icon">
  678. <div class="input-group">
  679. <label for="cardno" class="field-icon">
  680. <i class="fad fa-cut text-primary"></i>
  681. </label>
  682. <input type="text" value="" name="promocode" id="promocode" class="form-control field" placeholder="{lang key="orderPromoCodePlaceholder"}" />
  683. <span class="input-group-btn">
  684. <a href="javascript:void(0)" class="btn btn-primary promo_btn applypromo" onclick="applyPromo();"><span class="d-block d-sm-none"><i class="fas fa-check"></i></span><span class="d-none d-sm-block">{$LANG.orderpromovalidatebutton}</span></a>
  685. <a href="javascript:void(0)" class="btn btn-danger promo_btn removepromo" onclick="removePromo();" style="display: none;"><span class="d-block d-sm-none"><i class="fas fa-times"></i></span><span class="d-none d-sm-block">{$LANG.orderForm.remove}</span></a>
  686. </span>
  687. </div>
  688. </div>
  689. </div>
  690. <div class="promo-msg" style="display: none;"></div>
  691. </div>
  692. </div>
  693. </form>
  694. <div id="ws-ajax-order-form">
  695. </div>
  696. </div>
  697. <div class="col-lg-4 col-xl-3">
  698. <div id="sidebar">
  699. <div class="sidebar__inner blocks cartsummary">
  700. <div class="blocks_summaryheading d-none d-lg-block">
  701. <div class="d-flex align-items-center justify-content-between">
  702. <span class="h2">
  703. <i class="fal fa-shopping-cart"></i>&nbsp;{$LANG.ordersummary}
  704. </span>
  705. </div>
  706. </div>
  707. <div id="ordersummary">
  708. <div class="cartsummary_cont">
  709. <div class="heading">
  710. <ul>
  711. <li>
  712. {$LANG.orderdesc}
  713. </li>
  714. <li>
  715. {$LANG.orderprice}
  716. </li>
  717. </ul>
  718. </div>
  719. <div class="summary_body">
  720. <div class="cart-contents collapse" id="CartContents">
  721. <div class="emptycart">
  722. {$LANG.cartempty}
  723. </div>
  724. <div class="subtotal">
  725. <ul>
  726. <li>Subtotal</li>
  727. <li>0.00</li>
  728. </ul>
  729. </div>
  730. </div>
  731. <div class="total">
  732. <div class="d-flex align-items-center">
  733. <button type="button" class="btn btn-cart-contents"><i class="fas fa-chevron-up"></i></button>
  734. </div>
  735. <ul>
  736. <li>Total Due Today</li>
  737. <li>0.00</li>
  738. </ul>
  739. </div>
  740. <div class="cart-loader">
  741. <i class="fad fa-circle-notch fa-spin fa-2x"></i>
  742. </div>
  743. </div>
  744. </div>
  745. </div>
  746. <span class="d-none d-lg-block">
  747. <a href="{$WEB_ROOT}/order.php?ordertype=domain_renewal" onclick="emptyCart()" class="btn btn-link btn-emptycart" data-toggle="tooltip" data-placement="top" title="{$LANG.emptycart}"><i class="fas fa-trash"></i> {$LANG.emptycart}</a>
  748. </span>
  749. </div>
  750. </div>
  751. </div>
  752. </div>
  753. </div>
  754. </div>
  755. </div>
  756. {/if}
  757. {elseif $ordertype == 'addons'}
  758. <script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/addons.min.js?v={$versionHash}"></script>
  759. <script>
  760. jQuery(document).ready(function () {
  761. recalcsummary();
  762. recalcheckout();
  763. {if $pid}jQuery('#pid_{$pid}').trigger('click');{/if}
  764. });
  765. var ccdordertype = 'addons';
  766. </script>
  767. {if $themesettings.orderform.opcnoheader}
  768. <div class="hero spc no-padding-bottom">
  769. <div class="container">
  770. <div class="logo-section">
  771. <a class="logo" href="{$WEB_ROOT}/">
  772. {if $themesettings.general.enablelogo}
  773. <img src="{$themesettings.general.logourl}" alt="{$companyname}" class="logo-light img-responsive" />
  774. {if $themesettings.general.darklogo}
  775. <img src="{$themesettings.general.darklogo}" alt="{$companyname}" class="logo-dark img-responsive" />
  776. {else}
  777. <span class="logo-dark">{$companyname}</span>
  778. {/if}
  779. {else}
  780. <span class="logo-light">{$companyname}</span>
  781. {/if}
  782. </a>
  783. </div>
  784. <div class="page-title">
  785. <div class="header-lined">
  786. <div>
  787. </div>
  788. <div>
  789. {include file="$template/includes/breadcrumb.tpl"}
  790. {if $desc}
  791. <span>{$desc}</span>
  792. {/if}
  793. </div>
  794. </div>
  795. </div>
  796. </div>
  797. </div>
  798. {else}
  799. <div class="hero d-flex align-items-center no-padding-bottom">
  800. <div class="container">
  801. <div class="page-title">
  802. <div class="header-lined">
  803. <h1>{$LANG.cartproductaddons}</h1>
  804. </div>
  805. </div>
  806. </div>
  807. </div>
  808. {/if}
  809. {if count($addons) == 0}
  810. <div class="container">
  811. <div id="noAddons" class="alert alert-warning text-center" role="alert">
  812. {$LANG.cartproductaddonsnone}
  813. </div>
  814. <p class="text-center">
  815. <a href="clientarea.php" class="btn btn-default">
  816. <i class="fas fa-arrow-circle-left"></i>
  817. {$LANG.orderForm.returnToClientArea}
  818. </a>
  819. </p>
  820. </div>
  821. {else}
  822. <div id="order-standard_cart">
  823. <input type="hidden" value="{$promocode}" id="hiddenpromo"/>
  824. <div class="cat-loader" style="display: none;">
  825. <div class="loader-icon">
  826. <i class="fad fa-circle-notch fa-spin fa-3x"></i>
  827. </div>
  828. </div>
  829. <div class="container">
  830. <div class="onepage_cart" id="onepage_cart">
  831. <div class="row ajaxcart_cont">
  832. <div class="col-lg-8 col-xl-9">
  833. <span class="d-block d-lg-none float-right">
  834. <a href="{$WEB_ROOT}/order.php?ordertype=addons" onclick="emptyCart()" class="btn btn-link btn-emptycart" data-toggle="tooltip" data-placement="top" title="{$LANG.emptycart}"><i class="fas fa-trash"></i> {$LANG.emptycart}</a>
  835. </span>
  836. <div class="clearfix"></div>
  837. <div class="products">
  838. <div class="domain_error" style="display: none;"></div>
  839. <form method="post" id="coniguration_form" action="cart.php?gid=addons=true">
  840. <div class="row row-eq-height">
  841. {foreach $addons as $num => $addon}
  842. <div class="col-md-6">
  843. <div class="product bg-white" id="product{$num}">
  844. <input type="hidden" name="aid" value="{$addon.id}" />
  845. <div class="product-addon-header">
  846. <h4>{$addon.name}</h4>
  847. {if $product.qty}
  848. <span class="qty">
  849. {$product.qty} {$LANG.orderavailable}
  850. </span>
  851. {/if}
  852. </div>
  853. <div class="product-body">
  854. <p class="text-muted">{$addon.description}</p>
  855. </div>
  856. <div class="product-options">
  857. <div class="form-group">
  858. <select name="selpro[{$addon.id}]" id="inputProductId{$num}" class="form-control field">
  859. {foreach $addon.productids as $product}
  860. <option value="{$product.id}">
  861. {$product.product}{if $product.domain} - {$product.domain}{/if}
  862. </option>
  863. {/foreach}
  864. </select>
  865. </div>
  866. </div>
  867. <div class="product-addon-footer d-block">
  868. <div class="product-pricing p-3 bg-light border rounded">
  869. {if $addon.free}
  870. {$LANG.orderfree}
  871. {else}
  872. <span class="price"><span class="fw-500">{$addon.recurringamount}</span> {$addon.billingcycle}</span>
  873. {if $addon.havesetup}<br />+ {$addon.setupfee} {$LANG.ordersetupfee}{/if}
  874. {/if}
  875. </div>
  876. <div class="product-actions w-100 mt-1">
  877. <label class="m-0 w-100">
  878. <input type="checkbox" class="no-icheck nocheck adaddons" name="adaddons[]" {if $smarty.get.aid==$addon.id} checked="checked" {/if} value="{$addon.id}" />
  879. <span class="scheck btn btn-primary"><h6 class="h5">{$LANG.addtocart}</h6></span>
  880. </label>
  881. </div>
  882. </div>
  883. </div>
  884. </div>
  885. {if $num % 2 != 0}
  886. </div>
  887. <div class="row row-eq-height">
  888. {/if}
  889. {/foreach}
  890. </div>
  891. <div class="row">
  892. <div class="col-md-12">
  893. <div class="coupon_cont">
  894. <div class="form-group prepend-icon">
  895. <div class="input-group">
  896. <label for="cardno" class="field-icon">
  897. <i class="fad fa-cut text-primary"></i>
  898. </label>
  899. <input type="text" value="" name="promocode" id="promocode" class="form-control field" placeholder="{lang key="orderPromoCodePlaceholder"}" />
  900. <span class="input-group-btn">
  901. <a href="javascript:void(0)" class="btn btn-primary promo_btn applypromo" onclick="applyPromo();"><span class="d-block d-sm-none"><i class="fas fa-check"></i></span><span class="d-none d-sm-block">{$LANG.orderpromovalidatebutton}</span></a>
  902. <a href="javascript:void(0)" class="btn btn-danger promo_btn removepromo" onclick="removePromo();" style="display: none;"><span class="d-block d-sm-none"><i class="fas fa-times"></i></span><span class="d-none d-sm-block">{$LANG.orderForm.remove}</span></a>
  903. </span>
  904. </div>
  905. </div>
  906. </div>
  907. <div class="promo-msg" style="display: none;"></div>
  908. </div>
  909. </div>
  910. </form>
  911. </div>
  912. <div id="ws-ajax-order-form">
  913. </div>
  914. </div>
  915. <div class="col-lg-4 col-xl-3">
  916. <div id="sidebar">
  917. <div class="sidebar__inner blocks cartsummary">
  918. <div class="blocks_summaryheading d-none d-lg-block">
  919. <div class="d-flex align-items-center justify-content-between">
  920. <span class="h2">
  921. <i class="fal fa-shopping-cart"></i>&nbsp;{$LANG.ordersummary}
  922. </span>
  923. </div>
  924. </div>
  925. <div id="ordersummary">
  926. <div class="cartsummary_cont">
  927. <div class="heading">
  928. <ul>
  929. <li>
  930. {$LANG.orderdesc}
  931. </li>
  932. <li>
  933. {$LANG.orderprice}
  934. </li>
  935. </ul>
  936. </div>
  937. <div class="summary_body">
  938. <div class="cart-contents collapse" id="CartContents">
  939. <div class="emptycart">
  940. {$LANG.cartempty}
  941. </div>
  942. <div class="subtotal">
  943. <ul>
  944. <li>Subtotal</li>
  945. <li>0.00</li>
  946. </ul>
  947. </div>
  948. </div>
  949. <div class="total">
  950. <div class="d-flex align-items-center">
  951. <button type="button" class="btn btn-cart-contents"><i class="fas fa-chevron-up"></i></button>
  952. </div>
  953. <ul>
  954. <li>Total Due Today</li>
  955. <li>0.00</li>
  956. </ul>
  957. </div>
  958. <div class="cart-loader">
  959. <i class="fad fa-circle-notch fa-spin fa-2x"></i>
  960. </div>
  961. </div>
  962. </div>
  963. </div>
  964. <span class="d-none d-lg-block">
  965. <a href="{$WEB_ROOT}/order.php?ordertype=addons" onclick="emptyCart()" class="btn btn-link btn-emptycart" data-toggle="tooltip" data-placement="top" title="{$LANG.emptycart}"><i class="fas fa-trash"></i> {$LANG.emptycart}</a>
  966. </span>
  967. </div>
  968. </div>
  969. </div>
  970. </div>
  971. </div>
  972. </div>
  973. </div>
  974. {/if}
  975. {/if}
  976. <script type="text/javascript" src="{$BASE_PATH_JS}/jquery.payment.js"></script>
  977. <script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/ResizeSensor.js"></script>
  978. <script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/jquery.sticky-sidebar.min.js"></script>
  979. <script>
  980. jQuery('#sidebar').stickySidebar({
  981. topSpacing: 60,
  982. bottomSpacing: 60,
  983. minWidth: 992,
  984. containerSelector: '.ajaxcart_cont',
  985. innerWrapperSelector: '.sidebar__inner'
  986. });
  987. jQuery(document).on('click', '.btn-cart-contents', function (e) {
  988. if (jQuery(window).width() <= 991) {
  989. jQuery('.cartsummary_cont .summary_body >.cart-contents').slideToggle();
  990. }
  991. });
  992. {if $domainorder == 'all'}
  993. {if $products|@count eq '1'}
  994. jQuery(document).ready(function () {
  995. var slider = tns({
  996. container: ".plan-list-slider",
  997. items: 2,
  998. nav: false,
  999. controls: false,
  1000. loop: false,
  1001. arrowKeys: true,
  1002. mouseDrag: true,
  1003. responsive: {
  1004. 640: {
  1005. items: 1
  1006. },
  1007. 700: {
  1008. items: 1
  1009. },
  1010. 900: {
  1011. items: 1
  1012. }
  1013. }
  1014. });
  1015. });
  1016. {elseif $products|@count eq '2'}
  1017. jQuery(document).ready(function () {
  1018. var slider = tns({
  1019. container: ".plan-list-slider",
  1020. items: 2,
  1021. nav: true,
  1022. controls: false,
  1023. loop: false,
  1024. arrowKeys: true,
  1025. mouseDrag: true,
  1026. responsive: {
  1027. 640: {
  1028. items: 1
  1029. },
  1030. 700: {
  1031. items: 2
  1032. },
  1033. 900: {
  1034. items: 2
  1035. }
  1036. }
  1037. });
  1038. });
  1039. {elseif $products|@count eq '3'}
  1040. jQuery(document).ready(function () {
  1041. var slider = tns({
  1042. container: ".plan-list-slider",
  1043. items: 2,
  1044. nav: true,
  1045. controls: false,
  1046. loop: false,
  1047. arrowKeys: true,
  1048. mouseDrag: true,
  1049. responsive: {
  1050. 640: {
  1051. items: 1
  1052. },
  1053. 700: {
  1054. items: 2
  1055. },
  1056. 900: {
  1057. items: 3
  1058. }
  1059. }
  1060. });
  1061. });
  1062. {elseif $products|@count > '3'}
  1063. jQuery(document).ready(function () {
  1064. var slider = tns({
  1065. container: ".plan-list-slider",
  1066. items: 2,
  1067. nav: true,
  1068. controls: false,
  1069. loop: false,
  1070. arrowKeys: true,
  1071. mouseDrag: true,
  1072. responsive: {
  1073. 640: {
  1074. items: 1
  1075. },
  1076. 700: {
  1077. items: 2
  1078. },
  1079. 900: {
  1080. items: 4
  1081. }
  1082. }
  1083. });
  1084. });
  1085. {/if}
  1086. {/if}
  1087. </script>
  1088. {if $stripejs}
  1089. <script type="text/javascript" src="https://js.stripe.com/v3/"></script>
  1090. {/if}