瀏覽代碼

Batch mirror fix

Unknown 11 年之前
父節點
當前提交
59d0e73c35

+ 1 - 0
.gopmfile

@@ -19,6 +19,7 @@ github.com/lib/pq =
 github.com/nfnt/resize = 
 github.com/nfnt/resize = 
 github.com/qiniu/log = 
 github.com/qiniu/log = 
 github.com/robfig/cron = 
 github.com/robfig/cron = 
+github.com/juju2013/goldap = 
 
 
 [res]
 [res]
 include = templates|public|conf
 include = templates|public|conf

+ 2 - 0
CONTRIBUTING.md

@@ -10,6 +10,8 @@ Want to hack on Gogs? Awesome! Here are instructions to get you started. They ar
 
 
 ### Pull requests are always welcome
 ### Pull requests are always welcome
 
 
+**ALL PULL REQUESTS MUST SEND TO `DEV` BRANCH**
+
 We are always thrilled to receive pull requests, and do our best to process them as fast as possible. Not sure if that typo is worth a pull request? Do it! We will appreciate it.
 We are always thrilled to receive pull requests, and do our best to process them as fast as possible. Not sure if that typo is worth a pull request? Do it! We will appreciate it.
 
 
 If your pull request is not accepted on the first try, don't be discouraged! If there's a problem with the implementation, hopefully you received feedback on what to improve.
 If your pull request is not accepted on the first try, don't be discouraged! If there's a problem with the implementation, hopefully you received feedback on what to improve.

+ 4 - 4
modules/base/conf.go

