commit 08-2025

This commit is contained in:
Kevin Adametz 2025-08-12 18:01:59 +02:00
parent 9ae662f63e
commit 480fdc65ed
404 changed files with 65310 additions and 2600431 deletions

View file

@ -0,0 +1,35 @@
{!! Form::open(['action' => route('portal.my_subscriptions.create', 3), 'method' => 'POST', 'class' => '']) !!}
@include('portal.abo.componenten.product-table-styles')
<div class="card-body">
@include('portal.abo.componenten.vat-info')
<div class="alert alert-warning">
<strong>{!! __('abo.abo_type_info', ['base'=>get_abo_type_badge('base'), 'upgrade'=>get_abo_type_badge('upgrade')]) !!}</strong>
</div>
@if(isset($error))
<div class="alert alert-danger">
<strong>{{ $error }}</strong>
</div>
@endif
@include('portal.abo.componenten.product-table', [
'products' => $basis_products ?? [],
'productType' => 'base',
'formRoute' => 'portal.my_subscriptions.create',
'formStep' => 3
])
</div>
<div class="card-footer">
<button type="submit" class="btn btn-default" name="action" value="back">{{ __('abo.back') }}</button>
<button type="submit" class="btn btn-secondary float-right" name="action" value="next">{{ __('abo.confirm_and_next') }}</button>
</div>
{!! Form::close() !!}

View file

@ -0,0 +1,192 @@
{!! Form::open(['action' => route('portal.my_subscriptions.create', 5), 'method' => 'POST', 'class' => '']) !!}
<div class="card-body">
@if(Yard::instance('subscription')->content()->count())
<style>
.cart-item {
position: relative;
padding: 15px 0;
border-bottom: 1px solid #ddd;
}
.cart-item:last-child {
border-bottom: none;
}
.cart-item .product-image {
max-width: 80px;
}
.cart-item .product-title {
font-size: 1.1em;
font-weight: 500;
color: #393939;
}
.cart-item .product-details {
font-size: 0.9em;
color: #666;
}
.cart-item .quantity-input {
width: 80px;
text-align: center;
}
.cart-summary {
background: #f8f9fa;
padding: 20px;
border-radius: 5px;
}
.cart-summary .table {
margin-bottom: 0;
}
.cart-summary .table td {
border-top: none;
padding: 8px 0;
}
.cart-summary .total-row {
font-weight: bold;
border-top: 1px solid #ddd;
}
</style>
<div class="cart-overview">
<h4 class="mb-4">{{ __('abo.abo_order_hl') }}</h4>
@if(isset($error))
<div class="alert alert-danger">
<strong>{{ $error }}</strong>
</div>
@endif
@foreach(Yard::instance('subscription')->getContentByOrder() as $row)
@php($product = \App\Models\Product::find($row->id))
<div class="cart-item">
<div class="row align-items-center">
<div class="col-3 col-sm-2">
@if($row->options->has('image'))
<img src="{{ route('product_image', [$row->options->image]) }}" class="product-image" alt="{{ $row->name }}">
@endif
</div>
<div class="col-9 col-sm-10">
<div class="row">
<div class="col-12 col-sm-6 col-md-7">
<div class="product-title">
{{ $row->name }}
{!! get_abo_type_badge_by_product($product) !!}
</div>
<div class="product-details">
<div>{{ __('order.content') }}: {{ $product->contents }}</div>
<div>{{ __('order.art_no') }}: {{ $product->number }}</div>
</div>
</div>
<div class="col-6 col-sm-3 col-md-2">
<div class="price-single">
<div style="">{{ $row->price() }} {{ Yard::instance('subscription')->getUserTaxFree() }}</div>
@if(Yard::instance('subscription')->isPriceCurrency())
<span class="small">~{{ Yard::instance('subscription')->getCurrencyByKey('price', $row, 2) }} {{ Yard::instance('subscription')->getPriceCurrencyUnit() }} </span>
@endif
</div>
</div>
<div class="col-6 col-sm-3 col-md-3">
<div class="quantity-select text-right">
@if($row->options->comp)
<span class="text-right">1 x</span>
@else
<span class="text-right">{{ $row->qty }} x</span>
@endif
</div>
<div class="price-total text-right mt-2">
<span class="font-bold text-price-total"><strong>{{ $row->subtotal() }} &euro; </strong></span>
@if(Yard::instance('subscription')->isPriceCurrency())
<br>
<span class="small">~{{ Yard::instance('subscription')->getCurrencyByKey('subtotal', $row, 2) }} {{ Yard::instance('subscription')->getPriceCurrencyUnit() }} </span> @endif
</div>
</div>
</div>
</div>
</div>
</div>
@endforeach
<div class="cart-summary mt-4">
<table class="table">
<tbody>
<tr>
<td>{{ __('order.subtotal') }}:</td>
<td class="text-right">
{{ Yard::instance('subscription')->total() }}
@if(Yard::instance('subscription')->isPriceCurrency())
<span class="small">~{{ Yard::instance('subscription')->getCurrencyByKey('subtotal') }} {{ Yard::instance('subscription')->getPriceCurrencyUnit() }}</span>
@endif
</td>
</tr>
<tr>
<td>{{ __('Delivery country') }}:</td>
<td class="text-right">
{{ Yard::instance('subscription')->getShippingCountryName() }}
</td>
</tr>
<tr>
<td>{{ __('order.shipping_costs') }}:</td>
<td class="text-right">
{{ Yard::instance('subscription')->shipping() }}
</td>
</tr>
@if(Yard::instance('subscription')->getUserTaxFree())
<tr>
<td class="">{{ __('order.sum_net') }}:</td>
<td class="text-right">{{ Yard::instance('subscription')->subtotalWithShipping() }} </td>
</tr>
@else
<tr>
<td class="">{{ __('order.total_without_VAT') }}:</td>
<td class="text-right">{{ Yard::instance('subscription')->subtotalWithShipping() }} </td>
</tr>
<tr>
<td class="">{{ __('order.plus_VAT') }}:</td>
<td class="text-right">{{ Yard::instance('subscription')->taxWithShipping() }} </td>
</tr>
@endif
<tr class="total-row">
<td>
@if(Yard::instance('subscription')->getUserTaxFree())
{{ __('order.total_net') }}:
@else
{{ __('order.total_gross') }}:
@endif
</td>
<td class="text-right">
{{ Yard::instance('subscription')->totalWithShipping() }}
@if(Yard::instance('subscription')->isPriceCurrency())
<span class="small">~{{ Yard::instance('subscription')->getCurrencyByKey('totalWithShipping') }} {{ Yard::instance('subscription')->getPriceCurrencyUnit() }}</span>
@endif
</td>
</tr>
</tbody>
</table>
</div>
<div class="abo-settings mt-4">
<h5>{{ __('abo.abo_settings') }}</h5>
<div class="form-group">
<label>{{ __('abo.delivery_day') }}*</label>
<select class="form-control custom-select" name="abo_interval">
{!! HTMLHelper::getAboDeliveryOptions() !!}
</select>
</div>
<div class="alert alert-info">
<i class="fa fa-info-circle"></i> {!! __('abo.abo_order_info') !!}
</div>
</div>
</div>
@endif
</div>
<div class="card-footer">
<button type="submit" class="btn btn-default" name="action" value="back">{{ __('abo.back') }}</button>
<div class="float-right">
<button type="submit" class="btn btn-secondary" name="action" value="checkout"><i class="ion ion-ios-redo"></i> {{ __('order.confirm_and_proceed_to_checkout') }}</button>
</div>
<br><br>
<div class="text-right">
<em class="small"> <i class="fa fa-lock"></i> {!! __('payment.checkout_ssl_server') !!}</em>
</div>
</div>
{!! Form::close() !!}

View file

