| 1 | <?cs set:html.stylesheet = 'css/search.css' ?> |
|---|
| 2 | <?cs include "header.cs"?> |
|---|
| 3 | <script type="text/javascript"> |
|---|
| 4 | addEvent(window, 'load', function() { document.getElementById('q').focus()}); |
|---|
| 5 | </script> |
|---|
| 6 | |
|---|
| 7 | <div id="ctxtnav" class="nav"> |
|---|
| 8 | <h2>Search Navigation</h2> |
|---|
| 9 | <ul><?cs |
|---|
| 10 | if:len(links.prev) ?> |
|---|
| 11 | <li class="first<?cs if:!len(links.next) ?> last<?cs /if ?>"> |
|---|
| 12 | <a href="<?cs var:links.prev.0.href ?>" title="<?cs |
|---|
| 13 | var:links.prev.0.title ?>">Previous Page</a> |
|---|
| 14 | </li><?cs |
|---|
| 15 | /if ?><?cs |
|---|
| 16 | if:len(links.next) ?> |
|---|
| 17 | <li class="<?cs if:len(links.prev) ?>first <?cs /if ?>last"> |
|---|
| 18 | <a href="<?cs var:links.next.0.href ?>" title="<?cs |
|---|
| 19 | var:links.next.0.title ?>">Next Page</a> |
|---|
| 20 | </li><?cs |
|---|
| 21 | /if ?> |
|---|
| 22 | </ul> |
|---|
| 23 | </div> |
|---|
| 24 | |
|---|
| 25 | <div id="content" class="search"> |
|---|
| 26 | |
|---|
| 27 | <h1><label for="q">Search</label></h1> |
|---|
| 28 | <form action="<?cs var:trac.href.search ?>" method="get"> |
|---|
| 29 | <p> |
|---|
| 30 | <input type="text" id="q" name="q" size="40" value="<?cs var:search.q ?>" /> |
|---|
| 31 | <input type="submit" value="Search" /> |
|---|
| 32 | </p> |
|---|
| 33 | <p><?cs |
|---|
| 34 | if:trac.acl.WIKI_VIEW ?> |
|---|
| 35 | <input type="checkbox" id="wiki" name="wiki" <?cs |
|---|
| 36 | if:search.wiki ?>checked="checked"<?cs /if ?> /> |
|---|
| 37 | <label for="wiki">Wiki</label><?cs |
|---|
| 38 | /if ?><?cs |
|---|
| 39 | if:trac.acl.TICKET_VIEW ?> |
|---|
| 40 | <input type="checkbox" id="ticket" name="ticket" <?cs |
|---|
| 41 | if:search.ticket ?>checked="checked"<?cs /if ?> /> |
|---|
| 42 | <label for="ticket">Tickets</label><?cs |
|---|
| 43 | /if ?><?cs |
|---|
| 44 | if:trac.acl.CHANGESET_VIEW ?> |
|---|
| 45 | <input type="checkbox" id="changeset" name="changeset" <?cs |
|---|
| 46 | if:search.changeset ?>checked="checked"<?cs /if ?> /> |
|---|
| 47 | <label for="changeset">Changesets</label><?cs |
|---|
| 48 | /if ?> |
|---|
| 49 | </p> |
|---|
| 50 | </form> |
|---|
| 51 | |
|---|
| 52 | <?cs def result(title, keywords, body, link) ?> |
|---|
| 53 | <dt><a href="<?cs var:link ?>"><?cs var:title ?></a></dt> |
|---|
| 54 | <dd><?cs var:body ?></dd> |
|---|
| 55 | <dd> |
|---|
| 56 | <span class="author">By <?cs var:item.author ?></span> — |
|---|
| 57 | <span class="date"><?cs var:item.datetime ?></span><?cs |
|---|
| 58 | if:item.keywords ?> &mdash |
|---|
| 59 | <span class="keywords">Keywords: <em><?cs var:item.keywords ?></em></span><?cs |
|---|
| 60 | /if ?> |
|---|
| 61 | </dd> |
|---|
| 62 | <?cs /def ?> |
|---|
| 63 | |
|---|
| 64 | <?cs if:len(search.result) ?> |
|---|
| 65 | <hr /> |
|---|
| 66 | <h2>Search results <?cs |
|---|
| 67 | if:len(links.prev) || len(links.next) ?>(<?cs |
|---|
| 68 | var:search.result_page * search.results_per_page + 1 ?> - <?cs |
|---|
| 69 | var:search.result_page * search.results_per_page + len(search.result) ?>)<?cs |
|---|
| 70 | /if ?></h2> |
|---|
| 71 | <div id="searchable"> |
|---|
| 72 | <dl id="results"><?cs |
|---|
| 73 | each item=search.result ?><?cs |
|---|
| 74 | if:item.type == 1 ?><?cs |
|---|
| 75 | call:result('[' + item.data + ']: ' + item.shortmsg, item.keywords, |
|---|
| 76 | item.message, item.changeset_href) ?><?cs |
|---|
| 77 | elif:item.type == 2 ?><?cs |
|---|
| 78 | call:result('#' + item.data + ': ' + item.title, item.keywords, |
|---|
| 79 | item.message, item.ticket_href) ?><?cs |
|---|
| 80 | elif:item.type == 3 ?><?cs |
|---|
| 81 | call:result(item.data + ': ' + item.shortmsg, item.keywords, |
|---|
| 82 | item.message, item.wiki_href) ?><?cs |
|---|
| 83 | /if ?><?cs |
|---|
| 84 | /each ?> |
|---|
| 85 | </dl> |
|---|
| 86 | <hr /> |
|---|
| 87 | </div> |
|---|
| 88 | <?cs if:len(links.prev) || len(links.next) ?> |
|---|
| 89 | <div id="paging" class="nav"> |
|---|
| 90 | <ul><?cs |
|---|
| 91 | if:len(links.prev) ?> |
|---|
| 92 | <li class="first<?cs if:!len(links.next) ?> last<?cs /if ?>"> |
|---|
| 93 | <a href="<?cs var:links.prev.0.href ?>" title="<?cs |
|---|
| 94 | var:links.prev.0.title ?>">Previous Page</a> |
|---|
| 95 | </li><?cs |
|---|
| 96 | /if ?><?cs |
|---|
| 97 | if:len(links.next) ?> |
|---|
| 98 | <li class="<?cs if:len(links.prev) ?>first <?cs /if ?>last"> |
|---|
| 99 | <a href="<?cs var:links.next.0.href ?>" title="<?cs |
|---|
| 100 | var:links.next.0.title ?>">Next Page</a> |
|---|
| 101 | </li><?cs |
|---|
| 102 | /if ?> |
|---|
| 103 | </ul> |
|---|
| 104 | </div> |
|---|
| 105 | <?cs /if ?> |
|---|
| 106 | |
|---|
| 107 | <?cs elif $search.q ?> |
|---|
| 108 | <div id="notfound">No matches found.</div> |
|---|
| 109 | <?cs /if ?> |
|---|
| 110 | |
|---|
| 111 | <div id="help"> |
|---|
| 112 | <strong>Note:</strong> See <a href="<?cs var:$trac.href.wiki ?>/TracSearch">TracSearch</a> for help on searching. |
|---|
| 113 | </div> |
|---|
| 114 | |
|---|
| 115 | </div> |
|---|
| 116 | <?cs include "footer.cs"?> |
|---|