Switch to side-by-side view

--- a/Allura/allura/model/project.py
+++ b/Allura/allura/model/project.py
@@ -265,6 +265,7 @@
         return AwardGrant.query.find(dict(granted_to_project_id=self._id)).all()
 
     def install_app(self, ep_name, mount_point, mount_label=None, ordinal=0, **override_options):
+        from allura import model as M
         if not h.re_path_portion.match(mount_point):
             raise exceptions.ToolError, 'Mount point "%s" is invalid' % mount_point
         if self.app_instance(mount_point) is not None:
@@ -296,6 +297,15 @@
         with h.push_config(c, project=self, app=app):
             session(cfg).flush()
             app.install(self)
+            admin_role = M.ProjectRole.query.find({'name':'Admin'}).first()
+            if admin_role:
+                for u in admin_role.users_with_role():
+                    M.Mailbox.subscribe(
+                        user_id=c.user._id,
+                        project_id=self.app_config.project_id,
+                        app_config_id=self.app_config._id,
+                        artifact=None, topic=None,
+                        type='direct', n=1, unit='day')
         return app
 
     def uninstall_app(self, mount_point):