mirror of
https://github.com/jikan-me/jikan-rest.git
synced 2025-02-20 11:23:35 +08:00
seasons: fixes listing based on aired date (adds UTC timezone to datetime)
This commit is contained in:
parent
1720d7aabb
commit
8772fb4ed8
@ -154,13 +154,25 @@ class Anime extends JikanApiSearchableModel
|
|||||||
/** @noinspection PhpUnused */
|
/** @noinspection PhpUnused */
|
||||||
public function filterByStartDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
public function filterByStartDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
||||||
{
|
{
|
||||||
return $query->where("aired.from", ">=", $value->setTime(0, 0)->toAtomString());
|
return $query
|
||||||
|
->where("aired.from", ">=",
|
||||||
|
$value
|
||||||
|
->setTime(0, 0)
|
||||||
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
|
->toAtomString()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @noinspection PhpUnused */
|
/** @noinspection PhpUnused */
|
||||||
public function filterByEndDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
public function filterByEndDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
||||||
{
|
{
|
||||||
return $query->where("aired.to", "<=", $value->setTime(0, 0)->toAtomString());
|
return $query
|
||||||
|
->where("aired.to", "<=",
|
||||||
|
$value
|
||||||
|
->setTime(0, 0)
|
||||||
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
|
->toAtomString()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function filterByProducer(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, string $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
public function filterByProducer(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, string $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
||||||
|
@ -61,11 +61,13 @@ abstract class QueryAnimeSeasonHandlerBase implements RequestHandler
|
|||||||
default => throw new BadRequestException('Invalid season supplied'),
|
default => throw new BadRequestException('Invalid season supplied'),
|
||||||
};
|
};
|
||||||
|
|
||||||
$from = Carbon::createFromDate($year, $monthStart, 1);
|
$from = Carbon::createFromDate($year, $monthStart, 1)
|
||||||
$from->setTime(0, 0);
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
|
->setTime(0, 0);
|
||||||
|
|
||||||
$to = Carbon::createFromDate($year, $monthEnd, 1);
|
$to = Carbon::createFromDate($year, $monthEnd, 1)
|
||||||
$to->setTime(0, 0);
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
|
->setTime(0,0);
|
||||||
|
|
||||||
return [
|
return [
|
||||||
$from,
|
$from,
|
||||||
|
@ -14,6 +14,7 @@ trait IsoDateFormatter
|
|||||||
$dt[2] ?? 1
|
$dt[2] ?? 1
|
||||||
)
|
)
|
||||||
->setTime(0, 0)
|
->setTime(0, 0)
|
||||||
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
->format(DATE_ATOM);
|
->format(DATE_ATOM);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -68,13 +68,23 @@ class Manga extends JikanApiSearchableModel
|
|||||||
/** @noinspection PhpUnused */
|
/** @noinspection PhpUnused */
|
||||||
public function filterByStartDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
public function filterByStartDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
||||||
{
|
{
|
||||||
return $query->where("published.from", ">=", $value->setTime(0, 0)->toAtomString());
|
return $query
|
||||||
|
->where("published.from", ">=",
|
||||||
|
$value->setTime(0, 0)
|
||||||
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
|
->toAtomString()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @noinspection PhpUnused */
|
/** @noinspection PhpUnused */
|
||||||
public function filterByEndDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
public function filterByEndDate(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, CarbonImmutable $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
||||||
{
|
{
|
||||||
return $query->where("published.to", "<=", $value->setTime(0, 0)->toAtomString());
|
return $query
|
||||||
|
->where("published.to", "<=",
|
||||||
|
$value->setTime(0, 0)
|
||||||
|
->setTimezone(new \DateTimeZone('UTC'))
|
||||||
|
->toAtomString()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function filterByMagazine(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, string $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
public function filterByMagazine(\Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder $query, string $value): \Laravel\Scout\Builder|\Illuminate\Database\Eloquent\Builder
|
||||||
|
Loading…
x
Reference in New Issue
Block a user