806795ac87fbf1f814011617edb81fbcdbcc1591
1 from pkg_resources
import resource_filename
3 from pylons
import session
, tmpl_context
as c
5 from spline
.lib
.plugin
import PluginBase
6 from spline
.lib
.plugin
import PluginBase
, PluginLink
, Priority
8 import splinext
.forum
.controllers
.forum
10 def add_routes_hook(map, *args
, **kwargs
):
11 """Hook to inject some of our behavior into the routes configuration."""
12 require_GET
= dict(conditions
=dict(method
=['GET']))
13 require_POST
= dict(conditions
=dict(method
=['POST']))
15 map.connect('/forums', controller
='forum', action
='forums')
16 map.connect(r
'/forums/{forum_id:\d+}', controller
='forum', action
='threads')
17 map.connect(r
'/forums/{forum_id:\d+}/threads/{thread_id:\d+}', controller
='forum', action
='posts')
19 map.connect(r
'/forums/{forum_id:\d+}/write', controller
='forum', action
='write_thread', **require_GET
)
20 map.connect(r
'/forums/{forum_id:\d+}/write', controller
='forum', action
='write_thread_commit', **require_POST
)
21 map.connect(r
'/forums/{forum_id:\d+}/threads/{thread_id:\d+}/write', controller
='forum', action
='write', **require_GET
)
22 map.connect(r
'/forums/{forum_id:\d+}/threads/{thread_id:\d+}/write', controller
='forum', action
='write_commit', **require_POST
)
25 class ForumPlugin(PluginBase
):
26 def controllers(self
):
28 forum
= splinext
.forum
.controllers
.forum
.ForumController
,
33 ('routes_mapping', Priority
.NORMAL
, add_routes_hook
),
36 # frontpage plugin may or may not be installed
38 from splinext
.forum
.frontpage_sources
import ForumSource
40 ('frontpage_updates_forum', Priority
.NORMAL
, ForumSource
))