Skip to content

Commit cb93344

Browse files
author
Aly Sewelam
committed
Detect .org files if .md isn't found in wiki
Resort to raw file if neither is found too.
1 parent 30254b9 commit cb93344

File tree

1 file changed

+29
-7
lines changed

1 file changed

+29
-7
lines changed

routers/web/repo/wiki.go

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -153,14 +153,36 @@ func wikiEntryByName(ctx *context.Context, commit *git.Commit, wikiName wiki_ser
153153
return nil, "", false, false
154154
}
155155
if entry == nil {
156-
// check if the file without ".md" suffix exists
157-
gitFilename := strings.TrimSuffix(gitFilename, ".md")
158-
entry, err = findEntryForFile(commit, gitFilename)
159-
if err != nil && !git.IsErrNotExist(err) {
160-
ctx.ServerError("findEntryForFile", err)
161-
return nil, "", false, false
156+
// If .md file not found, try .org file
157+
if strings.HasSuffix(gitFilename, ".md") {
158+
orgFilename := strings.TrimSuffix(gitFilename, ".md") + ".org"
159+
entry, err = findEntryForFile(commit, orgFilename)
160+
if err != nil && !git.IsErrNotExist(err) {
161+
ctx.ServerError("findEntryForFile", err)
162+
return nil, "", false, false
163+
}
164+
if entry != nil {
165+
gitFilename = orgFilename
166+
}
167+
}
168+
// If still not found, check if the file without extension exists (for raw files)
169+
if entry == nil {
170+
baseFilename := gitFilename
171+
if strings.HasSuffix(baseFilename, ".md") {
172+
baseFilename = strings.TrimSuffix(baseFilename, ".md")
173+
} else if strings.HasSuffix(baseFilename, ".org") {
174+
baseFilename = strings.TrimSuffix(baseFilename, ".org")
175+
}
176+
entry, err = findEntryForFile(commit, baseFilename)
177+
if err != nil && !git.IsErrNotExist(err) {
178+
ctx.ServerError("findEntryForFile", err)
179+
return nil, "", false, false
180+
}
181+
if entry != nil {
182+
gitFilename = baseFilename
183+
isRaw = true
184+
}
162185
}
163-
isRaw = true
164186
}
165187
if entry == nil {
166188
return nil, "", true, false

0 commit comments

Comments
 (0)