cmsModule

This commit is contained in:
sayaliparab
2024-05-28 12:45:23 +05:30
parent c56a396992
commit c8d2d6a476
20 changed files with 918 additions and 224 deletions

View File

@@ -16,46 +16,59 @@ use Illuminate\Support\Facades\Auth;
class AboutUsController extends Controller
{
// public function index()
// {
public function index()
{ $view_about = Aboutus::get()->toArray();
// return view('Admin.pages.manage_cms.manage_aboutus.manage_aboutsus');
// }
public function index(Request $request)
{
try {
$about_data = Aboutus::with('category')->get();
// @dd($about_data);
foreach ($about_data as $k => $val) {
$about_data[$k]['thumbnail_image'] = ListingImageUrl('about_images', $val['thumbnail_image']);
}
return view('Admin.pages.manage_cms.manage_aboutus.manage_aboutsus', compact('about_data'));
} catch (Exception $e) {
Log::error("Manage About Page Not Load " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
return view('Admin.pages.manage_cms.manage_aboutus.manage_about_us',compact('view_about'));
}
public function edit($id)
// public function index(Request $request)
// {
// try {
// $about_data = Aboutus::with('category')->get();
// // @dd($about_data);
// foreach ($about_data as $k => $val) {
// $about_data[$k]['thumbnail_image'] = ListingImageUrl('about_images', $val['thumbnail_image']);
// }
// return view('Admin.pages.manage_cms.manage_aboutus.manage_aboutsus', compact('about_data'));
// } catch (Exception $e) {
// Log::error("Manage About Page Not Load " . $e->getMessage());
// return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
// }
// }
// public function edit($id)
// {
// try {
// $edit_service = Aboutus::find($id)->toArray();
// $about_us_cat = MainCategory::all()->toArray();
// $edit_service['thumbnail_image'] = ListingImageUrl('about_images', $edit_service['thumbnail_image']);
// return view('Admin.pages.manage_cms.manage_aboutus.manage_about_us_edit', compact('edit_service', 'about_us_cat'));
// } catch (Exception $e) {
// Log::error("edit voucher Page Load Failed " . $e->getMessage());
// return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
// }
// }
public function edit($id){
$edit_privacy_policy = Aboutus::find($id)->toArray();
return view('Admin.pages.manage_cms.manage_aboutus.manage_about_us_cust', compact('edit_privacy_policy'));
}
public function edit_rest($id)
{
try {
$edit_service = Aboutus::find($id)->toArray();
$about_us_cat = MainCategory::all()->toArray();
$edit_service['thumbnail_image'] = ListingImageUrl('about_images', $edit_service['thumbnail_image']);
return view('Admin.pages.manage_cms.manage_aboutus.manage_about_us_edit', compact('edit_service', 'about_us_cat'));
} catch (Exception $e) {
Log::error("edit voucher Page Load Failed " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
$edit_about_rest = Aboutus::find($id)->toArray();
dd('sdfnkjfn');
return view('Admin.pages.manage_cms.manage_aboutus.manage_about_us_rest', compact('edit_about_rest'));
}
public function update(Request $request)

View File

@@ -0,0 +1,13 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class ManageCmsController extends Controller
{
public function index(){
return view('Admin.pages.manage_cms.manage_cms');
}
}

View File

@@ -1,15 +1,42 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Models\IamPrincipal;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\DB;
use Maatwebsite\Excel\Facades\Excel;
use App\Models\OrderedPassport;
use Exception;
class ManageCustomerController extends Controller
{
public function index(){
// public function index(){
return view('Admin.pages.manage_users.manage_customer.customer');
// return view('Admin.pages.manage_users.manage_customer.customer');
// }
public function index()
{
try {
$customers = IamPrincipal::where('principal_type_xid', 3)->orderBy('created_at', 'desc')->get();
// foreach ($customers as $customer) {
// $activePassportCount = OrderedPassport::where('iam_principal_xid', $customer->id)
// ->where('is_active', 1) // Assuming 'status' field indicates the status of the passport
// ->count();
// $customer->activePassportCount = $activePassportCount;
// }
return view('Admin.pages.manage_users.manage_customer.customer', compact('customers'));
} catch (Exception $e) {
Log::error("Manage Voucher Page Not Load " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
}
}

View File

@@ -19,13 +19,35 @@ class PrivacyPolicyController extends Controller
// }
public function index(){
$view_policy = PrivacyPolicy::get()->toArray();
// dd($view_privacy_policy);
return view('Admin.pages.manage_cms.manage_privacy.manage_privacy');
$view_privacy = PrivacyPolicy::get()->toArray();
return view('Admin.pages.manage_cms.manage_privacy.manage_privacy', compact('view_privacy'));
}
public function edit($id){
$edit_privacy_policy = PrivacyPolicy::find($id)->toArray();
return view('Admin.pages.manage_cms.manage_privacy.manage_privacy_policy_edit', compact('edit_privacy_policy'));
}
public function update(Request $request)
{
$update = PrivacyPolicy::find($request->privacy_custom_id);
$update->description = $request->input('privacy_policy');
$update->save();
return response()->json(['success' => true, 'status' => 200]);
}
public function edit_rest($id)
{
$edit_privacy_policy_rest = PrivacyPolicy::find($id)->toArray();
return view('Admin.pages.manage_cms.manage_privacy.manage_privacy_policy_edit_rest', compact('edit_privacy_policy_rest'));
}
public function update_rest(Request $request)
{
$update = PrivacyPolicy::find($request->privacy_rest_id);
$update->description = $request->input('edit_privacy_policy_rest');
$update->save();
return response()->json(['success' => true, 'status' => 200]);
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class ManageModule extends Model
{
use HasFactory;
use SoftDeletes;
protected $table='manage_modules';
public function moduleLinks()
{
return $this->hasMany(ManageModuleLink::class);
}
}

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class ManageModuleLink extends Model
{
use HasFactory;
protected $table='manage_module_links';
public function iamprinciple()
{
return $this->belongsTo(IamPrincipal::class);
}
public function module()
{
return $this->belongsTo(ManageModule::class);
}
}

View File

@@ -7,5 +7,7 @@ use Illuminate\Database\Eloquent\Model;
class PrivacyPolicy extends Model
{
protected $table = "privacy_policies";
use HasFactory;
}

View File

@@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('manage_modules', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('slug');
$table->integer('created_by')->nullable();
$table->integer('modified_by')->nullable();
$table->softDeletes();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('manage_modules');
}
};

View File

@@ -0,0 +1,31 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('manage_module_links', function (Blueprint $table) {
$table->id();
$table->unsignedBigInteger('principal_xid');
$table->foreign('principal_xid')->references('id')->on('iam_principal')->onDelete('cascade');
$table->unsignedBigInteger('manage_modules_xid');
$table->foreign('manage_modules_xid')->references('id')->on('manage_modules')->onDelete('cascade');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('manage_module_links');
}
};

View File

@@ -5,6 +5,7 @@ $.validator.addMethod("quillNotEmpty", function(value, element) {
var quill = new Quill('#terms-quill-edit');
return quill.getText().trim().length > 0;
}, "Please enter privacy Policy ");
$('#privacy_policy_form').validate({
ignore: [],
debug: false,
@@ -49,9 +50,13 @@ $.validator.addMethod("quillNotEmpty", function(value, element) {
});
});
// privacy policy for rest
$('#update_privacy_policy_rest').on("click", function (e) {
// alert("kjhskhf");
$.validator.addMethod("quillNotEmpty", function(value, element) {
var quill = new Quill('#terms-quill-edit');
return quill.getText().trim().length > 0;

View File

@@ -181,7 +181,7 @@
<button class="dropdown-btn-users mb-1">
<!-- <button class="dropdown-btn-users mb-1">
<div class="icons d-flex align-items-center justify-content-start w-100">
<img src="{{ asset('public/assets/img/article-line.svg') }}" >
<span class="text-1">Manage CMS</span>
@@ -271,20 +271,20 @@
</ul>
</div>
</div> -->
<!-- <li class="tooltip-element <?php
<li class="tooltip-element <?php
if ($currentPage == 'manage-cms') {
echo 'active';
}
?>" data-tooltip="7">
<a href="manage-cms.php" data-active="7">
<a href="{{ route('manage.cms') }}" data-active="7">
<div class="icons">
<img src="../src/assets/img/article-line.svg" />
<img src="{{ asset('public/assets/img/article-line.svg') }}" />
<span class="text">Manage CMS</span>
</div>
</a>
</li> -->
</li>
<li class="tooltip-element <?php
if ($currentPage == 'manage-reports') {

View File

@@ -0,0 +1,144 @@
@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;">
<h6 class="card-title pl-2">Customer About Us</h6>
<a class="view-details-btn mr-2" href="{{ url('/about_us_edit/'. $view_about [0]['id']) }}">
<span>Edit Details</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">
<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>
Vorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam
eu turpis molestie, dictum est a, mattis tellus. Sed
dignissim, metus nec fringilla accumsan, risus sem sollicitudin
lacus, ut interdum tellus elit sed risus. Maecenas eget
condimentum velit, sit amet feugiat lectus. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per
inceptos himenaeos.
</p>
</div> -->
<div class="col-md-12">
<p>
{!! $view_about[0]['description'] !!}
</p>
</div>
<!-- <div class="col-md-12">
<p>
Vorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam
eu turpis molestie, dictum est a, mattis tellus. Sed
dignissim, metus nec fringilla accumsan, risus sem sollicitudin
lacus, ut interdum tellus elit sed risus. Maecenas eget
condimentum velit, sit amet feugiat lectus. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per
inceptos himenaeos.
</p>
</div> -->
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<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">Resturant About Us</h6>
<a class="view-details-btn mr-2" href="{{ url('/about_us_rest/'.$view_about[1]['id']) }}">
<span>Edit Details</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">
<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>
{!! $view_about[1]['description'] !!}
</p>
</div>
<!-- <div class="col-md-12">
<p>
{!! $view_about[0]['description'] !!}
</p>
</div> -->
<!-- <div class="col-md-12">
<p>
Vorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam
eu turpis molestie, dictum est a, mattis tellus. Sed
dignissim, metus nec fringilla accumsan, risus sem sollicitudin
lacus, ut interdum tellus elit sed risus. Maecenas eget
condimentum velit, sit amet feugiat lectus. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per
inceptos himenaeos.
</p>
</div> -->
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('section_script')
@endsection

View File

@@ -0,0 +1,73 @@
@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.aboutUs')}}">
<img class="back-btn" src="{{ asset('public/assets/img/left-arrow.svg')}}">
<h6 class="card-title p-0">Edit Details for customer</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">
<form id="privacy_policy_form">
<div class="row">
<div class="col-md-12">
<input type="hidden" name="privacy_custom_id" value="{{ $edit_privacy_policy['id'] }}">
<div id="terms-quill-edit" value="{{ $edit_privacy_policy['description'] }}" name="privacy_policy" class="editor-quill" style="height: 300px;">{!! $edit_privacy_policy['description'] !!}</div>
<input type="hidden" id="privacy_policy" name="privacy_policy" value="{{ $edit_privacy_policy['description'] }}" />
</div>
<div class="col-md-12">
<button type="submit" id="update_privacy_policy" class="download-btn-custom mt-3 custom-width-10" >
<span>Update</span>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- END MAIN CONTAINER -->
@endsection
@section('section_script')
<script>
var quill = new Quill('#terms-quill-edit', {
theme: 'snow'
});
// Listen for changes and update the hidden input with the HTML content
quill.on('text-change', function() {
var htmlContent = quill.root.innerHTML;
document.getElementById('privacy_policy').value = htmlContent;
});
</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_privacy_policy/privacy_policy.js')}}"></script>
@endsection

View File

@@ -0,0 +1,80 @@
@extends('admin.layouts.master')
@section('content')
@php
$currentPage = 'manage_cms';
@endphp
<style>
.error-message {
color: #FF0000;
}
form .error-message {
color: red;
/* Set your desired color here */
}
form .input_class.error-message {
color: #0e1726;
}
</style>
<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="">
<img class="back-btn" src="{{ asset('public/assets/img/left-arrow.svg') }}">
<h6 class="card-title p-0">Edit Details of Resturant</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">
<form id="privacy_policy_form">
<div class="row">
<div class="col-md-12">
<input type="hidden" name="" value="{{ $edit_about_rest['id'] }}">
<div id="terms-quill-edit" value="{{$edit_about_rest['description'] }}" name="privacy_policy" class="editor-quill" style="height: 300px;">{!! $edit_about_rest['description'] !!}</div>
<input type="hidden" id="privacy_policy" name="privacy_policy" value="{{ $edit_about_rest['description'] }}" />
</div>
<div class="col-md-12">
<button type="submit" id="" class="download-btn-custom mt-3 custom-width-10" >
<span>Update</span>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- END MAIN CONTAINER -->
@endsection
@section('section_script')
<script>
var quill = new Quill('#about-quill-edit', {
theme: 'snow'
});
// Listen for changes and update the hidden input with the HTML content
// Listen for changes and update the hidden input with the HTML content
quill.on('text-change', function() {
var htmlContent = quill.root.innerHTML;
document.getElementById('edit_about_rest').value = htmlContent;
});
</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>
@endsection

View File

@@ -0,0 +1,102 @@
@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-4">
<h6 class="card-title">Manage CMS</h6>
</div>
</div>
</div>
<div class="col-12 d-flex align-items-center gap-3 p-0 mb-4">
<div class="col-4">
<a href="{{ route('manage.Newarticles') }}">
<div class="card pointer">
<div
class="card-body d-flex flex-column justify-content-center align-items-center card-cms">
<img width="50" height="50" src="{{ asset('public/assets/img/article-line.svg') }}" alt="">
<h4 class="m-0">News & Articles</h4>
</div>
</div>
</a>
</div>
<div class="col-4">
<a href="{{ route('manage.newLetter') }}">
<div class="card pointer">
<div
class="card-body d-flex flex-column justify-content-center align-items-center card-cms">
<img width="50" height="50" src="{{ asset('public/assets/img/quill_inbox-newsletter.svg') }}"
alt="">
<h4 class="m-0">Newsletter</h4>
</div>
</div>
</a>
</div>
<div class="col-4">
<a href="{{ route('manage.aboutUs') }}">
<div class="card pointer">
<div
class="card-body d-flex flex-column justify-content-center align-items-center card-cms">
<img width="50" height="50" src="{{ asset('public/assets/img/user (2) 1.svg') }}" alt="">
<h4 class="m-0">About Us</h4>
</div>
</div>
</a>
</div>
</div>
<div class="col-12 d-flex align-items-center gap-3 p-0 mb-4">
<div class="col-4">
<a href="{{ route('manage.terms') }}">
<div class="card pointer">
<div
class="card-body d-flex flex-column justify-content-center align-items-center card-cms">
<img width="50" height="50" src="{{ asset('public/assets/img/contract 1.svg') }}" alt="">
<h4 class="m-0">Terms & Conditions</h4>
</div>
</div>
</a>
</div>
<div class="col-4">
<a href="{{ route('manage.faq') }}">
<div class="card pointer">
<div
class="card-body d-flex flex-column justify-content-center align-items-center card-cms">
<img width="50" height="50" src="{{ asset('public/assets/img/conversation 3.svg') }}" alt="">
<h4 class="m-0">FAQ</h4>
</div>
</div>
</a>
</div>
<div class="col-4">
<a href="{{ route('manage.privacy') }}">
<div class="card pointer">
<div
class="card-body d-flex flex-column justify-content-center align-items-center card-cms">
<img width="50" height="50" src="{{ asset('public/assets/img/privacy.svg') }}" alt="">
<h4 class="m-0">Privacy Policy</h4>
</div>
</div>
</a>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('section_script')
@endsection

View File

@@ -81,94 +81,91 @@ $currentPage = 'manage-privacy';
</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">Privacy Policy Customer</h6>
@if(!empty($view_privacy_policy))
<a class="view-details-btn mr-2" href="{{ url('/privacy_edit/'.$view_privacy_policy[0]['id']) }}">
<span>Edit Details</span>
</a>
@else
<p>No privacy policy found.</p>
@endif
<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">Privacy Policy Customer</h6>
</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">
<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>
{!! $view_privacy_policy[0]['description'] !!}
</p>
</div>
</div>
@if(!empty($view_privacy ))
<a class="view-details-btn mr-2" href="{{ url('/privacy_edit/'.$view_privacy [0]['id']) }}">
<span>Edit Details</span>
</a>
@else
<p>No privacy policy found.</p>
@endif
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<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">Privacy Policy Resturant</h6>
<a class="view-details-btn mr-2" href="{{ url('/privacy_edit_rest/'.$view_privacy_policy[1]['id']) }}">
<span>Edit Details</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">
<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>{!! $view_privacy_policy[1]['description'] !!}</p>
</div>
</div>
</div>
</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">
<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>
{!! $view_privacy[0]['description'] !!}
</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<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">Privacy Policy Resturant</h6>
<a class="view-details-btn mr-2" href="{{ url('/privacy_edit_rest/'.$view_privacy [1]['id']) }}">
<span>Edit Details</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">
<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>
{!! $view_privacy[1]['description'] !!}
</p> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@@ -12,7 +12,7 @@
<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('privacy')}}">
href="{{ route('manage.privacy')}}">
<img class="back-btn" src="{{ asset('public/assets/img/left-arrow.svg')}}">
<h6 class="card-title p-0">Edit Details for customer</h6>
</a>
@@ -30,7 +30,7 @@
<div class="row">
<div class="col-md-12">
<input type="hidden" name="privacy_custom_id" value="{{ $edit_privacy_policy['id'] }}">
<div id="terms-quill-edit" value="{{ $edit_privacy_policy['description'] }}" name="privacy_policy" class="editor-quill" style="height: 300px;">{!! $edit_privacy_policy['description'] !!}</div>
<div id="terms-quill-edit" value="{{ $edit_privacy_policy['description'] }}" name="privacy_policy" class="editor-quill" style="height: 300px;" minlength="10">{!! $edit_privacy_policy['description'] !!}</div>
<input type="hidden" id="privacy_policy" name="privacy_policy" value="{{ $edit_privacy_policy['description'] }}" />
</div>
<div class="col-md-12">
@@ -40,6 +40,7 @@
</div>
</div>
</form>
</div>
</div>
</div>

View File

@@ -0,0 +1,91 @@
@extends('admin.layouts.master')
@section('content')
@php
$currentPage = 'manage_cms';
@endphp
<style>
.error-message {
color: #FF0000;
}
form .error-message {
color: red;
/* Set your desired color here */
}
form .input_class.error-message {
color: #0e1726;
}
</style>
<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.privacy')}}">
<img class="back-btn" src="{{ asset('public/assets/img/left-arrow.svg')}}">
<h6 class="card-title p-0">Edit Details for resturant</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">
<form id="privacy_policy_form_rest">
<div class="row">
<div class="col-md-12">
<input type="hidden" name="privacy_rest_id" value="{{ $edit_privacy_policy_rest['id'] }}">
<div id="terms-quill-edit" name="edit_privacy_policy_rest" class="editor-quill" style="height: 300px;" minlength="10">{!! $edit_privacy_policy_rest['description'] !!}</div>
<input type="hidden" id="edit_privacy_policy_rest" name="edit_privacy_policy_rest" value="{{ $edit_privacy_policy_rest['description'] }}" />
</div>
<div class="col-md-12">
<button id="update_privacy_policy_rest" class="download-btn-custom mt-3 custom-width-10" >
<span>Update</span>
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- END MAIN CONTAINER -->
@endsection
@section('section_script')
<script>
var quill = new Quill('#terms-quill-edit', {
theme: 'snow'
});
// Listen for changes and update the hidden input with the HTML content
quill.on('text-change', function() {
var htmlContent = quill.root.innerHTML;
document.getElementById('edit_privacy_policy_rest').value = htmlContent;
});
</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_privacy_policy/privacy_policy.js')}}"></script>
@endsection

View File

@@ -7,89 +7,95 @@ $currentPage = 'manage-patient';
<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-4">
<h6 class="card-title">Manage Customers</h6>
</div>
<div class="col-md-8">
</div>
</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-4">
<h6 class="card-title">Manage Customers</h6>
</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" style="overflow: auto;">
<table id="zero-config" class="table dt-table-hover" style="width:100%">
<thead class="text-center">
<th class="w-10px pe-2">
<div class="form-check form-check-sm form-check-custom form-check-solid me-3">
<input class="form-check-input" type="checkbox" data-kt-check="true"
data-kt-check-target="#kt_table_users .form-check-input" value="1" />
</div>
</th>
<th class="text-start">Sr no</th>
<th class="text-start">Full Name</th>
<th class="text-start">User ID</th>
<th class="text-start">Email Id</th>
<th class="text-start">Date of birth</th>
<th class="text-start">Phone Number</th>
<th class="text-start">Location</th>
<th class="text-start">Passports</th>
<div class="col-md-8">
<th class="no-content">Action</th>
</tr>
</thead>
<tbody class="text-center">
<tr>
<td>
<div class="form-check form-check-sm form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" value="1" />
</div>
</td>
<td class="text-start">1</td>
<td class="text-start">Akanksha Surve</td>
<td class="text-start">1234567</td>
<td class="text-start">akanksha@gmail.com</td>
<td class="text-start">08/22/2023</td>
<td class="text-start">+5624878954</td>
<td class="text-start">New York</td>
<td class="text-start">
<a class="view-btn" href="passports.php">View</a>
</td>
<td>
<div class="dropout">
<button class="more">
<span></span>
<span></span>
<span></span>
</button>
<ul>
<li>
<a href="view-customer.php">
<img src="../src/assets/img/view.svg" />
<span>View</span>
</a>
</li>
<li>
<a href="" data-toggle="modal" data-target="#archive-modal">
<img src="../src/assets/img/archive.svg" />
<span>Archive</span>
</a>
</li>
<li>
<a href="edit-manage-customers.php">
<img src="../src/assets/img/edit.svg" />
<span>Edit</span>
</a>
</li>
</ul>
</div>
</td>
</tr>
<tr>
</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" style="overflow: auto;">
<table id="zero-config" class="table dt-table-hover" style="width:100%">
<thead class="text-center">
<th class="w-10px pe-2">
<div class="form-check form-check-sm form-check-custom form-check-solid me-3">
<input class="form-check-input" type="checkbox" data-kt-check="true" data-kt-check-target="#kt_table_users .form-check-input" value="1" />
</div>
</th>
<th class="text-start">Sr no</th>
<th class="text-start">Full Name</th>
<th class="text-start">User ID</th>
<th class="text-start">Email Id</th>
<th class="text-start">Date of birth</th>
<th class="text-start">Phone Number</th>
<th class="text-start">Location</th>
<th class="text-start">Passports</th>
<th class="no-content">Action</th>
</tr>
</thead>
<tbody class="text-center">
@foreach ($customers as $customer)
<tr>
<td>
<div class="form-check form-check-sm form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" id="customer_checkbox_ids" name="customer_ids" value="{{ $customer->id }}" />
</div>
</td>
<td class="text-start">{{ $loop->iteration }}</td>
<td class="text-start">{{ $customer->first_name }}</td>
<td class="text-start">{{ $customer->id }}</td>
<td class="text-start">{{ $customer->address_line1 }}</td>
<td class="text-start">{{ $customer->email_address }}</td>
<td>{{ \Carbon\Carbon::parse($customer->date_of_birth)->format('d/m/Y') }}</td>
<td class="text-start">{{ $customer->phone_number }}</td>
<td class="text-start">{{ $customer->activePassportCount }}</td>
<td class="text-start">
<a class="view-btn" href="{{ url('/manage_customer_passport/' . $customer->id) }}">View</a>
</td>
<td>
<div class="dropout">
<button class="more">
<span></span>
<span></span>
<span></span>
</button>
<ul>
<li>
<a href="{{ url('/manage_customer_view/' . $customer->id) }}">
<img src="{{ asset('public/assets/img/view.svg') }}" />
<span>View</span>
</a>
</li>
<li>
<a class="cust_archive_btn" data-id="{{ $customer->id }}" data-toggle="modal" data-target="#archive-modal">
<img src="{{ asset('public/assets/img/archive.svg') }}" />
<span>Archive</span>
</a>
</li>
<li>
<a href="{{ url('/manage_customer_edit/' . $customer->id) }}">
<img src="{{ asset('public/assets/img/edit.svg') }}" />
<span>Edit</span>
</a>
</li>
</ul>
</div>
</td>
</tr>
@endforeach
<!-- <tr>
<td>
<div class="form-check form-check-sm form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" value="1" />
@@ -134,8 +140,8 @@ $currentPage = 'manage-patient';
</ul>
</div>
</td>
</tr>
<tr>
</tr> -->
<!-- <tr>
<td>
<div class="form-check form-check-sm form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" value="1" />
@@ -180,8 +186,8 @@ $currentPage = 'manage-patient';
</ul>
</div>
</td>
</tr>
<tr>
</tr> -->
<!-- <tr>
<td>
<div class="form-check form-check-sm form-check-custom form-check-solid">
<input class="form-check-input" type="checkbox" value="1" />
@@ -226,15 +232,15 @@ $currentPage = 'manage-patient';
</ul>
</div>
</td>
</tr>
</tr> -->
</tbody>
</table>
</div>
</div>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
@endsection
@@ -247,7 +253,10 @@ $currentPage = 'manage-patient';
"<'table-responsive'tr>" +
"<'dt--bottom-section d-sm-flex justify-content-sm-between text-center'<'dt--pages-count mb-sm-0 mb-3'i><'dt--pagination'p>>",
"oLanguage": {
"oPaginate": { "sPrevious": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-left"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg>', "sNext": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-right"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg>' },
"oPaginate": {
"sPrevious": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-left"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg>',
"sNext": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-right"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg>'
},
"sInfo": "Showing page _PAGE_ of _PAGES_",
"sSearch": '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>',
"sSearchPlaceholder": "Search...",
@@ -259,8 +268,8 @@ $currentPage = 'manage-patient';
});
</script>
<script>
$(document).ready(function () {
$(document).ready(function() {
$('<button><a class="extra-btn width-max-content" href="archive-manage-customers.php">View Archive List</a></button><button><ul class="navbar-item flex-row ms-lg-auto ms-0"><li class="nav-item dropdown action-dropdown order-lg-0 order-1"><a href="javascript:void(0);"class="nav-link dropdown-toggle user extra-btn" id="actionDropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><div class="avatar-container"><div class="avatar avatar-sm avatar-indicators avatar-online"><h3>Export</h3></div></div></a><div class="dropdown-menu position-absolute" aria-labelledby="actionDropdown"><div class="dropdown-item"><a href="#"><span>Download Overview</span></a></div><div class="dropdown-item"><a href="#"><span>Download Patient Data</span></a></div><div class="dropdown-item"><a href="#"> <span>Download Selected</span></a></div></div></li></ul></button>').insertBefore("#zero-config_filter label");
});
</script>
@endsection
@endsection

View File

@@ -19,6 +19,7 @@ use App\Http\Controllers\Admin\ManageFeedbackController;
use App\Http\Controllers\Admin\ManageNotificationsController;
use App\Http\Controllers\Admin\DashboardController ;
use App\Http\Controllers\Admin\LoginController;
use App\Http\Controllers\Admin\ManageCmsController;
Route::get('/', [LoginController::class, 'index'])->name('login');
Route::post('/check_login', [LoginController::class, 'login_check']);
@@ -53,6 +54,8 @@ Route::get('/manage-vouchers', [ManageVouchersController ::class, 'index'])->nam
//*******************************************************manage contact********************************************************
Route::get('/manage-contact', [ManageContactUsController ::class, 'index'])->name('manage.contact');
//*******************************************************manage cms********************************************************
Route::get('/manage-cms', [ManageCmsController::class, 'index'])->name('manage.cms');
//*******************************************************manage new&article********************************************************
Route::get('/manage-new-articles', [ManageNewsAndArticlesController ::class, 'index'])->name('manage.Newarticles');
Route::get('/change-article-Status', [ManageNewsAndArticlesController::class, 'change_news_article_Status']);
@@ -71,6 +74,8 @@ Route::post('/insert_about_us', [AboutUsController::class, 'insert']);
Route::get('/manage-about-us', [AboutUsController ::class, 'index'])->name('manage.aboutUs');
Route::get('/about_us_edit/{id}', [AboutUsController::class, 'edit'])->name('about_us_edit');
Route::get('/about_us_rest/{id}', [PrivacyPolicyController::class, 'edit_rest'])->name('aboutusRestEdit');
Route::post('/about_us_update', [AboutUsController::class, 'update']);
Route::delete('/delete_about/{id}', [AboutUsController::class, 'delete_about']);
Route::get('/change_Status', [AboutUsController::class, 'change_about_Status']);
@@ -93,6 +98,10 @@ Route::post('/insert_about_us', [AboutUsController::class, 'insert']);
//*******************************************************manage privacypolicy********************************************************
Route::get('/privacy', [ PrivacyPolicyController ::class, 'index'])->name('manage.privacy');
Route::get('/privacy_edit/{id}', [PrivacyPolicyController::class, 'edit'])->name('privacy_edit');
Route::get('/privacy_edit_rest/{id}', [PrivacyPolicyController::class, 'edit_rest'])->name('privacy_edit_rest');
Route::post('/privacy_policy_update', [PrivacyPolicyController::class, 'update']);
Route::post('/privacy_policy_update_rest', [PrivacyPolicyController::class, 'update_rest']);
//*******************************************************manage reports********************************************************
Route::get('/manage-reports', [ ManageReportsController ::class, 'index'])->name('manage.reports');