變更AEM Forms工作區使用者介面的地區設定 changing-the-locale-of-aem-forms-workspace-user-interface
AEM Forms工作區提供英文、法文、德文和日文的立即可用支援。 此外,它還能將AEM Forms工作區使用者介面本地化為任何其他語言。
若要將AEM Forms工作區使用者介面本地化為您選取的語言:
- 將AEM Forms工作區的文字當地語系化。
- 將收合的類別、佇列和程式當地語系化。
- 將日期選擇器本地化
在執行上述步驟之前,請確定您遵循列於AEM Forms工作區自訂的一般步驟中的步驟。
本地化文字 localizing-text
執行以下步驟,以便您可以新增對語言 New 和瀏覽器地區設定代碼 nw 的支援。
-
登入CRXDE Lite。
CRXDE Lite的預設URL為https://'[server]:[port]'/lc/crx/de/index.jsp。 -
導覽至位置
apps/ws/locales並建立資料夾nw. -
將檔案
translation.json從位置/apps/ws/locales/en-US複製到位置/apps/ws/locales/nw。 -
導覽至
/apps/ws/locales/nw並開啟translation.json進行編輯。 對translation.json檔案進行地區設定的特定變更。下列範例包含AEM Forms工作區英文與法文地區設定的translation.json檔案。
本地化收合的類別、佇列和程式 localizing-collapsed-categories-queues-and-processes
AEM Forms工作區使用影像來顯示類別、佇列和程式的標題。 您需要開發套件將這些標頭當地語系化。 如需有關建立開發套件的詳細資訊,請參閱建置AEM Forms工作區程式碼。
在下列步驟中,假設新的當地語系化影像檔案為 Categories_nw.png、Queue_nw.png 和 Processes_nw.png。 建議的影像寬度應設為19畫素。
https://'[server]:[port]'/lc/libs/ws/Locale.html。
若要將影像當地語系化,請執行下列步驟:
-
使用WebDAV使用者端,將影像檔案置於 /apps/ws/images 資料夾中。
-
瀏覽至 /apps/ws/css。 開啟 newStyle.css 進行編輯並新增下列專案:
code language-css #categoryListBar .content.nw { background: #3e3e3e url(../images/Categories_nw.png) no-repeat 10px 10px; } #filterListBar .content.nw { background: #3e3e3e url(../images/Queues_nw.png) no-repeat 10px 10px; } #processNameListBar .content.nw { background: #3e3e3e url(../images/Processes_nw.png) no-repeat 10px 10px; } -
執行Workspace Customization文章中列出的所有語意變更。
-
導覽至 js/runtime/utility 資料夾,並開啟 usersession.js 檔案進行編輯。
-
找出原始程式碼區塊中列出的程式碼,並新增條件 lang!將'nw'==入if陳述式:
code language-javascript // Orignal code setLocale = function () { var lang = $.trim(i18n.lng()); if (lang === null || lang === '' || (lang !== 'fr-FR' && lang !== 'de-DE' && lang !== 'ja-JP')) { window.lcWorkspace.locale = 'en-US'; } else { window.lcWorkspace.locale = lang; } }code language-javascript //new code setLocale = function () { var lang = $.trim(i18n.lng()); if (lang === null || lang === '' || (lang !== 'fr-FR' && lang !== 'de-DE' && lang !== 'ja-JP' && lang !== 'nw')) { window.lcWorkspace.locale = 'en-US'; } else { window.lcWorkspace.locale = lang; } }
將日期選擇器本地化 localizing-date-picker
您需要開發套件才能本地化 日期選擇器 API。 如需建立開發套件的詳細資訊,請參閱建立AEM Forms工作區程式碼。
-
下載並解壓縮jQuery UI套件,瀏覽至 <解壓縮的jquery UI套件>\jquery-ui-1.10.2.zip\jquery-ui-1.10.2\ui\i18n。
-
將地區設定代碼的jquery.ui.datepicker-nw.js檔案複製到apps/ws/js/libs/jqueryui,並對檔案進行地區設定特有的變更。
-
導覽至
apps/ws/js並開啟jquery.ui.datepicker-nw.js檔案進行編輯。 -
在main.js檔案中,為
jquery.ui.datepicker-nw.js.建立別名。為jquery.ui.datepicker-nw.js檔案建立別名的程式碼為:code language-javascript jqueryuidatepickernw : pathprefix + 'libs/jqueryui/jquery.ui.datepicker-nw' -
使用別名
jqueryuidatepickernw,將jquery.ui.datepicker-nw.js檔案納入所有使用日期選擇器的檔案中。 日期選擇器用於下列檔案中:js/runtime/views/outofoffice.jsjs/runtime/views/searchtemplatedetails.js
下列範常式式碼顯示如何新增jquery.ui.datepicker-nw.js專案:
code language-json //Original Code define([ 'jquery', 'underscore', 'backbone', 'jqueryui', 'jqueryuidatepickerja', 'jqueryuidatepickerde', 'jqueryuidatepickerfr', 'slimscroll', 'usersearchview', 'logmanagerutil', 'loggerutil' ], function ($, _, Backbone, jQueryUI, jQueryUIDatePickerJA, jQueryUIDatePickerDE, jQueryUIDatePickerFR, slimScroll, UserSearch, LogManager, Logger) {code language-json // Code with Date Picker alias for new language define([ 'jquery', 'underscore', 'backbone', 'jqueryui', 'jqueryuidatepickerja', 'jqueryuidatepickerde', 'jqueryuidatepickerfr', 'jqueryuidatepickernw', // Date Picker alias 'slimscroll', 'usersearchview', 'logmanagerutil', 'loggerutil' ], function ($, _, Backbone, jQueryUI, jQueryUIDatePickerJA, jQueryUIDatePickerDE, jQueryUIDatePickerFR, jQueryUIDatePickerNW, slimScroll, UserSearch, LogManager, Logger) { -
在使用日期選擇器API的所有檔案中,變更預設的日期選擇器API設定。 日期選擇器API用於以下檔案:
- apps\ws\js\runtime\views\searchtemplatedetails.js
- apps\ws\js\runtime\views\outofoffice.js
變更下列程式碼以新增地區設定:
code language-javascript if (locale === 'ja-JP') { $.datepicker.setDefaults($.datepicker.regional.ja); } else if (locale === 'de-DE') { $.datepicker.setDefaults($.datepicker.regional.de); } else if (locale === 'fr-FR') { $.datepicker.setDefaults($.datepicker.regional.fr); } else { $.datepicker.setDefaults($.datepicker.regional['']); }code language-javascript if (locale === 'ja-JP') { $.datepicker.setDefaults($.datepicker.regional.ja); } else if (locale === 'de-DE') { $.datepicker.setDefaults($.datepicker.regional.de); } else if (locale === 'fr-FR') { $.datepicker.setDefaults($.datepicker.regional.fr); } else if (locale === 'nw') { $.datepicker.setDefaults($.datepicker.regional.nw); } else { $.datepicker.setDefaults($.datepicker.regional['']); }