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.
 
 

197 lines
7.5 KiB

@extends('layouts.admin.app')
@section('title', translate('DB_clean'))
@push('css_or_js')
<meta name="csrf-token" content="{{ csrf_token() }}">
@endpush
@section('content')
<div class="content container-fluid">
<!-- Page Header -->
<div class="page-header">
<h1 class="page-header-title mb-2 text-capitalize">
<div class="card-header-icon d-inline-flex mr-2 img">
<img src="{{asset('/public/assets/admin/img/clean-database.png')}}" alt="public">
</div>
<span>
{{ translate('Clean database') }}
</span>
</h1>
</div>
<!-- End Page Header -->
<div class="alert alert--danger alert-danger mb-2" role="alert">
<span class="alert--icon"><i class="tio-info"></i></span> <strong>{{ translate('messages.note') }}: </strong>{{translate('This_page_contains_sensitive_information.Please_make_sure_before_click_the_button.')}}
</div>
<div class="card">
<div class="card-body pt-2">
<form action="{{ route('admin.business-settings.clean-db') }}" method="post"
enctype="multipart/form-data">
@csrf
<div class="check--item-wrapper clean--database-checkgroup">
@foreach ($tables as $key => $table)
<div class="check-item">
<div class="form-group form-check form--check">
<input type="checkbox" name="tables[]" value="{{ $table }}"
class="form-check-input" id="{{ $table }}">
<label class="form-check-label text-dark pl-2 flex-grow-1"
for="{{ $table }}">{{ Str::limit($table, 20) }} <span class="badge-pill badge-secondary mx-2">{{ $rows[$key] }}</span></label>
</div>
</div>
@endforeach
</div>
<div class="text-right mt-3">
<button type="{{ env('APP_MODE') != 'demo' ? 'submit' : 'button' }}"
onclick="{{ env('APP_MODE') != 'demo' ? '' : 'call_demo()' }}"
class="btn btn--primary" id="submitForm">{{ translate('Clear') }}</button>
</div>
</form>
</div>
</div>
</div>
@endsection
@push('script_2')
<script>
var restaurant_dependent = ['restaurants','restaurant_schedule', 'discounts'];
var order_dependent = ['order_delivery_histories','d_m_reviews', 'delivery_histories', 'track_deliverymen', 'order_details', 'reviews'];
var zone_dependent = ['restaurants','vendors', 'orders'];
var user_info_dependent = ['conversations', 'messages'];
$(document).ready(function () {
$('.form-check-input').on('change', function(event){
if($(this).is(':checked')){
if(event.target.id == 'zones' || event.target.id == 'restaurants' || event.target.id == 'vendors') {
checked_restaurants(true);
}
if(event.target.id == 'zones' || event.target.id == 'orders') {
checked_orders(true);
}
if(event.target.id == 'user_infos'){
checked_conversations(true);
}
} else {
if(restaurant_dependent.includes(event.target.id)) {
if(check_restaurant() || check_zone()){
$(this).prop('checked', true);
}
} else if(order_dependent.includes(event.target.id)) {
if(check_orders() || check_zone()){
$(this).prop('checked', true);
}
} else if(zone_dependent.includes(event.target.id)) {
if(check_zone()){
$(this).prop('checked', true);
}
} else if(event.target.id == 'user_infos') {
if(check_conversations() || check_messages()){
$(this).prop('checked', true);
}
} else if(event.target.id == 'conversations') {
if( check_messages()){
$(this).prop('checked', true);
}
}
}
});
$("#purchase_code_div").click(function () {
var type = $('#purchase_code').get(0).type;
if (type === 'password') {
$('#purchase_code').get(0).type = 'text';
} else if (type === 'text') {
$('#purchase_code').get(0).type = 'password';
}
});
})
function checked_restaurants(status) {
restaurant_dependent.forEach(function(value){
$('#'+value).prop('checked', status);
});
$('#vendors').prop('checked', status);
}
function checked_orders(status) {
order_dependent.forEach(function(value){
$('#'+value).prop('checked', status);
});
$('#orders').prop('checked', status);
}
function checked_conversations(status) {
user_info_dependent.forEach(function(value){
$('#'+value).prop('checked', status);
});
$('#user_infos').prop('checked', status);
}
function check_zone() {
if($('#zones').is(':checked')) {
toastr.warning("{{translate('messages.table_unchecked_warning',['table'=>'zones'])}}");
return true;
}
return false;
}
function check_orders() {
if($('#orders').is(':checked')) {
toastr.warning("{{translate('messages.table_unchecked_warning',['table'=>'orders'])}}");
return true;
}
return false;
}
function check_restaurant() {
if($('#restaurants').is(':checked') || $('#vendors').is(':checked')) {
toastr.warning("{{translate('messages.table_unchecked_warning',['table'=>'restaurants/vendors'])}}");
return true;
}
return false;
}
function check_conversations() {
if($('#conversations').is(':checked')) {
toastr.warning("{{translate('messages.table_unchecked_warning',['table'=>'conversations'])}}");
return true;
}
return false;
}
function check_messages() {
if($('#messages').is(':checked')) {
toastr.warning("{{translate('messages.table_unchecked_warning',['table'=>'messages'])}}");
return true;
}
return false;
}
</script>
<script>
$("form").on('submit', function(e) {
e.preventDefault();
Swal.fire({
title: '{{ translate('Are you sure?') }}',
text: "{{ translate('Sensitive_data! Make_sure_before_changing.') }}",
type: 'warning',
showCancelButton: true,
cancelButtonColor: 'default',
confirmButtonColor: '#FC6A57',
cancelButtonText: 'No',
confirmButtonText: 'Yes',
reverseButtons: true
}).then((result) => {
if (result.value) {
this.submit();
} else {
e.preventDefault();
toastr.success("{{ translate('Cancelled') }}");
location.reload();
}
})
});
</script>
@endpush