uawdijnntqw1x1x1
IP : 216.73.216.145
Hostname : panel.codeskitter.com
Kernel : Linux panel.codeskitter.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
Disable Function : apache_child_terminate, apache_note, apache_setenv, define_syslog_variables, dl, link, opcache_get_status, openlog, pcntl_exec, pcntl_fork, pcntl_setpriority, popen, posix_getpwuid, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid
OS : Linux
PATH:
/
home
/
users
/
unlimited
/
www
/
admin.eclassify.codeskitter.site
/
storage
/
.
/
..
/
app
/
Models
/
Category.php
/
/
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\MorphOne; use Illuminate\Support\Facades\Storage; use Staudenmeir\LaravelAdjacencyList\Eloquent\HasRecursiveRelationships; class Category extends Model { use HasFactory, HasRecursiveRelationships; protected $fillable = [ 'name', 'parent_category_id', 'image', 'slug', 'status', 'description', 'is_job_category', 'price_optional' ]; public function getParentKeyName() { return 'parent_category_id'; } protected $appends = ['translated_name']; public function subcategories() { return $this->hasMany(self::class, 'parent_category_id'); } public function custom_fields() { return $this->hasMany(CustomFieldCategory::class); } public function getImageAttribute($image) { if (!empty($image)) { return url(Storage::url($image)); } return $image; } public function items() { return $this->hasMany(Item::class); } public function approved_items() { return $this->hasMany(Item::class)->where('status', 'approved'); } public function getAllItemsCountAttribute() { $totalItems = $this->items()->where('status', 'approved')->getNonExpiredItems()->count(); foreach ($this->subcategories as $subcategory) { $totalItems += $subcategory->all_items_count; } return $totalItems; } public function scopeSearch($query, $search) { $search = "%" . $search . "%"; return $query->where(function ($q) use ($search) { $q->orWhere('name', 'LIKE', $search) ->orWhere('description', 'LIKE', $search) ->orWhereHas('translations', function ($q) use ($search) { $q->where('description', 'LIKE', $search); }); }); } public function slider(): MorphOne { return $this->morphOne(Slider::class, 'model'); } public function translations() { return $this->hasMany(CategoryTranslation::class); } public function getTranslatedNameAttribute() { $languageCode = request()->header('Content-Language') ?? app()->getLocale(); if (!empty($languageCode) && $this->relationLoaded('translations')) { // NOTE : This code can be done in Cache $language = Language::select(['id', 'code'])->where('code', $languageCode)->first(); $translation = $this->translations->first(static function ($data) use ($language) { return $data->language_id == $language->id; }); return $translation->name ?? $this->name; } return $this->name; } }
/home/users/unlimited/www/admin.eclassify.codeskitter.site/storage/./../app/Models/Category.php