xref: /dokuwiki/inc/Action/Draft.php (revision 73022918a947abda7eee4d7d2302ffd28fdb78e0)
1f21dad39SAndreas Gohr<?php
2f21dad39SAndreas Gohr
3f21dad39SAndreas Gohrnamespace dokuwiki\Action;
4f21dad39SAndreas Gohr
56723156fSAndreas Gohruse dokuwiki\Ui\PageDraft;
6d773525bSAndreas Gohruse dokuwiki\Action\Exception\ActionException;
7c20664d2SSatoshi Saharause dokuwiki\Ui;
8d773525bSAndreas Gohr
9ab583a1bSAndreas Gohr/**
10ab583a1bSAndreas Gohr * Class Draft
11ab583a1bSAndreas Gohr *
12ab583a1bSAndreas Gohr * Screen to see and recover a draft
13ab583a1bSAndreas Gohr *
14ab583a1bSAndreas Gohr * @package dokuwiki\Action
15ab583a1bSAndreas Gohr * @fixme combine with Recover?
16ab583a1bSAndreas Gohr */
17c20664d2SSatoshi Saharaclass Draft extends AbstractAction
18c20664d2SSatoshi Sahara{
19f21dad39SAndreas Gohr    /** @inheritdoc */
20c20664d2SSatoshi Sahara    public function minimumPermission()
21c20664d2SSatoshi Sahara    {
22f21dad39SAndreas Gohr        global $INFO;
23f21dad39SAndreas Gohr        if ($INFO['exists']) {
24f21dad39SAndreas Gohr            return AUTH_EDIT;
25f21dad39SAndreas Gohr        } else {
26f21dad39SAndreas Gohr            return AUTH_CREATE;
27f21dad39SAndreas Gohr        }
28f21dad39SAndreas Gohr    }
29f21dad39SAndreas Gohr
30d773525bSAndreas Gohr    /** @inheritdoc */
31c20664d2SSatoshi Sahara    public function checkPreconditions()
32c20664d2SSatoshi Sahara    {
33b2c9cd19SAndreas Gohr        parent::checkPreconditions();
34d773525bSAndreas Gohr        global $INFO;
35d773525bSAndreas Gohr        if (!file_exists($INFO['draft'])) throw new ActionException('edit');
36d773525bSAndreas Gohr    }
37f21dad39SAndreas Gohr
38d773525bSAndreas Gohr    /** @inheritdoc */
39c20664d2SSatoshi Sahara    public function tplContent()
40c20664d2SSatoshi Sahara    {
41*73022918SAndreas Gohr        (new PageDraft())->show();
42f21dad39SAndreas Gohr    }
43f21dad39SAndreas Gohr}
44