Functions list of the Trust-Forum project

(still incomplete)

Registration

Filling registration form can be done in 3 different possible session contexts:
  1. No authentication, if system admin allows this public registration
  2. Inside the inviter’s account, registration form is accessed via contacts list page
  3. Session was opened by link with key included in invitation email message that inviter sent to invited person.

User board

1. User pseudos
a. Create a new pseudo
b. Edit comments attached to pseudos
2. Preferences
3. Contacts
a. Add pseudo to contact list
b. Add email to contact list
c. Register new user
d. Send message to email, with or without invitation to register
4. Translations
a. Compare versions (displayed in a table, with languages as columns and items as rows)
b. Make new translation with fields filled with a given translation (or with blank fields), while seeing one (or more) other translations.
c. Use selected translation, or use default in a given langage.

5. Folders
a.    Create/rename/delete subfolders
b.    Move forum to another folder
c.    Rename forum link

Forum

1.    View contents
2.    View rights table
3.    Invite a user to at most one’s right
4.    If writing right, compose messages and create threads, validate/invalidate/edit one’s own messages.
5.    If admin, limit a right of a non-admin
6.    If owner, deny another admin
7.    If owner, give up owner right to another admin
8.    (later : hide/trash messages from one’s own view)

Some transverse operations

1. Display the info page of another user (can be either at one's home or at that user's home)
2. Create a forum at the home site (can reached by "start a new conversation" link from a user info page, to invite there this user)
3. Subscribe / unsubscribe to a forum (can be done either from folder or from forum; this change affects both components)

Global Login System

1. Authentication to remote site
a. Link to a remote site first technically requests home -> if no session yet open there, automatic authentication under a chosen pseudo or anonymously (under hidden temporary pseudo)
b. Display the list of remote sites with an open session - under which pseudo
c. From this list, close a remote session

2. Email users
a. Sending email to an email address (to someone not registered in the network) with authentifying secret link
b. Access to the site as an "email user" using that key (similar to remote user, less functionalities)

3. Bookmarks
a. Bookmark a current page or link
b. Display and edit bookmarks list
c. List of remote sites for access to their respective lists of public forums or wiki entries

4. Other relations of remote pages to user board (not yet implemented)
a. Display a small image from home site in remote site's page showing whether user got a new message
b. Display the list of user's pseudos in a pop-up called from a page of remote site where user is anonymous -> choose one of them for authentication
c. Display user's contacts in a pop-up, for invitation to a remote forum
d. Display list of subscribed forums with new messages (or other urgent info) in a pop-up called from new messages icon in remote site

Admin panel

1. Allow/disallow free registration
2. Display users list and each user's pseudos list - close pseudo
3. Forums list
4. In each forum : rename - delete - edit denies - change owner
5. Move a message from a forum to another forum
6. Edit list of language zones
7. List of registration inviting messages in each language
8. Invitations tree - problems list - disallow invitation