Index: trunk/wiki/src/main/resources/Main/LuceneSearch.xml
===================================================================
--- trunk/wiki/src/main/resources/Main/LuceneSearch.xml (revision 19326)
+++ trunk/wiki/src/main/resources/Main/LuceneSearch.xml (working copy)
@@ -12,9 +12,9 @@
XWiki.Admin
1186588178000
-1233322267000
-1233322267000
-1.1
+1241464862000
+1241464862000
+2.1
@@ -52,12 +52,13 @@
Main.LuceneSearch
0
XWiki.TagClass
-3bc74fac-9e22-46d3-9faf-63db47678fa3
+69cbe7c3-e6a1-4022-84d5-214367b31e99
-## ===================
+$xwiki.ssfx.use("components/search/search.css", true)
+## ===================
## Lucene search
## ===================
## Inputs : $request.text
@@ -101,11 +102,11 @@
## Space macros
## ---------------
#macro(spaceoption $space $selectspace $spacesText)
- <option value="$spacesText.get($space)" #if($selectspace == $spacesText.get($space))selected="selected"#end>$space</option>
+ <option value="${spacesText.get($space)}" #if($selectspace == $spacesText.get($space))selected="selected"#end>$space</option>
#end
#macro(spaceselect $selectspace $spaces $spacesText)
- <select name="space">
- #spaceoption("All" $selectspace $spacesText)
+ <select name="space" title="$msg.get('xe.search.bar.spaces.title')">
+ <option value="" #if($space == "")selected="selected"#end>$msg.get("xe.search.bar.spaces.all")</option>
#foreach($space in $spaces)
#spaceoption($space $selectspace $spacesText)
#end
@@ -191,10 +192,13 @@
## ---------------
## Query form
## ---------------
-<form action="$doc.name" method="get">
-<div class="centered">
-$msg.get("xe.search.query") <input type="text" name="text" value="$xwiki.getFormEncoded($query)" /> $msg.get("xe.search.in.space") #spaceselect($space $spaces $spacesText)#if($xwiki.isVirtualMode()) $msg.get("xe.search.in.wikis") #wikinamesselect($util.sort($allwikinamelist) $wikinamelist)#end <input type="submit" value="$msg.get("xe.search.go")"/>
-</div>
+<form action="$doc.name" method="get" id="searchBar">
+ <div class="centered">
+ <input type="text" name="text" class="searchQuery" value="$msg.get("xe.search.bar.query")" title="$msg.get('xe.search.bar.query.title')"/>
+ #spaceselect($space $spaces $spacesText)
+ <input type="submit" class="searchButton" value="$msg.get('xe.search.bar.go')" title="$msg.get('xe.search.bar.go.title')"/>
+ <div class="searchHelp">$msg.get("xe.search.bar.help")</div>
+ </div>
</form>
#end
{/pre}
Index: trunk/wiki/src/main/resources/Main/WebSearch.xml
===================================================================
--- trunk/wiki/src/main/resources/Main/WebSearch.xml (revision 19326)
+++ trunk/wiki/src/main/resources/Main/WebSearch.xml (working copy)
@@ -12,14 +12,17 @@
XWiki.Admin
1107744420000
-1184488764000
-1184488764000
-1.1
+1241465126000
+1241465126000
+3.1
+false
+xwiki/1.0
+false
-1 $msg.get("search")
+$xwiki.ssfx.use("components/search/search.css", true)
+1 $msg.get("search")
#if(!$request.space)
#set($space = 'All')
@@ -67,14 +72,15 @@
#foreach($space in $spaces)
#set($ok = $spacesText.put($space,$space))
#end
-
+## ---------------
+## Space macros
+## ---------------
#macro(spaceoption $space $selectspace $spacesText)
- <option value="$spacesText.get($space)" #if($selectspace == $spacesText.get($space))selected="selected"#end>$space</option>
+ <option value="${spacesText.get($space)}" #if($selectspace == $spacesText.get($space))selected="selected"#end>$space</option>
#end
-
#macro(spaceselect $selectspace $spaces $spacesText)
- <select name="space">
- #spaceoption("All" $selectspace $spacesText)
+ <select name="space" title="$msg.get('xe.search.bar.spaces.title')">
+ <option value="" #if($space == "")selected="selected"#end>$msg.get("xe.search.bar.spaces.all")</option>
#foreach($space in $spaces)
#spaceoption($space $selectspace $spacesText)
#end
@@ -94,12 +100,13 @@
<a href="$url"><img src="$xwiki.getSkinFile("icons/black-rss.png")" style="border:0px" alt="$msg.get('xe.rss.icon')" /></a>
</div>
-<form action="">
+<form action="" id="searchBar">
{pre}
<div class="centered">
- $msg.get('xe.search.query')
- <input type="text" name="text" value="$xwiki.getFormEncoded($!text)" size="20"/>
- $msg.get('xe.search.in.space') #spaceselect($space $spaces $spacesText) <input type="submit" value="$msg.get('xe.search.go')"/>
+ <input type="text" name="text" class="searchQuery" value="$msg.get("xe.search.bar.query")" title="$msg.get('xe.search.bar.query.title')"/>
+ #spaceselect($space $spaces $spacesText)
+ <input type="submit" class="searchButton" value="$msg.get('xe.search.bar.go')" title="$msg.get('xe.search.bar.go.title')"/>
+ <div class="searchHelp">$msg.get("xe.search.bar.help")</div>
</div>
{/pre}
</form>
Index: trunk/wiki/src/main/resources/XWiki/Results.xml
===================================================================
--- trunk/wiki/src/main/resources/XWiki/Results.xml (revision 19326)
+++ trunk/wiki/src/main/resources/XWiki/Results.xml (working copy)
@@ -12,9 +12,9 @@
XWiki.Admin
1158300067000
-1233322346000
-1233322346000
-1.1
+1241511550000
+1241511550000
+2.1
@@ -52,36 +52,13 @@
XWiki.Results
0
XWiki.TagClass
-f8d95972-3f7b-42a0-a5cc-f242f51b6325
+517e4f1b-2503-4381-9cf1-ce504c55c8d2
#set($showdata = 0)
-#set($formatDate = "yyyy MMMM dd, HH:mm")
-
-## WARNING: Do not add any empty line inside the table element. This will potentially break
-## the Javascript we're using for filtering/sorting columns. It might work in FF but will break
-## in other browsers like IE. This is because empty lines add <p class="paragraph"></p> elements
-## when rendered.
-$xwiki.ssfx.use("js/xwiki/table/table.css")
-$xwiki.jsfx.use("js/xwiki/table/tablefilterNsort.js", true)
-<table id="searchTableUnique" class="grid sortable filterable doOddEven">
- <tr class="sortHeader">
- <th>$msg.get("xe.results.page")</th>
- <th style="width:150px" class="selectFilter">$msg.get("xe.results.space")</th>
- #if($xwiki.isVirtualMode())
- <th style="width:150px" class="selectFilter">$msg.get("xe.results.wiki")</th>
- #end
- <th style="width:150px">$msg.get("xe.results.date")</th>
- <th style="width:150px">$msg.get("xe.results.author")</th>
- #if($isScored)
- <th style="width:150px" class="noFilter">$msg.get("xe.results.score")</th>
- #end
- #if($xwiki.hasAdminRights())
- <th style="width:210px" class="unsortable noFilter">$msg.get("xe.results.actions")</th>
- #end
- </tr>
+<div id="searchResults">
#foreach ($item in $list)
#set($troubi = "non")
#if($item.class == "class com.xpn.xwiki.plugin.lucene.SearchResult")
@@ -90,6 +67,8 @@
#set($itemfullname = "${context.database}:${item}")
#end
#if ($xwiki.hasAccessLevel("view", $context.user, $itemfullname))
+ <div class="resultItem">
+ <div class="resultContainer">
#if ($item.class == "class java.lang.String")
#set($bentrydoc = $xwiki.getDocument($item))
#elseif ($item.class == "class com.xpn.xwiki.plugin.lucene.SearchResult")
@@ -104,14 +83,9 @@
#end
#set($createur = $xwiki.getUserName($bentrydoc.author))
#set($ptitle = $bentrydoc.getDisplayTitle())
- <tr><td style="text-align:left">
## LUCENE : entries are typed
#if ($bentrydoc.type)
#set ($ptitle = $xwiki.getDocument($itemfullname).getDisplayTitle())
- #if ($bentrydoc.type == "attachment")
- <a href="${bentrydoc.url}" target="_blank"><img src="${xwiki.getSkinFile("icons/silk/attach.gif")}" ALT="download" /> ${bentrydoc.filename}</a>\\
- Attachment of
- #end
#end
#if($comments && $comments.size()>0)
#set($i = 0)
@@ -125,59 +99,100 @@
#set($date1 = $!xwiki.formatDate($!bentrydoc.date,"yyyy MM dd HH:mm:ss") )
#end
#if($date1.equals($date2) )
- [$ptitle>$itemfullname] <em>$msg.get("xe.results.newcomment")</em>
#set($troubi ="oui")
#set($desc = $cobj.getXWikiObject().get("comment").value)
- #else
- [$bentrydoc.name>$itemfullname] #if ($ptitle != $bentrydoc.name) <em>- $ptitle</em>#end
#end
#else
#set($comment = "")
- [$bentrydoc.name>$itemfullname] #if ($ptitle != $bentrydoc.name) <em>- $ptitle</em>#end
#end
- </td>
- <td style="text-align:left">
- [$bentrydoc.space>${bentrydoc.wiki}:${bentrydoc.space}.WebHome]
- </td>
- #if($xwiki.isVirtualMode())
- <td style="text-align:left">
- [$bentrydoc.wiki>${bentrydoc.wiki}:Main.WebHome]
- </td>
- #end
- <td style="text-align:left">
- $xwiki.formatDate($bentrydoc.date,"yyyy MMM dd") at $xwiki.formatDate($bentrydoc.date,"HH:mm")</td><td style="text-align:center">
#if($troubi =="oui")
#set($createur = $xwiki.getUserName($cobj.author) )
#end
- #if ($createur == "XWikiGuest")
- $msg.get("xe.results.guest")
- #else
- $createur
- #end
- </td>
+ ##*********************************************************##
+ ## Type: page by default ##
+ ##*********************************************************##
+ <div class="itemType">
+ <div
+ #if($item.type == "attachment") class="typeAttachment"
+ #else class="typePage"
+ #end
+ title="$msg.get('xe.search.item.type.page.title')"></div>
+ </div>
+ ##*********************************************************##
+ ## Description ##
+ ##*********************************************************##
+ <div class="itemDescription">
+ ##*********************************************************##
+ ## Title ##
+ ##*********************************************************##
+ <div class="itemTitle">
+ [$ptitle>$itemfullname]
+ </div>
+ ##*********************************************************##
+ ## Location ##
+ ##*********************************************************##
+ <div class="itemLocation">
+ $msg.get("xe.search.item.location")
+ [$bentrydoc.wiki>${bentrydoc.wiki}:Main.WebHome] >
+ [$bentrydoc.space>${bentrydoc.wiki}:${bentrydoc.space}.WebHome] >
+ [$bentrydoc.name>$itemfullname]
+ </div>
+ ##*********************************************************##
+ ## Modifiers - content update date ##
+ ##*********************************************************##
+ <div class="itemModifiers">
+ $msg.get("xe.search.item.modified")
+ <a href="" class="itemAuthor" title="$msg.get('xe.search.item.type.author.title')">
+ #if ($createur == "XWikiGuest")
+ $msg.get("xe.results.guest")
+ #else
+ $createur
+ #end
+ </a>
+ $msg.get("xe.search.item.date.on")
+ <span class="itemDate">$xwiki.formatDate($bentrydoc.date,"dd MMM yyyy")</span>
+ </div>
+ <div class="itemOthers">
+ ##*********************************************************##
+ ## Rating ##
+ ##*********************************************************##
+ #if($xwiki.ratings && $item.type != "attachment")
+ #set($avarageRating = $xwiki.ratings.getAverageRating($xwiki.getDocument($itemfullname)).averageVote)
+ #set($percentageRating = $avarageRating * 20)
+ <span class="itemRating" title="$msg.get('xe.search.item.rating.title')">
+ <span class="currentRating" style="width:$percentageRating%;"></span>
+ </span>
+ #end
+ </div>
+ #if($xwiki.hasAdminRights())
+ #set($copyURL = $xwiki.getURL("XWiki.CopyDocument", "view", "sourcedoc=${util.encodeURI($itemfullname)}"))
+ #set($deleteURL = $xwiki.getDocument($itemfullname).getURL("delete"))
+ #set($renameURL = $xwiki.getDocument($itemfullname).getURL("view", "xpage=rename&step=1"))
+ #set($rightsURL = $xwiki.getDocument($itemfullname).getURL("edit", "editor=rights"))
+ <div class="itemActions">
+ <a href="$copyURL">$msg.get("xe.results.copy")</a> -
+ <a href="$deleteURL">$msg.get("xe.results.delete")</a> -
+ <a href='$renameURL'>$msg.get("xe.results.rename")</a> -
+ <a href='$rightsURL'>$msg.get("xe.results.rights")</a>
+ </div>
+ #end
+ </div> ## end <div class="itemDescription">
#if ($isScored)
- <td style="text-align:left">
- #set($resval=$bentrydoc.score*100)
- #set($starurl=$xwiki.getSkinFile("icons/silk/star.gif"))
- #set($star = "<img src='$starurl' alt='$resval' />")
- <span class="hidden">$bentrydoc.score</span>
- #if($resval>10) $star #end
- #if($resval>20) $star #end
- #if($resval>40) $star #end
- #if($resval>60) $star #end
- #if($resval>90) $star #end
- #set ($perc = $resval.toString())
- ${perc.substring(0, $perc.indexOf("."))}%
- </td>
- #set ($bentrydoc = $xwiki.getDocument($itemfullname))
- #end
- #if($xwiki.hasAdminRights())
- <td>
- <a href="$xwiki.getURL("XWiki.CopyDocument", "view", "sourcedoc=${util.encodeURI($itemfullname)}")">$msg.get("xe.results.copy")</a> - <a href="$bentrydoc.getURL("delete")">$msg.get("xe.results.delete")</a> - <a href="$bentrydoc.getURL("view", "xpage=rename&step=1")">$msg.get("xe.results.rename")</a> - <a href="$bentrydoc.getURL("edit", "editor=rights")">$msg.get("xe.results.rights")</a>
- </td>
- #end
- </tr>
+ #set($resval=$bentrydoc.score*100)
+ ##*********************************************************##
+ ## Relevance ##
+ ##*********************************************************##
+ <div class="itemRelevance">
+ <span class="relevance" title="$msg.get('xe.search.item.relevance.title')">
+ <span class="currentRelevance" style="width:$resval%;"></span>
+ </span>
+ <span class="relevanceText">$resval.intValue()%</span>
+ </div>
+ #end
+ <span class="resultSeparator"></span>
+ </div> ## end <div class="resultContainer">
+ </div> ## end <div class="resultItem">
#end
#end
-</table>
+</div> ## end <div id="searchResults">
\ No newline at end of file