Example #1
0
 /**
  * コンストラクタ
  */
 public function __construct()
 {
     global $adminpass, $vars;
     //	if (!isset($this->auth_name)) throw new Exception('$this->auth_name has not set.');
     // コールバック先のページ
     $page = isset($vars['page']) ? $vars['page'] : null;
     // 管理人のパスワードのハッシュを暗号/復号のキーとする
     list(, $salt) = Auth::passwd_parse($adminpass);
     // 暗号化/復号化用
     $this->bc = BlockCipher::factory('mcrypt', array('algo' => 'des', 'mode' => 'cfb', 'hash' => 'sha512', 'salt' => $salt));
     // コールバック先のURL。通常プラグインのコールバックアドレスが返される
     $this->callbackUrl = isset($this->auth_name) ? Router::get_resolve_uri($this->auth_name, $vars['page'], 'full') : null;
     // セッション名
     $this->session_name = self::SESSION_PREFIX . md5(Router::get_script_absuri() . session_id());
 }
Example #2
0
function get_location_uri($cmd = '', $page = '', $query = '', $fragment = '')
{
    return Router::get_resolve_uri($cmd, $page, 'full', $query, $fragment, 1);
}
Example #3
0
 /**
  * 認証要求
  * @return void
  */
 public static function notAuth($realm)
 {
     global $_string, $_title, $_button, $vars;
     $response = new Response();
     // URLが空の場合、ページのアドレスか、スクリプトのアドレスを返す
     if (empty($url)) {
         $url = isset($vars['page']) ? Router::get_resolve_uri(null, $vars['page']) : Router::get_script_uri();
     }
     $s_url = self::htmlsc($url);
     $response->setStatusCode(Response::STATUS_CODE_301);
     $response->getHeaders()->addHeaderLine('Location', $s_url);
     $html = array();
     $html[] = '<!doctype html>';
     $html[] = '<html>';
     $html[] = '<head>';
     $html[] = '<meta charset="utf-8">';
     $html[] = '<meta name="robots" content="noindex,nofollow,noarchive,noodp,noydir" />';
     if (!DEBUG) {
         $html[] = '<meta http-equiv="refresh" content="' . $time . '; URL=' . $s_url . '" />';
     }
     $html[] = '<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/' . Render::TWITTER_BOOTSTRAP_VER . '/css/bootstrap.min.css" type="text/css" />';
     $html[] = '<title>' . $_title['redirect'] . '</title>';
     $html[] = '</head>';
     $html[] = '<body>';
     $html[] = '<div class="container">';
     $html[] = '<p class="alert alert-success">';
     $html[] = '<span class="glyphicon glyphicon-info-sign"></span>';
     $html[] = $_string['redirect1'] . '<br />';
     $html[] = sprintf($_string['redirect2'], $s_url);
     if (!DEBUG) {
         $html[] = '<br />NOTICE: No auto redirect when Debug mode.';
     }
     $html[] = '</p>';
     $html[] = '</div>';
     $html[] = '</body>';
     $html[] = '</html>';
     $content = join("\n", $html);
     $response->getHeaders()->addHeaderLine('Content-Length', strlen($content));
     $response->setContent($content);
     if (!headers_sent()) {
         header($response->renderStatusLine());
         foreach ($response->getHeaders() as $header) {
             header($header->toString());
         }
     }
     echo $response->getBody();
     exit;
 }
Example #4
0
 /**
  * ページのアドレスを取得
  * @return string
  */
 public function uri($cmd = 'read', $query = array(), $fragment = '')
 {
     return Router::get_resolve_uri($cmd, $this->page, 'rel', $query, $fragment);
 }
