From a6e9ad0b7d4108a170b7d2e43576377bb0ad7516 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Sat, 28 Oct 2017 10:37:56 +0200 Subject: add a title page The first page of the book is the title --- src/Wallabag/CoreBundle/Helper/EntriesExport.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/Wallabag/CoreBundle/Helper/EntriesExport.php b/src/Wallabag/CoreBundle/Helper/EntriesExport.php index 830798b8..1b4afa3b 100644 --- a/src/Wallabag/CoreBundle/Helper/EntriesExport.php +++ b/src/Wallabag/CoreBundle/Helper/EntriesExport.php @@ -190,7 +190,8 @@ class EntriesExport // in filenames, we limit to A-z/0-9 $filename = preg_replace('/[^A-Za-z0-9\-]/', '', $entry->getTitle()); - $chapter = $content_start . $entry->getContent() . $bookEnd; + $titlepage = "

".$entry->getTitle()."

"; + $chapter = $content_start . $titlepage . $entry->getContent() . $bookEnd; $book->addChapter($entry->getTitle(), htmlspecialchars($filename) . '.html', $chapter, true, EPub::EXTERNAL_REF_ADD); } -- cgit v1.2.3 From c779373f2cafd191771dc575252cfc28c7b7539f Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Sat, 28 Oct 2017 14:49:14 +0200 Subject: Set the title in a separated chapter Set the export option on the same page, same as done in producePdf Move the ToC at the end of the book so the title page is the first one --- src/Wallabag/CoreBundle/Helper/EntriesExport.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/Wallabag/CoreBundle/Helper/EntriesExport.php b/src/Wallabag/CoreBundle/Helper/EntriesExport.php index 1b4afa3b..5d2fca31 100644 --- a/src/Wallabag/CoreBundle/Helper/EntriesExport.php +++ b/src/Wallabag/CoreBundle/Helper/EntriesExport.php @@ -174,8 +174,6 @@ class EntriesExport $book->setCoverImage('Cover.png', file_get_contents($this->logoPath), 'image/png'); } - $book->buildTOC(); - /* * Adding actual entries */ @@ -190,12 +188,13 @@ class EntriesExport // in filenames, we limit to A-z/0-9 $filename = preg_replace('/[^A-Za-z0-9\-]/', '', $entry->getTitle()); - $titlepage = "

".$entry->getTitle()."

"; - $chapter = $content_start . $titlepage . $entry->getContent() . $bookEnd; + $titlepage = $content_start . "

".$entry->getTitle()."

" . $this->getExportInformation('PHPePub') . $bookEnd; + $book->addChapter("Title", 'Title.html', $titlepage, true, EPub::EXTERNAL_REF_ADD); + $chapter = $content_start . $entry->getContent() . $bookEnd; $book->addChapter($entry->getTitle(), htmlspecialchars($filename) . '.html', $chapter, true, EPub::EXTERNAL_REF_ADD); } - $book->addChapter('Notices', 'Cover2.html', $content_start . $this->getExportInformation('PHPePub') . $bookEnd); + $book->buildTOC(); return Response::create( $book->getBook(), -- cgit v1.2.3 From 385e651684b98762241107d6fd0310fc42b44965 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Sat, 28 Oct 2017 17:17:22 +0200 Subject: php-cs-fixer php bin/php-cs-fixer fix src/Wallabag/CoreBundle/Helper/EntriesExport.php --- src/Wallabag/CoreBundle/Helper/EntriesExport.php | 48 ++++++++++++------------ 1 file changed, 24 insertions(+), 24 deletions(-) (limited to 'src') diff --git a/src/Wallabag/CoreBundle/Helper/EntriesExport.php b/src/Wallabag/CoreBundle/Helper/EntriesExport.php index 5d2fca31..bd11b4b8 100644 --- a/src/Wallabag/CoreBundle/Helper/EntriesExport.php +++ b/src/Wallabag/CoreBundle/Helper/EntriesExport.php @@ -64,7 +64,7 @@ class EntriesExport */ public function updateTitle($method) { - $this->title = $method . ' articles'; + $this->title = $method.' articles'; if ('entry' === $method) { $this->title = $this->entries[0]->getTitle(); @@ -85,7 +85,7 @@ class EntriesExport public function updateAuthor($method) { if ('entry' !== $method) { - $this->author = $method . ' authors'; + $this->author = $method.' authors'; return $this; } @@ -109,7 +109,7 @@ class EntriesExport */ public function exportAs($format) { - $functionName = 'produce' . ucfirst($format); + $functionName = 'produce'.ucfirst($format); if (method_exists($this, $functionName)) { return $this->$functionName(); } @@ -134,12 +134,12 @@ class EntriesExport */ $content_start = "\n" - . "\n" - . '' - . "\n" - . "wallabag articles book\n" - . "\n" - . "\n"; + ."\n" + .'' + ."\n" + ."wallabag articles book\n" + ."\n" + ."\n"; $bookEnd = "\n\n"; @@ -188,10 +188,10 @@ class EntriesExport // in filenames, we limit to A-z/0-9 $filename = preg_replace('/[^A-Za-z0-9\-]/', '', $entry->getTitle()); - $titlepage = $content_start . "

