Skip to content
This repository has been archived by the owner on Aug 1, 2020. It is now read-only.

esausilva/weddingrsvp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Wedding RSVP

This application tracks RSVPS for a wedding. The RSPV form consists of 6 fields

- Name
- Number of Attendees
- Comment
- Accept or Decline
- Email
- Invitation Code

Out of these 6 fields, only Name, Number of Attendees, Accept/Decline and Invitation Code are required.

Once the user submits the form, the application validates the fields and if everything is correct, then displays a little blurb about the couple.

On the back end side, the administrator can see the guest list, search for a particular name in the guest list, delete an entry in the guest list and download the entire guest list as a CSV file.

In order gain access to the back end, just append /signup at the end of the URL to create an account and to login just append /login at the end of the URL. After the administrator has logged in successfully, a top menu will appear where one can navigate to the Guest List, back to the RSVP page, Search the guest list, Edit their profile, and Log out from the application.

Features

To handle search, I am using searchkick gem and in order to perform a search in localhost you must have elasticsearch installed have its server running.

In console type:

$ elasticsearch

Refer to searchkick documentation for more information. Also read production deployment documentation.

If you get an error saying you need to re index Rsvp (Rsvp.reindex), in console run the following:

$ rake searchkick:reindex CLASS=Rsvp

$ rake db:migrate

Sortable Columns

When looking at the guest list, you can sort by Name, Number of Attendees, Accept and Date columns.

reCAPTCHA

The application has a reCAPTCHA button to fight against bots.

Initially is disabled, if you want it just uncomment reCAPTCHA code in rsvps_controller.rb and new.html.erb

Notes

The invitation code is a static code provided in the invitation cards to prevent random people from submitting the form since the RSVP form is open to the web :)

I’m using dotenv for reCAPTCHA keys and RSVP Code. Refer to its documentation for more info about installing and deployment.

Guest list will not sort after a search.

Important

After cloning make sure you set up dotenv gem before running the application and get demo keys for reCAPTCHA (if you enable it). If not the application will throw an error when submitting an RSVP.

Pending

Implement sorting after search action.