2 // PukiWiki - Yet another WikiWikiWeb clone.
3 // $Id: freeze.inc.php,v 1.12 2011/01/25 15:01:01 henoheno Exp $
4 // Copyright: 2003-2004, 2007 PukiWiki Developers Team
5 // License: GPL v2 or (at your option) any later version
9 // Reserve 'Do nothing'. '^#freeze' is for internal use only.
10 function plugin_freeze_convert() { return ''; }
12 function plugin_freeze_action()
14 global $script, $vars, $function_freeze;
15 global $_title_isfreezed, $_title_freezed, $_title_freeze;
16 global $_msg_invalidpass, $_msg_freezing, $_btn_freeze;
18 $page = isset($vars['page']) ? $vars['page'] : '';
19 if (! $function_freeze || ! is_page($page))
20 return array('msg' => '', 'body' => '');
22 $pass = isset($vars['pass']) ? $vars['pass'] : NULL;
24 if (is_freeze($page)) {
26 $msg = & $_title_isfreezed;
27 $body = str_replace('$1', htmlsc(strip_bracket($page)),
30 } else if ($pass !== NULL && pkwk_login($pass)) {
32 $postdata = get_source($page);
33 array_unshift($postdata, "#freeze\n");
34 file_write(DATA_DIR, $page, join('', $postdata), TRUE);
37 is_freeze($page, TRUE);
38 $vars['cmd'] = 'read';
39 $msg = & $_title_freezed;
44 $msg = & $_title_freeze;
45 $s_page = htmlsc($page);
46 $body = ($pass === NULL) ? '' : "<p><strong>$_msg_invalidpass</strong></p>\n";
49 <form action="$script" method="post">
51 <input type="hidden" name="cmd" value="freeze" />
52 <input type="hidden" name="page" value="$s_page" />
53 <input type="password" name="pass" size="12" />
54 <input type="submit" name="ok" value="$_btn_freeze" />
60 return array('msg'=>$msg, 'body'=>$body);