You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by br...@apache.org on 2015/08/19 00:18:19 UTC

[2/5] allura git commit: [#7923] ticket:827 Show app's menu instead of the admin on admin pages

[#7923] ticket:827 Show app's menu instead of the admin on admin pages


Project: http://git-wip-us.apache.org/repos/asf/allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/allura/commit/82a08dd4
Tree: http://git-wip-us.apache.org/repos/asf/allura/tree/82a08dd4
Diff: http://git-wip-us.apache.org/repos/asf/allura/diff/82a08dd4

Branch: refs/heads/master
Commit: 82a08dd4c7d971c7238fbf0ef2612d64d44d00ae
Parents: 6aa2289
Author: Igor Bondarenko <je...@gmail.com>
Authored: Fri Aug 14 10:44:55 2015 +0300
Committer: Dave Brondsema <db...@slashdotmedia.com>
Committed: Tue Aug 18 22:17:59 2015 +0000

----------------------------------------------------------------------
 Allura/allura/app.py                      |  9 +++++++--
 Allura/allura/webhooks.py                 |  3 ++-
 ForgeSVN/forgesvn/svn_main.py             |  4 ++--
 ForgeTracker/forgetracker/tracker_main.py | 11 ++++++++---
 4 files changed, 19 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/allura/blob/82a08dd4/Allura/allura/app.py
----------------------------------------------------------------------
diff --git a/Allura/allura/app.py b/Allura/allura/app.py
index a0542c4..2d748c5 100644
--- a/Allura/allura/app.py
+++ b/Allura/allura/app.py
@@ -745,9 +745,14 @@ class Application(object):
                 'label': self.config.options.mount_label}
 
 
+class AdminControllerMixin(object):
+    """Provides common functionality admin controllers need"""
+    def _before(self, *remainder, **params):
+        # Display app's sidebar on admin page, instead of :class:`AdminApp`'s
+        c.app = self.app
 
 
-class DefaultAdminController(BaseController):
+class DefaultAdminController(BaseController, AdminControllerMixin):
 
     """Provides basic admin functionality for an :class:`Application`.
 
@@ -961,7 +966,7 @@ class DefaultAdminController(BaseController):
         redirect(request.referer)
 
 
-class WebhooksLookup(BaseController):
+class WebhooksLookup(BaseController, AdminControllerMixin):
 
     def __init__(self, app):
         super(WebhooksLookup, self).__init__()

http://git-wip-us.apache.org/repos/asf/allura/blob/82a08dd4/Allura/allura/webhooks.py
----------------------------------------------------------------------
diff --git a/Allura/allura/webhooks.py b/Allura/allura/webhooks.py
index 1447802..d902e71 100644
--- a/Allura/allura/webhooks.py
+++ b/Allura/allura/webhooks.py
@@ -35,6 +35,7 @@ from webob import exc
 from pymongo.errors import DuplicateKeyError
 from paste.deploy.converters import asint, aslist
 
+from allura.app import AdminControllerMixin
 from allura.controllers import BaseController
 from allura.lib import helpers as h
 from allura.lib.decorators import require_post, task
@@ -97,7 +98,7 @@ class WebhookControllerMeta(type):
         return type.__call__(cls, sender, app, *args, **kw)
 
 
-class WebhookController(BaseController):
+class WebhookController(BaseController, AdminControllerMixin):
     __metaclass__ = WebhookControllerMeta
     create_form = WebhookCreateForm
     edit_form = WebhookEditForm

http://git-wip-us.apache.org/repos/asf/allura/blob/82a08dd4/ForgeSVN/forgesvn/svn_main.py
----------------------------------------------------------------------
diff --git a/ForgeSVN/forgesvn/svn_main.py b/ForgeSVN/forgesvn/svn_main.py
index 5dda325..e87d106 100644
--- a/ForgeSVN/forgesvn/svn_main.py
+++ b/ForgeSVN/forgesvn/svn_main.py
@@ -33,7 +33,7 @@ from allura.controllers import BaseController
 from allura.controllers.repository import RepoRootController
 from allura.lib.decorators import require_post
 from allura.lib.repository import RepositoryApp, RepoAdminController
-from allura.app import SitemapEntry, ConfigOption
+from allura.app import SitemapEntry, ConfigOption, AdminControllerMixin
 from allura.lib import helpers as h
 from allura.lib import validators as v
 from allura import model as M
@@ -144,7 +144,7 @@ class SVNRepoAdminController(RepoAdminController):
             flash("Invalid external checkout URL: %s" % c.form_errors['external_checkout_url'], "error")
 
 
-class SVNImportController(BaseController):
+class SVNImportController(BaseController, AdminControllerMixin):
     import_form = widgets.ImportForm()
 
     def __init__(self, app):

http://git-wip-us.apache.org/repos/asf/allura/blob/82a08dd4/ForgeTracker/forgetracker/tracker_main.py
----------------------------------------------------------------------
diff --git a/ForgeTracker/forgetracker/tracker_main.py b/ForgeTracker/forgetracker/tracker_main.py
index 47a5d8b..ad63b74 100644
--- a/ForgeTracker/forgetracker/tracker_main.py
+++ b/ForgeTracker/forgetracker/tracker_main.py
@@ -46,7 +46,13 @@ from ming.utils import LazyProperty
 from allura import model as M
 from allura.lib import helpers as h
 from allura.lib import utils
-from allura.app import Application, SitemapEntry, DefaultAdminController, ConfigOption
+from allura.app import (
+    Application,
+    SitemapEntry,
+    DefaultAdminController,
+    AdminControllerMixin,
+    ConfigOption,
+)
 from allura.lib.search import search_artifact, SearchError
 from allura.lib.solr import escape_solr_arg
 from allura.lib.decorators import require_post
@@ -1104,7 +1110,7 @@ class RootController(BaseController, FeedController):
         }
 
 
-class BinController(BaseController):
+class BinController(BaseController, AdminControllerMixin):
 
     def __init__(self, summary=None, app=None):
         if summary is not None:
@@ -1640,7 +1646,6 @@ class TrackerAdminController(DefaultAdminController):
     @expose('jinja:forgetracker:templates/tracker/admin_fields.html')
     def fields(self, **kw):
         c.form = W.field_admin
-        c.app = self.app
         columns = dict((column, get_label(column))
                        for column in self.app.globals['show_in_search'].keys())
         return dict(app=self.app, globals=self.app.globals, columns=columns)