Custom i18n for Server and Data Center versions
It’s possible to localize Company Calendar for Jira to any language assuming that the language is supported by your Server or Data Center Jira version.
1. Download the latest Server or Data Center version from Atlassian marketplace: https://marketplace.atlassian.com/apps/1217938/company-calendar-for-jira/version-history. You should download the file company-calendar-VERSION.obr.
2. Extract the downloaded folder, using zip archive program on your computer. You might need to change the extension for the downloaded folder to "zip" if using Windows option "Extract all..".
3. Extract all the files into a new folder.
4. Go to the folder where you've extracted the files and extract the file with "jar" extension. (company-calendar-VERSION.jar). Again, you might need to change the extension for the downloaded folder to "zip", if using Windows option "Extract all..". .
5. Then, open i18n folder.
6. Now, you need to create a file named according to the language you want to add. We suggest to copy English calendar.properties, put it into i18n folder and rename it to calendar_XX.properties where XX is a language code. Please check here https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes for appropriate ISO 639-1 code.
The same has to be repeated for the file ccj.properties
In case you are using the language that is not supported by Jira, you can simply edit the files calendar.properties and ccj.properties instead of making their copies.
7. Translate each property from the file, using a java properties editor. If you have Eclipse you can utilize Properties File Editor. Alternatively, you can use convenient tolls like https://java-properties-editor.com/ or https://github.com/jcbvm/i18n-editor. Please note that editing via standard text editor would not work as the property files need to be in ISO-8859-1 where all non-Latin characters are represented by \uXXXX where XXXX is a special code. You can use a standard editor. Only then, you will have to convert all the content using one of the online converters like: https://coderstoolbox.net/string/#!encoding=js&action=encode&charset=iso_8859_1 or https://itpro.cz/juniconv/
8. Some properties have {0}, {1}... text. These are the places where information from the application is injected. For example, for this property:
companycalendar.common.labels.sureDelete=Are you sure you want to delete the {0}?
{0} is replaced by the name of an entity being deleted. So, please be sure to position {X} accordingly.
9. Make sure that all properties are translated. As rule of a thumb, you can check that your resulting files have the same number of lines as calendar.properties and ccj.properties files accordingly.
10. The property calendar.common.locale shall have a value based on the language code you require. Please refer to the fourth column, starting left, in the table to check the correct code. For instance, the code for Ukrainian language is "uk".
11. Once edited, the files that were extracted from "jar" file have to be compressed back. Once compressed, change the extension of the file to "jar". Then, the files extracted from "obr" folder have to be also compressed back. Change the file extension to "obr". Please make sure that updated "obr" folder contains edited "jar" file. Then, rename the archive to company-calendar-VERSION-XX.obr where XX is your language code. Please keep the created archive for your future references. Now, you can install the translated version via file upload. Please see: https://confluence.atlassian.com/upm/installing-add-ons-273875715.html
12. Please note that updating Company Calendar for Jira to a new version will require the file translation review and editing, based on the added text in the new version.