mirror of
https://github.com/kodjodevf/mangayomi-extensions.git
synced 2026-02-14 02:41:39 +00:00
extension(animegg): Added dub streams
This commit is contained in:
@@ -6,7 +6,7 @@ const mangayomiSources = [{
|
|||||||
"iconUrl": "https://www.google.com/s2/favicons?sz=256&domain=https://www.animegg.org/",
|
"iconUrl": "https://www.google.com/s2/favicons?sz=256&domain=https://www.animegg.org/",
|
||||||
"typeSource": "single",
|
"typeSource": "single",
|
||||||
"itemType": 1,
|
"itemType": 1,
|
||||||
"version": "1.0.0",
|
"version": "1.0.1",
|
||||||
"pkgPath": "anime/src/en/animegg.js"
|
"pkgPath": "anime/src/en/animegg.js"
|
||||||
}];
|
}];
|
||||||
|
|
||||||
@@ -25,7 +25,7 @@ class DefaultExtension extends MProvider {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getPreference(key) {
|
getPreference(key) {
|
||||||
return new SharedPreferences().get(key);
|
return parseInt(new SharedPreferences().get(key));
|
||||||
}
|
}
|
||||||
|
|
||||||
async requestText(slug) {
|
async requestText(slug) {
|
||||||
@@ -67,7 +67,7 @@ class DefaultExtension extends MProvider {
|
|||||||
var limit = start + 25;
|
var limit = start + 25;
|
||||||
|
|
||||||
var category = ""
|
var category = ""
|
||||||
var pop = parseInt(this.getPreference("animegg_popular_category"))
|
var pop = this.getPreference("animegg_popular_category")
|
||||||
switch (pop) {
|
switch (pop) {
|
||||||
case 1: {
|
case 1: {
|
||||||
category = "sortBy=createdAt&sortDirection=DESC&";
|
category = "sortBy=createdAt&sortDirection=DESC&";
|
||||||
@@ -173,24 +173,24 @@ class DefaultExtension extends MProvider {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// For anime episode video list
|
async exxtractStreams(div,audio){
|
||||||
async getVideoList(url) {
|
|
||||||
var body = await this.request(url)
|
var slug = div.selectFirst("iframe").getSrc
|
||||||
var iframe = body.selectFirst("iframe")
|
var streams = []
|
||||||
var src = iframe.attr('src')
|
if(slug.length < 1){
|
||||||
|
return streams;
|
||||||
body = await this.requestText(src)
|
}
|
||||||
|
var body = await this.requestText(slug)
|
||||||
var sKey = "var videoSources = "
|
var sKey = "var videoSources = "
|
||||||
var eKey = "var httpProtocol"
|
var eKey = "var httpProtocol"
|
||||||
var start = body.indexOf(sKey) + sKey.length
|
var start = body.indexOf(sKey) + sKey.length
|
||||||
var end = body.indexOf(eKey) - 8
|
var end = body.indexOf(eKey) - 8
|
||||||
var videoSourcesStr = body.substring(start, end)
|
var videoSourcesStr = body.substring(start, end)
|
||||||
let videoSources = eval("(" + videoSourcesStr + ")");
|
let videoSources = eval("(" + videoSourcesStr + ")");
|
||||||
var streams = []
|
|
||||||
var headers = this.getHeaders();
|
var headers = this.getHeaders();
|
||||||
videoSources.forEach(videoSource => {
|
videoSources.forEach(videoSource => {
|
||||||
var url = this.source.baseUrl +videoSource.file
|
var url = this.source.baseUrl +videoSource.file
|
||||||
var quality = videoSource.label
|
var quality = `${videoSource.label} - ${audio}`
|
||||||
|
|
||||||
streams.push({
|
streams.push({
|
||||||
url,
|
url,
|
||||||
@@ -200,6 +200,27 @@ class DefaultExtension extends MProvider {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
return streams.reverse();
|
return streams.reverse();
|
||||||
|
}
|
||||||
|
|
||||||
|
// For anime episode video list
|
||||||
|
async getVideoList(url) {
|
||||||
|
var body = await this.request(url)
|
||||||
|
|
||||||
|
var sub = body.selectFirst("#subbed-Animegg")
|
||||||
|
var subStreams = await this.exxtractStreams(sub,"Sub")
|
||||||
|
|
||||||
|
var dub = body.selectFirst("#dubbed-Animegg")
|
||||||
|
var dubStreams = await this.exxtractStreams(dub,"Dub")
|
||||||
|
|
||||||
|
var pref = this.getPreference("animegg_stream_type")
|
||||||
|
var streams = [];
|
||||||
|
if(pref == 0){
|
||||||
|
streams = [...subStreams,...dubStreams]
|
||||||
|
}else{
|
||||||
|
streams = [...dubStreams,...subStreams]
|
||||||
|
}
|
||||||
|
|
||||||
|
return streams
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -214,6 +235,16 @@ class DefaultExtension extends MProvider {
|
|||||||
entries: ["Popular", "Newest", "Ongoing", "Completed", "Alphabetical"],
|
entries: ["Popular", "Newest", "Ongoing", "Completed", "Alphabetical"],
|
||||||
entryValues: ["0", "1", "2", "3", "4"]
|
entryValues: ["0", "1", "2", "3", "4"]
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
key: "animegg_stream_type",
|
||||||
|
listPreference: {
|
||||||
|
title: 'Preferred stream type',
|
||||||
|
summary: '',
|
||||||
|
valueIndex: 0,
|
||||||
|
entries: ["Sub","Dub"],
|
||||||
|
entryValues: ["0", "1"]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user