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