Author: tmortagne
Date: 2007-12-07 12:18:39 +0100 (Fri, 07 Dec 2007)
New Revision: 6325

Modified:
   
xwiki-products/xwiki-enterprise/trunk/wiki/src/main/resources/Main/LuceneSearch
Log:
XE-159: LuceneSearch page multiwiki list does not works in sub-wiki
* Also add comment on the first lines of the page to be able to overload wikis 
where to search

Modified: 
xwiki-products/xwiki-enterprise/trunk/wiki/src/main/resources/Main/LuceneSearch
===================================================================
--- 
xwiki-products/xwiki-enterprise/trunk/wiki/src/main/resources/Main/LuceneSearch 
    2007-12-07 08:16:14 UTC (rev 6324)
+++ 
xwiki-products/xwiki-enterprise/trunk/wiki/src/main/resources/Main/LuceneSearch 
    2007-12-07 11:18:39 UTC (rev 6325)
@@ -12,20 +12,21 @@
 <customClass></customClass>
 <contentAuthor>XWiki.Admin</contentAuthor>
 <creationDate>1186588178000</creationDate>
-<date>1196157462000</date>
-<contentUpdateDate>1196157462000</contentUpdateDate>
-<version>1.104</version>
+<date>1197025994000</date>
+<contentUpdateDate>1197025994000</contentUpdateDate>
+<version>22.1</version>
 <title></title>
 <template></template>
 <defaultTemplate></defaultTemplate>
 <validationScript></validationScript>
 <comment></comment>
+<minorEdit>false</minorEdit>
 <attachment>
 <filename>previous.png</filename>
 <filesize>389</filesize>
 <author>XWiki.Admin</author>
-<date>1195305646000</date>
-<version>1.3</version>
+<date>1196849577000</date>
+<version>1.4</version>
 <comment></comment>
 
<content>iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAEXSURBVDjLY/j//z8DJZiBLgZkz37Ynjrz4ReyDEideb89afrDf5ET7v4n2YCEqXf7qpY9/T9r76v/Xu03STMgasLteaVLHv+fufvl/6k7X/y3qrlCvAHBvTeXFC54ANbctv7p/95Nz/5rFZ0nzoCAzpuPsuc++D91x4v/jasf/y9aeP9/89rH/6VTTxJngGPDtc3xU+/879789H/5kgf/02fd+V+17OF/yZhjxBmgVXCaRT3v7BqP1mv/a1Y+/J824/b/woX3/osHHSAtECVjjqy0Lb/wP2/+3f+Zs+/8F3XfS3o0inntXWSeffJ/0tRb/0Ucdv4nKyEJW25ZYBh/5L+w5fb/ZCdlQYMNs4WMt/wfuMyEDwMA0Irn/pDRT58AAAAASUVORK5CYII=</content>
 </attachment>
@@ -33,8 +34,8 @@
 <filename>next.png</filename>
 <filesize>395</filesize>
 <author>XWiki.Admin</author>
-<date>1195305646000</date>
-<version>1.3</version>
+<date>1196849577000</date>
+<version>1.4</version>
 <comment></comment>
 
<content>iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAEdSURBVDjLY/j//z8DJZiB6gY0rH7xpW7li3YKDHj1v2bli38lix61k2VA5fJn/9eeeP+/fcOL/wlT7/aRbEDegkf/Vxx/93/xobf/S5c8/u/ecm0eSQYkTX/4f+HBN/8nbX/xf+bul/8Tp9/9r1N0dgnRBgT33QZqfPW/YdXj/42rH//v2vjkv3fHtf9SScceEWWAc8u1/xO2Pv9fsvjB//IlD4CGPPrvXH/5v2Tksc1EGWBaful/+/on/4sW3gfGxsP/9lUX/ksEH1gj6rqdhSgDlPPO/q9b8fB/5bIH/23LL/wXD9i7kqRAlEo6+b908f3/NiXn/4t57V1EcjRKRB75b1145r+o684FZCUkMb8D/0Uct88euMxEKgYA7Ojrv4CgE7EAAAAASUVORK5CYII=</content>
 </attachment>
@@ -71,242 +72,262 @@
 <tags/>
 </property>
 </object>
