Commit 9a6fd148 authored by edwin's avatar edwin

use chrome local storage store variable to prevent empty sku array => undefined name

parent cce8427c
'use strict';
var index = 0;
var skus = [];
var noImages = "";
chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
chrome.declarativeContent.onPageChanged.addRules([{
......@@ -13,53 +10,51 @@ chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
}]);
});
chrome.extension.onMessage.addListener(function(request,sender,sendResponse){
if(request.idArray) {
// init
index = 0;
noImages = "";
chrome.extension.onMessage.addListener(function(request,sender,sendResponse){
skus = request.idArray.split(',');
console.log(skus);
chrome.storage.local.get(['idArray', 'index'], function (items) {
let idArray = items.idArray.split(',');
let length = idArray.length;
let index = items.index;
} else if(request.nothing == "true") {
console.log("Message : nothing ");
index++;
} else if(request.noImage == "true") {
console.log("Message : noImages");
noImages += (request.currentSku + ": no results/ no valid images\n");
index += 2;
}
console.log("Current index : ", index);
console.log("Current noImages : " , noImages);
if(index >= skus.length) {
console.log("Last file was downloaded");
alert(noImages);
if(request.nothing == "true"){
chrome.storage.local.set({index: (index+1)});
index += 1;
console.log("Message : nothing ");
}else if(request.noImage == "true") {
chrome.storage.local.set({index: (index+2)});
index += 2;
console.log("Message : noImages");
}
if(index >= length) {
console.log("Last file was downloaded");
chrome.storage.local.remove(['idArray', 'index']);
}
});
index = 0;
noImages = "";
chrome.storage.local.remove('idArray');
}
});
chrome.downloads.onDeterminingFilename.addListener(function(item, suggest) {
// if(!skus.length){
// chrome.storage.local.get('idArray', function (items) {
// skus = items.idArray.split(',');
// });
// }
if(item.url.includes("https://digitallibrary-external.fastretailing.com/api/asset")){
var new_filename = skus[index] + ".zip";
suggest({filename: new_filename});
index++;
if(index >= skus.length) {
console.log("Last file was downloaded");
alert(noImages);
index = 0;
noImages = "";
chrome.storage.local.remove('idArray');
}
chrome.storage.local.get(['idArray', 'index'], function (items) {
let index = items.index;
let idArray = items.idArray.split(',');
let new_filename = idArray[index] + ".zip";
suggest({filename: new_filename});
chrome.storage.local.set({index: (index+1)});
index += 1;
if(index >= idArray.length) {
console.log("Last file was downloaded");
chrome.storage.local.remove(['idArray', 'index']);
}
return true;
});
return true;
}
});
......@@ -139,7 +139,7 @@
// turn DOM into object array with id and file version
let downloadlist = DOMArray.map(x => {
return{
return {
"id" : x.querySelector(".asset-id").innerHTML,
"fileVersion" : x.querySelector(".asset-version").innerHTML
};
......
......@@ -17,10 +17,10 @@ inputButton.onclick = function(element) {
console.log("Final text = ", finalText);
idArray = finalText.join(',');
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.storage.local.set({idArray : idArray}, function () {
chrome.storage.local.set({idArray : idArray, index: 0}, function () {
console.log("set storage");
});
chrome.runtime.sendMessage({idArray: idArray});
// chrome.runtime.sendMessage({idArray: idArray});
});
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment