54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | ||
| 
 | ||
| namespace kernel\models;
 | ||
| 
 | ||
| use Illuminate\Database\Eloquent\Model;
 | ||
| 
 | ||
| /**
 | ||
|  * @property int $id
 | ||
|  * @property int parent_id
 | ||
|  * @property string icon_file
 | ||
|  * @property string icon_font
 | ||
|  * @property string label
 | ||
|  * @property string url
 | ||
|  * @property int status
 | ||
|  * @property string slug
 | ||
|  * @property string priority
 | ||
|  * @method static find($id)
 | ||
|  */
 | ||
| 
 | ||
| class Menu extends Model
 | ||
| {
 | ||
|     const DISABLE_STATUS = 0;
 | ||
|     const ACTIVE_STATUS = 1;
 | ||
| 
 | ||
|     protected $table = 'menu';
 | ||
|     protected $fillable = ['parent_id', 'icon_file', 'icon_font', 'label', 'url', 'status', 'slug', 'priority'];
 | ||
|     protected array $dates = ['deleted_at'];
 | ||
| 
 | ||
|     public static function labels(): array
 | ||
|     {
 | ||
|         return [
 | ||
|             'label' => 'Заголовок',
 | ||
|             'parent_id' => 'Родительский пункт меню',
 | ||
|             'icon_file' => 'Путь к иконке',
 | ||
|             'icon_font' => 'Иконка',
 | ||
|             'url' => 'URL',
 | ||
|             'status' => 'Статус',
 | ||
|             'slug' => 'Slug',
 | ||
|             'priority' => 'Приоритет'
 | ||
| 
 | ||
|         ];
 | ||
|     }
 | ||
| 
 | ||
|     /**
 | ||
|      * @return string[]
 | ||
|      */
 | ||
|     public static function getStatus(): array
 | ||
|     {
 | ||
|         return [
 | ||
|             self::DISABLE_STATUS => "Не активный",
 | ||
|             self::ACTIVE_STATUS => "Активный",
 | ||
|         ];
 | ||
|     }
 | ||
| } |