X-Git-Url: https://git.cweiske.de/grauphel.git/blobdiff_plain/81554f1309cc6a80578100b9583a591012df0d43..a375467d42cb53599ffddbd1d7ce8fae028972f8:/controller/notescontroller.php?ds=sidebyside diff --git a/controller/notescontroller.php b/controller/notescontroller.php index 893a100..c599e75 100644 --- a/controller/notescontroller.php +++ b/controller/notescontroller.php @@ -124,7 +124,7 @@ class NotesController extends Controller } catch (\OCA\Grauphel\Converter\Exception $e) { $res = new ErrorResponse( 'Error converting note to HTML.' - . ' Please repport a bug to the grauphel developers.' + . ' Please report a bug to the grauphel developers.' ); $res->setStatus(\OCP\AppFramework\Http::STATUS_NOT_FOUND); return $res; @@ -141,6 +141,44 @@ class NotesController extends Controller return urlencode($noteTitle) . '.html'; } + /** + * Output a note as a standalone text file + * + * @NoAdminRequired + * @NoCSRFRequired + */ + public function text($guid) + { + $note = $this->getNotes()->load($guid, false); + if ($note === null) { + $res = new ErrorResponse('Note does not exist'); + $res->setStatus(\OCP\AppFramework\Http::STATUS_NOT_FOUND); + return $res; + } + + $converter = new \OCA\Grauphel\Converter\ReStructuredText(); + $converter->internalLinkHandler = array($this, 'textNoteLinkHandler'); + try { + $text = $note->title . "\n" + . str_repeat('*', strlen($note->title)) . "\n" + . "\n"; + $text .= $converter->convert($note->{'note-content'}); + return new \OCA\Grauphel\Response\TextResponse($text); + } catch (\OCA\Grauphel\Converter\Exception $e) { + $res = new ErrorResponse( + 'Error converting note to reStructuredText.' + . ' Please report a bug to the grauphel developers.' + ); + $res->setStatus(\OCP\AppFramework\Http::STATUS_NOT_FOUND); + return $res; + } + } + + public function textNoteLinkHandler($noteTitle) + { + return $noteTitle; + } + /** * Output a note in tomboy XML format *