Paul Martin
2016-04-16 eecaad8b8e2c447429c31a01d49260ddd6b4ee03
src/main/java/com/gitblit/wicket/pages/UserPage.java
@@ -35,6 +35,7 @@
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import com.gitblit.Constants.Transport;
import com.gitblit.GitBlitException;
import com.gitblit.Keys;
import com.gitblit.models.Menu.ParameterMenuItem;
@@ -103,7 +104,7 @@
      if (isMyProfile) {
         addPreferences(user);
         if (app().gitblit().isServingSSH()) {
         if (app().services().isServingSSH()) {
            // show the SSH key management tab
            addSshKeys(user);
         } else {
@@ -171,16 +172,19 @@
      Form<Void> prefs = new Form<Void>("prefsForm");
      List<Language> languages = Arrays.asList(
            new Language("Deutsch","de"),
            new Language("English","en"),
            new Language("Español", "es"),
            new Language("Français", "fr"),
            new Language("Italiano", "it"),
            new Language("日本語", "ja"),
            new Language("한국말", "ko"),
            new Language("Nederlands", "nl"),
            new Language("Norsk", "no"),
            new Language("Język Polski", "pl"),
            new Language("Português", "pt_BR"),
            new Language("中文", "zh_CN"));
            new Language("簡體中文", "zh_CN"),
            new Language("正體中文", "zh_TW"));
      Locale locale = user.getPreferences().getLocale();
      if (locale == null) {
@@ -221,6 +225,7 @@
      final IModel<String> emailAddress = Model.of(user.emailAddress == null ? "" : user.emailAddress);
      final IModel<Language> language = Model.of(preferredLanguage);
      final IModel<Boolean> emailMeOnMyTicketChanges = Model.of(user.getPreferences().isEmailMeOnMyTicketChanges());
      final IModel<Transport> transport = Model.of(user.getPreferences().getTransport());
      prefs.add(new TextOption("displayName",
            getString("gb.displayName"),
@@ -243,6 +248,26 @@
            getString("gb.emailMeOnMyTicketChangesDescription"),
            emailMeOnMyTicketChanges).setVisible(app().notifier().isSendingMail()));
      List<Transport> availableTransports = new ArrayList<>();
      if (app().services().isServingSSH()) {
         availableTransports.add(Transport.SSH);
      }
      if (app().services().isServingHTTP()) {
         availableTransports.add(Transport.HTTP);
      }
      if (app().services().isServingHTTPS()) {
         availableTransports.add(Transport.HTTPS);
      }
      if (app().services().isServingGIT()) {
         availableTransports.add(Transport.GIT);
      }
      prefs.add(new ChoiceOption<Transport>("transport",
            getString("gb.transportPreference"),
            getString("gb.transportPreferenceDescription"),
            transport,
            availableTransports));
      prefs.add(new AjaxButton("save") {
         private static final long serialVersionUID = 1L;
@@ -261,6 +286,7 @@
            }
            user.getPreferences().setEmailMeOnMyTicketChanges(emailMeOnMyTicketChanges.getObject());
            user.getPreferences().setTransport(transport.getObject());
            try {
               app().gitblit().reviseUser(user.username, user);