diff --git a/file.go b/file.go index 0396b5e..bd8b6c6 100644 --- a/file.go +++ b/file.go @@ -155,21 +155,16 @@ func (fp *FilePages) Get(title string) Page { sw.Start("Get " + title) defer sw.Stop() - refs, err := getBackrefs(fp, title) - if err != nil { - refs = nil - } - blocks, err := loadBlocks(fp.dirname, title) if err != nil { - return fp.oldPagesBackend(title, blocks, refs) + return fp.oldPagesBackend(title, blocks) } // Blocks based pages - return fp.blocksBackendGet(title, blocks, refs) + return fp.blocksBackendGet(title, blocks) } -func (fp *FilePages) blocksBackendGet(name string, blocks BlockResponse, refs map[string][]Backref) Page { +func (fp *FilePages) blocksBackendGet(name string, blocks BlockResponse) Page { buf := bytes.Buffer{} current := blocks.PageID listItems := convertBlocksToListItems(current, blocks, 0) @@ -182,6 +177,11 @@ func (fp *FilePages) blocksBackendGet(name string, blocks BlockResponse, refs ma log.Printf("while encoding blocks: %s", err) } + refs, err := getBackrefs(fp, name) + if err != nil { + refs = nil + } + return Page{ Name: name, Title: blocks.Texts[name], @@ -192,10 +192,15 @@ func (fp *FilePages) blocksBackendGet(name string, blocks BlockResponse, refs ma } } -func (fp *FilePages) oldPagesBackend(title string, blocks BlockResponse, refs map[string][]Backref) Page { +func (fp *FilePages) oldPagesBackend(title string, blocks BlockResponse) Page { name := strings.Replace(title, " ", "_", -1) title = strings.Replace(title, "_", " ", -1) + refs, err := getBackrefs(fp, name) + if err != nil { + refs = nil + } + f, err := os.Open(filepath.Join(fp.dirname, name)) if err != nil { log.Printf("while opening file in oldPagesBackend: %s", err)