mirror of
https://github.com/alexadam/save-as-ebook.git
synced 2025-09-07 16:09:11 +00:00
68 lines
2.2 KiB
JavaScript
68 lines
2.2 KiB
JavaScript
// var GLOBAL_CURRENT_STYLE = null;
|
|
|
|
|
|
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
|
|
if (request.type === 'get') {
|
|
chrome.storage.local.get('allPages', function (data) {
|
|
if (!data || !data.allPages) {
|
|
sendResponse({allPages: []});
|
|
}
|
|
sendResponse({allPages: data.allPages});
|
|
})
|
|
}
|
|
if (request.type === 'set') {
|
|
chrome.storage.local.set({'allPages': request.pages});
|
|
}
|
|
if (request.type === 'remove') {
|
|
chrome.storage.local.remove('allPages');
|
|
chrome.storage.local.remove('title');
|
|
}
|
|
if (request.type === 'get title') {
|
|
chrome.storage.local.get('title', function (data) {
|
|
if (!data || !data.title || data.title.trim().length === 0) {
|
|
sendResponse({title: 'eBook'});
|
|
} else {
|
|
sendResponse({title: data.title});
|
|
}
|
|
})
|
|
}
|
|
if (request.type === 'set title') {
|
|
chrome.storage.local.set({'title': request.title});
|
|
}
|
|
if (request.type === 'get styles') {
|
|
chrome.storage.local.get('styles', function (data) {
|
|
if (!data || !data.styles) {
|
|
// TODO move defaultStyles in a different file/location ?
|
|
var defaultStyles = [
|
|
{
|
|
title: 'reddit',
|
|
url: 'reddit.com',
|
|
style: `.class: {
|
|
display: none;
|
|
}
|
|
`
|
|
}
|
|
];
|
|
sendResponse({styles: defaultStyles});
|
|
} else {
|
|
sendResponse({styles: data.styles});
|
|
}
|
|
});
|
|
}
|
|
if (request.type === 'set styles') {
|
|
chrome.storage.local.set({'styles': request.styles});
|
|
}
|
|
if (request.type === 'get current style') {
|
|
chrome.storage.local.get('currentStyle', function (data) {
|
|
if (!data || !data.currentStyle) {
|
|
sendResponse({currentStyle: 0});
|
|
} else {
|
|
sendResponse({currentStyle: data.currentStyle});
|
|
}
|
|
});
|
|
}
|
|
if (request.type === 'set current style') {
|
|
chrome.storage.local.set({'currentStyle': request.currentStyle});
|
|
}
|
|
return true;
|
|
});
|