List of usage examples for com.liferay.portal.kernel.util LocalizationUtil setPreferencesValue
public static void setPreferencesValue(PortletPreferences preferences, String key, String languageId, String value) throws Exception
From source file:com.fmdp.webform.action.ConfigurationActionImpl.java
License:Open Source License
@Override public void processAction(PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { validateFields(actionRequest);// ww w.j a va2s. c o m // boolean uploadToDM = ParamUtil.getBoolean(actionRequest, // "uploadToDM"); // String uploadDiskDir = ParamUtil.getString( // actionRequest, "uploadDiskDir"); long newFolderId = ParamUtil.getLong(actionRequest, "newFolderId"); if (!SessionErrors.isEmpty(actionRequest)) { return; } Locale defaultLocale = LocaleUtil.getDefault(); String defaultLanguageId = LocaleUtil.toLanguageId(defaultLocale); boolean updateFields = ParamUtil.getBoolean(actionRequest, "updateFields"); String portletResource = ParamUtil.getString(actionRequest, "portletResource"); PortletPreferences preferences = actionRequest.getPreferences(); // preferences.setValue("uploadToDisk", String.valueOf(uploadToDisk)); // preferences.setValue("uploadDiskDir", uploadDiskDir); LocalizationUtil.setLocalizedPreferencesValues(actionRequest, preferences, "title"); LocalizationUtil.setLocalizedPreferencesValues(actionRequest, preferences, "description"); if (updateFields) { int i = 1; boolean uploadToDisk = ParamUtil.getBoolean(actionRequest, "uploadToDisk"); boolean uploadToDM = ParamUtil.getBoolean(actionRequest, "uploadToDM"); boolean uploadIsWanted = uploadToDisk || uploadToDM; boolean isFileUpload = false; int howManyFileUploadFields = 0; String databaseTableName = WebFormUtil.getNewDatabaseTableName(portletResource); preferences.setValue("databaseTableName", databaseTableName); preferences.setValue("uploadToDisk", String.valueOf(uploadToDisk)); preferences.setValue("uploadToDM", String.valueOf(uploadToDM)); preferences.setValue("newFolderId", String.valueOf(newFolderId)); int[] formFieldsIndexes = StringUtil.split(ParamUtil.getString(actionRequest, "formFieldsIndexes"), 0); for (int formFieldsIndex : formFieldsIndexes) { Map<Locale, String> fieldLabelMap = LocalizationUtil.getLocalizationMap(actionRequest, "fieldLabel" + formFieldsIndex); if (Validator.isNull(fieldLabelMap.get(defaultLocale))) { continue; } String fieldType = ParamUtil.getString(actionRequest, "fieldType" + formFieldsIndex); if ("file".equals(fieldType)) { isFileUpload = true; howManyFileUploadFields++; } if (howManyFileUploadFields > 1) { SessionErrors.add(actionRequest, "tooManyFileUploadFields" + i); } boolean fieldOptional = ParamUtil.getBoolean(actionRequest, "fieldOptional" + formFieldsIndex); Map<Locale, String> fieldOptionsMap = LocalizationUtil.getLocalizationMap(actionRequest, "fieldOptions" + formFieldsIndex); String fieldValidationScript = ParamUtil.getString(actionRequest, "fieldValidationScript" + formFieldsIndex); String fieldValidationErrorMessage = ParamUtil.getString(actionRequest, "fieldValidationErrorMessage" + formFieldsIndex); if (Validator.isNotNull(fieldValidationScript) ^ Validator.isNotNull(fieldValidationErrorMessage)) { SessionErrors.add(actionRequest, "validationDefinitionInvalid" + i); } updateModifiedLocales("fieldLabel" + i, fieldLabelMap, preferences); updateModifiedLocales("fieldOptions" + i, fieldOptionsMap, preferences); preferences.setValue("fieldType" + i, fieldType); preferences.setValue("fieldOptional" + i, String.valueOf(fieldOptional)); preferences.setValue("fieldValidationScript" + i, fieldValidationScript); preferences.setValue("fieldValidationErrorMessage" + i, fieldValidationErrorMessage); i++; } preferences.setValue("isFileUpload", String.valueOf(isFileUpload)); if (!uploadIsWanted && isFileUpload) { SessionErrors.add(actionRequest, "uploadMethodUndefined"); } if (!SessionErrors.isEmpty(actionRequest)) { return; } // Clear previous preferences that are now blank String fieldLabel = LocalizationUtil.getPreferencesValue(preferences, "fieldLabel" + i, defaultLanguageId); while (Validator.isNotNull(fieldLabel)) { Map<Locale, String> fieldLabelMap = LocalizationUtil.getLocalizationMap(actionRequest, "fieldLabel" + i); for (Locale locale : fieldLabelMap.keySet()) { String languageId = LocaleUtil.toLanguageId(locale); LocalizationUtil.setPreferencesValue(preferences, "fieldLabel" + i, languageId, StringPool.BLANK); LocalizationUtil.setPreferencesValue(preferences, "fieldOptions" + i, languageId, StringPool.BLANK); } preferences.setValue("fieldType" + i, StringPool.BLANK); preferences.setValue("fieldOptional" + i, StringPool.BLANK); preferences.setValue("fieldValidationScript" + i, StringPool.BLANK); preferences.setValue("fieldValidationErrorMessage" + i, StringPool.BLANK); i++; fieldLabel = LocalizationUtil.getPreferencesValue(preferences, "fieldLabel" + i, defaultLanguageId); } } if (SessionErrors.isEmpty(actionRequest)) { preferences.store(); } super.processAction(portletConfig, actionRequest, actionResponse); }
From source file:com.fmdp.webform.action.ConfigurationActionImpl.java
License:Open Source License
protected void updateModifiedLocales(String parameter, Map<Locale, String> newLocalizationMap, PortletPreferences preferences) throws Exception { Map<Locale, String> oldLocalizationMap = LocalizationUtil.getLocalizationMap(preferences, parameter); List<Locale> modifiedLocales = LocalizationUtil.getModifiedLocales(oldLocalizationMap, newLocalizationMap); for (Locale locale : modifiedLocales) { String languageId = LocaleUtil.toLanguageId(locale); String value = newLocalizationMap.get(locale); LocalizationUtil.setPreferencesValue(preferences, parameter, languageId, value); }/*from w w w.j a v a 2 s .co m*/ }
From source file:com.liferay.journal.subscriptions.test.JournalSubscriptionLocalizedContentTest.java
License:Open Source License
@Override protected void setBaseModelSubscriptionBodyPreferences(String bodyPreferenceName) throws Exception { PortletPreferences portletPreferences = PortletPreferencesFactoryUtil.getStrictPortletSetup(layout, getServiceName());/* ww w . ja va 2s. c om*/ LocalizationUtil.setPreferencesValue(portletPreferences, bodyPreferenceName, LocaleUtil.toLanguageId(LocaleUtil.GERMANY), GERMAN_BODY); LocalizationUtil.setPreferencesValue(portletPreferences, bodyPreferenceName, LocaleUtil.toLanguageId(LocaleUtil.SPAIN), SPANISH_BODY); PortletPreferencesLocalServiceUtil.updatePreferences(group.getGroupId(), PortletKeys.PREFS_OWNER_TYPE_GROUP, PortletKeys.PREFS_PLID_SHARED, getServiceName(), portletPreferences); }
From source file:com.liferay.webform.action.ConfigurationActionImpl.java
License:Open Source License
@Override public void processAction(PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception { validateFields(actionRequest);//from w w w. j av a 2 s . c o m if (!SessionErrors.isEmpty(actionRequest)) { return; } Locale defaultLocale = LocaleUtil.getDefault(); String defaultLanguageId = LocaleUtil.toLanguageId(defaultLocale); boolean updateFields = ParamUtil.getBoolean(actionRequest, "updateFields"); String portletResource = ParamUtil.getString(actionRequest, "portletResource"); PortletPreferences preferences = actionRequest.getPreferences(); LocalizationUtil.setLocalizedPreferencesValues(actionRequest, preferences, "title"); LocalizationUtil.setLocalizedPreferencesValues(actionRequest, preferences, "description"); if (updateFields) { int i = 1; String databaseTableName = WebFormUtil.getNewDatabaseTableName(portletResource); preferences.setValue("databaseTableName", databaseTableName); int[] formFieldsIndexes = StringUtil.split(ParamUtil.getString(actionRequest, "formFieldsIndexes"), 0); for (int formFieldsIndex : formFieldsIndexes) { Map<Locale, String> fieldLabelMap = LocalizationUtil.getLocalizationMap(actionRequest, "fieldLabel" + formFieldsIndex); if (Validator.isNull(fieldLabelMap.get(defaultLocale))) { continue; } String fieldType = ParamUtil.getString(actionRequest, "fieldType" + formFieldsIndex); boolean fieldOptional = ParamUtil.getBoolean(actionRequest, "fieldOptional" + formFieldsIndex); Map<Locale, String> fieldOptionsMap = LocalizationUtil.getLocalizationMap(actionRequest, "fieldOptions" + formFieldsIndex); String fieldValidationScript = ParamUtil.getString(actionRequest, "fieldValidationScript" + formFieldsIndex); String fieldValidationErrorMessage = ParamUtil.getString(actionRequest, "fieldValidationErrorMessage" + formFieldsIndex); if (Validator.isNotNull(fieldValidationScript) ^ Validator.isNotNull(fieldValidationErrorMessage)) { SessionErrors.add(actionRequest, "validationDefinitionInvalid" + i); } updateModifiedLocales("fieldLabel" + i, fieldLabelMap, preferences); updateModifiedLocales("fieldOptions" + i, fieldOptionsMap, preferences); preferences.setValue("fieldType" + i, fieldType); preferences.setValue("fieldOptional" + i, String.valueOf(fieldOptional)); preferences.setValue("fieldValidationScript" + i, fieldValidationScript); preferences.setValue("fieldValidationErrorMessage" + i, fieldValidationErrorMessage); i++; } if (!SessionErrors.isEmpty(actionRequest)) { return; } // Clear previous preferences that are now blank String fieldLabel = LocalizationUtil.getPreferencesValue(preferences, "fieldLabel" + i, defaultLanguageId); while (Validator.isNotNull(fieldLabel)) { Map<Locale, String> fieldLabelMap = LocalizationUtil.getLocalizationMap(actionRequest, "fieldLabel" + i); for (Locale locale : fieldLabelMap.keySet()) { String languageId = LocaleUtil.toLanguageId(locale); LocalizationUtil.setPreferencesValue(preferences, "fieldLabel" + i, languageId, StringPool.BLANK); LocalizationUtil.setPreferencesValue(preferences, "fieldOptions" + i, languageId, StringPool.BLANK); } preferences.setValue("fieldType" + i, StringPool.BLANK); preferences.setValue("fieldOptional" + i, StringPool.BLANK); preferences.setValue("fieldValidationScript" + i, StringPool.BLANK); preferences.setValue("fieldValidationErrorMessage" + i, StringPool.BLANK); i++; fieldLabel = LocalizationUtil.getPreferencesValue(preferences, "fieldLabel" + i, defaultLanguageId); } } if (SessionErrors.isEmpty(actionRequest)) { preferences.store(); } super.processAction(portletConfig, actionRequest, actionResponse); }