Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Comment and user-generated content system: functional requirements (4.3)

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/specifications/4.3/comment_system/functional_requirements.txt

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

Something wrong on this page? Report an error

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