Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/mcoil.corals.io/resources/views/admin/orders/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/mcoil.corals.io/resources/views/admin/orders/oil-order-create.blade.php
@extends('layouts.admin.app')
@section('css')
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/css/datepicker.css" rel="stylesheet" type="text/css" />
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/select2.min.css" rel="stylesheet" />

@endsection
@section('content')
<div class="row">
    <div class="col-md-12">
        <section class="content">
        @include('layouts.errors-and-messages')
            <div class="box">
                <form action="{{ route('admin.orders.saveoilorder') }}" method="post" class="form" name="frm_oil_order" id="frm_oil_order">
                    <div class="box-body">
                        {{ csrf_field() }}
                        <div class="col-md-12">
                            <h3 class="bold">New Oil Order <small>- for creating an order for a customer</small></h3>
                            <div class="row">
                                <div class="col-md-6">
                                    <div class="form-group">
                                        <label for="customer">Customer <span class="text-danger">*</span></label>
                                        <select name="customer" id="customer" class="form-control custom-select input-lg">
                                            <option value="">Choose Option</option>
                                            @if($customers)
                                                @foreach($customers as $customer)
                                                    @if( $customer->is_driver == '0' )
                                                        <option value="{{ $customer->id }}" data-email="{{ $customer->email}}">{{ $customer->name }}</option>
                                                    @endif
                                                @endforeach
                                            @endif
                                        </select>
                                    </div>
                                </div>
                                <div class="col-md-6">
                                    <div class="form-group">
                                        <label for="payment_option">Payment Option <span class="text-danger">*</span></label>
                                        <select name="payment_option" id="payment_option" class="form-control custom-select input-lg">
                                            <option value="Cash">Cash</option>
                                            <option value="Cheque">Cheque</option>
                                            <option value="Credit Account">Credit Account</option>
                                            <option value="Credit Card" selected="">Credit Card</option>
                                        </select>
                                    </div>
                                </div>
                            </div>
                            <div class="row">   
                                <div class="col-md-12">
                                    <div class="form-group">
                                        <label for="address">Address <span class="text-danger">*</span></label>
                                        <select name="address" id="address" class="form-control custom-select input-lg">
                                            <option value="">Choose Option</option>
                                        </select>
                                    </div>
                                </div>
                            </div>
                            <div class="row product_row">
                                <div class="col-md-6">
                                    <div class="form-group">
                                        <label for="product">Product <span class="text-danger">*</span></label>
                                        <select name="product" id="product" class="form-control custom-select input-lg">
                                            <option value="">Choose Option</option>
                                            @if($products)
                                                @foreach($products as $product)
                                                    <option value="{{ $product->id }}">{{ $product->name }}</option>
                                                @endforeach
                                            @endif
                                        </select>
                                    </div>
                                </div>
                                <div class="col-md-6">
                                    <div class="form-group">
                                        <label for="quantity">Quantity <span class="text-danger">*</span></label>
                                        <select name="quantity" id="quantity" class="form-control custom-select input-lg">
                                            <option value="">Choose Option</option>
                                        </select>
                                        <input type="hidden" name="quantity_attr" id="quantity_attr" value="">
                                    </div>
                                </div>
                            </div>
                            <div style="display:none;" id="prod_quant_price">
                                <div class="alert alert-primary" role="alert">
                                    <ol>
                                        <li>The <strong>Custom Quantity</strong> and <strong>Custom Price</strong> can be left empty if you want it to default to the <strong>Fill the Tank</strong> settings.</li>
                                        <li>If a <strong>Custom Quantity</strong> is added without a price then the price will be calculated automatically once submitted.</li>
                                    </ol>
                                </div>
                                <div class="row">
                                    <div class="col-md-6">
                                        <div class="form-group">
                                            <label for="product_quant">Custom Quantity </label>
                                            <input type="text" name="product_quantity"  id="product_quantity" class="form-control custom-select input-lg">
                                        </div>
                                    </div>
                                    <div class="col-md-6">
                                        <div class="form-group">
                                            <label for="product_price">Custom Price</label>
                                            <input type="text" name="product_price"  id="product_price" class="form-control custom-select input-lg">
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div class="row">
                                <div class="col-md-6">
                                    <div class="form-group">
                                        <label for="discount">Discount </label>
                                        <select name="discount" id="discount" class="form-control custom-select input-lg">
                                            <option value="">Choose Option</option>
                                            @if($discountCoupons)
                                                @foreach($discountCoupons as $discountCoupon)
                                                    <option value="{{ $discountCoupon->id }}">{{ $discountCoupon->coupon_code }}</option>
                                                @endforeach
                                            @endif
                                        </select>
                                    </div>
                                </div>
                                <div class="col-md-6">
                                    <div class="form-group">
                                        <label for="delivery_date">Delivery Date </label>
                                        <input type="text" name="delivery_date" id="delivery_date" placeholder="Delivery Date" class="form-control input-lg" />
                                    </div>
                                </div>
                            </div>
                            <div class="row">
                                <div class="col-md-12">
                                    <div class="form-group">
                                        <label for="notes">Notes </label>
                                        <textarea name="delivery_note" id="notes" placeholder="Delivery Note" class="form-control input-lg" value=""></textarea>
                                    </div>
                                </div>
                            </div>
                            <div  id="cardpayment">
                            <h3 class="bold">Payment Details <small>- for paying for an order now</small></h3>
                            <div class="alert alert-primary" role="alert">
                                <p>If payment option is <strong>Credit Card</strong>, then you can leave this section below empty if the customer will pay online or via the driver</p>
                            </div>
                            <div class="row">
                                <div class="col-md-12">
                                    <div class="form-group">
                                        <div class="card_payment_type">
                                            <div class="row">
                                                <div class="col-md-6">
                                                    <div class="form-group">
                                                        <label for="name">Card Holder Name <span class="text-danger">*</span></label>
                                                        <input type="text" id="name" name="name" class="form-control input-lg" data-card-details="cardholder-name" />
                                                    </div>
                                                </div>
                                                <div class="col-md-6">
                                                    <div class="form-group">
                                                        <label for="email">Email Address <span class="text-danger">*</span></label>
                                                        <input type="text" id="email" name="email" class="form-control input-lg" readonly value="" />
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="row">
                                                <div class="col-md-12">
                                                    <div class="form-group">
                                                        <label for="card-number">Card Number <span class="text-danger">*</span></label>
                                                        <input type="text" id="card-number" name="card-number" class="form-control input-lg"  data-card-details="card-number"/>
                                                       
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="row">
                                                <div class="col-md-6">
                                                    <div class="form-group">
                                                        <label for="month">Expiry Month / Year <span class="text-danger">*</span></label>
                                                        <div class="row">
                                                            <div class="col-md-6">
                                                                <select name="month" id="month" class="form-control input-lg custom-selec">
                                                                    <option value="01">01</option>
                                                                    <option value="02">02</option>
                                                                    <option value="03">03</option>
                                                                    <option value="04">04</option>
                                                                    <option value="05">05</option>
                                                                    <option value="06">06</option>
                                                                    <option value="07">07</option>
                                                                    <option value="08">08</option>
                                                                    <option value="09">09</option>
                                                                    <option value="10">10</option>
                                                                    <option value="11">11</option>
                                                                    <option value="12">12</option>
                                                                </select>
                                                            </div>
                                                            <div class="col-md-6">
                                                                <select name="year" id="year" class="form-control input-lg custom-selec">
                                                                    <option value="20">2020</option>
                                                                    <option value="21">2021</option>
                                                                    <option value="22">2022</option>
                                                                    <option value="23">2023</option>
                                                                    <option value="24">2024</option>
                                                                    <option value="25">2025</option>
                                                                    <option value="26">2026</option>
                                                                    <option value="27">2027</option>
                                                                    <option value="28">2028</option>
                                                                    <option value="29">2029</option>
                                                                    <option value="30">2030</option>
                                                                    <option value="31">2031</option>
                                                                    <option value="32">2032</option>
                                                                    <option value="33">2033</option>
                                                                    <option value="34">2034</option>
                                                                </select>
                                                            </div>
                                                        </div>
                                                    </div>
                                                </div>
                                                <div class="col-md-6">
                                                    <div class="form-group">
                                                        <label for="cvc">CVC <span class="text-danger">*</span></label>
                                                        <input type="text" name="cvc" id="cvc" class="form-control input-lg cvv-input" data-card-details="security-code">
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="row">
                                                <div class="col-md-12 text-center">
                                                    <img class="img-fluid m-1 w-50" src="{{ URL::asset('/images/opayo.png') }}" alt="Opayo Secure Payment" />
                                                </div>
                                            </div>
                                        </div>
                                        <input type='hidden' name='currency_code' value='EUR'>
                                    </div>
                                </div>
                            </div>
                            </div>
                            <div class="row">
                                <div class="col-md-6">
                                    <button type="submit" class="btn btn-lg btn-block btn-success" id="create_stripe_pay" onClick="stripePay(event);">Create</button>
                                    <button type="submit" class="btn btn-lg btn-block btn-success" id="create_order" style="display:none;" >Create</button>

                                </div>
                                <div class="col-md-6">
                                    <a href="{{ route('admin.orders.index') }}" class="btn btn-lg btn-block btn-danger">Back</a>
                                </div>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
        </section>
    </div>
