]> CyberLeo.Net >> Repos - SourceForge/phpwiki.git/blob - lib/plugin/InterWikiSearch.php
don't display the SQL dsn connection password
[SourceForge/phpwiki.git] / lib / plugin / InterWikiSearch.php
1 <?php // -*-php-*-
2 rcs_id('$Id: InterWikiSearch.php,v 1.3 2003-02-23 20:10:48 dairiki Exp $');
3 /**
4  Copyright 1999, 2000, 2001, 2002 $ThePhpWikiProgrammingTeam
5
6  This file is part of PhpWiki.
7
8  PhpWiki is free software; you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation; either version 2 of the License, or
11  (at your option) any later version.
12
13  PhpWiki is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  GNU General Public License for more details.
17
18  You should have received a copy of the GNU General Public License
19  along with PhpWiki; if not, write to the Free Software
20  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
21  */
22 /**
23  * @description
24  */
25 require_once('lib/PageType.php');
26
27 class WikiPlugin_InterWikiSearch
28 extends WikiPlugin
29 {
30     function getName() {
31         return _("InterWikiSearch");
32     }
33
34     function getDescription() {
35         return _("Perform searches on InterWiki sites listed in InterWikiMap.");
36     }
37
38     function getVersion() {
39         return preg_replace("/[Revision: $]/", '',
40                             "\$Revision: 1.3 $");
41     }
42
43     function getDefaultArguments() {
44         return array();
45     }
46
47     function run ($dbi, $argstr, $request) {
48         $args = $this->getArgs($argstr, $request);
49         extract($args);
50
51         return $this->disabled("Sorry, this plugin is currently out of order.");
52         
53         return PageType($pagerevisionhandle,
54                         $pagename = _('InterWikiMap'),
55                         $markup = 2,
56                         $overridePageType = 'searcableInterWikiMapPageType');
57     }
58 };
59
60
61 /**
62  * @desc
63  */
64 if (0) {
65 class searcableInterWikiMapPageType
66 extends interWikiMapPageType
67 {
68     function _arrayToTable ($array, &$request) {
69         $thead = HTML::thead();
70         $label[0] = _("Wiki Name");
71         $label[1] = _("Search");
72         $thead->pushContent(HTML::tr(HTML::td($label[0]),
73                                      HTML::td($label[1])));
74
75         $tbody = HTML::tbody();
76         $dbi = $request->getDbh();
77         if ($array) {
78             foreach ($array as $moniker => $interurl) {
79                 $monikertd = HTML::td(array('class' => 'interwiki-moniker'),
80                                       $dbi->isWikiPage($moniker)
81                                       ? WikiLink($moniker)
82                                       : $moniker);
83
84                 $w = new WikiPluginLoader;
85                 $p = $w->getPlugin('ExternalSearch');
86                 $argstr = sprintf('url="%s"', addslashes($moniker));
87                 $searchtd = HTML::td($p->run($dbi, $argstr, $request));
88
89                 $tbody->pushContent(HTML::tr($monikertd, $searchtd));
90             }
91         }
92         $table = HTML::table();
93         $table->setAttr('class', 'interwiki-map');
94         $table->pushContent($thead);
95         $table->pushContent($tbody);
96
97         return $table;
98     }
99 };
100 }
101
102
103 // $Log: not supported by cvs2svn $
104 // Revision 1.2  2003/02/22 20:49:56  dairiki
105 // Fixes for "Call-time pass by reference has been deprecated" errors.
106 //
107 // Revision 1.1  2003/01/31 22:56:21  carstenklapp
108 // New plugin which provides entry forms to search any site listed in the InterWikiMap.
109 //
110
111 // (c-file-style: "gnu")
112 // Local Variables:
113 // mode: php
114 // tab-width: 8
115 // c-basic-offset: 4
116 // c-hanging-comment-ender-p: nil
117 // indent-tabs-mode: nil
118 // End:
119 ?>