inporter worksvim background.js !
This commit is contained in:
parent
96be5a4418
commit
901ead6691
@ -1,42 +1,70 @@
|
||||
let backgroundPage = browser.extension.getBackgroundPage();
|
||||
//let tab;
|
||||
const pass_data = {urls:"urls",tab:"tab_id"}
|
||||
const pass_data = {data:"urls",tab:"tab_id"}
|
||||
let data;
|
||||
|
||||
|
||||
readUrl();
|
||||
//on addon click load extension page
|
||||
//
|
||||
function Setup(data)
|
||||
{
|
||||
let i=0;
|
||||
browser.browserAction.onClicked.addListener(function(event){
|
||||
create(data);
|
||||
|
||||
|
||||
|
||||
data = readUrl()
|
||||
.then(function(data){
|
||||
browser.browserAction.onClicked.addListener(function(event1){
|
||||
browser.tabs.create({"url": "home.html"},function(tab){
|
||||
|
||||
|
||||
browser.runtime.onMessage.addListener(function(request,sender,sendResponse){
|
||||
handleMessages(request,sender,sendResponse,tab,data);
|
||||
});
|
||||
|
||||
}
|
||||
var create = (function(data){
|
||||
let i=0;
|
||||
browser.tabs.create({"url": "home.html"},function(tab){
|
||||
browser.runtime.onMessage.addListener((message)=>{
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
function handleMessages(message,sender,sendResponse,tab,data){
|
||||
|
||||
if(message === "Button_clicked")
|
||||
{
|
||||
|
||||
browser.tabs.executeScript(tab.id,{
|
||||
file:"spawn.js"
|
||||
});
|
||||
console.log("pass tab data to run, in promise");
|
||||
console.log(tab);
|
||||
|
||||
console.log(data);
|
||||
//nextUrl(data,tab,i);
|
||||
}
|
||||
else if(message === "Content_Loaded")
|
||||
{
|
||||
console.log("Received Content_Loaded");
|
||||
nextUrl(data,tab,i);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
function failure(value)
|
||||
console.log("Background: Received Content_Loaded");
|
||||
// nextUrl(data,tab,i);
|
||||
if(i===0)
|
||||
{
|
||||
console.log("tabs.create returned a failure");
|
||||
browser.tabs.sendMessage(tab.id,"Init");
|
||||
}
|
||||
else
|
||||
{
|
||||
browser.tabs.sendMessage(tab.id,data.subscriptions[i].url);
|
||||
}
|
||||
}
|
||||
else if(message === "finished")
|
||||
{
|
||||
i++;
|
||||
console.log("background: received next from spawn.js");
|
||||
browser.tabs.update(tab.id,{url : data.subscriptions[i].url});
|
||||
browser.tabs.executeScript(tab.id,{
|
||||
file:"spawn.js"
|
||||
});
|
||||
|
||||
browser.tabs.sendMessage(tab.id,data.subscriptions[i].url);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/////////////////////
|
||||
async function nextUrl(data,tab,i)
|
||||
{
|
||||
let count_urls = data.subscriptions.length;
|
||||
@ -44,7 +72,8 @@ async function nextUrl(data,tab,i)
|
||||
await sendMessageToContent(data,tab,i);
|
||||
code1 = `window.location.replace("${data.subscriptions[i].url}");`
|
||||
console.log(code1);
|
||||
await browser.tabs.update(tab.tabid,{url : data.subscriptions[i].url});
|
||||
console.log(tab);
|
||||
await browser.tabs.update(tab.id,{url : data.subscriptions[i].url});
|
||||
await waitforTab(tab,data.subscriptions[i].url);
|
||||
console.log(tab);
|
||||
console.log("iterating");
|
||||
@ -75,7 +104,6 @@ function sendMessageToContent(data,tab,i)
|
||||
})
|
||||
.then(function() {
|
||||
console.log("background.js: received start signal...");
|
||||
console.log("backgroundscript received start signal from contentscript");
|
||||
if(i == 0)
|
||||
{
|
||||
browser.tabs.sendMessage(tab.id,{state: "Init",url: data.subscriptions[0].url})
|
||||
@ -99,6 +127,7 @@ function sendMessageToContent(data,tab,i)
|
||||
function readUrl()
|
||||
{
|
||||
let data;
|
||||
return new Promise(resolve => {
|
||||
const filePath = "newpipe_subscriptions_202403101004.json";
|
||||
var localURL = browser.extension.getURL(filePath);
|
||||
fetch(localURL).then((res) => {
|
||||
@ -119,10 +148,10 @@ function readUrl()
|
||||
catch(e) {InsertError(e.description);}
|
||||
}
|
||||
console.log(data);
|
||||
Setup(data);
|
||||
resolve(data);
|
||||
})
|
||||
.catch((error)=> console.error("couldnt fetch data",error));
|
||||
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -23,9 +23,8 @@
|
||||
"matches": [
|
||||
"<all_urls>"
|
||||
],
|
||||
"js": [
|
||||
"spawn.js"
|
||||
]
|
||||
"js": ["spawn.js"],
|
||||
"run_at":"document_end"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
29
spawn.js
29
spawn.js
@ -4,25 +4,40 @@
|
||||
//
|
||||
|
||||
|
||||
document.addEventListener("DOMContentLoaded",function(){
|
||||
//document.addEventListener("DOMContentLoaded",function(){
|
||||
browser.runtime.sendMessage("Content_Loaded");
|
||||
});
|
||||
|
||||
|
||||
browser.runtime.onMessage.addListener(worker);
|
||||
|
||||
//});
|
||||
|
||||
|
||||
|
||||
// return Promise.resolve(true);
|
||||
/*.then(function(){
|
||||
window.location.replace(url);
|
||||
});*/
|
||||
function worker(message,sender,sendResponse)
|
||||
function test(msg)
|
||||
{
|
||||
console.log(`Spawn: received message:${msg}`);
|
||||
|
||||
}
|
||||
|
||||
function worker(message)
|
||||
{
|
||||
console.log("inside handler");
|
||||
if(message.state != "Init")//on init only load page
|
||||
console.log(message);
|
||||
|
||||
setTimeout(() => {
|
||||
if(message != "Init")//on init only load page
|
||||
{
|
||||
document.getElementsByClassName("yt-spec-button-shape-next yt-spec-button-shape-next--filled yt-spec-button-shape-next--mono yt-spec-button-shape-next--size-m")[0].click();
|
||||
console.log(message);
|
||||
|
||||
}
|
||||
let url = message.url;
|
||||
|
||||
browser.runtime.sendMessage("finished");
|
||||
},5000);
|
||||
let url = message;
|
||||
console.log(url);
|
||||
sendResponse(true);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user