From fa099176f9c20dcd57fe6e845da07aff1bcf81b9 Mon Sep 17 00:00:00 2001 From: Stanislav Seletskiy Date: Tue, 22 Sep 2015 17:58:15 +0600 Subject: [PATCH] refactoring and check on errors --- main.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/main.go b/main.go index cd94c2e..c72c27b 100644 --- a/main.go +++ b/main.go @@ -185,6 +185,18 @@ func updatePage( ) error { nextPageVersion := pageInfo.Version.Number + 1 + if len(pageInfo.Ancestors) == 0 { + return fmt.Errorf( + "Page '%s' info does not contain any information about parents", + pageID, + ) + } + + // picking only the last one, which is required by confluence + oldAncestors := []map[string]interface{}{ + {"id": pageInfo.Ancestors[len(pageInfo.Ancestors)-1].Id}, + } + payload := map[string]interface{}{ "id": pageID, "type": "page", @@ -193,9 +205,7 @@ func updatePage( "number": nextPageVersion, "minorEdit": false, }, - "ancestors": []map[string]interface{}{ - {"id": pageInfo.Ancestors[len(pageInfo.Ancestors)-1].Id}, - }, + "ancestors": oldAncestors, "body": map[string]interface{}{ "storage": map[string]interface{}{ "value": string(newContent),