コード例 #1
0
function plugin_dump_action()
{
    global $vars, $auth_users, $realm;
    // if (PKWK_READONLY) die_message('PKWK_READONLY prohibits this');
    if (auth::check_role('readonly')) {
        die_message(_("PKWK_READONLY prohibits this"));
    }
    $msg = PLUGIN_DUMP_ALLOW_RESTORE ? _("dump & restore") : _("dump");
    $body = '';
    while (auth::check_role('role_adm')) {
        unset($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
        if (!auth::auth_pw($auth_users)) {
            header('WWW-Authenticate: Basic realm="' . $realm . '"');
            header('HTTP/1.0 401 Unauthorized');
            $body = "<p><strong>" . _("The password is different.") . "</strong></p>\n";
            return array('msg' => $msg, 'body' => $body);
        }
    }
    // メニューを表示する必要があるか?
    if (!isset($vars['menu'])) {
        // 入力フォームを表示
        $body = plugin_dump_disp_form();
        return array('msg' => $msg, 'body' => $body);
    }
    $act = isset($vars['act']) ? $vars['act'] : NULL;
    set_time_limit(0);
    switch ($act) {
        case PLUGIN_DUMP_DUMP:
            $body = plugin_dump_download();
            break;
        case PLUGIN_DUMP_RESTORE:
            $retcode = plugin_dump_upload();
            $msg = $retcode['code'] == TRUE ? _("Up-loading was completed.") : _("It failed in up-loading.");
            $body = $retcode['msg'];
            break;
        default:
            // 無効な命令です。
            $body = _("It is an invalid instruction.");
    }
    return array('msg' => $msg, 'body' => $body);
}
コード例 #2
0
ファイル: dump.inc.php プロジェクト: nsmr0604/pukiwiki
function plugin_dump_action()
{
    global $vars;
    if (PKWK_READONLY) {
        die_message('PKWK_READONLY prohibits this');
    }
    $pass = isset($_POST['pass']) ? $_POST['pass'] : null;
    $act = isset($vars['act']) ? $vars['act'] : null;
    $body = '';
    if ($pass !== null) {
        if (!pkwk_login($pass)) {
            $body = "<p><strong>パスワードが違います。</strong></p>\n";
        } else {
            switch ($act) {
                case PLUGIN_DUMP_DUMP:
                    $body = plugin_dump_download();
                    break;
                case PLUGIN_DUMP_RESTORE:
                    $retcode = plugin_dump_upload();
                    if ($retcode['code'] == true) {
                        $msg = 'アップロードが完了しました';
                    } else {
                        $msg = 'アップロードに失敗しました';
                    }
                    $body .= $retcode['msg'];
                    return array('msg' => $msg, 'body' => $body);
                    break;
            }
        }
    }
    // 入力フォームを表示
    $body .= plugin_dump_disp_form();
    $msg = '';
    if (PLUGIN_DUMP_ALLOW_RESTORE) {
        $msg = 'dump & restore';
    } else {
        $msg = 'dump';
    }
    return array('msg' => $msg, 'body' => $body);
}
コード例 #3
0
ファイル: dump.inc.php プロジェクト: big2men/qhm
function plugin_dump_action()
{
    global $style_name, $script;
    $qm = get_qm();
    $qt = get_qt();
    $include_bs = '
<link rel="stylesheet" href="skin/bootstrap/css/bootstrap.min.css" />
<script type="text/javascript" src="skin/bootstrap/js/bootstrap.min.js"></script>';
    $qt->appendv_once('include_bootstrap_pub', 'beforescript', $include_bs);
    $head = '
<link rel="stylesheet" href="skin/hokukenstyle/qhm.css" />
<style type="text/css">
body {background-color: #E7E7E7;}
</style>';
    $qt->appendv('beforescript', $head);
    $style_name = '..';
    $back_url = '<p><a href="' . $script . '">' . $qm->m['frontpage'] . '</a> &gt; <a href="' . $script . '?cmd=qhmsetting">' . $qm->m['preferences'] . '</a> &gt; ' . $qm->m['here'] . '</p>';
    $editable = ss_admin_check();
    if (!$editable) {
        return array('msg' => $qm->m['plg_dump']['title'], 'body' => $qm->m['fmt_err_page_only_for_admin']);
    }
    global $vars;
    if (PKWK_READONLY) {
        die_message($qm->m['fmt_err_pkwk_readonly']);
    }
    $pass = isset($_POST['pass']) ? $_POST['pass'] : NULL;
    $act = isset($vars['act']) ? $vars['act'] : NULL;
    $body = '';
    if ($pass !== NULL) {
        if (!pkwk_login($pass)) {
            $body = "<p class=\"alert alert-danger\">{$qm->m['fmt_err_invalidpass']}</strong></p>\n";
        } else {
            switch ($act) {
                case PLUGIN_DUMP_DUMP:
                    $body = plugin_dump_download();
                    break;
                case PLUGIN_DUMP_RESTORE:
                    $retcode = plugin_dump_upload();
                    $msg = $retcode['code'] ? $qm->m['plg_dump']['restore_success'] : $qm->m['plg_dump']['restore_failed'];
                    $body .= $retcode['msg'];
                    return array('msg' => $msg, 'body' => $back_url . $body);
                    break;
                case PLUGIN_DUMP_FULL:
                    $body = plugin_dump_download_full();
                    break;
            }
        }
    }
    // 入力フォームを表示
    $body .= plugin_dump_disp_form();
    $msg = '';
    if (PLUGIN_DUMP_ALLOW_RESTORE) {
        $msg = $qm->m['plg_dump']['title_bk_rstr'];
    } else {
        $msg = $qm->m['plg_dump']['title_bk'];
    }
    return array('msg' => $msg, 'body' => $back_url . $body);
}