Yii::t('user', 'Wait'), User::STATUS_ACTIVE => Yii::t('user', 'Active'), ]; } public static function statusName($status): string { return ArrayHelper::getValue(self::statusList(), $status); } public static function statusLabel($status): string { switch ($status) { case User::STATUS_WAIT: $class = 'label label-default'; break; case User::STATUS_ACTIVE: $class = 'label label-success'; break; default: $class = 'label label-default'; } return Html::tag('span', ArrayHelper::getValue(self::statusList(), $status), [ 'class' => $class, ]); } public static function getSetting($key, $default = null) { $settings = Json::decode(\Yii::$app->user->identity->user->settings, true); return isset($settings[$key]) ? $settings[$key] : $default; } public static function setSetting($key, $value) { $settings = Json::decode(\Yii::$app->user->identity->user->settings, true); $settings[$key] = $value; $user = User::findOne(\Yii::$app->user->id); if ($user) { $user->settings = Json::encode($settings); $user->save(); } } }