diff --git a/public/js/app.js b/public/js/app.js
index 162139986d..ebb05d2d6e 100644
--- a/public/js/app.js
+++ b/public/js/app.js
@@ -650,3 +650,7 @@ function initRepoSetting() {
         }
     });
 })(jQuery);
+
+String.prototype.endsWith = function(suffix) {
+    return this.indexOf(suffix, this.length - suffix.length) !== -1;
+};
diff --git a/routers/admin/auths.go b/routers/admin/auths.go
index 495acefda9..1822fd69ae 100644
--- a/routers/admin/auths.go
+++ b/routers/admin/auths.go
@@ -9,6 +9,7 @@ import (
 
 	"github.com/go-martini/martini"
 	"github.com/go-xorm/core"
+
 	"github.com/gogits/gogs/models"
 	"github.com/gogits/gogs/modules/auth"
 	"github.com/gogits/gogs/modules/auth/ldap"
@@ -114,7 +115,8 @@ func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
 	}
 
 	var config core.Conversion
-	if form.Type == models.LT_LDAP {
+	switch form.Type {
+	case models.LT_LDAP:
 		config = &models.LDAPConfig{
 			Ldapsource: ldap.Ldapsource{
 				Host:         form.Host,
@@ -127,13 +129,16 @@ func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
 				Name:         form.AuthName,
 			},
 		}
-	} else if form.Type == models.LT_SMTP {
+	case models.LT_SMTP:
 		config = &models.SMTPConfig{
 			Auth: form.SmtpAuth,
 			Host: form.Host,
 			Port: form.Port,
 			TLS:  form.Tls,
 		}
+	default:
+		ctx.Error(400)
+		return
 	}
 
 	u := models.LoginSource{
@@ -145,10 +150,7 @@ func EditAuthSourcePost(ctx *middleware.Context, form auth.AuthenticationForm) {
 	}
 
 	if err := models.UpdateSource(&u); err != nil {
-		switch err {
-		default:
-			ctx.Handle(500, "admin.auths.EditAuth", err)
-		}
+		ctx.Handle(500, "admin.auths.EditAuth", err)
 		return
 	}
 
diff --git a/templates/admin/auths/edit.tmpl b/templates/admin/auths/edit.tmpl
index 9ebc0aa4c4..2c7a5754bf 100644
--- a/templates/admin/auths/edit.tmpl
+++ b/templates/admin/auths/edit.tmpl
@@ -32,7 +32,6 @@
                     </div>
 
                     {{if eq $type 2}}
-
                     <div class="form-group {{if .Err_Domain}}has-error has-feedback{{end}}">
                         <label class="col-md-3 control-label">Domain: </label>
                         <div class="col-md-7">
@@ -81,44 +80,41 @@
                             <input name="ms_ad_sa" class="form-control" placeholder="Type Ms Ad SA" value="{{.Source.LDAP.MsAdSAFormat}}" required="required">
                         </div>
                     </div>
-                    {{else}}
-                    {{if eq $type 3}}
+                    {{else if eq $type 3}}
+                    <div class="form-group {{if .Err_TLS}}has-error has-feedback{{end}}">
+                        <label class="col-md-3 control-label">SMTP Auth: </label>
+                        <div class="col-md-7">
+                            <select name="smtpauth" class="form-control">
+                            {{$auth := .Source.SMTP.Auth}}
+                                {{range .SMTPAuths}}
+                                <option value="{{.}}"
+                                {{if eq . $auth}} selected{{end}}>{{.}}</option>
+                                {{end}}
+                                }
+                            </select>
+                        </div>
+                    </div>
+
+                    <div class="form-group {{if .Err_Host}}has-error has-feedback{{end}}">
+                        <label class="col-md-3 control-label">Host: </label>
+                        <div class="col-md-7">
+                            <input name="smtphost" class="form-control" placeholder="Type host address" value="{{.Source.SMTP.Host}}">
+                        </div>
+                    </div>
+
+                    <div class="form-group {{if .Err_Port}}has-error has-feedback{{end}}">
+                        <label class="col-md-3 control-label">Port: </label>
+                        <div class="col-md-7">
+                            <input name="smtpport" class="form-control" placeholder="Type port number" value="{{.Source.SMTP.Port}}">
+                        </div>
+                    </div>
 
                     <div class="form-group {{if .Err_TLS}}has-error has-feedback{{end}}">
-                            <label class="col-md-3 control-label">SMTP Auth: </label>
-                            <div class="col-md-7">
-                                <select name="smtpauth" class="form-control">
-                                {{$auth := .Source.SMTP.Auth}}
-                                    {{range .SMTPAuths}}
-                                    <option value="{{.}}"
-                                    {{if eq . $auth}} selected{{end}}>{{.}}</option>
-                                    {{end}}
-                                    }
-                                </select>
-                            </div>
+                        <label class="col-md-3 control-label">TLS: </label>
+                        <div class="col-md-7">
+                            <input name="smtptls" type="checkbox" class="form-control" {{if .Source.SMTP.TLS}}checked{{end}}>
                         </div>
-
-                        <div class="form-group {{if .Err_Host}}has-error has-feedback{{end}}">
-                            <label class="col-md-3 control-label">Host: </label>
-                            <div class="col-md-7">
-                                <input name="smtphost" class="form-control" placeholder="Type host address" value="{{.Source.SMTP.Host}}">
-                            </div>
-                        </div>
-
-                        <div class="form-group {{if .Err_Port}}has-error has-feedback{{end}}">
-                            <label class="col-md-3 control-label">Port: </label>
-                            <div class="col-md-7">
-                                <input name="smtpport" class="form-control" placeholder="Type port number" value="{{.Source.SMTP.Port}}">
-                            </div>
-                        </div>
-
-                        <div class="form-group {{if .Err_TLS}}has-error has-feedback{{end}}">
-                            <label class="col-md-3 control-label">TLS: </label>
-                            <div class="col-md-7">
-                                <input name="smtptls" type="checkbox" class="form-control" {{if .Source.SMTP.TLS}}checked{{end}}>
-                            </div>
-                        </div>
-                        {{end}}
+                    </div>
                     {{end}}
                     
                     <div class="form-group {{if .Err_TLS}}has-error has-feedback{{end}}">