0
0
mirror of https://github.com/go-gitea/gitea.git synced 2025-12-13 19:02:19 +01:00

Detect .org files if .md isn't found in wiki

Resort to raw file if neither is found too.
This commit is contained in:
Aly Sewelam 2025-11-24 11:29:59 +02:00
parent 30254b941b
commit cb9334414a

View File

@ -153,15 +153,37 @@ func wikiEntryByName(ctx *context.Context, commit *git.Commit, wikiName wiki_ser
return nil, "", false, false
}
if entry == nil {
// check if the file without ".md" suffix exists
gitFilename := strings.TrimSuffix(gitFilename, ".md")
entry, err = findEntryForFile(commit, gitFilename)
// If .md file not found, try .org file
if strings.HasSuffix(gitFilename, ".md") {
orgFilename := strings.TrimSuffix(gitFilename, ".md") + ".org"
entry, err = findEntryForFile(commit, orgFilename)
if err != nil && !git.IsErrNotExist(err) {
ctx.ServerError("findEntryForFile", err)
return nil, "", false, false
}
if entry != nil {
gitFilename = orgFilename
}
}
// If still not found, check if the file without extension exists (for raw files)
if entry == nil {
baseFilename := gitFilename
if strings.HasSuffix(baseFilename, ".md") {
baseFilename = strings.TrimSuffix(baseFilename, ".md")
} else if strings.HasSuffix(baseFilename, ".org") {
baseFilename = strings.TrimSuffix(baseFilename, ".org")
}
entry, err = findEntryForFile(commit, baseFilename)
if err != nil && !git.IsErrNotExist(err) {
ctx.ServerError("findEntryForFile", err)
return nil, "", false, false
}
if entry != nil {
gitFilename = baseFilename
isRaw = true
}
}
}
if entry == nil {
return nil, "", true, false
}