1. the main purpose is giving possibility to post user comments about their experience in different places in the world.
2. all actions - posting experience, posting comments, submitting ratings - for registered users only.
3. registration - name, email, country and password.
4. login / logout - username / password, password reminder.
5. user area - history of all postings (with links to actual postings by user), like they listed in directory.
6. directory - whole site is categorized directory, divided to countries (categories) and types of places (subcategories), like bar, theatre and so on. of course i need option to manage all categories / subcategories. the way to reach the posting - category - subcategory - posting. listings in subcategories will include title (place name), city and country that user comes from. i need for all listings the rating system like on digg . com - ability to give "digg" for posting i liked, one "digg" per user per day.
7. the process - every visitor can read all postings. registered user can enter "post your experience" page and he enter the follows - country (drop down menu) - city (drop down menu - with "other" and not sure" options, if "other" - enter sity in text field), type of place (drop down menu) - name of the place, address (optional field), experience posting and rating (from 1 - awful to 5 - excellent). all fields required, only address is optional. after that he click "post" and his posting is listed in directory and opened to reading and rating. the user (and other users) can rate his postings by "diggs" and add comment on posting page.
8. text editor for postings, without html ability, only bullets and "bold" font. url may be posted as is and it becomes link.
9 admin area - overall managing: users, postings, ability to set / disable moderation option for postings and comments separately, ability to send text message for all users.
10. rss for every category / subcategory / additional listings.
11 mod_rewrite based on [url removed, login to view]
12. whole link for posting: domain . com / country_name / place_type / place_name / user_name . html
13. listings by country, by city, by place, sorted by rating.
14. additional listing - "new postings", most viewed, top rated, lowest rated.
15. good detailed search.
16. all postings / comments will be stored on server, only user accounts information and site configurations will be stored in mysql. i need suggestions to do it the best way.
hope to get your suggestions about best realization. i need optimized ans clean script as possible, prefer function/module oriented script for easy understanding and possible changes.
important - the payment will be made by paypal after completing.