PKb7“×2EGG-INFO/dependency_links.txt PKb7–`’¿NNEGG-INFO/entry_points.txt[trac.plugins] navplus.admin = navplus.admin navplus.filter = navplus.filter PKb7?Wƒ@@EGG-INFO/PKG-INFOMetadata-Version: 1.0 Name: TracNavPlus Version: 1.0 Summary: Enhanced control over the navigation bars. Home-page: http://trac-hacks.org/wiki/NavPlusPlugin Author: Noah Kantrowitz Author-email: coderanger@yahoo.com License: BSD Description: UNKNOWN Keywords: trac plugin Platform: UNKNOWN Classifier: Framework :: Trac PKb7¢|‘õ EGG-INFO/requires.txtTracWebAdminPKb7¦ªƒ1EGG-INFO/SOURCES.txtsetup.py TracNavPlus.egg-info/PKG-INFO TracNavPlus.egg-info/SOURCES.txt TracNavPlus.egg-info/dependency_links.txt TracNavPlus.egg-info/entry_points.txt TracNavPlus.egg-info/requires.txt TracNavPlus.egg-info/top_level.txt navplus/__init__.py navplus/admin.py navplus/filter.py PKb7‰&nEGG-INFO/top_level.txtnavplus PKb7“×2EGG-INFO/zip-safe PKI7navplus/__init__.pyPKb7$u††navplus/__init__.pyc;ò º–ÔFc@sdS(N((((s6build/bdist.darwin-8.10.1-i386/egg/navplus/__init__.pys?sPK"7‰°¶ ¶ navplus/admin.py# Created by Noah Kantrowitz on 2007-08-28. # Copyright (c) 2007 Noah Kantrowitz. All rights reserved. from pkg_resources import resource_filename from trac.core import * from trac.web.chrome import ITemplateProvider, add_stylesheet from trac.perm import IPermissionRequestor from webadmin.web_ui import IAdminPageProvider class NavPlusAdminModule(Component): """An admin panel for the NavPlus plugin.""" implements(IAdminPageProvider, ITemplateProvider, IPermissionRequestor) # IAdminPageProvider methods def get_admin_pages(self, req): if req.perm.has_permission('NAV_ADMIN'): yield 'nav', 'Navigation', 'add', 'Add' def process_admin_request(self, req, cat, page, path_info): if page == 'add': return self._process_add_request(req, cat, page, path_info) # ITemplateProvider methods def get_htdocs_dirs(self): return [('navplus', resource_filename(__name__, 'htdocs'))] def get_templates_dirs(self): return [resource_filename(__name__, 'templates')] # IPermissionRequestor methods def get_permission_actions(self): yield 'NAV_ADMIN' # Internal methods def _process_add_request(self, req, cat, page, path_info): if req.method == 'POST': if 'add' in req.args: title = req.args['title'] url = req.args['url'] bar = req.args['bar'] if not title or not url or not bar: raise TracError('All fields are required') if bar not in ('mainnav', 'metanav'): raise TracError('Invalid bar') name = title.lower().replace(' ', '_') self.config.set('navplus', name, bar) self.config.set('navplus', name+'.title', title) self.config.set('navplus', name+'.url', url) self.config.save() elif 'remove' in req.args: for name in req.args.getlist('sel'): self.config.remove('navplus', name) self.config.remove('navplus', name+'.title') self.config.remove('navplus', name+'.url') self.config.save() req.redirect(req.href.admin(cat, page)) items = {'mainnav': [], 'metanav': []} for key, value in self.config.options('navplus'): if value == 'mainnav' or value == 'metanav': title = self.config.get('navplus', key+'.title') or '' url = self.config.get('navplus', key+'.url') or '' items[value].append({ 'name': key, 'title': title, 'url': url, }) req.hdf['navplus.items'] = items add_stylesheet(req, 'navplus/admin.css') return 'admin_navplus_add.cs', None PKb7`Â_ÑÑnavplus/admin.pyc;ò ±ÕFc@s[dklZdkTdklZlZdklZdkl Z de fd„ƒYZ dS((sresource_filename(s*(sITemplateProvidersadd_stylesheet(sIPermissionRequestor(sIAdminPageProvidersNavPlusAdminModulecBsTtZdZeeeeƒd„Zd„Zd„Z d„Z d„Z d„Z RS(s&An admin panel for the NavPlus plugin.ccs+|iidƒoddddfVndS(Ns NAV_ADMINsnavs NavigationsaddsAdd(sreqspermshas_permission(sselfsreq((s3build/bdist.darwin-8.10.1-i386/egg/navplus/admin.pysget_admin_pagesscCs+|djo|i||||ƒSndS(Nsadd(spagesselfs_process_add_requestsreqscats path_info(sselfsreqscatspages path_info((s3build/bdist.darwin-8.10.1-i386/egg/navplus/admin.pysprocess_admin_requests cCsdttdƒfgSdS(Nsnavplusshtdocs(sresource_filenames__name__(sself((s3build/bdist.darwin-8.10.1-i386/egg/navplus/admin.pysget_htdocs_dirsscCsttdƒgSdS(Ns templates(sresource_filenames__name__(sself((s3build/bdist.darwin-8.10.1-i386/egg/navplus/admin.pysget_templates_dirssccsdVdS(Ns NAV_ADMIN((sself((s3build/bdist.darwin-8.10.1-i386/egg/navplus/admin.pysget_permission_actions!sc Cs‘|idjo”d|ijoå|id}|id}|id}| p | p| otdƒ‚n|ddfjotd ƒ‚n|iƒid d ƒ}|i i d ||ƒ|i i d |d |ƒ|i i d |d|ƒ|i i ƒn€d|ijooxl|iidƒD]T}|i id |ƒ|i id |d ƒ|i id |dƒ|i i ƒq(Wn|i|ii||ƒƒnhdg<dg<} xª|i id ƒD]–\} } | djp | djop|i id | d ƒpd}|i id | dƒpd}| | ihd| <d|<d|<ƒqÏqÏW| |idNavigation Add
Add New Item

Add a new menu bar entry

  Title URL
PKb7“×2¤EGG-INFO/dependency_links.txtPKb7–`’¿NN¤<EGG-INFO/entry_points.txtPKb7?Wƒ@@¤ÁEGG-INFO/PKG-INFOPKb7¢|‘õ ¤0EGG-INFO/requires.txtPKb7¦ªƒ1¤oEGG-INFO/SOURCES.txtPKb7‰&n¤µEGG-INFO/top_level.txtPKb7“×2¤ñEGG-INFO/zip-safePKI7¤!navplus/__init__.pyPKb7$u††¤Rnavplus/__init__.pycPK"7‰°¶ ¶ ¤ navplus/admin.pyPKb7`Â_ÑѤînavplus/admin.pycPK}7`,ëE°°¤î navplus/filter.pyPKb7ğrC¡¡¤Í%navplus/filter.pycPKÎ7뤻$$¤.navplus/htdocs/admin.cssPKw7Í&Ç__&¤ø1navplus/templates/admin_navplus_add.csPKò›7