49 lines
1.0 KiB
PHP
49 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Services\Admin;
|
|
|
|
use App\Models\Admin\Tag;
|
|
use App\Models\Admin\Blog;
|
|
use Illuminate\Support\Facades\File;
|
|
|
|
class BlogService
|
|
{
|
|
|
|
public function getAllBlogs(){
|
|
return Blog::with('tag')->get();
|
|
}
|
|
|
|
public function getAllTags(){
|
|
return Tag::all();
|
|
}
|
|
|
|
public function store($request){
|
|
return Blog::create($request->validated());
|
|
}
|
|
|
|
public function show($id){
|
|
return Blog::with('tag')->where('id', $id)->first();
|
|
}
|
|
|
|
public function getBlog($id){
|
|
return Blog::findOrFail($id);
|
|
}
|
|
|
|
public function update($request){
|
|
return Blog::where('id', $request->blog_id)->update($request->validated());
|
|
}
|
|
|
|
public function delete($id){
|
|
return Blog::where('id',$id)->delete();
|
|
}
|
|
|
|
public function deleteFile($blog){
|
|
$image= public_path($blog->blog_image);
|
|
File::delete($image);
|
|
}
|
|
|
|
public function updateStatus($request){
|
|
return Blog::where('id', $request->id)->update(['is_active' => $request->status == 1 ? 0 : 1]);
|
|
}
|
|
}
|