Example #5
0
 /**
  * リンク一覧を取得
  * @param string $_page ページ名
  * @return array
  */
 private static function getLinkSet($_page = '')
 {
     static $d_links;
     if (!isset($d_links)) {
         global $defaultpage, $whatsnew, $whatsdeleted, $interwiki, $aliaspage, $glossarypage;
         global $menubar, $sidebar, $navigation, $headarea, $footarea, $protect;
         // Set $_LINK for skin
         $d_links = array('search' => Router::get_cmd_uri('search'), 'opensearch' => Router::get_cmd_uri('search', null, null, array('format' => 'xml')), 'list' => Router::get_cmd_uri('list'), 'filelist' => Router::get_cmd_uri('filelist'), 'sitemap' => Router::get_resolve_uri('list', null, 'full', array('type' => 'sitemap')), 'rss' => Router::get_resolve_uri('feed', null, 'full'), 'atom' => Router::get_resolve_uri('feed', null, 'full', array('type' => 'atom')), 'read' => Router::get_resolve_uri('read', $_page), 'reload' => Router::get_resolve_uri('read', $_page, 'full'), 'related' => Router::get_resolve_uri('related', $_page), 'login' => Router::get_cmd_uri('login', $_page), 'logout' => Router::get_cmd_uri('login', $_page, null, array('action' => 'logout')), 'help' => Router::get_cmd_uri('help'), 'top' => Router::get_resolve_uri('read', $defaultpage), 'recent' => Router::get_resolve_uri('read', $whatsnew), 'deleted' => Router::get_resolve_uri('read', $whatsdeleted), 'interwiki' => Router::get_resolve_uri('read', $interwiki), 'alias' => Router::get_resolve_uri('read', $aliaspage), 'glossary' => Router::get_resolve_uri('read', $glossarypage), 'menu' => Router::get_resolve_uri('read', $menubar), 'side' => Router::get_resolve_uri('read', $sidebar), 'navigation' => Router::get_resolve_uri('read', $navigation), 'head' => Router::get_resolve_uri('read', $headarea), 'foot' => Router::get_resolve_uri('read', $footarea), 'protect' => Router::get_resolve_uri('read', $protect), 'add' => Router::get_cmd_uri('add'), 'backup' => Router::get_cmd_uri('backup'), 'copy' => Router::get_cmd_uri('template'), 'log' => Router::get_cmd_uri('logview'), 'log_browse' => Router::get_cmd_uri('logview', null, null, array('kind' => 'browse')), 'log_check' => Router::get_cmd_uri('logview', null, null, array('kind' => 'check')), 'log_down' => Router::get_cmd_uri('logview', null, null, array('kind' => 'download')), 'log_login' => Router::get_cmd_uri('logview', null, null, array('kind' => 'login')), 'log_update' => Router::get_cmd_uri('logview'), 'new' => Router::get_cmd_uri('newpage'), 'newsub' => Router::get_cmd_uri('newpage_subdir'), 'rename' => Router::get_cmd_uri('rename'), 'upload_list' => Router::get_cmd_uri('attach', null, null, array('pcmd' => 'list')), 'referer' => Router::get_cmd_uri('referer'), 'pingback' => Router::get_cmd_uri('xmlrpc'));
     }
     $links = $d_links;
     if (!empty($_page)) {
         static $p_links;
         if (!isset($p_links[$_page])) {
             $p_links[$_page] = array('add' => Router::get_cmd_uri('add', $_page), 'backup' => Router::get_cmd_uri('backup', $_page), 'brokenlink' => Router::get_cmd_uri('brokenlink', $_page), 'copy' => Router::get_cmd_uri('template', null, null, array('refer' => $_page)), 'diff' => Router::get_cmd_uri('diff', $_page), 'edit' => Router::get_cmd_uri('edit', $_page), 'freeze' => Router::get_cmd_uri('freeze', $_page), 'guiedit' => Router::get_cmd_uri('guiedit', $_page), 'log' => Router::get_cmd_uri('logview', $_page), 'log_browse' => Router::get_cmd_uri('logview', $_page, null, array('kind' => 'browse')), 'log_check' => Router::get_cmd_uri('logview', $_page, null, array('kind' => 'check')), 'log_down' => Router::get_cmd_uri('logview', $_page, null, array('kind' => 'download')), 'log_login' => Router::get_cmd_uri('logview', null, null, array('kind' => 'login')), 'log_update' => Router::get_cmd_uri('logview', $_page), 'new' => Router::get_cmd_uri('newpage', null, null, array('refer' => $_page)), 'newsub' => Router::get_cmd_uri('newpage_subdir', null, null, array('directory' => $_page)), 'rename' => Router::get_cmd_uri('rename', null, null, array('refer' => $_page)), 'source' => Router::get_cmd_uri('source', $_page), 'unfreeze' => Router::get_cmd_uri('unfreeze', $_page), 'upload' => Router::get_cmd_uri('attach', $_page, null, array('pcmd' => 'upload')), 'template' => Router::get_cmd_uri('template', null, null, array('refer' => $_page)), 'referer' => Router::get_cmd_uri('referer', $_page));
         }
         $links = array_merge($d_links, $p_links[$_page]);
     }
     ksort($links);
     return $links;
 }