Organizing Designations in non-API Donation Form
Options
Has anyone found a way to organize donations in a standard (non-API) donation form?
Ideally, we'd like to group them (maybe by type or accounting code or name?) and show/hide based on dropdown select. So, a user selects "give to local affiliate" and only the Affiliate designation types show up. Then a user selects the state, and (probably based on designation naming convention) the user is then presented with affiliates within that state. We are dealing with over 7,000 designations and need them to be pulled automatically from the system, so a CSV or manual coding of dropdowns are not options.
Any creative solutions out there?
Ideally, we'd like to group them (maybe by type or accounting code or name?) and show/hide based on dropdown select. So, a user selects "give to local affiliate" and only the Affiliate designation types show up. Then a user selects the state, and (probably based on designation naming convention) the user is then presented with affiliates within that state. We are dealing with over 7,000 designations and need them to be pulled automatically from the system, so a CSV or manual coding of dropdowns are not options.
Any creative solutions out there?
Tagged:
0
Comments
-
So this would require some API and JavaScript work, even on a non-api form. Pulling the Gift Designations automatically from the system means using the API.
I would do this on a non-API form by hiding the regular designation picker with CSS, and presenting a stand-in picker consisting of three dropdowns that you build with html and JS. The value selected on the stand-in would then get copied into the hidden drop down when the submit button is clicked. (So from the form's perspective, the user simply chose a value from an unusably huge dropdown.)
http://open.convio.com/api/#donation_api.getDesignees_method.html
You can see that you only have Name, Type, Id (and Description) returned by the API call to work with. I don't think you can pull the Administrative Name, Accounting Code or Security Class. So I think your idea of using a naming convention is the only option, one field will need to hold two values. I also think that's going to be pretty unreliable, nothing on the Admin side will enforce or validate that - so mistakes will happen. So you'll get something like this out of the API (Ignoring some complications around Type Id.)
{ "typeId": "Local Affiliate", "name": "IL~Designation One", "id": "100001"},
{ "typeId": ""Local Affiliate", "name": "IL~Designation Two", "id": "100002"},
{ "typeId": ""Local Affiliate", "name": "CA~Designation Three","id": "100003"},
{ "typeId": ""Local Affiliate", "name": "CA~Designation Four", "id": "100004"},
{ "typeId": ""Local Affiliate", "name": "NY~Designation Five", "id": "100005"},
{ "typeId": ""National Affiliate", "name": "NY~Designation Six", "id": "100006"},
{ "typeId": ""National Affiliate", "name": "NY~Designation Seven", "id": "100007"},
Which you will need to parse into a JS object that you will be able to search.
var designations = []
designations[0] = ["Local Affiliate", "IL", "Designation One", "100001"];
designations[1] = ["Local Affiliate", "IL", "Designation Two", "100002"];
designations[2] = ["Local Affiliate", "CA", "Designation Three", "100003"];
designations[3] = ["Local Affiliate", "CA", "Designation Four", "100004"];
designations[4] = ["Local Affiliate", "NY", "Designation Five", "100005"];
designations[5] = ["National Affiliate", "NY", "Designation Six", "100006"];
designations[6] = ["National Affiliate", "NY", "Designation Seven", "100007"];
This is already getting to be a fairly complicated project. Do you do any work with JS? This is gonna need it!
Then the on change event on the Type dropdown would find all the appropriate keys, and use them to populate your State dropdown.
And then the on change event on State will populate the actual Gift Designation drop down with names and Ids.
And finally the form's on submit could take whatever was selected on your designation drop down and stick that value into the form's actual gift designation field.
Here's a quick idea on how you would populate the dropdowns based on the previous choice.
$("#TypePicker").change(function () {
var type = ($(this).val());
var state = ['Choose One'];
var stateLen;
for (var i = 0, len = designations.length; i < len; i++) {
if (designations[i][0] === type ) {
stateLen = state.length + 1
state[stateLen] = designations[i][1];
break;
}
}
});
This is all pretty rough. We can build on this if it seems like something you would build.
BPM0 -
Brian --
Thanks for the reply! This is actually pretty much in line with what we were expecting it to look like. And yes, it is going to be a bear!
I was hoping someone had done something similar and worked out the concept. I know at the BBCon in Austin, Noah presented a donation form that handled designations very nicely, but I don't remember how it was done.
I guess we'll see what we can do with the API and Angular. Or, maybe you or someone else will chime in with a plug and play solution??????0
Categories
- All Categories
- Shannon parent
- shannon 2
- shannon 1
- 21 Advocacy DC Users Group
- 14 BBCRM PAG Discussions
- 89 High Education Program Advisory Group (HE PAG)
- 28 Luminate CRM DC Users Group
- 8 DC Luminate CRM Users Group
- Luminate PAG
- 5.9K Blackbaud Altru®
- 58 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 409 bbcon®
- 2.1K Blackbaud CRM™ and Blackbaud Internet Solutions™
- donorCentrics®
- 1.1K Blackbaud eTapestry®
- 2.8K Blackbaud Financial Edge NXT®
- 1.1K Blackbaud Grantmaking™
- 527 Education Management Solutions for Higher Education
- 1 JustGiving® from Blackbaud®
- 4.6K Education Management Solutions for K-12 Schools
- Blackbaud Luminate Online & Blackbaud TeamRaiser
- 16.4K Blackbaud Raiser's Edge NXT®
- 4.1K SKY Developer
- 547 ResearchPoint™
- 151 Blackbaud Tuition Management™
- 61 everydayhero
- 3 Campaign Ideas
- 58 General Discussion
- 115 Blackbaud ID
- 87 K-12 Blackbaud ID
- 6 Admin Console
- 949 Organizational Best Practices
- 353 The Tap (Just for Fun)
- 235 Blackbaud Community Feedback Forum
- 55 Admissions Event Management EAP
- 18 MobilePay Terminal + BBID Canada EAP
- 36 EAP for New Email Campaigns Experience in Blackbaud Luminate Online®
- 109 EAP for 360 Student Profile in Blackbaud Student Information System
- 41 EAP for Assessment Builder in Blackbaud Learning Management System™
- 9 Technical Preview for SKY API for Blackbaud CRM™ and Blackbaud Altru®
- 55 Community Advisory Group
- 46 Blackbaud Community Ideas
- 26 Blackbaud Community Challenges
- 7 Security Testing Forum
- 3 Blackbaud Staff Discussions
- 1 Blackbaud Partners Discussions
- 1 Blackbaud Giving Search™
- 35 EAP Student Assignment Details and Assignment Center
- 39 EAP Core - Roles and Tasks
- 59 Blackbaud Community All-Stars Discussions
- 20 Blackbaud Raiser's Edge NXT® Online Giving EAP
- Diocesan Blackbaud Raiser’s Edge NXT® User’s Group
- 2 Blackbaud Consultant’s Community
- 43 End of Term Grade Entry EAP
- 92 EAP for Query in Blackbaud Raiser's Edge NXT®
- 38 Standard Reports for Blackbaud Raiser's Edge NXT® EAP
- 12 Payments Assistant for Blackbaud Financial Edge NXT® EAP
- 6 Ask an All Star (Austen Brown)
- 8 Ask an All-Star Alex Wong (Blackbaud Raiser's Edge NXT®)
- 1 Ask an All-Star Alex Wong (Blackbaud Financial Edge NXT®)
- 6 Ask an All-Star (Christine Robertson)
- 21 Ask an Expert (Anthony Gallo)
- Blackbaud Francophone Group
- 22 Ask an Expert (David Springer)
- 4 Raiser's Edge NXT PowerUp Challenge #1 (Query)
- 6 Ask an All-Star Sunshine Reinken Watson and Carlene Johnson
- 4 Raiser's Edge NXT PowerUp Challenge: Events
- 14 Ask an All-Star (Elizabeth Johnson)
- 7 Ask an Expert (Stephen Churchill)
- 2025 ARCHIVED FORUM POSTS
- 322 ARCHIVED | Financial Edge® Tips and Tricks
- 164 ARCHIVED | Raiser's Edge® Blog
- 300 ARCHIVED | Raiser's Edge® Blog
- 441 ARCHIVED | Blackbaud Altru® Tips and Tricks
- 66 ARCHIVED | Blackbaud NetCommunity™ Blog
- 211 ARCHIVED | Blackbaud Target Analytics® Tips and Tricks
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- Luminate CRM DC Users Group
- 225 ARCHIVED | Blackbaud eTapestry® Tips and Tricks
- 1 Blackbaud eTapestry® Know How Blog
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)
- 1 Blackbaud K-12 Education Solutions™ Blog
- 280 ARCHIVED | Mixed Community Announcements
- 3 ARCHIVED | Blackbaud Corporations™ & Blackbaud Foundations™ Hosting Status
- 1 npEngage
- 24 ARCHIVED | K-12 Announcements
- 15 ARCHIVED | FIMS Host*Net Hosting Status
- 23 ARCHIVED | Blackbaud Outcomes & Online Applications (IGAM) Hosting Status
- 22 ARCHIVED | Blackbaud DonorCentral Hosting Status
- 14 ARCHIVED | Blackbaud Grantmaking™ UK Hosting Status
- 117 ARCHIVED | Blackbaud CRM™ and Blackbaud Internet Solutions™ Announcements
- 50 Blackbaud NetCommunity™ Blog
- 169 ARCHIVED | Blackbaud Grantmaking™ Tips and Tricks
- Advocacy DC Users Group
- 718 Community News
- Blackbaud Altru® Hosting Status
- 104 ARCHIVED | Member Spotlight
- 145 ARCHIVED | Hosting Blog
- 149 JustGiving® from Blackbaud® Blog
- 97 ARCHIVED | bbcon® Blogs
- 19 ARCHIVED | Blackbaud Luminate CRM™ Announcements
- 161 Luminate Advocacy News
- 187 Organizational Best Practices Blog
- 67 everydayhero Blog
- 52 Blackbaud SKY® Reporting Announcements
- 17 ARCHIVED | Blackbaud SKY® Reporting for K-12 Announcements
- 3 Luminate Online Product Advisory Group (LO PAG)
- 81 ARCHIVED | JustGiving® from Blackbaud® Tips and Tricks
- 1 ARCHIVED | K-12 Conference Blog
- Blackbaud Church Management™ Announcements
- ARCHIVED | Blackbaud Award Management™ and Blackbaud Stewardship Management™ Announcements
- 1 Blackbaud Peer-to-Peer Fundraising™, Powered by JustGiving® Blogs
- 39 Tips, Tricks, and Timesavers!
- 56 Blackbaud Church Management™ Resources
- 154 Blackbaud Church Management™ Announcements
- 1 ARCHIVED | Blackbaud Church Management™ Tips and Tricks
- 11 ARCHIVED | Blackbaud Higher Education Solutions™ Announcements
- 7 ARCHIVED | Blackbaud Guided Fundraising™ Blog
- 2 Blackbaud Fundraiser Performance Management™ Blog
- 9 Foundations Events and Content
- 14 ARCHIVED | Blog Posts
- 2 ARCHIVED | Blackbaud FIMS™ Announcement and Tips
- 59 Blackbaud Partner Announcements
- 10 ARCHIVED | Blackbaud Impact Edge™ EAP Blogs
- 1 Community Help Blogs
- Diocesan Blackbaud Raiser’s Edge NXT® Users' Group
- Blackbaud Consultant’s Community
- Blackbaud Francophone Group
- 1 BLOG ARCHIVE CATEGORY
- Blackbaud Community™ Discussions
- 8.3K Blackbaud Luminate Online® & Blackbaud TeamRaiser® Discussions
- 5.7K Jobs Board