goon/scripts/sql/hdporn92_delist.sql
goon-foss ad0284585b Initial commit
Goon — self-hosted aggregator for adult-content scene metadata.

Indexes scenes from TPDB, StashDB, and 30+ public adult tube sites.
Cross-source deduplication via perceptual hash + Levenshtein distance.
FastAPI backend + APScheduler worker + React Native (Expo) mobile client.

FOSS, ad-free, donation-funded. See README for details.
2026-05-20 10:10:22 +02:00

42 lines
1.7 KiB
PL/PgSQL

-- Delisting hdporn92 2026-05-18: SEO shell scrape, no actual video.
-- Scene pages have zero player iframe (only happyleafmotion ads), JS hijacks all
-- anchor clicks → go.rmishe.com/smartpop/... popunder redirect. Mobile WebView
-- page-as-hoster shows ad redirect instead of video.
BEGIN;
CREATE TEMP TABLE _hd92_solo AS
SELECT s.id AS scene_id
FROM scenes s
WHERE EXISTS (
SELECT 1 FROM playback_sources ps
WHERE ps.scene_id = s.id AND ps.origin = 'tube:hdporn92com' AND ps.dead_at IS NULL
)
AND NOT EXISTS (
SELECT 1 FROM playback_sources ps2
WHERE ps2.scene_id = s.id AND ps2.origin <> 'tube:hdporn92com' AND ps2.dead_at IS NULL
);
SELECT COUNT(*) AS solo_to_delete FROM _hd92_solo;
UPDATE playback_sources
SET dead_at = NOW(),
dead_reason = 'SEO shell - no player iframe, ad redirect (delisted 2026-05-18)'
WHERE origin = 'tube:hdporn92com' AND dead_at IS NULL;
DELETE FROM scene_tags WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM scene_performers WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM favorite_scenes WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM scene_play_progress WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM scene_fingerprints WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM scene_external_refs WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM playback_sources WHERE scene_id IN (SELECT scene_id FROM _hd92_solo);
DELETE FROM scenes WHERE id IN (SELECT scene_id FROM _hd92_solo);
COMMIT;
SELECT
COUNT(*) FILTER (WHERE dead_at IS NULL) AS live_remaining,
COUNT(*) FILTER (WHERE dead_at IS NOT NULL) AS dead_total
FROM playback_sources
WHERE origin = 'tube:hdporn92com';