32 lines
684 B
PHP
32 lines
684 B
PHP
<?php
|
|
|
|
namespace App\Enums;
|
|
|
|
enum StoryStatusEnum: string
|
|
{
|
|
case DRAFT = 'draft';
|
|
case SCHEDULED = 'scheduled';
|
|
case PUBLISHED = 'published';
|
|
case EXPIRED = 'expired';
|
|
|
|
public function label(): string
|
|
{
|
|
return match ($this) {
|
|
self::DRAFT => 'Draft',
|
|
self::SCHEDULED => 'Scheduled',
|
|
self::PUBLISHED => 'Published',
|
|
self::EXPIRED => 'Expired',
|
|
};
|
|
}
|
|
|
|
public function color(): string
|
|
{
|
|
return match ($this) {
|
|
self::DRAFT => 'yellow',
|
|
self::SCHEDULED => 'blue',
|
|
self::PUBLISHED => 'green',
|
|
self::EXPIRED => 'red',
|
|
};
|
|
}
|
|
}
|