54 lines
1.4 KiB
PHP
54 lines
1.4 KiB
PHP
|
<?php
|
|||
|
|
|||
|
namespace common\helpers;
|
|||
|
|
|||
|
use yii\helpers\ArrayHelper;
|
|||
|
use yii\helpers\Html;
|
|||
|
use Exception;
|
|||
|
|
|||
|
class UserQuestionnaireStatusHelper
|
|||
|
{
|
|||
|
const STATUS_PASSIVE = 0;
|
|||
|
const STATUS_ACTIVE = 1;
|
|||
|
const STATUS_COMPLETED = 2;
|
|||
|
const STATUS_ON_INSPECTION = 3;
|
|||
|
|
|||
|
public static function statusList() :array
|
|||
|
{
|
|||
|
return [
|
|||
|
self::STATUS_PASSIVE => 'Не используется',
|
|||
|
self::STATUS_ACTIVE => 'Активен',
|
|||
|
self::STATUS_COMPLETED => 'Завершён',
|
|||
|
self::STATUS_ON_INSPECTION => 'На проверке'
|
|||
|
];
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* @throws Exception
|
|||
|
*/
|
|||
|
public static function statusName($status): string
|
|||
|
{
|
|||
|
return ArrayHelper::getValue(self::statusList(), $status);
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* @throws Exception
|
|||
|
*/
|
|||
|
public static function statusLabel($status): string
|
|||
|
{
|
|||
|
switch ($status) {
|
|||
|
case self::STATUS_PASSIVE:
|
|||
|
$class = 'label label-danger';
|
|||
|
break;
|
|||
|
case ($status === self::STATUS_ACTIVE or $status === self::STATUS_COMPLETED):
|
|||
|
$class = 'label label-success';
|
|||
|
break;
|
|||
|
default:
|
|||
|
$class = 'label label-default';
|
|||
|
}
|
|||
|
|
|||
|
return Html::tag('span', ArrayHelper::getValue(self::statusList(), $status), [
|
|||
|
'class' => $class,
|
|||
|
]);
|
|||
|
}
|
|||
|
}
|