OSDN Git Service

PukiWiki/1.4 first beta release
[pukiwiki/pukiwiki.git] / plugin / stripbracket.inc.php
1 <?php
2 /////////////////////////////////////////////////
3 // PukiWiki - Yet another WikiWikiWeb clone.
4 //
5 // $Id: stripbracket.inc.php,v 1.1 2003/01/27 05:38:47 panda Exp $
6 //
7
8 /*
9  stripbracket ¥×¥é¥°¥¤¥ó
10  ¥Ç¡¼¥¿¥Õ¥¡¥¤¥ë¤Î'[[ ]]'¤ò¼è¤ê½ü¤¯
11  ¥Õ¥¡¥¤¥ë¤Î¥ª¡¼¥Ê¡¼¤òPHP¤Î¼Â¹Ô¼Ô(apache,www-data¤Ê¤É)¤Ë¤¹¤ë
12  (¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼¤·¤Æ¤¤¤ë¤À¤± :) )
13
14 */
15
16 function plugin_stripbracket_action() {
17         $result = '';
18         
19         $dirs = array('attach','backup','counter','diff','wiki');
20         
21         umask(0133);
22         
23         foreach ($dirs as $dir) {
24                 if (!$dp = @opendir($dir)) {
25                         continue;
26                 }
27                 while ($file = readdir($dp)) {
28                         if (preg_match('/^5B5B([^_]+)5D5D(.+)$/',$file,$matches)) {
29                                 $newfile = $matches[1].$matches[2];
30                                 $page = decode($matches[1]);
31                                 if (file_exists("$dir/$newfile")) {
32                                         $result .= "-$page file $dir/$newfile already exists.\n";
33                                         continue;
34                                 }
35                         }
36                         else {
37                                 $newfile = $file;
38                         }
39                         // get owner
40                         copy("$dir/$file","$dir/__TEMP__");
41                         touch("$dir/__TEMP__",filemtime("$dir/$file"));
42                         unlink("$dir/$file");
43                         rename("$dir/__TEMP__","$dir/$newfile");
44                 }
45                 closedir($dir);
46         }
47         return array('msg'=>'stripbracket result','body'=>convert_html($result));
48 }
49 ?>