first upload all files

This commit is contained in:
NW
2023-06-11 13:14:03 +01:00
parent f14dbc52b5
commit c08b36d1b6
1705 changed files with 106852 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
<div class="coupon-wrap">
<div class="form-group">
<div class="form-input">
<input
type="text"
v-model="couponCode"
placeholder="{{ trans('storefront::cart.enter_coupon_code') }}"
class="form-control"
@input="couponError = null"
>
<span
class="error-message"
v-if="couponError"
v-text="couponError"
>
</span>
</div>
<button
type="button"
class="btn btn-primary btn-apply-coupon"
:class="{ 'btn-loading': applyingCoupon }"
@click.prevent="applyCoupon"
>
{{ trans('storefront::cart.apply_coupon') }}
</button>
</div>
<span
class="error-message"
v-if="couponError"
v-text="couponError"
>
</span>
</div>

View File

@@ -0,0 +1,101 @@
@guest
<div class="account-details">
<h4 class="section-title">{{ trans('storefront::checkout.account_details') }}</h4>
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="email">
{{ trans('checkout::attributes.customer_email') }}<span>*</span>
</label>
<input
type="text"
name="customer_email"
v-model="form.customer_email"
id="email"
class="form-control"
>
<span
class="error-message"
v-if="errors.has('customer_email')"
v-text="errors.get('customer_email')"
></span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="phone">
{{ trans('checkout::attributes.customer_phone') }}<span>*</span>
</label>
<input
type="text"
name="customer_phone"
v-model="form.customer_phone"
id="phone"
class="form-control"
>
<span
class="error-message"
v-if="errors.has('customer_phone')"
v-text="errors.get('customer_phone')"
></span>
</div>
</div>
<div class="col-md-18">
<div class="form-group create-an-account-label">
<div class="form-check">
<input
type="checkbox"
name="create_an_account"
v-model="form.create_an_account"
id="create-an-account"
>
<label for="create-an-account" class="form-check-label">
{{ trans('checkout::attributes.create_an_account') }}
</label>
</div>
</div>
<div class="create-an-account-form" v-show="form.create_an_account" v-cloak>
<span class="helper-text">
{{ trans('storefront::checkout.create_an_account_by_entering_the_information_below') }}
</span>
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="password">
{{ trans('checkout::attributes.password') }}<span>*</span>
</label>
<input
type="password"
name="password"
v-model="form.password"
id="password"
class="form-control"
>
<span
class="error-message"
v-if="errors.has('billing.password')"
v-text="errors.get('billing.password')"
>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@else
<input type="hidden" name="customer_email" v-model="form.customer_email">
@endguest

View File

