From d85b5a36626896f82dfe1ce2eb91a59b4f99de0a Mon Sep 17 00:00:00 2001 From: Subash Date: Wed, 9 Jul 2025 17:54:32 +0545 Subject: [PATCH] landing page completed --- app/Helpers/CCMS.php | 18 ++ app/Http/Controllers/BannerController.php | 196 +++++++++++++++ app/Http/Controllers/WebsiteController.php | 2 + app/Models/Banners.php | 52 ++++ .../views/backend/enquiries-list.blade.php | 6 +- resources/views/backend/sidebar.blade.php | 1 + .../crud/generated/banner/create.blade.php | 167 +++++++++++++ .../crud/generated/banner/edit.blade.php | 233 ++++++++++++++++++ .../crud/generated/banner/index.blade.php | 231 +++++++++++++++++ .../crud/generated/banner/show.blade.php | 29 +++ resources/views/landing/index.blade.php | 209 +++++++++++----- routes/CRUDgenerated/route.banner.php | 15 ++ routes/web.php | 1 + storage/app/public/files/1/676540a0d26a6.jpg | Bin 0 -> 316395 bytes storage/app/public/files/1/676d028dc4cc1.jpg | Bin 0 -> 286253 bytes storage/app/public/files/1/676d030f74195.jpg | Bin 0 -> 285302 bytes storage/app/public/files/1/686775da614b2.png | Bin 0 -> 1011337 bytes ...ChatGPT Image Jul 9, 2025, 04_19_04 PM.png | Bin 0 -> 1836223 bytes ...ChatGPT Image Jul 9, 2025, 04_25_00 PM.png | Bin 0 -> 1727144 bytes ...ChatGPT Image Jul 9, 2025, 04_44_14 PM.png | Bin 0 -> 2195319 bytes ...c828d318fe87e_1695895701newzealand=34d.jpg | Bin 0 -> 219691 bytes storage/app/public/files/1/final.png | Bin 0 -> 308591 bytes storage/app/public/files/1/finalrohini.png | Bin 0 -> 397265 bytes ...6ChatGPTImageJul92025042500PMPhotoroom.png | Bin 0 -> 270585 bytes ...7ChatGPTImageJul92025042500PMPhotoroom.png | Bin 0 -> 250276 bytes storage/app/public/files/1/rohini-banner.png | Bin 0 -> 395240 bytes ...aland-for-international-students-png62.png | Bin 0 -> 1060696 bytes 27 files changed, 1097 insertions(+), 63 deletions(-) create mode 100644 app/Http/Controllers/BannerController.php create mode 100644 app/Models/Banners.php create mode 100644 resources/views/crud/generated/banner/create.blade.php create mode 100644 resources/views/crud/generated/banner/edit.blade.php create mode 100644 resources/views/crud/generated/banner/index.blade.php create mode 100644 resources/views/crud/generated/banner/show.blade.php create mode 100644 routes/CRUDgenerated/route.banner.php create mode 100644 storage/app/public/files/1/676540a0d26a6.jpg create mode 100644 storage/app/public/files/1/676d028dc4cc1.jpg create mode 100644 storage/app/public/files/1/676d030f74195.jpg create mode 100644 storage/app/public/files/1/686775da614b2.png create mode 100644 storage/app/public/files/1/ChatGPT Image Jul 9, 2025, 04_19_04 PM.png create mode 100644 storage/app/public/files/1/ChatGPT Image Jul 9, 2025, 04_25_00 PM.png create mode 100644 storage/app/public/files/1/ChatGPT Image Jul 9, 2025, 04_44_14 PM.png create mode 100644 storage/app/public/files/1/blog_e4c9328ffc109f977bfc828d318fe87e_1695895701newzealand=34d.jpg create mode 100644 storage/app/public/files/1/final.png create mode 100644 storage/app/public/files/1/finalrohini.png create mode 100644 storage/app/public/files/1/resize-17520580721067492676ChatGPTImageJul92025042500PMPhotoroom.png create mode 100644 storage/app/public/files/1/resize-17520582502052348127ChatGPTImageJul92025042500PMPhotoroom.png create mode 100644 storage/app/public/files/1/rohini-banner.png create mode 100644 storage/app/public/files/1/study-in-new-zealand-for-international-students-png62.png diff --git a/app/Helpers/CCMS.php b/app/Helpers/CCMS.php index 586b6a9..1726284 100644 --- a/app/Helpers/CCMS.php +++ b/app/Helpers/CCMS.php @@ -1514,6 +1514,24 @@ CREATE TABLE IF NOT EXISTS `tbl_visa_grants` ( `updated_at` timestamp NULL DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 '); + + DB::statement(' +CREATE TABLE IF NOT EXISTS `tbl_banners` ( + `banner_id` int(11) AUTO_INCREMENT PRIMARY KEY, + `display` varchar(255) NULL DEFAULT NULL, + `title` varchar(250) NULL DEFAULT NULL, + `text` text NULL DEFAULT NULL, + `extra_content` LONGTEXT NULL DEFAULT NULL, + `cover` varchar(255) NULL DEFAULT NULL, + `display_order` int(11) NOT NULL DEFAULT 1, + `status` int(11) NOT NULL DEFAULT 1, + `createdby` int(11) DEFAULT NULL, + `updatedby` int(11) DEFAULT NULL, + `created_at` timestamp NULL DEFAULT NULL, + `updated_at` timestamp NULL DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 +'); + if (!(DB::table('users')->first())) { DB::statement("INSERT INTO `tbl_users` (`id`, `name`, `email`, `username`, `email_verified_at`, `status`, `password`, `is_admin`, `remember_token`, `created_at`, `updated_at`) VALUES (1, 'Prajwal Adhikari', 'prajwalbro@hotmail.com', 'prajwalbro@hotmail.com', '2024-04-18 09:59:01', 1, '$2y$10$3zlF9VeXexzWKRDPZuDio.W7RZIC3tU.cjwMoLzG8ki8bVwAQn1WW', 1, NULL, '2024-04-18 09:58:39', '2024-04-18 09:58:46');"); diff --git a/app/Http/Controllers/BannerController.php b/app/Http/Controllers/BannerController.php new file mode 100644 index 0000000..f9f8720 --- /dev/null +++ b/app/Http/Controllers/BannerController.php @@ -0,0 +1,196 @@ +modelService = new CommonModelService($model); + } + public function index(Request $request) + { + createActivityLog(BannerController::class, 'index', ' Banners index'); + $data = Banners::where('status', '<>', -1)->orderBy('display_order')->get(); + + return view("crud.generated.banner.index", compact('data')); + } + + public function create(Request $request) + { + createActivityLog(BannerController::class, 'create', ' Banners create'); + $TableData = Banners::where('status', '<>', -1)->orderBy('display_order')->get(); + return view("crud.generated.banner.create", compact('TableData')); + } + + public function store(Request $request) + { + createActivityLog(BannerController::class, 'store', ' Banners store'); + $validator = Validator::make($request->all(), [ + //ADD REQUIRED FIELDS FOR VALIDATION + ]); + + if ($validator->fails()) { + return response()->json([ + 'error' => $validator->errors(), + ], 500); + } + $request->request->add(['alias' => slugify($request->title)]); + $request->request->add(['display_order' => getDisplayOrder('tbl_banners')]); + $requestData = $request->all(); + array_walk_recursive($requestData, function (&$value) { + $value = str_replace(env('APP_URL') . '/', '', $value); + }); + array_walk_recursive($requestData, function (&$value) { + $value = str_replace(env('APP_URL'), '', $value); + }); + DB::beginTransaction(); + try { + $operationNumber = getOperationNumber(); + $this->modelService->create($operationNumber, $operationNumber, null, $requestData); + } catch (\Exception $e) { + DB::rollBack(); + Log::info($e->getMessage()); + createErrorLog(BannerController::class, 'store', $e->getMessage()); + return response()->json(['status' => false, 'message' => $e->getMessage()], 500); + } + DB::commit(); + if ($request->ajax()) { + return response()->json(['status' => true, 'message' => 'The Banners Created Successfully.'], 200); + } + return redirect()->route('banner.index')->with('success', 'The Banners created Successfully.'); + } + + public function sort(Request $request) + { + $idOrder = $request->input('id_order'); + + foreach ($idOrder as $index => $id) { + $companyArticle = Banners::find($id); + $companyArticle->display_order = $index + 1; + $companyArticle->save(); + } + + return response()->json(['status' => true, 'content' => 'The articles sorted successfully.'], 200); + } + public function updatealias(Request $request) + { + + $articleId = $request->input('articleId'); + $newAlias = $request->input('newAlias'); + $companyArticle = Banners::find($articleId); + if (!$companyArticle) { + return response()->json(['status' => false, 'content' => 'Company article not found.'], 404); + } + $companyArticle->alias = $newAlias; + $companyArticle->save(); + return response()->json(['status' => true, 'content' => 'Alias updated successfully.'], 200); + } + + + + + public function show(Request $request, $id) + { + createActivityLog(BannerController::class, 'show', ' Banners show'); + $data = Banners::findOrFail($id); + + return view("crud.generated.banner.show", compact('data')); + } + + + public function edit(Request $request, $id) + { + createActivityLog(BannerController::class, 'edit', ' Banners edit'); + $TableData = Banners::where('status', '<>', -1)->orderBy('display_order')->get(); + $data = Banners::findOrFail($id); + if ($request->ajax()) { + $html = view("crud.generated.banner.ajax.edit", compact('data'))->render(); + return response()->json(['status' => true, 'content' => $html], 200); + } + return view("crud.generated.banner.edit", compact('data', 'TableData')); + } + + + public function update(Request $request, $id) + { + createActivityLog(BannerController::class, 'update', ' Banners update'); + $validator = Validator::make($request->all(), [ + //ADD VALIDATION FOR REQIRED FIELDS + ]); + + if ($validator->fails()) { + return response()->json([ + 'error' => $validator->errors(), + ], 500); + } + $requestData = $request->all(); + array_walk_recursive($requestData, function (&$value) { + $value = str_replace(env('APP_URL') . '/', '', $value); + }); + array_walk_recursive($requestData, function (&$value) { + $value = str_replace(env('APP_URL'), '', $value); + }); + DB::beginTransaction(); + try { + $OperationNumber = getOperationNumber(); + $this->modelService->update($OperationNumber, $OperationNumber, null, $requestData, $request->input('banner_id')); + } catch (Exception $e) { + DB::rollBack(); + Log::info($e->getMessage()); + createErrorLog(BannerController::class, 'update', $e->getMessage()); + return response()->json(['status' => false, 'message' => $e->getMessage()], 500); + } + DB::commit(); + if ($request->ajax()) { + return response()->json(['status' => true, 'message' => 'The Banners updated Successfully.'], 200); + } + // return redirect()->route('banner.index')->with('success','The Banners updated Successfully.'); + return redirect()->back()->with('success', 'The Banners updated successfully.'); + } + + public function destroy(Request $request, $id) + { + createActivityLog(BannerController::class, 'destroy', ' Banners destroy'); + DB::beginTransaction(); + try { + $OperationNumber = getOperationNumber(); + $this->modelService->destroy($OperationNumber, $OperationNumber, $id); + } catch (Exception $e) { + DB::rollBack(); + Log::info($e->getMessage()); + createErrorLog(BannerController::class, 'destroy', $e->getMessage()); + return response()->json(['status' => false, 'message' => $e->getMessage()], 500); + } + DB::commit(); + return response()->json(['status' => true, 'message' => 'The Banners Deleted Successfully.'], 200); + } + public function toggle(Request $request, $id) + { + createActivityLog(BannerController::class, 'destroy', ' Banners destroy'); + $data = Banners::findOrFail($id); + $requestData = ['status' => ($data->status == 1) ? 0 : 1]; + DB::beginTransaction(); + try { + $OperationNumber = getOperationNumber(); + $this->modelService->update($OperationNumber, $OperationNumber, null, $requestData, $id); + } catch (Exception $e) { + DB::rollBack(); + Log::info($e->getMessage()); + createErrorLog(BannerController::class, 'destroy', $e->getMessage()); + return response()->json(['status' => false, 'message' => $e->getMessage()], 500); + } + DB::commit(); + return response()->json(['status' => true, 'message' => 'The Banners Deleted Successfully.'], 200); + } +} diff --git a/app/Http/Controllers/WebsiteController.php b/app/Http/Controllers/WebsiteController.php index 42a4115..70ff51b 100644 --- a/app/Http/Controllers/WebsiteController.php +++ b/app/Http/Controllers/WebsiteController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use App\Models\Articles; +use App\Models\Banners; use App\Models\Benefits; use App\Models\Blogs; use App\Models\Countries; @@ -43,6 +44,7 @@ class WebsiteController extends Controller public function home() { return view('landing.index', [ + 'banners' => Banners::get(), 'benefits' => Benefits::get(), 'success_stories' => Success_stories::get(), 'visa_grants' => Visa_grants::get(), diff --git a/app/Models/Banners.php b/app/Models/Banners.php new file mode 100644 index 0000000..b5b9382 --- /dev/null +++ b/app/Models/Banners.php @@ -0,0 +1,52 @@ +status == 1 ? ' Active ' : 'Inactive'; + } + + protected function createdBy(): Attribute + { + return Attribute::make( + get: fn($value) => User::find($value) ? User::find($value)->name : '', + ); + } + + protected function updatedBy(): Attribute + { + return Attribute::make( + get: fn($value) => User::find($value) ? User::find($value)->name : '', + ); + } +} diff --git a/resources/views/backend/enquiries-list.blade.php b/resources/views/backend/enquiries-list.blade.php index 07b96ec..117057c 100644 --- a/resources/views/backend/enquiries-list.blade.php +++ b/resources/views/backend/enquiries-list.blade.php @@ -42,11 +42,11 @@