1f21dad39SAndreas Gohr<?php 2f21dad39SAndreas Gohr 3f21dad39SAndreas Gohrnamespace dokuwiki\Action; 4f21dad39SAndreas Gohr 56723156fSAndreas Gohruse dokuwiki\Ui\Editor; 625dd2a2fSSatoshi Sahara 7ab583a1bSAndreas Gohr/** 8ab583a1bSAndreas Gohr * Class Locked 9ab583a1bSAndreas Gohr * 10ab583a1bSAndreas Gohr * Show a locked screen when a page is locked 11ab583a1bSAndreas Gohr * 12ab583a1bSAndreas Gohr * @package dokuwiki\Action 13ab583a1bSAndreas Gohr */ 1425dd2a2fSSatoshi Saharaclass Locked extends AbstractAction 1525dd2a2fSSatoshi Sahara{ 16f21dad39SAndreas Gohr /** @inheritdoc */ 1725dd2a2fSSatoshi Sahara public function minimumPermission() 1825dd2a2fSSatoshi Sahara { 19f21dad39SAndreas Gohr return AUTH_READ; 20f21dad39SAndreas Gohr } 21f21dad39SAndreas Gohr 22ab583a1bSAndreas Gohr /** @inheritdoc */ 2325dd2a2fSSatoshi Sahara public function tplContent() 2425dd2a2fSSatoshi Sahara { 25f0049a83SSatoshi Sahara $this->showBanner(); 2673022918SAndreas Gohr (new Editor())->show(); 27f21dad39SAndreas Gohr } 28f21dad39SAndreas Gohr 29f0049a83SSatoshi Sahara /** 30f0049a83SSatoshi Sahara * Display error on locked pages 31f0049a83SSatoshi Sahara * 32*90fb952cSAndreas Gohr * @return void 33f0049a83SSatoshi Sahara * @author Andreas Gohr <andi@splitbrain.org> 34f0049a83SSatoshi Sahara * 35f0049a83SSatoshi Sahara */ 36a215faf2SSatoshi Sahara public function showBanner() 37f0049a83SSatoshi Sahara { 38f0049a83SSatoshi Sahara global $ID; 39f0049a83SSatoshi Sahara global $conf; 40f0049a83SSatoshi Sahara global $lang; 41f0049a83SSatoshi Sahara global $INFO; 42f0049a83SSatoshi Sahara 43f0049a83SSatoshi Sahara $locktime = filemtime(wikiLockFN($ID)); 44f0049a83SSatoshi Sahara $expire = dformat($locktime + $conf['locktime']); 45f0049a83SSatoshi Sahara $min = round(($conf['locktime'] - (time() - $locktime)) / 60); 46f0049a83SSatoshi Sahara 47f0049a83SSatoshi Sahara // print intro 4826dfc232SAndreas Gohr echo p_locale_xhtml('locked'); 49f0049a83SSatoshi Sahara 5026dfc232SAndreas Gohr echo '<ul>'; 51*90fb952cSAndreas Gohr echo '<li><div class="li"><strong>' . $lang['lockedby'] . '</strong> ' . 52*90fb952cSAndreas Gohr editorinfo($INFO['locked']) . '</div></li>'; 53*90fb952cSAndreas Gohr echo '<li><div class="li"><strong>' . $lang['lockexpire'] . '</strong> ' . 54*90fb952cSAndreas Gohr $expire . ' (' . $min . ' min)</div></li>'; 5526dfc232SAndreas Gohr echo '</ul>' . DOKU_LF; 56f0049a83SSatoshi Sahara } 57f21dad39SAndreas Gohr} 58