fix multiple readme file rendering and fix #1657 (#1658)

* fix multiple readme file rendering and fix #1657

* remove unnecessary loop
tokarchuk/v1.17
Lunny Xiao 8 years ago committed by Bo-Yi Wu
parent 98548c83d3
commit 0d1e001b9c
  1. 9
      modules/markup/markup.go
  2. 10
      routers/repo/view.go

@ -59,6 +59,15 @@ func Type(filename string) string {
return "" return ""
} }
// ReadmeFileType reports whether name looks like a README file
// based on its name and find the parser via its ext name
func ReadmeFileType(name string) (string, bool) {
if IsReadmeFile(name) {
return Type(name), true
}
return "", false
}
// IsReadmeFile reports whether name looks like a README file // IsReadmeFile reports whether name looks like a README file
// based on its name. // based on its name.
func IsReadmeFile(name string) bool { func IsReadmeFile(name string) bool {

@ -56,14 +56,20 @@ func renderDirectory(ctx *context.Context, treeLink string) {
var readmeFile *git.Blob var readmeFile *git.Blob
for _, entry := range entries { for _, entry := range entries {
if entry.IsDir() || !markup.IsReadmeFile(entry.Name()) { if entry.IsDir() {
continue
}
tp, ok := markup.ReadmeFileType(entry.Name())
if !ok {
continue continue
} }
// TODO: collect all possible README files and show with priority.
readmeFile = entry.Blob() readmeFile = entry.Blob()
if tp != "" {
break break
} }
}
if readmeFile != nil { if readmeFile != nil {
ctx.Data["RawFileLink"] = "" ctx.Data["RawFileLink"] = ""

Loading…
Cancel
Save