mirror of
https://github.com/Viren070/tmdb-addon.git
synced 2025-12-01 23:18:11 +01:00
Added new manifest
This commit is contained in:
+1
-1
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"projectName": "tmdb-addon",
|
||||
"lastCommit": "da0459d"
|
||||
"lastCommit": "826d320"
|
||||
}
|
||||
@@ -13,6 +13,11 @@ var respond = function (res, data) {
|
||||
res.send(data);
|
||||
};
|
||||
|
||||
addon.get("/manifest.json", async function (req, res) {
|
||||
const resp = await getManifest()
|
||||
respond(res, resp);
|
||||
});
|
||||
|
||||
addon.get("/:language/manifest.json", async function (req, res) {
|
||||
const language = req.params.language
|
||||
const resp = await getManifest(language)
|
||||
|
||||
+37
-4
@@ -2,8 +2,9 @@ const { MovieDb } = require("moviedb-promise");
|
||||
const moviedb = new MovieDb(process.env.tmdb_api);
|
||||
|
||||
async function getManifest(language) {
|
||||
const genre = moviedb
|
||||
.genreMovieList({ language: language })
|
||||
if (language != null) {
|
||||
const genre = moviedb
|
||||
.genreMovieList({ language: 'en-US' })
|
||||
.then((res) => {
|
||||
return res.genres;
|
||||
})
|
||||
@@ -13,7 +14,7 @@ async function getManifest(language) {
|
||||
return el.name;
|
||||
});
|
||||
const genre_tv = moviedb
|
||||
.genreTvList({ language: language })
|
||||
.genreTvList({ language: 'en-US' })
|
||||
.then((res) => {
|
||||
return res.genres;
|
||||
})
|
||||
@@ -34,7 +35,7 @@ async function getManifest(language) {
|
||||
idPrefixes: ["tmdb:"],
|
||||
behaviorHints: {
|
||||
configurable: true,
|
||||
configurationRequired: false,
|
||||
configurationRequired: true,
|
||||
},
|
||||
catalogs: [
|
||||
{
|
||||
@@ -52,6 +53,38 @@ async function getManifest(language) {
|
||||
],
|
||||
};
|
||||
return manifest;
|
||||
} else {
|
||||
const manifest = {
|
||||
id: "tmdb.addon",
|
||||
version: "0.0.1",
|
||||
icon:
|
||||
"https://pbs.twimg.com/profile_images/1243623122089041920/gVZIvphd_400x400.jpg",
|
||||
name: "The Movie Database Addon",
|
||||
description: "TMDB API for Stremio.",
|
||||
resources: ["catalog", "meta"],
|
||||
types: ["movie", "series"],
|
||||
idPrefixes: ["tmdb:"],
|
||||
// behaviorHints: {
|
||||
// configurable: true,
|
||||
// configurationRequired: false,
|
||||
// },
|
||||
catalogs: [
|
||||
{
|
||||
type: "movie",
|
||||
id: "movie.top",
|
||||
extraSupported: ["search", "genre", "skip"],
|
||||
genres: genres_movie,
|
||||
},
|
||||
{
|
||||
type: "series",
|
||||
id: "series.top",
|
||||
extraSupported: ["search", "genre", "skip"],
|
||||
genres: genres_series,
|
||||
},
|
||||
],
|
||||
};
|
||||
return manifest;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = { getManifest };
|
||||
|
||||
+25
-25
@@ -9,17 +9,17 @@ const moviedb = new MovieDb(process.env.tmdb_api);
|
||||
|
||||
async function getMeta(type, language, tmdbId) {
|
||||
if (type === "movie") {
|
||||
const get_logo = await getLogo(type, tmdbId)
|
||||
const logo = get_logo.map((el) => {
|
||||
return el.url
|
||||
})
|
||||
const resp = await getVideos(type, language, tmdbId);
|
||||
const credits = await getCredits(type, language, tmdbId);
|
||||
const crew = await getDirector(type, language, tmdbId);
|
||||
const cast = credits.slice(0, 4).map((el) => {
|
||||
return el.name;
|
||||
});
|
||||
const director = crew.find((x) => x.job === "Director").name;
|
||||
// const get_logo = await getLogo(type, tmdbId)
|
||||
// const logo = get_logo.map((el) => {
|
||||
// return el.url
|
||||
// })
|
||||
// const resp = await getVideos(type, language, tmdbId);
|
||||
// const credits = await getCredits(type, language, tmdbId);
|
||||
// const crew = await getDirector(type, language, tmdbId);
|
||||
// const cast = credits.slice(0, 4).map((el) => {
|
||||
// return el.name;
|
||||
// });
|
||||
// const director = crew.find((x) => x.job === "Director").name;
|
||||
const metas = moviedb
|
||||
.movieInfo({ id: tmdbId, language: language })
|
||||
.then((res) => {
|
||||
@@ -38,32 +38,32 @@ async function getMeta(type, language, tmdbId) {
|
||||
runtime,
|
||||
backdrop_path,
|
||||
} = await metas;
|
||||
const genero = genres.map((el) => {
|
||||
return el.name;
|
||||
});
|
||||
const videos = resp.map((el) => {
|
||||
return {
|
||||
source: `${el.key}`,
|
||||
type: `${el.type}`,
|
||||
};
|
||||
});
|
||||
// const genero = genres.map((el) => {
|
||||
// return el.name;
|
||||
// });
|
||||
// const videos = resp.map((el) => {
|
||||
// return {
|
||||
// source: `${el.key}`,
|
||||
// type: `${el.type}`,
|
||||
// };
|
||||
// });
|
||||
let meta = {
|
||||
id: `tmdb:${tmdbId}`,
|
||||
imdb_id: `${imdb_id}`,
|
||||
type: type,
|
||||
name: `${title}`,
|
||||
imdbRating: `${vote_average}`,
|
||||
genres: genero,
|
||||
cast: cast,
|
||||
director: [`${director}`],
|
||||
// genres: genero,
|
||||
// cast: cast,
|
||||
// director: [`${director}`],
|
||||
poster: `https://image.tmdb.org/t/p/original${poster_path}`,
|
||||
posterShape: "regular",
|
||||
description: `${overview}`,
|
||||
runtime: `${runtime} mim`,
|
||||
background: `https://image.tmdb.org/t/p/original${backdrop_path}`,
|
||||
logo: (logo.slice(0,1)).toString(),
|
||||
// logo: (logo.slice(0,1)).toString(),
|
||||
releaseInfo: `${release_date.substr(0, 4)}`,
|
||||
trailers: videos,
|
||||
// trailers: videos,
|
||||
};
|
||||
return Promise.resolve({ meta });
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user