-<content>## ===================
-## Lucene search
-## ===================
-## Inputs : $request.text
-## Outputs : $list, $isScored
-## ===================
-{pre}
-#set ($displayUI = true)
-#if ($request.xpage &amp;&amp; $request.xpage == "rdf")
-  #set ($displayUI = false)
-#end
-## ---------------
-## Title
-## ---------------
-#if ($displayUI)
-{/pre}
-1 Search
-{pre}
-#end
-## ---------------
-## Space filtering
-## ---------------
-#if($request.space &amp;&amp; $request.space != "")
-  #set($space = $request.space)
-  #set($reqspace = "AND web:${space}")
-#else
-  #set($space = "")
-#end
-#set($spacesText = {})
-#set($spaces = $xwiki.spaces)
-#set($ok = $spacesText.put("All",""))
-#foreach($space in $spaces)
-  #set($ok = $spacesText.put($space,$space))
-#end
-## ---------------
-## Space macros
-## ---------------
-#macro(spaceoption $space $selectspace $spacesText)
-  &lt;option value="$spacesText.get($space)" #if($selectspace == 
$spacesText.get($space))selected="selected"#end&gt;$space&lt;/option&gt;
-#end
-#macro(spaceselect $selectspace $spaces $spacesText)
-  &lt;select name="space"&gt;
-    #spaceoption("All" $selectspace $spacesText)
-    #foreach($space in $spaces)
-      #spaceoption($space $selectspace $spacesText)
-    #end
-  &lt;/select&gt;
-#end
-## ---------------
-## Wikis filtering
-## ---------------
-#set($wikinametable = $request.getParameterValues("wikinames"))
-#set($wikinamelist = [])
-#set($wikinames = "")
-#foreach($wikiname in $wikinametable)
-  #set($ok = $wikinamelist.add($wikiname))
-  #if($wikinames != "")
-    #set($wikinames = $wikinames + ",")
-  #end
-  #set($wikinames = $wikinames + $wikiname)
-#end
-#if($xwiki.isVirtual())
-  #set($allwikilist = $xwiki.searchDocuments(", BaseObject as obj, 
StringProperty as prop where doc.fullName=obj.name and 
obj.className='XWiki.XWikiServerClass' and prop.id.id=obj.id and 
prop.id.name='server'"))
-  #set($allwikinamelist = [])
-  #foreach($wiki in $allwikilist)
-    #set($ok = $allwikinamelist.add($wiki.substring(17).toLowerCase()))
-  #end
-  #if(!$allwikinamelist.contains($context.mainWikiName))
-    #set($ok = $allwikinamelist.add($context.mainWikiName))
-  #end
-  ## ---------------
-  ## Wikis macros
-  ## ---------------
-  #macro(wikinamesoption $wikiname $wikinamelist)
-    &lt;option value="$wikiname" 
#if($wikinamelist.contains($wikiname))selected="selected"#end&gt;$wikiname&lt;/option&gt;
-  #end
-  #macro(wikinamesselect $allwikinamelist $wikinamelist)
-    &lt;select name="wikinames"&gt;
-      &lt;option value="" selected="selected"&gt;All&lt;/option&gt;
-      #foreach($wikiname in $allwikinamelist)
-        #wikinamesoption($wikiname $wikinamelist)
-      #end
-    &lt;/select&gt;
-  #end
-#else
-  #if($wikinames == "")
-    #set($wikinames = $context.mainWikiName)
-  #end
-#end
-## ---------------
-## Query preparation
-## ---------------
-#set($text = $request.getParameter("text"))
-#set($query = $text)
-#if(!$query)
-       #set($query = "")
-#end
-#set($itemsPerPage = "30")
-## ---------------
-## RSS link
-## ---------------
-#set($utext = $xwiki.getURLEncoded($query))
-#if($space == "")
-  #set($url = $xwiki.getURL($doc.fullName, "view", 
"xpage=rdf&amp;amp;text=${utext}" ))
-#else
-  #set($url = $xwiki.getURL($doc.fullName, "view", 
"xpage=rdf&amp;space=$space&amp;text=${utext}"))
-#end
-#if ($displayUI)
-&lt;div style="float: right;"&gt;
-  &lt;a href="$url"&gt;&lt;img src="$xwiki.getSkinFile("icons/black-rss.png")" 
style="border:0px" alt="rss icon" /&gt;&lt;/a&gt;
-&lt;/div&gt;
-## ---------------
-## Query form
-## ---------------
-&lt;form action="$doc.name" method="get"&gt;
-&lt;div class="centered"&gt;
-Query &lt;input type="text" name="text" value="$query" /&gt; in space 
#spaceselect($space $spaces $spacesText)#if($xwiki.isVirtual()) in wikis 
#wikinamesselect($xwiki.sort($allwikinamelist) $wikinamelist)#end &lt;input 
type="submit" value="Search"/&gt;
-&lt;/div&gt;
-&lt;/form&gt;
-#end
-{/pre}
-## ---------------
-## Results processing
-## ---------------
-#if($query != "")
-       #set($lucene = $xwiki.getPlugin("lucene"))
-       #if($lucene)
-                ## ---------------
-                ## Lucene search
-                ## ---------------
-               #set($languages = "default,en,de")
-               #set($firstIndex = $request.getParameter("firstIndex"))
-               #if(!$firstIndex)
-                       #set($firstIndex = "1")
-               #end
-               #set($searchresults = 
$lucene.getSearchResults("${query}$!{reqspace}", $wikinames, $languages, 
$xwiki))
-                #set($results = 
$searchresults.getResults($firstIndex,$itemsPerPage))
-               #if($searchresults.getHitcount()&gt;0)
-                        ## -----------------
-                        ## Results numbers
-                        ## -----------------
-                        
#set($lastIndex=$searchresults.getEndIndex($firstIndex, $itemsPerPage))
-                        #if ($displayUI)
-                       #if($searchresults.getHitcount()==1)
-                               One result:
-                       #else
-                               Results $firstIndex - $lastIndex of 
${searchresults.getHitcount()}:
-                       #end
-                        #end
-                        ## ---------------
-                        ## Previous page
-                        ## ---------------
-                       #if($searchresults.hasPrevious($firstIndex) &amp;&amp; 
$displayUI)
-                               #set($linkfirstIndex = 
$searchresults.getPreviousIndex($firstIndex,$itemsPerPage))
-                               #set($link = 
"${doc.name}?text=${query}&amp;firstIndex=${linkfirstIndex}")
-                                {pre}
-                               &lt;a href="$link"&gt;&lt;img 
src="${doc.getAttachmentURL("previous.png")}" alt="previous" /&gt;previous 
page&lt;/a&gt;
-                               {/pre}
-                       #end            
-                        ## -------------
-                        ## Next page
-                        ## -------------
-                       #if($searchresults.hasNext($firstIndex,$itemsPerPage) 
&amp;&amp; $displayUI)
-                               #set($linkfirstIndex = 
$searchresults.getNextIndex($firstIndex,$itemsPerPage))
-                               #set($link = 
"${doc.name}?text=${query}&amp;firstIndex=${linkfirstIndex}")
-                                {pre}
-                               &lt;a href="$link"&gt;&lt;img 
src="${doc.getAttachmentURL("next.png")}" alt="next" /&gt;next page&lt;/a&gt;
-                                {/pre}
-                       #end
-                        ## -----------------
-                        ## Display results
-                        ## -----------------
-                        #if ($request.xpage &amp;&amp; $request.xpage == "rdf")
-                          #set ($baseurl = "http://${request.serverName}";)
-                          #set ($description = "RSS feed for search on 
'$text'")                          
-                          #set ($list = $xwiki.arrayList)
-                          #foreach ($item in $results)
-                            #if ($item.type != "attachment")
-                              #set ($ok = $list.add(0, 
"${item.web}.${item.name}"))
-                            #end
-                          #end
-                          #set ($ok = $response.setContentType("text/xml"))
-                          #includeInContext("XWiki.WebRssCode")
-                        #else
-                          #set ($list = $results)
-                          #set ($isScored = true)
-                          #includeInContext("XWiki.Results")
-                        #end
-                #end
-       #else
-               #error("Lucene plugin not found. Make sure it's defined in your 
xwiki.cfg file.")
-       #end
-#end
-{pre}
-#if ($displayUI)
-## ---------------
-## Rebuild processing
-## ---------------
-#set($lucene = $xwiki.getPlugin("lucene"))
-#if($lucene)
-#set($doRebuild = $request.getParameter("rebuild"))
-#if($doRebuild)
-  #if($doRebuild=="yes")
-               #set($documentCount = $lucene.rebuildIndex())
-               #if(${documentCount}&gt;=0)
-                       {/pre}#info("Started index rebuild with $documentCount 
documents.\\
-                               Will take some time depending on the number of 
pages/attachments."){pre}
-               #else
-                       #error("Index rebuild failed.")
-               #end
-  #end
-#else
-## ---------------
-## Queue &amp; rebuild option
-## ---------------
-        #set ($queuesize = $xwiki.lucene.getQueueSize())
-        #if ($queuesize &gt; 2)
-            #set($info1 = "Lucene is currently building its index, 
${queuesize} documents in queue.")
-        #else
-            #set($info1 = "Lucene index is up to date.")
-        #end
-        #if($xwiki.hasAdminRights())
-            #set($info2 = " [Rebuild the Lucene 
index&gt;${doc.web}.${doc.name}?rebuild=yes].")
-        #else
-            #set($info2 = "")
-       #end
-        {/pre}#info("${info1}${info2}"){pre}
-#end
-#end
-## ---------------
-## Comment
-## ---------------
-{/pre}
-#warning("This is the new experimental Lucene search engine. \\
-        You can still use the XWiki [default search 
engine&gt;WebSearch?text=$query].")
-{pre}
-#end
+<content>## ===================
+## Lucene search
+## ===================
+## Inputs : $request.text
+## Outputs : $list, $isScored
+## ===================
+## Uncomment this line to overload the maximum list of wiki where to search 
(also the one listed in the wikis combobox)
+## #set($allwikinamelist = ["xwiki", "wiki1", "wiki2"])
+##
+## Uncomment this line to overload the wikis where to search
+## #set($wikinames = "xwiki,wiki,wiki")
+##
+{pre}
+#set ($displayUI = true)
+#if ($request.xpage &amp;&amp; $request.xpage == "rdf")
+  #set ($displayUI = false)
+#end
+## ---------------
+## Title
+## ---------------
+#if ($displayUI)
+{/pre}
+1 Search
+{pre}
+#end
+## ---------------
+## Space filtering
+## ---------------
+#if($request.space &amp;&amp; $request.space != "")
+  #set($space = $request.space)
+  #set($reqspace = "AND web:${space}")
+#else
+  #set($space = "")
+#end
+#set($spacesText = {})
+#set($spaces = $xwiki.spaces)
+#set($ok = $spacesText.put("All",""))
+#foreach($space in $spaces)
+  #set($ok = $spacesText.put($space,$space))
+#end
+## ---------------
+## Space macros
+## ---------------
+#macro(spaceoption $space $selectspace $spacesText)
+  &lt;option value="$spacesText.get($space)" #if($selectspace == 
$spacesText.get($space))selected="selected"#end&gt;$space&lt;/option&gt;
+#end
+#macro(spaceselect $selectspace $spaces $spacesText)
+  &lt;select name="space"&gt;
+    #spaceoption("All" $selectspace $spacesText)
+    #foreach($space in $spaces)
+      #spaceoption($space $selectspace $spacesText)
+    #end
+  &lt;/select&gt;
+#end
+## ---------------
+## Wikis filtering
+## ---------------
+#set($wikinamelist = [])
+#if(!$wikinames)
+  #set($wikinametable = $request.getParameterValues("wikinames"))
+  #set($wikinames = "")
+  #foreach($wikiname in $wikinametable)
+    #set($ok = $wikinamelist.add($wikiname))
+    #if($wikinames != "")
+      #set($wikinames = $wikinames + ",")
+    #end
+    #set($wikinames = $wikinames + $wikiname)
+  #end
+#else
+  #set($wikinametable = $wikinames.split(", "))
+  #foreach($wikiname in $wikinametable)
+    #set($ok = $wikinamelist.add($wikiname))
+  #end
+#end
+##
+#if($xwiki.isVirtual())
+  #if(!$allwikinamelist)
+    #set($currentwikiname = $context.database)
+    #set($ok = $context.setDatabase($context.mainWikiName))
+    #set($allwikilist = $xwiki.searchDocuments(", BaseObject as obj, 
StringProperty as prop where doc.fullName=obj.name and 
obj.className='XWiki.XWikiServerClass' and prop.id.id=obj.id and 
prop.id.name='server'"))
+    #set($ok = $context.setDatabase($currentwikiname))
+    ##
+    #set($allwikinamelist = [])
+    #foreach($wiki in $allwikilist)
+      #set($ok = $allwikinamelist.add($wiki.substring(17).toLowerCase()))
+    #end
+    #if(!$allwikinamelist.contains($context.mainWikiName))
+      #set($ok = $allwikinamelist.add($context.mainWikiName))
+    #end
+  #end
+  ## ---------------
+  ## Wikis macros
+  ## ---------------
+  #macro(wikinamesoption $wikiname $wikinamelist)
+    &lt;option value="$wikiname" 
#if($wikinamelist.contains($wikiname))selected="selected"#end&gt;$wikiname&lt;/option&gt;
+  #end
+  #macro(wikinamesselect $allwikinamelist $wikinamelist)
+    &lt;select name="wikinames"&gt;
+      &lt;option value="" selected="selected"&gt;All&lt;/option&gt;
+      #foreach($wikiname in $allwikinamelist)
+        #wikinamesoption($wikiname $wikinamelist)
+      #end
+    &lt;/select&gt;
+  #end
+#else
+  #if($wikinames == "")
+    #set($wikinames = $context.mainWikiName)
+  #end
+#end
+## ---------------
+## Query preparation
+## ---------------
+#set($text = $request.getParameter("text"))
+#set($query = $text)
+#if(!$query)
+       #set($query = "")
+#end
+#set($itemsPerPage = "30")
+## ---------------
+## RSS link
+## ---------------
+#set($utext = $xwiki.getURLEncoded($query))
+#if($space == "")
+  #set($url = $xwiki.getURL($doc.fullName, "view", 
"xpage=rdf&amp;amp;text=${utext}" ))
+#else
+  #set($url = $xwiki.getURL($doc.fullName, "view", 
"xpage=rdf&amp;space=$space&amp;text=${utext}"))
+#end
+#if ($displayUI)
+&lt;div style="float: right;"&gt;
+  &lt;a href="$url"&gt;&lt;img src="$xwiki.getSkinFile("icons/black-rss.png")" 
style="border:0px" alt="rss icon" /&gt;&lt;/a&gt;
+&lt;/div&gt;
+## ---------------
+## Query form
+## ---------------
+&lt;form action="$doc.name" method="get"&gt;
+&lt;div class="centered"&gt;
+Query &lt;input type="text" name="text" value="$query" /&gt; in space 
#spaceselect($space $spaces $spacesText)#if($xwiki.isVirtual()) in wikis 
#wikinamesselect($xwiki.sort($allwikinamelist) $wikinamelist)#end &lt;input 
type="submit" value="Search"/&gt;
+&lt;/div&gt;
+&lt;/form&gt;
+#end
+{/pre}
+## ---------------
+## Results processing
+## ---------------
+#if($query != "")
+       #set($lucene = $xwiki.getPlugin("lucene"))
+       #if($lucene)
+                ## ---------------
+                ## Lucene search
+                ## ---------------
+               #set($languages = "default,en,de")
+               #set($firstIndex = $request.getParameter("firstIndex"))
+               #if(!$firstIndex)
+                       #set($firstIndex = "1")
+               #end
+               #set($searchresults = 
$lucene.getSearchResults("${query}$!{reqspace}", $wikinames, $languages, 
$xwiki))
+                #set($results = 
$searchresults.getResults($firstIndex,$itemsPerPage))
+               #if($searchresults.getHitcount()&gt;0)
+                        ## -----------------
+                        ## Results numbers
+                        ## -----------------
+                        
#set($lastIndex=$searchresults.getEndIndex($firstIndex, $itemsPerPage))
+                        #if ($displayUI)
+                       #if($searchresults.getHitcount()==1)
+                               One result:
+                       #else
+                               Results $firstIndex - $lastIndex of 
${searchresults.getHitcount()}:
+                       #end
+                        #end
+                        ## ---------------
+                        ## Previous page
+                        ## ---------------
+                       #if($searchresults.hasPrevious($firstIndex) &amp;&amp; 
$displayUI)
+                               #set($linkfirstIndex = 
$searchresults.getPreviousIndex($firstIndex,$itemsPerPage))
+                               #set($link = 
"${doc.name}?text=${query}&amp;firstIndex=${linkfirstIndex}")
+                                {pre}
+                               &lt;a href="$link"&gt;&lt;img 
src="${doc.getAttachmentURL("previous.png")}" alt="previous" /&gt;previous 
page&lt;/a&gt;
+                               {/pre}
+                       #end            
+                        ## -------------
+                        ## Next page
+                        ## -------------
+                       #if($searchresults.hasNext($firstIndex,$itemsPerPage) 
&amp;&amp; $displayUI)
+                               #set($linkfirstIndex = 
$searchresults.getNextIndex($firstIndex,$itemsPerPage))
+                               #set($link = 
"${doc.name}?text=${query}&amp;firstIndex=${linkfirstIndex}")
+                                {pre}
+                               &lt;a href="$link"&gt;&lt;img 
src="${doc.getAttachmentURL("next.png")}" alt="next" /&gt;next page&lt;/a&gt;
+                                {/pre}
+                       #end
+                        ## -----------------
+                        ## Display results
+                        ## -----------------
+                        #if ($request.xpage &amp;&amp; $request.xpage == "rdf")
+                          #set ($baseurl = "http://${request.serverName}";)
+                          #set ($description = "RSS feed for search on 
'$text'")                          
+                          #set ($list = $xwiki.arrayList)
+                          #foreach ($item in $results)
+                            #if ($item.type != "attachment")
+                              #set ($ok = $list.add(0, 
"${item.web}.${item.name}"))
+                            #end
+                          #end
+                          #set ($ok = $response.setContentType("text/xml"))
+                          #includeInContext("XWiki.WebRssCode")
+                        #else
+                          #set ($list = $results)
+                          #set ($isScored = true)
+                          #includeInContext("XWiki.Results")
+                        #end
+                #end
+       #else
+               #error("Lucene plugin not found. Make sure it's defined in your 
xwiki.cfg file.")
+       #end
+#end
+{pre}
+#if ($displayUI)
+## ---------------
+## Rebuild processing
+## ---------------
+#set($lucene = $xwiki.getPlugin("lucene"))
+#if($lucene)
+#set($doRebuild = $request.getParameter("rebuild"))
+#if($doRebuild)
+  #if($doRebuild=="yes")
+               #set($documentCount = $lucene.rebuildIndex())
+               #if(${documentCount}&gt;=0)
+                       {/pre}#info("Started index rebuild with $documentCount 
documents.\\
+                               Will take some time depending on the number of 
pages/attachments."){pre}
+               #else
+                       #error("Index rebuild failed.")
+               #end
+  #end
+#else
+## ---------------
+## Queue &amp; rebuild option
+## ---------------
+        #set ($queuesize = $xwiki.lucene.getQueueSize())
+        #if ($queuesize &gt; 2)
+            #set($info1 = "Lucene is currently building its index, 
${queuesize} documents in queue.")
+        #else
+            #set($info1 = "Lucene index is up to date.")
+        #end
+        #if($xwiki.hasAdminRights())
+            #set($info2 = " [Rebuild the Lucene 
index&gt;${doc.web}.${doc.name}?rebuild=yes].")
+        #else
+            #set($info2 = "")
+       #end
+        {/pre}#info("${info1}${info2}"){pre}
+#end
+#end
+## ---------------
+## Comment
+## ---------------
+{/pre}
+#warning("This is the new experimental Lucene search engine. \\
+        You can still use the XWiki [default search 
engine&gt;WebSearch?text=$query].")
+{pre}
+#end
 {/pre}</content>
 </xwikidoc>

_______________________________________________
notifications mailing list
notifications@xwiki.org
http://lists.xwiki.org/mailman/listinfo/notifications

Reply via email to