Update to new frontpage API, and keep frontpage optional.
[zzz-spline-forum.git] / splinext / forum / __init__.py
index 6914409..07db391 100644 (file)
@@ -15,6 +15,7 @@ def add_routes_hook(map, *args, **kwargs):
     map.connect('/forums/{forum_id}', controller='forum', action='threads')
     map.connect('/forums/{forum_id}/threads/{thread_id}', controller='forum', action='posts')
 
+    map.connect('/forums/{forum_id}/write', controller='forum', action='write_thread')
     map.connect('/forums/{forum_id}/threads/{thread_id}/write', controller='forum', action='write')
 
 
@@ -25,6 +26,16 @@ class ForumPlugin(PluginBase):
         )
 
     def hooks(self):
-        return [
+        hooks = [
             ('routes_mapping',    Priority.NORMAL,      add_routes_hook),
         ]
+
+        # frontpage plugin may or may not be installed
+        try:
+            from splinext.forum.frontpage_sources import ForumSource
+            hooks.append(
+                ('frontpage_updates_forum', Priority.NORMAL, ForumSource))
+        except ImportError:
+            pass
+
+        return hooks