xref: /dokuwiki/inc/Action/Draft.php (revision c20664d2d0d6a4d0aaf82058e535858104953863)
1f21dad39SAndreas Gohr<?php
2f21dad39SAndreas Gohr
3f21dad39SAndreas Gohrnamespace dokuwiki\Action;
4f21dad39SAndreas Gohr
5d773525bSAndreas Gohruse dokuwiki\Action\Exception\ActionException;
6*c20664d2SSatoshi 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 */
16*c20664d2SSatoshi Saharaclass Draft extends AbstractAction
17*c20664d2SSatoshi Sahara{
18f21dad39SAndreas Gohr    /** @inheritdoc */
19*c20664d2SSatoshi Sahara    public function minimumPermission()
20*c20664d2SSatoshi 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 */
30*c20664d2SSatoshi Sahara    public function checkPreconditions()
31*c20664d2SSatoshi 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 */
38*c20664d2SSatoshi Sahara    public function tplContent()
39*c20664d2SSatoshi Sahara    {
40*c20664d2SSatoshi Sahara        (new Ui\Draft)->show();
41f21dad39SAndreas Gohr    }
42f21dad39SAndreas Gohr
43f21dad39SAndreas Gohr}
44