split db and bolt to store interface
This commit is contained in:
parent
07ff5ccffb
commit
7e77fd7d27
14 changed files with 419 additions and 545 deletions
|
|
@ -3,6 +3,8 @@
|
|||
package server
|
||||
|
||||
import (
|
||||
"git.giftfish.de/ston1th/gowiki/pkg/core"
|
||||
"git.giftfish.de/ston1th/gowiki/pkg/log"
|
||||
"html/template"
|
||||
"net/http"
|
||||
"time"
|
||||
|
|
@ -97,13 +99,13 @@ func loginHandler(ctx *Context) {
|
|||
ctx.Exec()
|
||||
return
|
||||
}
|
||||
err := ctx.Srv.BS.Login(user, password)
|
||||
err := ctx.Srv.DB.Login(user, password)
|
||||
if err != nil {
|
||||
ctx.Data.Msg = err.Error()
|
||||
ctx.Exec()
|
||||
return
|
||||
}
|
||||
ctx.SetUdata(user, ctx.Srv.BS.UserIsAdmin(user))
|
||||
ctx.SetUdata(user, ctx.Srv.DB.UserIsAdmin(user))
|
||||
ctx.Redirect("/wiki/Index", 302)
|
||||
}
|
||||
}
|
||||
|
|
@ -129,7 +131,7 @@ func searchHandler(ctx *Context) {
|
|||
return
|
||||
}
|
||||
|
||||
res, err := ctx.Srv.Index.Search(!ctx.LoggedOn(), search)
|
||||
res, err := ctx.Srv.DB.Index.Search(search)
|
||||
if err != nil {
|
||||
ctx.Data.Msg = err.Error()
|
||||
ctx.Exec()
|
||||
|
|
@ -148,7 +150,7 @@ func allHandler(ctx *Context) {
|
|||
BodyTitle: "All Articles",
|
||||
Admin: ctx.GetAdmin(),
|
||||
}
|
||||
all, err := ctx.Srv.Index.GetAll(!ctx.LoggedOn())
|
||||
all, err := ctx.Srv.DB.Index.GetAll(!ctx.LoggedOn())
|
||||
if err != nil {
|
||||
ctx.Data.Msg = err.Error()
|
||||
}
|
||||
|
|
@ -171,11 +173,11 @@ func wikiNewHandler(ctx *Context) {
|
|||
pub = true
|
||||
}
|
||||
submit := ctx.Form("submit")
|
||||
art := Article{
|
||||
p := core.Page{
|
||||
Title: title,
|
||||
MD: text,
|
||||
}
|
||||
ctx.Data.Data = art
|
||||
ctx.Data.Data = p
|
||||
if !ctx.CheckToken(nil) {
|
||||
return
|
||||
}
|
||||
|
|
@ -184,7 +186,7 @@ func wikiNewHandler(ctx *Context) {
|
|||
ctx.Exec()
|
||||
return
|
||||
}
|
||||
newTitle, err := ctx.Srv.Index.Index(title, text, ctx.GetUser(), pub)
|
||||
newTitle, err := ctx.Srv.DB.Index.Index(title, text, ctx.GetUser(), pub)
|
||||
if err != nil {
|
||||
ctx.Data.Msg = err.Error()
|
||||
ctx.Exec()
|
||||
|
|
@ -202,7 +204,7 @@ func wikiHandler(ctx *Context) {
|
|||
Admin: ctx.GetAdmin(),
|
||||
}
|
||||
title := ctx.Var("title")
|
||||
art, err := ctx.Srv.Index.Get(!ctx.LoggedOn(), title)
|
||||
art, err := ctx.Srv.DB.Index.Get(!ctx.LoggedOn(), title)
|
||||
if err != nil {
|
||||
ctx.NotFound()
|
||||
return
|
||||
|
|
@ -227,7 +229,7 @@ func wikiEditHandler(ctx *Context) {
|
|||
title := ctx.Var("title")
|
||||
switch ctx.Method() {
|
||||
case "GET":
|
||||
art, err := ctx.Srv.Index.Get(!ctx.LoggedOn(), title)
|
||||
art, err := ctx.Srv.DB.Index.Get(!ctx.LoggedOn(), title)
|
||||
if err != nil {
|
||||
ctx.NotFound()
|
||||
return
|
||||
|
|
@ -236,7 +238,6 @@ func wikiEditHandler(ctx *Context) {
|
|||
ctx.Data.Data = art
|
||||
ctx.Data.Title = art.Title
|
||||
ctx.Data.BodyTitle = art.Title
|
||||
ctx.Data.Editor = ctx.Srv.Editors.Set(title, ctx.GetUser())
|
||||
ctx.Exec()
|
||||
case "POST":
|
||||
ftitle := ctx.Form("title")
|
||||
|
|
@ -247,7 +248,7 @@ func wikiEditHandler(ctx *Context) {
|
|||
pub = true
|
||||
}
|
||||
submit := ctx.Form("submit")
|
||||
ctx.Data.Data = Article{
|
||||
ctx.Data.Data = core.Page{
|
||||
Title: ftitle,
|
||||
LinkTitle: title,
|
||||
MD: text,
|
||||
|
|
@ -258,17 +259,12 @@ func wikiEditHandler(ctx *Context) {
|
|||
if !ctx.CheckToken(nil) {
|
||||
return
|
||||
}
|
||||
if submit == "Back" {
|
||||
ctx.Srv.Editors.RemoveEditor(title, ctx.GetUser())
|
||||
ctx.Redirect("/wiki/"+title, 302)
|
||||
return
|
||||
}
|
||||
if submit != "Submit" {
|
||||
ctx.Data.Msg = "wrong inputs"
|
||||
ctx.Exec()
|
||||
return
|
||||
}
|
||||
err := ctx.Srv.Index.Update(title, text, ctx.GetUser(), pub)
|
||||
err := ctx.Srv.DB.Index.Update(title, text, ctx.GetUser(), pub)
|
||||
if err != nil {
|
||||
ctx.Data.Msg = err.Error()
|
||||
ctx.Exec()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue