extension(Autoembed): Updated logic

This commit is contained in:
Swakshan
2024-12-20 21:56:08 +05:30
parent d696b62b91
commit b301de9286

View File

@@ -6,7 +6,7 @@ const mangayomiSources = [{
"iconUrl": "https://www.google.com/s2/favicons?sz=64&domain=https://autoembed.cc/", "iconUrl": "https://www.google.com/s2/favicons?sz=64&domain=https://autoembed.cc/",
"typeSource": "multi", "typeSource": "multi",
"isManga": false, "isManga": false,
"version": "0.0.2", "version": "0.0.3",
"dateFormat": "", "dateFormat": "",
"dateFormatLocale": "", "dateFormatLocale": "",
"pkgPath": "" "pkgPath": ""
@@ -20,11 +20,15 @@ class DefaultExtension extends MProvider {
} }
} }
async tmdbSearchRequest(slug, page = 1) { async getPreference(key) {
var skip = (page - 1) * 20; const preferences = new SharedPreferences();
const api = `${this.tmdb_api}/${slug}skip=${skip}.json` return preferences.get(key);
const response = await new Client().get(api); }
const body = JSON.parse(response.body);
async tmdbRequest(slug) {
var api = `${this.tmdb_api}/${slug}`
var response = await new Client().get(api);
var body = JSON.parse(response.body);
return body; return body;
} }
@@ -43,18 +47,30 @@ class DefaultExtension extends MProvider {
genre: result.genre genre: result.genre
}); });
} }
return items;
}
async getSearchInfo(slug) {
var body = await this.tmdbRequest(`catalog/movie/${slug}`);
var popMovie = await this.getSearchItems(body);
body = await this.tmdbRequest(`catalog/series/${slug}`);
var popSeries = await this.getSearchItems(body);
var hasNextPage = true; var hasNextPage = true;
return { return {
"list": items, list: [...popMovie, ...popSeries],
hasNextPage hasNextPage
}; };
} }
async getPopular(page) { async getPopular(page) {
const preferences = new SharedPreferences(); var skip = (page - 1) * 20;
var media_type = preferences.get("pref_popular_page"); return await this.getSearchInfo(`tmdb.popular/skip=${skip}.json`);
var body = await this.tmdbSearchRequest(`catalog/${media_type}/tmdb.popular/`, page);
return this.getSearchItems(body);
} }
get supportsLatest() { get supportsLatest() {
throw new Error("supportsLatest not implemented"); throw new Error("supportsLatest not implemented");
@@ -69,11 +85,9 @@ class DefaultExtension extends MProvider {
var parts = url.split("/"); var parts = url.split("/");
var media_type = parts[0]; var media_type = parts[0];
var id = parts[1]; var id = parts[1];
var api = `${this.tmdb_api}/meta/${media_type}/${id}.json` var body = await this.tmdbRequest(`meta/${media_type}/${id}.json`)
const response = await new Client().get(api);
const body = JSON.parse(response.body);
var result = body.meta; var result = body.meta;
var tmdb_id = id.substring(5, ) var tmdb_id = id.substring(5, )
var imdb_id = result.imdb_id var imdb_id = result.imdb_id
var dateNow = Date.now().valueOf(); var dateNow = Date.now().valueOf();
@@ -182,17 +196,6 @@ class DefaultExtension extends MProvider {
} }
getSourcePreferences() { getSourcePreferences() {
return [{
key: 'pref_popular_page',
listPreference: {
title: 'Preferred popular page',
summary: '',
valueIndex: 0,
entries: ["Movies", "TV Shows"],
entryValues: ["movie", "series"]
}
},
];
} }
} }