mirror of
https://github.com/hama3254/Crunchyroll-Downloader-v3.0.git
synced 2024-12-24 15:11:48 +01:00
Chrome addon support
-Chrome addon support -chrome addon itself
This commit is contained in:
parent
2859645e0d
commit
e60637c66c
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
CRD-addon - Chrome/icons/icon-128.png
Normal file
BIN
CRD-addon - Chrome/icons/icon-128.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.8 KiB |
BIN
CRD-addon - Chrome/icons/icon-20.png
Normal file
BIN
CRD-addon - Chrome/icons/icon-20.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 793 B |
BIN
CRD-addon - Chrome/icons/icon-48.png
Normal file
BIN
CRD-addon - Chrome/icons/icon-48.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.7 KiB |
BIN
CRD-addon - Chrome/images/submit.png
Normal file
BIN
CRD-addon - Chrome/images/submit.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.6 KiB |
34
CRD-addon - Chrome/inject.js
Normal file
34
CRD-addon - Chrome/inject.js
Normal file
@ -0,0 +1,34 @@
|
||||
var episodeCount = document.getElementsByClassName("episode").length;
|
||||
var i;
|
||||
for (i = 0; i < episodeCount; i++) {
|
||||
document.getElementsByClassName("episode")[i].setAttribute('href', "javascript:" + document.getElementsByClassName("episode")[i].href);
|
||||
document.getElementsByClassName("episode")[i].setAttribute('onclick', 'deselect(this.id)')
|
||||
//document.getElementsByClassName("episode")[i].style.background = "#f78c25";
|
||||
document.getElementsByClassName("episode")[i].setAttribute('id', makeid(8))
|
||||
//document.getElementsByClassName("episode")[i].classList.add('CRD-Selected')
|
||||
}
|
||||
|
||||
function deselect(clicked_id) {
|
||||
var seleceted = document.getElementById(clicked_id).classList.contains('CRD-Selected')
|
||||
|
||||
if (seleceted == true) {
|
||||
document.getElementById(clicked_id).classList.remove('CRD-Selected')
|
||||
document.getElementById(clicked_id).style.background = "#ffffff";
|
||||
|
||||
} else {
|
||||
document.getElementById(clicked_id).classList.add('CRD-Selected')
|
||||
document.getElementById(clicked_id).style.background = "#f78c25";
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function makeid(length) {
|
||||
var result = '';
|
||||
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
||||
var charactersLength = characters.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
||||
}
|
||||
return result;
|
||||
}
|
34
CRD-addon - Chrome/inject_funimation.js
Normal file
34
CRD-addon - Chrome/inject_funimation.js
Normal file
@ -0,0 +1,34 @@
|
||||
var episodeCount = document.getElementsByClassName("episode").length;
|
||||
var i;
|
||||
for (i = 0; i < episodeCount; i++) {
|
||||
document.getElementsByClassName("episode")[i].setAttribute('href', "javascript:" + document.getElementsByClassName("episode")[i].href);
|
||||
document.getElementsByClassName("episode")[i].setAttribute('onclick', 'deselect(this.id)')
|
||||
//document.getElementsByClassName("episode")[i].style.background = "#f78c25";
|
||||
document.getElementsByClassName("episode")[i].setAttribute('id', makeid(8))
|
||||
//document.getElementsByClassName("episode")[i].classList.add('CRD-Selected')
|
||||
}
|
||||
|
||||
function deselect(clicked_id) {
|
||||
var seleceted = document.getElementById(clicked_id).classList.contains('CRD-Selected')
|
||||
|
||||
if (seleceted == true) {
|
||||
document.getElementById(clicked_id).classList.remove('CRD-Selected')
|
||||
document.getElementById(clicked_id).style.background = "#ffffff";
|
||||
|
||||
} else {
|
||||
document.getElementById(clicked_id).classList.add('CRD-Selected')
|
||||
document.getElementById(clicked_id).style.background = "#f78c25";
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function makeid(length) {
|
||||
var result = '';
|
||||
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
||||
var charactersLength = characters.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
||||
}
|
||||
return result;
|
||||
}
|
26
CRD-addon - Chrome/manifest.json
Normal file
26
CRD-addon - Chrome/manifest.json
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"manifest_version": 2,
|
||||
"name": "Crunchyroll Downloader Addon",
|
||||
"version": "0.2.0",
|
||||
|
||||
"description": "A Chrome Addon for my Crunchyroll Downloader",
|
||||
|
||||
"icons": {
|
||||
"48": "icons/icon-48.png"
|
||||
},
|
||||
"permissions": [
|
||||
"activeTab",
|
||||
"tabs"
|
||||
],
|
||||
|
||||
"browser_action": {
|
||||
"default_icon": {
|
||||
"128": "icons/icon-128.png",
|
||||
"48": "icons/icon-48.png",
|
||||
"20": "icons/icon-20.png"
|
||||
},
|
||||
"default_title": "CR-Downloader",
|
||||
"default_popup": "popup.html"
|
||||
}
|
||||
|
||||
}
|
15
CRD-addon - Chrome/popup.css
Normal file
15
CRD-addon - Chrome/popup.css
Normal file
@ -0,0 +1,15 @@
|
||||
.btn_class {
|
||||
background-color: #ff8000;
|
||||
border: none;
|
||||
color: white;
|
||||
padding: 10px;
|
||||
text-align: center;
|
||||
text-decoration: none;
|
||||
font-size: 16px;
|
||||
margin-left:12px;
|
||||
margin-right:12px;
|
||||
margin-Top:12px;
|
||||
margin-Bottom:12px;
|
||||
border-radius: 12px;
|
||||
cursor:pointer;
|
||||
}
|
34
CRD-addon - Chrome/popup.html
Normal file
34
CRD-addon - Chrome/popup.html
Normal file
@ -0,0 +1,34 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="stylesheet" href="popup.css" />
|
||||
<meta charset="utf-8" />
|
||||
<title>CR Unblocker plugin popup</title>
|
||||
<style>
|
||||
.body{background-color: #f2f2f2;}
|
||||
.main-bg {background-color:#757575;}
|
||||
.frame{height: 70px; width: 770px}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<center>
|
||||
|
||||
<div id="frame2" class="frame" >
|
||||
|
||||
<button type="button" class='btn_class' id='btn_enable_funimation_select'>Select Episodes</button>
|
||||
<button type="button" class='btn_class' id='btn_add_funimation'>Add this Funimation Episode</button>
|
||||
|
||||
|
||||
<button type="button" class='btn_class' id='btn_add'>Add this Crunchyroll Episode</button>
|
||||
<button type="button" class='btn_class' id='btn_add_mass'>Add selected Episodes</button>
|
||||
<button type="button" class='btn_class' id='btn_enable_select'>Select Episodes</button>
|
||||
<button type="button" class='btn_class' id='btn_select_all'>Select All</button>
|
||||
<button type="button" class='btn_class' id='btn_select_none'>Deselect All</button>
|
||||
|
||||
</div>
|
||||
<iframe src="http://127.0.0.1" id="CRD-Webserver" width="760px" height="320px" frameborder="0"></iframe>
|
||||
</center>
|
||||
<script type="text/javascript" src="popup.js"></script>
|
||||
</body>
|
||||
</html>
|
335
CRD-addon - Chrome/popup.js
Normal file
335
CRD-addon - Chrome/popup.js
Normal file
@ -0,0 +1,335 @@
|
||||
chrome.tabs.query({
|
||||
active: true,
|
||||
currentWindow: true
|
||||
},
|
||||
function (tabs) {
|
||||
console.log(tabs.length);
|
||||
let tab = tabs[0]; // Safe to assume there will only be one resultconsole.log(tab.url);
|
||||
console.log(tab.url);
|
||||
if (tab.url.includes('crunchyroll.com')) {
|
||||
//var crunchyroll = chrome.tabs.executeScript({
|
||||
// code: 'document.getElementsByClassName("episode")[0].href;'
|
||||
//});
|
||||
|
||||
//crunchyroll.then(onExecuted, onError);
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
//code: 'document.getElementsByClassName("episode")[0].href;'
|
||||
code: 'document.getElementsByClassName("episode").length;'
|
||||
},
|
||||
function (results) {
|
||||
|
||||
if (results > 0 )
|
||||
{
|
||||
onExecuted(results);
|
||||
} else {
|
||||
onError("error")
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
} else if (tab.url.includes('funimation.com')) {
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'document.getElementsByClassName("trackVideo")[0].href'
|
||||
},
|
||||
function (results) {
|
||||
|
||||
if (results !== null) {
|
||||
FunimationSuccess(results);
|
||||
|
||||
} else {
|
||||
FunimationError(results);
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
} else {
|
||||
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add_mass").hidden = true;
|
||||
document.getElementById("btn_select_all").hidden = true;
|
||||
document.getElementById("btn_select_none").hidden = true;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById('btn_enable_select').addEventListener('click', () => {
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var script=document.createElement("script");script.type="text/javascript",script.src="http://127.0.0.1/inject.js",document.head.appendChild(script);'
|
||||
});
|
||||
|
||||
//browser.tabs.executeScript({
|
||||
// code: 'var script=document.createElement("script");script.type="text/javascript",script.src="http://127.0.0.1/inject.js",document.head.appendChild(script);'
|
||||
//}); //load script from local CRD Server included in https://github.com/hama3254/Crunchyroll-Downloader-v3.0
|
||||
|
||||
document.getElementById("btn_add_mass").hidden = false;
|
||||
document.getElementById("btn_select_all").hidden = false;
|
||||
document.getElementById("btn_select_none").hidden = false;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
});
|
||||
|
||||
document.getElementById('btn_select_all').addEventListener('click', () => {
|
||||
chrome.tabs.query({
|
||||
active: true,
|
||||
currentWindow: true
|
||||
},
|
||||
function (tabs) {
|
||||
console.log(tabs.length);
|
||||
let tab = tabs[0]; // Safe to assume there will only be one resultconsole.log(tab.url);
|
||||
console.log(tab.url);
|
||||
if (tab.url.includes('crunchyroll.com')) {
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var i,episodeCount=document.getElementsByClassName("episode").length;for(i=0;i<episodeCount;i++)document.getElementsByClassName("episode")[i].style.background="#f78c25",document.getElementsByClassName("episode")[i].classList.add("CRD-Selected");'
|
||||
});
|
||||
|
||||
} else if (tab.url.includes('funimation.com')) {
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var i,episodeCount=document.getElementsByClassName("fullEpisodeThumbs").length;for(i=0;i<episodeCount;i++)document.getElementsByClassName("fullEpisodeThumbs")[i].style.background="#f78c25",document.getElementsByClassName("fullEpisodeThumbs")[i].classList.add("CRD-Selected");'
|
||||
});
|
||||
|
||||
} else {}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
document.getElementById('btn_select_none').addEventListener('click', () => {
|
||||
|
||||
chrome.tabs.query({
|
||||
active: true,
|
||||
currentWindow: true
|
||||
},
|
||||
function (tabs) {
|
||||
console.log(tabs.length);
|
||||
let tab = tabs[0]; // Safe to assume there will only be one resultconsole.log(tab.url);
|
||||
console.log(tab.url);
|
||||
if (tab.url.includes('crunchyroll.com')) {
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var i,episodeCount=document.getElementsByClassName("episode").length;for(i=0;i<episodeCount;i++)document.getElementsByClassName("episode")[i].style.background="#ffffff",document.getElementsByClassName("episode")[i].classList.remove("CRD-Selected");'
|
||||
});
|
||||
|
||||
} else if (tab.url.includes('funimation.com')) {
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var i,episodeCount=document.getElementsByClassName("fullEpisodeThumbs").length;for(i=0;i<episodeCount;i++)document.getElementsByClassName("fullEpisodeThumbs")[i].style.background="#ffffff",document.getElementsByClassName("fullEpisodeThumbs")[i].classList.remove("CRD-Selected");'
|
||||
});
|
||||
|
||||
} else {}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
document.getElementById('btn_add').addEventListener('click', () => {
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: "document.getElementsByClassName('no-js')[0].innerHTML;"
|
||||
},
|
||||
function (results) {
|
||||
|
||||
if (results !== null) {
|
||||
|
||||
document.getElementById("btn_add").disabled = true;
|
||||
document.getElementById("btn_add").style.background = "#c9c9c9"
|
||||
const form = document.createElement('form');
|
||||
form.method = 'post';
|
||||
form.action = "http://127.0.0.1/post";
|
||||
const hiddenField = document.createElement('input');
|
||||
hiddenField.type = 'hidden';
|
||||
hiddenField.name = "HTMLSingle";
|
||||
hiddenField.value = results;
|
||||
form.appendChild(hiddenField);
|
||||
|
||||
document.body.appendChild(form);
|
||||
form.submit();
|
||||
|
||||
setTimeout(function () {
|
||||
document.getElementById("btn_add").style.background = "#ff8000"
|
||||
}, 4000);
|
||||
setTimeout(function () {
|
||||
document.getElementById("btn_add").disabled = false;
|
||||
}, 4000);
|
||||
|
||||
} else {
|
||||
add_one_error(results);
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
document.getElementById('btn_add_funimation').addEventListener('click', () => {
|
||||
|
||||
chrome.tabs.query({
|
||||
active: true,
|
||||
currentWindow: true
|
||||
},
|
||||
function (tabs) {
|
||||
console.log(tabs.length);
|
||||
let tab = tabs[0]; // Safe to assume there will only be one resultconsole.log(tab.url);
|
||||
console.log(tab.url);
|
||||
const form = document.createElement('form');
|
||||
form.method = 'post';
|
||||
form.action = "http://127.0.0.1/post";
|
||||
|
||||
const hiddenField2 = document.createElement('input');
|
||||
hiddenField2.type = 'hidden';
|
||||
hiddenField2.name = "FunimationURL";
|
||||
hiddenField2.value = tab.url;
|
||||
form.appendChild(hiddenField2);
|
||||
|
||||
document.body.appendChild(form);
|
||||
form.submit();
|
||||
});
|
||||
});
|
||||
|
||||
document.getElementById('btn_add_mass').addEventListener('click', () => {
|
||||
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var i,URLList="";for(i=0;i<document.getElementsByClassName("CRD-Selected").length;i++)URLList+=document.getElementsByClassName("CRD-Selected")[i].getAttribute("href");URLList;'
|
||||
},
|
||||
function (results) {
|
||||
|
||||
if (results !== null) {
|
||||
|
||||
document.getElementById("btn_add_mass").disabled = true;
|
||||
document.getElementById("btn_add_mass").style.background = "#c9c9c9"
|
||||
const form = document.createElement('form');
|
||||
form.method = 'post';
|
||||
form.action = "http://127.0.0.1/post";
|
||||
const hiddenField = document.createElement('input');
|
||||
hiddenField.type = 'hidden';
|
||||
hiddenField.name = "HTMLMass";
|
||||
hiddenField.value = results;
|
||||
form.appendChild(hiddenField);
|
||||
|
||||
document.body.appendChild(form);
|
||||
form.submit();
|
||||
|
||||
setTimeout(function () {
|
||||
document.getElementById("btn_add_mass").style.background = "#ff8000"
|
||||
}, 4000);
|
||||
setTimeout(function () {
|
||||
document.getElementById("btn_add_mass").disabled = false;
|
||||
}, 4000);
|
||||
|
||||
} else {
|
||||
add_mass_error(results);
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function onExecuted(result) {
|
||||
console.log(result[0]);
|
||||
|
||||
if (result[0].includes('javascript:')) {
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_add_mass").hidden = false;
|
||||
document.getElementById("btn_select_all").hidden = false;
|
||||
document.getElementById("btn_select_none").hidden = false;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
console.log(true);
|
||||
} else {
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_enable_select").hidden = false;
|
||||
document.getElementById("btn_add_mass").hidden = true;
|
||||
document.getElementById("btn_select_all").hidden = true;
|
||||
document.getElementById("btn_select_none").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
|
||||
console.log(false);
|
||||
}
|
||||
}
|
||||
|
||||
function onError(error) {
|
||||
console.log(`Error: ${error}`);
|
||||
|
||||
document.getElementById("btn_add").hidden = false;
|
||||
document.getElementById("btn_add_mass").hidden = true;
|
||||
document.getElementById("btn_select_all").hidden = true;
|
||||
document.getElementById("btn_select_none").hidden = true;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
|
||||
}
|
||||
|
||||
function add_one_error(error) {
|
||||
console.log(`Error: ${error}`);
|
||||
}
|
||||
|
||||
function add_mass_error(error) {
|
||||
console.log(`Error: ${error}`);
|
||||
}
|
||||
//funimation
|
||||
|
||||
document.getElementById('btn_enable_funimation_select').addEventListener('click', () => {
|
||||
|
||||
// browser.tabs.executeScript({
|
||||
// code: 'var script=document.createElement("script");script.type="text/javascript",script.src="http://127.0.0.1/inject_funimation.js",document.head.appendChild(script);'
|
||||
// }); //load script from local CRD Server included in https://github.com/hama3254/Crunchyroll-Downloader-v3.0
|
||||
chrome.tabs.executeScript(null, {
|
||||
code: 'var script=document.createElement("script");script.type="text/javascript",script.src="http://127.0.0.1/inject_funimation.js",document.head.appendChild(script);'
|
||||
});
|
||||
|
||||
document.getElementById("btn_add_mass").hidden = false;
|
||||
document.getElementById("btn_select_all").hidden = false;
|
||||
document.getElementById("btn_select_none").hidden = false;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
|
||||
});
|
||||
|
||||
function FunimationSuccess(result) {
|
||||
console.log(result[0]);
|
||||
|
||||
if (result[0].includes('javascript:')) {
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_add_mass").hidden = false;
|
||||
document.getElementById("btn_select_all").hidden = false;
|
||||
document.getElementById("btn_select_none").hidden = false;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
console.log(true);
|
||||
} else {
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = true;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add_mass").hidden = true;
|
||||
document.getElementById("btn_select_all").hidden = true;
|
||||
document.getElementById("btn_select_none").hidden = true;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = false;
|
||||
|
||||
console.log(false);
|
||||
}
|
||||
}
|
||||
|
||||
function FunimationError(error) {
|
||||
console.log(`Error: ${error}`);
|
||||
|
||||
document.getElementById("btn_add").hidden = true;
|
||||
document.getElementById("btn_add_mass").hidden = true;
|
||||
document.getElementById("btn_select_all").hidden = true;
|
||||
document.getElementById("btn_select_none").hidden = true;
|
||||
document.getElementById("btn_enable_select").hidden = true;
|
||||
document.getElementById("btn_add_funimation").hidden = false;
|
||||
document.getElementById("btn_enable_funimation_select").hidden = true;
|
||||
|
||||
}
|
@ -249,6 +249,7 @@ Public Class CRD_List_Item
|
||||
#Region "Download + Update UI"
|
||||
|
||||
Public Sub StartDownload(ByVal DL_URL As String, ByVal DL_Pfad As String, ByVal Filename As String, ByVal DownloadHybridMode As Boolean)
|
||||
'MsgBox(DL_URL)
|
||||
If DownloadHybridMode = True Then
|
||||
Dim Evaluator = New Thread(Sub() DownloadHybrid(DL_URL, DL_Pfad, Filename))
|
||||
Evaluator.Start()
|
||||
|
@ -1497,6 +1497,7 @@ Public Class Main
|
||||
'MsgBox(URL_DL)
|
||||
End If
|
||||
#End Region
|
||||
|
||||
#Region "thumbnail"
|
||||
Dim thumbnail As String() = WebbrowserText.Split(New String() {My.Resources.thumbnailString}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim thumbnail2 As String() = thumbnail(1).Split(New String() {Chr(34) + "}"}, System.StringSplitOptions.RemoveEmptyEntries) '(New [Char]() {"-"})
|
||||
@ -2460,7 +2461,7 @@ Public Class Main
|
||||
'End Try
|
||||
|
||||
Try
|
||||
Dim GeckoHTML As String = My.Resources.htmlTop
|
||||
Dim GeckoHTML As String = My.Resources.htmlTop + vbNewLine + My.Resources.htmlTitlel.Replace("Placeholder", StatusMainForm.Text)
|
||||
Dim LiAdd As String = Nothing
|
||||
For ii As Integer = 0 To ItemList.Count - 1
|
||||
For i As Integer = 0 To liList.Count - 1
|
||||
@ -2574,7 +2575,10 @@ Public Class Main
|
||||
|
||||
If strArray(0).Trim().ToUpper.Equals("POST") Then
|
||||
Debug.WriteLine("receiving data from the add-on")
|
||||
|
||||
Me.Invoke(New Action(Function()
|
||||
StatusMainForm.Text = "Status: receiving data from the add-on"
|
||||
Return Nothing
|
||||
End Function))
|
||||
#Region "CR Einzeln"
|
||||
|
||||
If InStr(htmlReq, "HTMLSingle=") Then
|
||||
@ -2828,6 +2832,8 @@ Public Class Main
|
||||
Return "application/vnd.ms-powerpoint"
|
||||
ElseIf (httpRequest.EndsWith("js")) Then
|
||||
Return "application/javascript"
|
||||
ElseIf (httpRequest.EndsWith("ass")) Then
|
||||
Return "application/octet-stream"
|
||||
Else
|
||||
Return "text/plain"
|
||||
End If
|
||||
|
@ -437,6 +437,16 @@ Namespace My.Resources
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Sucht eine lokalisierte Zeichenfolge, die <a class="main_titel">Placeholder</a>
|
||||
'''<img alt="image error" src="balken.png" class="class-balken"> ähnelt.
|
||||
'''</summary>
|
||||
Friend ReadOnly Property htmlTitlel() As String
|
||||
Get
|
||||
Return ResourceManager.GetString("htmlTitlel", resourceCulture)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Sucht eine lokalisierte Zeichenfolge, die <!DOCTYPE html>
|
||||
'''<head>
|
||||
|
@ -457,11 +457,11 @@ I delete the curremt session with the unlock, if you want to be logged in with t
|
||||
.percenttext{float:right;text-align:right;font-size:16px;display:inline-block;margin-right:25px}
|
||||
.resotext{text-align: left;font-size:18px;margin-left:0px;font-weight:550;}
|
||||
.titel{font-size:18px;font-weight:550;display:block;margin-top:5px}
|
||||
.main_titel{font-size:18px;font-weight:550;display:block;text-align:center;margin-top:5px}
|
||||
.cc-wert{font-size:18px;font-weight:550;display:block;margin-top:-20px;margin-left:250px;text-decoration: none;color:black;}
|
||||
.liClass{margin-bottom:8px}
|
||||
</style>
|
||||
<body id="bodypage" class="main-bg" >
|
||||
<img alt="image error" src="balken1.png" class="class-balken"></value>
|
||||
<body id="bodypage" class="main-bg" ></value>
|
||||
</data>
|
||||
<data name="main_credits_default" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\main_credits_default.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
@ -469,4 +469,8 @@ I delete the curremt session with the unlock, if you want to be logged in with t
|
||||
<data name="balken_console" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\balken_console.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="htmlTitlel" xml:space="preserve">
|
||||
<value><a class="main_titel">Placeholder</a>
|
||||
<img alt="image error" src="balken.png" class="class-balken"></value>
|
||||
</data>
|
||||
</root>
|
Binary file not shown.
Binary file not shown.
@ -236,6 +236,12 @@ setInterval(function loadXMLDoc() {
|
||||
<span class="titel" dir="auto"> ähnelt.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Crunchyroll_Downloader.My.Resources.Resources.htmlTitlel">
|
||||
<summary>
|
||||
Sucht eine lokalisierte Zeichenfolge, die <a class="main_titel">Placeholder</a>
|
||||
<img alt="image error" src="balken.png" class="class-balken"> ähnelt.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Crunchyroll_Downloader.My.Resources.Resources.htmlTop">
|
||||
<summary>
|
||||
Sucht eine lokalisierte Zeichenfolge, die <!DOCTYPE html>
|
||||
|
@ -0,0 +1,74 @@
|
||||
<!DOCTYPE html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
|
||||
</head>
|
||||
<html>
|
||||
<title>CRD</title>
|
||||
|
||||
<style>
|
||||
.main-bg {margin:0 0 0 0;background-color:#F2F2F2;font-family:Consolas;font-size:16px;}
|
||||
.div-spacer{width:16px;height:110px;display:block;margin-bottom:14px;position:relative}
|
||||
.div-episode{width:730px;height:110px;display:block;margin-bottom:14px;position:relative}
|
||||
.class-balken{width:735px;height:8px;display:block;margin-bottom:4px;margin-top:6px}
|
||||
.class-cc{width:36px;height:36px;display:block;margin-bottom:4px;margin-top:-6px;float: left;margin-left:-20px;}
|
||||
.imagestyle{width:156px;height:105px;display:block;margin-bottom:8px;margin-top:5px;margin-right: 10px;margin-left: 10px;float: left;}
|
||||
.spacediv{width:620px;height:175px;display:block;margin-bottom:4px}
|
||||
.ulStyle li{margin-left:12px;float:left;display:block;position:relative}
|
||||
.liOld{margin-left:12px;display:block}
|
||||
.ulStyle{margin:0 0 0 -10px;display:block;position:relative;margin-top:8px}
|
||||
.listyle{width:156px;display:block;background:#fff;padding:16px;margin-bottom:14px;position:relative;background-color:#b5b3b3}
|
||||
.progressbar{width:540px;height:20px;background:#dedede;margin-left: 170px;margin-top:8px;}
|
||||
.progressbar-value{background:#F78C25;height:20px;font-weight:bold;}
|
||||
.percenttext{float:right;text-align:right;font-size:16px;display:inline-block;margin-right:25px}
|
||||
.resotext{text-align: left;font-size:18px;margin-left:0px;font-weight:550;}
|
||||
.titel{font-size:18px;font-weight:550;display:block;margin-top:5px}
|
||||
.main_titel{font-size:18px;font-weight:550;display:block;text-align:center;margin-top:5px}
|
||||
.cc-wert{font-size:18px;font-weight:550;display:block;margin-top:-20px;margin-left:250px;text-decoration: none;color:black;}
|
||||
.liClass{margin-bottom:8px}
|
||||
</style>
|
||||
<body id="bodypage" class="main-bg" >
|
||||
<img alt="image error" src="balken.png" class="class-balken">
|
||||
<a class="main_titel">Deutsch</a>
|
||||
<div class="div-episode">
|
||||
|
||||
<img alt="image error" src="https://img1.ak.crunchyroll.com/i/spire4-tmb/43a60a9d2877b11429d71c81db6d76361408647106_fwide.jpg" class="imagestyle">
|
||||
|
||||
<div>
|
||||
|
||||
<span class="titel" dir="auto">RWBY <br> Staffel 2 Folge 4 5</span>
|
||||
|
||||
<div class="progressbar">
|
||||
|
||||
<div class="progressbar-value" style="width:100%"></div>
|
||||
|
||||
</div>
|
||||
<span dir="auto" class='percenttext'>Finished - 133,83MB</span>
|
||||
<div>
|
||||
<br>
|
||||
<span dir="auto" class="resotext">1080p</span>
|
||||
|
||||
<a href="#" class="cc-wert" title="Softsubs:
|
||||
Deutsch"> <img alt="image error" src="cc.png" class="class-cc">Deutsch</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<img alt="image error" src="balken.png" class="class-balken"><!-- RWBY Staffel 2 Folge 4 5-->
|
||||
<script>
|
||||
|
||||
setInterval(function loadXMLDoc() {
|
||||
var xhttp = new XMLHttpRequest();
|
||||
xhttp.onreadystatechange = function() {
|
||||
if (this.readyState == 4 && this.status == 200) {
|
||||
document.getElementById("bodypage").innerHTML = this.responseText;
|
||||
//console.log(this.responseText);
|
||||
}
|
||||
};
|
||||
xhttp.open("GET", "/", true);
|
||||
xhttp.send();
|
||||
}, 1000);
|
||||
</script>
|
||||
</body></html>
|
@ -22,40 +22,14 @@
|
||||
.percenttext{float:right;text-align:right;font-size:16px;display:inline-block;margin-right:25px}
|
||||
.resotext{text-align: left;font-size:18px;margin-left:0px;font-weight:550;}
|
||||
.titel{font-size:18px;font-weight:550;display:block;margin-top:5px}
|
||||
.main_titel{font-size:18px;font-weight:550;display:block;text-align:center;margin-top:5px}
|
||||
.cc-wert{font-size:18px;font-weight:550;display:block;margin-top:-20px;margin-left:250px;text-decoration: none;color:black;}
|
||||
.liClass{margin-bottom:8px}
|
||||
</style>
|
||||
<body id="bodypage" class="main-bg" >
|
||||
<a class="main_titel">Crunchyroll Downloader</a>
|
||||
<img alt="image error" src="balken.png" class="class-balken">
|
||||
|
||||
<div class="div-episode">
|
||||
|
||||
<img alt="image error" src="https://derf9v1xhwwx1.cloudfront.net/image/upload/c_fill,q_60,h_630,w_1290/oth/FunimationStoreFront/1536737/English/1536737_English_KeyArt-OfficialVideoImage_f945041c-4952-e911-8175-020165574d09.jpg" class="imagestyle">
|
||||
|
||||
<div>
|
||||
|
||||
<span class="titel" dir="auto">Overlord <br> Season 1 Episode 1</span>
|
||||
|
||||
<div class="progressbar">
|
||||
|
||||
<div class="progressbar-value" style="width:100%"></div>
|
||||
|
||||
</div>
|
||||
<span dir="auto" class='percenttext'>Finished - 1439,81MB</span>
|
||||
<div>
|
||||
<br>
|
||||
<span dir="auto" class="resotext">1080p</span>
|
||||
|
||||
<a href="#" class="cc-wert" title="Softsubs:
|
||||
"> <img alt="image error" src="cc.png" class="class-cc">null</a>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<img alt="image error" src="balken.png" class="class-balken"><!-- Overlord Season 1 Episode 1-->
|
||||
<script>
|
||||
|
||||
setInterval(function loadXMLDoc() {
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -236,6 +236,12 @@ setInterval(function loadXMLDoc() {
|
||||
<span class="titel" dir="auto"> ähnelt.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Crunchyroll_Downloader.My.Resources.Resources.htmlTitlel">
|
||||
<summary>
|
||||
Sucht eine lokalisierte Zeichenfolge, die <a class="main_titel">Placeholder</a>
|
||||
<img alt="image error" src="balken.png" class="class-balken"> ähnelt.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:Crunchyroll_Downloader.My.Resources.Resources.htmlTop">
|
||||
<summary>
|
||||
Sucht eine lokalisierte Zeichenfolge, die <!DOCTYPE html>
|
||||
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user