Project Initiation: Tracy Adams and Carl Blesius
Project Team: Don Baccus, Dave Bauer, Ishir Bhan, Andrew P, Rob, Alfred Essa
Key: (1) high priority, (2) medium priority, (3) will do it if we have extra time
Development to be done on HEAD
Our forums have been good for years, let's make them great!
- Expand Forums to make it serve as mailing list software
- Give forums a facelift with a focus on improved usability
- Make OpenACS forums best in class
Package Design Notes
A given forum package instance supports multiple individual forums, each of which supports forum threads and then messages. This is a bit a-typical of OpenACS packages, which each forum would be it’s own package instance. That bears to question – should the forum package instance be one and only one forum? This might save work as we could use package-level services like parameters for each forum. After some discussion, we decided to keep the design as is, that is, each forum instance will have multiple forums as there will be extensive forum-level functionality.
Bugs to fix
The project will do these bugs first and then check them into the 5.2 branch.
- See Site Wide Image Upload Widget
- Adding attachments is currently complicated and requires mounting an extra attachments and file storage packages and intricate setup.
- (1) Modify forum attachments the use content repository directly (and require no setup)
- (1) Modify the user interface to allow for attachment to be uploaded with the initial post.
- (1) For gif, jpg, png attachments, have them appear inline. (resized if too big)
- (2) Have the use of attachments a property of a given forum.
- (2) Have the use of attachments in the forums of a package instance a property of the forum package.
- (3) Have maximum file size a parameter of the forum packages.
- (2) Users should be able to upload their portrait (if it doesn’t exist) when they submit a post.
- (1) The user’s portrait should be displayed (with an appropriate size) along with their post.
- (3) Use of portraits should be configurable at the forum level and the forum package instance level.
- (1) (investigate) – Is image magic quick enough to resize on the fly or do we have to store an appropriate size. Or is it easy to store a series of sizes right away? DAVEB-Two options, 1) generate thumbnail, medium, full size when uploaded like photo-album. 2) lazily generate the sizes and store them in the file system when they are requested. For portraits I think it make sense to just generate the right sizes, its also easier to code.
- DAVEB: Solution Grove has code for displaying portraits along with posts. It uses the acs-subsite portrait for this. This is committed to HEAD in CONTRIB (1-23-07)
- (1) When a thread is started, the user can choose relevant categories.
- (1) User should (parameterized) be able to add a new category.
- (2) Use of categories should be parameterized at the forum and forum package instance level.
- (1) View of threads in a given category in a given forum.
- (2) View of thread in a given category in a given forum package instance.
- (2) Forum administrator should be able to pick which categories are used.
- A registered user must be able to rate a comment.
- A forum must can be configured to allow (or not) ratings.
- View of all threads in a forum package instance.
- View of all threads in forums where you are a member.
- Add ability to have forums where there is a group of official members.
- (2) Users can join in the following ways
- Open (will inherit from the site map, and therefore the permissions from the package instance)
- Approval Process (break inheritance)
- Closed (must be added by admin) (break inheritance)
- (2) When users join (either by themselves or admin), an option to sign up for notifications is given.
- (1) Pages to view forum members
- (1) Admins can mass add people or mass invite people (optionally adding them to email notification)
- (1) Admins can remove people
- (1) Members (configurable) can see member list
- Each forum should support a list of administrators
- If you have admin on the forum instance, you should be able to administrate each forum (later feature)
- Administrators of a forum should be able to add other administrators.
- Support Anonymous postings. DAVEB please clarify, I am guessing this means, allow users with permission to post, to post without revealing their identity, as opposed to letting the public post without logging in.
- Users can sign up to notifications for a forum or thread.
- Users should have a consolidated page where they can control all their notifications.
- Users should be able to turn off all notifications (ideally for a given period of time)
- (1) Administrators should be able to send out a broadcast to all forum members (messages that are sent by email regardless of notification setting)
Incoming Email (Dependent on OCT)
- (1) Integrate with OCT’s incoming email design.
Should support the following
- (1) Respond to post (using the message_id of the post)
- (1) Starting new threads (using the forum_id of the forum)
- (2) Subscribing to forum (maltes: Isn't this notifications?)
- (2) Unsubscribing from a forum (maltes: Isn't this notifications?)
- Each forum should have a way to configure parameters. Additional ones:
- From address – do you show the person’s email or specific a default email (maltes: we have this already)
- Configuring subject and footer and header
- New subscriber welcome message
- In a moderated forum, posts must be approved before they are sent
- There is a selected list of moderators
- There can be a selected list of people whose posts are not moderated
- Moderators can ask for notifications on new submitted posts
- Users can be marked to be blocked. These users will not get links to reply or post.
Posting and Viewing
- (1) View count (maltes: we have this already using the views package).
- (1) Items you haven’t viewed (what's new package)
- (1) Option to force preview (instead of post/preview)
- (1) (Configurable) Time to edit the post (this is a feature in Moodle that is nice... e.g. you have 5 min to edit this post)
- (2) maltes: Time to be allowed to edit a post. E.g. you should only be allowed to edit and delete your posting for the first 24 hours.
- Regular expressions can isolate potential spam and bounced post for moderation (we might be able to package the code in the mailing list manager for this). maltes: there is a suggestion to base this on procmail.
Search before post (MS)
- When the user types in the title of a forum posting that searches for the keywords and gives back a list of relevant forum postings at the bottom of the forums entry form (and yes, this screams ajax).
Give the user the option to view the postings (collapsible view) and map them for linking with the forum posting (see next point).
- (1) This post is related to this document. This post is related to this user.
Import/Export (Dependent on Don/Jeff)
- (1) Importing/Export Mailing list archive (don? jeff?)
- (3) UseNet?
- (1) Fixing issues with Merging users
- (2) Check for duplicate posts and remove
- (1) Provide a way to change the template for a post, thread and the forum (either easily understood and/or way to upload)
- (1) 1 forum
- (1) All forums you are in
- (1) All forums you have access too
Calendar View (Don)
- Provide calendar view (Don)