| 18 | | <h2> This is the body of my theme </h2> |
| | 18 | <div id="center-content" class="box"> |
| | 19 | <!--! Header --> |
| | 20 | <div id="header"> |
| | 21 | |
| | 22 | <!--! Logotyp --> |
| | 23 | <div id="logo" py:choose=""> |
| | 24 | <a py:when="chrome.logo.src" href="${chrome.logo.link}"><img |
| | 25 | src="${chrome.logo.src}" alt="${chrome.logo.alt}" /></a> |
| | 26 | <h1 py:otherwise=""><a href="${chrome.logo.link}">${project.name}</a></h1> |
| | 27 | </div> |
| | 28 | <hr class="noscreen" /> |
| | 29 | |
| | 30 | <!--! Quick links --> |
| | 31 | <div class="noscreen noprint"> |
| | 32 | <p><em>Quick links: <a href="#main">content</a>, <a href="#mainnav">navigation</a>, <a href="#theme-search">search</a>.</em></p> |
| | 33 | <hr /> |
| | 34 | </div> |
| | 35 | |
| | 36 | <!--! Search --> |
| | 37 | <div id="theme-search" class="noprint" py:if="'SEARCH_VIEW' in perm"> |
| | 38 | <form action="${href.search()}" method="get"> |
| | 39 | <fieldset><legend>Search</legend> |
| | 40 | <label><span class="noscreen">Find:</span> |
| | 41 | <span id="search-input-out"><input type="text" name="q" id="search-input" size="30" accesskey="f" /></span></label> |
| | 42 | <input type="hidden" name="wiki" value="on" /> |
| | 43 | <input type="hidden" name="changeset" value="on" /> |
| | 44 | <input type="hidden" name="ticket" value="on" /> |
| | 45 | <input type="image" src="${href.chrome('theme', 'img', 'search_submit.gif')}" id="search-submit" value="OK" /> |
| | 46 | </fieldset> |
| | 47 | </form> |
| | 48 | </div> <!--! /search --> |
| | 49 | |
| | 50 | </div> <!--! /header --> |
| | 51 | |
| | 52 | <!--!<div id="banner"> |
| | 53 | <div id="header" py:choose=""> |
| | 54 | <a py:when="chrome.logo.src" id="logo" href="${chrome.logo.link}"><img |
| | 55 | src="${chrome.logo.src}" alt="${chrome.logo.alt}" /></a> |
| | 56 | <h1 py:otherwise=""><a href="${chrome.logo.link}">${project.name}</a></h1> |
| | 57 | </div> |
| | 58 | <form py:if="'SEARCH_VIEW' in perm" id="search" |
| | 59 | action="${href.search()}" method="get"><div> |
| | 60 | <label for="proj-search">Search:</label> |
| | 61 | <input type="text" id="proj-search" name="q" size="18" accesskey="f" value="" /> |
| | 62 | <input type="submit" value="Search" /> |
| | 63 | <input type="hidden" name="wiki" value="on" /> |
| | 64 | <input type="hidden" name="changeset" value="on" /> |
| | 65 | <input type="hidden" name="ticket" value="on" /> |
| | 66 | </div></form> |
| | 67 | ${navigation('metanav')} |
| | 68 | </div>--> |
| | 69 | |
| | 70 | <!--! Main menu (tabs) --> |
| | 71 | <div id="theme-mainnav" class="noprint" py:with="category = 'mainnav'"> |
| | 72 | |
| | 73 | <h3 class="noscreen">Navigation</h3> |
| | 74 | <ul class="box" py:if="chrome.nav[category]"> |
| | 75 | <li py:for="idx, item in enumerate(chrome.nav[category])" |
| | 76 | class="${classes(first_last(idx, chrome.nav[category]), active=item.active)}"> |
| | 77 | <py:choose test=""> |
| | 78 | <py:when test="item.label.__class__.__name__ == 'Element' and item.label.tag.localname == 'a'"> |
| | 79 | ${item.label(tag.span('', class_='tab-l'), tag.span('', class_='tab-r'))} |
| | 80 | </py:when> |
| | 81 | <py:otherwise> |
| | 82 | ${item.label} |
| | 83 | </py:otherwise> |
| | 84 | </py:choose> |
| | 85 | </li> |
| | 86 | </ul> |
| | 87 | |
| | 88 | <hr class="noscreen" /> |
| | 89 | </div> <!--! /tabs --> |
| | 90 | |
| | 91 | <!-- Page (2 columns) --> |
| | 92 | <div id="page" class="box"> |
| | 93 | <div id="page-in" class="box"> |
| | 94 | <div id="strip" class="box noprint"> |
| | 95 | |
| | 96 | <div id="ctxtnav" class="nav"> |
| | 97 | <ul> |
| | 98 | <li py:for="i, elm in enumerate(chrome.ctxtnav)" class="${i == 0 and 'first ' or None}${i+1 == len(chrome.ctxtnav) and 'last' or None}">$elm</li> |
| | 99 | </ul> |
| | 100 | </div> |
| | 101 | ${navigation('metanav')} |
| | 102 | |
| | 103 | <div id="warning" py:if="req and req.warnings" class="system-message"> |
| | 104 | <py:choose test="len(req.warnings)"> |
| | 105 | <py:when test="1"> |
| | 106 | <strong>Warning:</strong> ${req.warnings[0]} |
| | 107 | </py:when> |
| | 108 | <py:otherwise> |
| | 109 | <strong>Warnings:</strong> |
| | 110 | <ul><li py:for="w in req.warnings">$w</li></ul> |
| | 111 | </py:otherwise> |
| | 112 | </py:choose> |
| | 113 | </div> |
| | 114 | |
| | 115 | </div> <!--! /strip --> |
| | 116 | |
| | 117 | <div id="main"> |
| | 118 | ${select('*[@id!="ctxtnav"]|text()')} |
| | 119 | </div> <!--! /main --> |
| | 120 | </div> <!--! /page-in --> |
| | 121 | </div> <!--! /page --> |
| | 122 | |
| | 123 | <div id="footer" xml:lang="en"> |
| | 124 | <div id="top" class="noprint"><p><span class="noscreen">Back on top</span> <a href="#header" title="Back on top ^">^<span></span></a></p></div> |
| | 125 | <hr class="noscreen" /> |
| | 126 | <a id="tracpowered" href="http://trac.edgewall.org/"><img |
| | 127 | src="${href.chrome('common/trac_logo_mini.png')}" height="30" |
| | 128 | width="107" alt="Trac Powered"/></a> |
| | 129 | <p class="left"> |
| | 130 | Powered by <a href="${href.about()}"><strong>Trac ${trac.version}</strong></a><br /> |
| | 131 | By <a href="http://www.edgewall.org/">Edgewall Software</a>. |
| | 132 | </p> |
| | 133 | <p id="createdby"> |
| | 134 | Original theme created<br />by <a href="http://www.nuvio.cz">Nuvio | Webdesign</a> <!-- DONÂŽT REMOVE, PLEASE! --> |
| | 135 | </p> |
| | 136 | <p class="right">${chrome.footer}</p> |
| | 137 | </div> |
| | 138 | </div> |