#Messaging
For communication towards the users a custom component will be used which sends e-mails and places the message in the database through a model. The messaging will become part of the users plug-in.
##Personal messaging
Personal messages are defined as user to user messages. These messages can be sent by every registered user which isn't marked as a spammer.
It will be possible to disable e-mail f...
# Implementation
how are we going to implement articles and its' logic
## Concepts
* Multilingual
* Revision control
* Draft
* Moderation
--
## Multilinguality
Implemented by making one article per language and a language field for each. If an article is translated from another, use the "parent_id" to indicated the hiearchy.
--
## Revision control
Implemented only on pages (including ...
## User stored info
By "User" means any logged in person accessing the web application. Browsing the application without logging in is considered "guest activity".
- public fields
- real_name
- created
- username (shown if real_name is empty only)
- profile_id
- group_id
- secret fields
- password
- email
- system fields
- email_authentiated
- email_token
- ema...
Group Permissions
This is not a specc, but a brainstorm of the permission system to be used by the bakery.
As stated in the users part, Bakery 2.0 will give users permissions based on their group, with the exception of their own content, which they will have a special direct access to. What follows bellow is a suggestion to how to manage each group's rights to do a certain action. For simplicities sake only controller actions ar...
##Articles
So here are the features of the articles section. The whole reason we are gonna go through all this trouble of making this app.
Important principles for the app that involve articles as it's most important model are:
- Registered User's articles must be accepted by a moderator before being published
- We will keep a history log of moderation (so we know who approved an article, who disapproved...
Markers
# Ideas around marking content
While it is a priority that articles on the bakery hold as high a quality as possible, it is counter-productive to only allow the very best to be published. A good set of moderation tool is therefore needed to help the good ones surface quickly and lending a helping hand to the not-so-good so it can become good.
Articles have three main quality pit falls. There can be problems...
Moderation
# Ideas around moderation
While it is a priority that articles on the bakery hold as high a quality as possible, it is counter-productive to only allow the very best to be published. A good set of moderation tool is therefore needed to help the good ones surface quickly and lending a helping hand to the not-so-good so it can become good.
Articles have three main quality pit falls. There can be problems with...
Article Ranking Algorithm
the new bakery rating system will continue to be based off of the 1-5
star ratings from Bakery 1.0. Currently, the method used to determine
the article score is the simple arithmetic mean of the user attributed
ratings.
The problem with this is that the arithmetic mean (average) is usually
a very bad statistical variable, since it is easily affected by
outlying data points. Example: an article has th...
Publish-voting
Moderation System ideas
-
from Ronny Vindenes
#1
Users gain points for writing articles with high ratings, and lose points for writing articles with low ratings. Once you have X amounts of points, these points can be spent on publishing/sponsoring other peoples unpublished articles. If the sponsored article is rated high the sponsor gains new points that he can spend on sponsoring new articles, if the spon...
##Search
this is a biggy
####features
- basic
- LIKE %Article.title%
- FULLTEXT on body
- advanced _(displayed on results page)_
- dropdown with category/subcategory
- dropdown with versions
- dropdown with ratings
- version and ratings allow equals or at least
- checkbox for search for title, body, and/or tag
- dropdown for language
- users
- LIKE %User.username%
- LIKE %user.realname...
##Comments
The features of the comment system follow.
- New comments are sent by email (with full body) to the article's author
- Reply to comments are sent by email to user who originally commented
- Organized by types
- Threaded replies, one level deep
- Author level control to change types
- Types are fixed within the system
- current types: null, bugs, question, off-topic, closed
- tabs for each t...
##Layout
this will outline the navigation and basics of the layout
###navigation
- top level categories
- users
- [wiki:spec/search basic search]
- add article
- register/login/view account
- language selection
###homepage
- featured articles
- random tags
- latest news
- recent code
- [wiki:spec/ratings top rated articles]
###footer
- recent articles
- recent code
- recent n...
Ratings
Articles can be rated:
- Only registered users can rate articles.
- An article cannot be rated more than once by the same user.
- Ratings are editable by user
- We will display a Top Rated articles somewhere on the site, as a widget
##Messages
This version of the will include a messaging system.
####features
- Editor/Moderator messages show first
- Inter-user messages, with create, read, and delete
