Last active
December 22, 2015 22:29
-
-
Save sweded/6540230 to your computer and use it in GitHub Desktop.
Processes FELI event registration
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <cfscript> | |
| /** | |
| * @file /inbound/feli_registration.cfm | |
| * @author Gernot Bartels 2013 | |
| * @description Processes FELI event registration | |
| * @usage FELI / CRM:Registrations | |
| * @created 2010-02-11 | |
| * @modified 2013-08-14 | |
| */ | |
| include "../config/crm_app.cfm"; | |
| qbTableId = crm_registrations; | |
| qbRecordFid = crm_registrations_response_fid; // Quickbase field ID for Form Response ID | |
| if (IsDefined("FORM.version")) { | |
| recordState = "new" | |
| } | |
| if (IsDefined("FORM.payment_name")) { | |
| recordState = "update" | |
| } | |
| switch(recordState) { | |
| case "new": // Start create | |
| birthDate = DateFormat(FORM.birth_date, "mm-dd-yyyy"); | |
| // Checkboxes | |
| param name="vegetarian" default="No"; | |
| if (Find("vegetarian", formDataString) != 0) { | |
| vegetarian = "Yes"; | |
| } | |
| param name="non_dairy" default="No"; | |
| if (Find("non_dairy", formDataString) != 0) { | |
| non_dairy = "Yes"; | |
| } | |
| param name="diet_other" default="No"; | |
| if (Find("diet_other", formDataString) != 0) { | |
| diet_other = "Yes"; | |
| } | |
| form_data = structNew(); | |
| form_data._fid_24 = "Participant"; | |
| form_data._fid_89 = "In Person"; | |
| form_data._fid_107 = FORM.response_id; | |
| form_data._fid_68 = FORM.feli_id; | |
| form_data._fid_106 = FORM.version; | |
| form_data._fid_83 = FORM.confirmation; | |
| form_data._fid_7 = FORM.first_name; | |
| form_data._fid_8 = FORM.last_name; | |
| form_data._fid_110 = birthDate; | |
| form_data._fid_109 = FORM.gender; | |
| form_data._fid_9 = FORM.sponsor; | |
| form_data._fid_111 = FORM.years_at_sponsor; | |
| form_data._fid_112 = FORM.employee_id; | |
| form_data._fid_113 = FORM.four_digits; | |
| form_data._fid_13 = FORM.home_phone; | |
| form_data._fid_60 = FORM.mobile_phone; | |
| form_data._fid_12 = FORM.work_phone; | |
| form_data._fid_14 = FORM.email; | |
| form_data._fid_16 = FORM.preferred_contact; | |
| if (IsDefined(FORM.cc_email)) { | |
| form_data._fid_142 = FORM.cc_email; | |
| } | |
| form_data._fid_123 = vegetarian; | |
| form_data._fid_124 = non_dairy; | |
| form_data._fid_125 = diet_other; | |
| form_data._fid_126 = FORM.diet_text; | |
| form_data._fid_33 = FORM.essay; | |
| form_data._fid_17 = FORM.master_teacher; | |
| form_data._fid_10 = FORM.district_name; | |
| form_data._fid_114 = FORM.district_street; | |
| form_data._fid_115 = FORM.district_suite; | |
| form_data._fid_116 = FORM.district_city; | |
| form_data._fid_117 = FORM.district_state; | |
| form_data._fid_118 = FORM.district_zip; | |
| form_data._fid_28 = FORM.semester_weeks; | |
| form_data._fid_29 = FORM.initiatives; | |
| // Build URL string from form_data struct | |
| savecontent variable="urlParamString" { | |
| for(fid in form_data) { | |
| urlParamString = writeOutput("#fid#=#form_data[fid]#&"); | |
| } | |
| } | |
| query_data = structNew(); | |
| query_data.qbTableId = qbTableId; | |
| query_data.qb_appToken = qb_appToken; | |
| query_data.uField = qbRecordFid; | |
| query_data.uValue = FORM.response_id; | |
| query_data.uList = "#qb_recordFid#.#qbRecordFid#"; // returned columns | |
| newRegistration = new components.qbControl().controller( urlParamString, query_data ); | |
| break; // End create | |
| case "update": // Start update | |
| // Checkboxes | |
| param name="agree_ip" default="No"; | |
| if (Find("agree_ip[0]", formDataString) != 0) { | |
| agree_ip = "Yes"; | |
| } | |
| param name="agree" default="No"; | |
| if (Find("agree[0]", formDataString) != 0) { | |
| agree = "Yes"; | |
| } | |
| param name="consent" default="No"; | |
| if (Find("consent", formDataString) != 0) { | |
| consent = "Yes"; | |
| } | |
| form_data = structNew(); | |
| form_data._fid_107 = FORM.response_id; | |
| form_data._fid_85 = FORM.payment_name; | |
| form_data._fid_86 = FORM.payment_org; | |
| form_data._fid_87 = FORM.payment_phone; | |
| form_data._fid_88 = FORM.payment_email; | |
| form_data._fid_22 = FORM.ethnicity; | |
| form_data._fid_25 = FORM.job_title; | |
| form_data._fid_127 = FORM.department; | |
| form_data._fid_26 = FORM.years_teaching; | |
| form_data._fid_20 = FORM.faculty_type; | |
| form_data._fid_21 = FORM.degree; | |
| form_data._fid_23 = FORM.risk_level; | |
| form_data._fid_128 = agree_ip; | |
| form_data._fid_61 = agree; | |
| form_data._fid_130 = consent; | |
| // Build URL string from form_data struct | |
| savecontent variable="urlParamString" { | |
| for(fid in form_data) { | |
| urlParamString = writeOutput("#fid#=#form_data[fid]#&"); | |
| } | |
| } | |
| query_data = structNew(); | |
| query_data.qbTableId = qbTableId; | |
| query_data.qb_appToken = qb_appToken; | |
| query_data.uField = qbRecordFid; | |
| query_data.uValue = FORM.response_id; | |
| query_data.uList = "#qb_recordFid#.#qbRecordFid#"; // returned columns | |
| updateRegistration = new components.qbControl().controller( urlParamString, query_data ); | |
| break; // End update | |
| default: | |
| writeOutput("Wrong place, wrong time"); // Script accessed from somewhere other than registration form. | |
| break; | |
| } | |
| </cfscript> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment