X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=src%2FWallabag%2FCoreBundle%2FHelper%2FEntriesExport.php;h=6ecdf019672a65ac003f28ab320f145c7ddf7e13;hb=ae5b37ef2e52c06182bc6edb14f6b3aae381ddb4;hp=79fe6eaadc8f6eff7b4e5a5b9f4064f88e90b6cb;hpb=6c08fb68b8e7883df7f6c1a2ba7c56ced4c1153b;p=github%2Fwallabag%2Fwallabag.git diff --git a/src/Wallabag/CoreBundle/Helper/EntriesExport.php b/src/Wallabag/CoreBundle/Helper/EntriesExport.php index 79fe6eaa..6ecdf019 100644 --- a/src/Wallabag/CoreBundle/Helper/EntriesExport.php +++ b/src/Wallabag/CoreBundle/Helper/EntriesExport.php @@ -6,7 +6,6 @@ use JMS\Serializer; use JMS\Serializer\SerializationContext; use JMS\Serializer\SerializerBuilder; use PHPePub\Core\EPub; -use Html2Text\Html2Text; use PHPePub\Core\Structure\OPF\DublinCore; use Symfony\Component\HttpFoundation\Response; use Craue\ConfigBundle\Util\Config; @@ -100,6 +99,7 @@ class EntriesExport case 'xml': return $this->produceXML(); + case 'txt': return $this->produceTXT(); } @@ -186,7 +186,7 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.epub"', 'Content-Transfer-Encoding' => 'binary', ) - )->send(); + ); } /** @@ -236,7 +236,7 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.mobi"', 'Content-Transfer-Encoding' => 'binary', ) - )->send(); + ); } /** @@ -290,7 +290,7 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.pdf"', 'Content-Transfer-Encoding' => 'binary', ) - )->send(); + ); } /** @@ -333,7 +333,7 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.csv"', 'Content-Transfer-Encoding' => 'UTF-8', ) - )->send(); + ); } private function produceJSON() @@ -346,7 +346,7 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.json"', 'Content-Transfer-Encoding' => 'UTF-8', ) - )->send(); + ); } private function produceXML() @@ -359,16 +359,18 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.xml"', 'Content-Transfer-Encoding' => 'UTF-8', ) - )->send(); + ); } private function produceTXT() { $content = ''; + $bar = str_repeat('=', 100); foreach ($this->entries as $entry) { - $content .= $entry->getTitle(); - $content .= strip_tags($entry->getContent()); + $content .= "\n\n".$bar."\n\n".$entry->getTitle()."\n\n".$bar."\n\n"; + $content .= trim(preg_replace('/\s+/S', ' ', strip_tags($entry->getContent())))."\n\n"; } + return Response::create( $content, 200, @@ -377,10 +379,9 @@ class EntriesExport 'Content-Disposition' => 'attachment; filename="'.$this->title.'.txt"', 'Content-Transfer-Encoding' => 'UTF-8', ) - )->send(); + ); } - /** * Return a Serializer object for producing processes that need it (JSON & XML). *