Resetting/Clearing U-Tags
Also as a PSA it appears the max amount of U-Tags that can be set/called is 50 on an entire page load. Likely that is more than anyone would need but I did hit that ceiling. There didn't appear to be any warning/error/info that the limit was hit on the page as a comment or in the console but the Calendar Event just didn't work properly until I removed some of the U-Tags to go under that threshold. With a nice round number like 50 I can only assume that it is by design.
Let me know if any of this is unclear or if you have questions. Happy to provide any more information I can.
Thanks!
Comments
-
They are rendered before the page loads, but then so is the S80 tag. So the location doesn't matter, but the order on the page does. You have to set the session variable higher in the DOM than where you consume them. So it's easiest to set them as soon as you can. At the top of the page wrapper if possible.
The U tags also don't all evaluate before the S80 tags render, so the same variable can have more then one value on a page.
<body>
[[U0:FOO=bar]]
[[S80:FOO]] < -- Renders bar
...stuff...
[[U0:FOO= thud ]]
[[S80:FOO]] < -- Renders thud
</body>
BPM0 -
Brings up a good point, though. What if you don't know what tags are currently in use after a user moves from one event to another? I suppose one could always create a "reset" reusable that sets every possible variation to blank (yuck). Even then, it's tough to track down every little reusable that might have added an obscure U0 to the mix.
Besides that, setting [[U0:foo=]] doesn't actually remove [[S80:foo]], it just sets it to blank, right? Knowing things get wonky if you get too many S80's defined, it'd be good to be able to just nuke all of em.0 -
Brian Mucha:
They are rendered before the page loads, but then so is the S80 tag. So the location doesn't matter, but the order on the page does. You have to set the session variable higher in the DOM than where you consume them. So it's easiest to set them as soon as you can. At the top of the page wrapper if possible.
The U tags also don't all evaluate before the S80 tags render, so the same variable can have more then one value on a page.
<body>
[[U0:FOO=bar]]
[[S80:FOO]] < -- Renders bar
...stuff...
[[U0:FOO= thud ]]
[[S80:FOO]] < -- Renders thud
</body>
BPMThanks for the reply, Brian! I agree in theory that's how this would work but it doesn't in practice always.
So here are two examples of my customized Calendar Events (ticketed) in LO:
Example #1: http://act.autismspeaks.org/site/Calendar?id=103723&view=Detail
Example #2: http://act.autismspeaks.org/site/Calendar?id=103843&view=Detail
They both use the same wrapper and utilize a config file which is a reusable page that is called in by the wrapper dynamically using either the &id= parameter in the URL or a stored session variable called currentEventId.
If I open them both up in an Incognito window in separate tabs they work fine. But while both have been opened, refreshing one or the other the information I've set in the config file (or in this case the currentEventId) of one will bleed over to the other. Similar to how wrappers sometimes can do this while you're working on them in LO.
I think it all stems from currentEventId, which is set in the HEAD using:[[?xxnullx::x[[S334:id]]x::::
[[U0:currentEventId=[[S334:id]]]]
]]
The call that is then used to bring in the config reusable pages (which has S80:currentEventId (brackets included just wasn't sure if this system would allow them) appended to the end of the name) is bringing in the wrong config file. Since the ID is incorrect, the API is bringing in incorrect information as well. I would lean completely on S334:id if possible but when you error on a ticketing form or throughout the process it's possible the resulting URL won't have ID any longer.
So I guess after thinking about it... it's less about clearing out the U-tags necessarily and more about why would the code above not re-write currentEventId when there is an &id= in the URL. It's simply not working as I expected it to be.
Everything is called in via the HEAD includes in the wrapper. Here is the code:<!-- APP ID: [[S4]]-->
[[S51:reus_wrpr_2161_head]]
[[E51:special_event_config_[[S80:currentEventId]]]]
[[S51:reus_wrpr_2161_meta]]
First reus_wrpr_2161_head which includes the currentEventId setter as seen above. Then I load in the config file based off of currentEventId. I have also tried putting the config file include inside of reus_wrpr_2161_head at the very bottom. Same results. HEAD is loaded first, correct?
Thanks so much for the help and taking a look!
Maybe I'm overlooking something simple, I'm not sure. Just seems like it's solid in my eyes.
I also agree with Jeremy, it would be great if there was a way to reset S80's globally instead of needing resets.
0 -
> one will bleed over to the other.
That's because these are session variables. They are stored in the user's session, which exists across both pages for as long as the user's session is active. The last one set will be the state of that variable going forward. It does seem like refreshing either page should cause that page to overwrite your variable though.
I'd try to simplify everything and test. Get rid of the reusables and have two Pagebuilder pages that only set and display a variable.
Page 1
[[U0:FOO=bar]]
[[S80:FOO]]
Page 2
[[U0:FOO= thud]]
[[S80:FOO]]
Does this get confused in the same way?
Clearing unknown session vars could be done by ending the user's session. I think they way to do that would be to delete the user's session cookie.
BPM
0 -
Richard Murphy:
First reus_wrpr_2161_head which includes the currentEventId setter as seen above. Then I load in the config file based off of currentEventId. I have also tried putting the config file include inside of reus_wrpr_2161_head at the very bottom. Same results. HEAD is loaded first, correct?
Maybe I'm overlooking something simple, I'm not sure. Just seems like it's solid in my eyes.
Do you have a lot of session variables in play? I've seen stuff like this pop up when I'm getting too many set. Not sure whether the system is defining each S80 in a first-in-first-out way (and dropping the event ID because it was created early on), or if the system just starts ignoring U tags after reaching a certain number. Either way the effect is the same: if it decides your currentEventId is off the list, most other stuff is hosed too. I've even edited the page wrapper to have the S80 as the last line in HEAD and first line in body, and seen the final render give two different results.
If you suspect you're running out of vars, one potential workaround would be to use S51 instead of S80 to try and reduce how many you're creating. Set a cookie or something and then make the reusable into a conditional that first checks S334 and falls back to S50 to read a cookie. You could even add in any other tags that could return something, such as S120.
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®
- 2K 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
- 124 Ninja Secret Society
- 32 Blackbaud Raiser's Edge NXT® Receipting EAP
- 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