Forum content types for Silva CMS
What is it?
SilvaForum is an extension for Silva that provides a classic discussion forum environment. Site visitors can create topics (subjects or questions) and add comments to existing topics.
Using Silva Forum
After enabling the Silva Forum extension you can create a Silva Forum content in the Silva Management Interface: this will be the forum. The public interface of the Forum allows site visitors to add topics (subjects) to the forum, and comments (messages) to the topics. The topics and comments are accessible from the management interface by site editors for editing and moderation purposes.
Consulting the forum
By default, the forum, topic and comments are viewable by unauthenticated people like any other Silva content. If you wish to restrict this, you can use the default access restriction feature of Silva to do so (located in the management interface, in the access tab). For more information about this, please consult the Silva user documentation.
Posting new topics and comments
By default you need to be authenticated to be able to post a topic or a comment.
For unauthenticated visitors, a link on a forum or a topic will let them authenticate in order to be able to post.
A site manager can, per forum or per topic, authorize unauthenticated people to post. This is configured in the management interface in the settings screen of the properties tab). If this option is activated, unauthenticated site visitors will be able to post new topic or comments after filling in a Captcha.
The silva.pas.openid package can be installed in order to provide authentication via OpenID. This authentication will be sufficient to let site visitors post on forums and topics.
Another option, anonymous posting, can be activated by site managers on the same screen as the unauthenticated posting. It will permit authenticated visitors to hide their names on the topic or comment they posted.
A site manager can, per forum or per topic, activate a subscription feature. If activated, this will allow visitors, after subscription, to receive notifications by email when a new comment is posted on a topic.
If you email is known (i.e. you filled it in in Silva, or it was provided by your OpenID provider), you will have the possibility to directly subscribe yourself to a topic when you post it, or to a topic when you post a comment in it.
Of course people can cancel their subscription when they wish to.
This feature is provided by silva.app.subscriptions. To have it, you need to enable subscriptions for the forum, just like you would do for other Silva content. For more information about the subscription feature, you can consult the Silva user documentation.
Many thanks to Bas Leeflang and the Bijvoet Center http://www.bijvoet-center.nl/ for the assignment to build the forum.
Thank you Mark James of http://www.famfamfam.com/ for the great icons, which we used in the forum views! And the theme of JForum for emoticons icons.
For Silva 2.2/2.3 the forum was refactored and vastly improved, with the generous help of the Schweizerischer Erdbebendienst (SED, or Swiss Seismological Service) and ETH Zurich: http://www.seismo.ethz.ch/
You can find the code of this extension in Git: https://github.com/silvacms/Products.SilvaForum
- Add a first message at the same time than a topic.
- Compatibility fixes regarding the last author API changes.
- Use ISilvaNameChooser in order to pick an identifier for a comment or a topic. This ensure that the identifier follows the site settings.
- Improve tests.
- Update API to Silva 3.0c1.
- Update to include CSS/JS with fanstatic.
- Update to the lastest version of zeam.form.batch.
SilvaForum 2.4.2 (2010-02-07)
- Improve CSS.
- Fix content priority for SilvaForum and SilvaTopic.
SilvaForum 2.4.1 (2010-12-20)
- Some CSS changes in the public UI.
- Forum content is indexed.
SilvaForum 2.4 (2010-10-27)
- Forum and topic templates have been redesigned.
- An option have been added to let anonymous people to post. If activated, they have a Captcha to validate their post.
- Subscription now works on topic. You can subscribe to a topic and will receive a mail each time a new comment is posted. This feature is based on default Silva subscriptions.
- Code have been refactored to be completely Groked.
- Tests have been improved.
SilvaForum 2.3 (2010/07/16)
- Compatibility fixes for Zope 2.12, Python 2.6 and Silva 2.3.
SilvaForum 1.0 (2010/01/29)
- Refactor some tests.
- Don’t use anymore get_metadata_element as this is a script of the old layout system.
Ported from 0.4:
- Refactor all the views, and use silva.core.views now.
- Add functional tests.
SilvaForum 0.3.2 (2009-02-09)
- Fix link in view_comment
SilvaForum 0.3.1 (2008-11-18)
- Fix documentation format to ReST.
- Re-wrote dtformat.py
- Added i18n support
- Removed SilvaTestCase.py.
- Added condition on forum table to not display when empty.
- Adjusted presentation code so the forum works with Silva Layout.
- Refactored pagination code so defines are grouped.
- Changed regex in format_link to not include parenthesis, or periods.
- Removed the priority (was -4) in light of the doc/priority_settings.txt recommendations.
- The Include Comments code source includes icons for comments, these could be added to the forum view.
- Changes to make near-complete customization of the Include Comments code source possible with css.
- Move all the include checking in view_topic.pt into one define.
- Add id and topic_url to the comment object for constructing more sensible permalinks, going to the topic with an anchor that’s the comment id.
- Add permalink to “[user] posted”; this links to the comment in the topic with an anchor, not to the comment object (which is not very useful because there’s no context).
- Add a parameter field to the SMI to add a topic, which by default is the document title.
- Checked in Marc Petitmermet’s code source to the SilvaForum-CodeSource branch and added it to Silva Forum code. Added a view_include.pt, and include.css to handle the styles of a Silva Document with comments. Added to the FiveViewable class a switch to check for an ‘include’ parameter that gets the code source template.
- Fixed text formatting to include links, moved replace_links call from the view_topic.pt to the format_text method in view.py.
- Put replace_links method in the view.py for searching and replacing links in text area of comments. Also made tests for the method.
- Put back subject field check in view.py. Somehow it got cut in recent changes.
- Changed the topic and comment addable priority to 4.
- Changed the configure.zcml priority setting for Silva Forum to 4, to send it to the bottom of the addables list in the SMI select pulldown.
- Fixed the _generate_id method which would return ‘already used id’ with id’s ending in ‘___2’.
- Removed old security code triggered with the Ajax version of the forum.
- Fixed the pagination links to not can the add messages. Tweaked the the pagination code to be more efficient.
- Put in jump for the preview form on a comment. Now when previewing the comment will jump to the last page, the same page as where it is added.
- forum.css changes, added emoticon preview support to view_forum.pt, view_comment.pt subject fields.
- Ah, after reverting to static forms, unicode issue persists. Found the error on the preview hidden inputs, and re-wrote those to support unicode.
- Reverted to static form in view_topic.pt view.
- Reverted to static form in view_forum.pt view.
- Reversed order of topics newest to oldest. Added jump functionality. Found IE issue with Ajax forms.
- Pagination right/leftdouble.gif are not included in Silva 2.0, so put them into the www/ of SilvaForum.
- Took out all required switches from edit comment view.
- Unicode problem with textareas in view_topic.pt. Did ugly hack doing the unicoding in the tal expression.
- Took out required subject in the edit comment view by switching the required tag in form.form to 0.
- Made datetimes smaller.
- Removed emoticons directory again, only this time from svn.
- Finished Adding alt tag text to emoticons.
- Changed Silva Forum Thread to Silva Forum Topic and refactored code to use topic rather than thread.
- Put jump to last and first page pagination in the view_forum.pt
- Changed the topic functionality to only take topics. Opted to take out messages because they can’t be edited in the SMI without some considerable changes.
- Configured the view_forum.pt and view_topic.pt to get emoticons added in the subject field.
- Added support for emoticons.
- Added nice date/time formatting.
- Several layout fixes.
- Small code fixes and cleanups (see individual checkin messages for API changes).
- Added preview button functionality.
- Added Several layout styles.
- Added pagination, and sorted list orders newest to oldest.
- Workout out a solution to authoring issue in the SMI.