Skip to content

tanadeko/dkc-application

 
 

Repository files navigation

Distinguished Key Clubber Application

The application for Distinguished Key Clubber is now online-based with the option of snail mailing it to the awards committee co-chairs. This online application aims to make it easier for the awards committee to keep track of applicants and to make it easier for applicants to keep track of their application.

Hosted on Google App Engine: http://dkc-app.nydkc.org

Features

  • Application
    • Overview
    • Profile
    • Part 1: Personal Statement
    • Part 2: International, District & Divisional Projects
    • Part 3: Involvement in Key Club Functions
    • Part 4: Projects, Advocacy & Newsletters
    • Other & Scoring
    • Verification through Email
    • Upload files on Overview and Advocacy
  • Account management
    • Password reset
    • Access control for logged in users
    • Block modification after submission
    • Download application as PDF
  • Admin Interface
    • Settings
    • View applications
    • Search users by profile information
    • Lists emails of applicants split by submitted status
    • Run datastore queries
    • Handle deleted files

Requirements

  • Google App Engine
    • User authentication
    • NDB
    • Blobstore
    • Mail
  • Sendgrid
  • Recaptcha
  • xhtml2pdf
    • Install required dependencies using pip: pip install -r requirements.txt -t lib
  • html2text

Notes

  • There is a bug with Google App Engine's Push-To-Deploy, so to get the PDF Generation to work correctly, the application must be deployed using the GAE App.
  • Backup datastore using appcfg.py download_data --url=http://dkc-app.appspot.com/_ah/remote_api --filename=backup
  • Upload datastore to local development using appcfg.py upload_data --filename=backup --application=dev~dkc-app --url=http://localhost:20000/_ah/remote_api

About

Distinguished Key Clubber Application deployed on GAE

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 93.2%
  • HTML 5.9%
  • Other 0.9%