added dump/restore and fixed title stuff

This commit is contained in:
ston1th 2018-10-16 21:26:39 +02:00
commit 8d3187b160
13 changed files with 200627 additions and 189988 deletions

View file

@ -25,7 +25,7 @@ func (db *DB) GetAllPages(username string) (pages core.Pages) {
if trim == core.IndexURI {
return nil
}
p, err := db.GetPage(trim, username)
p, err := db.getPage(trim, username)
if err == nil {
pages = append(pages, *p)
}
@ -36,11 +36,12 @@ func (db *DB) GetAllPages(username string) (pages core.Pages) {
return
}
func (db *DB) GetPage(title, username string) (p *core.Page, err error) {
p = db.cache.Get(title)
func (db *DB) GetPage(section, title, username string) (p *core.Page, err error) {
st := render.StoreTitle(section, title)
p = db.cache.Get(st)
if p == nil {
p, err = db.getPage(title, username)
db.cache.Add(title, p)
p, err = db.getPage(st, username)
db.cache.Add(st, p)
return
}
if !core.ReadPerm(username, p) {
@ -74,7 +75,7 @@ func (db *DB) CreatePage(title, section, markdown, username string, p core.Permi
return
}
}
st := render.StoreTitle(section, title)
st := render.StoreTitle(section, render.Title(title))
if _, err = db.getPage(st, username); err != nil && err != store.ErrKeyNotFound {
return
}
@ -130,7 +131,7 @@ func (db *DB) UpdatePage(title, section, markdown, username string, p core.Permi
return
}
err = db.Index.Add(title, st, search)
err = db.Index.Add(page.Title, st, search)
if err != nil {
return
}