This is YACS (yet another comment system) which tries to
MetaCommentPlugin allows to easily add commenting to any topic. Discussiosn can either be displayed in linear or threaded mode. Different comment styles and layouts can easily be created and switched from one to the other. Comments can be edited and deleted inline easily. Commenting can be enabled independently from the normal change access rights to a topic while they are still stored as meta data to a topic. That way a keyword search matching on different comments of the same discussion will generate a hit on the discussion itself in a natural way.
META:COMMENT
field of a topic with properties
ref
for threaded comments
metacomment
skin overlay to your SKIN
variable in SitePreferences.
* Set SKIN = metacomment, pattern
* Set DISPLAYCOMMENTS = on
There are a couple of formats how comments are displayed on the topic:
* Set COMMENTFORMAT = threadedOther values:
A discussion can be either open or closed:
* Set COMMENTSTATE = openBy setting this to
closed
comments gathered so far are still listed while the form to add more comments is hidden
These preferences can of course be set per topic or added to the WebPreferences in case you want to enable commenting
on all of the web.
Below each comment there is a set of infos that can be switched on and off as desired.
This setting …
* Set COMMENTVOTING = on/offenables voting per comment using the Foswiki:Extensions/LikePlugin (defaults to
on
when LikePlugin is installed).
Users will be able to vote up or down each comment to indicate their level of agreement during a discussion.
Finally, there is a so called "permlink" that lets you share a link to a specific comment in an email or so. However this feature is not desired. Use this to switch it of then:
* Set COMMENTPERMLINK = on/off
COMMENT
access control list.
Given the current topic is write restricted only allowing the original author to make changes, the following setting will permit commenting:
* Set ALLOWTOPICCOMMENT = <comma separated list of users and/or groups>
You may also want implement a minimal set of protection using
* Set ALLOWYWEBCOMMENT = <comma separated list of users and/or groups>
and / or
* Set DENYWEBCOMMENT = <comma separated list of users and/or groups>
in the WebPreferences.
COMMENT
access are set. So everybody is allowed to comment.
{MetaCommentPlugin}{AnonymousCommenting}
configuration setting by default.
This will protect your site from guests spamming your pages. When this flag is disabled, users will at least
have to log in to be able to comment. Normal access control rules then still apply.
Contrary to the normal Foswiki access control mechanism it does not suffice to set the ALLOW rules for a guest accordingly.
It is required to at least enable the {MetaCommentPlugin}{AnonymousCommenting}
flag in your site configuration.
Once enabled, you are still able to block anonymous commenting using the normal access control rules per web and/or topic.
Moderating comments allows you a bit more control of which comments are approved to be okay to be displayed to the public. This is mostly used on public environments to hide comments until they are approved by a list of moderators. Only the original author and moderators will see unapproved comments. For everybody else, unapproved comments are hidden until they are approved.
To enable moderation set the COMMENTMODERATION preference setting (defaults to off):
* Set COMMENTMODERATION = on
The list of people allowed to moderate a comment is configured by using Foswiki's permission system using the MODERATE role. So to configure moderators per topic use:
* Set ALLOWTOPICMODERATE = <comma separated list of users and/or groups> * Set DENYTOPICMODERATE = <comma separated list of users and/or groups>
Or use a per web configuration in the WebPreferences using
* Set ALLOWWEBMODERATE = <comma separated list of users and/or groups> * Set DENYWEBMODERATE = <comma separated list of users and/or groups>See AccessControl for more information on setting up access control lists.
Renders a discussion on a given topic
%METACOMMENTS{ topic="..." ... }%
Parameters:
<h3>$title</h3>$text
format
parameter
<div class='cmtSubComments'>
</div
format
parameter
One comment
"$count comments
format
strings:
even
or odd
while formatting all comments in the list; useful to implement zebra striped comments
name
attribute of the comment)
Example:
Use this to render a list of all unapproved comments in a web:
%METACOMMENTS{web="Sandbox" search="1" header="| *Comment* | *Topic* | *Comment* | *Author* | *Date* | $n" format="| [[$permlink][Comment$id]] | [[$web.$topic]] |$title $summary | <nobr>[[%USERSWEB%.$author]]</nobr> | <nobr>$date</nobr> |$n" footer="<span class='foswikiAlert'>$count</span>" sort="date" reverse="on" state="unapproved" }%
metacommmentrss
template. Alternatively the webcomments
section below renders a link to it with an RSS icon.
Call it using:
%INCLUDE{"%SYSTEMWEB%.MetaCommentPlugin" section="webcomments" THEWEB="<webName>" WHERE="<query>" LIMIT="<limit>" }%The parameters
THEWEB
, WHERE
and LIMIT
are optional where
THEWEB
specifies the web to search for comments, defaults to the current web
WHERE
specifies a filter on topics while searching THEWEB
, defaults to 1
(means: all topics)
LIMIT
limits the number of recent comments to be listed, defaults to 10
%STARTSECTION{"webcomments"}%<a href='%SCRIPTURLPATH{"view"}%/%THEWEB{default="%BASEWEB%"}%/%BASETOPIC%?template=metacommentsrss;contenttype=text/xml;search=%WHERE{default="1"}%;limit=%LIMIT{default="10"}%' class='cmtRssFeed foswikiGrayText foswikiSmallish foswikiHideOnPrint' title='%MAKETEXT{"RSS comments feed for the [_1] web" args="%THEWEB{default="%BASEWEB%"}%"}%'>%JQICON{"feed"}% RSS</a>%ENDSECTION{"webcomments"}%
cd /path/to/foswiki perl tools/extension_installer <NameOfExtension> installIf you have any problems, or if the extension isn't available in
configure
, then you can still install manually from the command-line. See https://foswiki.org/Support/ManuallyInstallingExtensions for more help.
Name | Version | Description |
---|---|---|
Foswiki::Contrib::JsonRpcContrib | >=1.1 | Required. |
Foswiki::Plugins::RenderPlugin | >=3.1 | Required. |
Foswiki::Plugins::ImagePlugin | >=3.0 | Required. |
Foswiki::Plugins::DBCachePlugin | >=9.0 | Optional. |
Foswiki::Plugins::SolrPlugin | >=4.0 | Optional. |
Foswiki::Plugins::LikePlugin | >=1.0 | Optional. |
Foswiki::Plugins::ZonePlugin | >=3.1 | Required. required for Foswiki < 1.1 |
Foswiki::Plugins::TopicTitlePlugin | >1.00 | Required for Foswiki < 2.2 |
04 May 2022: | 7.00 - added interface to render comments from a base translation; improve usability of threaded commenting; better editor integration; use new api of JQDataTablesPlugin to register custom columns to dbcache and solr connectors; new solr fields field_Comments_d and field_CommentDate_dt |
17 Jun 2021: | 6.20 - added ismoderated to only show approval controls if the topic actually is moderated |
06 May 2021: | 6.10 - added new preference setting COMMENTNOTIFY (default on) to suppress change notifications when a topic is commented |
31 Mar 2021: | 6.00 - rewrite of javascript code; blocking browser navigation when there are unsaved comments |
26 Nov 2019: | 5.10 - added rev parameter to display comments of previous revisions of a topic; added "delete all", "approve all", "mark all" features to moderate comments in bunches; improved SolrPlugin integration |
28 May 2018: | 5.03 - depend on new TopicTitlePlugin |
05 Mar 2018: | 5.01 - cleaned up templates |
16 Jan 2017: | 5.00 - implemented a registerCommentHandler() api to let other plugins interact with comment changes |
11 Sep 2015: | 4.10 - added display settings to switch on of voting and permlink |
09 Sep 2015: | 4.00 - added isnew/isupdated flags; optional integration with Foswiki:Extensions/LikePlugin; using new index handler architectur in Foswiki:Extensions/DBCachePlugin now |
31 Aug 2015: | 3.00 - simplified comment approval; fixed ACL check (Foswiki:Main/StephanOsthold); fixed substr problem together with Foswiki-2.0 |
27 Feb 2015: | 2.90 - removing collection field form solr index handler |
16 Dec 2014: | 2.80 - fixed extracting substrings from unicode strings |
29 Aug 2014: | 2.70 - improved finding user photo |
18 Mar 2014: | 2.60 - fixed dependency on ImagePlugin; some css and js fixes |
15 Aug 2013: | 2.50 - protect comments from being edited by others; fixed error reporting using pnotify now; reject commenting when discussion is already closed; added example how to display all unapproved comments in a web; added docu how to render an rss feed of all comments in a web |
13 Aug 2013: | 2.40 - disable anonymous commenting by default |
02 Jun 2013: | 2.32 - fixed reply-modal not closing after submit |
23 May 2013: | 2.31 - fixed commenting using latest jquery/jquery-ui combo |
14 Mar 2013: | 2.30 - fixed access rights on unapproved comments being index by solr |
29 Nov 2012: | 2.20 - force a new revision on every comment; fixed comments by modification date; improved templates used to rendering user photos |
02 Aug 2012: | 2.11 - fixed german translation (Foswiki:Main/JanKrueger) |
31 Jul 2012: | 2.10 - unapproved anonymous comments are only visible to the same remote address for one hour; fixed jquery-ui dialogs not popping up properly; comments by moderators don't need any further approval; fixed controls not showing up sometimes |
10 Jul 2012: | 2.02 - properly reset modal dialogs when reusing them |
07 Jul 2012: | 2.01 - use less progress messages |
2.00 - replaced all simplemodals with jquery-ui dialogs | |
08 May 2012: | 1.12 - fixed integration with PatternSkin |
28 Mar 2012: | 1.11 - added ability to search for all comments in a web; improved comment rendering features; added fixes for PatternSkin |
10 Jan 2012: | 1.10 - added german translation; added missing dependency on RenderPlugin; backwards compatibility to older foswiki engines; adjusted index handler to latest changes in SolrPlugin; improved print css; fixed js error together with newer jquery versions |
10 May 2011: | 1.00 - partial rewrite to use JsonRpcContrib; renamed preference COMMENTAPPROVAL to COMMENTMODERATION |
20 Apr 2011: | fixed error in regular expression |
15 Apr 2011: | using CPAN:JSON to properly encode json-rpc data; fixed recoding of received data to the site's own charset; improved the way photos are gathered |
Author | Foswiki:Main/MichaelDaum |
Version | 7.00 |
Release | 04 May 2022 |
Description | An easy to use comment system |
Repository | https://github.com/foswiki/MetaCommentPlugin |
Copyright | 2009-2022, Michael Daum |
License | GPL (Gnu General Public License) |
Home | https://foswiki.org/Extensions/MetaCommentPlugin |
Support | Foswiki:Support/MetaCommentPlugin |