Добавлен функционал очистки устаревших MinecraftAccessKey

This commit is contained in:
ErickSkrauch
2017-09-27 19:52:28 +03:00
parent d114424906
commit ec0b25e88d
4 changed files with 34 additions and 6 deletions

View File

@ -2,6 +2,7 @@
namespace console\controllers;
use common\models\EmailActivation;
use common\models\MinecraftAccessKey;
use yii\console\Controller;
class CleanupController extends Controller {
@ -26,6 +27,19 @@ class CleanupController extends Controller {
return self::EXIT_CODE_NORMAL;
}
public function actionMinecraftSessions() {
/** @var \yii\db\BatchQueryResult|MinecraftAccessKey[] $expiredMinecraftSessions */
$expiredMinecraftSessions = MinecraftAccessKey::find()
->andWhere(['<', 'updated_at', time() - 1209600]) // 2 weeks
->each();
foreach ($expiredMinecraftSessions as $minecraftSession) {
$minecraftSession->delete();
}
return self::EXIT_CODE_NORMAL;
}
private function getEmailActivationsDurationsMap(): array {
$durationsMap = [];
foreach (EmailActivation::getClassMap() as $typeId => $className) {