".$entry->getTitle()."

" . $this->getExportInformation('PHPePub') . $bookEnd; - $book->addChapter("Title", 'Title.html', $titlepage, true, EPub::EXTERNAL_REF_ADD); - $chapter = $content_start . $entry->getContent() . $bookEnd; - $book->addChapter($entry->getTitle(), htmlspecialchars($filename) . '.html', $chapter, true, EPub::EXTERNAL_REF_ADD); + $titlepage = $content_start.'

'.$entry->getTitle().'

'.$this->getExportInformation('PHPePub').$bookEnd; + $book->addChapter('Title', 'Title.html', $titlepage, true, EPub::EXTERNAL_REF_ADD); + $chapter = $content_start.$entry->getContent().$bookEnd; + $book->addChapter($entry->getTitle(), htmlspecialchars($filename).'.html', $chapter, true, EPub::EXTERNAL_REF_ADD); } $book->buildTOC(); @@ -202,7 +202,7 @@ class EntriesExport [ 'Content-Description' => 'File Transfer', 'Content-type' => 'application/epub+zip', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.epub"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.epub"', 'Content-Transfer-Encoding' => 'binary', ] ); @@ -254,7 +254,7 @@ class EntriesExport 'Accept-Ranges' => 'bytes', 'Content-Description' => 'File Transfer', 'Content-type' => 'application/x-mobipocket-ebook', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.mobi"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.mobi"', 'Content-Transfer-Encoding' => 'binary', ] ); @@ -282,7 +282,7 @@ class EntriesExport * Front page */ $pdf->AddPage(); - $intro = '

' . $this->title . '

' . $this->getExportInformation('tcpdf'); + $intro = '

'.$this->title.'

'.$this->getExportInformation('tcpdf'); $pdf->writeHTMLCell(0, 0, '', '', $intro, 0, 1, 0, true, '', true); @@ -295,7 +295,7 @@ class EntriesExport } $pdf->AddPage(); - $html = '

' . $entry->getTitle() . '

'; + $html = '

'.$entry->getTitle().'