@@ -0,0 +1,157 @@
<div class="billing-details">
<h4 class="section-title">{{ trans('storefront::checkout.billing_details') }}</h4>
<div class="select-address" v-if="hasAddress" v-cloak>
<div class="form-group">
<div class="form-radio" v-for="address in addresses">
<input type="radio" v-model="form.billingAddressId" :value="address.id"
:id="'billing-address-' + address.id">
<label :for="'billing-address-' + address.id">
<span v-text="address.full_name"></span>
<span v-text="address.address_1"></span>
<span v-if="address.address_2" v-text="address.address_2"></span>
<span>@{{ address.city }}, @{{ address.state_name }} @{{ address.zip }}</span>
<span v-text="address.country_name"></span>
</label>
</div>
<span class="error-message" v-if="! form.newBillingAddress && errors.has('billing.address_1')">
{{ trans('storefront::checkout.you_must_select_an_address') }}
</span>
</div>
</div>
<div class="add-new-address-wrap" v-cloak>
<button v-if="hasAddress" type="button" class="btn btn-add-new-address" @click="addNewBillingAddress">
{{ trans('storefront::checkout.add_new_address') }}
</button>
<div class="add-new-address-form" v-show="! hasAddress || form.newBillingAddress">
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="billing-first-name">
{{ trans('checkout::attributes.billing.first_name') }}<span>*</span>
</label>
<input type="text" name="billing[first_name]" v-model="form.billing.first_name"
id="billing-first-name" class="form-control">
<span class="error-message" v-if="errors.has('billing.first_name')"
v-text="errors.get('billing.first_name')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="billing-last-name">
{{ trans('checkout::attributes.billing.last_name') }}<span>*</span>
</label>
<input type="text" name="billing[last_name]" v-model="form.billing.last_name"
id="billing-last-name" class="form-control">
<span class="error-message" v-if="errors.has('billing.last_name')"
v-text="errors.get('billing.last_name')">
</span>
</div>
</div>
<div class="col-md-18">
<div class="form-group">
<label for="billing-address-1">
{{ trans('checkout::attributes.street_address') }}<span>*</span>
</label>
<input type="text" name="billing[address_1]" v-model="form.billing.address_1"
id="billing-address-1" class="form-control"
placeholder="{{ trans('checkout::attributes.billing.address_1') }}">
<span class="error-message" v-if="errors.has('billing.address_1')"
v-text="errors.get('billing.address_1')">
</span>
</div>
<div class="form-group">
<input type="text" name="billing[address_2]" v-model="form.billing.address_2"
class="form-control" placeholder="{{ trans('checkout::attributes.billing.address_2') }}">
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="billing-city">
{{ trans('checkout::attributes.billing.city') }}<span>*</span>
</label>
<input type="text" name="billing[city]" :value="form.billing.city" id="billing-city"
class="form-control" @change="changeBillingCity($event.target.value)">
<span class="error-message" v-if="errors.has('billing.city')"
v-text="errors.get('billing.city')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="billing-zip">
{{ trans('checkout::attributes.billing.zip') }}<span>*</span>
</label>
<input type="text" name="billing[zip]" :value="form.billing.zip" id="billing-zip"
class="form-control" @change="changeBillingZip($event.target.value)">
<span class="error-message" v-if="errors.has('billing.zip')" v-text="errors.get('billing.zip')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="billing-country">
{{ trans('checkout::attributes.billing.country') }}<span>*</span>
</label>
<select name="billing[country]" id="billing-country" class="form-control arrow-black"
@change="changeBillingCountry($event.target.value)">
<option value="">{{ trans('storefront::checkout.please_select') }}</option>
<option v-for="(name, code) in countries" :value="code" v-text="name">
</option>
</select>
<span class="error-message" v-if="errors.has('billing.country')"
v-text="errors.get('billing.country')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="billing-state">
{{ trans('checkout::attributes.billing.state') }}<span>*</span>
</label>
<input type="text" name="billing[state]" id="billing-state" class="form-control"
v-if="! hasBillingStates" v-model="form.billing.state">
<select name="billing[state]" id="billing-state" class="form-control arrow-black"
@change="changeBillingState($event.target.value)" v-else>
<option value="">{{ trans('storefront::checkout.please_select') }}</option>
<option v-for="(name, code) in states.billing" :value="code" v-html="name">
</option>
</select>
<span class="error-message" v-if="errors.has('billing.state')"
v-text="errors.get('billing.state')">
</span>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,19 @@
<div class="row">
<div class="col-md-18">
<div class="form-group order-notes">
<label for="order-note">
{{ trans('checkout::attributes.order_note') }}
</label>
<textarea
name="order_note"
v-model="form.order_note"
cols="30"
rows="4"
id="order-note"
class="form-control"
placeholder="{{ trans('storefront::checkout.special_note_for_delivery') }}"
></textarea>
</div>
</div>
</div>

View File

