Update release.js
This commit is contained in:
@@ -1,12 +1,43 @@
|
|||||||
const axios = require('axios');
|
const axios = require('axios');
|
||||||
|
|
||||||
// Простой парсер релиза Anixart
|
// Кэш кастомных заметок
|
||||||
|
let cachedNotes = [];
|
||||||
|
|
||||||
|
// Функция для загрузки заметок из внешнего API
|
||||||
|
async function fetchNotes() {
|
||||||
|
try {
|
||||||
|
const response = await axios.get('https://anixart.seele.su/api/release_note');
|
||||||
|
cachedNotes = Array.isArray(response.data) ? response.data : [];
|
||||||
|
} catch {
|
||||||
|
cachedNotes = [];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Загружаем заметки сразу при запуске
|
||||||
|
fetchNotes();
|
||||||
|
|
||||||
|
// Обновляем заметки каждые 10 минут
|
||||||
|
setInterval(fetchNotes, 10 * 60 * 1000);
|
||||||
|
|
||||||
|
// Основная функция-парсер
|
||||||
async function getReleaseFromAnixart(releaseId, token = '') {
|
async function getReleaseFromAnixart(releaseId, token = '') {
|
||||||
const url = `https://api.anixart.tv/release/${releaseId}${token ? `?token=${token}` : ''}`;
|
const url = `https://api.anixart.tv/release/${releaseId}${token ? `?token=${token}` : ''}`;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const response = await axios.get(url);
|
const response = await axios.get(url);
|
||||||
return response.data;
|
const releaseData = response.data;
|
||||||
|
|
||||||
|
if (!releaseData.release) {
|
||||||
|
releaseData.release = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
// Применяем кастомный note, если он есть
|
||||||
|
const noteEntry = cachedNotes.find(entry => entry.id === Number(releaseId));
|
||||||
|
if (noteEntry) {
|
||||||
|
releaseData.release.note = noteEntry.note;
|
||||||
|
}
|
||||||
|
|
||||||
|
return releaseData;
|
||||||
} catch {
|
} catch {
|
||||||
return {
|
return {
|
||||||
code: 2,
|
code: 2,
|
||||||
|
|||||||
Reference in New Issue
Block a user