From 44f6238fd5fe7675e7de43f4a42d1f7dabcfee4e Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 27 Nov 2012 17:01:59 -0500
Subject: [PATCH] Tweak to GCA config, fix send mail prompts, added authority.cmd

---
 src/com/gitblit/authority/GitblitAuthority.java |   16 ++++++++++------
 1 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/src/com/gitblit/authority/GitblitAuthority.java b/src/com/gitblit/authority/GitblitAuthority.java
index 446c029..6d219b7 100644
--- a/src/com/gitblit/authority/GitblitAuthority.java
+++ b/src/com/gitblit/authority/GitblitAuthority.java
@@ -129,6 +129,8 @@
 
 	private JButton certificateDefaultsButton;
 
+	private JButton newSSLCertificate;
+
 	public static void main(String... args) {
 		EventQueue.invokeLater(new Runnable() {
 			public void run() {
@@ -296,13 +298,15 @@
 			if (!caKeystore.exists()) {
 				// show certificate defaults dialog 
 				certificateDefaultsButton.doClick();
+				
+				// create "localhost" ssl certificate
+				prepareX509Infrastructure();
 			}
 		}
 	}
 	
 	private boolean prepareX509Infrastructure() {
 		if (caKeystorePassword == null) {
-			caKeystorePassword = gitblitSettings.getString(Keys.server.storePassword, null);
 			JPasswordField pass = new JPasswordField(10){
 				private static final long serialVersionUID = 1L;
 
@@ -320,7 +324,6 @@
 			if (result == JOptionPane.OK_OPTION) {
 				caKeystorePassword = new String(pass.getPassword());
 			} else {
-				caKeystorePassword = null;
 				return false;
 			}
 		}
@@ -594,7 +597,7 @@
 			}
 		});
 		
-		JButton newSSLCertificate = new JButton(new ImageIcon(getClass().getResource("/rosette_16x16.png")));
+		newSSLCertificate = new JButton(new ImageIcon(getClass().getResource("/rosette_16x16.png")));
 		newSSLCertificate.setFocusable(false);
 		newSSLCertificate.setToolTipText(Translation.get("gb.newSSLCertificate"));		
 		newSSLCertificate.addActionListener(new ActionListener() {
@@ -672,8 +675,7 @@
 							metadata.serverHostname = Constants.NAME;
 						}
 						metadata.userDisplayname = ucm.user.getDisplayName();
-						sendEmail(ucm.user, metadata, zip);
-						return true;
+						return sendEmail(ucm.user, metadata, zip);
 					}
 
 					@Override
@@ -780,7 +782,7 @@
 		}
 	}
 	
-	private void sendEmail(UserModel user, X509Metadata metadata, File zip) {
+	private boolean sendEmail(UserModel user, X509Metadata metadata, File zip) {
 		// send email
 		try {
 			if (mail.isReady()) {
@@ -807,11 +809,13 @@
 				message.setContent(mp);
 
 				mail.sendNow(message);
+				return true;
 			} else {
 				JOptionPane.showMessageDialog(GitblitAuthority.this, "Sorry, the mail server settings are not configured properly.\nCan not send email.", Translation.get("gb.error"), JOptionPane.ERROR_MESSAGE);
 			}
 		} catch (Exception e) {
 			Utils.showException(GitblitAuthority.this, e);
 		}
+		return false;
 	}
 }

--
Gitblit v1.9.1