@@ -53,7 +53,6 @@ var (
 	Domain     string
 	Domain     string
 	SecretKey  string
 	SecretKey  string
 	RunUser    string
 	RunUser    string
-	LdapAuth   bool
 
 
 	RepoRootPath string
 	RepoRootPath string
 	ScriptType   string
 	ScriptType   string
@@ -93,6 +92,7 @@ var Service struct {
 	NotifyMail           bool
 	NotifyMail           bool
 	ActiveCodeLives      int
 	ActiveCodeLives      int
 	ResetPwdCodeLives    int
 	ResetPwdCodeLives    int
+	LdapAuth             bool
 }
 }
 
 
 func ExecDir() (string, error) {
 func ExecDir() (string, error) {
@@ -179,8 +179,8 @@ func newLogService() {
 }
 }
 
 
 func newLdapService() {
 func newLdapService() {
-	LdapAuth = Cfg.MustBool("security", "LDAP_AUTH", false)
-	if !LdapAuth {
+	Service.LdapAuth = Cfg.MustBool("security", "LDAP_AUTH", false)
+	if !Service.LdapAuth {
 		return
 		return
 	}
 	}
 
 
@@ -201,7 +201,7 @@ func newLdapService() {
 	}
 	}
 	if nbsrc == 0 {
 	if nbsrc == 0 {
 		log.Warn("No valide LDAP found, LDAP Authentication NOT enabled")
 		log.Warn("No valide LDAP found, LDAP Authentication NOT enabled")
-		LdapAuth = false
+		Service.LdapAuth = false
 		return
 		return
 	}
 	}
 
 

+ 5 - 2
modules/middleware/repo.go

@@ -26,11 +26,14 @@ func RepoAssignment(redirect bool, args ...bool) martini.Handler {
 		var displayBare bool
 		var displayBare bool
 
 
 		if len(args) >= 1 {
 		if len(args) >= 1 {
-			validBranch = args[0]
+			// Note: argument has wrong value in Go1.3 martini.
+			// validBranch = args[0]
+			validBranch = true
 		}
 		}
 
 
 		if len(args) >= 2 {
 		if len(args) >= 2 {
-			displayBare = args[1]
+			// displayBare = args[1]
+			displayBare = true
 		}
 		}
 
 
 		var (
 		var (

+ 2 - 2
public/js/app.js

@@ -470,10 +470,10 @@ function initInstall() {
     (function () {
     (function () {
         $('#install-database').on("change", function () {
         $('#install-database').on("change", function () {
             var val = $(this).val();
             var val = $(this).val();
-            if (val != "sqlite") {
+            if (val != "SQLite3") {
                 $('.server-sql').show();
                 $('.server-sql').show();
                 $('.sqlite-setting').addClass("hide");
                 $('.sqlite-setting').addClass("hide");
-                if (val == "pgsql") {
+                if (val == "PostgreSQL") {
                     $('.pgsql-setting').removeClass("hide");
                     $('.pgsql-setting').removeClass("hide");
                 } else {
                 } else {
                     $('.pgsql-setting').addClass("hide");
                     $('.pgsql-setting').addClass("hide");

+ 15 - 1
routers/install.go

@@ -65,6 +65,10 @@ func GlobalInit() {
 	checkRunMode()
 	checkRunMode()
 }
 }
 
 
+func renderDbOption(ctx *middleware.Context) {
+	ctx.Data["DbOptions"] = []string{"MySQL", "PostgreSQL", "SQLite3"}
+}
+
 func Install(ctx *middleware.Context, form auth.InstallForm) {
 func Install(ctx *middleware.Context, form auth.InstallForm) {
 	if base.InstallLock {
 	if base.InstallLock {
 		ctx.Handle(404, "install.Install", errors.New("Installation is prohibited"))
 		ctx.Handle(404, "install.Install", errors.New("Installation is prohibited"))
@@ -104,6 +108,13 @@ func Install(ctx *middleware.Context, form auth.InstallForm) {
 		form.AppUrl = base.AppUrl
 		form.AppUrl = base.AppUrl
 	}
 	}
 
 
+	renderDbOption(ctx)
+	curDbValue := ""
+	if models.EnableSQLite3 {
+		curDbValue = "SQLite3" // Default when enabled.
+	}
+	ctx.Data["CurDbValue"] = curDbValue
+
 	auth.AssignForm(form, ctx.Data)
 	auth.AssignForm(form, ctx.Data)
 	ctx.HTML(200, "install")
 	ctx.HTML(200, "install")
 }
 }
@@ -117,6 +128,9 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
 	ctx.Data["Title"] = "Install"
 	ctx.Data["Title"] = "Install"
 	ctx.Data["PageIsInstall"] = true
 	ctx.Data["PageIsInstall"] = true
 
 
+	renderDbOption(ctx)
+	ctx.Data["CurDbValue"] = form.Database
+
 	if ctx.HasError() {
 	if ctx.HasError() {
 		ctx.HTML(200, "install")
 		ctx.HTML(200, "install")
 		return
 		return
@@ -129,7 +143,7 @@ func InstallPost(ctx *middleware.Context, form auth.InstallForm) {
 
 
 	// Pass basic check, now test configuration.
 	// Pass basic check, now test configuration.
 	// Test database setting.
 	// Test database setting.
-	dbTypes := map[string]string{"mysql": "mysql", "pgsql": "postgres", "sqlite": "sqlite3"}
+	dbTypes := map[string]string{"MySQL": "mysql", "PostgreSQL": "postgres", "SQLite3": "sqlite3"}
 	models.DbCfg.Type = dbTypes[form.Database]
 	models.DbCfg.Type = dbTypes[form.Database]
 	models.DbCfg.Host = form.Host
 	models.DbCfg.Host = form.Host
 	models.DbCfg.User = form.User
 	models.DbCfg.User = form.User

+ 5 - 3
routers/user/user.go

@@ -91,12 +91,14 @@ func SignInPost(ctx *middleware.Context, form auth.LogInForm) {
 
 
 	var user *models.User
 	var user *models.User
 	var err error
 	var err error
-	// try to login against LDAP if defined
-	if base.LdapAuth {
+	if base.Service.LdapAuth {
 		user, err = models.LoginUserLdap(form.UserName, form.Password)
 		user, err = models.LoginUserLdap(form.UserName, form.Password)
+		if err != nil {
+			log.Error("Fail to login through LDAP: %v", err)
+		}
 	}
 	}
 	// try local if not LDAP or it's failed
 	// try local if not LDAP or it's failed
-	if (!base.LdapAuth) || (err != nil) {
+	if !base.Service.LdapAuth || err != nil {
 		user, err = models.LoginUserPlain(form.UserName, form.Password)
 		user, err = models.LoginUserPlain(form.UserName, form.Password)
 	}
 	}
 	if err != nil {
 	if err != nil {

+ 4 - 1
templates/base/footer.tmpl

@@ -13,7 +13,10 @@
 	    	<div class="col-md-1" style="margin: -5px;">
 	    	<div class="col-md-1" style="margin: -5px;">
 		        <a target="_blank" href="https://github.com/gogits/gogs"><i class="fa fa-github fa-2x"></i></a>
 		        <a target="_blank" href="https://github.com/gogits/gogs"><i class="fa fa-github fa-2x"></i></a>
 	        </div>
 	        </div>
-	        <p class="desc"></p>
+
+	    	<div class="col-md-5">
+	        	<p class="desc"></p>
+	        </div>
     	</div>
     	</div>
     </div>
     </div>
 </footer>
 </footer>

+ 7 - 6
templates/install.tmpl

@@ -9,14 +9,15 @@
             <label class="col-md-3 control-label">Database Type: </label>
             <label class="col-md-3 control-label">Database Type: </label>
             <div class="col-md-8">
             <div class="col-md-8">
                 <select name="database" id="install-database" class="form-control">
                 <select name="database" id="install-database" class="form-control">
-                    <option value="mysql">MySQL</option>
-                    <option value="pgsql">PostgreSQL</option>
-                    <option value="sqlite">SQLite3</option>
+                    {{if .CurDbValue}}<option value="{{.CurDbValue}}">{{.CurDbValue}}</option>{{end}}
+                    {{range .DbOptions}}
+                    {{if not (eq $.CurDbValue .)}}<option value="{{.}}">{{.}}</option>{{end}}
+                    {{end}}
                 </select>
                 </select>
             </div>
             </div>
         </div>
         </div>
 
 
-        <div class="server-sql">
+        <div class="server-sql {{if eq .CurDbValue "SQLite3"}}hide{{end}}">
             <div class="form-group">
             <div class="form-group">
                 <label class="col-md-3 control-label">Host: </label>
                 <label class="col-md-3 control-label">Host: </label>
                 <div class="col-md-8">
                 <div class="col-md-8">
@@ -49,7 +50,7 @@
                 </div>
                 </div>
             </div>
             </div>
 
 
-            <div class="form-group pgsql-setting hide">
+            <div class="form-group pgsql-setting {{if not (eq .CurDbValue "PostgreSQL")}}hide{{end}}">
                 <label class="col-md-3 control-label">SSL Mode: </label>
                 <label class="col-md-3 control-label">SSL Mode: </label>
                 <div class="col-md-8">
                 <div class="col-md-8">
                     <select name="ssl_mode" class="form-control">
                     <select name="ssl_mode" class="form-control">
@@ -61,7 +62,7 @@
             </div>
             </div>
         </div>
         </div>
 
 
-        <div class="sqlite-setting hide">
+        <div class="sqlite-setting {{if not (eq .CurDbValue "SQLite3")}}hide{{end}}">
             <div class="form-group">
             <div class="form-group">
                 <label class="col-md-3 control-label">Path: </label>
                 <label class="col-md-3 control-label">Path: </label>
 
 

+ 23 - 22
templates/repo/single_file.tmpl

@@ -21,30 +21,31 @@
         </div>
         </div>
         {{end}}
         {{end}}
     </div>
     </div>
+    
     {{if not .FileIsText}}
     {{if not .FileIsText}}
-        <div class="panel-footer text-center">
-            {{if .IsImageFile}}
-                <img src="{{.FileLink}}">
-            {{else}}
-                <a href="{{.FileLink}}" class="btn btn-default">View Raw</a>
-            {{end}}
-        </div>
-    {{else}}
-        {{if .ReadmeExist}}
-            <div class="panel-body file-body markdown">
-                {{.FileContent|str2html}}
-            </div>
+    <div class="panel-body file-body file-code code-view">
+        {{if .IsImageFile}}
+            <img src="{{.FileLink}}">
         {{else}}
         {{else}}
-            <div class="panel-body file-body file-code code-view">
-                <table>
-                    <tbody>
-                        <tr>
-                            <td class="lines-num"></td>
-                            <td class="lines-code markdown"><pre class="prettyprint linenums{{if .FileExt}} lang-{{.FileExt}}{{end}}">{{.FileContent}}</pre></td>
-                        </tr>
-                    </tbody>
-                </table>
-            </div>
+            <a href="{{.FileLink}}" class="btn btn-default">View Raw</a>
         {{end}}
         {{end}}
+    </div>
+    {{else}}
+    {{if .ReadmeExist}}
+    <div class="panel-body file-body markdown">
+        {{.FileContent|str2html}}
+    </div>
+    {{else}}
+    <div class="panel-body file-body file-code code-view">
+        <table>
+            <tbody>
+                <tr>
+                    <td class="lines-num"></td>
+                    <td class="lines-code markdown"><pre class="prettyprint linenums{{if .FileExt}} lang-{{.FileExt}}{{end}}">{{.FileContent}}</pre></td>
+                </tr>
+            </tbody>
+        </table>
+    </div>
+    {{end}}
     {{end}}
     {{end}}
 </div>
 </div>

+ 0 - 9
tests/.travel.yml

@@ -1,9 +0,0 @@
-command: go test -v {}
-include: ^.+_test\.go$
-path: ./
-depth: 1
-verbose: true
-timeout: 1m
-reload: false
-html: test.html
-notify: []

+ 0 - 13
tests/README.md

@@ -1,13 +0,0 @@
-## Gogs Test
-
-This is for developers.
-
-## Prepare Environment
-
-	go get -u github.com/shxsun/travelexec
-	# start gogs server
-	gogs web
-
-## Start Testing
-
-	travelexec

+ 0 - 17
tests/default_test.go

@@ -1,17 +0,0 @@
-package test
-
-import (
-	"net/http"
-	"testing"
-)
-
-func TestMain(t *testing.T) {
-	r, err := http.Get("http://localhost:3000/")
-	if err != nil {
-		t.Fatal(err)
-	}
-	defer r.Body.Close()
-	if r.StatusCode != http.StatusOK {
-		t.Error(r.StatusCode)
-	}
-}