summaryrefslogtreecommitdiff
path: root/platform/www/inc/Action/Preview.php
diff options
context:
space:
mode:
Diffstat (limited to 'platform/www/inc/Action/Preview.php')
-rw-r--r--platform/www/inc/Action/Preview.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/platform/www/inc/Action/Preview.php b/platform/www/inc/Action/Preview.php
new file mode 100644
index 0000000..7a5aa48
--- /dev/null
+++ b/platform/www/inc/Action/Preview.php
@@ -0,0 +1,42 @@
+<?php
+
+namespace dokuwiki\Action;
+
+/**
+ * Class Preview
+ *
+ * preview during editing
+ *
+ * @package dokuwiki\Action
+ */
+class Preview extends Edit {
+
+ /** @inheritdoc */
+ public function preProcess() {
+ header('X-XSS-Protection: 0');
+ $this->savedraft();
+ parent::preProcess();
+ }
+
+ /** @inheritdoc */
+ public function tplContent() {
+ global $TEXT;
+ html_edit();
+ html_show($TEXT);
+ }
+
+ /**
+ * Saves a draft on preview
+ */
+ protected function savedraft() {
+ global $ID, $INFO;
+ $draft = new \dokuwiki\Draft($ID, $INFO['client']);
+ if (!$draft->saveDraft()) {
+ $errors = $draft->getErrors();
+ foreach ($errors as $error) {
+ msg(hsc($error), -1);
+ }
+ }
+ }
+
+}