mirror of https://github.com/aruppi/aruppi-api.git
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
566 lines
14 KiB
JavaScript
566 lines
14 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const api = require('../api');
|
|
|
|
const { BASE_KUDASAI, BASE_PALOMITRON, BASE_RAMENPARADOS, BASE_CRUNCHYROLL } = require('../urls');
|
|
|
|
router.get('/schedule/:day' , (req, res) =>{
|
|
|
|
let day = {current: req.params.day}
|
|
|
|
api.schedule(day)
|
|
.then(day =>{
|
|
if (day.length > 0) {
|
|
res.status(200).json({
|
|
day
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/top/:type/:subtype?/:page' , (req, res) =>{
|
|
|
|
let top = {type: req.params.type, subtype: req.params.subtype, page: req.params.page}
|
|
|
|
api.top(top)
|
|
.then(top =>{
|
|
if (top.length > 0) {
|
|
res.status(200).json({
|
|
top
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/allAnimes' , (req, res) =>{
|
|
|
|
api.getAllAnimes()
|
|
.then(animes =>{
|
|
if (animes.length > 0) {
|
|
res.status(200).json({
|
|
animes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/allDirectory/:genres?' , (req, res) =>{
|
|
let genres = req.params.genres;
|
|
|
|
api.getAllDirectory(genres)
|
|
.then(directory =>{
|
|
if (directory.length > 0) {
|
|
res.status(200).json({
|
|
directory
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/anitakume' , (req, res) =>{
|
|
|
|
api.getAnitakume()
|
|
.then(podcast =>{
|
|
if (podcast.length > 0) {
|
|
res.status(200).json({
|
|
podcast
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/news' , (req, res) =>{
|
|
|
|
let pagesRss = [
|
|
{ url: BASE_KUDASAI, author: 'Kudasai', content: 'content_encoded' },
|
|
{ url: BASE_PALOMITRON, author: 'Palomitron', content: 'description' },
|
|
{ url: BASE_RAMENPARADOS, author: 'Ramen para dos', content: 'content' },
|
|
{ url: BASE_CRUNCHYROLL, author: 'Crunchyroll', content: 'content_encoded' }
|
|
];
|
|
|
|
api.getNews(pagesRss)
|
|
.then(news =>{
|
|
if (news.length > 0) {
|
|
res.status(200).json({
|
|
news
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/season/:year/:type' , (req, res) =>{
|
|
|
|
let season = {year: req.params.year, type: req.params.type}
|
|
|
|
api.season(season)
|
|
.then(season =>{
|
|
if (season.length > 0) {
|
|
res.status(200).json({
|
|
season
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/allSeasons' , (req, res) =>{
|
|
|
|
api.allSeasons()
|
|
.then(archive =>{
|
|
if (archive.length > 0) {
|
|
res.status(200).json({
|
|
archive
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/laterSeasons' , (req, res) =>{
|
|
|
|
api.laterSeasons()
|
|
.then(future =>{
|
|
if (future.length > 0) {
|
|
res.status(200).json({
|
|
future
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/lastEpisodes' , (req, res) =>{
|
|
|
|
api.getLastEpisodes()
|
|
.then(episodes =>{
|
|
if (episodes.length > 0) {
|
|
res.status(200).json({
|
|
episodes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/movies/:type/:page' , (req, res) =>{
|
|
|
|
let data = {url: 'Movies', prop: 'movies', type: req.params.type, page: req.params.page }
|
|
|
|
api.getSpecials(data)
|
|
.then(animes =>{
|
|
if (animes.length > 0) {
|
|
res.status(200).json({
|
|
animes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/ova/:type/:page' , (req, res) =>{
|
|
|
|
let data = {url: 'Ova', prop: 'ova', type: req.params.type, page: req.params.page }
|
|
|
|
api.getSpecials(data)
|
|
.then(animes =>{
|
|
if (animes.length > 0) {
|
|
res.status(200).json({
|
|
animes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/special/:type/:page' , (req, res) =>{
|
|
|
|
let data = {url: 'Special', prop: 'special', type: req.params.type, page: req.params.page }
|
|
|
|
api.getSpecials(data)
|
|
.then(animes =>{
|
|
if (animes.length > 0) {
|
|
res.status(200).json({
|
|
animes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/tv/:type/:page' , (req, res) =>{
|
|
|
|
let data = {url: 'Tv', prop: 'tv', type: req.params.type, page: req.params.page }
|
|
|
|
api.getSpecials(data)
|
|
.then(animes =>{
|
|
if (animes.length > 0) {
|
|
res.status(200).json({
|
|
animes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/moreInfo/:title' , (req, res) =>{
|
|
|
|
let title = req.params.title;
|
|
|
|
api.getMoreInfo(title)
|
|
.then(info => {
|
|
if (info !== undefined) {
|
|
res.status(200).json(info);
|
|
} else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/getEpisodes/:title' , (req, res) =>{
|
|
|
|
let title = req.params.title;
|
|
|
|
api.getEpisodes(title)
|
|
.then(episodes => {
|
|
|
|
if (episodes.length > 0) {
|
|
res.status(200).json({episodes});
|
|
} else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
}).catch((err) =>{
|
|
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/getAnimeServers/:id([^/]+/[^/]+)' , (req, res) =>{
|
|
|
|
let id = req.params.id;
|
|
|
|
api.getAnimeServers(id)
|
|
.then(servers =>{
|
|
if (servers.length > 0) {
|
|
res.status(200).json({
|
|
servers
|
|
});
|
|
} else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/search/:title' , (req, res) =>{
|
|
let title = req.params.title;
|
|
|
|
api.search(title)
|
|
.then(search =>{
|
|
if (search.length > 0) {
|
|
res.status(200).json({
|
|
search
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/images/:query' , (req, res) =>{
|
|
let query = { title: req.params.query, count: '51', type: 'images', safesearch: '1', country: 'es_ES', uiv: '4' };
|
|
|
|
api.getImages(query)
|
|
.then(images =>{
|
|
if (images.length > 0) {
|
|
res.status(200).json({
|
|
images
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/videos/:channelId' , (req, res) =>{
|
|
let channelId = { id: req.params.channelId, part: 'snippet,id', order: 'date', maxResults: '50', prop: 'items' };
|
|
|
|
api.getYoutubeVideos(channelId)
|
|
.then(videos =>{
|
|
if (videos.length > 0) {
|
|
res.status(200).json({
|
|
videos
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/sectionedVideos/:type' , (req, res) =>{
|
|
let type = req.params.type;
|
|
|
|
api.getSectionYoutubeVideos(type)
|
|
.then(videos =>{
|
|
if (videos.length > 0) {
|
|
res.status(200).json({
|
|
videos
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/radio' , (req, res) =>{
|
|
api.getRadioStations()
|
|
.then(stations =>{
|
|
if (stations.length > 0) {
|
|
res.status(200).json({
|
|
stations
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/allThemes', (req, res) =>{
|
|
|
|
api.getAllThemes()
|
|
.then(themes =>{
|
|
if (themes.length > 0) {
|
|
res.status(200).json({
|
|
themes
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
|
|
router.get('/themes/:title' , (req, res) =>{
|
|
let title = req.params.title;
|
|
|
|
api.getOpAndEd(title)
|
|
.then(themes => {
|
|
if (themes) {
|
|
res.status(200).json({
|
|
themes
|
|
});
|
|
} else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/themesYear/:year?', (req, res) =>{
|
|
let year = req.params.year;
|
|
|
|
api.getThemesYear(year)
|
|
.then(themes =>{
|
|
if (themes.length > 0) {
|
|
res.status(200).json({
|
|
themes
|
|
});
|
|
} else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/randomTheme', (req, res) =>{
|
|
|
|
api.getRandomTheme()
|
|
.then(random =>{
|
|
if (random.length > 0) {
|
|
res.set('Cache-Control', 'no-store');
|
|
res.status(200).json({
|
|
random
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/artists/:id?', (req, res) =>{
|
|
|
|
let id = req.params.id;
|
|
|
|
api.getArtist(id)
|
|
.then(artists =>{
|
|
if (artists.length > 0) {
|
|
res.status(200).json({
|
|
artists
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
|
|
});
|
|
|
|
router.get('/getByGenres/:genre?/:order?/:page?' , (req , res) =>{
|
|
let genres = { genre: req.params.genre, order: req.params.order, page: req.params.page };
|
|
|
|
api.getAnimeGenres(genres)
|
|
.then(animes => {
|
|
if (animes.length > 0) {
|
|
res.status(200).json({
|
|
animes
|
|
});
|
|
} else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
});
|
|
|
|
router.get('/randomAnime', (req, res) => {
|
|
api.getRandomAnime()
|
|
.then(anime => {
|
|
if (anime) {
|
|
res.set('Cache-Control', 'no-store');
|
|
res.status(200).json(anime);
|
|
}else {
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'});
|
|
}
|
|
})
|
|
.catch(error => {
|
|
console.log(error);
|
|
});
|
|
});
|
|
|
|
router.get('/destAnimePlatforms' , (req , res) =>{
|
|
|
|
api.getDestAnimePlatforms()
|
|
.then(destPlatforms =>{
|
|
if (destPlatforms.length > 0) {
|
|
res.status(200).json({
|
|
destPlatforms
|
|
});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
});
|
|
|
|
router.get('/platforms/:id?' , (req , res) =>{
|
|
|
|
let id = req.params.id;
|
|
|
|
api.getPlatforms(id)
|
|
.then(platforms =>{
|
|
if (platforms.length > 0) {
|
|
res.status(200).json({platforms});
|
|
} else (
|
|
res.status(500).json({ message: 'Aruppi lost in the shell'})
|
|
)
|
|
}).catch((err) =>{
|
|
console.error(err);
|
|
});
|
|
});
|
|
|
|
module.exports = router;
|