You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

276 lines
16 KiB

@extends('layouts.admin.app')
@section('title',translate('Update Coupon'))
@push('css_or_js')
@endpush
@section('content')
<div class="content container-fluid">
<!-- Page Header -->
<div class="page-header">
<div class="row align-items-center">
<div class="col-sm mb-2 mb-sm-0">
<h1 class="page-header-title"><i class="tio-edit"></i> {{translate('messages.coupon')}} {{translate('messages.update')}}</h1>
</div>
</div>
</div>
<!-- End Page Header -->
<div class="card">
<div class="card-body">
<form action="{{route('admin.coupon.update',[$coupon['id']])}}" method="post">
@csrf
<div class="row">
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="exampleFormControlInput1">{{translate('messages.title')}}</label>
<input id="coupon_title" type="text" name="title" value="{{$coupon['title']}}" class="form-control"
placeholder="{{translate('messages.new_coupon')}}" required maxlength="191">
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="exampleFormControlInput1">{{translate('messages.coupon')}} {{translate('messages.type')}}</label>
<select id="coupon_type" name="coupon_type" class="form-control" onchange="coupon_type_change(this.value)">
<option value="restaurant_wise" {{$coupon['coupon_type']=='restaurant_wise'?'selected':''}}>{{translate('messages.restaurant')}} {{translate('messages.wise')}}</option>
<option value="zone_wise" {{$coupon['coupon_type']=='zone_wise'?'selected':''}}>{{translate('messages.zone')}} {{translate('messages.wise')}}</option>
<option value="free_delivery" {{$coupon['coupon_type']=='free_delivery'?'selected':''}}>{{translate('messages.free_delivery')}}</option>
<option value="first_order" {{$coupon['coupon_type']=='first_order'?'selected':''}}>{{translate('messages.first')}} {{translate('messages.order')}}</option>
<option value="default" {{$coupon['coupon_type']=='default'?'selected':''}}>{{translate('messages.default')}}</option>
</select>
</div>
</div>
<div class="form-group col-sm-6 col-lg-3" id="restaurant_wise" style="display: {{$coupon['coupon_type']=='restaurant_wise'?'block':'none'}}">
<label class="input-label" for="exampleFormControlSelect1">{{translate('messages.restaurant')}}<span
class="input-label-secondary"></span></label>
<select name="restaurant_ids[]" class="js-data-example-ajax form-control" title="Select Restaurant">
@if($coupon->coupon_type == 'restaurant_wise')
@php($restaurant=\App\Models\Restaurant::find(json_decode($coupon->data)[0]))
@if($restaurant)
<option value="{{$restaurant->id}}">{{$restaurant->name}}</option>
@endif
@else
<option selected>{{translate('select_restaurant')}}</option>
@endif
</select>
</div>
<div class="form-group col-sm-6 col-lg-3" id="zone_wise" style="display: {{$coupon['coupon_type']=='zone_wise'?'block':'none'}}">
<label class="input-label" for="exampleFormControlInput1">{{translate('messages.select')}} {{translate('messages.zone')}}</label>
<select name="zone_ids[]" id="choice_zones"
class="form-control js-select2-custom"
multiple="multiple" placeholder="{{translate('messages.select_zone')}}">
@foreach(\App\Models\Zone::where('status',1)->get(['id','name']) as $zone)
<option value="{{$zone->id}}" {{($coupon->coupon_type=='zone_wise'&&json_decode($coupon->data))?(in_array($zone->id, json_decode($coupon->data))?'selected':''):''}}>{{$zone->name}}</option>
@endforeach
</select>
</div>
<div class="col-sm-6 col-lg-3" >
<div class="form-group" id="customer_wise" style="display: {{$coupon['coupon_type'] =='zone_wise' || $coupon['coupon_type'] =='first_order' ?'none':'block'}}">
<label class="input-label" for="select_customer">{{translate('messages.select_customer')}}</label>
<select name="customer_ids[]" id="select_customer"
class="form-control js-select2-custom"
multiple="multiple" placeholder="{{translate('messages.select_customer')}}">
<option value="all" {{in_array('all', json_decode($coupon->customer_id))?'selected':''}}>{{translate('messages.all')}} </option>
@foreach(\App\Models\User::get(['id','f_name','l_name']) as $user)
<option value="{{$user->id}}" {{in_array($user->id, json_decode($coupon->customer_id))?'selected':''}}>{{$user->f_name.' '.$user->l_name}}</option>
@endforeach
</select>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="exampleFormControlInput1">{{translate('messages.code')}}</label>
<input id="coupon_code" type="text" name="code" class="form-control" value="{{$coupon['code']}}"
placeholder="{{\Illuminate\Support\Str::random(8)}}" required maxlength="100">
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="limit">{{translate('messages.limit')}} {{translate('messages.for')}} {{translate('messages.same')}} {{translate('messages.user')}}</label>
<input type="number" name="limit" id="coupon_limit" value="{{$coupon['limit']}}" class="form-control" max="100"
placeholder="{{ translate('messages.Ex :') }} 10">
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="">{{translate('messages.start')}} {{translate('messages.date')}}</label>
<input type="date" name="start_date" class="form-control" id="date_from" placeholder="{{translate('messages.select_date')}}" value="{{date('Y-m-d',strtotime($coupon['start_date']))}}">
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="date_to">{{translate('messages.expire')}} {{translate('messages.date')}}</label>
<input type="date" name="expire_date" class="form-control" placeholder="{{translate('messages.select_date')}}" id="date_to" value="{{date('Y-m-d',strtotime($coupon['expire_date']))}}"
data-hs-flatpickr-options='{
"dateFormat": "Y-m-d"
}'>
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="discount_type">{{translate('messages.discount')}} {{translate('messages.type')}}</label>
<select name="discount_type" required id="discount_type" class="form-control" {{$coupon['coupon_type']=='free_delivery'?'disabled':''}}>
<option value="amount" {{$coupon['discount_type']=='amount'?'selected':''}}>
{{ translate('messages.amount').' ('.\App\CentralLogics\Helpers::currency_symbol().')' }}
</option>
<option value="percent" {{$coupon['discount_type']=='percent'?'selected':''}}>
{{ translate('messages.percent').' (%)' }}
</option>
</select>
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="discount">{{translate('messages.discount')}}
{{-- <span class="input-label-secondary text--title" data-toggle="tooltip"
data-placement="right"
data-original-title="{{ translate('Currently you need to manage discount with the Restaurant.') }}">
<i class="tio-info-outined"></i>
</span> --}}
</label>
<input type="number" id="discount" min="1" max="999999999999.99" step="0.01" value="{{$coupon['discount']}}"
name="discount" class="form-control" required {{$coupon['coupon_type']=='free_delivery'?'readonly':''}}>
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="exampleFormControlInput1">{{translate('messages.max')}} {{translate('messages.discount')}}</label>
<input type="number" min="0" max="999999999999.99" step="0.01"
value="{{$coupon['max_discount']}}" name="max_discount" id="max_discount" class="form-control" {{$coupon['coupon_type']=='free_delivery'?'readonly':''}}>
</div>
</div>
<div class="col-sm-6 col-lg-3">
<div class="form-group">
<label class="input-label" for="exampleFormControlInput1">{{translate('messages.min')}} {{translate('messages.purchase')}}</label>
<input id="min_purchase" type="number" name="min_purchase" step="0.01" value="{{$coupon['min_purchase']}}"
min="0" max="999999999999.99" class="form-control"
placeholder="100">
</div>
</div>
</div>
<div class="btn--container justify-content-end">
<button id="reset_btn" type="button" class="btn btn--reset">{{translate('messages.reset')}}</button>
<button type="submit" class="btn btn--primary">{{translate('messages.update')}}</button>
</div>
</form>
</div>
</div>
</div>
@endsection
@push('script_2')
<script>
$("#date_from").on("change", function () {
$('#date_to').attr('min',$(this).val());
});
$("#date_to").on("change", function () {
$('#date_from').attr('max',$(this).val());
});
$(document).on('ready', function () {
$('#date_from').attr('max','{{date("Y-m-d",strtotime($coupon["expire_date"]))}}');
$('#date_to').attr('min','{{date("Y-m-d",strtotime($coupon["start_date"]))}}');
$('.js-data-example-ajax').select2({
ajax: {
url: '{{url('/')}}/admin/restaurant/get-restaurants',
data: function (params) {
return {
q: params.term, // search term
page: params.page
};
},
processResults: function (data) {
return {
results: data
};
},
__port: function (params, success, failure) {
var $request = $.ajax(params);
$request.then(success);
$request.fail(failure);
return $request;
}
}
});
// INITIALIZATION OF FLATPICKR
// =======================================================
$('.js-flatpickr').each(function () {
$.HSCore.components.HSFlatpickr.init($(this));
});
});
function coupon_type_change(coupon_type) {
if(coupon_type=='zone_wise')
{
$('#restaurant_wise').hide();
$('#customer_wise').hide();
$('#select_customer').val(null).trigger('change');
$('#zone_wise').show();
}
else if(coupon_type=='restaurant_wise')
{
$('#restaurant_wise').show();
$('#zone_wise').hide();
$('#customer_wise').show();
}
else if(coupon_type=='first_order')
{
$('#zone_wise').hide();
$('#restaurant_wise').hide();
$('#coupon_limit').val(1);
$('#coupon_limit').attr("readonly","true");
$('#select_customer').val(null).trigger('change');
$('#customer_wise').hide();
}
else{
$('#zone_wise').hide();
$('#restaurant_wise').hide();
$('#coupon_limit').val('');
$('#coupon_limit').removeAttr("readonly");
$('#customer_wise').show();
}
if(coupon_type=='free_delivery')
{
$('#discount_type').attr("disabled","true");
$('#discount_type').val("").trigger( "change" );
$('#max_discount').val(0);
$('#discount_type').attr("required","false");
$('#max_discount').attr("readonly","true");
$('#discount').val(0);
$('#discount').attr("readonly","true");
}
else{
$('#max_discount').removeAttr("readonly");
$('#discount_type').removeAttr("disabled");
$('#discount').removeAttr("readonly");
}
}
</script>
<script>
$('#reset_btn').click(function(){
// $('#coupon_title').val("{{$coupon['title']}}");
// $('#coupon_code').val("{{$coupon['code']}}");
// $('#coupon_type').val("{{$coupon['coupon_type']}}").trigger('change');
// $('#coupon_limit').val("{{$coupon['limit']}}");
// $('#date_from').val("{{date('Y-m-d',strtotime($coupon['start_date']))}}");
// $('#date_to').val("{{date('Y-m-d',strtotime($coupon['expire_date']))}}");
// $('#discount_type').val("{{$coupon['discount_type']}}").trigger('change');
// $('#discount').val("{{$coupon['discount']}}");
// $('#min_purchase').val("{{$coupon['min_purchase']}}");
location.reload(true);
})
</script>
@endpush