Donation Progress bar on Luminate API forms
I'm looking for a way to somehow gather the amount of donations that come in from several campaigns (there are 5 active campaigns that all contribute towards that year end goal) and display that in a dynamic progress bar I'll be creating on the API forms. Ideally I'd love use AJAX to do live updates of the amount coming in.
Is this even possible? I haven't seen any donation methods to get the amounts brought in via donation forms...just that users can donate. Would this potentially be a datasync API implementation? Something else? If I can just get donation amounts accross all campaigns from X date to Y date I can handle everything else myself.
Comments
-
Ian Banks:
As year end is approaching/here, we're looking to implement a progress bar on our API forms as part of the strategy to meet our year end goal.
I'm looking for a way to somehow gather the amount of donations that come in from several campaigns (there are 5 active campaigns that all contribute towards that year end goal) and display that in a dynamic progress bar I'll be creating on the API forms. Ideally I'd love use AJAX to do live updates of the amount coming in.
Is this even possible? I haven't seen any donation methods to get the amounts brought in via donation forms...just that users can donate. Would this potentially be a datasync API implementation? Something else? If I can just get donation amounts accross all campaigns from X date to Y date I can handle everything else myself.Hey there, Ian.
World T.E.A.M. Sports uses a custom progress meter on a Pagebuilder page that is dedicated to the fundraising campaign to display the results. You can look at it here: http://support.worldteamsports.org/site/PageServer?pagename=2016_ATCCO_Main
In the head of their Pagewrapper they have the script below. Please notice the [[S15:1301:goal]]. This is the S15 S-Tag with the campaign ID number and then calling out the goal for that fundraising campaign set at the donation campaign level under Fundraising > Donation Management > Edit your Campaign > Step 2 where you can set the campaign goal. In this case the "1301" in the code above is the ID number for the campaign. This may help if you can embed your progress meter on a Pagebuilder page.
The "amountRaised" variable can also be an S15 tag instead of the S42 tag that you see below, which relates to a TeamRaiser amount raised.
You may then possibly use the S130 Reverse Polish Notation S-Tag to combine several campaigns together to get a final number of what is ultimately raised across multiple fundraising campaigns.
<script type="text/javascript">
var amountRaised = "[[E42:[[?x1x9x::x[[S4]]x::[[S334:fr_id]]::[[S42:0:fr-id]]]]:dollars]]";
amountRaised = amountRaised.replace(/[^0-9\\.]+/g, "");
amountRaised = amountRaised *100
var goalAmount = "[[S15:1301:goal]]";
var actualPercentage = (amountRaised/goalAmount) * 100;
var percentage = (amountRaised/goalAmount) * 790;
//percentage is now in pixels
if (percentage < 1) percentage = 1;
function commaSeparateNumber(x){
x = x.toFixed(2);
return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, ",");
}
function updatePercentages() {
var items = document.getElementsByClassName('update-with-percentage');
if (items.length > 0) {
var theItem;
for (var x in items) {
theItem = items[x];
if (theItem && theItem.style)
theItem.style.width = percentage + "px";
}
}
var percentWrapper = document.getElementById('total-percent');
var moneyWrapper = document.getElementById('total-number');
if (percentWrapper) {
percentWrapper.firstChild.nodeValue = actualPercentage.toFixed(0);
}
if (actualPercentage.toFixed(0) > 70) {
document.getElementById("total").style.display = "none";
}
if (moneyWrapper) {
moneyWrapper.firstChild.nodeValue = commaSeparateNumber(amountRaised/100);
}
}
</script>Finally, you can use APIs on Pagebuilder pages or on a website external to the platform and for more documentation, please take a look at http://open.convio.com/
I hope you find this reply useful in what you are seeking to do.
Thanks and Happy Thanksgiving.
Will Hull
Internet Solutions Consultant (Luminate Online Deployments)
will.hull@blackbaud.com
0 -
Is there an API method for getting the total raised for a donation form? (Looking through the API docs and not seeing it.)
Thanks!0 -
Hey there, Kyle Booth. What you're looking for is Donation Campaign information. Unfortunately, at the donation form level, it is unable to track against a goal. However, outside of the donation form, at the campaign level, it is possible. There is some documentation that I know of that uses Angular.js to populate a progress meter that you might want to look at at https://www.npmjs.com/package/angular-luminate-utils#evaluating-template-tags-with-luminatetemplatetag
My colleague Noah Cooper was the person who put this page together and might have more insight into what code, specifically, you might need to get a progress meter like this to populate for you on your site via angular.js and APIs.
Also, if you are hosting this on a Luminate Online page to get the total raised, you can look at the S48, S43 and S42 codes for a TeamRaiser if that is what this total raised is for. Here is an S-Tag quick reference for you to view possible S-Tags that can populate information on a Luminate Online hosted page: https://www.blackbaud.com/files/support/helpfiles/luminate-online/help/luminateonline.html#../Subsystems/S-Tags/Content/S-Tags/S-Tags_Quick_Reference.html
E.g. for a TeamRaiser personal page, you might use the [[E48:[[S334:fr_id]]-[[S334:px]]:dollars]] code to generate the total raised for a personal page.
For a Team page, [[S43:0:goal-dollars]] will display the total amount raised by a team on the team page.
I hope you find this information helpful.
Thanks,
Will1 -
Thank you much Will Hull. I had not known about the angular package. Great stuff!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™
- 1 YourCause® from Blackbaud®
- 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
- 1.1K ARCHIVED FORUMS | Inactive and/or Completed EAPs
- 3 Blackbaud Staff Discussions
- 7.7K ARCHIVED FORUM CATEGORY [ID 304]
- 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