README
In this project we built an event RSVP system web-app. This app project was implemented on Django platform(1.10.5). The database we used is SQLite. Our web-app will let users manage their account and all the RSVP events in ways that make sense according to their respective role, which could be owners, guests or vendors.
This app is able to support a series of functionality and features as an RSVP system, the details are listed and explained as following:
1 User management: The user(account) management includes account creation and registration, account login and logout; Specifically, the password setting was implemented using salt and hash out of security concern;
2 Event management: The user is able to create an arbitrary number of event, the information is able to be edited of which includes the event title, the event date, the event place and also the questions (such as whether +1 or not, will be attending or not) expected to be answered by the guests, the guest name list is expected to be added here, which is able to be updated later anytime; After user login, the events he/she has created as owner, the events he/she has been invited as guest, and the ones he/she has been assigned as vendor will be listed on the web page. The user will be presented the details about the event and be able to edit the information or answers about this event as the correspondent role after clicking the event. After finishing editing, the user is able to go back to the main page by clicking “ok”; Once the user is added by the owner either as guest or vendor, he/she is able to get notified by an email, he/she should also get one every time the event details is updated by the owner;
3 Response viewing/changing: The owner is able to view the responses of all the guests he/she has invited, but has no permission to modify it; The guest is able to respond to, view and edit only his/her own answer before finalization, the answers also includes how many people he/she will bring to the event, which he can add by clicking the button and the total count of guest number will be updated and displayed; The vendor is able to view the responses of the questions which he/she has been permitted to and he/she is able to finalize a question to prevent further modification of the answer.
To see and use our web-app, please follow the steps described below: first you have to cd into second mysite directory with manager.py file
1 run the server on your local machine by typing: python manage.py runserver ‘ip address’:’port number’ (ex. python3 manage.py runserver 127.0.0.1:8000)
2 Visit index page at http://127.0.0.1:8000/rsvp/ (if running on local machine). You might need to change to the ip address and portal of your virtual machine if needed, remember to modify the configuration of ALLOW_HOST in the settings.py with your virtual machine ip address.
3 play around with our web app!
You can check out all the codes and danger log in this repo.