File: D:/HostingSpaces/SBogers10/honger7.komma.pro/app/KommaApp/Documents/Models/Document.php
<?php
namespace App\KommaApp\Documents\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\UploadedFile;
/**
* Class Document
*
* Represents a document in the database
*
* Transient properties (Not saved to the database)
*
* @property UploadedFile file
* @property string $state;
* @package App\KommaApp\Files\Model
* @property-read \Illuminate\Database\Eloquent\Model|\Eloquent $documentable
* @mixin \Eloquent
* @property int $id
* @property string $name
* @property string $path
* @property int $sort_order
* @property int $documentable_id
* @property string $documentable_type
* @property string $thumb_image_url
* @property string $small_image_url
* @property string $medium_image_url
* @property string $large_image_url
* @property \Carbon\Carbon|null $created_at
* @property \Carbon\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereDocumentableId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereDocumentableType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereLargeImageUrl($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereMediumImageUrl($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document wherePath($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereSmallImageUrl($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereSortOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereThumbImageUrl($value)
* @method static \Illuminate\Database\Eloquent\Builder|\App\KommaApp\Documents\Models\Document whereUpdatedAt($value)
*/
class Document extends Model
{
const STATE_NEW = 'new';
const STATE_PRISTINE = 'pristine';
const STATE_MODIFIED = 'modified';
const STATE_DELETED = 'deleted';
protected $fillable = ['path', 'name', 'sort_order', 'documentable_id', 'documentable_type', 'thumb_image_url', 'small_image_url', 'medium_image_url', 'large_image_url'];
/** @var UploadedFile $file associated with the document */
public $file;
/** @var string $state The state of the document */
public $state = self::STATE_PRISTINE;
public function documentable()
{
return $this->morphTo();
}
/**
* Convert the object into something JSON serializable.
*
* @return array
*/
public function toArray()
{
$array = parent::toArray();
$array['state'] = $this->state;
return $array;
}
}