test: Test için push edildi

This commit is contained in:
2026-01-25 17:32:58 +03:00
parent 7317edc88b
commit b35df53bef
7 changed files with 5447 additions and 2 deletions

View File

@@ -115,6 +115,23 @@
}
}
function normalizeTurkanimeVideoUrl(value) {
if (!value || typeof value !== "string") return null;
try {
const url = new URL(value.trim());
const host = url.hostname.toLowerCase();
if (host !== "turkanime.tv" && host !== "www.turkanime.tv") return null;
const pathname = url.pathname.replace(/\/+$/, "");
const match = pathname.match(/^\/video\/([^/]+)$/);
if (!match) return null;
const slug = match[1]?.trim();
if (!slug) return null;
return `https://www.turkanime.tv/video/${slug}`;
} catch {
return null;
}
}
async function handleUrlInput() {
const input = prompt("Magnet, YouTube veya Turkanime URL girin:");
if (!input) return;
@@ -163,8 +180,38 @@
alert(`Toplam ${data.count} bölüm bulundu:\n\n${episodes.join("\n")}`);
return;
}
const normalizedTurkanimeVideo = normalizeTurkanimeVideoUrl(input);
if (normalizedTurkanimeVideo) {
// Mail.ru linki ayıklama işlemi
try {
const resp = await apiFetch("/api/turkanime/mailru", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ url: normalizedTurkanimeVideo })
});
if (!resp.ok) {
const data = await resp.json().catch(() => null);
alert(data?.error || "Mail.ru linki ayıklanamadı.");
return;
}
const result = await resp.json().catch(() => null);
if (result?.ok && result?.mailruUrl) {
// Mail.ru URL'sini kopyala ve göster
navigator.clipboard.writeText(result.mailruUrl).then(() => {
alert(`Mail.ru linki ayıklandı ve panoya kopyalandı:\n\n${result.mailruUrl}\n\nTurkanime: ${result.turkanimeUrl}`);
}).catch(() => {
alert(`Mail.ru linki ayıklandı:\n\n${result.mailruUrl}\n\nTurkanime: ${result.turkanimeUrl}`);
});
} else {
alert("Mail.ru linki bulunamadı.");
}
} catch (err) {
alert(`Mail.ru linki ayıklanırken hata: ${err?.message || err}`);
}
return;
}
alert(
"Yalnızca magnet linkleri, https://www.youtube.com/watch?v=... formatındaki YouTube URL'leri veya https://www.turkanime.tv/anime/... formatındaki Turkanime URL'leri destekleniyor."
"Yalnızca magnet linkleri, https://www.youtube.com/watch?v=... formatındaki YouTube URL'leri veya Turkanime URL'leri (/anime/ veya /video/) destekleniyor."
);
}