Mathijs den Burger pushed to branch release/4.0 at cms-community / hippo-cms
Commits: 6d9d3322 by Mathijs den Burger at 2016-08-04T15:09:06+02:00 CMS-10324 Update 'time zone' label when another language is selected (cherry picked from commit e6780ce26b2ee709f4e2a365b63594bae1d0c177) - - - - - 2e12b552 by Canh Ngo at 2016-08-04T15:09:13+02:00 CMS-10324 Use wicket:enclosure to hide time zone components (cherry picked from commit 56a555748651c293e2c730cb596e1bbc57e70d7f) - - - - - f40c1620 by Mathijs den Burger at 2016-08-05T13:46:35+02:00 CMS-10324 Reintegrate bugfix/CMS-10324 - - - - - 2 changed files: - engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin$LoginForm.html - engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin.java Changes: ===================================== engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin$LoginForm.html ===================================== --- a/engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin$LoginForm.html +++ b/engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin$LoginForm.html @@ -17,12 +17,14 @@ <body> <wicket:panel> <wicket:extend> - <div class="hippo-login-form-label"> - <label wicket:id="timezone-label">[Timezone:]</label> - </div> - <div class="hippo-login-form-input"> - <select name="timezone" wicket:id="timezone" id="timezone"></select> - </div> + <wicket:enclosure child="timezone-label"> + <div class="hippo-login-form-label"> + <label wicket:id="timezone-label">[Timezone:]</label> + </div> + <div class="hippo-login-form-input"> + <select name="timezone" wicket:id="timezone" id="timezone"></select> + </div> + </wicket:enclosure> <wicket:child/> </wicket:extend> </wicket:panel> ===================================== engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin.java ===================================== --- a/engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin.java +++ b/engine/src/main/java/org/hippoecm/frontend/plugins/login/DefaultLoginPlugin.java @@ -17,6 +17,7 @@ package org.hippoecm.frontend.plugins.login; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.TimeZone; import java.util.stream.Collectors; @@ -62,14 +63,16 @@ public class DefaultLoginPlugin extends SimpleLoginPlugin { private static final int TIMEZONE_COOKIE_MAX_AGE = 365 * 24 * 3600; // expire one year from now private String selectedTimeZone; - private List<String> availableTimeZones; + private List<String> availableTimeZones = Collections.emptyList(); private boolean useBrowserTimeZoneIfAvailable; public LoginForm(final String id, final boolean autoComplete, final List<String> locales, final LoginHandler handler) { super(id, autoComplete, locales, handler); final IPluginConfig config = getPluginConfig(); - if (config.getBoolean(SHOW_TIMEZONES_CONFIG_PARAM)) { + final boolean isTimeZoneVisible = config.getBoolean(SHOW_TIMEZONES_CONFIG_PARAM); + + if (isTimeZoneVisible) { availableTimeZones = getSelectableTimezones(config.getStringArray(SELECTABLE_TIMEZONES_CONFIG_PARAM)); // Check if user has previously selected a timezone @@ -80,19 +83,17 @@ public class DefaultLoginPlugin extends SimpleLoginPlugin { selectedTimeZone = availableTimeZones.get(0); useBrowserTimeZoneIfAvailable = true; } + } - // Add the timezone dropdown - final PropertyModel<String> selected = PropertyModel.of(this, "selectedTimeZone"); - final DropDownChoice<String> timeZone = new DropDownChoice<>("timezone", selected, availableTimeZones); - timeZone.setNullValid(false); - - form.add(new Label("timezone-label", new ResourceModel("timezone-label", "Time zone:"))); - form.add(timeZone); + // Add the time zone dropdown + final PropertyModel<String> selected = PropertyModel.of(this, "selectedTimeZone"); + final DropDownChoice<String> timeZone = new DropDownChoice<>("timezone", selected, availableTimeZones); + timeZone.setNullValid(false); - } else { - form.add(new Label("timezone-label").setVisible(false)); - form.add(new Label("timezone").setVisible(false)); - } + final Label timeZoneLabel = new Label("timezone-label", new ResourceModel("timezone-label", "Time zone:")); + timeZoneLabel.setVisible(isTimeZoneVisible); + form.addLabelledComponent(timeZoneLabel); + form.add(timeZone); } @Override View it on GitLab: https://code.onehippo.org/cms-community/hippo-cms/compare/9cb7f43854ed110222ac26792b25fb77bf478284...f40c16203661d820955652b34bd30837abdda427
_______________________________________________ Hippocms-svn mailing list Hippocms-svn@lists.onehippo.org https://lists.onehippo.org/mailman/listinfo/hippocms-svn