Environment
- Helix Ultimate framework 2.2.10,
plugins/system/helixultimate/src/Platform/Helper.php - Also present on the current GitHub
masterbranch
The problem
In Helper::getTemplateId(), the multilingual branch adds a home condition that opens a parenthesis but never closes it:
$query->where($db->quoteName('home') . ' IN(' . $db->quote(Factory::getLanguage()->getTag()) . ', ' . $db->quote('1', false));
When Multilanguage is enabled, the database rejects the query, the try/catch swallows the exception, and the method silently returns 0.
In 2.2.10 nothing calls getTemplateId(), so there is no visible effect today, but any future caller on a multilingual site would get template ID 0 without an error.
Suggested fix
Close the parenthesis, or use the query builder's whereIn():
$query->whereIn($db->quoteName('home'), [Factory::getLanguage()->getTag(), '1'], ParameterType::STRING);
Or remove the method if it is no longer needed.
Impact
No current impact (the method is unused); a one-character fix that prevents a silent failure later.