|
a/ForgeDiscussion/forgediscussion/controllers/root.py |
|
b/ForgeDiscussion/forgediscussion/controllers/root.py |
|
... |
|
... |
14 |
from allura.app import Application, ConfigOption, SitemapEntry, DefaultAdminController
|
14 |
from allura.app import Application, ConfigOption, SitemapEntry, DefaultAdminController
|
15 |
from allura.lib.security import require_access, has_access, require_authenticated
|
15 |
from allura.lib.security import require_access, has_access, require_authenticated
|
16 |
from allura.model import ProjectRole, Feed
|
16 |
from allura.model import ProjectRole, Feed
|
17 |
from allura.lib.search import search
|
17 |
from allura.lib.search import search
|
18 |
from allura.lib import helpers as h
|
18 |
from allura.lib import helpers as h
|
|
|
19 |
from allura.lib.utils import AntiSpam
|
19 |
from allura.lib.decorators import require_post
|
20 |
from allura.lib.decorators import require_post
|
20 |
from allura.controllers import BaseController
|
21 |
from allura.controllers import BaseController
|
21 |
|
22 |
|
22 |
from .forum import ForumController
|
23 |
from .forum import ForumController
|
23 |
from forgediscussion import import_support
|
24 |
from forgediscussion import import_support
|
|
... |
|
... |
89 |
|
90 |
|
90 |
@h.vardec
|
91 |
@h.vardec
|
91 |
@expose()
|
92 |
@expose()
|
92 |
@require_post()
|
93 |
@require_post()
|
93 |
@validate(W.new_topic, error_handler=create_topic)
|
94 |
@validate(W.new_topic, error_handler=create_topic)
|
|
|
95 |
@AntiSpam.validate('Spambot protection engaged')
|
94 |
def save_new_topic(self, subject=None, text=None, forum=None, **kw):
|
96 |
def save_new_topic(self, subject=None, text=None, forum=None, **kw):
|
95 |
discussion = model.Forum.query.get(
|
97 |
discussion = model.Forum.query.get(
|
96 |
app_config_id=c.app.config._id,
|
98 |
app_config_id=c.app.config._id,
|
97 |
shortname=forum)
|
99 |
shortname=forum)
|
98 |
if discussion.deleted and not has_access(c.app, 'configure')():
|
100 |
if discussion.deleted and not has_access(c.app, 'configure')():
|