OSDN Git Service

PKWK_READONLY prohibits editing
[pukiwiki/pukiwiki.git] / plugin / newpage.inc.php
1 <?php
2 // $Id: newpage.inc.php,v 1.14 2005/01/23 08:05:38 henoheno Exp $
3 //
4 // Newpage plugin
5
6 function plugin_newpage_convert()
7 {
8         global $script, $vars, $_btn_edit, $_msg_newpage, $BracketName;
9
10         if (PKWK_READONLY) return ''; // Show nothing
11
12         $newpage = '';
13         if (func_num_args()) list($newpage) = func_get_args();
14         if (! preg_match('/^' . $BracketName . '$/', $newpage)) $newpage = '';
15
16         $s_page    = htmlspecialchars(isset($vars['refer']) ? $vars['refer'] : $vars['page']);
17         $s_newpage = htmlspecialchars($newpage);
18         $ret = <<<EOD
19 <form action="$script" method="post">
20  <div>
21   <input type="hidden" name="plugin" value="newpage" />
22   <input type="hidden" name="refer"  value="$s_page" />
23   $_msg_newpage:
24   <input type="text"   name="page"   value="$s_newpage" size="30" />
25   <input type="submit" value="$_btn_edit" />
26  </div>
27 </form>
28 EOD;
29
30         return $ret;
31 }
32
33 function plugin_newpage_action()
34 {
35         global $vars, $_btn_edit, $_msg_newpage;
36
37         if (PKWK_READONLY) die_message('PKWK_READONLY prohibits editing');
38
39         if ($vars['page'] == '') {
40                 $retvars['msg']  = $_msg_newpage;
41                 $retvars['body'] = plugin_newpage_convert();
42                 return $retvars;
43         } else {
44                 $page    = strip_bracket($vars['page']);
45                 $r_page  = rawurlencode(isset($vars['refer']) ?
46                         get_fullname($page, $vars['refer']) : $page);
47                 $r_refer = rawurlencode($vars['refer']);
48
49                 pkwk_headers_sent();
50                 header('Location: ' . get_script_uri() .
51                         '?cmd=read&page=' . $r_page . '&refer=' . $r_refer);
52                 exit;
53         }
54 }
55 ?>