more cleanup

This commit is contained in:
ston1th 2018-10-21 22:45:22 +02:00
commit 78680de687
6 changed files with 200491 additions and 189802 deletions

View file

@ -52,9 +52,6 @@ func New(dir string) (db *DB, err error) {
} }
_, err = db.CreatePage(core.IndexPage, core.WikiSection, welcome, defUser, core.Public) _, err = db.CreatePage(core.IndexPage, core.WikiSection, welcome, defUser, core.Public)
if err != nil && err != store.ErrKeyNotFound {
return
}
return return
} }

View file

@ -17,6 +17,7 @@ var (
errPermissionDenied = errors.New("db: permission denied") errPermissionDenied = errors.New("db: permission denied")
errInvalidPermission = errors.New("db: invalid permission") errInvalidPermission = errors.New("db: invalid permission")
errPrivateWikiPage = errors.New("db: private wiki pages are not allowed") errPrivateWikiPage = errors.New("db: private wiki pages are not allowed")
errNonPublicIndexPage = errors.New("db: internal/private index page is not allowed")
errDeleteIndexPage = errors.New("db: index page can not be deleted") errDeleteIndexPage = errors.New("db: index page can not be deleted")
) )
@ -77,7 +78,9 @@ func (db *DB) CreatePage(title, section, markdown, username string, p core.Permi
} }
} }
st := render.StoreTitle(section, render.Title(title)) st := render.StoreTitle(section, render.Title(title))
if _, err = db.getPage(st, username); err != nil && err != store.ErrKeyNotFound { _, err = db.getPage(st, username)
//if err == nil || (err != nil && err != store.ErrKeyNotFound) {
if err != store.ErrKeyNotFound {
return return
} }
@ -113,6 +116,11 @@ func (db *DB) UpdatePage(title, section, markdown, username string, p core.Permi
err = errPrivateWikiPage err = errPrivateWikiPage
return return
} }
if section == core.WikiSection && title == core.IndexPage &&
(p == core.Internal || p == core.Private) {
err = errNonPublicIndexPage
return
}
st := render.StoreTitle(section, title) st := render.StoreTitle(section, title)
page, err := db.getPage(st, username) page, err := db.getPage(st, username)
if err != nil { if err != nil {

View file

@ -13,8 +13,8 @@ var (
debug = false debug = false
) )
func InitLogger(dir, file string, debug bool) { func InitLogger(dir, file string, d bool) {
debug = debug debug = d
if file == "-" { if file == "-" {
return return
} }
@ -40,7 +40,7 @@ func Fatal(v ...interface{}) {
func Debug(v ...interface{}) { func Debug(v ...interface{}) {
if debug { if debug {
log.Println(append([]interface{}{"debug:"}, v...)) log.Println(append([]interface{}{"debug:"}, v...)...)
} }
} }

View file

@ -18,22 +18,21 @@ type BoltStore struct {
db *bolt.DB db *bolt.DB
} }
func NewBoltStore(file string, m Marshaler) (bs *BoltStore, err error) { func NewBoltStore(file string, m Marshaler) (Store, error) {
if m == nil { if m == nil {
m = NewGOB() m = NewGOB()
} }
db, err := bolt.Open(file, fileMode, nil) db, err := bolt.Open(file, fileMode, nil)
if err != nil { if err != nil {
return return nil, err
} }
if err = db.Update(func(tx *bolt.Tx) (err error) { if err = db.Update(func(tx *bolt.Tx) (err error) {
_, err = tx.CreateBucketIfNotExists([]byte(defaultBoltBucket)) _, err = tx.CreateBucketIfNotExists([]byte(defaultBoltBucket))
return return
}); err != nil { }); err != nil {
return return nil, err
} }
bs = &BoltStore{m, db} return &BoltStore{m, db}, nil
return
} }
type dump struct { type dump struct {

View file

@ -1,4 +1,3 @@
//line segment_words.rl:1 //line segment_words.rl:1
// Copyright (c) 2015 Couchbase, Inc. // Copyright (c) 2015 Couchbase, Inc.
// Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file // Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
@ -31,7 +30,6 @@ const (
Ideo Ideo
) )
//line segment_words.go:36 //line segment_words.go:36
var _s_key_offsets []uint16 = []uint16{ var _s_key_offsets []uint16 = []uint16{
0, 1, 3, 5, 7, 10, 15, 20, 0, 1, 3, 5, 7, 10, 15, 20,
@ -18539,10 +18537,8 @@ const s_error int = -1
const s_en_main int = 4862 const s_en_main int = 4862
//line segment_words.rl:35 //line segment_words.rl:35
func segmentWords(data []byte, maxTokens int, atEOF bool, val [][]byte, types []int) ([][]byte, []int, int, error) { func segmentWords(data []byte, maxTokens int, atEOF bool, val [][]byte, types []int) ([][]byte, []int, int, error) {
cs, p, pe := 0, 0, len(data) cs, p, pe := 0, 0, len(data)
cap := maxTokens cap := maxTokens
@ -18593,7 +18589,6 @@ _resume:
//line NONE:1 //line NONE:1
ts = p ts = p
//line segment_words.go:18598 //line segment_words.go:18598
} }
@ -18664,7 +18659,6 @@ _eof_trans:
endPos = p endPos = p
case 34: case 34:
//line segment_words.rl:76 //line segment_words.rl:76
te = p te = p
@ -19067,7 +19061,8 @@ p = (te) - 1
//line NONE:1 //line NONE:1
switch act { switch act {
case 1: case 1:
{p = (te) - 1 {
p = (te) - 1
if !atEOF { if !atEOF {
return val, types, totalConsumed, nil return val, types, totalConsumed, nil
@ -19081,7 +19076,8 @@ p = (te) - 1
} }
} }
case 2: case 2:
{p = (te) - 1 {
p = (te) - 1
if endPos+1 == pe && !atEOF { if endPos+1 == pe && !atEOF {
return val, types, totalConsumed, nil return val, types, totalConsumed, nil
@ -19097,7 +19093,8 @@ p = (te) - 1
} }
} }
case 3: case 3:
{p = (te) - 1 {
p = (te) - 1
if endPos+1 == pe && !atEOF { if endPos+1 == pe && !atEOF {
return val, types, totalConsumed, nil return val, types, totalConsumed, nil
@ -19113,7 +19110,8 @@ p = (te) - 1
} }
} }
case 4: case 4:
{p = (te) - 1 {
p = (te) - 1
if !atEOF { if !atEOF {
return val, types, totalConsumed, nil return val, types, totalConsumed, nil
@ -19126,7 +19124,8 @@ p = (te) - 1
} }
} }
case 5: case 5:
{p = (te) - 1 {
p = (te) - 1
if endPos+1 == pe && !atEOF { if endPos+1 == pe && !atEOF {
return val, types, totalConsumed, nil return val, types, totalConsumed, nil
@ -19142,7 +19141,8 @@ p = (te) - 1
} }
} }
case 7: case 7:
{p = (te) - 1 {
p = (te) - 1
lastPos := startPos lastPos := startPos
for lastPos <= endPos { for lastPos <= endPos {
@ -19166,7 +19166,8 @@ p = (te) - 1
} }
} }
case 12: case 12:
{p = (te) - 1 {
p = (te) - 1
lastPos := startPos lastPos := startPos
for lastPos <= endPos { for lastPos <= endPos {
@ -19190,7 +19191,8 @@ p = (te) - 1
} }
} }
case 13: case 13:
{p = (te) - 1 {
p = (te) - 1
lastPos := startPos lastPos := startPos
for lastPos <= endPos { for lastPos <= endPos {
@ -19215,7 +19217,6 @@ p = (te) - 1
} }
} }
case 28: case 28:
//line segment_words.rl:68 //line segment_words.rl:68
@ -19225,7 +19226,6 @@ p = (te) - 1
endPos = p endPos = p
case 33: case 33:
//line segment_words.rl:72 //line segment_words.rl:72
@ -19294,7 +19294,6 @@ te = p+1
endPos = p endPos = p
case 26: case 26:
//line segment_words.rl:68 //line segment_words.rl:68
@ -19372,7 +19371,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:76 //line segment_words.rl:76
act = 1; act = 1
case 11: case 11:
//line NONE:1 //line NONE:1
@ -19383,7 +19382,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:89 //line segment_words.rl:89
act = 2; act = 2
case 16: case 16:
//line NONE:1 //line NONE:1
@ -19394,7 +19393,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:104 //line segment_words.rl:104
act = 3; act = 3
case 6: case 6:
//line NONE:1 //line NONE:1
@ -19405,7 +19404,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:119 //line segment_words.rl:119
act = 4; act = 4
case 14: case 14:
//line NONE:1 //line NONE:1
@ -19416,7 +19415,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:131 //line segment_words.rl:131
act = 5; act = 5
case 20: case 20:
//line NONE:1 //line NONE:1
@ -19427,7 +19426,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:161 //line segment_words.rl:161
act = 7; act = 7
case 9: case 9:
//line NONE:1 //line NONE:1
@ -19438,7 +19437,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:161 //line segment_words.rl:161
act = 12; act = 12
case 2: case 2:
//line NONE:1 //line NONE:1
@ -19449,7 +19448,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:161 //line segment_words.rl:161
act = 13; act = 13
case 29: case 29:
//line NONE:1 //line NONE:1
@ -19464,7 +19463,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:76 //line segment_words.rl:76
act = 1; act = 1
case 30: case 30:
//line NONE:1 //line NONE:1
@ -19479,7 +19478,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:119 //line segment_words.rl:119
act = 4; act = 4
case 25: case 25:
//line NONE:1 //line NONE:1
@ -19494,7 +19493,7 @@ te = p+1
endPos = p endPos = p
//line segment_words.rl:161 //line segment_words.rl:161
act = 13; act = 13
//line segment_words.go:19500 //line segment_words.go:19500
} }
@ -19505,14 +19504,15 @@ _again:
//line NONE:1 //line NONE:1
ts = 0 ts = 0
//line segment_words.go:19510 //line segment_words.go:19510
} }
if p++; p != pe { if p++; p != pe {
goto _resume goto _resume
} }
_test_eof: {} _test_eof:
{
}
if p == eof { if p == eof {
if _s_eof_trans[cs] > 0 { if _s_eof_trans[cs] > 0 {
_trans = int(_s_eof_trans[cs] - 1) _trans = int(_s_eof_trans[cs] - 1)
@ -19524,7 +19524,6 @@ ts = 0
startPos = p startPos = p
//line segment_words.go:19529 //line segment_words.go:19529
} }
} }
@ -19533,7 +19532,6 @@ ts = 0
//line segment_words.rl:278 //line segment_words.rl:278
if cs < s_first_final { if cs < s_first_final {
return val, types, totalConsumed, ParseError return val, types, totalConsumed, ParseError
} }

File diff suppressed because it is too large Load diff