@@ -0,0 +1,187 @@
<div class="shipping-details">
<div class="row">
<div class="col-md-18">
<div class="form-group ship-to-different-address-label">
<div class="form-check">
<input type="checkbox" name="ship_to_a_different_address" v-model="form.ship_to_a_different_address"
id="ship-to-different-address">
<label for="ship-to-different-address" class="form-check-label">
{{ trans('checkout::attributes.ship_to_a_different_address') }}
</label>
</div>
</div>
<div class="ship-to-different-address-form" v-show="form.ship_to_a_different_address" v-cloak>
<h4 class="section-title">{{ trans('storefront::checkout.shipping_details') }}</h4>
<div class="select-address" v-if="hasAddress">
<div class="form-group">
<div class="form-radio" v-for="address in addresses">
<input type="radio" v-model="form.shippingAddressId" :value="address.id"
:id="'shipping-address-' + address.id">
<label :for="'shipping-address-' + address.id">
<span v-text="address.full_name"></span>
<span v-text="address.address_1"></span>
<span v-if="address.address_2" v-text="address.address_2"></span>
<span>@{{ address.city }}, @{{ address.state_name }} @{{ address.zip }}</span>
<span v-text="address.country_name"></span>
</label>
</div>
<span class="error-message"
v-if="! form.newShippingAddress && errors.has('shipping.address_1')">
{{ trans('storefront::checkout.you_must_select_an_address') }}
</span>
</div>
</div>
<div class="add-new-address-wrap">
<button v-if="hasAddress" type="button" class="btn btn-add-new-address"
@click="addNewShippingAddress">
{{ trans('storefront::checkout.add_new_address') }}
</button>
<div class="add-new-address-form" v-show="! hasAddress || form.newShippingAddress">
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="shipping-first-name">
{{ trans('checkout::attributes.shipping.first_name') }}<span>*</span>
</label>
<input type="text" name="shipping[first_name]" v-model="form.shipping.first_name"
id="shipping-first-name" class="form-control">
<span class="error-message" v-if="errors.has('shipping.first_name')"
v-text="errors.get('shipping.first_name')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="shipping-last-name">
{{ trans('checkout::attributes.shipping.last_name') }}<span>*</span>
</label>
<input type="text" name="shipping[last_name]" v-model="form.shipping.last_name"
id="shipping-last-name" class="form-control">
<span class="error-message" v-if="errors.has('shipping.last_name')"
v-text="errors.get('shipping.last_name')">
</span>
</div>
</div>
<div class="col-md-18">
<div class="form-group">
<label for="shipping-address-1">
{{ trans('checkout::attributes.street_address') }}<span>*</span>
</label>
<input type="text" name="shipping[address_1]" v-model="form.shipping.address_1"
id="shipping-address-1" class="form-control"
placeholder="{{ trans('checkout::attributes.shipping.address_1') }}">
<span class="error-message" v-if="errors.has('shipping.address_1')"
v-text="errors.get('shipping.address_1')">
</span>
</div>
<div class="form-group">
<input type="text" name="shipping[address_2]" v-model="form.shipping.address_2"
class="form-control"
placeholder="{{ trans('checkout::attributes.shipping.address_2') }}">
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="shipping-city">
{{ trans('checkout::attributes.shipping.city') }}<span>*</span>
</label>
<input type="text" name="shipping[city]" :value="form.shipping.city"
id="shipping-city" class="form-control"
@change="changeShippingCity($event.target.value)">
<span class="error-message" v-if="errors.has('shipping.city')"
v-text="errors.get('shipping.city')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="shipping-zip">
{{ trans('checkout::attributes.shipping.zip') }}<span>*</span>
</label>
<input type="text" name="shipping[zip]" :value="form.shipping.zip"
id="shipping-zip" class="form-control"
@change="changeShippingZip($event.target.value)">
<span class="error-message" v-if="errors.has('shipping.zip')"
v-text="errors.get('shipping.zip')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="shipping-country">
{{ trans('checkout::attributes.shipping.country') }}<span>*</span>
</label>
<select name="shipping[country]" id="shipping-country"
class="form-control arrow-black"
@change="changeShippingCountry($event.target.value)">
<option value="">{{ trans('storefront::checkout.please_select') }}
</option>
<option v-for="(name, code) in countries" :value="code"
v-text="name">
</option>
</select>
<span class="error-message" v-if="errors.has('shipping.country')"
v-text="errors.get('shipping.country')">
</span>
</div>
</div>
<div class="col-md-9">
<div class="form-group">
<label for="shipping-state">
{{ trans('checkout::attributes.shipping.state') }}<span>*</span>
</label>
<input type="text" name="shipping[state]" id="shipping-state"
class="form-control" v-if="! hasShippingStates"
v-model="form.shipping.state">
<select name="shipping[state]" id="shipping-state"
class="form-control arrow-black"
@change="changeShippingState($event.target.value)" v-else v-cloak>
<option value="">{{ trans('storefront::checkout.please_select') }}
</option>
<option v-for="(name, code) in states.shipping" :value="code"
v-html="name">
</option>
</select>
<span class="error-message" v-if="errors.has('shipping.state')"
v-text="errors.get('shipping.state')">
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,99 @@
<aside class="order-summary-wrap">
<div class="order-summary">
<div class="order-summary-top">
<h3 class="section-title">{{ trans('storefront::cart.order_summary') }}</h3>
<ul class="list-inline cart-item">
<li v-for="cartItem in cart.items">
<label>
<a :href="productUrl(cartItem.product)" class="product-name" v-text="cartItem.product.name"></a>
<span class="product-quantity" v-text="'x' + cartItem.qty"></span>
</label>
<span class="price-amount" v-html="cartItem.unitPrice.inCurrentCurrency.formatted"></span>
</li>
</ul>
</div>
<div class="order-summary-middle" :class="{ loading: loadingOrderSummary }">
<ul class="list-inline order-summary-list">
<li>
<label>{{ trans('storefront::cart.subtotal') }}</label>
<span class="price-amount" v-html="cart.subTotal.inCurrentCurrency.formatted">
</span>
</li>
<li v-for="tax in cart.taxes">
<label v-text="tax.name"></label>
<span class="price-amount" v-html="tax.amount.inCurrentCurrency.formatted">
</span>
</li>
<li v-if="hasCoupon" v-cloak>
<label>
{{ trans('storefront::cart.coupon') }}
<span class="coupon-code">
[@{{ cart.coupon.code }}]
<span class="btn-remove-coupon" @click="removeCoupon">
<i class="las la-times"></i>
</span>
</span>
</label>
<span class="price-amount" v-html="'-' + cart.coupon.value.inCurrentCurrency.formatted">
</span>
</li>
</ul>
<div class="shipping-methods" v-if="hasShippingMethod" v-cloak>
<h6>{{ trans('storefront::cart.shipping_method') }}</h6>
<div class="form-group">
<div class="form-radio" v-for="shippingMethod in cart.availableShippingMethods">
<input type="radio" name="shipping_method" v-model="form.shipping_method"
:value="shippingMethod.name" :id="shippingMethod.name"
@change="updateShippingMethod(shippingMethod.name)">
<label :for="shippingMethod.name" v-text="shippingMethod.label"></label>
<span class="price-amount" v-html="shippingMethod.cost.inCurrentCurrency.formatted">
</span>
</div>
</div>
</div>
<div class="order-summary-total">
<label>{{ trans('storefront::cart.total') }}</label>
<span class="total-price" v-html="cart.total.inCurrentCurrency.formatted"></span>
</div>
</div>
<div class="order-summary-bottom">
<div class="form-group checkout-terms-and-conditions">
<div class="form-check">
<input type="checkbox" v-model="form.terms_and_conditions" id="terms-and-conditions">
<label for="terms-and-conditions" class="form-check-label">
{{ trans('storefront::checkout.i_agree_to_the') }}
<a href="{{ $termsPageURL }}">
{{ trans('storefront::checkout.terms_&_conditions') }}
</a>
</label>
<span class="error-message" v-if="errors.has('terms_and_conditions')"
v-text="errors.get('terms_and_conditions')"></span>
</div>
</div>
<div id="paypal-button-container" v-if="form.payment_method === 'paypal'"></div>
<button type="submit" class="btn btn-primary btn-place-order" :class="{ 'btn-loading': placingOrder }"
:disabled="!form.terms_and_conditions" v-else v-cloak>
{{ trans('storefront::checkout.place_order') }}
</button>
</div>
</div>
</aside>

View File

@@ -0,0 +1,36 @@
<div class="payment-method" v-cloak>
<h4 class="title">{{ trans('storefront::checkout.payment_method') }}</h4>
<div class="payment-method-form">
<div class="form-group">
<div class="form-radio" v-for="(gateway, name) in gateways">
<input
type="radio"
name="form.payment_method"
v-model="form.payment_method"
:value="name"
:id="name"
>
<label :for="name" v-text="gateway.label"></label>
<span class="helper-text" v-text="gateway.description"></span>
</div>
<span class="error-message" v-if="hasNoPaymentMethod">
{{ trans('storefront::checkout.no_payment_method') }}
</span>
</div>
</div>
</div>
<div id="stripe-card-element" v-show="form.payment_method === 'stripe'" v-cloak>
{{-- A Stripe Element will be mounted here dynamically. --}}
</div>
<span class="error-message" v-if="stripeError" v-text="stripeError"></span>
<div class="payment-instructions" v-if="shouldShowPaymentInstructions" v-cloak>
<h4 class="title">{{ trans('storefront::checkout.payment_instructions') }}</h4>
<p v-html="paymentInstructions"></p>
</div>