Customer portal announcement failed to be updated
Platform Notice: Data Center - This article applies to Atlassian products on the Data Center platform.
Note that this knowledge base article was created for the Data Center version of the product. Data Center knowledge base articles for non-Data Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
Help center announcement subject and/or message failed to be updated when language support is used.
Depending on user preferred language in their user profile, the translated string defined for the respective language (if any) will be used.
Bug ticket is raised for this matter --
JSDSERVER-7076
-
Getting issue details...
STATUS
Environment
JSD 4.11 and above.
Diagnosis
To identify the announcement subject and message in the default language, you can use the SQL query below.
To validate if the translated announcement subject and/or message is replacing the update, check if the user preferred language/locale is identified with the following approach:
- Check the user preferred language from User profile, whom is failing to update the help center announcement.
Navigate to Jira Service Desk Project settings » Language support to see if the language identified from Step 1 is added to the list
OR
Run the following SQL query against the Jira database:SELECT DISTINCT"LOCALE" FROM "AO_C7F17E_LINGO_TRANSLATION";
Cause
With language support added to Jira Service Desk (from JSD 4.11 and above), we can translate:
request types (names, descriptions, fields, and groups)
portal names
announcements (login, help center, and portal)
customer notifications
When translated string is defined, updates to the announcement subject and/or message will be constantly overwritten by the translated string.
Workaround
- Check the user preferred language from User profile, whom is failing to customise the help center announcement.
- If the same language can be found in Project settings » Language support remove the translated string from the relevant announcement field so that the update can be reflected as user is customising it.
If the same language is locked in as default language or can't be found on the Language support page, changes can to be done via database.
Update global announcement subject/message:
- Stop Jira
- Backup the Jira database
Run the following SQL query against Jira database to identify the locale (e.g: there are different variant of English locale e.g: en-US, en-AU):
SELECT DISTINCT"LOCALE" FROM "AO_C7F17E_LINGO_TRANSLATION";
Run the following SQL query against Jira database to identify the ID of the Help Center announcement subject and/or message from the AO_C7F17E_LINGO_TRANSLATION table for the the locale you want to update.
Just as precaution, validate if the correct row is returned by checking that the CONTENT value matches the announcement that user is seeing.
Global announcement header:
SELECT * FROM "AO_C7F17E_LINGO_TRANSLATION" WHERE "LOCALE" = 'en-US' AND "LINGO_REVISION_ID" in ( SELECT MAX("ID") from "AO_C7F17E_LINGO_REVISION" WHERE "LINGO_ID" = ( SELECT "ID" from "AO_C7F17E_LINGO" WHERE "LOGICAL_ID" = 'global.jsds.announcement.helpCenter.header' ) );
Replace the LOCALE value with the one that user want to update (identified from Step 3).
Global announcement message:
SELECT * FROM "AO_C7F17E_LINGO_TRANSLATION" WHERE "LOCALE" = 'en-US' AND "LINGO_REVISION_ID" in ( SELECT MAX("ID") from "AO_C7F17E_LINGO_REVISION" WHERE "LINGO_ID" = ( SELECT "ID" from "AO_C7F17E_LINGO" WHERE "LOGICAL_ID" = 'global.jsds.announcement.helpCenter.message' ) );
Replace the LOCALE value with the one that user want to update (identified from Step 3).
Once we confirmed that the above results match the announcement subject and/or message that user is trying to modify, run the following UPDATE query against Jira database:
Update global announcement header:
UPDATE "AO_C7F17E_LINGO_TRANSLATION" SET "CONTENT" = '<NEW_SUBJECT_HERE>' WHERE "ID" = <ID>;
Replace <NEW_SUBJECT_HERE> with the new subject, and <ID> with the ID returned in the first query from Step 4.
Update global announcement message:
UPDATE "AO_C7F17E_LINGO_TRANSLATION" SET "CONTENT" = '<NEW_SUBJECT_HERE>' WHERE "ID" = <ID>;
Replace <NEW_MESSAGE_HERE> with the new message, and <ID> with the ID returned in the second query from Step 4.
- Start Jira
Update specific JSD project announcement subject/message:
- Stop Jira
- Backup the Jira database
Run the following SQL query against Jira database to identify the locale (e.g: there are different variant of English locale e.g: en-US, en-AU ):
SELECT DISTINCT"LOCALE" FROM "AO_C7F17E_LINGO_TRANSLATION";
Run the following SQL query against Jira database to identify the ID of the Help Center announcement subject and/or message from the AO_C7F17E_LINGO_TRANSLATION table for the the locale you want to update.
Just as precaution, validate if the correct row is returned by checking that the CONTENT value matches the announcement that user is seeing.
Global announcement header:
SELECT * FROM "AO_C7F17E_LINGO_TRANSLATION" WHERE "LOCALE" = 'en-US' AND "LINGO_REVISION_ID" in ( SELECT MAX("ID") from "AO_C7F17E_LINGO_REVISION" WHERE "LINGO_ID" = ( SELECT "ID" from "AO_C7F17E_LINGO" WHERE "LOGICAL_ID" = 'jsds.announcement.portal.<PORTAL_ID>.header' ) );
Replace <PORTAL_ID> with the customer portal ID and the LOCALE value with the one that user want to update (identified from Step 3).
Global announcement message:
SELECT * FROM "AO_C7F17E_LINGO_TRANSLATION" WHERE "LOCALE" = 'en-US' AND "LINGO_REVISION_ID" in ( SELECT MAX("ID") from "AO_C7F17E_LINGO_REVISION" WHERE "LINGO_ID" = ( SELECT "ID" from "AO_C7F17E_LINGO" WHERE "LOGICAL_ID" = 'jsds.announcement.portal.<PORTAL_ID>.message' ) );
Replace <PORTAL_ID> with the customer portal ID and the LOCALE value with the one that user want to update (identified from Step 3).
Once we confirmed that the above results match the announcement subject and/or message that user is trying to modify, run the following UPDATE query against Jira database:
Update global announcement header:
UPDATE "AO_C7F17E_LINGO_TRANSLATION" SET "CONTENT" = '<NEW_SUBJECT_HERE>' WHERE "ID" = <ID>;
Replace <NEW_SUBJECT_HERE> with the new subject, and <ID> with the ID returned in the first query from step 4).
Update global announcement message:
UPDATE "AO_C7F17E_LINGO_TRANSLATION" SET "CONTENT" = '<NEW_SUBJECT_HERE>' WHERE "ID" = <ID>;
Replace <NEW_MESSAGE_HERE> with the new message, and <ID> with the ID returned in the second query from step 4).
- Start Jira