@ -0,0 +1,15 @@
{!! Form::open(['action' => route('portal.my_subscriptions.create', 2), 'method' => 'POST', 'class' => '']) !!}
<div class="card-body">
<h4>{{ __('abo.my_address') }}</h4>
<p>{{ __('abo.my_address_check_info') }}<br>
<a href="{{route('portal.my_data.edit')}}"><i class="fa fa-edit"></i> {{ __('navigation.my_data') }} {{ __('abo.edit') }}</a></p>
<p>{!! __('order.reorder_info_2', ['country' => $shopping_user->getDeliveryCountry(), 'link' => route('portal.my_data.edit')]) !!}</p>
@include('admin.customer._customer_detail')
</div>
<div class="card-footer">
<button type="submit" class="btn btn-default" name="action" value="back">{{ __('abo.back') }}</button>
<button type="submit" class="btn btn-secondary float-right" name="action" value="next">{{ __('abo.confirm_and_next') }}</button>
</div>
{!! Form::close() !!}

View file

@ -0,0 +1,34 @@
{!! Form::open(['action' => route('portal.my_subscriptions.create', 1), 'method' => 'POST', 'class' => '']) !!}
<div class="card-body">
<h4>{{ __('abo.abo_delivery') }}</h4>
<p>
{{ __('abo.abo_order_info') }}
</p>
<hr class="container-m-nx mt-0 mb-4">
<h5>{{ __('abo.pros_hl') }}</h5>
<ul>
{!! __('abo.pros_list') !!}
</ul>
@if(isset($no_shopping_user) && $no_shopping_user)
@endif
</div>
<div class="card-footer">
@if(!isset($no_shopping_user))
<div class="text-right">
<button type="submit" class="btn btn-secondary" name="action" value="next">{{ __('abo.understood_and_next') }}</button>
</div>
@else
<h4>{{ __('navigation.my_data') }}</h4>
<div class="alert alert-warning">{{ __('abo.change_my_data_empty') }}</div>
<a href="{{ route('portal.my_data.edit') }}" class="btn btn-secondary"><i
class="ion ion-md-person text-default mr-1"></i> {{ __('portal.change_my_data_empty_button') }}</a>
@endif
</div>
{!! Form::close() !!}

View file

@ -0,0 +1,32 @@
{!! Form::open(['action' => route('portal.my_subscriptions.create', 4), 'method' => 'POST', 'class' => '']) !!}
@include('portal.abo.componenten.product-table-styles')
<div class="card-body">
@include('portal.abo.componenten.vat-info')
<div class="alert alert-warning">
<strong>{!! __('abo.abo_type_info', ['base'=>get_abo_type_badge('base'), 'upgrade'=>get_abo_type_badge('upgrade')]) !!}</strong>
</div>
@if(isset($error))
<div class="alert alert-danger">
<strong>{{ $error }}</strong>
</div>
@endif
@include('portal.abo.componenten.product-table', [
'products' => $upgrade_products ?? [],
'productType' => 'upgrade',
'formRoute' => 'portal.my_subscriptions.create',
'formStep' => 4
])
</div>
<div class="card-footer">
<button type="submit" class="btn btn-default" name="action" value="back">{{ __('abo.back') }}</button>
<button type="submit" class="btn btn-secondary float-right" name="action" value="next">{{ __('abo.confirm_and_next') }}</button>
</div>
{!! Form::close() !!}

View file

@ -0,0 +1,124 @@
<style>
/* Basis-Styles */
.btn-md-extra {
padding: 0.3rem 0.6rem;
font-size: 0.8rem;
line-height: 1.5;
border-radius: 0.25rem;
}
.md-btn-extra {
width: calc(1.7rem + 2px) !important;
line-height: 1.5rem;
}
.form-control.input-extra {
padding: 0.28rem 0.6rem;
font-size: 0.8rem;
font-weight: 600;
min-height: calc(1.8rem + 2px);
height: calc(1.8rem + 2px);
width: 44px;
}
.form-control.input-extra.active {
background-color: #f0f0f0;
}
.input-group-min-w {
min-width: 102px;
}
.img-extra {
min-width: 55px;
max-height: 160px;
}
.product-active {
opacity: 1;
}
.product-inactive {
opacity: 0.6;
}
/* Mobile Optimierungen */
@media (max-width: 767px) {
.table thead {
display: none;
}
.table, .table tbody, .table tr, .table td {
display: block;
width: 100%;
}
.table tr {
margin-bottom: 1.5rem;
border: 1px solid #dee2e6;
border-radius: 0.25rem;
padding: 1rem;
background: #fff;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.table td {
border: none;
padding: 0.75rem 0;
position: relative;
padding-left: 50%;
}
.table td:before {
content: attr(data-label);
position: absolute;
left: 0;
width: 45%;
padding-right: 1rem;
font-weight: 600;
color: #666;
}
.table td:first-child {
padding-top: 1rem;
}
.table td:last-child {
padding-bottom: 1rem;
}
.media {
flex-direction: column;
align-items: flex-start !important;
}
.media img {
margin-bottom: 1rem;
margin-right: 0 !important;
max-width: 100%;
height: auto;
}
.media-body {
width: 100%;
}
.input-group-min-w {
min-width: auto;
width: 100%;
}
.input-group {
width: 100% !important;
justify-content: center;
}
.form-control.input-extra {
width: 60px;
}
.no-line-break {
white-space: normal;
}
}
</style>

View file

@ -0,0 +1,82 @@
@props([
'products' => [],
'productType' => 'base', // 'base' oder 'upgrade'
'formRoute' => '',
'formStep' => 3
])
@if(count($products) > 0)
<div class="table-responsive">
<table class="table table- m-0">
<thead>
<tr>
<th>{{ __('abo.' . $productType . '_product') }}</th>
<th>&nbsp;</th>
<th class="text-right">{{ __('order.unit_price') }}</th>
</tr>
</thead>
<tbody>
@foreach($products as $product)
@php
$cartItem = Yard::instance('subscription')->getCartItemByProduct($product->id, 'withTaxFree');
$qty = isset($cartItem->qty) ? $cartItem->qty : 0;
$rowId = isset($cartItem->rowId) ? $cartItem->rowId : '';
@endphp
<tr>
<td class="text-center align-middle px-0" data-label="{{ __('abo.' . $productType . '_product') }}">
<div class="no-line-break input-group-min-w">
<div class="input-group d-inline-flex w-auto">
<span class="input-group-prepend">
<button type="button" class="btn btn-secondary icon-btn md-btn-extra remove-product-qty"
data-row-id="{{ $rowId }}"
data-product-id="{{ $product->id }}">-</button>
</span>
<input type="text"
class="form-control text-center input-extra table-input-event-onchange"
name="{{ $productType }}_product_qty[{{ $product->id }}]"
data-row-id="{{ $rowId }}"
data-product-id="{{ $product->id }}"
value="{{ $qty }}">
<span class="input-group-append">
<button type="button" class="btn btn-secondary icon-btn md-btn-extra add-product-qty"
data-row-id="{{ $rowId }}"
data-product-id="{{ $product->id }}">+</button>
</span>
</div>
</div>
</td>
<td class="p-4" data-label="">
<div class="media align-items-center product-inactive" id="product-{{ $product->id }}">
@if(count($product->images))
<img src="{{ route('product_image', [$product->images->first()->slug]) }}"
class="d-block ui-w-100 ui-bordered mr-4"
alt="{{ $product->getLang('name') }}">
@endif
<div class="media-body">
<h5 class="d-block text-dark">
{{$product->getLang('name')}}
<br>{!! get_abo_type_badge($productType) !!}
</h5>
{!! $product->getLang('copy') !!}
</div>
</div>
</td>
<td class="text-right font-weight-semibold align-middle p-4" data-label="{{ __('order.unit_price') }}">
<span class="no-line-break">
{{ $product->getFormattedPriceWith(\App\Services\UserService::getTaxFree(), false, \App\Services\UserService::$user_country) }}
</span>
@if(\App\Services\UserService::$user_country && \App\Services\UserService::$user_country->currency)
<span class="no-line-break">
{!! $product->getFormattedPriceCurrencyWith(\App\Services\UserService::getTaxFree(), false, \App\Services\UserService::$user_country) !!}
</span>
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
@endif

View file

