diff --git a/chapter-editor/menu.js b/chapter-editor/menu.js index 7a14bb5..b1d715f 100644 --- a/chapter-editor/menu.js +++ b/chapter-editor/menu.js @@ -26,11 +26,11 @@ function saveEbookPages(pages) { } document.getElementById('savePage').onclick = function() { + localStorage.removeItem('ebook'); chrome.tabs.query({ currentWindow: true, active: true }, function(tab) { - console.log('aiai'); chrome.tabs.sendMessage( tab[0].id, { @@ -47,6 +47,7 @@ document.getElementById('savePage').onclick = function() { }; document.getElementById('saveSelection').onclick = function() { + localStorage.removeItem('ebook'); chrome.tabs.query({ currentWindow: true, active: true diff --git a/chapter-editor/saveEbook.js b/chapter-editor/saveEbook.js index f7c6ce3..d7139b9 100644 --- a/chapter-editor/saveEbook.js +++ b/chapter-editor/saveEbook.js @@ -1,4 +1,3 @@ - var cssFileName = 'ebook.css'; var pageName = 'ebook.xhtml'; var ebookName = "ebook-" + document.title + ".epub"; @@ -19,6 +18,15 @@ function getEbookPages() { } +function getImgDownloadUrl(baseUrl, imgSrc) { + if (imgSrc.indexOf('http') !== 0) { + console.log(baseUrl + '/' + imgSrc); + return baseUrl + '/' + imgSrc; + } + console.log(imgSrc); + return imgSrc; +} + function getImagesIndex(allImgSrc) { return Object.keys(allImgSrc).reduce(function(prev, elem, index) { return prev + '\n' + ''; @@ -111,7 +119,7 @@ function buildEbook() { '

Table of Contents

' + '
    ' + // '
  1. ' + ebookName + '
  2. ' + // TODO remove - allPages.reduce(function (prev, page) { + allPages.reduce(function(prev, page) { return prev + '\n' + '
  3. ' + page.title + '
  4. '; }, '') + '
' + @@ -132,12 +140,12 @@ function buildEbook() { '' + '' + // '' + // TODO remove - allPages.reduce(function (prev, page, index) { + allPages.reduce(function(prev, page, index) { return prev + '\n' + - '' + - '' + page.title + '' + - '' + - ''; + '' + + '' + page.title + '' + + '' + + ''; }, '') + '' + '' @@ -146,7 +154,7 @@ function buildEbook() { oebps.file(cssFileName, ''); var pagesFolder = oebps.folder('pages'); - allPages.forEach(function (page) { + allPages.forEach(function(page) { pagesFolder.file(page.url, '' + '' + @@ -173,17 +181,17 @@ function buildEbook() { '' + '' + // '' + //properties="remote-resources" // TODO remove - allPages.reduce(function (prev, page, index) { + allPages.reduce(function(prev, page, index) { return prev + '\n' + ''; }, '') + - allPages.reduce(function (prev, page, index) { + allPages.reduce(function(prev, page, index) { return prev + '\n' + getImagesIndex(page.imgs); }, '') + // getExternalLinksIndex() + '' + '' + // '' + // TODO remove - allPages.reduce(function (prev, page, index) { + allPages.reduce(function(prev, page, index) { return prev + '\n' + ''; }, '') + '' + @@ -197,9 +205,10 @@ function buildEbook() { /////////////// var imgs = oebps.folder("images"); var imgsPromises = []; - allPages.forEach(function (page) { + allPages.forEach(function(page) { Object.keys(page.imgs).forEach(function(imgSrc, index) { - var tmpDeffered = deferredAddZip(imgSrc, page.imgs[imgSrc], imgs); + console.log('AICI', imgSrc, getImgDownloadUrl(page.baseUrl, imgSrc)); + var tmpDeffered = deferredAddZip(getImgDownloadUrl(page.baseUrl, imgSrc), page.imgs[imgSrc], imgs); imgsPromises.push(tmpDeffered); }); }); diff --git a/extractHtml.js b/extractHtml.js index b370843..3efe559 100644 --- a/extractHtml.js +++ b/extractHtml.js @@ -2,6 +2,15 @@ var allImgSrc = {}; ////// +function getCurrentUrl() { + var url = window.location.href; + if (url.indexOf('?') > 0) { + url = window.location.href.split('?')[0]; + } + url = url.substring(0, url.lastIndexOf('/')+1); + return url; +} + function getFileExtension(fileName) { var tmpFileName = fileName.split('.').pop(); if (tmpFileName.indexOf('?') > 0) { @@ -76,7 +85,7 @@ function force(contentString) { // https://github.com/blowsie/Pure-JavaScript-HTML5-Parser function sanitize(rawContentString) { - + allImgSrc = {}; var srcTxt = ''; var dirty = null; try { @@ -229,6 +238,7 @@ chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) { result = { url: getPageUrl(document.title), title: getPageTitle(document.title), //gatPageTitle(document.title), + baseUrl: getCurrentUrl(), imgs: allImgSrc, content: getContent(pageSrc) }; @@ -237,6 +247,7 @@ chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) { result = { url: getPageUrl(document.title), title: getPageTitle(document.title), + baseUrl: getCurrentUrl(), imgs: allImgSrc, content: getContent(pageSrc) }; diff --git a/gigi.js b/gigi.js deleted file mode 100644 index f3d7bad..0000000 --- a/gigi.js +++ /dev/null @@ -1,9 +0,0 @@ - - -chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) { - if (request.type === 'get-title') { - console.log("AAAAAAAA 2", document.title); - sendResponse({title: document.title}); - return true; - } -});