function plugin_multilang_action() { global $vars, $language; $page = isset($vars['page']) ? $vars['page'] : ''; $lang = isset($vars['lang']) ? $vars['lang'] : ''; if ($lang) { setcookie('lang', $lang, 0, get_baseuri('abs')); $_COOKIE['lang'] = $lang; /* To effective promptly */ // UPDATE $language = Lang::getLanguage(1); } // Location ヘッダーで飛ばないような環境の場合は、この部分を // 有効にして対応下さい。 // if(exist_plugin_action('read')) return plugin_read_action(); header('Location: ' . get_page_location_uri($page)); exit; }
function greybox_set_head_tags() { global $head_tags, $greybox_set; if (isset($greybox_set) && $greybox_set) { return; } $greybox_set = true; $head_tags[] = ' <script type="text/javascript">'; $head_tags[] = ' <!--'; $head_tags[] = ' var GB_ROOT_DIR = "' . get_baseuri('abs') . SKIN_URI . 'greybox/' . '";'; $head_tags[] = ' // -->'; $head_tags[] = ' </script>'; $css_charset = 'utf-8'; switch (UI_LANG) { case 'ja_JP': $css_charset = 'Shift_JIS'; break; } $head_tags[] = ' <script type="text/javascript" src="' . SKIN_URI . 'greybox/AJS.js"></script>'; $head_tags[] = ' <script type="text/javascript" src="' . SKIN_URI . 'greybox/AJS_fx.js"></script>'; $head_tags[] = ' <script type="text/javascript" src="' . SKIN_URI . 'greybox/gb_scripts.js"></script>'; $head_tags[] = ' <link rel="stylesheet" href="' . SKIN_URI . 'greybox/gb_styles.css" type="text/css" media="all" charset="' . $css_charset . '" />'; }
function plugin_skin_convert() { global $vars, $skin_file, $_skin_msg; if (!PLUGIN_SKIN_USE) { return $_skin_msg['err_not_use']; } if (func_num_args() == 0) { return skin_make_filelist(); } $argv = func_get_args(); $parm = skin_set_parm($argv); if (count($parm['list']) > 1) { $skin_list = array(); foreach ($parm['list'] as $skin) { $skin_list[$skin] = ''; } return skin_make_filelist($skin_list); } $val = explode('.', $parm['list'][0]); $val[1] = empty($val[1]) ? $val[0] : $val[1]; $skin_file = add_skindir($val[0]); if (!file_exists($skin_file) || !is_readable($skin_file)) { die_message($skin_file . ' (skin file) is not found.'); } $expire = PLUGIN_SKIN_EXPIRE > 0 ? time() + 60 * 60 * 24 * PLUGIN_SKIN_EXPIRE : PLUGIN_SKIN_EXPIRE; setcookie('skin_file', $skin_file, $expire, get_baseuri('abs')); $_COOKIE['skin_file'] = $skin_file; if ($val[0] == 'tdiary') { setcookie('tdiary_theme', $val[1], $expire, get_baseuri('abs')); $_COOKIE['tdiary_theme'] = $val[1]; } else { setcookie('tdiary_theme', '', time() - 3600); // tdiary じゃないので削除 } header('Location: ' . get_page_location_uri($vars['page'])); }
function plugin_guiedit_action() { // global $vars, $_title_edit, $load_template_func; global $vars, $load_template_func; global $menubar, $sidebar, $topicpath, $_string; // if (PKWK_READONLY) Utility::dieMessage( sprintf($_string['error_prohibit'],'PKWK_READONLY') ); if (Auth::check_role('readonly')) { Utility::dieMessage(sprintf($_string['error_prohibit'], 'PKWK_READONLY')); } if (PKWK_READONLY == Auth::ROLE_AUTH && Auth::get_role_level() > Auth::ROLE_AUTH) { Utility::dieMessage(sprintf($_string['error_prohibit'], 'PKWK_READONLY')); } $page = isset($vars['page']) ? $vars['page'] : ''; $wiki = Factory::Wiki($page); if (!$wiki->isEditable()) { Utility::dieMessage('You have not permission to edit this page.'); } if (!is_page($page) && Auth::is_check_role(PKWK_CREATE_PAGE)) { Utility::dieMessage(sprintf($_string['error_prohibit'], 'PKWK_CREATE_PAGE')); } global $guiedit_use_fck; $guiedit_use_fck = isset($vars['text']) ? false : true; if ($guiedit_use_fck) { global $guiedit_pkwk_root; $guiedit_pkwk_root = get_baseuri('abs'); } if (GUIEDIT_FULL_SIZE) { $menubar = $sidebar = ''; $topicpath = false; } if (isset($vars['edit'])) { return plugin_guiedit_edit_data($page); } else { if ($load_template_func && isset($vars['template'])) { return plugin_guiedit_template(); } else { if (isset($vars['preview'])) { return plugin_guiedit_preview(); } else { if (isset($vars['write'])) { return plugin_guiedit_write(); } else { if (isset($vars['cancel'])) { return plugin_guiedit_cancel(); } } } } } $postdata = $vars['original'] = $wiki->get(true); if (isset($vars['text'])) { if (!empty($vars['id'])) { exist_plugin('edit'); $postdata = plugin_edit_parts($vars['id'], $source); if ($postdata === FALSE) { unset($vars['id']); $postdata = $vars['original']; } } if ($postdata == '') { $postdata = $wiki->auto_template(); } } return array('msg' => 'GUI Edit', 'body' => plugin_guiedit_edit_form($page, $postdata)); }
function change_uri($cmd = '', $force = 0) { global $script, $script_abs, $absolute_uri, $script_directory_index; static $onece, $bkup, $bkup_script, $bkup_script_abs, $bkup_absolute_uri; static $target_fields = array('script' => 'bkup_script', 'script_abs' => 'bkup_script_abs', 'absolute_uri' => 'bkup_absolute_uri'); if (!isset($bkup)) { $bkup = true; foreach ($target_fields as $org => $bkup) { if (!isset(${$bkup}) && isset($org)) { ${$bkup} = ${$org}; } } } if (isset($onece)) { return; } switch ($cmd) { case 'reset': foreach ($target_fields as $org => $bkup) { if (isset(${$bkup})) { ${$org} = ${$bkup}; } else { if (isset(${$org})) { unset(${$org}); } } } return; case 'net': case 'abs': case 'rel': change_uri('reset'); $absolute_uri = 0; break; default: $absolute_uri = 1; } $script = get_baseuri($cmd); if (!isset($script_directory_index)) { $script .= init_script_filename(); } if ($force === 1) { $onece = 1; } return; }
function plugin_guiedit_edit_form($page, $postdata, $digest = FALSE, $b_template = TRUE) { global $vars; global $load_template_func, $whatsnew; global $_button; global $notimeupdate; global $head_tags, $javascript; global $guiedit_use_fck; // Newly generate $digest or not if ($digest === FALSE) { $digest = md5(get_source($page, TRUE, TRUE)); } $s_id = isset($vars['id']) ? htmlspecialchars($vars['id']) : ''; if (!$guiedit_use_fck) { $body = edit_form($page, $postdata, $digest, $b_template); $pattern = "/(<input\\s+type=\"hidden\"\\s+name=\"cmd\"\\s+value=\")edit(\"\\s*\\/?>)/"; $replace = "\$1guiedit\$2\n" . ' <input type="hidden" name="id" value="' . $s_id . '" />' . ' <input type="hidden" name="text" value="1" />'; $body = preg_replace($pattern, $replace, $body); return $body; } require_once GUIEDIT_LIB_PATH . 'guiedit.ini.php'; // フォームの値の設定 $s_digest = htmlspecialchars($digest); $s_page = htmlspecialchars($page); $s_original = htmlspecialchars($vars['original']); $s_ticket = md5(MUTIME); if (function_exists('pkwk_session_start') && pkwk_session_start() != 0) { // BugTrack/95 fix Problem: browser RSS request with session $_SESSION[$s_ticket] = md5(get_ticket() . $digest); $_SESSION['origin' . $s_ticket] = md5(get_ticket() . str_replace("\r", '', $s_original)); } // テンプレート $template = ''; if ($load_template_func) { global $guiedit_non_list; $pages = array(); foreach (get_existpages() as $_page) { if ($_page == $whatsnew || check_non_list($_page)) { continue; } foreach ($guiedit_non_list as $key) { $pos = strpos($_page . '/', $key . '/'); if ($pos !== FALSE && $pos == 0) { continue 2; } } $_s_page = htmlspecialchars($_page); $pages[$_page] = ' <option value="' . $_s_page . '">' . $_s_page . '</option>'; } ksort($pages); $s_pages = join("\n", $pages); $template = <<<EOD <select name="template_page" onchange="Template()"> <option value="">-- {$_button['template']} --</option> {$s_pages} </select> <br /> EOD; } // チェックボックス「タイムスタンプを変更しない」 $add_notimestamp = ''; if ($notimeupdate != 0) { $checked_time = isset($vars['notimestamp']) ? ' checked="checked"' : ''; // if ($notimeupdate == 2) { if ($notimeupdate == 2 && auth::check_role('role_adm_contents')) { $add_notimestamp = ' ' . '<input type="password" name="pass" size="12" />' . "\n"; } $add_notimestamp = '<input type="checkbox" name="notimestamp" ' . 'id="_edit_form_notimestamp" value="true"' . $checked_time . ' />' . "\n" . ' ' . '<label for="_edit_form_notimestamp"><span class="small">' . $_button['notchangetimestamp'] . '</span></label>' . "\n" . $add_notimestamp . ' '; } // フォーム $body = <<<EOD <div class="edit_form"> <form id="edit_form" action="{$script}" method="post" style="margin-bottom:0px;"> {$template} <input type="hidden" name="cmd" value="guiedit" /> <input type="hidden" name="page" value="{$s_page}" /> <input type="hidden" name="digest" value="{$s_digest}" /> <input type="hidden" name="ticket" value="{$s_ticket}" /> <input type="hidden" name="id" value="{$s_id}" /> <textarea name="msg" rows="1" cols="1" style="display:none"></textarea> <div style="float:left;"> <input type="submit" name="write" value="{$_button['update']}" accesskey="s" onclick="Write()" /> <input type="button" name="preview" value="{$_button['preview']}" accesskey="p" onclick="Preview()" /> {$add_notimestamp} </div> <textarea name="original" rows="1" cols="1" style="display:none">{$s_original}</textarea> </form> <form action="{$script}" method="post" style="margin-top:0px;"> <input type="hidden" name="cmd" value="guiedit" /> <input type="hidden" name="page" value="{$s_page}" /> <input type="submit" name="cancel" value="{$_button['cancel']}" accesskey="c" /> </form> </div> <div id="preview_indicator" style="display:none"></div> <div id="preview_area" style="display:none"></div> EOD; // JavaScript を有効にする $javascript = 1; $root = get_baseuri('abs'); // ヘッダの設定 $head_tags[] = ' <link rel="stylesheet" type="text/css" href="' . GUIEDIT_LIB_PATH . 'guiedit.css" charset="UTF-8" />'; $head_tags[] = ' <script type="text/javascript" src="' . GUIEDIT_FCK_PATH . 'fckeditor.js" charset="UTF-8"></script>'; $head_tags[] = ' <script type="text/javascript" src="' . GUIEDIT_LIB_PATH . 'ajax.js" charset="UTF-8"></script>'; $head_tags[] = ' <script type="text/javascript" src="' . GUIEDIT_LIB_PATH . 'guiedit.js" charset="UTF-8"></script>'; $head_tags[] = ' <script type="text/javascript">'; $head_tags[] = ' <!-- <![CDATA['; $head_tags[] = ' var SMILEY_PATH="' . $root . IMAGE_URI . "face/" . '";'; $head_tags[] = ' var FCK_PATH="' . $root . GUIEDIT_FCK_PATH . '";'; $head_tags[] = ' var GUIEDIT_PATH="' . $root . GUIEDIT_LIB_PATH . '";'; $head_tags[] = ' //]]>-->'; $head_tags[] = ' </script>'; return $body; }
function dav_get_fullpath_page() { $pos = strpos($_SERVER['REQUEST_URI'], 'index.php'); $filename = $pos === false ? '' : 'index.php'; $pref = get_baseuri('abs') . $filename; return substr(rawurldecode($_SERVER['REQUEST_URI']), strlen($pref)); }
function get_script_uri($path = '') { global $absolute_uri, $script_directory_index; if ($absolute_uri) { return get_script_absuri(); } $uri = get_baseuri($path); if (!isset($script_directory_index)) { $uri .= init_script_filename(); } return $uri; }