xref: /dokuwiki/inc/Action/Preview.php (revision daa763555aa94a0d06d0f875f374fe45b7ac4d07)
1<?php
2
3namespace dokuwiki\Action;
4
5use dokuwiki\Ui\Editor;
6use dokuwiki\Ui\PageView;
7use dokuwiki\Draft;
8use dokuwiki\Ui;
9
10/**
11 * Class Preview
12 *
13 * preview during editing
14 *
15 * @package dokuwiki\Action
16 */
17class Preview extends Edit
18{
19    /** @inheritdoc */
20    public function preProcess()
21    {
22        $this->savedraft();
23        parent::preProcess();
24    }
25
26    /** @inheritdoc */
27    public function tplContent()
28    {
29        global $TEXT;
30        (new Editor())->show();
31        (new PageView($TEXT))->show();
32    }
33
34    /**
35     * Saves a draft on preview
36     */
37    protected function savedraft()
38    {
39        global $ID, $INFO;
40        $draft = new Draft($ID, $INFO['client']);
41        if (!$draft->saveDraft()) {
42            $errors = $draft->getErrors();
43            foreach ($errors as $error) {
44                msg(hsc($error), -1);
45            }
46        }
47    }
48}
49