Always respond with timezone in timestamp
This commit is contained in:
parent
2dbd02b8eb
commit
d552205369
@ -6,73 +6,90 @@ namespace OCA\GPodderSync\Db\EpisodeAction;
|
|||||||
use DateTime;
|
use DateTime;
|
||||||
use OCA\GPodderSync\Core\EpisodeAction\EpisodeAction;
|
use OCA\GPodderSync\Core\EpisodeAction\EpisodeAction;
|
||||||
|
|
||||||
class EpisodeActionRepository {
|
class EpisodeActionRepository
|
||||||
|
{
|
||||||
|
private EpisodeActionMapper $episodeActionMapper;
|
||||||
|
|
||||||
private EpisodeActionMapper $episodeActionMapper;
|
public function __construct(EpisodeActionMapper $episodeActionMapper)
|
||||||
|
{
|
||||||
|
$this->episodeActionMapper = $episodeActionMapper;
|
||||||
|
}
|
||||||
|
|
||||||
public function __construct(EpisodeActionMapper $episodeActionMapper) {
|
/**
|
||||||
$this->episodeActionMapper = $episodeActionMapper;
|
* @param int $sinceEpoch
|
||||||
}
|
* @param string $userId
|
||||||
|
*
|
||||||
|
* @return EpisodeAction[]
|
||||||
|
*/
|
||||||
|
public function findAll(int $sinceEpoch, string $userId): array
|
||||||
|
{
|
||||||
|
$episodeActions = [];
|
||||||
|
foreach (
|
||||||
|
$this->episodeActionMapper->findAll($sinceEpoch, $userId)
|
||||||
|
as $entity
|
||||||
|
) {
|
||||||
|
$episodeActions[] = $this->mapEntityToEpisodeAction($entity);
|
||||||
|
}
|
||||||
|
return $episodeActions;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
public function findByEpisodeUrl(
|
||||||
* @param int $sinceEpoch
|
string $episodeUrl,
|
||||||
* @param string $userId
|
string $userId
|
||||||
*
|
): ?EpisodeAction {
|
||||||
* @return EpisodeAction[]
|
$episodeActionEntity = $this->episodeActionMapper->findByEpisodeUrl(
|
||||||
*/
|
$episodeUrl,
|
||||||
public function findAll(int $sinceEpoch, string $userId) : array {
|
$userId
|
||||||
$episodeActions = [];
|
);
|
||||||
foreach ($this->episodeActionMapper->findAll($sinceEpoch, $userId) as $entity) {
|
|
||||||
$episodeActions[] = $this->mapEntityToEpisodeAction($entity);
|
|
||||||
}
|
|
||||||
return $episodeActions;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function findByEpisodeUrl(string $episodeUrl, string $userId): ?EpisodeAction {
|
|
||||||
$episodeActionEntity = $this->episodeActionMapper->findByEpisodeUrl($episodeUrl, $userId);
|
|
||||||
|
|
||||||
if ($episodeActionEntity === null) {
|
if ($episodeActionEntity === null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->mapEntityToEpisodeAction(
|
return $this->mapEntityToEpisodeAction($episodeActionEntity);
|
||||||
$episodeActionEntity
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function findByGuid(string $guid, string $userId): ?EpisodeAction {
|
public function findByGuid(string $guid, string $userId): ?EpisodeAction
|
||||||
$episodeActionEntity = $this->episodeActionMapper->findByGuid($guid, $userId);
|
{
|
||||||
|
$episodeActionEntity = $this->episodeActionMapper->findByGuid(
|
||||||
|
$guid,
|
||||||
|
$userId
|
||||||
|
);
|
||||||
|
|
||||||
if ($episodeActionEntity === null) {
|
if ($episodeActionEntity === null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->mapEntityToEpisodeAction(
|
return $this->mapEntityToEpisodeAction($episodeActionEntity);
|
||||||
$episodeActionEntity
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function deleteEpisodeActionByEpisodeUrl(string $episodeUrl, string $userId) : void {
|
public function deleteEpisodeActionByEpisodeUrl(
|
||||||
$episodeAction = $this->episodeActionMapper->findByEpisodeUrl($episodeUrl, $userId);
|
string $episodeUrl,
|
||||||
|
string $userId
|
||||||
|
): void {
|
||||||
|
$episodeAction = $this->episodeActionMapper->findByEpisodeUrl(
|
||||||
|
$episodeUrl,
|
||||||
|
$userId
|
||||||
|
);
|
||||||
$this->episodeActionMapper->delete($episodeAction);
|
$this->episodeActionMapper->delete($episodeAction);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function mapEntityToEpisodeAction(EpisodeActionEntity $episodeActionEntity): EpisodeAction
|
private function mapEntityToEpisodeAction(
|
||||||
{
|
EpisodeActionEntity $episodeActionEntity
|
||||||
return new EpisodeAction(
|
): EpisodeAction {
|
||||||
$episodeActionEntity->getPodcast(),
|
return new EpisodeAction(
|
||||||
$episodeActionEntity->getEpisode(),
|
$episodeActionEntity->getPodcast(),
|
||||||
$episodeActionEntity->getAction(),
|
$episodeActionEntity->getEpisode(),
|
||||||
DateTime::createFromFormat(
|
$episodeActionEntity->getAction(),
|
||||||
"U",
|
DateTime::createFromFormat(
|
||||||
(string)$episodeActionEntity->getTimestampEpoch())
|
"U",
|
||||||
->format("Y-m-d\TH:i:s"),
|
(string) $episodeActionEntity->getTimestampEpoch()
|
||||||
$episodeActionEntity->getStarted(),
|
)->format("c"),
|
||||||
$episodeActionEntity->getPosition(),
|
$episodeActionEntity->getStarted(),
|
||||||
$episodeActionEntity->getTotal(),
|
$episodeActionEntity->getPosition(),
|
||||||
$episodeActionEntity->getGuid(),
|
$episodeActionEntity->getTotal(),
|
||||||
$episodeActionEntity->getId(),
|
$episodeActionEntity->getGuid(),
|
||||||
);
|
$episodeActionEntity->getId()
|
||||||
}
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user