Uname: Linux peekpos.com 6.8.0-1060-aws #63~22.04.1-Ubuntu SMP Tue Jun 30 02:32:53 UTC 2026 x86_64
Software: Apache
PHP version: 8.3.25 [ PHP INFO ] PHP os: Linux
Server Ip: 47.130.192.226
Your Ip: 10.3.134.78
User: www (1001) | Group: www (1001)
Safe Mode: OFF
Disable Function:
passthru,putenv,chroot,chgrp,chown,shell_exec,popen,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv

name : BlogController.php
<?php

namespace App\Http\Controllers\addons\included;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Helpers\helper;
use App\Models\Blogs;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Str;

class BlogController extends Controller
{
    // blogs
    public function blogs_index(Request $request)
    {
        $getblogs = Blogs::orderBy('reorder_id')->get();
        return view('admin.included.blogs.index', compact('getblogs'));
    }
    public function blogs_add()
    {
        return view('admin.included.blogs.add');
    }
    public function blogs_store(Request $request)
    {
        $validator = Validator::make($request->all(), [
            'image' => 'image|max:' . helper::imagesize() . '|' . helper::imageext(),
        ], [
            'image.max' => trans('messages.image_size_message'),
        ]);
        if ($validator->fails()) {
            return redirect()->back()->with('error', trans('messages.image_size_message') . ' ' . helper::appdata('')->image_size . ' ' . 'MB');
        } else {
            $image = 'blog-' . uniqid() . '.' . $request->image->getClientOriginalExtension();
            $request->image->move(env('ASSETSPATHURL') . 'admin-assets/images/about', $image);
            $blog = new Blogs;
            $blog->image = $image;
            $blog->title = $request->title;
            $blog->slug = $this->getblogslug($request->title, '');
            $blog->description = $request->description;
            $blog->save();
            return redirect('admin/blogs')->with('success', trans('messages.success'));
        }
    }
    public function blogs_show(Request $request)
    {
        $blogdata = Blogs::find($request->id);
        return view('admin.included.blogs.edit', compact('blogdata'));
    }
    public function blogs_update(Request $request)
    {
        $validator = Validator::make($request->all(), [
            'image' => 'image|max:' . helper::imagesize() . '|' . helper::imageext(),
        ], [
            'image.max' => trans('messages.image_size_message'),
        ]);
        if ($validator->fails()) {
            return redirect()->back()->with('error', trans('messages.image_size_message') . ' ' . helper::appdata('')->image_size . ' ' . 'MB');
        } else {
            $blog = Blogs::find($request->id);
            if ($request->file('image') != "") {

                if (file_exists(storage_path() . "/app/public/admin-assets/images/about/" . $blog->image)) {
                    unlink(storage_path() . "/app/public/admin-assets/images/about/" . $blog->image);
                }
                $image = 'blog-' . uniqid() . '.' . $request->image->getClientOriginalExtension();
                $request->image->move(env('ASSETSPATHURL') . 'admin-assets/images/about', $image);
                $blog->image = $image;
                $blog->save();
            }
            $blog->title = $request->title;
            $blog->slug = $this->getblogslug($request->title, $request->id);
            $blog->description = $request->description;
            $blog->save();
            return redirect('admin/blogs')->with('success', trans('messages.success'));
        }
    }
    public function blogs_delete(Request $request)
    {
        $blog = Blogs::find($request->id);
        if (file_exists(storage_path() . "/app/public/admin-assets/images/about/" . $blog->image)) {
            unlink(storage_path() . "/app/public/admin-assets/images/about/" . $blog->image);
        }
        if ($blog->delete()) {
            return 1;
        } else {
            return 0;
        }
    }
    public function getblogslug($title, $id)
    {
        $slug = Str::slug($title, '-');
        $checkslug = Blogs::where('slug', $slug);
        if ($id != "") {
            $checkslug = $checkslug->where('id', '!=', $id);
        }
        $checkslug = $checkslug->first();
        if (!empty($checkslug)) {
            $slug .= '-' . Blogs::select('id')->orderByDesc('id')->first()->id;
        }
        return $slug;
    }

    public function reorder_blogs(Request $request)
    {
        $getcategory = Blogs::all();

        foreach ($getcategory as $slider) {
            foreach ($request->order as $order) {

                $ct = Blogs::where('id', $order['id'])->first();
                $ct->reorder_id = $order['position'];
                $ct->save();
            }
        }
        return response()->json(['status' => 1, 'msg' => 'Update Successfully!!'], 200);
    }
    // blogs
    public function blogs(Request $request)
    {
        $getblogs = Blogs::orderBy('reorder_id')->get();
        return view('web.included.blogs.blogs', compact('getblogs'));
    }
    public function showblog(Request $request)
    {
        $getblogdata = Blogs::where('slug', $request->slug)->first();
        $recentblogs = Blogs::where('slug', '!=', $request->slug)->orderBy('reorder_id')->get();
        return view('web.included.blogs.blogdetails', compact('getblogdata', 'recentblogs'));
    }

    public function apiblogs(Request $request)
    {
        $getblogs = Blogs::select('id', 'title', 'description', \DB::raw('DATE_FORMAT(created_at, "%d-%m-%Y") as date'), \DB::raw("CONCAT('" . url(env('ASSETSPATHURL') . 'admin-assets/images/about') . "/', image) AS image_url"))->orderBy('reorder_id')->get();
        return response()->json(['status' => 1, 'message' => trans('messages.success'), 'data' => $getblogs], 200);
    }
    public function blogdetails(Request $request)
    {
        if ($request->id == "") {
            return response()->json(["status" => 0, "message" => trans('messages.id_required')], 200);
        }
        $getblogdata = Blogs::select('id', 'title', 'description', \DB::raw('DATE_FORMAT(created_at, "%d-%m-%Y") as date'), \DB::raw("CONCAT('" . url(env('ASSETSPATHURL') . 'admin-assets/images/about') . "/', image) AS image_url"))->where('id', $request->id)->first();
        $recentblogs = Blogs::select('id', 'title', 'description', \DB::raw('DATE_FORMAT(created_at, "%d-%m-%Y") as date'), \DB::raw("CONCAT('" . url(env('ASSETSPATHURL') . 'admin-assets/images/about') . "/', image) AS image_url"))->orderBydesc('id')->take('3')->get();
        return response()->json(['status' => 1, 'message' => trans('messages.success'), 'data' => $getblogdata, 'recentblogs' => $recentblogs], 200);
    }
}
© 2026 GrazzMean