Site With Events + Data Import
I have a basic skeleton of the site done in html which I will provide so it will be clear what needs to be done.
Scripting must be done in php5.x, for ajax preferably latest jQuery. Site will use Mysql5.x
also htacess must be used for nice looking URLs
Site’s elements:
— Register —
registering with e-mail, pass, captcha (captcha from recaptcha.net)
(with sending e-mail with activation link in it)
ajax checking if e-mail exists and if passwords match
— Login —
e-mail, pass (after few bad tries, show Captcha as anti abuse), remember user, recover password
— Associate user(s) with account —
(much ajax here)
user name, user continent, user country (drop down list for cont. and country) => check if it doesn’t exist, then import his info by extracting a few text strings from an external site
* User is asked to modify some info on that external site
* User clicks Verify button
* After that we import the info from external site and check if it’s correct
* If it’s successful we store all his data in our database and associate this user with his account
— Add an event with a “Bad Guy” — (temporary name)
(much ajax here)
each account with associated user can add a new event with a Bad Guy
* select one of the associated users, after that get his info from database and show below (with ajax)
Date, Bad Guy name, Building, Room (list of Buildings and Rooms to choose from are taken from our database)
Verify button, when clicked we retrieve 2 data strings from 2 external sites and verify if they match
Product ID (user enters a product ID, this can be entered in various formats so we convert to proper ID if needed. We then import the Product’s name based on the ID from our database. If not present in database we import it from an external site and save to our database. When product ID submited we show the product’s name and display another field for next Product ID (with ajax))
Add photos: (user adds a photo, which we convert to previously set quality and resolution as well as generate a thumbnail and store them. After it’s submitted we use ajax to show the submitted photo’s thumbnail and show next field for another photo)
Add comment:
[Submit]
// Submitting stores all the data above in our database
— Search Bad Guys —
Search for Bad Guys (visitors can search for all events which a Bad Guy took part in)
(we display results as Bad Guy and Events, with multiple info taken from our database)
— Browse Bad Guys —
After choosing Continent and Country we display all Bad Guys from that Continent and Country and events associated with them)
— Viewing an Event and adding data to it —
Rating (1-25 scale, based on user votes)
Bad Guy info, Continent, Country
Event added by – user who added event and when added
Date & time of event, Building, Room, Products, Screenshots, Comments
Fields for adding/removing score for Rating, comments by other users, screenshots by other users (additional check required using data from external site to see if current user can post comments)
Report – a message reporting to admin if something’s inappropriate in this event
— Tracking change of Name, Country —
Every successfully added Event adds a Bad Guy to a special list in admin panel. Admin uses it to retrieve “additional data” about each Bad Guy from an external site and store it into database.
After that if users suspect Bad Guy’s data changed (name, country) and know the new info, they can use a form to submit it to our site and we compare if the “additional data” matches. If it does, Bad Guy is stored with a new name and new other info from now on. But we still store his old info somewhere.
— Bad Guy profile —
display name, Continent, Country and other data as well as old name, Country and others if any
and display all events in which this Bad Guy took part in
There’s a Report new data form for users (explained in “Tracking change” section)
— Account settings —
change password, change e-mail (new confirmation e-mail), list associated users with the option to remove them.
— Admin panel —
* list of events (with sorting, able to delete)
* import country lists into database (from textarea or input file)
* import building and rooms list into database (from textarea or input file) along with their desired names on our site. For example if on the external site one building is called “shop5” and I want it to be shown as “Shop number 5” then I want to include it on the list.
* import “additional data” of Bad Guys (with sorting)
* reports (show messages list, with sorting)
* ban list (list of banned users with sorting and form to ban users that abused the site disallowing them from adding events/comments)
Also admin must be able to edit/remove any of the comments, screenshots, events