Glenn Matthys
2016-01-17 7e5107ef3e2bb0d7c31d3050fb8ba6cc1601ef1a
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);
@@ -283,7 +309,7 @@
   private void addSshKeys(final UserModel user) {
      Fragment keysTab = new Fragment("sshKeysTab", "sshKeysTabFragment", this);
      keysTab.add(new SshKeysPanel("sshKeysPanel", user, getClass(), getPageParameters()));
      keysTab.add(new SshKeysPanel("sshKeysPanel", user));
      // add the SSH keys tab
      add(new Fragment("sshKeysLink", "sshKeysLinkFragment", this).setRenderBodyOnly(true));