@ -0,0 +1,18 @@
<div class="row">
<div class="col-md-3 mb-3">
<div class="text-muted small">{{ __('payment.ordering_country') }}</div>
{{ App\Services\UserService::getOrderInfo('billing_state') }}
</div>
<div class="col-md-3 mb-3">
<div class="text-muted small">{{ __('payment.country_of_delivery') }}</div>
{{ App\Services\UserService::getOrderInfo('shipping_state') }}
</div>
<div class="col-md-3 mb-3">
<div class="text-muted small">{{ __('payment.VAT') }}</div>
{{ App\Services\UserService::getOrderInfo('tax_free') }}
</div>
<div class="col-md-3 mb-3">
<div class="text-muted small">{{ __('payment.reverse_charge_procedure') }}</div>
{{ App\Services\UserService::getOrderInfo('user_reverse_charge') }}
</div>
</div>

View file

@ -0,0 +1,60 @@
@extends('portal.layouts.layout-2')
@section('content')
<h4 class="font-weight-bold py-2 mb-2">
{{ __('navigation.my_abo') }}
<span class="text-muted">{{ '#'.$user_abo->payone_userid }}</span>
</h4>
@if(Session::has('alert-error'))
<div class="col-sm-12">
<div class="alert alert-danger p-2 mt-2">
<ul>
<li>{{ Session::get('alert-error') }}</li>
</ul>
</div>
</div>
@endif
<div class="card">
@include('admin.abo._detail')
</div>
<div class="card mt-3">
@include('admin.customer._customer_detail', ['shopping_user' => $customer_detail])
</div>
{!! Form::open(['action' => route('user_abos_update', [$view, $user_abo->id]), 'class' => 'form-horizontal', 'id'=>'cart-order-form']) !!}
<input type="hidden" name="is_for" value="{{ $user_abo->is_for }}">
<div class="card mt-3">
@include('admin.abo._order_abo')
</div>
@if($comp_products && Yard::instance('shopping')->getNumComp() > 0)
<div id="holder_html_view_comp_product">
@include('user.order.comp_product')
</div>
@endif
{{ Form::close() }}
<div class="card mt-3 mb-3">
@include('admin.abo._executions')
</div>
<a href="{{route('user_abos', [$view])}}" class="btn btn-sm btn-default float-right">{{ __('back') }}</a>
@endsection
@section('scripts')
<script src="{{ asset('/js/iq-modal-cart.js') }}?v=1{{ get_file_last_time('/js/iq-modal-cart.js') }}"></script>
<script type="application/javascript">
var iqModalCart = IqModalCart.init();
$( document ).ready(function() {
});
</script>
@endsection

View file

