This commit is contained in:
sayaliparab
2024-06-18 13:00:42 +05:30
parent 50de318be0
commit 0c318a5ff6
6 changed files with 284 additions and 97 deletions

View File

@@ -1,6 +1,7 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Models\Termsandconditions;
use App\Services\Admin\termsandconditionServices;
use App\Http\Controllers\Controller;
@@ -10,11 +11,11 @@ use Validator;
class TermsController extends Controller
{
public function index(){
public function index()
{
$terms_condition = Termsandconditions::all()->toArray();
return view('Admin.pages.manage_cms.manage_terms.manage_terms',compact('terms_condition'));
return view('Admin.pages.manage_cms.manage_terms.manage_terms', compact('terms_condition'));
}
// public function edit($id)
// {
@@ -22,19 +23,18 @@ class TermsController extends Controller
// return view('Admin.pages.manage_cms.manage_terms.manage_terms_edit', compact('terms'));
// }
public function edit($id)
{
$terms = Termsandconditions::find($id);
{
$terms = Termsandconditions::find($id);
// dd($terms);
return view('Admin.pages.manage_cms.manage_terms.manage_terms_edit', compact('terms'));
}
}
public function update(Request $request)
{
$validated = $request->validate([
'article_des' => 'required', // Add validation for article_des
]);
$update = Termsandconditions::find($request->custom_id);
@@ -42,4 +42,23 @@ class TermsController extends Controller
$update->save();
return response()->json(['success' => true, 'status' => 200]);
}
public function editTerms_rest($id)
{
$edit_terms_rest = Termsandconditions::find($id);
// return $edit_terms_rest;
return view('Admin.pages.manage_cms.manage_terms.manage_terns_edit_rest', compact('edit_terms_rest'));
}
public function update_rest(Request $request)
{
$validated = $request->validate([
'termsrest_des' => 'required',
]);
$update_rest = Termsandconditions::find($request->termRest_id);
$update_rest->message = $request->input('termsrest_des');
$update_rest->save();
return response()->json(['success' => true, 'status' => 200]);
}
}

View File

@@ -76,57 +76,83 @@ $(document).ready(function() {
});
$(document).ready(function() {
var quill = new Quill('#termsRest-quill-edit', {
theme: 'snow'
});
var storedMessage = document.getElementById('stored-terms-rest-message').value;
quill.clipboard.dangerouslyPasteHTML(storedMessage);
$('#update_termsrest').on("click", function(e) {
e.preventDefault();
$('#terms_rest_form').validate({
ignore: [],
debug: false,
rules: {
termsrest_des: {
required: true,
minlength:1000,
}
},
messages: {
termsrest_des: {
required: "Please Enter Terms and Condition",
minlength:"Please Enter Terms and Condition"
}
},
errorClass: 'error-message',
submitHandler: function(form) {
// Get the HTML content from Quill editor
var termsrest_des = quill.root.innerHTML;
if (termsrest_des.trim() === '<p><br></p>') {
toastr.error("Please Enter Terms and Condition");
return false;
}
let base_url = url_path;
var termRest_id = document.querySelector('input[name="termRest_id"]').value;
// Create a form data object
var formData = new FormData(form);
formData.append('termsrest_des', termsrest_des);
$.ajaxSetup({
headers: {
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
},
});
$.ajax({
url: base_url + '/update_terms_rest',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function(response) {
if (response.status == 200) {
toastr.success('Terms and Condition Data Updated Successfully');
setTimeout(function() {
window.location.href = base_url + "/terms";
}, 1000);
} else {
toastr.error("Something went wrong");
}
},
error: function(response) {
toastr.error("An error occurred while updating the terms");
}
});
}
});
// Trigger form validation
$('#terms_rest_form').submit();
});
});
// privacy policy for rest
// $('#update_terms_rest').on("click", function (e) {
// $('#update_terms_rest_form').validate({
// ignore: [],
// debug: false,
// rules: {
// article_des_rest: {
// required: true,
// quillNotEmpty: true
// }
// },
// messages: {
// article_des_rest: {
// required: "Please Enter Terms and Condition"
// }
// },
// errorClass: 'error-message',
// submitHandler: function (form) {
// let base_url = url_path;
// var formData = new FormData(form);
// $.ajaxSetup({
// headers: {
// "X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
// },
// });
// $.ajax({
// url: base_url + '/update_terms_rest',
// type: 'POST',
// data: formData,
// processData: false,
// contentType: false,
// success: function (response) {
// if (response.status == 200) {
// toastr.success('Terms and Condtion Data Updated Successfully');
// setTimeout(function () {
// window.location.href = base_url + "/terms";
// }, 1000);
// }
// else if (response.status == 204) {
// toastr.error(response.error);
// }
// else {
// toastr.error("Something went wrong");
// }
// },
// });
// }
// });
// });

View File

@@ -14,7 +14,7 @@
<div class="row">
<div class="col-md-12 left d-flex align-items-center justify-content-between"
style="gap: 15px;">
<h6 class="card-title pl-2">Terms & Conditions</h6>
<h6 class="card-title pl-2"> Customer Terms & Conditions </h6>
<a class="view-details-btn mr-2"
href="{{ route('terms_edit', ['id' => $terms_condition[0]['id']]) }}"
data-id="{{ $terms_condition[0]['id'] }}">
@@ -51,6 +51,49 @@
</div>
<div class="layout-px-spacing">
<div class="middle-content container-xxl p-0">
<div class="row layout-top-spacing ">
<div class="top-tabel">
<div class="row">
<div class="col-md-12 left d-flex align-items-center justify-content-between"
style="gap: 15px;">
<h6 class="card-title pl-2"> Restaturant Terms & Conditions</h6>
<a class="view-details-btn mr-2"
href="{{ route('terms_edit_rest', ['id' => $terms_condition[1]['id']]) }}"
data-id="{{ $terms_condition[1]['id'] }}">
<span>Edit</span>
</a>
</div>
</div>
</div>
<div class="col-xl-12 col-lg-12 col-sm-12 layout-spacing">
<div class="widget-content widget-content-area br-8 position-btn p-0">
@csrf
<div class="view-details">
<div class="simple-tab">
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel"
aria-labelledby="home-tab" tabindex="0">
<div class="row">
<div class="col-md-12">
<p>
{!! $terms_condition[1]['message'] !!}
</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('section_script')

View File

@@ -5,19 +5,19 @@
$currentPage = 'manage-terms';
@endphp
<style>
.error-message {
color: #FF0000;
}
.error-message {
color: #FF0000;
}
form .error-message {
color: red;
/* Set your desired color here */
}
form .error-message {
color: red;
/* Set your desired color here */
}
form .input_class.error-message {
color: #0e1726;
}
</style>
form .input_class.error-message {
color: #0e1726;
}
</style>
@@ -62,35 +62,35 @@ $currentPage = 'manage-terms';
</div>
</div> -->
<div class="col-xl-12 col-lg-12 col-sm-12 layout-spacing">
<div class="widget-content widget-content-area br-8 position-btn p-0">
<div class="view-details">
<div class="simple-tab">
@csrf
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">
<div class="row">
<form id="terms_form">
<div class="col-md-12">
<input type="hidden" name="custom_id" value="{{ $terms->id }}">
<input type="hidden" id="stored-terms-message" value="{{ $terms->message }}" >
<div id="terms-quill-edit" name="article_des" class="editor-quill" style="height: 300px;" minlength="10" ></div>
<span class="error-message" id="error-message"></span>
<div class="col-xl-12 col-lg-12 col-sm-12 layout-spacing">
<div class="widget-content widget-content-area br-8 position-btn p-0">
<div class="view-details">
<div class="simple-tab">
@csrf
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">
<div class="row">
<form id="terms_form">
<div class="col-md-12">
<input type="hidden" name="custom_id" value="{{ $terms->id }}">
<input type="hidden" id="stored-terms-message" value="{{ $terms->message }}">
<div id="terms-quill-edit" name="article_des" class="editor-quill" style="height: 300px;" minlength="10"></div>
<span class="error-message" id="error-message"></span>
</div>
<div class="col-md-12">
<button type="submit" id="update_terms" class="download-btn-custom mt-3 custom-width-10">
<span>Update</span>
</button>
</div>
</form>
</div>
</div>
<div class="col-md-12">
<button type="submit" id="update_terms" class="download-btn-custom mt-3 custom-width-10">
<span>Update</span>
</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@@ -111,4 +111,4 @@ $currentPage = 'manage-terms';
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.5/jquery.validate.min.js"></script>
<script src="{{ asset('public/assets/js/admin/manage_cms/manage_terms_cond/manage_terms_condition.js')}}"></script>
@endsection
@endsection

View File

@@ -0,0 +1,97 @@
@extends('Admin.layouts.master')
@section('content')
@php
$currentPage = 'manage_cms';
@endphp
<div class="layout-px-spacing">
<div class="middle-content container-xxl p-0">
<div class="row layout-top-spacing ">
<div class="top-tabel">
<div class="row">
<div class="col-md-12 left d-flex align-items-center justify-content-between" style="gap: 15px;">
<a class="d-flex align-items-center justify-content-center pl-2" href="{{ route('manage.terms') }}">
<img class="back-btn" src="{{ asset('public/assets/img/left-arrow.svg') }}">
<h6 class="card-title p-0">Edit Details</h6>
</a>
</div>
</div>
</div>
<!-- <div class="col-xl-12 col-lg-12 col-sm-12 layout-spacing">
<div class="widget-content widget-content-area br-8 position-btn p-0">
<div class="view-details">
<div class="simple-tab">
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel"
aria-labelledby="home-tab" tabindex="0">
<div class="row">
<div class="col-md-12">
<div id="terms-quill-edit" class="editor-quill"
style="height: 300px;"></div>
</div>
<div class="col-md-12">
<a class="download-btn-custom mt-3 custom-width-10" href="">
<span>Update</span>
</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div> -->
<div class="col-xl-12 col-lg-12 col-sm-12 layout-spacing">
<div class="widget-content widget-content-area br-8 position-btn p-0">
<div class="view-details">
<div class="simple-tab">
@csrf
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">
<div class="row">
<form id="terms_rest_form">
<div class="col-md-12">
<input type="hidden" name="termRest_id" value="{{$edit_terms_rest->id}}">
<input type="hidden" id="stored-terms-rest-message" value="{{ $edit_terms_rest->message }}">
<div id="termsRest-quill-edit" name="termsrest_des" class="editor-quill" style="height: 300px;" minlength="10"></div>
<span class="error-message" id="error-message"></span>
</div>
<div class="col-md-12">
<button type="submit" id="update_termsrest" class="download-btn-custom mt-3 custom-width-10">
<span>Update</span>
</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('section_script')
<!-- <script>
var quill = new Quill('#terms-quill-edit', {
theme: 'snow'
});
</script> -->
<script src="https://code.jquery.com/jquery-3.6.4.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.5/jquery.validate.min.js"></script>
<script src="{{ asset('public/assets/js/admin/manage_cms/manage_terms_cond/manage_terms_condition.js')}}"></script>
@endsection

View File

@@ -128,7 +128,9 @@ Route::group(['middleware' => ['checkStatus']], function () {
Route::get('/terms', [TermsController::class, 'index'])->name('manage.terms');
Route::get('/terms_edit/{id}', [TermsController::class, 'edit'])->name('terms_edit');
Route::post('/update_terms', [TermsController::class, 'update']);
// Route::get('/terms_edit_rest/{id}', [TermsController::class, 'edit_rest'])->name('terms_edit');
Route::get('/terms_edit_rest/{id}', [TermsController::class, 'editTerms_rest'])->name('terms_edit_rest');
Route::post('/update_terms_rest', [TermsController::class, 'update_rest']);
//*******************************************************manage faq********************************************************
Route::get('/faq', [FaqController::class, 'index'])->name('manage.faq');
Route::get('/change_faq_Status', [FaqController::class, 'change_faqStatus']);