diff options
author | Steve <nilslice@gmail.com> | 2016-12-19 11:19:53 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-19 11:19:53 -0800 |
commit | 3791fadda7b761ffba38c567da29e2e71acd1dfb (patch) | |
tree | 79d810f9aafa1868ee0760983937470d0eea3db8 /system/db/content.go | |
parent | b20c5bdee38682edc851e646d815a34689c3c923 (diff) |
[addons] Creating foundation for plugin-like system "Addons" (#24)
* adding addons dir and sample addon which enables the use of a new input element in forms for referencing other content. "addons" is a conceptual plugin-like feature, similar to wordpress "plugins" dir, but not as sophisticated
Diffstat (limited to 'system/db/content.go')
-rw-r--r-- | system/db/content.go | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/system/db/content.go b/system/db/content.go index 87b3e69..535b601 100644 --- a/system/db/content.go +++ b/system/db/content.go @@ -10,9 +10,7 @@ import ( "strconv" "strings" - "github.com/bosssauce/ponzu/content" - "github.com/bosssauce/ponzu/management/editor" - "github.com/bosssauce/ponzu/management/manager" + "github.com/bosssauce/ponzu/system/item" "github.com/boltdb/bolt" "github.com/gorilla/schema" @@ -305,7 +303,7 @@ func Query(namespace string, opts QueryOptions) (int, [][]byte) { // correct bad input rather than return nil or error // similar to default case for opts.Order switch below if opts.Count < 0 { - opts.Count = 0 + opts.Count = -1 } if opts.Offset < 0 { @@ -420,7 +418,7 @@ func SortContent(namespace string) { // decode each (json) into type to then sort for i := range all { j := all[i] - post := content.Types[namespace]() + post := item.Types[namespace]() err := json.Unmarshal(j, &post) if err != nil { @@ -428,7 +426,7 @@ func SortContent(namespace string) { return } - posts = append(posts, post.(editor.Sortable)) + posts = append(posts, post.(item.Sortable)) } // sort posts @@ -469,7 +467,7 @@ func SortContent(namespace string) { } -type sortableContent []editor.Sortable +type sortableContent []item.Sortable func (s sortableContent) Len() int { return len(s) @@ -485,9 +483,9 @@ func (s sortableContent) Swap(i, j int) { func postToJSON(ns string, data url.Values) ([]byte, error) { // find the content type and decode values into it - t, ok := content.Types[ns] + t, ok := item.Types[ns] if !ok { - return nil, fmt.Errorf(content.ErrTypeNotRegistered, ns) + return nil, fmt.Errorf(item.ErrTypeNotRegistered, ns) } post := t() @@ -502,7 +500,7 @@ func postToJSON(ns string, data url.Values) ([]byte, error) { // if the content has no slug, and has no specifier, create a slug, check it // for duplicates, and add it to our values if data.Get("slug") == "" && data.Get("__specifier") == "" { - slug, err := manager.Slug(post.(content.Identifiable)) + slug, err := item.Slug(post.(item.Identifiable)) if err != nil { return nil, err } @@ -512,7 +510,7 @@ func postToJSON(ns string, data url.Values) ([]byte, error) { return nil, err } - post.(content.Sluggable).SetSlug(slug) + post.(item.Sluggable).SetSlug(slug) data.Set("slug", slug) } |