@ -0,0 +1,174 @@
@extends('portal.layouts.layout-2')
@section('content')
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<h4 class="font-weight-bold py-2 mb-2">
{{__('abo.create_abo')}}
</h4>
<style>
.smartwizard-abo .nav-link {
pointer-events: none;
opacity: 0.7;
}
.smartwizard-abo .nav-link.active {
pointer-events: auto;
opacity: 1;
}
</style>
<div id="smartwizard" class="smartwizard-abo">
<ul class="card px-4 pt-3 mb-3">
<li>
<a href="#smartwizard-step-0" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">1</span>
{{__('abo.abo')}}
<div class="text-muted small">{{__('abo.info')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-1" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">2</span>
{{__('abo.data')}}
<div class="text-muted small">{{__('abo.check')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-2" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">3</span>
{{__('abo.basis_product')}}
<div class="text-muted small">{{__('abo.choose')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-3" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">4</span>
{{__('abo.upgrade_products')}}
<div class="text-muted small">{{__('abo.choose')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-4" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">5</span>
{{__('abo.check')}}
<div class="text-muted small">{{__('abo.order')}}</div>
</a>
</li>
</ul>
<div class="mb-3">
<div id="smartwizard-step-0" class="card animated fadeIn">
@include('portal.abo._create_info')
</div>
@if(!isset($no_shopping_user))
<div id="smartwizard-step-1" class="card animated fadeIn">
@include('portal.abo._create_data')
</div>
<div id="smartwizard-step-2" class="card animated fadeIn">
@include('portal.abo._create_basis_product')
</div>
<div id="smartwizard-step-3" class="card animated fadeIn">
@include('portal.abo._create_upgrade_products')
</div>
<div id="smartwizard-step-4" class="card animated fadeIn">
@include('portal.abo._create_check')
</div>
@endif
</div>
</div>
@endsection
@section('scripts')
<link rel="stylesheet" href="{{ asset('/vendor/libs/smartwizard/smartwizard.css') }}">
<script src="{{ asset('/vendor/libs/smartwizard/smartwizard.js') }}"></script>
<script src="{{ asset('js/product-quantity.js') }}?v={{ get_file_last_time('/js/product-quantity.js') }}"></script>
<script>
$( document ).ready(function() {
$('.smartwizard-abo').smartWizard({
autoAdjustHeight: true,
backButtonSupport: true,
useURLhash: false,
showStepURLhash: false,
selected: '{{$step}}',
toolbarSettings: {
showNextButton: false,
showPreviousButton: false,
},
/*events: {
leaveStep: function(e, anchorObject, stepNumber, stepDirection) {
// Formular im aktuellen Schritt finden
const $currentForm = $(e.target).find('.tab-pane.active form');
if ($currentForm.length) {
// Temporäres Formular erstellen und absenden
const $tempForm = $('<form>', {
'method': 'POST',
'action': $currentForm.attr('action'),
'style': 'display: none;'
});
// Alle Input-Felder kopieren
$currentForm.find('input').each((_, input) => {
const $input = $(input);
if ($input.attr('type') === 'text') {
const value = parseInt($input.val()) || 0;
if (value > 0) {
$tempForm.append($('<input>', {
'type': 'hidden',
'name': $input.attr('name'),
'value': value
}));
}
}
});
// CSRF-Token hinzufügen
$tempForm.append($('<input>', {
'type': 'hidden',
'name': '_token',
'value': $('meta[name="csrf-token"]').attr('content')
}));
// Action-Button-Wert hinzufügen
$tempForm.append($('<input>', {
'type': 'hidden',
'name': 'action',
'value': 'next'
}));
// Formular zum Body hinzufügen und absenden
$('body').append($tempForm);
$tempForm.submit();
return false; // Verhindert den normalen Schrittwechsel
}
}
}*/
});
});
</script>
@endsection

View file

@ -0,0 +1,114 @@
@extends('portal.layouts.layout-2')
@section('content')
@if ($errors->any())
<div class="row">
<div class="col-sm-12">
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
</div>
@endif
<h4 class="font-weight-bold py-2 mb-2">
{{__('abo.create_abo')}}
</h4>
<div id="smartwizard" class="smartwizard-abo">
<ul class="card px-4 pt-3 mb-3">
<li>
<a href="#smartwizard-step-0" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">1</span>
{{__('abo.abo')}}
<div class="text-muted small">{{__('abo.info')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-1" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">1</span>
{{__('abo.data')}}
<div class="text-muted small">{{__('abo.check')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-2" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">2</span>
{{__('abo.basis_product')}}
<div class="text-muted small">{{__('abo.choose')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-3" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">3</span>
{{__('abo.upgrade_products')}}
<div class="text-muted small">{{__('abo.choose')}}</div>
</a>
</li>
<li>
<a href="#smartwizard-step-4" class="mb-3">
<span class="sw-done-icon ion ion-md-checkmark"></span>
<span class="sw-number">4</span>
{{__('abo.check')}}
<div class="text-muted small">{{__('abo.order')}}</div>
</a>
</li>
</ul>
<div class="mb-3">
<div id="smartwizard-step-0" class="card animated fadeIn">
@include('portal.abo._create_info')
</div>
<div id="smartwizard-step-1" class="card animated fadeIn">
</div>
<div id="smartwizard-step-2" class="card animated fadeIn">
</div>
<div id="smartwizard-step-3" class="card animated fadeIn">
</div>
<div id="smartwizard-step-4" class="card animated fadeIn">
</div>
</div>
</div>
@endsection
@section('scripts')
<link rel="stylesheet" href="{{ mix('/vendor/libs/smartwizard/smartwizard.css') }}">
<script src="{{ mix('/vendor/libs/smartwizard/smartwizard.js') }}"></script>
<script>
$( document ).ready(function() {
$('.smartwizard-abo').smartWizard({
autoAdjustHeight: true,
backButtonSupport: true,
useURLhash: false,
showStepURLhash: false,
selected: '{{$step}}',
toolbarSettings: {
showNextButton: false,
showPreviousButton: false,
}
});
});
</script>
@endsection