mirror of
https://github.com/kovetskiy/mark.git
synced 2026-05-02 21:32:34 +00:00
Add Type metadata header to enable support for Confluence Blog Posts
This commit is contained in:
@@ -20,7 +20,7 @@ func EnsureAncestry(
|
||||
rest := ancestry
|
||||
|
||||
for i, title := range ancestry {
|
||||
page, err := api.FindPage(space, title)
|
||||
page, err := api.FindPage(space, title, "page")
|
||||
if err != nil {
|
||||
return nil, karma.Format(
|
||||
err,
|
||||
@@ -66,7 +66,7 @@ func EnsureAncestry(
|
||||
|
||||
if !dryRun {
|
||||
for _, title := range rest {
|
||||
page, err := api.CreatePage(space, parent, title, ``)
|
||||
page, err := api.CreatePage(space, "page", parent, title, ``)
|
||||
if err != nil {
|
||||
return nil, karma.Format(
|
||||
err,
|
||||
@@ -95,7 +95,7 @@ func ValidateAncestry(
|
||||
space string,
|
||||
ancestry []string,
|
||||
) (*confluence.PageInfo, error) {
|
||||
page, err := api.FindPage(space, ancestry[len(ancestry)-1])
|
||||
page, err := api.FindPage(space, ancestry[len(ancestry)-1], "page")
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
@@ -163,7 +163,7 @@ func getConfluenceLink(api *confluence.API, space, title string) (string, error)
|
||||
url.QueryEscape(title),
|
||||
)
|
||||
|
||||
page, err := api.FindPage(space, title)
|
||||
page, err := api.FindPage(space, title, "page")
|
||||
if err != nil {
|
||||
return "", karma.Format(err, "api: find page")
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ func ResolvePage(
|
||||
api *confluence.API,
|
||||
meta *Meta,
|
||||
) (*confluence.PageInfo, *confluence.PageInfo, error) {
|
||||
page, err := api.FindPage(meta.Space, meta.Title)
|
||||
page, err := api.FindPage(meta.Space, meta.Title, meta.Type)
|
||||
if err != nil {
|
||||
return nil, nil, karma.Format(
|
||||
err,
|
||||
@@ -22,6 +22,16 @@ func ResolvePage(
|
||||
)
|
||||
}
|
||||
|
||||
if meta.Type == "blogpost" {
|
||||
log.Infof(
|
||||
nil,
|
||||
"Blog post will be stored as: %s",
|
||||
meta.Title,
|
||||
)
|
||||
|
||||
return nil, page, nil
|
||||
}
|
||||
|
||||
ancestry := meta.Parents
|
||||
if page != nil {
|
||||
ancestry = append(ancestry, page.Title)
|
||||
|
||||
@@ -13,6 +13,7 @@ import (
|
||||
const (
|
||||
HeaderParent = `Parent`
|
||||
HeaderSpace = `Space`
|
||||
HeaderType = `Type`
|
||||
HeaderTitle = `Title`
|
||||
HeaderLayout = `Layout`
|
||||
HeaderAttachment = `Attachment`
|
||||
@@ -23,6 +24,7 @@ const (
|
||||
type Meta struct {
|
||||
Parents []string
|
||||
Space string
|
||||
Type string
|
||||
Title string
|
||||
Layout string
|
||||
Attachments map[string]string
|
||||
@@ -67,6 +69,7 @@ func ExtractMeta(data []byte) (*Meta, []byte, error) {
|
||||
|
||||
if meta == nil {
|
||||
meta = &Meta{}
|
||||
meta.Type = "page" //Default if not specified
|
||||
meta.Attachments = make(map[string]string)
|
||||
}
|
||||
|
||||
@@ -84,6 +87,9 @@ func ExtractMeta(data []byte) (*Meta, []byte, error) {
|
||||
case HeaderSpace:
|
||||
meta.Space = strings.TrimSpace(value)
|
||||
|
||||
case HeaderType:
|
||||
meta.Type = strings.TrimSpace(value)
|
||||
|
||||
case HeaderTitle:
|
||||
meta.Title = strings.TrimSpace(value)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user