fix(player): lulust.com do resolvera JWPlayera na telefonie
Some checks failed
Backend tests / test (push) Has been cancelled

latestpornvideo osadza nowsze filmy na lulust.com, nowej domenie rodziny
lulu (luluvid, luluvdo, lulustream). Bez niej na liscie isPackerHoster
zwracal false, szlo przez WebView i konczylo sie 403 albo "Source not
loading". Domena dopisana plus regula na przedrostek lulu z sciezka /e/,
bo rodzina rotuje domeny. Emulator: przed zmiana "Source not loading",
po zmianie gra.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
goon-foss 2026-10-02 15:16:13 +02:00
parent edf9e8a39f
commit 426b5e99a2
2 changed files with 14 additions and 0 deletions

View file

@ -35,6 +35,13 @@ export type ChangelogEntry = {
};
export const CHANGELOG: ChangelogEntry[] = [
{
id: '2026-10-02d',
date: 'October 2026',
items: [
'Latestpornvideo: newer videos sit on a new lulu domain the app did not know, so they opened the host page and failed. They now play in the app player like the older ones.',
],
},
{
id: '2026-10-02c',
date: 'October 2026',

View file

@ -18,6 +18,10 @@
const PACKER_HOSTS = new Set([
'luluvid.com', 'luluvdo.com', 'lulustream.com', 'lulu.st',
// lulust.com: nowa domena tej samej rodziny (latestpornvideo 2026-10-02). Bez niej szla
// przez WebView, a w probce wszystkie sceny na lulust konczyly sie 403, na luluvdo gra.
// Rodzina rotuje domeny, dlatego nizej jest tez regula na przedrostek lulu.
'lulust.com',
// luluvid/streamwish forki rotują TLD, `luluvids.top` + cdnstream/cdnvids.top
// potwierdzone P.A.C.K.E.R.-JWPlayer (mypornerleak embeds, bug-report 2026-06-07:
// bez tego `isPackerHoster` zwracał false → WebView na luluvids.top → "disable
@ -45,6 +49,9 @@ export function isPackerHoster(url: string): boolean {
for (const h of PACKER_HOSTS) {
if (host.endsWith('.' + h)) return true;
}
// Kolejne domeny rodziny lulu (luluvid, luluvdo, lulustream, lulust): osadzenie ma
// zawsze sciezke /e/<id>. Gdy resolver i tak nie znajdzie skryptu, Player spada na WebView.
if (/^lulu[a-z]*\.[a-z]{2,}$/.test(host) && /^\/e\//.test(new URL(url).pathname)) return true;
} catch {}
return false;
}