Added:
- Gettings chapters from non En/Fr sources - mercure fonctionne!
This commit is contained in:
@@ -69,13 +69,14 @@ readonly class MangadexProvider implements MetadataProviderInterface
|
||||
return new ArrayCollection($mangas);
|
||||
}
|
||||
|
||||
public function getFeed(Manga $manga): Manga
|
||||
public function getFeed(Manga $manga): array
|
||||
{
|
||||
if($manga->getExternalId() === null) {
|
||||
return $manga;
|
||||
return [];
|
||||
}
|
||||
|
||||
$chapters = [];
|
||||
$chapterEntities = [];
|
||||
$page = 0;
|
||||
|
||||
do {
|
||||
@@ -105,21 +106,51 @@ readonly class MangadexProvider implements MetadataProviderInterface
|
||||
$chapter = new Chapter();
|
||||
$chapter->setNumber($chapterNumber)
|
||||
->setTitle($result['attributes']['title'])
|
||||
->setVolume((int)$result['attributes']['volume'] ?? null);
|
||||
->setVolume((int)$result['attributes']['volume'] ?? null)
|
||||
->setExternalId($result['id'])
|
||||
;
|
||||
|
||||
$manga->addChapter($chapter);
|
||||
$chapterEntities[] = $chapter;
|
||||
// $manga->addChapter($chapter);
|
||||
}
|
||||
|
||||
return $manga;
|
||||
return $chapterEntities;
|
||||
}
|
||||
|
||||
private function getFeedWithPagination(string $externalId, int $page): array
|
||||
{
|
||||
return $this->client->get('/manga/' . $externalId . '/feed', [
|
||||
'limit' => 500,
|
||||
'translatedLanguage' =>['en'],
|
||||
'translatedLanguage' =>['en', 'fr'],
|
||||
'order' => ['chapter' => 'asc'],
|
||||
'offset' => $page * 500
|
||||
]);
|
||||
}
|
||||
|
||||
public function getMangaAggregate(Manga $manga): array
|
||||
{
|
||||
if($manga->getExternalId() === null) {
|
||||
return [];
|
||||
}
|
||||
|
||||
$response = $this->client->get('/manga/' . $manga->getExternalId() . '/aggregate');
|
||||
|
||||
$chapterEntities = [];
|
||||
if($response['result'] === 'ok'){
|
||||
foreach($response['volumes'] as $volume){
|
||||
$volumeNumber = $volume['volume'] === 'none' ? 0 : (float) $volume['volume'];
|
||||
foreach($volume['chapters'] as $chapter){
|
||||
$chapterEntity = new Chapter();
|
||||
$chapterEntity->setNumber((float) $chapter['chapter'])
|
||||
->setTitle('Chapter ' . $chapter['chapter'])
|
||||
->setVolume($volumeNumber)
|
||||
->setExternalId('');
|
||||
|
||||
$chapterEntities[] = $chapterEntity;
|
||||
// $manga->addChapter($chapterEntity);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $chapterEntities;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user