Exponential: Comment / UGC system, Requirements, 4.3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$Author$
$Revision$
$Date$
:Status: Draft
.. contents::
=======
Preface
=======
Exponential already has possibility to have comments and has since the
start. But for large customers using the content structure is not
optimal for scalability as overhead of node / object / attributes
are to high for user generated content (UGC) on high throughput sites.
Beside scalability there is high demand for better approval, moderation,
reporting and spam handling of UGC.
========
Features
========
In prioritized order for 4.3:
#1 New comment extension
------------------------
Should: Use custom table with fields for id, text, name, webpage, email,
time, user id, object id, object attribute id, language
Should: Support posting by logged in and not logged in users
Should: Automatically fill in name, email and webpage if logged in
Should: Store name / email / web address in cookie for later use if
user is not logged in and she checks a 'Remember me' checkbox
Should: Tie in to objects with datatype (so add attribute if you want comments)
Should: Support read and write permissions (use ezp roles to control access)
Should: Be able to enable/disable and hide/show comments
pr object attribute (on datatype content view)
Should: Use ezjscore and make comment interface ajaxed (opt in)
Should: Be extendable to be able to plugin captcha and spam detection system
Should: Support listing comments with template and ajax with paging
Should: Remove comments when object / attribute is removed
Could: Support automatically disabling commenting pr attribute after n days
Could: [later version] Support reply to comment, thus supporting threaded comments
Could: Have fields for ip and session key for moderation use (this could be provided by #2)
Could: Store comment count on object attribute so it has the count without querying table
Might: Need additional table columns for moderation unless moderation
system (#2) provides separate storage for content waiting for moderation
#2 New moderation system
------------------------
Should: Add a tab in admin for UGC moderation
Should: Allow automatically approval by setting or permissions
Should: Separate between approved, not approved(deleted/hidden) and un moderated (auto approved) content
Could: Provide dashboard box for moderation task / lists (see admin refresh requirement document)
Could: Support email notification to approver
Could: Be implemented abstracted so it can be re used later for other
types of UGC.
#2.1 User reporting features (user moderation)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Should: Support reporting UGC
Could: Support notifications to admin when content is reported
Could: Support automatic un publishing content when reported n times if
not previously moderated (auto approved)
#3 Notification support for comments
------------------------------------
Terms: subscriber = A logged in or anonymous user with mail
subscription = A relation between subscriber and the content she subscribes to
Should: Allow commenter to subscribe on notifications pr object in comment form
Should: Trigger notification system on comment publish
Should: Have a interface for changing subscription
Should: Send approval request of subscription to email if anonymous (once pr subscription)
Could: Support sending collection of subscription in one mail on timely intervals
#4 eZFind/search support for comments [for later]
-------------------------------------------------
Should: Provide text string of comments to normal search engine
Should: Support sub attribute filter or something similar in ezfind
Comment and user-generated content system: functional requirements (4.3)
Address: https://doc.exponential.earth/exphelp/viewer/specifications/4.3/comment_system/functional_requirements.txt
Documentation license
This page was inherited from the documentation of the original software. It is not covered by the GNU Free Documentation License; it is distributed under the GNU General Public License, version 2.
Copyright (C) 1999 - 2014 eZ Systems AS and contributors