summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUnknown <joe2010xtmf@163.com>2014-04-13 04:27:29 -0400
committerUnknown <joe2010xtmf@163.com>2014-04-13 04:27:29 -0400
commitea74be2f2eb2356666c39448019956f9fe1c1f99 (patch)
treebb195120174ca3fd9b782e831d6c498ab7489816
parentd26a333dfbd47e9b6f92fad7fcd779ad72070f8a (diff)
downloadgitea-ea74be2f2eb2356666c39448019956f9fe1c1f99.tar.gz
gitea-ea74be2f2eb2356666c39448019956f9fe1c1f99.zip
go get
-rw-r--r--modules/base/base.go2
-rw-r--r--modules/base/template.go12
-rw-r--r--routers/dashboard.go5
-rw-r--r--routers/repo/repo.go4
-rw-r--r--templates/base/head.tmpl2
5 files changed, 24 insertions, 1 deletions
diff --git a/modules/base/base.go b/modules/base/base.go
index 84cf41c8d6..3e80a436e4 100644
--- a/modules/base/base.go
+++ b/modules/base/base.go
@@ -54,3 +54,5 @@ const (
BindingBooleanTypeError string = "BooleanTypeError"
BindingFloatTypeError string = "FloatTypeError"
)
+
+var GoGetMetas = make(map[string]bool)
diff --git a/modules/base/template.go b/modules/base/template.go
index 6241497969..863bd89e81 100644
--- a/modules/base/template.go
+++ b/modules/base/template.go
@@ -197,3 +197,15 @@ func DiffLineTypeToStr(diffType int) string {
}
return "same"
}
+
+const (
+ TPL_GO_GET_META = `<meta name="go-import" content="%s git %s">`
+)
+
+func GetGoGetMetaList() []byte {
+ buf := bytes.NewBuffer([]byte(""))
+ for meta := range GoGetMetas {
+ buf.WriteString(fmt.Sprintf(TPL_GO_GET_META, Domain, meta))
+ }
+ return buf.Bytes()
+}
diff --git a/routers/dashboard.go b/routers/dashboard.go
index 2c81cf23c1..12635412ad 100644
--- a/routers/dashboard.go
+++ b/routers/dashboard.go
@@ -11,6 +11,11 @@ import (
)
func Home(ctx *middleware.Context) {
+ if ctx.Query("go-get") == "1" {
+ ctx.Write(base.GetGoGetMetaList())
+ return
+ }
+
if ctx.IsSigned {
user.Dashboard(ctx)
return
diff --git a/routers/repo/repo.go b/routers/repo/repo.go
index dda26899d0..a7088d5552 100644
--- a/routers/repo/repo.go
+++ b/routers/repo/repo.go
@@ -107,6 +107,10 @@ func MigratePost(ctx *middleware.Context, form auth.MigrateRepoForm) {
}
func Single(ctx *middleware.Context, params martini.Params) {
+ if ctx.Query("go-get") == "1" {
+ base.GoGetMetas[strings.TrimSuffix(ctx.Repo.CloneLink.HTTPS, ".git")] = true
+ }
+
branchName := ctx.Repo.BranchName
userName := ctx.Repo.Owner.Name
repoName := ctx.Repo.Repository.Name
diff --git a/templates/base/head.tmpl b/templates/base/head.tmpl
index 441fd542df..1d63b46634 100644
--- a/templates/base/head.tmpl
+++ b/templates/base/head.tmpl
@@ -9,7 +9,7 @@
<meta name="description" content="Gogs(Go Git Service) is a GitHub-like clone in the Go Programming Language" />
<meta name="keywords" content="go, git">
<meta name="_csrf" content="{{.CsrfToken}}" />
- <meta name="go-import" content="{{AppDomain}} git {{if .Repository.IsGoget}}{{.GoGetLink}}{{else}}{{AppDomain}}/{{end}}">
+ <meta name="go-import" content="{{AppDomain}} git {{if .Repository.IsGoget}}{{.GoGetLink}}{{end}}">
<!-- Stylesheets -->
{{if IsProdMode}}