diff --git a/.forceignore b/.forceignore
new file mode 100644
index 0000000..365b63b
--- /dev/null
+++ b/.forceignore
@@ -0,0 +1,2 @@
+# Exclude package.xml
+**package.xml
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..09b74cf
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,24 @@
+.project
+.settings
+salesforce.schema
+Referenced Packages
+salesforce-food-bank.sublime-project
+salesforce-food-bank.sublime-settings
+salesforce-food-bank.sublime-workspace
+/resource-bundles/Angular.resource/mm.log
+/config/
+/apex-scripts/
+/.DS_Store
+/resource-bundles/.DS_Store
+/resource-bundles/Angular.resource/mmui.log
+/resource-bundles/Angular.resource/mmst.log
+/resource-bundles/Angular.resource/bower_components*
+.sfdx/
+.vscode/
+test_results*
+/temp
+~*
+/force-app
+/src.orig
+/debug.log
+/.vscode
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
index fd63c1b..1498891 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,3 +1,3 @@
{
- "eslint.nodePath": "c:\\Users\\DaveB\\.vscode\\extensions\\salesforce.salesforcedx-vscode-lwc-45.10.0\\node_modules"
+ "eslint.nodePath": "c:\\Users\\DaveB\\.vscode\\extensions\\salesforce.salesforcedx-vscode-lwc-45.15.1\\node_modules"
}
\ No newline at end of file
diff --git a/src/classes/C501_TEST_ClassReg_CreateAcct.cls b/src/classes/C501_TEST_ClassReg_CreateAcct.cls
index 7948439..99c5e98 100644
--- a/src/classes/C501_TEST_ClassReg_CreateAcct.cls
+++ b/src/classes/C501_TEST_ClassReg_CreateAcct.cls
@@ -54,6 +54,9 @@ public class C501_TEST_ClassReg_CreateAcct {
@isTest static void testSuccessfulInsert(){
Class_Site_Login_Attempt__c att = createLoggedInTestUser();
+ Account school = new Account(Name='TestSchool',Region__c = 'Seattle');
+ insert school;
+
PageReference createAcctPage = Page.C501_ClassReg_CreateAcct;
Test.setCurrentPage(createAcctPage);
System.currentPageReference().getParameters().put('a', att.id);
@@ -67,6 +70,11 @@ public class C501_TEST_ClassReg_CreateAcct {
controller.family.BillingCity = 'Seattle';
controller.family.BillingState = 'WA';
controller.family.BillingPostalCode = '98101';
+
+ controller.child.FirstName = 'Child';
+ controller.child.LastName = 'Name';
+ controller.schoolName = school.Id;
+
controller.createAccount();
}
diff --git a/src/labels/CustomLabels.labels b/src/labels/CustomLabels.labels
new file mode 100644
index 0000000..dd72319
--- /dev/null
+++ b/src/labels/CustomLabels.labels
@@ -0,0 +1,213 @@
+
+
+
+ C501_ClassReg_ChildMobilePhone
+ en_US
+ false
+ C501_ClassReg_ChildMobilePhone
+ Student's Mobile Phone Number (if any)
+
+
+ C501_ClassReg_ChildSchoolName
+ en_US
+ false
+ C501_ClassReg_ChildSchoolName
+ Student's School
+
+
+ C501_ClassReg_HHhomePhone
+ en_US
+ false
+ C501_ClassReg_ParentHomePhone
+ Parent/Guardian's Home Phone
+
+
+ C501_ClassReg_ParentHomePhone
+ en_US
+ false
+ C501_ClassReg_ParentHomePhone
+ Parent/Guardian Home Phone
+
+
+ C501_ClassReg_ParentMobilePhone
+ en_US
+ false
+ C501_ClassReg_ParentMobilePhone
+ Parent/Guardian Mobile Phone
+
+
+ C501_ClassReg_ParentWorkPhone
+ en_US
+ false
+ C501_ClassReg_ParentWorkPhone
+ Parent/Guardian Work Phone
+
+
+ C501_RegSite_ChildEmail
+ en_US
+ false
+ C501_RegSite_ChildEmail
+ Student's Email Address (if any)
+
+
+ C501_RegSite_ChildFirstName
+ en_US
+ false
+ C501_RegSite_ChildFirstName
+ Student First Name
+
+
+ C501_RegSite_ChildLastName
+ en_US
+ false
+ C501_RegSite_ChildLastName
+ Student Last Name
+
+
+ C501_RegSite_City
+ en_US
+ false
+ C501_RegSite_City
+ City
+
+
+ C501_RegSite_CodeMismatch
+ en_US
+ false
+ C501_RegSite_CodeMismatch
+ That doesn't seem to match the code we sent you. Try again?
+
+
+ C501_RegSite_Continue
+ en_US
+ false
+ C501_RegSite_Continue
+ Continue
+
+
+ C501_RegSite_FamilyInformation
+ en_US
+ false
+ C501_RegSite_FamilyInformation
+ Family Information
+
+
+ C501_RegSite_FirstName
+ en_US
+ false
+ C501_RegSite_ParentFirstName
+ Parent/Guardian First Name
+
+
+ C501_RegSite_InvalidEmailPhone
+ en_US
+ false
+ C501_RegSite_InvalidEmailPhone
+ That is not a valid email address or phone number. Please try again.
+
+
+ C501_RegSite_LeaveBlank
+ en_US
+ false
+ C501_RegSite_LeaveBlank
+ Leave blank if you do not have one.
+
+
+ C501_RegSite_LeaveBlankEmail
+ en_US
+ false
+ C501_RegSite_LeaveBlank
+ Leave blank if you do not have one.
+
+
+ C501_RegSite_Login
+ en_US
+ false
+ C501_RegSite_Login
+ Log in
+
+
+ C501_RegSite_ParentEmail
+ en_US
+ false
+ C501_RegSite_ParentEmail
+ Parent/Guardian Email
+
+
+ C501_RegSite_ParentFirstName
+ en_US
+ false
+ C501_RegSite_ParentFirstName
+ Parent/Guardian First Name
+
+
+ C501_RegSite_ParentLastName
+ en_US
+ false
+ C501_RegSite_ParentLastName
+ Parent/Guardian Last Name
+
+
+ C501_RegSite_ProvidePhoneEmail
+ en_US
+ false
+ C501_RegSite_ProvidePhoneEmail
+ Please provide your phone number or email address to log in.
+
+
+ C501_RegSite_RememberMeDevice
+ en_US
+ false
+ C501_RegSite_RememberMeDevice
+ Remember me on this device.
+
+
+ C501_RegSite_SiteRegFormTitle
+ en_US
+ false
+ C501_RegSite_SiteRegFormTitle
+ Techbridge Girls Class Registration Form
+
+
+ C501_RegSite_State
+ en_US
+ false
+ C501_RegSite_State
+ State
+
+
+ C501_RegSite_StreetAddress
+ en_US
+ false
+ C501_RegSite_StreetAddress
+ Street Address
+
+
+ C501_RegSite_StudentInformation
+ en_US
+ false
+ C501_RegSite_StudentInformation
+ Student Information
+
+
+ C501_RegSite_WeSentYouCode
+ en_US
+ false
+ C501_RegSite_WeSentYouCode
+ We just sent you code to the phone number or email address you provided. What is the code?
+
+
+ C501_RegSite_Youarenotauthenticated
+ en_US
+ false
+ C501_RegSite_Youarenotauthenticated
+ You are not authenticated
+
+
+ C501_RegSite_ZipCode
+ en_US
+ false
+ C501_RegSite_ZipCode
+ Zip Code
+
+
diff --git a/src/layouts/School_Term__c-School Term Layout.layout b/src/layouts/School_Term__c-School Term Layout.layout
new file mode 100644
index 0000000..e72f2da
--- /dev/null
+++ b/src/layouts/School_Term__c-School Term Layout.layout
@@ -0,0 +1,207 @@
+
+
+ Submit
+
+ false
+ false
+ true
+
+
+
+ Required
+ Student__c
+
+
+ Edit
+ Student_School_ID__c
+
+
+ Required
+ School__c
+
+
+ Edit
+ School_Year__c
+
+
+ Readonly
+ School_Region__c
+
+
+
+
+ Edit
+ Start_Date__c
+
+
+ Edit
+ Program_Day__c
+
+
+ Edit
+ Parent__c
+
+
+
+
+
+ true
+ false
+ true
+
+
+
+ Edit
+ Left_Program_Early__c
+
+
+ Edit
+ Left_Program_Early_Date__c
+
+
+ Edit
+ Notes__c
+
+
+
+
+
+ true
+ true
+ true
+
+
+
+ Edit
+ Parent_Survey__c
+
+
+ Edit
+ Pre_Survey__c
+
+
+ Edit
+ Post_Survey__c
+
+
+ Edit
+ Free_reduced_lunch__c
+
+
+
+
+ Edit
+ Parent_Packet__c
+
+
+ Edit
+ Media_Release__c
+
+
+ Edit
+ Waiver__c
+
+
+ Edit
+ Evaluation_Consent__c
+
+
+ Edit
+ Authorization_to_treat_minor__c
+
+
+ Readonly
+ Emergency_Preferred_Medical_Provider__c
+
+
+
+
+
+ false
+ true
+ true
+
+
+
+ Readonly
+ Name
+
+
+ Readonly
+ CreatedById
+
+
+
+
+ Readonly
+ LastModifiedById
+
+
+
+
+
+ true
+ true
+ true
+
+
+
+ Edit
+ Parent_Packet_URL__c
+
+
+ Edit
+ Parent_Packet_URL_Unsigned__c
+
+
+ Edit
+ Contract__c
+
+
+
+
+
+
+ true
+ false
+ true
+
+
+
+
+
+
+
+ TASK.SUBJECT
+ TASK.WHO_NAME
+ ACTIVITY.TASK
+ TASK.DUE_DATE
+ TASK.STATUS
+ TASK.PRIORITY
+ CORE.USERS.FULL_NAME
+ RelatedActivityList
+
+
+ TASK.SUBJECT
+ TASK.WHO_NAME
+ ACTIVITY.TASK
+ TASK.DUE_DATE
+ CORE.USERS.FULL_NAME
+ TASK.LAST_UPDATE
+ RelatedHistoryList
+
+
+ RelatedNoteList
+
+ false
+ false
+ false
+ false
+ false
+
+ 00hA000000WrlWL
+ 4
+ 0
+ Default
+
+
diff --git a/src/objects/Account.object b/src/objects/Account.object
index ffa3228..3345fbc 100644
--- a/src/objects/Account.object
+++ b/src/objects/Account.object
@@ -33,4 +33,38 @@ SUBSTITUTE(C501_Class_Site_Mobile_Number__c, "(", ""), "
false
Phone
+
+ Region__c
+ false
+
+ false
+ false
+ false
+ Picklist
+
+
+ false
+
+ East Bay
+ false
+
+
+
+ South Bay
+ false
+
+
+
+ Seattle
+ false
+
+
+
+ DC
+ false
+
+
+
+
+
diff --git a/src/objects/Contact.object b/src/objects/Contact.object
index 0b409f7..5baae98 100644
--- a/src/objects/Contact.object
+++ b/src/objects/Contact.object
@@ -15,4 +15,59 @@
+
+ Emergency_Preferred_Medical_Provider__c
+ false
+
+ 255
+ false
+ false
+ false
+ Text
+ false
+
+
+ Income__c
+ false
+
+ false
+ false
+ false
+ Picklist
+
+
+ false
+
+ Less than $20,000
+ false
+
+
+
+ $20,000-$39,999
+ false
+
+
+
+ $40,000-$59,999
+ false
+
+
+
+ $60,000-$79,999
+ false
+
+
+
+ Over $80,000
+ false
+
+
+
+ Decline to Answer
+ false
+
+
+
+
+
diff --git a/src/objects/School_Term__c.object b/src/objects/School_Term__c.object
new file mode 100644
index 0000000..23a1e9b
--- /dev/null
+++ b/src/objects/School_Term__c.object
@@ -0,0 +1,480 @@
+
+
+
+ Active_Year__c
+ Converts School year picklist into a year to rollup to contact
+ false
+ VALUE(RIGHT( TEXT(School_Year__c) , 4))
+ BlankAsZero
+
+ 18
+ false
+ 0
+ false
+ false
+ Number
+ false
+
+
+ Authorization_to_treat_minor__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Contract__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Current_Term__c
+ Marks a term as current (for use by rollups). Rolls over 7/1
+ false
+ IF(
+( MONTH( TODAY()) <=6 && YEAR(TODAY())= Active_Year__c ) ||
+( MONTH( TODAY()) >7 && YEAR(TODAY())= Active_Year__c - 1 ) ,
+
+TRUE, FALSE )
+ BlankAsZero
+
+ false
+ false
+ Checkbox
+
+
+ Emergency_Preferred_Medical_Provider__c
+ false
+ Parent__r.Emergency_Preferred_Medical_Provider__c
+ BlankAsZero
+ Specified on the Parent record with other emergency info
+
+ false
+ false
+ false
+ Text
+ false
+
+
+ Evaluation_Consent__c
+ false
+ false
+ STUDENT evaluation consent Check if yes, leave unchecked if no.
+
+ false
+ false
+ Checkbox
+
+
+ Family_Income_Level__c
+ Pulls in income level from parent record
+ false
+ TEXT(Parent__r.Income__c)
+ BlankAsZero
+
+ false
+ false
+ false
+ Text
+ false
+
+
+ Free_reduced_lunch__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Left_Program_Early_Date__c
+ Tracks when students drop out.
+ false
+
+ false
+ false
+ false
+ Date
+
+
+ Left_Program_Early__c
+ false
+ false
+ Note date student left and reason in "Notes"
+
+ false
+ false
+ Checkbox
+
+
+ Media_Release__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Notes__c
+ false
+
+ 32768
+ false
+ false
+ LongTextArea
+ 3
+
+
+ Parent_Email__c
+ false
+ Parent__r.Email
+ BlankAsZero
+ For Form Assembly lookup
+
+ false
+ false
+ false
+ Text
+ false
+
+
+ Parent_Packet_URL_Unsigned__c
+ false
+ Form Assembly record of the electronic parent packet, waiver, etc. This is the unsigned data.
+
+ false
+ false
+ false
+ Url
+
+
+ Parent_Packet_URL__c
+ false
+ Form Assembly record of the electronic parent packet, waiver, etc. If this is blank, the contract signature has not been verified yet.
+
+ false
+ false
+ false
+ Url
+
+
+ Parent_Packet__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Parent_Survey__c
+ false
+ false
+ Did the parent consent for evaluation? Check if yes, leave unchecked if no.
+
+ false
+ false
+ Checkbox
+
+
+ Parent__c
+ SetNull
+ Lookup to Contact for tracking parents
+ false
+
+
+ true
+
+ Contact.RecordTypeId
+ equals
+ Parent
+
+ Choose a contact of record type Parent
+ true
+
+ Contact
+ School Terms (as Parent)
+ School_Terms1
+ false
+ false
+ false
+ Lookup
+
+
+ Post_Survey__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Pre_Survey__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ Program_Day__c
+ Day of the week the after-school program meets
+ false
+
+ false
+ false
+ false
+ Picklist
+
+
+ false
+
+ Monday
+ false
+
+
+
+ Tuesday
+ false
+
+
+
+ Wednesday
+ false
+
+
+
+ Thursday
+ false
+
+
+
+ Friday
+ false
+
+
+
+
+
+
+ School_Region__c
+ false
+ TEXT(School__r.Region__c)
+ BlankAsZero
+
+ false
+ false
+ false
+ Text
+ false
+
+
+ School_Year__c
+ School year for the term (September-June)
+ false
+
+ false
+ false
+ false
+ Picklist
+
+
+ false
+
+ 2014-2015
+ false
+
+
+
+ 2015-2016
+ false
+
+
+
+ 2016-2017
+ false
+
+
+
+ 2017-2018
+ false
+
+
+
+ 2018-2019
+ false
+
+
+
+ 2019-2020
+ false
+
+
+
+ 2013-2014
+ false
+
+
+
+ 2012-2013
+ false
+
+
+
+ 2011-2012
+ false
+
+
+
+ 2010-2011
+ false
+
+
+
+ 2009-2010
+ false
+
+
+
+ 2008-2009
+ false
+
+
+
+ 2007-2008
+ false
+
+
+
+ 2006-2007
+ false
+
+
+
+ 2005-2006
+ false
+
+
+
+ 2004-2005
+ false
+
+
+
+ 2003-2004
+ false
+
+
+
+ 2002-2003
+ false
+
+
+
+ 2001-2002
+ false
+
+
+
+ 2000-2001
+ false
+
+
+
+
+
+
+ School__c
+ Master-Detail to Account to track the school
+ false
+
+ Account
+ School Terms at School
+ School_Terms
+ 1
+ true
+ false
+ false
+ MasterDetail
+ false
+
+
+ Start_Date__c
+ false
+
+ false
+ false
+ false
+ Date
+
+
+ Student_School_ID__c
+ false
+
+ 15
+ false
+ false
+ false
+ Text
+ false
+
+
+ Student__c
+ Master Detail to Contact for student
+ false
+
+
+ true
+
+ Contact.RecordTypeId
+ equals
+ Student, Alumna
+
+ Find contact of record type Student
+ false
+
+ Contact
+ School Terms (as Student)
+ School_Terms
+ 0
+ true
+ false
+ false
+ MasterDetail
+ false
+
+
+ Waiver__c
+ false
+ false
+
+ false
+ false
+ Checkbox
+
+
+ X2016_17_School_Terms
+ NAME
+ School__c
+ Student__c
+ CREATED_DATE
+ Everything
+
+ School_Year__c
+ equals
+ 2017-2018
+
+
+ en_US
+
+
diff --git a/src/package.xml b/src/package.xml
index 25e8e8e..f73b114 100644
--- a/src/package.xml
+++ b/src/package.xml
@@ -1,6 +1,5 @@
- TBGclassReg
C501_CTRL_ClassReg_CreateAcct
C501_CTRL_ClassReg_Home
@@ -20,20 +19,87 @@
Account.C501_Class_Site_Mobile_Number_Lookup__c
Account.C501_Class_Site_Mobile_Number__c
+ Account.Region__c
Class_Site_Login_Attempt__c.Account__c
+ Class_Site_Login_Attempt__c.Code_Sent_To__c
Class_Site_Login_Attempt__c.Login_Attempts__c
+ Class_Site_Login_Attempt__c.Login_IP_Address__c
Class_Site_Login_Attempt__c.SMS_Timestamp__c
Class_Site_Login_Attempt__c.Secret_Code__c
+ Class_Site_Login_Attempt__c.Verified__c
+ Contact.Emergency_Preferred_Medical_Provider__c
+ Contact.Income__c
+ School_Term__c.Active_Year__c
+ School_Term__c.Authorization_to_treat_minor__c
+ School_Term__c.Contract__c
+ School_Term__c.Current_Term__c
+ School_Term__c.Emergency_Preferred_Medical_Provider__c
+ School_Term__c.Evaluation_Consent__c
+ School_Term__c.Family_Income_Level__c
+ School_Term__c.Free_reduced_lunch__c
+ School_Term__c.Left_Program_Early_Date__c
+ School_Term__c.Left_Program_Early__c
+ School_Term__c.Media_Release__c
+ School_Term__c.Notes__c
+ School_Term__c.Parent_Email__c
+ School_Term__c.Parent_Packet_URL_Unsigned__c
+ School_Term__c.Parent_Packet_URL__c
+ School_Term__c.Parent_Packet__c
+ School_Term__c.Parent_Survey__c
+ School_Term__c.Parent__c
+ School_Term__c.Post_Survey__c
+ School_Term__c.Pre_Survey__c
+ School_Term__c.Program_Day__c
+ School_Term__c.School_Region__c
+ School_Term__c.School_Year__c
+ School_Term__c.School__c
+ School_Term__c.Start_Date__c
+ School_Term__c.Student_School_ID__c
+ School_Term__c.Student__c
+ School_Term__c.Waiver__c
+ TwilioConfig__c.AccountSid__c
+ TwilioConfig__c.ApplicationSid__c
+ TwilioConfig__c.AuthToken__c
+ TwilioConfig__c.Default_Send_Number__c
CustomField
- Class_Site_Login_Attempt__c
- TwilioConfig__c
- CustomObject
+ C501_ClassReg_ChildMobilePhone
+ C501_ClassReg_ChildSchoolName
+ C501_ClassReg_HHhomePhone
+ C501_ClassReg_ParentHomePhone
+ C501_ClassReg_ParentMobilePhone
+ C501_ClassReg_ParentWorkPhone
+ C501_RegSite_ChildEmail
+ C501_RegSite_ChildFirstName
+ C501_RegSite_ChildLastName
+ C501_RegSite_City
+ C501_RegSite_CodeMismatch
+ C501_RegSite_Continue
+ C501_RegSite_FamilyInformation
+ C501_RegSite_FirstName
+ C501_RegSite_InvalidEmailPhone
+ C501_RegSite_LeaveBlank
+ C501_RegSite_LeaveBlankEmail
+ C501_RegSite_Login
+ C501_RegSite_ParentEmail
+ C501_RegSite_ParentFirstName
+ C501_RegSite_ParentLastName
+ C501_RegSite_ProvidePhoneEmail
+ C501_RegSite_RememberMeDevice
+ C501_RegSite_SiteRegFormTitle
+ C501_RegSite_State
+ C501_RegSite_StreetAddress
+ C501_RegSite_StudentInformation
+ C501_RegSite_WeSentYouCode
+ C501_RegSite_Youarenotauthenticated
+ C501_RegSite_ZipCode
+ CustomLabel
+ Class_Site_Login_Attempt__c
TwilioConfig__c
- CustomSetting
+ CustomObject
Account.C501_Class_Registration_Site_HH_Acct
@@ -43,11 +109,17 @@
Class_Site_Login_Attempt__c-Class Site Login Attempt Layout
+ School_Term__c-School Term Layout
Layout
- ClassRegistration
- Site
+ Class_Site_Login_Attempt__c.All
+ School_Term__c.X2016_17_School_Terms
+ ListView
+
+
+ techbridgeLogo
+ StaticResource
45.0
diff --git a/src/staticresources/techbridgeLogo.resource b/src/staticresources/techbridgeLogo.resource
new file mode 100644
index 0000000..66e873a
Binary files /dev/null and b/src/staticresources/techbridgeLogo.resource differ
diff --git a/src/staticresources/techbridgeLogo.resource-meta.xml b/src/staticresources/techbridgeLogo.resource-meta.xml
new file mode 100644
index 0000000..c3d439f
--- /dev/null
+++ b/src/staticresources/techbridgeLogo.resource-meta.xml
@@ -0,0 +1,5 @@
+
+
+ Public
+ image/jpeg
+