mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-01 05:36:19 +01:00
Little code refactoring
This commit is contained in:
parent
c8b45ecc27
commit
f70343660d
6 changed files with 22 additions and 27 deletions
1
Makefile
1
Makefile
|
@ -17,7 +17,6 @@ GOVET = go tool vet -composites=false -methods=false -structtags=false
|
||||||
|
|
||||||
.IGNORE: public/css/gogs.css
|
.IGNORE: public/css/gogs.css
|
||||||
|
|
||||||
# FIXME: find a way to ignore /vendor/ and /data/ directories.
|
|
||||||
govet:
|
govet:
|
||||||
$(GOVET) gogs.go
|
$(GOVET) gogs.go
|
||||||
$(GOVET) models modules routers
|
$(GOVET) models modules routers
|
||||||
|
|
|
@ -3,7 +3,7 @@ Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?bra
|
||||||
|
|
||||||
![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true)
|
![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true)
|
||||||
|
|
||||||
##### Current tip version: 0.9.68 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions)
|
##### Current tip version: 0.9.69 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions)
|
||||||
|
|
||||||
| Web | UI | Preview |
|
| Web | UI | Preview |
|
||||||
|:-------------:|:-------:|:-------:|
|
|:-------------:|:-------:|:-------:|
|
||||||
|
|
2
gogs.go
2
gogs.go
|
@ -17,7 +17,7 @@ import (
|
||||||
"github.com/gogits/gogs/modules/setting"
|
"github.com/gogits/gogs/modules/setting"
|
||||||
)
|
)
|
||||||
|
|
||||||
const APP_VER = "0.9.68.0808"
|
const APP_VER = "0.9.69.0808"
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
runtime.GOMAXPROCS(runtime.NumCPU())
|
runtime.GOMAXPROCS(runtime.NumCPU())
|
||||||
|
|
|
@ -96,7 +96,6 @@ func NewFuncMap() []template.FuncMap {
|
||||||
"ShortSha": base.ShortSha,
|
"ShortSha": base.ShortSha,
|
||||||
"MD5": base.EncodeMD5,
|
"MD5": base.EncodeMD5,
|
||||||
"ActionContent2Commits": ActionContent2Commits,
|
"ActionContent2Commits": ActionContent2Commits,
|
||||||
"ToUtf8": ToUtf8,
|
|
||||||
"EscapePound": func(str string) string {
|
"EscapePound": func(str string) string {
|
||||||
return strings.NewReplacer("%", "%25", "#", "%23", " ", "%20").Replace(str)
|
return strings.NewReplacer("%", "%25", "#", "%23", " ", "%20").Replace(str)
|
||||||
},
|
},
|
||||||
|
@ -115,10 +114,6 @@ func Str2html(raw string) template.HTML {
|
||||||
return template.HTML(markdown.Sanitizer.Sanitize(raw))
|
return template.HTML(markdown.Sanitizer.Sanitize(raw))
|
||||||
}
|
}
|
||||||
|
|
||||||
func Range(l int) []int {
|
|
||||||
return make([]int, l)
|
|
||||||
}
|
|
||||||
|
|
||||||
func List(l *list.List) chan interface{} {
|
func List(l *list.List) chan interface{} {
|
||||||
e := l.Front()
|
e := l.Front()
|
||||||
c := make(chan interface{})
|
c := make(chan interface{})
|
||||||
|
@ -136,7 +131,7 @@ func Sha1(str string) string {
|
||||||
return base.EncodeSha1(str)
|
return base.EncodeSha1(str)
|
||||||
}
|
}
|
||||||
|
|
||||||
func ToUtf8WithErr(content []byte) (error, string) {
|
func ToUTF8WithErr(content []byte) (error, string) {
|
||||||
charsetLabel, err := base.DetectEncoding(content)
|
charsetLabel, err := base.DetectEncoding(content)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err, ""
|
return err, ""
|
||||||
|
@ -159,8 +154,8 @@ func ToUtf8WithErr(content []byte) (error, string) {
|
||||||
return err, result
|
return err, result
|
||||||
}
|
}
|
||||||
|
|
||||||
func ToUtf8(content string) string {
|
func ToUTF8(content string) string {
|
||||||
_, res := ToUtf8WithErr([]byte(content))
|
_, res := ToUTF8WithErr([]byte(content))
|
||||||
return res
|
return res
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,14 +5,13 @@
|
||||||
package repo
|
package repo
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"fmt"
|
||||||
|
gotemplate "html/template"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"path"
|
"path"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
htmltemplate "html/template"
|
|
||||||
|
|
||||||
"github.com/Unknwon/paginater"
|
"github.com/Unknwon/paginater"
|
||||||
|
|
||||||
"github.com/gogits/git-module"
|
"github.com/gogits/git-module"
|
||||||
|
@ -119,27 +118,29 @@ func Home(ctx *context.Context) {
|
||||||
if readmeExist {
|
if readmeExist {
|
||||||
ctx.Data["FileContent"] = string(markdown.Render(buf, path.Dir(treeLink), ctx.Repo.Repository.ComposeMetas()))
|
ctx.Data["FileContent"] = string(markdown.Render(buf, path.Dir(treeLink), ctx.Repo.Repository.ComposeMetas()))
|
||||||
} else {
|
} else {
|
||||||
filecontent := ""
|
// Building code view blocks with line number on server side.
|
||||||
if err, content := template.ToUtf8WithErr(buf); err != nil {
|
var filecontent string
|
||||||
|
if err, content := template.ToUTF8WithErr(buf); err != nil {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Error(4, "Convert content encoding: %s", err)
|
log.Error(4, "ToUTF8WithErr: %s", err)
|
||||||
}
|
}
|
||||||
filecontent = string(buf)
|
filecontent = string(buf)
|
||||||
} else {
|
} else {
|
||||||
filecontent = content
|
filecontent = content
|
||||||
}
|
}
|
||||||
|
|
||||||
var output bytes.Buffer
|
var output bytes.Buffer
|
||||||
lines := strings.Split(filecontent, "\n")
|
lines := strings.Split(filecontent, "\n")
|
||||||
for index, line := range lines {
|
for index, line := range lines {
|
||||||
output.WriteString(fmt.Sprintf(`<li class="L%d" rel="L%d">%s</li>`, index+1, index+1, htmltemplate.HTMLEscapeString(line)) + "\n")
|
output.WriteString(fmt.Sprintf(`<li class="L%d" rel="L%d">%s</li>`, index+1, index+1, gotemplate.HTMLEscapeString(line)) + "\n")
|
||||||
}
|
}
|
||||||
ctx.Data["FileContent"] = htmltemplate.HTML(output.String())
|
ctx.Data["FileContent"] = gotemplate.HTML(output.String())
|
||||||
|
|
||||||
output.Reset()
|
output.Reset()
|
||||||
for i := 0; i < len(lines); i++ {
|
for i := 0; i < len(lines); i++ {
|
||||||
output.WriteString(fmt.Sprintf(`<span id="L%d">%d</span>`, i+1, i+1))
|
output.WriteString(fmt.Sprintf(`<span id="L%d">%d</span>`, i+1, i+1))
|
||||||
}
|
}
|
||||||
ctx.Data["LineNums"] = htmltemplate.HTML(output.String())
|
ctx.Data["LineNums"] = gotemplate.HTML(output.String())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -225,21 +226,21 @@ func Home(ctx *context.Context) {
|
||||||
ctx.Data["Reponame"] = repoName
|
ctx.Data["Reponame"] = repoName
|
||||||
|
|
||||||
var treenames []string
|
var treenames []string
|
||||||
Paths := make([]string, 0)
|
paths := make([]string, 0)
|
||||||
|
|
||||||
if len(treename) > 0 {
|
if len(treename) > 0 {
|
||||||
treenames = strings.Split(treename, "/")
|
treenames = strings.Split(treename, "/")
|
||||||
for i, _ := range treenames {
|
for i := range treenames {
|
||||||
Paths = append(Paths, strings.Join(treenames[0:i+1], "/"))
|
paths = append(paths, strings.Join(treenames[0:i+1], "/"))
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx.Data["HasParentPath"] = true
|
ctx.Data["HasParentPath"] = true
|
||||||
if len(Paths)-2 >= 0 {
|
if len(paths)-2 >= 0 {
|
||||||
ctx.Data["ParentPath"] = "/" + Paths[len(Paths)-2]
|
ctx.Data["ParentPath"] = "/" + paths[len(paths)-2]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ctx.Data["Paths"] = Paths
|
ctx.Data["Paths"] = paths
|
||||||
ctx.Data["TreeName"] = treename
|
ctx.Data["TreeName"] = treename
|
||||||
ctx.Data["Treenames"] = treenames
|
ctx.Data["Treenames"] = treenames
|
||||||
ctx.Data["TreePath"] = treePath
|
ctx.Data["TreePath"] = treePath
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
0.9.68.0808
|
0.9.69.0808
|
Loading…
Reference in a new issue