chore: remove APAW from tracking; gitignore agent-generated files
This commit is contained in:
146
resources/views/superadmin/packages/create.blade.php
Normal file
146
resources/views/superadmin/packages/create.blade.php
Normal file
@@ -0,0 +1,146 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="col-md-12">
|
||||
<div class="card card-outline card-primary">
|
||||
<div class="card-header">
|
||||
<div class="card-title">
|
||||
<h3>@lang('messages.create_package')</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form id="create_package_form">
|
||||
<div class="form-row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="name">
|
||||
@lang('messages.name') *
|
||||
</label>
|
||||
<input type="text" name="name" class="form-control" id="name" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="description">
|
||||
@lang('messages.description') *
|
||||
</label>
|
||||
<input type="text" name="description" class="form-control" id="description" maxlength="100" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="price_interval">
|
||||
@lang('messages.price_interval') *
|
||||
</label>
|
||||
<select class="form-control" name="price_interval" id="price_interval" required>
|
||||
<option value="">
|
||||
@lang('messages.select_price_interval')
|
||||
</option>
|
||||
@foreach($lists as $key => $value)
|
||||
<option value="{{$key}}">
|
||||
{{$value}}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="interval">
|
||||
@lang('messages.interval') *
|
||||
</label>
|
||||
<input type="number" name="interval" class="form-control" id="interval" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="price">
|
||||
@lang('messages.price')
|
||||
</label>
|
||||
<input type="number" name="price" class="form-control" id="price" aria-describedby="price_help_text">
|
||||
<small id="price_help_text" class="form-text text-muted">
|
||||
@lang('messages.free_package_help_text')
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="no_of_active_forms">
|
||||
@lang('messages.no_of_active_forms')
|
||||
</label>
|
||||
<input type="number" name="no_of_active_forms" class="form-control" id="no_of_active_forms" aria-describedby="no_of_active_forms_help">
|
||||
<small id="no_of_active_forms_help" class="form-text text-muted">
|
||||
@lang('messages.unlimited_form_help_text')
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="sort_order">
|
||||
@lang('messages.sort_order') *
|
||||
</label>
|
||||
<input type="number" name="sort_order" class="form-control" id="sort_order" required>
|
||||
<small class="form-text text-muted">
|
||||
@lang('messages.sort_order_help_text')
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-4">
|
||||
<div class="custom-control custom-checkbox">
|
||||
<input type="checkbox" class="custom-control-input" name="is_form_downloadable" id="is_form_downloadable" value="1">
|
||||
<label class="custom-control-label" for="is_form_downloadable">
|
||||
@lang('messages.allow_form_code_downloading')
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="custom-control custom-checkbox">
|
||||
<input type="checkbox" class="custom-control-input" name="is_active" id="is_active" value="1">
|
||||
<label class="custom-control-label" for="is_active">
|
||||
@lang('messages.activate')
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-success float-right submit_btn">
|
||||
@lang('messages.save')
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@section('footer')
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
$('form#create_package_form').validate({
|
||||
submitHandler: function(form, e) {
|
||||
e.preventDefault();
|
||||
var data = $('form#create_package_form').serialize();
|
||||
if ($('form#create_package_form').valid()) {
|
||||
$.ajax({
|
||||
method:"POST",
|
||||
url: "/superadmin/packages",
|
||||
data: data,
|
||||
dataType: "json",
|
||||
success:function(response) {
|
||||
if(response.success == true){
|
||||
window.location = response.redirect;
|
||||
} else {
|
||||
toastr.error(response.msg);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endsection
|
||||
151
resources/views/superadmin/packages/edit.blade.php
Normal file
151
resources/views/superadmin/packages/edit.blade.php
Normal file
@@ -0,0 +1,151 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="col-md-12">
|
||||
<div class="card card-outline card-primary">
|
||||
<div class="card-header">
|
||||
<div class="card-title">
|
||||
<h3>@lang('messages.edit_package')</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form id="edit_package_form" action="{{action([\App\Http\Controllers\Superadmin\PackageController::class, 'update'], ['package' => $package->id])}}">
|
||||
<div class="form-row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="name">
|
||||
@lang('messages.name') *
|
||||
</label>
|
||||
<input type="text" name="name" class="form-control" id="name" value="{{$package->name}}" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="description">
|
||||
@lang('messages.description') *
|
||||
</label>
|
||||
<input type="text" name="description" class="form-control" id="description" value="{{$package->description}}" maxlength="100" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="price_interval">
|
||||
@lang('messages.price_interval') *
|
||||
</label>
|
||||
<select class="form-control" name="price_interval" id="price_interval" required>
|
||||
<option value="">
|
||||
@lang('messages.select_price_interval')
|
||||
</option>
|
||||
@foreach($lists as $key => $value)
|
||||
<option value="{{$key}}"
|
||||
@if($key == $package->price_interval)
|
||||
selected
|
||||
@endif
|
||||
>
|
||||
{{$value}}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="interval">
|
||||
@lang('messages.interval') *
|
||||
</label>
|
||||
<input type="number" name="interval" class="form-control" id="interval" required value="{{$package->interval}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="form-group">
|
||||
<label for="price">
|
||||
@lang('messages.price')
|
||||
</label>
|
||||
<input type="number" name="price" class="form-control" id="price" value="{{$package->price}}" aria-describedby="price_help_text">
|
||||
<small id="price_help_text" class="form-text text-muted">
|
||||
@lang('messages.free_package_help_text')
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="no_of_active_forms">
|
||||
@lang('messages.no_of_active_forms')
|
||||
</label>
|
||||
<input type="number" name="no_of_active_forms" class="form-control" id="no_of_active_forms" value="{{$package->no_of_active_forms}}" aria-describedby="no_of_active_forms_help">
|
||||
<small id="no_of_active_forms_help" class="form-text text-muted">
|
||||
@lang('messages.unlimited_form_help_text')
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="sort_order">
|
||||
@lang('messages.sort_order') *
|
||||
</label>
|
||||
<input type="number" name="sort_order" class="form-control" id="sort_order" value="{{$package->sort_order}}" required>
|
||||
<small class="form-text text-muted">
|
||||
@lang('messages.sort_order_help_text')
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<div class="col-md-4">
|
||||
<div class="custom-control custom-checkbox">
|
||||
<input type="checkbox" class="custom-control-input" name="is_form_downloadable" id="is_form_downloadable" value="1" @if($package->is_form_downloadable) checked @endif>
|
||||
<label class="custom-control-label" for="is_form_downloadable">
|
||||
@lang('messages.allow_form_code_downloading')
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="custom-control custom-checkbox">
|
||||
<input type="checkbox" class="custom-control-input" name="is_active" id="is_active" value="1" @if($package->is_active) checked @endif>
|
||||
<label class="custom-control-label" for="is_active">
|
||||
@lang('messages.activate')
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-success submit_btn float-right">
|
||||
@lang('messages.update')
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@section('footer')
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
$('form#edit_package_form').validate({
|
||||
submitHandler: function(form, e) {
|
||||
e.preventDefault();
|
||||
var data = $('form#edit_package_form').serialize();
|
||||
var url = $('form#edit_package_form').attr('action');
|
||||
if ($('form#edit_package_form').valid()) {
|
||||
$.ajax({
|
||||
method:"PUT",
|
||||
url: url,
|
||||
data: data,
|
||||
dataType: "json",
|
||||
success:function(response) {
|
||||
if(response.success == true){
|
||||
window.location = response.redirect;
|
||||
} else {
|
||||
toastr.error(response.msg);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endsection
|
||||
150
resources/views/superadmin/packages/index.blade.php
Normal file
150
resources/views/superadmin/packages/index.blade.php
Normal file
@@ -0,0 +1,150 @@
|
||||
@extends('layouts.app')
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="card card-outline card-info">
|
||||
<div class="card-header">
|
||||
<div class="card-title">
|
||||
<h4>
|
||||
<i class="fas fa-money-check"></i>
|
||||
@lang('messages.all_packages')
|
||||
</h4>
|
||||
</div>
|
||||
<div class="card-tools">
|
||||
<a href="{{action([\App\Http\Controllers\Superadmin\PackageController::class, 'create'])}}" class="btn btn-primary btn-sm float-right">
|
||||
<i class="fas fa-plus"></i>
|
||||
@lang('messages.create')
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
@if(count($packages) <= 0)
|
||||
<div class="alert alert-danger" role="alert">
|
||||
<span class="text-white">@lang('messages.no_packages_found')</span>
|
||||
</div>
|
||||
@endif
|
||||
<div class="row">
|
||||
@foreach($packages as $package)
|
||||
<div class="col-md-4">
|
||||
<div class="card card-outline card-success on_hover">
|
||||
<div class="card-header">
|
||||
<div class="text-center">
|
||||
{{$package->name}}
|
||||
</div>
|
||||
<div class="text-center">
|
||||
@if($package->is_active)
|
||||
<span class="badge badge-pill badge-success">
|
||||
@lang('messages.active')
|
||||
</span>
|
||||
@else
|
||||
<span class="badge badge-pill badge-danger">
|
||||
@lang('messages.inactive')
|
||||
</span>
|
||||
@endif
|
||||
<a href="{{action([\App\Http\Controllers\Superadmin\PackageController::class, 'edit'], ['package' => $package->id])}}" class="btn btn-link text-info">
|
||||
<i class="fa fa-edit"></i>
|
||||
</a>
|
||||
<a href="#" class="btn btn-link delete_package text-danger" data-url="{{action([\App\Http\Controllers\Superadmin\PackageController::class, 'destroy'], ['package' => $package->id])}}">
|
||||
<i class="fa fa-trash"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body text-center">
|
||||
@if($package->no_of_active_forms != 0)
|
||||
<span>
|
||||
<i class="far fa-check-circle text-success"></i>
|
||||
@lang('messages.no_of_forms',[
|
||||
'active_form' => $package->no_of_active_forms])
|
||||
</span>
|
||||
@else
|
||||
<span>
|
||||
<i class="far fa-check-circle text-success"></i>
|
||||
@lang('messages.unlimited_forms')
|
||||
</span>
|
||||
@endif
|
||||
<hr>
|
||||
@if($package->is_form_downloadable)
|
||||
<span>
|
||||
<i class="far fa-check-circle text-success"></i>
|
||||
@lang('messages.form_code_download')
|
||||
</span>
|
||||
@else
|
||||
<span>
|
||||
<i class="far fa-times-circle text-danger"></i>
|
||||
@lang('messages.form_code_download')
|
||||
</span>
|
||||
@endif
|
||||
<hr>
|
||||
@php
|
||||
$price_interval = __('messages.'.$package->price_interval);
|
||||
@endphp
|
||||
@if($package->price != 0)
|
||||
<h3>
|
||||
<span class="currency">
|
||||
{{$package->price}}
|
||||
</span>
|
||||
<small class="text-muted">
|
||||
@lang('messages.subscription_price',[
|
||||
'interval' => $package->interval,
|
||||
'price_interval' => $price_interval
|
||||
])
|
||||
</small>
|
||||
</h3>
|
||||
@else
|
||||
<h3>
|
||||
@lang('messages.free_for_interval', [
|
||||
'interval' => $package->interval,
|
||||
'price_interval' => $price_interval
|
||||
])
|
||||
</h3>
|
||||
@endif
|
||||
</div>
|
||||
<div class="card-footer text-center">
|
||||
{{$package->description}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if($loop->iteration%3 == 0)
|
||||
<div class="clearfix"></div>
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
{{ $packages->links() }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
@section('footer')
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
$('span.currency').each(function(index, element){
|
||||
var money = __formatCurrency($(this).text());
|
||||
$(this).text(money);
|
||||
});
|
||||
|
||||
$(document).on('click', '.delete_package', function(){
|
||||
var url = $(this).data('url');
|
||||
var is_confirmed = confirm('Are You Sure?');
|
||||
if (is_confirmed) {
|
||||
$.ajax({
|
||||
method: "DELETE",
|
||||
url: url,
|
||||
dataType: "json",
|
||||
success: function(result){
|
||||
if(result.success == true){
|
||||
toastr.success(result.msg);
|
||||
setTimeout(() => {
|
||||
location.reload();
|
||||
}, 1100);
|
||||
} else {
|
||||
toastr.error(result.msg);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@endsection
|
||||
Reference in New Issue
Block a user