Take the phpBB or Invision Power Board or Drupal Forum software and modify it for a polyglot community. Add the following features:
- user profiles can show what languages people speak and how well (unlimited number of languages)
- language of posts is indicated and users can translate posts between languages
- posts by language students can be corrected by native speakers (modified "edit post" function)
- all files necessary for this to run on my server
- a mysql export so that my tables are set up correctly too
- I am a programmer/designer so I will do the CSS and installation myself
### Complete specs (I promise no more changes!):
#### Changes to User Profiles
* add the ability to indicate an unlimited number of languages from drop-down boxes containing an ISO list of languages
* for each language, the user can also select his level of proficiency from another drop-down box and he can use a small textbox to indicate his order of preference (ordinal numbers 1 to unlimited, 1 being the favourite)
* proficiency options are: Just Starting (0), Read-only (R), A1, A2, B1, B2, C1, C2, Native Speaker (N)
* when looking at a post, the author's languages should be displayed with the rest of his quick profile information. In order not to take up too much space, use abbreviations (0, R, N, A1, ...) for proficiency. Use the ISO code for the languages (eng, fra, deu...) instead of the full language name if the post is short (alternatively: if there are more than 4 languages).
#### Changes to Posts
* whenever people post, have them indicate the language they are posting in (default = English)
* if the language is not their native language (compare to profile), allow native speakers to submit a corrected post. This would essentially be a copy of the edit function, with three changes:
> 1. make a back-up of the original somewhere so that it can still be accessed if desired
> 2. add one extra text area where the corrector can put a comment
> 3. send a notification to the author that his post has been corrected, including the original and the correction and the comment
* posts should be translateable. This should be realized as a new column for post language in the table where posts are stored. Then, when querying the database for a post with a certain ID, you should get a selection of the same post in various languages. The interface to translate a post should look like the "edit post" page.
* when viewing discussions, use the user's order of preference for languages to determine what language to display posts in. At the bottom of the post, there should be the option to view the same post in other languages (or an uncorrected version, if available) though. As an additional option, link to a translation created by an automatic translation engine (preferably Google), in case the content is in a language that is not understood.