В OcStore 2.3 модуль не работает - на стандартном оформлении заказа выдает ошибку даже на шаге перехода на ввод данных клиента.
Internal Server Error
Internal Server Error
<div class="row">
<div class="col-sm-6">
<fieldset id="account">
<legend>Личные данные</legend>
<div class="form-group" style="display: none;">
<label class="control-label">Группа покупателя</label>
<div class="radio">
<label>
<input type="radio" name="customer_group_id" value="1" checked="checked" />
Default</label>
</div>
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-firstname">Имя</label>
<input type="text" name="firstname" value="" placeholder="Имя" id="input-payment-firstname" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-lastname">Фамилия</label>
<input type="text" name="lastname" value="" placeholder="Фамилия" id="input-payment-lastname" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-email">E-Mail</label>
<input type="text" name="email" value="" placeholder="E-Mail" id="input-payment-email" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-telephone">Телефон</label>
<input type="text" name="telephone" value="" placeholder="Телефон" id="input-payment-telephone" class="form-control" />
</div>
<div class="form-group">
<label class="control-label" for="input-payment-fax">Факс</label>
<input type="text" name="fax" value="" placeholder="Факс" id="input-payment-fax" class="form-control" />
</div>
</fieldset>
</div>
<div class="col-sm-6">
<fieldset id="address">
<legend>Адрес</legend>
<div class="form-group">
<label class="control-label" for="input-payment-company">Компания</label>
<input type="text" name="company" value="" placeholder="Компания" id="input-payment-company" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-address-1">Адрес</label>
<input type="text" name="address_1" value="" placeholder="Адрес" id="input-payment-address-1" class="form-control" />
</div>
<div class="form-group">
<label class="control-label" for="input-payment-address-2">Адрес (дополнительно)</label>
<input type="text" name="address_2" value="" placeholder="Адрес (дополнительно)" id="input-payment-address-2" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-city">Город</label>
<input type="text" name="city" value="" placeholder="Город" id="input-payment-city" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-postcode">Индекс</label>
<input type="text" name="postcode" value="" placeholder="Индекс" id="input-payment-postcode" class="form-control" />
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-country">Страна</label>
<select name="country_id" id="input-payment-country" class="form-control">
<option value=""> --- Выберите --- </option>
<option value="20">Белоруссия (Беларусь)</option>
<option value="80">Грузия</option>
<option value="109">Казахстан</option>
<option value="115">Киргизия</option>
<option value="176" selected="selected">Российская Федерация</option>
<option value="226">Узбекистан</option>
<option value="220">Украина</option>
</select>
</div>
<div class="form-group required">
<label class="control-label" for="input-payment-zone">Регион / область</label>
<select name="zone_id" id="input-payment-zone" class="form-control">
</select>
</div>
</fieldset>
</div>
</div>
<div class="checkbox">
<label>
<input type="checkbox" name="shipping_address" value="1" checked="checked" />
Мой адрес доставки совпадает с адресом платежа</label>
</div>
<div class="buttons">
<div class="pull-right">
<input type="button" value="Продолжить" id="button-guest" data-loading-text="Загрузка..." class="btn btn-primary" />
</div>
</div>
<script type="text/javascript"><!--
// Sort the custom fields
$('#account .form-group[data-sort]').detach().each(function() {
if ($(this).attr('data-sort') >= 0 && $(this).attr('data-sort') <= $('#account .form-group').length) {
$('#account .form-group').eq($(this).attr('data-sort')).before(this);
}
if ($(this).attr('data-sort') > $('#account .form-group').length) {
$('#account .form-group:last').after(this);
}
if ($(this).attr('data-sort') == $('#account .form-group').length) {
$('#account .form-group:last').after(this);
}
if ($(this).attr('data-sort') < -$('#account .form-group').length) {
$('#account .form-group:first').before(this);
}
});
$('#address .form-group[data-sort]').detach().each(function() {
if ($(this).attr('data-sort') >= 0 && $(this).attr('data-sort') <= $('#address .form-group').length) {
$('#address .form-group').eq($(this).attr('data-sort')).before(this);
}
if ($(this).attr('data-sort') > $('#address .form-group').length) {
$('#address .form-group:last').after(this);
}
if ($(this).attr('data-sort') == $('#address .form-group').length) {
$('#address .form-group:last').after(this);
}
if ($(this).attr('data-sort') < -$('#address .form-group').length) {
$('#address .form-group:first').before(this);
}
});
$('#collapse-payment-address input[name=\'customer_group_id\']').on('change', function() {
$.ajax({
url: 'index.php?route=checkout/checkout/customfield&customer_group_id=' + this.value,
dataType: 'json',
success: function(json) {
$('#collapse-payment-address .custom-field').hide();
$('#collapse-payment-address .custom-field').removeClass('required');
for (i = 0; i < json.length; i++) {
custom_field = json[i];
$('#payment-custom-field' + custom_field['custom_field_id']).show();
if (custom_field['required']) {
$('#payment-custom-field' + custom_field['custom_field_id']).addClass('required');
} else {
$('#payment-custom-field' + custom_field['custom_field_id']).removeClass('required');
}
}
},
error: function(xhr, ajaxOptions, thrownError) {
alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
}
});
});
$('#collapse-payment-address input[name=\'customer_group_id\']:checked').trigger('change');
//--></script>
<script type="text/javascript"><!--
$('#collapse-payment-address button[id^=\'button-payment-custom-field\']').on('click', function() {
var node = this;
$('#form-upload').remove();
$('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>');
$('#form-upload input[name=\'file\']').trigger('click');
if (typeof timer != 'undefined') {
clearInterval(timer);
}
timer = setInterval(function() {
if ($('#form-upload input[name=\'file\']').val() != '') {
clearInterval(timer);
$.ajax({
url: 'index.php?route=tool/upload',
type: 'post',
dataType: 'json',
data: new FormData($('#form-upload')[0]),
cache: false,
contentType: false,
processData: false,
beforeSend: function() {
$(node).button('loading');
},
complete: function() {
$(node).button('reset');
},
success: function(json) {
$(node).parent().find('.text-danger').remove();
if (json['error']) {
$(node).parent().find('input[name^=\'custom_field\']').after('<div class="text-danger">' + json['error'] + '</div>');
}
if (json['success']) {
alert(json['success']);
$(node).parent().find('input[name^=\'custom_field\']').val(json['code']);
}
},
error: function(xhr, ajaxOptions, thrownError) {
alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
}
});
}
}, 500);
});
//--></script>
<script type="text/javascript"><!--