|
@@ -1,20 +1,15 @@
|
|
|
{include file="orderforms/{$carttpl}/common.tpl"}
|
|
{include file="orderforms/{$carttpl}/common.tpl"}
|
|
|
-
|
|
|
|
|
<script>
|
|
<script>
|
|
|
var _localLang = {
|
|
var _localLang = {
|
|
|
'addToCart': '{$LANG.orderForm.addToCart|escape}',
|
|
'addToCart': '{$LANG.orderForm.addToCart|escape}',
|
|
|
'addedToCartRemove': '{$LANG.orderForm.addedToCartRemove|escape}'
|
|
'addedToCartRemove': '{$LANG.orderForm.addedToCartRemove|escape}'
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|
|
|
-
|
|
|
|
|
{if file_exists("templates/orderforms/{$carttpl}/layouts/head.tpl")}
|
|
{if file_exists("templates/orderforms/{$carttpl}/layouts/head.tpl")}
|
|
|
{include file="templates/orderforms/{$carttpl}/layouts/head.tpl"}
|
|
{include file="templates/orderforms/{$carttpl}/layouts/head.tpl"}
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
<div id="order-standard_cart">
|
|
<div id="order-standard_cart">
|
|
|
-
|
|
|
|
|
<div class="row">
|
|
<div class="row">
|
|
|
-
|
|
|
|
|
<div class="col-md-12">
|
|
<div class="col-md-12">
|
|
|
{if file_exists("templates/orderforms/{$carttpl}/layouts/head.tpl")}
|
|
{if file_exists("templates/orderforms/{$carttpl}/layouts/head.tpl")}
|
|
|
{else}
|
|
{else}
|
|
@@ -24,20 +19,14 @@ var _localLang = {
|
|
|
{/if}
|
|
{/if}
|
|
|
|
|
|
|
|
{include file="orderforms/{$carttpl}/sidebar-categories-collapsed.tpl"}
|
|
{include file="orderforms/{$carttpl}/sidebar-categories-collapsed.tpl"}
|
|
|
-
|
|
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
<div class="col-md-12">
|
|
<div class="col-md-12">
|
|
|
-
|
|
|
|
|
<form id="frmConfigureProduct">
|
|
<form id="frmConfigureProduct">
|
|
|
<input type="hidden" name="configure" value="true" />
|
|
<input type="hidden" name="configure" value="true" />
|
|
|
<input type="hidden" name="i" value="{$i}" />
|
|
<input type="hidden" name="i" value="{$i}" />
|
|
|
-
|
|
|
|
|
<div class="row ajaxcart_cont">
|
|
<div class="row ajaxcart_cont">
|
|
|
<div class="col-md-8 col-lg-9">
|
|
<div class="col-md-8 col-lg-9">
|
|
|
-
|
|
|
|
|
<h3>{$LANG.orderForm.configureDesiredOptions}</h3>
|
|
<h3>{$LANG.orderForm.configureDesiredOptions}</h3>
|
|
|
-
|
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel panel-default">
|
|
|
<div class="panel-body">
|
|
<div class="panel-body">
|
|
|
<table width="100%" height="100%">
|
|
<table width="100%" height="100%">
|
|
@@ -80,7 +69,7 @@ var _localLang = {
|
|
|
Thurfiles Private Hosting => gid=2
|
|
Thurfiles Private Hosting => gid=2
|
|
|
Nextcloud Private Hosting => gid=3
|
|
Nextcloud Private Hosting => gid=3
|
|
|
ThurVServer => gid=4
|
|
ThurVServer => gid=4
|
|
|
- ThurVCloud => gid=5
|
|
|
|
|
|
|
+ ThurVCloud => gid=5
|
|
|
Groupware Hosting => gid=7
|
|
Groupware Hosting => gid=7
|
|
|
Mailhosting mit Nextcloud => gid=8
|
|
Mailhosting mit Nextcloud => gid=8
|
|
|
Nextcloud Business Hosting => gid=9
|
|
Nextcloud Business Hosting => gid=9
|
|
@@ -94,12 +83,10 @@ var _localLang = {
|
|
|
<p>{$productinfo.description}</p> -->
|
|
<p>{$productinfo.description}</p> -->
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
<div class="alert alert-danger w-hidden" role="alert" id="containerProductValidationErrors">
|
|
<div class="alert alert-danger w-hidden" role="alert" id="containerProductValidationErrors">
|
|
|
<p>{$LANG.orderForm.correctErrors}:</p>
|
|
<p>{$LANG.orderForm.correctErrors}:</p>
|
|
|
<ul id="containerProductValidationErrorsList"></ul>
|
|
<ul id="containerProductValidationErrorsList"></ul>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
{if $pricing.type eq "recurring"}
|
|
{if $pricing.type eq "recurring"}
|
|
|
<div class="field-container">
|
|
<div class="field-container">
|
|
|
<div class="form-group">
|
|
<div class="form-group">
|
|
@@ -139,14 +126,11 @@ var _localLang = {
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
{if count($metrics) > 0}
|
|
{if count($metrics) > 0}
|
|
|
<div class="sub-heading">
|
|
<div class="sub-heading">
|
|
|
<span>{$LANG.metrics.title}</span>
|
|
<span>{$LANG.metrics.title}</span>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
<p>{$LANG.metrics.explanation}</p>
|
|
<p>{$LANG.metrics.explanation}</p>
|
|
|
-
|
|
|
|
|
<ul>
|
|
<ul>
|
|
|
{foreach $metrics as $metric}
|
|
{foreach $metrics as $metric}
|
|
|
<li>
|
|
<li>
|
|
@@ -165,17 +149,13 @@ var _localLang = {
|
|
|
</li>
|
|
</li>
|
|
|
{/foreach}
|
|
{/foreach}
|
|
|
</ul>
|
|
</ul>
|
|
|
-
|
|
|
|
|
<br>
|
|
<br>
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
{if $productinfo.type eq "server"}
|
|
{if $productinfo.type eq "server"}
|
|
|
<div class="sub-heading">
|
|
<div class="sub-heading">
|
|
|
<span>{$LANG.cartconfigserver}</span>
|
|
<span>{$LANG.cartconfigserver}</span>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
<div class="field-container">
|
|
<div class="field-container">
|
|
|
-
|
|
|
|
|
<div class="row">
|
|
<div class="row">
|
|
|
<div class="col-sm-6">
|
|
<div class="col-sm-6">
|
|
|
<div class="form-group">
|
|
<div class="form-group">
|
|
@@ -190,7 +170,6 @@ var _localLang = {
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
<div class="row">
|
|
<div class="row">
|
|
|
<div class="col-sm-6">
|
|
<div class="col-sm-6">
|
|
|
<div class="form-group">
|
|
<div class="form-group">
|
|
@@ -208,7 +187,6 @@ var _localLang = {
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
{if $configurableoptions}
|
|
{if $configurableoptions}
|
|
|
<div class="sub-heading">
|
|
<div class="sub-heading">
|
|
|
<span>{$LANG.orderconfigpackage}</span>
|
|
<span>{$LANG.orderconfigpackage}</span>
|
|
@@ -318,42 +296,49 @@ var _localLang = {
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
{if $customfields}
|
|
{if $customfields}
|
|
|
-
|
|
|
|
|
<div class="sub-heading">
|
|
<div class="sub-heading">
|
|
|
<span>{$LANG.orderadditionalrequiredinfo}</span>
|
|
<span>{$LANG.orderadditionalrequiredinfo}</span>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
<div class="field-container">
|
|
<div class="field-container">
|
|
|
- {foreach $customfields as $customfield}
|
|
|
|
|
- <div class="form-group">
|
|
|
|
|
- <label for="customfield{$customfield.id}">{$customfield.name}</label>
|
|
|
|
|
- {$customfield.input}
|
|
|
|
|
- {if $customfield.description}
|
|
|
|
|
- <span class="field-help-text">
|
|
|
|
|
- {$customfield.description}
|
|
|
|
|
- </span>
|
|
|
|
|
- {/if}
|
|
|
|
|
- </div>
|
|
|
|
|
- {/foreach}
|
|
|
|
|
|
|
+ <table width="100%" border="0" cellpadding="10" cellspacing="0" class="table table-borderless">
|
|
|
|
|
+ <tr>
|
|
|
|
|
+ <td align='left'>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label for="customfield{$customfields[0].id}">{$customfields[0].name}</label>
|
|
|
|
|
+ {$customfields[0].input}
|
|
|
|
|
+ {if $customfields[0].description}
|
|
|
|
|
+ <span class="field-help-text">
|
|
|
|
|
+ {$customfields[0].description}
|
|
|
|
|
+ </span>
|
|
|
|
|
+ {/if}
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </td>
|
|
|
|
|
+ <td></td>
|
|
|
|
|
+ <td align='left'>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label for="customfield{$customfields[1].id}">{$customfields[1].name}</label>
|
|
|
|
|
+ {$customfields[1].input}
|
|
|
|
|
+ {if $customfields[1].description}
|
|
|
|
|
+ <span class="field-help-text">
|
|
|
|
|
+ {$customfields[1].description}
|
|
|
|
|
+ </span>
|
|
|
|
|
+ {/if}
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </td>
|
|
|
|
|
+ </tr>
|
|
|
|
|
+ </table>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
{if $addons || count($addonsPromoOutput) > 0}
|
|
{if $addons || count($addonsPromoOutput) > 0}
|
|
|
-
|
|
|
|
|
<div class="sub-heading">
|
|
<div class="sub-heading">
|
|
|
<span>{$LANG.cartavailableaddons}</span>
|
|
<span>{$LANG.cartavailableaddons}</span>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
{foreach $addonsPromoOutput as $output}
|
|
{foreach $addonsPromoOutput as $output}
|
|
|
<div>
|
|
<div>
|
|
|
{$output}
|
|
{$output}
|
|
|
</div>
|
|
</div>
|
|
|
{/foreach}
|
|
{/foreach}
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
<div class="row addon-products">
|
|
<div class="row addon-products">
|
|
|
{foreach $addons as $addon}
|
|
{foreach $addons as $addon}
|
|
|
<div class="col-sm-{if count($addons) > 1}6{else}12{/if}"">
|
|
<div class="col-sm-{if count($addons) > 1}6{else}12{/if}"">
|
|
@@ -368,14 +353,11 @@ var _localLang = {
|
|
|
</div>
|
|
</div>
|
|
|
{/foreach}
|
|
{/foreach}
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
<div class="alert alert-warning text-center">
|
|
<div class="alert alert-warning text-center">
|
|
|
<i class="fas fa-question-circle"></i>
|
|
<i class="fas fa-question-circle"></i>
|
|
|
{$LANG.orderForm.haveQuestionsContact} <a href="contact.php" target="_blank" class="alert-link">{$LANG.orderForm.haveQuestionsClickHere}</a>
|
|
{$LANG.orderForm.haveQuestionsContact} <a href="contact.php" target="_blank" class="alert-link">{$LANG.orderForm.haveQuestionsClickHere}</a>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
</div>
|
|
</div>
|
|
|
<div class="col-md-4 col-lg-3">
|
|
<div class="col-md-4 col-lg-3">
|
|
|
<div id="sidebar">
|
|
<div id="sidebar">
|
|
@@ -388,25 +370,23 @@ var _localLang = {
|
|
|
<h2>{$LANG.ordersummary}</h2>
|
|
<h2>{$LANG.ordersummary}</h2>
|
|
|
<div class="summary-container" id="producttotal"></div>
|
|
<div class="summary-container" id="producttotal"></div>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
- <div class="text-center">
|
|
|
|
|
- {capture name=currentDate} {$smarty.now|date_format:"%Y-%m-%d"} {/capture}
|
|
|
|
|
- {capture name=dayOfMonth} {$smarty.now|date_format:"%e"|trim} {/capture}
|
|
|
|
|
- {capture name=endOfMonth} {date("t")} {/capture}
|
|
|
|
|
- {assign var=daysInBetween value="`$smarty.capture.endOfMonth-$smarty.capture.dayOfMonth`"}
|
|
|
|
|
-
|
|
|
|
|
- {if $smarty.capture.dayOfMonth < 20}
|
|
|
|
|
- Der Preis bezieht sich auf die verbleibende<br />
|
|
|
|
|
- Anzahl der Tage ({$daysInBetween}) zwischen der<br />
|
|
|
|
|
- Bestellung und dem Ende des Monats<br />
|
|
|
|
|
- {else}
|
|
|
|
|
- Da die Bestellung nach dem 20. des Monats <br />
|
|
|
|
|
- getätigt wurde, wird der Folgemonat automatisch<br />
|
|
|
|
|
- mit aufgerechnet<br />
|
|
|
|
|
- {/if}
|
|
|
|
|
- <br />
|
|
|
|
|
- </div>
|
|
|
|
|
-
|
|
|
|
|
|
|
+ <div class="text-center">
|
|
|
|
|
+ {capture name=currentDate} {$smarty.now|date_format:"%Y-%m-%d"} {/capture}
|
|
|
|
|
+ {capture name=dayOfMonth} {$smarty.now|date_format:"%e"|trim} {/capture}
|
|
|
|
|
+ {capture name=endOfMonth} {date("t")} {/capture}
|
|
|
|
|
+ {assign var=daysInBetween value="`$smarty.capture.endOfMonth-$smarty.capture.dayOfMonth`"}
|
|
|
|
|
+
|
|
|
|
|
+ {if $smarty.capture.dayOfMonth < 20}
|
|
|
|
|
+ Der Preis bezieht sich auf die verbleibende<br />
|
|
|
|
|
+ Anzahl der Tage ({$daysInBetween}) zwischen der<br />
|
|
|
|
|
+ Bestellung und dem Ende des Monats<br />
|
|
|
|
|
+ {else}
|
|
|
|
|
+ Da die Bestellung nach dem 20. des Monats <br />
|
|
|
|
|
+ getätigt wurde, wird der Folgemonat automatisch<br />
|
|
|
|
|
+ mit aufgerechnet<br />
|
|
|
|
|
+ {/if}
|
|
|
|
|
+ <br />
|
|
|
|
|
+ </div>
|
|
|
<div class="text-center">
|
|
<div class="text-center">
|
|
|
<button type="submit" id="btnCompleteProductConfig" class="btn btn-primary btn-lg">
|
|
<button type="submit" id="btnCompleteProductConfig" class="btn btn-primary btn-lg">
|
|
|
{$LANG.continue}
|
|
{$LANG.continue}
|
|
@@ -417,27 +397,19 @@ var _localLang = {
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
</form>
|
|
</form>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
{if file_exists("templates/orderforms/{$carttpl}/layouts/foot.tpl")}
|
|
{if file_exists("templates/orderforms/{$carttpl}/layouts/foot.tpl")}
|
|
|
{include file="templates/orderforms/{$carttpl}/layouts/foot.tpl"}
|
|
{include file="templates/orderforms/{$carttpl}/layouts/foot.tpl"}
|
|
|
{/if}
|
|
{/if}
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
<script language="javascript">
|
|
<script language="javascript">
|
|
|
recalctotals();
|
|
recalctotals();
|
|
|
</script>
|
|
</script>
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
<script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/ResizeSensor.js"></script>
|
|
<script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/ResizeSensor.js"></script>
|
|
|
<script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/jquery.sticky-sidebar.min.js"></script>
|
|
<script type="text/javascript" src="{$WEB_ROOT}/templates/orderforms/{$carttpl}/js/jquery.sticky-sidebar.min.js"></script>
|
|
|
-
|
|
|
|
|
<script>
|
|
<script>
|
|
|
jQuery('#sidebar').stickySidebar({
|
|
jQuery('#sidebar').stickySidebar({
|
|
|
topSpacing: 60,
|
|
topSpacing: 60,
|