OSDN Git Service

Check defined or undefined
[pukiwiki/pukiwiki.git] / plugin / lookup.inc.php
index 189c228..21689c2 100644 (file)
@@ -1,41 +1,48 @@
-<?
-// $Id: lookup.inc.php,v 1.4 2002/07/01 07:08:57 masui Exp $
+<?php
+// $Id: lookup.inc.php,v 1.10 2004/07/31 03:09:20 henoheno Exp $
 
 function plugin_lookup_convert()
 {
        global $script,$vars;
-       
+
        $args = func_get_args();
-       
-       if(func_num_args() < 2) return FALSE;
-       
-       $iwn = trim(strip_tags($args[0]));
-       $btn = trim(strip_tags($args[1]));
-       $default = trim(strip_tags($args[2]));
-       
-       $ret = "<form action=\"$script\" method=\"post\">\n";
-       $ret.= "<div>\n";
-       $ret.= "<input type=\"hidden\" name=\"plugin\" value=\"lookup\" />\n";
-       $ret.= "<input type=\"hidden\" name=\"refer\" value=\"$vars[page]\" />\n";
-       $ret.= "<input type=\"hidden\" name=\"inter\" value=\"$iwn\" />\n";
-       $ret.= "$iwn:\n";
-       $ret.= "<input type=\"text\" name=\"page\" size=\"30\" value=\"$default\" />\n";
-       $ret.= "<input type=\"submit\" value=\"$btn\" />\n";
-       $ret.= "</div>\n";
-       $ret.= "</form>\n";
 
+       if (func_num_args() < 2) return FALSE;
+
+       $iwn = htmlspecialchars(trim(strip_tags($args[0])));
+       $btn = htmlspecialchars(trim(strip_tags($args[1])));
+
+       $default = '';
+       if (func_num_args() > 2)
+               $default = htmlspecialchars(trim(strip_tags($args[2])));
+
+       $s_page = htmlspecialchars($vars['page']);
+
+       $ret = <<<EOD
+<form action="$script" method="post">
+ <div>
+  <input type="hidden" name="plugin" value="lookup" />
+  <input type="hidden" name="refer" value="$s_page" />
+  <input type="hidden" name="inter" value="$iwn" />
+  $iwn:
+  <input type="text" name="page" size="30" value="$default" />
+  <input type="submit" value="$btn" />
+ </div>
+</form>
+EOD;
        return $ret;
 }
 function plugin_lookup_action()
 {
-       global $vars,$script;
-       
-       if(!$vars["inter"] || !$vars["page"]) return;
-       
-       $interwikiname = "[[".$vars["inter"].":".$vars["page"]."]]";
-       $interwikiname = rawurlencode($interwikiname);
-       
-       header("Location: $script?$interwikiname");
+       global $vars;
+
+       $url = get_interwiki_url($vars['inter'],$vars['page']);
+       if ($url === FALSE)
+       {
+               return;
+       }
+
+       header("Location: $url");
        die();
 }
 ?>