diff --git a/src/lib/components/artList.svelte b/src/lib/components/artList.svelte
index ad6a130..fc9b4ac 100644
--- a/src/lib/components/artList.svelte
+++ b/src/lib/components/artList.svelte
@@ -1,7 +1,7 @@
diff --git a/src/routes/[manga]/+layout.ts b/src/routes/[manga]/+layout.ts
index ad432e8..410ea2d 100644
--- a/src/routes/[manga]/+layout.ts
+++ b/src/routes/[manga]/+layout.ts
@@ -3,10 +3,6 @@ import request from '$lib/util/request';
/** @type {import('./$types').PageLoad} */
export async function load({ params }) {
- const blocked = ["227e3f72-863f-46f9-bafe-c43104ca29ee", "b0b721ff-c388-4486-aa0f-c2b0bb321512"];
- if (blocked.includes(params.manga)) {
- throw error(404, 'blocked because of copyright');
- }
const manga = await request("manga/" + params.manga + "?includes[]=author&includes[]=cover_art&includes[]=artist&includes[]=manga");
console.log(manga);
return {
diff --git a/src/routes/[manga]/+page.svelte b/src/routes/[manga]/+page.svelte
index 0f2baf1..b2f6948 100644
--- a/src/routes/[manga]/+page.svelte
+++ b/src/routes/[manga]/+page.svelte
@@ -30,16 +30,19 @@
var title = manga.title.en || manga.title.jp || Object.values(manga.title)[0];
$: title = manga.title.en || manga.title.jp || Object.values(manga.title)[0];
+ const defaultLanguages = ["en", "uk"];
+ let languages = defaultLanguages;
+
let anilistData;
$: anilistData = manga.links && manga.links.al && anilistInfo(manga.links.al);
let cache: { id: string, data: any, total } | null = null;
- async function getMangaChapters(id) {
+ async function getMangaChapters(id, languages) {
if(cache?.id === id && cache.data.length >= cache.total) return cache;
const params = new URLSearchParams();
params.append("limit", "500");
- params.append("translatedLanguage[]", "en");
- params.append("translatedLanguage[]", "uk");
+ for(let lang of languages)
+ params.append("translatedLanguage[]", lang);
params.append("includes[]", "scanlation_group");
params.append("contentRating[]", "safe");
params.append("contentRating[]", "suggestive");
@@ -58,7 +61,7 @@
var loadingChapters = false;
$: if(chapters?.id !== mangaId && !loadingChapters) {
loadingChapters = true;
- getMangaChapters(mangaId).then(async data => {
+ getMangaChapters(mangaId, languages).then(async data => {
chapters = data;
await tick();
swiper.slideToClosest();
@@ -326,6 +329,22 @@
let uniqueChapterCount;
$: uniqueChapterCount = chapters?.data.filter((t, i, a) => a.findIndex(t2 => Math.floor(t2.attributes.chapter) === Math.floor(t.attributes.chapter)) === i).length;
+
+ let list: any;
+ $: list = request(
+ "cover?limit=50&manga[]=" + mangaId + languages.map(t => "&locales[]=" + t).join("")
+ );
+
+ function toggleLang(lang) {
+ return () => {
+ if(languages.includes(lang)) {
+ languages = languages.filter(t => t !== lang);
+ } else {
+ languages.push(lang);
+ languages = languages;
+ }
+ }
+ }
@@ -525,7 +557,7 @@