HOC4 Release Notes 1.23.0
LLH4v1.23.0 (Released: 04/16/2026)
Overview
This release fixes Account Overview display issues, timezone drift in forms, missing team email functionality, activation code generation failures, block save limits with profiles, multi-select UI switching to single-select when auto-suggest is enabled, and incorrect Salesforce namespace prefix references on migrated instances. It also adds timezone/locale/org info to Global Resource Management, an alternative post-install mechanism for the HOC4 unlocked package, a "View Components" button for the Packaging Manager, counter SOQL functionality for listing CMS, alphabetized waiver ordering and search, alphabetized facets, a 10-row accordion limit increase, redesigned CMS configuration screens (Quick Check-In & Served Hours Calculation, Visual Settings, Export Form Data, QR Generator, and Advanced Registration), continued work on the AI-assisted CMS data migration tool (Part IV), translation pushes, Public Site email SiteUrl normalization, performance improvements for async task handling, and security hardening for unauthenticated admin endpoints and firewall bypass attack vectors.
🐞 Bug Fixes
LHH-23060 – Account Overview "For" Field Not Displaying Logged-In User Name
- What was the issue?
- On the Account Overview page, the name of the logged-in user was not displaying next to "Account Overview For." This functionality existed in HOC3 but was missing in HOC4, causing confusion for customers who expected to see who was logged in.
- What was solved?
- We corrected the Account Overview page in HOC4 to display the logged-in user's name next to the "Account Overview For" label, matching the HOC3 behavior.
Result: The Account Overview page now correctly displays the name of the currently logged-in user.
LHH-23096 – Timezone in Form Keeps Changing on Each Open
- What was the issue?
- Every time a user opened a form with a timezone-enabled field, the displayed time changed. Opening the edit form repeatedly would cause the time to drift, making the data unreliable.
- What was solved?
- We corrected the timezone handling logic so that opening a form no longer reapplies the timezone conversion to an already-converted value. The time is now displayed consistently regardless of how many times the form is opened.
Result: Timezone values in forms remain stable across multiple views and edits.
LHH-23099 – Missing "Email Team Members" Functionality in HOC4
- What was the issue?
- In HOC3, team captains could email their team members directly from their team account page. This functionality was missing in HOC4, leaving team captains without a way to communicate with their team through the platform.
- What was solved?
- We added the "Email Team Members" functionality to the HOC4 team management interface, restoring the capability that existed in HOC3.
Result: Team captains can now email their team members directly from their team page in HOC4.
LHH-23103 – Activation Code Generation Failing (Critical)
- What was the issue?
- A customer was unable to create a new activation code for a new review. The issue persisted across multiple browsers (Chrome and Edge) and lasted over an hour, blocking the customer's workflow.
- What was solved?
- We identified and resolved the underlying issue preventing activation code generation, restoring the ability for administrators to create new activation codes.
Result: Activation codes can now be generated reliably across all supported browsers.
LHH-23133 – Error When Saving Block with Too Many Profiles Selected
- What was the issue?
- Attempting to save a block with a large number of profiles selected produced an error. There appeared to be an undocumented limit on the number of profiles that could be associated with a block.
- What was solved?
- We increased the capacity for profile selections on blocks and resolved the save error that occurred when exceeding the previous limit.
Result: Blocks can now be saved with a larger number of profiles without errors.
LHH-23142 – Multi-Select UI Switches to Single-Select When Auto-Suggest Is Enabled
- What was the issue?
- In forms, when the Auto-Suggest feature was enabled on a multi-select field, the UI incorrectly switched to a single-select picklist, preventing users from selecting multiple options.
- What was solved?
- We corrected the form rendering logic to maintain the multi-select UI when Auto-Suggest is enabled, ensuring both features work together as intended.
Result: Multi-select fields now retain their multi-select behavior when Auto-Suggest is enabled.
LHH-22795 – Errors on Migrated Instance Using Wrong Salesforce Namespace Prefix
- What was the issue?
- A customer instance migrated from HOC3 to HOC4 was generating Salesforce errors because some SOQL queries still referenced the old HOC__ namespace prefix (for objects like HOC__Skill__c) and the LlamaPi__ prefix for HOC4 objects that didn't exist on the instance (like LlamaPi__Connection__c and LlamaPi__Primary_Phoneno__c). These mismatched references caused ForceException errors in the REST service logs.
- What was solved?
- We corrected the namespace prefix references to use the proper prefix for the customer's installed package, ensuring all SOQL queries reference the correct Salesforce objects and fields.
Result: The migrated instance no longer generates namespace-related Salesforce errors, and all queries use the correct prefix.
🆕 New Features / Enhancements
LHH-23034 – Timezone, Locale, and Salesforce Org Info Added to Global Resource Management
- What was the issue?
- CMS Admins had no way to view or update the Salesforce Org ID, Timezone, and Locale from within the CMS. These values were not visible in the Global Resource Management section.
- What was solved?
- We added a new "System Information" section to the Global Resource Management page that displays the Salesforce Org ID, Timezone, and Locale. Admins can now update the Timezone and Locale directly from this page.
Result: CMS Admins can view and update Timezone and Locale settings directly in Global Resource Management without needing to access Salesforce directly.
LHH-20865 – Packaging Manager "View Components" Button
- What was the issue?
- After installing a Packaging Manager package, users had to manually track and update form IDs because there was no way to view the mapping between source form IDs and newly assigned form IDs.
- What was solved?
- We added a "View Components" button to the Packaging Manager that displays the list of installed components with their source form IDs and new form IDs, with the option to export the list to a CSV file.
Result: Users can now view and export the component mapping after package installation, eliminating the need for manual form ID tracking.
LHH-22504 – Counter Functionality SOQL for Listing CMS Metrics
- What was the issue?
- The listing CMS counter functionality needed a SOQL query to retrieve metrics data from Salesforce.
- What was solved?
- We created the SOQL query to retrieve the required metrics data for the counter functionality in listing CMS blocks.
Result: The counter functionality in listing CMS blocks can now retrieve and display metrics data from Salesforce.
LHH-22684 / LHH-23019 – Alphabetized Waivers and Waiver Search Bar in Advanced Registrations
- What was the issue?
- Waivers in CMS → AddOns → Advanced Registrations → Opportunity Signups were not alphabetized, making it difficult for customers with large numbers of waivers to find specific ones. Additionally, there was no search capability.
- What was solved?
- We alphabetized the waiver list in Advanced Registrations and added a search bar to allow users to quickly find specific waivers by name.
Result: Waivers are now displayed in alphabetical order, and a search bar allows quick filtering of waivers by name.
LHH-23057 – Alphabetized Facets in Listing Blocks
- What was the issue?
- Facets displayed on listing block pages were not sorted in any particular order, making it harder for users to find specific filter options.
- What was solved?
- We updated the facet display to sort options alphabetically within each facet section.
Result: Facets on listing block pages are now displayed in alphabetical order for easier navigation.
LHH-23150 – Accordion 10-Row Limit Increased
- What was the issue?
- The accordion listing block had a 10-row limit, which was insufficient for customers with more than 10 items (e.g., FAQ pages with 16 questions). Additionally, when creating additional accordion blocks to work around the limit, the color styling from code injection was not applying correctly.
- What was solved?
- We increased the accordion row limit and resolved the color styling issue so that accordion blocks properly inherit configured styling.
Result: Accordion blocks now support more than 10 rows, and color styling is applied correctly across all accordion instances.
LHH-22784 – Performance Optimization for Async Task Handling
- What was the issue?
- The HOCPublicSite application exhibited performance issues caused by excessive thread blocking in asynchronous task execution paths, particularly in Task.GetResultCore, REST service calls, and the CMS Form controller.
- What was solved?
- We optimized the asynchronous task handling in the affected methods to reduce thread blocking and improve overall application responsiveness.
Result: Improved performance and reduced thread blocking in Public Site operations, particularly on form loading and Salesforce field retrieval.
LHH-23084 – Hardening Against Attack Vectors Not Stopped by Firewall
- What was the issue?
- Attack attempts were reaching the application layer through PHP endpoint requests, resulting in NullReferenceException errors in the East region. The WAF/firewall was not blocking these requests.
- What was solved?
- We implemented application-level defenses to handle and block these attack patterns, preventing them from causing application errors regardless of firewall configuration.
Result: The application now gracefully handles and blocks attack attempts that bypass the firewall, preventing application errors from malicious requests.
LHH-22999 / LHH-23000 / LHH-23001 / LHH-23145 – CWA Translation Pushes (Dutch, Swedish, German, Danish)
- What was the issue?
- Cycling Without Age (CWA) needed updated translations pushed to their instance for Dutch, Swedish, and German, as well as a refresh of Danish translations to account for newly added blocks and forms.
- What was solved?
- We used the translation tool to generate and push Dutch, Swedish, and German translations, and refreshed the Danish translation data to include all new blocks and forms.
Result: CWA now has up-to-date translations in Dutch, Swedish, German, and Danish across all blocks and forms.
LHH-23002 / LHH-23017 – AI-Assisted CMS Data Migration Tool (Part IV)
- What was the issue?
- The AI-assisted metadata migration tool needed to be extended to support additional Salesforce metadata types beyond Reports, including Dashboards, Flows, Layouts, and other metadata types.
- What was solved?
- We extended the sf-metadata-migrator rule engine to support additional Salesforce metadata types, leveraging documentation from manual migration efforts to inform the rule configurations.
Result: The metadata migration tool now supports a broader range of Salesforce metadata types, further automating the HOC3 to HOC4 migration process.
Redesigned CMS Configuration Screens
The following CMS configuration screens were redesigned with updated layouts, reorganized settings by priority, and updated visual styles:
- LHH-23073 – Quick Check-In & Served Hours Calculation Settings
- LHH-23080 – Visual Settings Page Settings
- LHH-23081 – Export Form Data Page Settings
- LHH-23087 – QR Generator Page Settings
- LHH-23088 – Advanced Registration Settings
Result: These configuration screens now have cleaner, more intuitive layouts consistent with the new CMS design standards.
LLH4v1.23.1 (Released: 04/24/2026)
Overview
This hotfix release resolves issues with form "Add New Record" not working, calendar hover popups displaying off-screen, form updates failing silently, inability to add conditions in Form Enforce Session Parameters, Partner Portal managing organization default and search issues, image upload not saving on ALP contact registration, location form submissions not reflecting without page refresh, and modernizes the Personal Information page look and feel.
🐞 Bug Fixes
LHH-23195 – "Add New Record" from Form Not Working
- What was the issue?
- On forms configured with "Add New" functionality (e.g., Add Reservation, Add Team, Add Org), clicking the button produced no response. Neither existing forms nor newly created ones would trigger the expected action.
- What was solved?
- We resolved the underlying issue preventing the "Add New Record" action from executing on forms.
Result: The "Add New Record" button on forms now works correctly, allowing users to create new reservations, teams, and organizations.
LHH-23198 – Listing Block Calendar Hover Popup Displaying Off-Screen
- What was the issue?
- When hovering over an opportunity on the right side of a calendar view in a listing block, the popup detail card always appeared to the right of the date column, causing it to display outside the browser viewport for dates in the Thursday, Friday, and Saturday columns.
- What was solved?
- We updated the hover popup positioning logic so that for dates on the right side of the calendar (Thursday through Saturday), the popup displays to the left of the date column instead of the right.
Result: Calendar hover popups now remain within the browser viewport regardless of the day column, improving usability.
LHH-23199 – Form Update Does Not Save Changes
- What was the issue?
- When editing a record through a form (e.g., removing a Partner Affiliation or Region field value), the update appeared to complete but the changes were not actually saved to Salesforce.
- What was solved?
- We fixed the form update logic to properly process and submit field value removals and modifications to Salesforce.
Result: Form updates now correctly save all changes, including field value removals.
LHH-23210 – Form Enforce Session Parameters Not Allowing Conditions to Be Added (Critical)
- What was the issue?
- In the Form Enforce Session Parameters configuration, users were unable to add new conditions. The UI did not respond when attempting to add a condition, blocking the ability to configure session-based form enforcement rules.
- What was solved?
- We resolved the UI issue preventing condition addition in the Form Enforce Session Parameters configuration.
Result: Users can now add conditions in Form Enforce Session Parameters as expected.
LHH-23213 – Partner Portal Managing Organization Default and Search Not Working
- What was the issue?
- When a user accessed the Partner Portal, the system prompted them to select a managing organization every time instead of defaulting to their organization. Additionally, searching for the organization by name (e.g., "HandsOn Nashville") did not return results — typing partial names failed to filter the list correctly.
- What was solved?
- We corrected the managing organization lookup and search functionality so the organization can be found via partial name search, and improved the default selection behavior.
Result: The Partner Portal managing organization search now works correctly, and users can find their organization by typing partial names.
LHH-23260 – ALP Contact Registration Image Upload Not Saving to Salesforce
- What was the issue?
- During ALP (Affiliate Listing Page) contact registration, after uploading an image through the form, the image was not saved to the corresponding field in Salesforce when the Contact record was created.
- What was solved?
- We corrected the image upload handling during ALP contact registration to properly save the uploaded image to the Salesforce Contact record.
Result: Images uploaded during ALP contact registration are now correctly saved to the Contact record in Salesforce.
LHH-23270 – Add Location Form Not Reflecting New Location Without Page Refresh
- What was the issue?
- When using the "Add New" button for a location field on a form, the user could add a new location and submit it, but the newly added location would not appear on the form until the page was manually refreshed.
- What was solved?
- We updated the form to dynamically refresh the location list after a new location is successfully added, so it appears immediately without requiring a page refresh.
Result: Newly added locations now appear on the form immediately after submission.
🆕 New Features / Enhancements
LHH-23138 – Personal Information Page Modernized to Form-Based Layout
- What was the issue?
- The Personal Information settings page was still using the old HOC3 look and feel, which was inconsistent with the modern HOC4 design language.
- What was solved?
- We converted the Personal Information page to a form-based layout consistent with the HOC4 design standards, replacing the legacy HOC3 styling.
Result: The Personal Information page now matches the modern HOC4 look and feel, providing a consistent user experience.
0 Comments
Add your comment