Files
gsf/app/Http/Controllers/Admin/ManageCmsNewsAndArticleController.php

224 lines
8.4 KiB
PHP
Raw Normal View History

2024-08-09 17:11:41 +05:30
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\ManageNewsArticles;
use App\Models\NewsArticlesCategory;
use Illuminate\Support\Facades\Validator;
class ManageCmsNewsAndArticleController extends Controller
{
public function create(){
$data['category'] = NewsArticlesCategory::with('articles')->get();
// dd($data);
$data['article'] = ManageNewsArticles::all();
return view('Admin.Pages.manage_cms.news_and_articles.manage_cms_news_article',$data);
}
public function add_manage_cms_news_article(){
$data['category'] = NewsArticlesCategory::all();
return view('Admin.Pages.manage_cms.news_and_articles.add_news_article',$data);
}
public function edit_manage_cms_news_article($id){
$data['category'] = NewsArticlesCategory::get();
$data['article'] = ManageNewsArticles::where('id',$id)->first();
// dd($data);
return view('Admin.Pages.manage_cms.news_and_articles.edit_news_and_articles',$data);
}
//Category Start from here
public function addCategoriesData(Request $request){
// dd($request->all());
$category = NewsArticlesCategory::create(['category_name'=>$request->categoryName]);
if($category){
return response()->json([
'messages' => "Categories Is Added Successfully",
'success' => true,
'status' => 200]);
}
}
public function editCategoriesData(Request $request){
$updatecategory = NewsArticlesCategory::where('id',$request->editCatId)->update(['category_name'=>$request->editCatName]);
if($updatecategory){
return response()->json([
'messages' => "Categories Is Updated Successfully",
'success' => true,
'status' => 200]);
}
}
public function deleteCategoriesData(Request $request){
$deleteCat = NewsArticlesCategory::where('id',$request->deleteId)->delete();
if($deleteCat){
return response()->json([
'messages' => "Category Is Deleted successfully",
'success' => true,
'status' => 200]);
}
}
public function updatCatStatus(Request $request){
$status = NewsArticlesCategory::where('id',$request->catId)->update(['is_active'=> $request->status]);
return response()->json([
'messages' => "Status Updated Successfully",
'success' => true,
'status' => 200]);
}
//Category End from here
//Article Starts Here
public function addArticleData(Request $request){
$addArticle = new ManageNewsArticles;
// $rules = [
// 'articleThumbnailImage' => 'required|file|max:1000', // 400 KB
// ];
// $validator = Validator::make($request->all(),$rules);
// if ($validator->fails()) {
// if ($request->expectsJson()) {
// return response()->json(['success' => false , 'status' => 422,'message'=>'Image should be Less Than 1 MB']);
// }
// }else {
// $file = $request->file('articleThumbnailImage');
// $ext = $file->extension();
// $file_name = time() . '.' . $ext;
// $path = public_path() . '/uploads/news_articles/thumbnail_image';
// $file->move($path, $file_name);
// $addArticle->thumbnail_path = url('/public/uploads/news_articles/thumbnail_image/' . $file_name);
// }
$rules = [
'articleImage' => 'required|file|max:1000', // 400 KB
];
$validator = Validator::make($request->all(),$rules);
if ($validator->fails()) {
if ($request->expectsJson()) {
return response()->json(['success' => false , 'status' => 422,'message'=>'Image should be Less Than 1 MB']);
}
}else {
$file = $request->file('articleImage');
$ext = $file->extension();
$file_name = time() . '.' . $ext;
$path = public_path() . '/uploads/news_articles/image';
$file->move($path, $file_name);
$addArticle->image_upload = url('/public/uploads/news_articles/image/' . $file_name);
}
$addArticle->category_id = $request->articleCatId;
$addArticle->article_name = $request->articleName;
$addArticle->short_text = $request->articleShortText;
$addArticle->description = $request->articleDescription;
// $addArticle->video_url = $request->articleUrl;
// $addArticle->tags = $request->articleTags;
$addArticle->save();
if($addArticle){
return response()->json([
'messages' => "Article Added Successfully",
'success' => true,
'status' => 200]);
}
}
public function editArticleData(Request $request){
// dd($request->all());
$editArticle = ManageNewsArticles::find($request->articleId);
// dd($editArticle);
// if($request->file('articleThumbnailImage')){
// $rules = [
// 'articleThumbnailImage' => 'required|file|max:1000', // 400 KB
// ];
// $validator = Validator::make($request->all(),$rules);
// if ($validator->fails()) {
// if ($request->expectsJson()) {
// return response()->json(['success' => false , 'status' => 422,'message'=>'Image should be Less Than 2 MB']);
// }
// }else {
// $file = $request->file('articleThumbnailImage');
// $ext = $file->extension();
// $file_name = time() . '.' . $ext;
// $path = public_path() . '/uploads/news_articles/thumbnail_image';
// $file->move($path, $file_name);
// $editArticle->thumbnail_path = url('/public/uploads/news_articles/thumbnail_image/' . $file_name);
// }
// }
if($request->file('articleImage')){
$rules = [
'articleImage' => 'required|file|max:1000', // 400 KB
];
$validator = Validator::make($request->all(),$rules);
if ($validator->fails()) {
if ($request->expectsJson()) {
return response()->json(['success' => false , 'status' => 422,'message'=>'Image should be Less Than 1 MB']);
}
}else {
$file = $request->file('articleImage');
$ext = $file->extension();
$file_name = time() . '.' . $ext;
$path = public_path() . '/uploads/news_articles/image';
$file->move($path, $file_name);
$editArticle->image_upload = url('/public/uploads/news_articles/image/' . $file_name);
}
}
$editArticle->category_id = $request->articleCatId;
$editArticle->article_name = $request->articleName;
$editArticle->short_text = $request->articleShortText;
$editArticle->description = $request->articleDescription;
// $editArticle->video_url = $request->articleUrl;
// $editArticle->tags = $request->articleTags;
$editArticle->save();
if($editArticle){
return response()->json([
'messages' => "Article Added Successfully",
'success' => true,
'status' => 200]);
}
}
public function updatArticleStatus(Request $request){
// dd($request->all());
$status = ManageNewsArticles::where('id',$request->catId)->update(['is_active'=> $request->status]);
return response()->json([
'messages' => "Status Updated Successfully",
'success' => true,
'status' => 200]);
}
public function deleteArticlesData(Request $request){
$deleteCat = ManageNewsArticles::where('id',$request->deleteId)->delete();
if($deleteCat){
return response()->json([
'messages' => "Category Is Deleted successfully",
'success' => true,
'status' => 200]);
}
}
//Article ends Here
}