From e34a2a2cf67270192be76a4fbc9140d41b79ea7c Mon Sep 17 00:00:00 2001 From: Vahagn Khachatryan Date: Fri, 25 Jan 2019 22:29:03 +0000 Subject: [PATCH] Fixing ISBN and adding Release date. --- src/epub.js | 17 +++++++++++++++-- src/sidebar.js | 7 +++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/epub.js b/src/epub.js index 5290060..e9ecc92 100644 --- a/src/epub.js +++ b/src/epub.js @@ -85,6 +85,7 @@ class EpubOpf{ @@ -99,10 +100,18 @@ class EpubOpf{ cnt += ` ${m.metadata.description}\n` } if (m.metadata.isbn){ - cnt += ` ${m.metadata.isbn}\n` + cnt += ` ${m.metadata.isbn}\n` let onixcode = m.metadata.isbn.length > 10 ? '15' : '02' cnt += ` ${onixcode}\n` } + if (m.metadata.issued){ + try { + let d = new Date(m.metadata.issued) + cnt += ` ${d.toISOString()}\n` + } catch(e){ + console.warn(`Release data is not valid: "${m.metadata.issued}"`) + } + } if (m.metadata.publisher){ cnt += ` ${m.metadata.publisher}\n` } @@ -255,6 +264,7 @@ class EpubMeta{ this.metadata = { book_id: 'book_id', isbn: null, + issued: null, title: 'title', language: 'en', author: [], @@ -293,11 +303,14 @@ class EpubMeta{ this.metadata.language = escape(lang) } addDescription(description){ - this.metadata.description = escape(html2txt(description)) + this.metadata.description = escape(description) } addIsbn(isbn){ this.metadata.isbn = escape(isbn) } + addIssued(issued){ + this.metadata.issued = escape(issued) + } addMetaData(){ } diff --git a/src/sidebar.js b/src/sidebar.js index 42ef4d6..84722d2 100644 --- a/src/sidebar.js +++ b/src/sidebar.js @@ -194,7 +194,7 @@ class SidebarPage{ $('#book-info').show(); } - renderDone(){ + renderDoneWithBook(){ $('#loading').hide(); } @@ -270,6 +270,9 @@ function fillMetadata(epub, book) let subject = book.book_info.subjects[i] epub.meta.addSubject(subject.name) } + if (book.book_info.issued){ + epub.meta.addIssued(book.book_info.issued) + } // # The metadata element or deprecated dc-metadata element contains // # at least one identifier element, at least one title element, @@ -384,7 +387,7 @@ function onDownloadBookClicked(){ return browser.downloads.download({ "filename" : filename, url : url}) }) .then(() =>{ - page.renderDone(); + page.renderDoneWithBook(); }) }, onError);