'; $html .= $entry->getContent(); $pdf->writeHTMLCell(0, 0, '', '', $html, 0, 1, 0, true, '', true); @@ -310,7 +310,7 @@ class EntriesExport [ 'Content-Description' => 'File Transfer', 'Content-type' => 'application/pdf', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.pdf"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.pdf"', 'Content-Transfer-Encoding' => 'binary', ] ); @@ -356,7 +356,7 @@ class EntriesExport 200, [ 'Content-type' => 'application/csv', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.csv"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.csv"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -374,7 +374,7 @@ class EntriesExport 200, [ 'Content-type' => 'application/json', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.json"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.json"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -392,7 +392,7 @@ class EntriesExport 200, [ 'Content-type' => 'application/xml', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.xml"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.xml"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -408,7 +408,7 @@ class EntriesExport $content = ''; $bar = str_repeat('=', 100); foreach ($this->entries as $entry) { - $content .= "\n\n" . $bar . "\n\n" . $entry->getTitle() . "\n\n" . $bar . "\n\n"; + $content .= "\n\n".$bar."\n\n".$entry->getTitle()."\n\n".$bar."\n\n"; $html = new Html2Text($entry->getContent(), ['do_links' => 'none', 'width' => 100]); $content .= $html->getText(); } @@ -418,7 +418,7 @@ class EntriesExport 200, [ 'Content-type' => 'text/plain', - 'Content-Disposition' => 'attachment; filename="' . $this->title . '.txt"', + 'Content-Disposition' => 'attachment; filename="'.$this->title.'.txt"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -456,7 +456,7 @@ class EntriesExport ]); if ('tcpdf' === $type) { - return str_replace('%IMAGE%', '', $info); + return str_replace('%IMAGE%', '', $info); } return str_replace('%IMAGE%', '', $info); -- cgit v1.2.3 From 15a6402f758b050d8019c32a59617115421b6bca Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Sat, 28 Oct 2017 20:16:43 +0200 Subject: Properly run php-cs-fixer --- src/Wallabag/CoreBundle/Helper/EntriesExport.php | 46 ++++++++++++------------ 1 file changed, 23 insertions(+), 23 deletions(-) (limited to 'src') diff --git a/src/Wallabag/CoreBundle/Helper/EntriesExport.php b/src/Wallabag/CoreBundle/Helper/EntriesExport.php index bd11b4b8..136f66f5 100644 --- a/src/Wallabag/CoreBundle/Helper/EntriesExport.php +++ b/src/Wallabag/CoreBundle/Helper/EntriesExport.php @@ -64,7 +64,7 @@ class EntriesExport */ public function updateTitle($method) { - $this->title = $method.' articles'; + $this->title = $method . ' articles'; if ('entry' === $method) { $this->title = $this->entries[0]->getTitle(); @@ -85,7 +85,7 @@ class EntriesExport public function updateAuthor($method) { if ('entry' !== $method) { - $this->author = $method.' authors'; + $this->author = $method . ' authors'; return $this; } @@ -109,7 +109,7 @@ class EntriesExport */ public function exportAs($format) { - $functionName = 'produce'.ucfirst($format); + $functionName = 'produce' . ucfirst($format); if (method_exists($this, $functionName)) { return $this->$functionName(); } @@ -134,12 +134,12 @@ class EntriesExport */ $content_start = "\n" - ."\n" - .'' - ."\n" - ."wallabag articles book\n" - ."\n" - ."\n"; + . "\n" + . '' + . "\n" + . "wallabag articles book\n" + . "\n" + . "\n"; $bookEnd = "\n\n"; @@ -188,10 +188,10 @@ class EntriesExport // in filenames, we limit to A-z/0-9 $filename = preg_replace('/[^A-Za-z0-9\-]/', '', $entry->getTitle()); - $titlepage = $content_start.'

'.$entry->getTitle().'

'.$this->getExportInformation('PHPePub').$bookEnd; + $titlepage = $content_start . '

' . $entry->getTitle() . '

' . $this->getExportInformation('PHPePub') . $bookEnd; $book->addChapter('Title', 'Title.html', $titlepage, true, EPub::EXTERNAL_REF_ADD); - $chapter = $content_start.$entry->getContent().$bookEnd; - $book->addChapter($entry->getTitle(), htmlspecialchars($filename).'.html', $chapter, true, EPub::EXTERNAL_REF_ADD); + $chapter = $content_start . $entry->getContent() . $bookEnd; + $book->addChapter($entry->getTitle(), htmlspecialchars($filename) . '.html', $chapter, true, EPub::EXTERNAL_REF_ADD); } $book->buildTOC(); @@ -202,7 +202,7 @@ class EntriesExport [ 'Content-Description' => 'File Transfer', 'Content-type' => 'application/epub+zip', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.epub"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.epub"', 'Content-Transfer-Encoding' => 'binary', ] ); @@ -254,7 +254,7 @@ class EntriesExport 'Accept-Ranges' => 'bytes', 'Content-Description' => 'File Transfer', 'Content-type' => 'application/x-mobipocket-ebook', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.mobi"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.mobi"', 'Content-Transfer-Encoding' => 'binary', ] ); @@ -282,7 +282,7 @@ class EntriesExport * Front page */ $pdf->AddPage(); - $intro = '

'.$this->title.'

'.$this->getExportInformation('tcpdf'); + $intro = '

' . $this->title . '

' . $this->getExportInformation('tcpdf'); $pdf->writeHTMLCell(0, 0, '', '', $intro, 0, 1, 0, true, '', true); @@ -295,7 +295,7 @@ class EntriesExport } $pdf->AddPage(); - $html = '

'.$entry->getTitle().'

'; + $html = '

' . $entry->getTitle() . '

'; $html .= $entry->getContent(); $pdf->writeHTMLCell(0, 0, '', '', $html, 0, 1, 0, true, '', true); @@ -310,7 +310,7 @@ class EntriesExport [ 'Content-Description' => 'File Transfer', 'Content-type' => 'application/pdf', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.pdf"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.pdf"', 'Content-Transfer-Encoding' => 'binary', ] ); @@ -356,7 +356,7 @@ class EntriesExport 200, [ 'Content-type' => 'application/csv', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.csv"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.csv"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -374,7 +374,7 @@ class EntriesExport 200, [ 'Content-type' => 'application/json', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.json"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.json"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -392,7 +392,7 @@ class EntriesExport 200, [ 'Content-type' => 'application/xml', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.xml"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.xml"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -408,7 +408,7 @@ class EntriesExport $content = ''; $bar = str_repeat('=', 100); foreach ($this->entries as $entry) { - $content .= "\n\n".$bar."\n\n".$entry->getTitle()."\n\n".$bar."\n\n"; + $content .= "\n\n" . $bar . "\n\n" . $entry->getTitle() . "\n\n" . $bar . "\n\n"; $html = new Html2Text($entry->getContent(), ['do_links' => 'none', 'width' => 100]); $content .= $html->getText(); } @@ -418,7 +418,7 @@ class EntriesExport 200, [ 'Content-type' => 'text/plain', - 'Content-Disposition' => 'attachment; filename="'.$this->title.'.txt"', + 'Content-Disposition' => 'attachment; filename="' . $this->title . '.txt"', 'Content-Transfer-Encoding' => 'UTF-8', ] ); @@ -456,7 +456,7 @@ class EntriesExport ]); if ('tcpdf' === $type) { - return str_replace('%IMAGE%', '', $info); + return str_replace('%IMAGE%', '', $info); } return str_replace('%IMAGE%', '', $info); -- cgit v1.2.3