2 // $Id: memo.inc.php,v 1.11 2004/07/24 14:58:41 henoheno Exp $
4 /////////////////////////////////////////////////
5 // ¥Æ¥¥¹¥È¥¨¥ê¥¢¤Î¥«¥é¥à¿ô
6 define('MEMO_COLS', 80);
8 // ¥Æ¥¥¹¥È¥¨¥ê¥¢¤Î¹Ô¿ô
9 define('MEMO_ROWS', 5);
11 /////////////////////////////////////////////////
12 function plugin_memo_action()
14 global $script, $vars, $cols, $rows;
15 global $_title_collided, $_msg_collided, $_title_updated;
17 if (! isset($vars['msg']) || $vars['msg'] == '') return;
19 $memo_body = preg_replace("/\r/", '', $vars['msg']);
20 $memo_body = str_replace("\n", "\\n", $memo_body);
21 $memo_body = str_replace('"', '"', $memo_body); // Escape double quotes
22 $memo_body = str_replace(',', ',', $memo_body); // Escape commas
24 $postdata_old = get_source($vars['refer']);
27 foreach($postdata_old as $line)
29 if (preg_match("/^#memo\(?.*\)?$/", $line))
31 if ($memo_no == $vars['memo_no'])
33 $postdata .= "#memo($memo_body)\n";
41 $postdata_input = "$memo_body\n";
43 if (md5(@join('', get_source($vars['refer']))) != $vars['digest'])
45 $title = $_title_collided;
47 $body = "$_msg_collided\n";
49 $s_refer = htmlspecialchars($vars['refer']);
50 $s_digest = htmlspecialchars($vars['digest']);
51 $s_postdata_input = htmlspecialchars($postdata_input);
54 <form action="$script?cmd=preview" method="post">
56 <input type="hidden" name="refer" value="$s_refer" />
57 <input type="hidden" name="digest" value="$s_digest" />
58 <textarea name="msg" rows="$rows" cols="$cols" id="textarea">$s_postdata_input</textarea><br />
65 page_write($vars['refer'], $postdata);
67 $title = $_title_updated;
69 $retvars['msg'] = $title;
70 $retvars['body'] = $body;
72 $vars['page'] = $vars['refer'];
77 function plugin_memo_convert()
79 global $script, $vars, $digest;
80 global $_btn_memo_update;
81 static $numbers = array();
83 if (! isset($numbers[$vars['page']]))
85 $numbers[$vars['page']] = 0;
87 $memo_no = $numbers[$vars['page']]++;
89 $data = func_get_args();
90 $data = implode(',', $data); // Care all arguments
91 $data = str_replace(',', ',', $data); // Unescape commas
92 $data = str_replace('"', '"', $data); // Unescape double quotes
93 $data = htmlspecialchars(str_replace("\\n", "\n", $data));
95 $s_page = htmlspecialchars($vars['page']);
96 $s_digest = htmlspecialchars($digest);
100 <form action="$script" method="post" class="memo">
102 <input type="hidden" name="memo_no" value="$memo_no" />
103 <input type="hidden" name="refer" value="$s_page" />
104 <input type="hidden" name="plugin" value="memo" />
105 <input type="hidden" name="digest" value="$s_digest" />
106 <textarea name="msg" rows="$s_rows" cols="$s_cols">$data</textarea><br />
107 <input type="submit" name="memo" value="$_btn_memo_update" />