OSDN Git Service

BugTrack/2520 Remove spaces between heading text and dagger
[pukiwiki/pukiwiki.git] / plugin / random.inc.php
index 6ba1025..9a56004 100644 (file)
@@ -1,48 +1,55 @@
 <?php
-// $Id: random.inc.php,v 1.2 2002/12/05 05:50:41 panda Exp $
+// PukiWiki - Yet another WikiWikiWeb clone
+// random.inc.php
+// Copyright 2002-2019 PukiWiki Development Team
+// License: GPL v2 or (at your option) any later version
+//
+// Show random page plugin
+
 /*
-Last-Update:2002-10-29 rev.2
+ *プラグイン random
+  配下のページをランダムに表示する
 
-*¥×¥é¥°¥¤¥ó random
-ÇÛ²¼¤Î¥Ú¡¼¥¸¤ò¥é¥ó¥À¥à¤Ëɽ¼¨¤¹¤ë
+ *Usage
+  #random(メッセージ)
 
-*Usage
- #random(¥á¥Ã¥»¡¼¥¸)
+ *パラメータ
+ -メッセージ~
+ リンクに表示する文字列
 
-*¥Ñ¥é¥á¡¼¥¿
--¥á¥Ã¥»¡¼¥¸~
- ¥ê¥ó¥¯¤Ëɽ¼¨¤¹¤ëʸ»úÎó
+ */
 
-*/
 function plugin_random_convert()
 {
-       global $script,$vars;
-       
-       $title = 'press here.';
-       
-       if(func_num_args()) {
-               $args = func_get_args();
-               $title = htmlspecialchars($args[0]);
+       global $vars;
+
+       $script = get_base_uri();
+       $title = '[Random Link]'; // default
+       if (func_num_args()) {
+               $args  = func_get_args();
+               $title = $args[0];
        }
-       return "<p><a href=\"$script?plugin=random&amp;refer={$vars['page']}\">$title</a></p>";
+
+       return "<p><a href=\"$script?plugin=random&amp;refer=" .
+               pagename_urlencode($vars['page']) . '">' .
+               htmlsc($title) . '</a></p>';
 }
 
 function plugin_random_action()
 {
-       global $script,$vars,$post;
-       
-       $pattern = '[['.strip_bracket($vars['refer']).'/';
-       
+       global $vars;
+
+       $pattern = strip_bracket($vars['refer']) . '/';
        $pages = array();
-       foreach (get_existpages() as $_page)
-               if (strpos($_page,$pattern) === 0)
+       foreach (get_existpages() as $_page) {
+               if (strpos($_page, $pattern) === 0)
                        $pages[$_page] = strip_bracket($_page);
-//     natcasesort($pages);
-       
-       srand((double)microtime()*1000000);
+       }
+
+       srand((double)microtime() * 1000000);
        $page = array_rand($pages);
 
-       if ($page != '') { $vars['refer'] = $page; }
+       if ($page != '') $vars['refer'] = $page;
+
        return array('body'=>'','msg'=>'');
 }
-?>