You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by je...@apache.org on 2015/08/14 13:37:10 UTC

[3/4] allura git commit: [#7923] ticket:827 Make wiki "Subscribe/Unsubscribe" from admin/tools menu (when left bar is disabled)

[#7923] ticket:827 Make wiki "Subscribe/Unsubscribe" from admin/tools menu (when left bar is disabled)


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

Branch: refs/heads/ib/7923
Commit: 895cdfc4dea9874892a0cc7a02962e3e8450c713
Parents: 740434a
Author: Igor Bondarenko <je...@gmail.com>
Authored: Fri Aug 14 12:20:33 2015 +0300
Committer: Igor Bondarenko <je...@gmail.com>
Committed: Fri Aug 14 12:20:33 2015 +0300

----------------------------------------------------------------------
 Allura/allura/app.py                                 |  7 +++++++
 Allura/allura/ext/admin/templates/project_tools.html |  3 +++
 ForgeWiki/forgewiki/wiki_main.py                     | 12 +++++++++++-
 3 files changed, 21 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/allura/blob/895cdfc4/Allura/allura/app.py
----------------------------------------------------------------------
diff --git a/Allura/allura/app.py b/Allura/allura/app.py
index d8b9d75..a9c0760 100644
--- a/Allura/allura/app.py
+++ b/Allura/allura/app.py
@@ -623,6 +623,13 @@ class Application(object):
             links.append(SitemapEntry('Webhooks', admin_url + 'webhooks'))
         return links
 
+    def admin_menu_widgets(self):
+        """Return widgets needed by the admin menu of this Application.
+
+        :return: a list of widgets
+        """
+        return []
+
     def handle_message(self, topic, message):
         """Handle incoming email msgs addressed to this tool.
         Default is a no-op.

http://git-wip-us.apache.org/repos/asf/allura/blob/895cdfc4/Allura/allura/ext/admin/templates/project_tools.html
----------------------------------------------------------------------
diff --git a/Allura/allura/ext/admin/templates/project_tools.html b/Allura/allura/ext/admin/templates/project_tools.html
index 38705ed..5c7e163 100644
--- a/Allura/allura/ext/admin/templates/project_tools.html
+++ b/Allura/allura/ext/admin/templates/project_tools.html
@@ -109,6 +109,9 @@
                 {% if not app.uninstallable %}
                   <input type="hidden" class="mount_point" value="{{mount['ac'].options.mount_point}}"/>
                 {% endif %}
+                {% for w in app.admin_menu_widgets() %}
+                  {{ w.display() }}
+                {% endfor %}
             </div>
         {% endif %}
         {% if 'sub' in mount and not mount['sub'].deleted %}

http://git-wip-us.apache.org/repos/asf/allura/blob/895cdfc4/ForgeWiki/forgewiki/wiki_main.py
----------------------------------------------------------------------
diff --git a/ForgeWiki/forgewiki/wiki_main.py b/ForgeWiki/forgewiki/wiki_main.py
index 5593d86..92bf4f9 100644
--- a/ForgeWiki/forgewiki/wiki_main.py
+++ b/ForgeWiki/forgewiki/wiki_main.py
@@ -244,7 +244,7 @@ The wiki uses [Markdown](%s) syntax.
                     'Moderate', discussion.url() + 'moderate', ui_icon=g.icons['pencil'],
                     small=pending_mod_count))
         if not c.user.is_anonymous():
-            subscribed = M.Mailbox.subscribed()
+            subscribed = M.Mailbox.subscribed(app_config_id=self.config._id)
             subscribe_action = 'unsubscribe' if subscribed else 'subscribe'
             subscribe_title = '{}{}'.format(
                 subscribe_action.capitalize(),
@@ -275,6 +275,16 @@ The wiki uses [Markdown](%s) syntax.
         return links
 
     @h.exceptionless([], log)
+    def admin_menu_widgets(self):
+        widgets = super(ForgeWikiApp, self).admin_menu_widgets()
+        if not c.user.is_anonymous():
+            form = WikiSubscribeForm(
+                action=self.url + 'subscribe',
+                subscribed=M.Mailbox.subscribed(app_config_id=self.config._id))
+            widgets.append(form)
+        return widgets
+
+    @h.exceptionless([], log)
     def sidebar_menu(self):
         return self.create_common_wiki_menu(has_access(self, 'create'), c.app.url, 'add_wiki_page')