Hi,
I forgot to mention the way I was considering adapting Antony's patch
for https://issues.apache.org/bloodhound/ticket/20 on this list. I
suspect that the biggest concern is likely to be whether we should be
using a specific wiki page (particularly one that is subject to change
in https://issues.apache.org/bloodhound/ticket/85) to link to as Antony
pointed out.
I would be happy to raise a new ticket to consider how to improve that
if we are otherwise prepared to commit these changes.
Cheers,
Gary
On 05/29/2012 03:30 PM, Apache Bloodhound wrote:
#20: Show 'Source' tab to Admins even when no source is defined
--------------------------+----------------------
Reporter: jdreimann | Owner: antony
Type: enhancement | Status: assigned
Priority: major | Milestone:
Component: dashboard | Version:
Resolution: | Keywords:
--------------------------+----------------------
Comment (by gjm):
Nice work, and thanks for the warning. I think we can assume that we will
be able to live with the missing active class for now though we could look
at more complex solutions in the long run.
If adapting Antony's patch to go into the theme code, I would consider
working it like this:
{{{
#!diff
Index: trunk/bloodhound_theme/bhtheme/theme.py
===================================================================
--- trunk/bloodhound_theme/bhtheme/theme.py (revision 1343282)
+++ trunk/bloodhound_theme/bhtheme/theme.py (working copy)
@@ -181,6 +186,19 @@
"""
add_stylesheet(req, 'dashboard/roadmap.css')
+ # INavigationContributor methods
+
+ def get_active_navigation_item(self, req):
+ return
+
+ def get_navigation_items(self, req):
+ if 'BROWSER_VIEW' in req.perm and 'VERSIONCONTROL_ADMIN' in
req.perm:
+ bm = self.env[BrowserModule]
+ if bm and not list(bm.get_navigation_items(req)):
+ yield ('mainnav', 'browser',
+ tag.a(_('Browse Source'),
+ href=req.href.wiki('TracRepositoryAdmin')))
+
class QuickCreateTicketDialog(Component):
implements(IRequestFilter, IRequestHandler)
}}}
(partial diff - also need to add imports for {{{INavigationContributor}}},
{{{BrowserModule}}} and {{{tag}}} and add {{{INavigationContributor}}} to
the component's {{{implements}}} statement)