diff --git a/websites/A/AnimeKai/metadata.json b/websites/A/AnimeKai/metadata.json index 0f9c238aed8c..5781886bb6c3 100644 --- a/websites/A/AnimeKai/metadata.json +++ b/websites/A/AnimeKai/metadata.json @@ -11,11 +11,14 @@ }, "url": [ "animekai.to", - "anikai.to", - "animekaitv.to" + "animekai.im", + "animekai.la", + "animekai.nl", + "animekai.vc", + "anikai.to" ], - "regExp": "^https?[:][/][/](animekai(tv)?[.]to|anikai[.]to)[/]", - "version": "2.1.2", + "regExp": "^https?[:][/][/](animekai[.](to|im|la|nl|vc)|anikai[.]to)[/]", + "version": "2.1.3", "logo": "https://cdn.rcd.gg/PreMiD/websites/A/AnimeKai/assets/logo.png", "thumbnail": "https://cdn.rcd.gg/PreMiD/websites/A/AnimeKai/assets/thumbnail.png", "color": "#40b15d", @@ -24,7 +27,7 @@ "anime" ], "iframe": true, - "iFrameRegExp": "megaup[.]live", + "iFrameRegExp": "4spromax[.]site", "settings": [ { "id": "buttons", diff --git a/websites/A/AnimeKai/presence.ts b/websites/A/AnimeKai/presence.ts index 47616f6fb9b3..ae3d387911fa 100644 --- a/websites/A/AnimeKai/presence.ts +++ b/websites/A/AnimeKai/presence.ts @@ -34,13 +34,10 @@ presence.on('UpdateData', async () => { name: 'AnimeKAI', largeImageKey: ActivityAssets.Logo, startTimestamp: browsingTimestamp, - } - const { pathname, href, hostname } = document.location + const { pathname, href } = document.location const buttons = await presence.getSetting('buttons') - const isNewDomain = hostname.includes('animekaitv') - if (pathname === '/' || pathname === '/home') { presenceData.details = 'Exploring AnimeKAI' } @@ -69,9 +66,10 @@ presence.on('UpdateData', async () => { else if (pathname.startsWith('/az-list')) { presenceData.details = 'Looking at Anime list' if (pathname !== '/az-list') { - presenceData.state = `Titles starting with ${pathname.substring(9) === 'other' - ? 'Other characters' - : `${pathname.substring(9)}` + presenceData.state = `Titles starting with ${ + pathname.substring(9) === 'other' + ? 'Other characters' + : `${pathname.substring(9)}` }` } presenceData.smallImageKey = Assets.Search @@ -107,63 +105,17 @@ presence.on('UpdateData', async () => { } } else if (pathname.startsWith('/watch')) { - let title = document.querySelector( + const title = document.querySelector( 'li.breadcrumb-item.active', ) - - if (!title) { - title = document.querySelector( - 'h1.title.d-title, h1.d-title, h2.film-name, h1.film-name', - ) as any - } - - let episode: string | null = null - - if (isNewDomain) { - const epMatch = pathname.match(/\/ep-(\d+)/) - if (epMatch && epMatch[1]) { - episode = epMatch[1] - } - } - else { - const hashMatch = window.location.hash.match(/#ep=(\d+)/) - if (hashMatch) { - episode = hashMatch[1] ?? null - } - - const episodeSpan = document.querySelector( - '.eplist .range li a.active span', - ) - if (!episode && episodeSpan) { - episode = episodeSpan?.previousSibling?.nodeValue?.trim() || null - } - } - - if (!episode) { - const epElement = document.querySelector('.episode-number, .ep-number, .current-episode') - if (epElement) { - const epText = epElement.textContent?.match(/\d+/) - if (epText) - episode = epText[0] - } - } - - let thumbnail = document.querySelector( + const episodeSpan = document.querySelector( + '.eplist .range li a.active span', + ) + const episode = episodeSpan?.previousSibling?.nodeValue?.trim() || null + const thumbnail = document.querySelector( '.poster > div > img', )?.src - if (!thumbnail) { - thumbnail = document.querySelector( - 'img[itemprop="image"]', - )?.src - } - - if (!thumbnail) { - thumbnail = document.querySelector( - '#ani_detail > div > div > div.anis-content > div.anisc-poster > div > img, .anime-poster img, .video-poster img', - )?.src - } - presenceData.largeImageKey = thumbnail if (title) presenceData.details = title.textContent @@ -226,21 +178,11 @@ presence.on('UpdateData', async () => { presenceData.smallImageKey = ActivityAssets.Settings break } - case '/member/users/settings': { - presenceData.details = 'Managing Settings' - presenceData.smallImageKey = ActivityAssets.Settings - break - } case '/user/profile': { presenceData.details = 'Editing Profile' presenceData.smallImageKey = ActivityAssets.Settings break } - case '/member/users/profile': { - presenceData.details = 'Editing Profile' - presenceData.smallImageKey = ActivityAssets.Settings - break - } case '/user/watching': { presenceData.details = 'Viewing Continue Watching' presenceData.smallImageKey = Assets.Viewing @@ -251,11 +193,6 @@ presence.on('UpdateData', async () => { presenceData.smallImageKey = Assets.Downloading break } - case '/member/mal': { - presenceData.details = 'MAL/AL Import' - presenceData.smallImageKey = Assets.Downloading - break - } case '/user/export': { presenceData.details = 'MAL/AL Export' presenceData.smallImageKey = Assets.Uploading @@ -277,17 +214,6 @@ presence.on('UpdateData', async () => { presenceData.smallImageKey = Assets.Reading break } - case '/member/notifications': { - const type = new URLSearchParams(document.location.search).get('type') - if (type === 'community') { - presenceData.details = 'Looking at Community Notifications' - } - else { - presenceData.details = 'Looking at Anime Notifications' - } - presenceData.smallImageKey = Assets.Reading - break - } case '/user/bookmarks': { presenceData.details = 'Managing Bookmarks' presenceData.smallImageKey = ActivityAssets.Settings @@ -298,11 +224,6 @@ presence.on('UpdateData', async () => { presenceData.smallImageKey = Assets.Reading break } - case '/status/not-yet-aired': { - presenceData.details = 'Looking at Upcoming' - presenceData.smallImageKey = Assets.Reading - break - } default: { const title = document.querySelector( 'h2.film-name.dynamic-name',