PHP 8.3.30
Preview: BlogCategoryController.php Size: 2.74 KB
/home/getspomw/royalsquad.us/app/Http/Controllers/BlogCategoryController.php

<?php

namespace App\Http\Controllers;

use App\Models\Blog;
use App\Models\BlogCategory;
use Illuminate\Http\Request;

class BlogCategoryController extends Controller
{
    /**
     * Display a listing of blog categories.
     */
    public function index(Request $request)
    {
        $categories = BlogCategory::orderBy('category_name', 'asc')->get();
        return view('admin.blog.category.index', compact('categories'));
    }

    /**
     * Store a new blog category in the database.
     */
    public function store(Request $request)
    {
        $request->validate([
            'category_name' => 'required|max:255',
        ]);

       
        $slug = preg_replace('/[^A-Za-z0-9\-]/', '', str_replace(' ', '-', $request->category_name));

        $category = new BlogCategory;
        $category->category_name = $request->category_name;
        $category->slug = strtolower($slug);
        $category->save();

        return redirect()->route('blog-category')->with('success', 'Blog category has been created successfully');
    }

    /**
     * Show the form for editing a specific blog category.
     */
    public function edit($id)
    {
        $categories = BlogCategory::find($id);
        $all_categories = BlogCategory::all();
        return view('admin.blog.category.edit', compact('categories', 'all_categories'));
    }

    /**
     * Update a specific blog category in the database.
     */
    public function update(Request $request, $id)
    {
        $request->validate([
            'category_name' => 'required|max:255',
        ]);

        
        $slug = preg_replace('/[^A-Za-z0-9\-]/', '', str_replace(' ', '-', $request->category_name));

        $category = BlogCategory::find($id);
        $category->category_name = $request->category_name;
        $category->slug = strtolower($slug);
        $category->save();

        return redirect()->route('blog-category')->with('success', 'Blog category has been updated successfully');
    }

    /**
     * Delete a specific blog category from the database.
     */
    public function destroy($id)
    {
        BlogCategory::find($id)->delete();
        return redirect()->route('blog-category')->with('success', 'Blog category has been deleted successfully');
    }

    /**
     * Display blogs under a specific category for the frontend.
     */
    public function blogs_category($slug)
    {
        $blog_category = BlogCategory::where('slug', $slug)->first();

       
        if ($blog_category) {
            $blogs = Blog::where('category_id', $blog_category->id)->get();
        }

    
        $blog_categories = BlogCategory::all();
        $blogs_f = Blog::take(4)->get();

        return view('frontend.category.details', compact('blog_category', 'blogs', 'blogs_f', 'blog_categories'));
    }
}

Directory Contents

Dirs: 0 × Files: 12

Name Size Perms Modified Actions
2.85 KB lrw-rw-rw- 2025-09-18 05:50:45
Edit Download
315 B lrw-rw-rw- 2025-09-17 06:52:53
Edit Download
2.74 KB lrw-rw-rw- 2025-09-17 06:52:53
Edit Download
6.83 KB lrw-rw-rw- 2025-09-17 06:52:53
Edit Download
4.65 KB lrw-rw-rw- 2026-02-09 06:01:39
Edit Download
77 B lrw-rw-rw- 2025-09-17 06:52:53
Edit Download
2.80 KB lrw-rw-rw- 2025-09-18 05:51:38
Edit Download
616 B lrw-r--r-- 2026-04-19 15:59:24
Edit Download
3.58 KB lrw-rw-rw- 2025-09-18 05:56:23
Edit Download
1.48 KB lrw-rw-rw- 2025-09-17 06:52:53
Edit Download
8.60 KB lrw-rw-rw- 2025-09-18 05:56:47
Edit Download
8.22 KB lrw-rw-rw- 2026-02-09 07:03:26
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).