|Version 71 (modified by 7 years ago) (diff),|
Discussion Forum Plugin
Notice: This plugin is unmaintained and available for adoption.
The DiscussionPlugin adds discussion forums to Trac. An arbitrary number of forums can be added, organised to forum groups. Users can create topics in forums and reply to them which together creates discussion threads. Threaded or flat view to topics and its replies is supported. Each forum has a list of moderators who can delete topics, replies, etc. Plugin is administrated directly or via WebAdminPlugin with appropriate rights. Appending new forums and topics either as new replies shows up in timeline. Searching capability in topics and replies is supported too.
To get an idea how the forums look, see BlackTrac discussion.
Download and Source
As many other plugins in this site even this plugin names its branches according to Trac versions. Here is a simple table explaining this convention for DiscussionPlugin:
|Plugin Branch||Trac Branch||Plugin Version|
Main difference between 0.5 and 0.6 version is that 0.6 uses Genshi templates and 0.5 ClearSilver ones.
For general information about Trac plugins installation see TracPlugins. Plugin is configurable from
trac.ini file, see TracIni for more on this topic. The following variables controls DiscussionPlugin's behavior:
[discussion] title = Discussion default_display = tree forum_sort = id forum_sort_direction = asc topic_sort = id topic_sort_direction = asc
title changes title of main navigation bar button,
default_display defines default display mode for message list. Possible values are
flat is synonym for
forum_sort is column by which will be sorted forum lists. Possible values are:
lastreply. Topic lists may be sorted with
topic_sort option. It has values
topic_sort_direction are directions of that sorting. They may be
desc. Previous example shows default values for these options.
If you run Trac in environment which needs to enable plugins explicitly put in trac.ini these lines:
[components] # Enable this component for 0.11 branch and 0.10 branch from revision r3518. tracdiscussion.api.DiscussionApi = enabled tracdiscussion.admin.DiscussionWebAdmin = enabled tracdiscussion.core.DiscussionCore = enabled tracdiscussion.init.DiscussionInit = enabled tracdiscussion.search.DiscussionSearch = enabled tracdiscussion.timeline.DiscussionTimeline = enabled tracdiscussion.wiki.DiscussionWiki = enabled tracdiscussion.notification.DiscussionNotifyEmail = enabled
The next step is to upgrade your environment:
# trac-admin <path_to_environment> upgrade
For now sqlite version 3 or PostgreSQL is required as SQL backend for running this plugin.
Discussion plugin defines four permissions. With DISCUSSION_VIEW permission you can view all topics and you can post replies to them with DISCUSSION_APPEND permission. DISCUSSION_MODERATE permission gives you rights to delete replies or topics where are you defined as moderator. DISCUSSION_ADMIN permission gives you administrator rights to create, modify or delete forum groups, forums and topics. You can add these permissions by typing following commands from commandline or you can use WebAdminPlugin to do it for you.
# trac-admin <path_to_environment> permission add <user> DISCUSSION_VIEW # trac-admin <path_to_environment> permission add <user> DISCUSSION_APPEND # trac-admin <path_to_environment> permission add <user> DISCUSSION_MODERATE # trac-admin <path_to_environment> permission add <user> DISCUSSION_ADMIN
There are few wiki macros available:
Displays link to forum with id <id> and text <text>. Second argument is optional.
Displays link to topic with id <id> and text <text>. Second argument is optional.
Displays link to reply with id <id> and text <text>. Second argument is optional.
Displays content of topic with subject <topic_subject>. If no subject given displays content of topic with same subject as name of current wiki page. Currently there is a limitation of post length using this macro because of using GET method of HTML form.
Discuss this on the [forum:5 Trac Development forum]. Useful threads are [topic:23 this one] and [topic:96 this one].
Foreign files can also be attached to topics and then linked in replies. For this purpose you can use general Trac attachment link syntax with disscussion domain and topic resource:
[attachment:discussion:topic/<topic_id>:<filename>] [raw-attachment:discussion:topic/<topic_id>:<filename>] [[Image(discussion:topic/<topic_id>:<filename>)]]
There are also two custom macros doing the same and they simplifies the syntax a bit:
- Better permission system (maybe using 0.11 permissions policies).
- email2trac support.
- Branch 0.9 of plugin is considered as deprecated and not developed anymore.
- Please test if all links and forms redirects page to proper location after request processing in 0.11 branch. If they don't or any error occurs, create a ticket describing error or behavior you expect.
If you have any troubles with plugin's installation or configuration and your problem is generally Trac related, you can ask on #trac channel at Freenode IRC network to get the quickiest answer. If the problem is purely DiscussionPlugin related, you can create a topic at BlackTrac discussion - DiscussionPlugin forum
- 16503 by rjollos on 2017-04-15 08:52:25
1.2dev: Fix parsing list from request argument
- 16492 by rjollos on 2017-04-15 08:15:08
1.2dev: Refactor and use Trac 1.2 API
- 16465 by rjollos on 2017-04-04 07:27:59
- 16397 by rjollos on 2017-03-25 09:37:00
Remove obsolete "0.9" code
- 16368 by rjollos on 2017-03-23 00:49:19
_get_tablesnot working with MySQL
- 16014 by rjollos on 2016-11-27 19:26:19
0.10.0: Bump version from 0.10dev
- 16013 by rjollos on 2016-11-27 19:24:56
1.2dev: Fix incorrect string formatting and comparisons, missing imports
Merge of r16012 from 1.0 branch.