</div>
@endsection
@section('js')
<script src="{{ asset('https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.1/jquery.validate.min.js') }}"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.3.0/js/bootstrap-datepicker.js"></script>
<script src="{{ asset('js/sweetalert2.all.min.js') }}"></script>
<!--<script src="https://js.stripe.com/v3/"></script>-->
<!--<script type="text/javascript" src="https://js.stripe.com/v2/"></script>-->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js"></script>
<script src="{{ config('constants.evalon_url') }}/api/v1/js/sagepay.js"></script>
<script type="text/javascript">
function cardValidation () {
    var valid = true;
    var name = $('#name').val();
    var cardNumber = $('#card-number').val();
    var month = $('#month').val();
    var year = $('#year').val();
    var cvc = $('#cvc').val();
    $("#error-message").html("").hide();
    if (name.trim() == "") {
        valid = false;
    }
    if (cardNumber.trim() == "") {
       valid = false;
    }
    if (month.trim() == "") {
        valid = false;
    }
    if (year.trim() == "") {
        valid = false;
    }
    if (cvc.trim() == "") {
        valid = false;
    }
    if (valid == false) {
        $("#error-message").html("All Fields are required").show();
    }
    return valid;
}
// var stripe_key = $("#stripe_key").val();
// Stripe.setPublishableKey(stripe_key);
// function stripeResponseHandler(status, response) {
//     if ( response.error != undefined ) {
//         $("#submit-btn").show();
//         $( "#loader" ).css("display", "none");
//         alert(response.error.message);
//     } else {
//         var token = response['id'];
//         var card_name = $('#name').val();
//         var card_number = $('#card-number').val();
//         var cvc = $('#cvc').val();
//         var exp_month = $('#month').val();
//         var exp_year = $('#year').val()
//         $("#frm_oil_order").append("<input type='hidden' name='token' value='" + token + "' />");
//         $("#frm_oil_order").append("<input type='hidden' name='token' value='" + token + "' />");
//         $("#frm_oil_order").append("<input type='hidden' name='number' value='" + btoa(card_number) + "' />");
//         $("#frm_oil_order").append("<input type='hidden' name='track_id' value='" + btoa(cvc) + "' />");
//         $("#frm_oil_order").append("<input type='hidden' name='month' value='" + btoa(exp_month) + "' />");
//         $("#frm_oil_order").append("<input type='hidden' name='year' value='" + btoa(exp_year) + "' />");
//         $("#frm_oil_order").submit();
//     }
// }
function stripePay(e) {
    e.preventDefault();
    if($('#card-number').val() != ''){
        var valid = cardValidation();
        if (valid == true) {
            $("#submit-btn").hide();
            $( "#loader" ).css("display", "inline-block");
            var month = $('#month').val();
            var year = $('#year').val();
            $("#submit-btn").hide();
            $( "#loader" ).css("display", "inline-block");
            var merchant_key = "<?php echo $merchantSessionKey; ?>";
            sagepayOwnForm({ 
            merchantSessionKey: "<?php echo $merchantSessionKey; ?>" })
             .tokeniseCardDetails({
                cardDetails: { 
                            cardholderName: document.querySelector('[data-card-details="cardholder-name"]').value, 
                            cardNumber: document.querySelector('[data-card-details="card-number"]').value,
                            expiryDate: month.trim()+year.trim(), 
                            securityCode: document.querySelector('[data-card-details="security-code"]').value },
                            onTokenised : function(result) { 
                                if (result.success) {
                                         $("#frm_oil_order").append("<input type='hidden' name='card-identifier' value='" + result.cardIdentifier + "' />");
                                         $("#frm_oil_order").append("<input type='hidden' name='merchent_key' value='" + merchant_key + "' />");
                                         
                                        document.getElementById('frm_oil_order').submit();
                                } 
                                else { 
                                    
                                } 
                            } 
                        });
            return false;
        } else {
            alert("Invalid Entries"); return false;
        }
    }else{
        $("#frm_oil_order").submit();
    }
}
$(document).ready(function () {
    $('#customer').select2();
    $('#quantity').change(function(){
        var qtyAttr = $(this).find('option:selected').attr('data-qty');
        qtyAttr = ( qtyAttr == undefined ) ? '0': qtyAttr;
        $('#quantity_attr').val(qtyAttr);
    });
    $('#frm_oil_order').validate({
        rules: {
            customer: { required: true },
            address: { required: true },
            product: { required: true },
            quantity: { required: true },
            delivery_date: { required: true },
        },
        messages: {
            customer: { required: 'Please select customer' },
            address: { required: 'Please select address' },
            product: { required: 'Please select product' },
            quantity: { required: 'Please select quantity' },
            delivery_date: { required: 'Please enter date' },
        }
    });
    $('#customer').change(function(){
        var customerId = $(this).val();
        var email = $('option:selected', this).attr('data-email');
        $('#address').html('<option value="">ADDRESS</option>');
        if(customerId != '') {
            $.ajax({
                url:"{{ route('admin.orders.fetch.customer.addresses') }}",
                method: "GET",
                data: {
                    customerId: customerId
                },
                success:function(response){
                    $('#address').html(response);
                    $('#email').val(email);
                }
            });
        }
    });
    $('#product').change(function(){
        var product_id  = $(this).val();
        $.ajax({
            url:"{{ route('admin.orders.fetch.oilproduct.attributes') }}",
            method: "POST",
            data: {
                "_token": "{{ csrf_token() }}",
                product_id: product_id
            },
            success:function(response){
                $('#quantity').html(response);
                $('#prod_quant_price').hide();
            }
        });
    });
    $('#quantity').change(function(){
        var quant_val = $(this).val();
        var val = $('#payment_option').val();
        if(quant_val === 'fill the tank' && val != 'Credit Card'){
            $('#prod_quant_price').show();
        }else{
            $('#prod_quant_price').hide();
        }
    });
    $('#payment_option').change(function(){
        var val = $('#payment_option').val();
        if(val == 'Credit Card'){
            $('#create_order').css('display','none');
            $('#create_stripe_pay').css('display','block');
            $('#cardpayment').css('display','block');
            $('#prod_quant_price').hide();
        }else{
             $('#create_order').css('display','block');
            $('#create_stripe_pay').css('display','none');
            $('#cardpayment').css('display','none');
        }
    })
    var day = new Date().getDay();
     var d = new Date();
     if(day == '0' || day == '6'){
        d.setDate(d.getDate() + (1 + 7 - d.getDay()) % 7); 
     }else{
        d.setDate(new Date().getDate());
     }
    $( "#delivery_date" ).datepicker({  autoclose: true, 
        todayHighlight: true,
        daysOfWeekDisabled: [0,6],
        format: 'dd/mm/yyyy',
    }).datepicker("setDate", d);
});
</script>
@endsection

Spamworldpro Mini