The project can be divided in 3 subprojects:
The website has to be designed in php and html and has to be responsive.
It shall have a welcome page with a wallpaper pic and a menu and a login box;
In the login box, if not already logged, there shall be a button to register to the site. This button opens a new box that will ask for a username, a password and a mail to confirm the registration. The email control has to be done with ajax and with a php callback.
This page and a descriptive page, reachable from the menu, have to be the only ones visible without login.
After login, in the reserved area, the website shall have following pages:
- A profile page in which each article writer can modify personal data as name, address, phone, website, email, fax and notes.
- An article insertion page, in which each writer can insert an article compiling fields as title, content, proposed roles (dropdown list), desired skills (dropdown list), slots of time in which receive persons (a graphical calendar with a popup opening when clicking a day, the popup should contain a list of timeslots).
- A resume page in which each article writer can view all the articles he has inserted and clicking on one of them seeing which time slot has been selected from an app user, with info as username, status and participants number inserted by the app user.
- An administrative page in which each writer can see his own situation about fees and subscription.
Each page shall have a callback, in the same page or in another page, to store or retrieve info in the DB, according to the specific function.
In each page of the reserved area should be present a badge indicating new subscriptions (as the badge balloon in the top of [url removed, login to view] site). Once viewed and clicked the subscription, the badge should change state.
Login info and status shall be kept also on the browser side.
There shall be one app for iPhone/iPad and another one for Android devices, both in native code.
The app has to be designed very similar to AirBnB app, showing a collection of articles with each article visible as a graphic panel, with a photo and some text on it.
There should be also a second view of the list of articles, by showing them as pinpoints on a map, as for AirBnB app.
Each panel or pinpoint, once clicked, opens a new page in which there are some information about location, time slots, a text description, a list of text tags and some photos of the appointment, a clickable map, again very similar to AirBnB.
Information of location has to be presented as both textual address and navigable map with pinpoint (able to launch a navigator as tom tom or others, if installed on device).
The app user can decide to participate to a meeting and shall be able to indicate the chosen time slot and number of participants he will bring with him.
A personal profile page shall be present. It has to be called as in AirBnB, with the same type of animation.
The personal profile shall include username, email, history of the accepted meetings. For meetings not yet timed out, there should be a button to cancel the acceptation.
All data of the personal profile shall be saved locally on the device and remotely on the DB. Until a profile is created, the profile page should ask for a username and a mail to be checked.
A badge should appear on the app icon and on the top of the app pages if there are pending meetings, already accepted.
A series of php pages used to read and write on the mySQL database from the app. Functions to be foreseen:
- Read the list of meetings proposed by the users of the website, collecting data about the meetings and data about the authors of the meetings.
- Receive the registration request of a new app user and create a new DB entry about that new user.
- Receive a meeting confirmation from an app user
- Receive a meeting cancellation from an app user