Sudo, rm and setup for ls
This commit is contained in:
@@ -4,6 +4,7 @@ namespace App\Game\Service;
|
||||
|
||||
use App\Game\Entity\Game;
|
||||
use App\Game\Entity\Player;
|
||||
use App\Game\Entity\SessionSetting;
|
||||
use App\Game\Enum\SessionSettingType;
|
||||
use App\Game\Enum\SessionStatus;
|
||||
use App\Game\Repository\PlayerRepository;
|
||||
@@ -73,4 +74,33 @@ class PlayerService
|
||||
$this->entityManager->persist($setting);
|
||||
$this->entityManager->flush();
|
||||
}
|
||||
|
||||
public function getDeletedFilesOfSession(Player $player): array
|
||||
{
|
||||
$setting = $this->sessionSettingRepository->getSetting($player->getSession(), SessionSettingType::SET_OF_DELETED_FILES);
|
||||
if (!$setting || !$setting->getValue()) {
|
||||
return [];
|
||||
}
|
||||
|
||||
return json_decode($setting->getValue(), true) ?? [];
|
||||
}
|
||||
|
||||
public function addDeletedFileToSession(Player $player, string $filename): void
|
||||
{
|
||||
$setting = $this->sessionSettingRepository->getSetting($player->getSession(), SessionSettingType::SET_OF_DELETED_FILES);
|
||||
if (!$setting) {
|
||||
$setting = new SessionSetting();
|
||||
$setting->setSession($player->getSession());
|
||||
$setting->setName(SessionSettingType::SET_OF_DELETED_FILES);
|
||||
}
|
||||
|
||||
$deletedFiles = json_decode($setting->getValue() ?? '[]', true) ?? [];
|
||||
if (!in_array($filename, $deletedFiles)) {
|
||||
$deletedFiles[] = $filename;
|
||||
$setting->setValue(json_encode($deletedFiles));
|
||||
|
||||
$this->entityManager->persist($setting);
|
||||
$this->entityManager->flush();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user