mirror of https://github.com/jlelse/GoBlog
Fix error
This commit is contained in:
parent
44c7bd117f
commit
0be61598ef
|
@ -126,7 +126,7 @@ func apHandleInbox(w http.ResponseWriter, r *http.Request) {
|
|||
return
|
||||
}
|
||||
// Parse activity
|
||||
activity := make(map[string]interface{})
|
||||
activity := map[string]interface{}{}
|
||||
err = json.NewDecoder(r.Body).Decode(&activity)
|
||||
_ = r.Body.Close()
|
||||
if err != nil {
|
||||
|
@ -292,14 +292,14 @@ func apRemoveInbox(inbox string) error {
|
|||
|
||||
func (p *post) apPost() {
|
||||
n := p.toASNote()
|
||||
createActivity := make(map[string]interface{})
|
||||
createActivity["@context"] = asContext
|
||||
createActivity["actor"] = appConfig.Blogs[p.Blog].apIri()
|
||||
createActivity["id"] = p.fullURL()
|
||||
createActivity["published"] = n.Published
|
||||
createActivity["type"] = "Create"
|
||||
createActivity["object"] = n
|
||||
apSendToAllFollowers(p.Blog, createActivity)
|
||||
apSendToAllFollowers(p.Blog, map[string]interface{}{
|
||||
"@context": asContext,
|
||||
"actor": appConfig.Blogs[p.Blog].apIri(),
|
||||
"id": p.fullURL(),
|
||||
"published": n.Published,
|
||||
"type": "Create",
|
||||
"object": n,
|
||||
})
|
||||
if n.InReplyTo != "" {
|
||||
// Is reply, so announce it
|
||||
time.Sleep(30 * time.Second)
|
||||
|
@ -308,39 +308,38 @@ func (p *post) apPost() {
|
|||
}
|
||||
|
||||
func (p *post) apUpdate() {
|
||||
n := p.toASNote()
|
||||
updateActivity := make(map[string]interface{})
|
||||
updateActivity["@context"] = asContext
|
||||
updateActivity["actor"] = appConfig.Blogs[p.Blog].apIri()
|
||||
updateActivity["id"] = p.fullURL()
|
||||
updateActivity["published"] = time.Now().Format("2006-01-02T15:04:05-07:00")
|
||||
updateActivity["type"] = "Update"
|
||||
updateActivity["object"] = n
|
||||
apSendToAllFollowers(p.Blog, updateActivity)
|
||||
apSendToAllFollowers(p.Blog, map[string]interface{}{
|
||||
"@context": asContext,
|
||||
"actor": appConfig.Blogs[p.Blog].apIri(),
|
||||
"id": p.fullURL(),
|
||||
"published": time.Now().Format("2006-01-02T15:04:05-07:00"),
|
||||
"type": "Update",
|
||||
"object": p.toASNote(),
|
||||
})
|
||||
}
|
||||
|
||||
func (p *post) apAnnounce() {
|
||||
announceActivity := make(map[string]interface{})
|
||||
announceActivity["@context"] = asContext
|
||||
announceActivity["actor"] = appConfig.Blogs[p.Blog].apIri()
|
||||
announceActivity["id"] = p.fullURL() + "#announce"
|
||||
announceActivity["published"] = p.toASNote().Published
|
||||
announceActivity["type"] = "Announce"
|
||||
announceActivity["object"] = p.fullURL()
|
||||
apSendToAllFollowers(p.Blog, announceActivity)
|
||||
apSendToAllFollowers(p.Blog, map[string]interface{}{
|
||||
"@context": asContext,
|
||||
"actor": appConfig.Blogs[p.Blog].apIri(),
|
||||
"id": p.fullURL() + "#announce",
|
||||
"published": p.toASNote().Published,
|
||||
"type": "Announce",
|
||||
"object": p.fullURL(),
|
||||
})
|
||||
}
|
||||
|
||||
func (p *post) apDelete() {
|
||||
deleteActivity := make(map[string]interface{})
|
||||
deleteActivity["@context"] = asContext
|
||||
deleteActivity["actor"] = appConfig.Blogs[p.Blog].apIri()
|
||||
deleteActivity["id"] = p.fullURL() + "#delete"
|
||||
deleteActivity["type"] = "Delete"
|
||||
deleteActivity["object"] = map[string]string{
|
||||
"id": p.fullURL(),
|
||||
"type": "Tombstone",
|
||||
}
|
||||
apSendToAllFollowers(p.Blog, deleteActivity)
|
||||
apSendToAllFollowers(p.Blog, map[string]interface{}{
|
||||
"@context": asContext,
|
||||
"actor": appConfig.Blogs[p.Blog].apIri(),
|
||||
"id": p.fullURL() + "#delete",
|
||||
"type": "Delete",
|
||||
"object": map[string]string{
|
||||
"id": p.fullURL(),
|
||||
"type": "Tombstone",
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
func apAccept(blogName string, blog *configBlog, follow map[string]interface{}) {
|
||||
|
@ -366,13 +365,14 @@ func apAccept(blogName string, blog *configBlog, follow map[string]interface{})
|
|||
apAddFollower(blogName, follower.ID, inbox)
|
||||
// remove @context from the inner activity
|
||||
delete(follow, "@context")
|
||||
accept := make(map[string]interface{})
|
||||
accept["@context"] = asContext
|
||||
accept["to"] = follow["actor"]
|
||||
accept := map[string]interface{}{
|
||||
"@context": asContext,
|
||||
"to": follow["actor"],
|
||||
"actor": blog.apIri(),
|
||||
"object": follow,
|
||||
"type": "Accept",
|
||||
}
|
||||
_, accept["id"] = apNewID(blog)
|
||||
accept["actor"] = blog.apIri()
|
||||
accept["object"] = follow
|
||||
accept["type"] = "Accept"
|
||||
apQueueSendSigned(blog.apIri(), follower.Inbox, accept)
|
||||
}
|
||||
|
||||
|
|
14
go.mod
14
go.mod
|
@ -54,15 +54,15 @@ require (
|
|||
github.com/yuin/goldmark-emoji v1.0.1
|
||||
go.uber.org/multierr v1.6.0 // indirect
|
||||
go.uber.org/zap v1.16.0 // indirect
|
||||
golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c // indirect
|
||||
golang.org/x/lint v0.0.0-20200302205851-738671d3881b // indirect
|
||||
golang.org/x/crypto v0.0.0-20201208171446-5f87f3452ae9 // indirect
|
||||
golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5 // indirect
|
||||
golang.org/x/mod v0.4.0 // indirect
|
||||
golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb // indirect
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9
|
||||
golang.org/x/sys v0.0.0-20201204225414-ed752295db88 // indirect
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 // indirect
|
||||
golang.org/x/net v0.0.0-20201207224615-747e23833adb // indirect
|
||||
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a
|
||||
golang.org/x/sys v0.0.0-20201207223542-d4d67f95c62d // indirect
|
||||
golang.org/x/term v0.0.0-20201207232118-ee85cb95a76b // indirect
|
||||
golang.org/x/text v0.3.4 // indirect
|
||||
golang.org/x/tools v0.0.0-20201207204333-a835c872fcea // indirect
|
||||
golang.org/x/tools v0.0.0-20201208062317-e652b2f42cc7 // indirect
|
||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
|
||||
gopkg.in/ini.v1 v1.62.0 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
|
|
26
go.sum
26
go.sum
|
@ -368,8 +368,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
|
|||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI=
|
||||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c h1:9HhBz5L/UjnK9XLtiZhYAdue5BVKep3PMmS2LuPDt8k=
|
||||
golang.org/x/crypto v0.0.0-20201203163018-be400aefbc4c/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
|
||||
golang.org/x/crypto v0.0.0-20201208171446-5f87f3452ae9 h1:sYNJzB4J8toYPQTM6pAkcmBRgw9SnQKP9oXCHfgy604=
|
||||
golang.org/x/crypto v0.0.0-20201208171446-5f87f3452ae9/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
|
||||
|
@ -385,8 +385,8 @@ golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHl
|
|||
golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
|
||||
golang.org/x/lint v0.0.0-20190930215403-16217165b5de h1:5hukYrvBGR8/eNkX5mdUezrA6JiaEZDtJb9Ei+1LlBs=
|
||||
golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
|
||||
golang.org/x/lint v0.0.0-20200302205851-738671d3881b h1:Wh+f8QHJXR411sJR8/vRBTZ7YapZaRvUcLFFJhusH0k=
|
||||
golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
|
||||
golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5 h1:2M3HP5CCK1Si9FQhwnzYhXdG6DXeebvUHFpre8QvbyI=
|
||||
golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
|
||||
golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE=
|
||||
golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o=
|
||||
golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc=
|
||||
|
@ -418,8 +418,8 @@ golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLL
|
|||
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
|
||||
golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA=
|
||||
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb h1:eBmm0M9fYhWpKZLjQUUKka/LtIxf46G4fxeEz5KJr9U=
|
||||
golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20201207224615-747e23833adb h1:xj2oMIbduz83x7tzglytWT7spn6rP+9hvKjTpro6/pM=
|
||||
golang.org/x/net v0.0.0-20201207224615-747e23833adb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
|
@ -432,6 +432,8 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJ
|
|||
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9 h1:SQFwaSi55rU7vdNs9Yr0Z324VNlrF+0wMqRXT4St8ck=
|
||||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a h1:DcqTD9SDLc+1P/r1EmRBwnVsrOwW+kk2vWf9n+1sGhs=
|
||||
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
|
@ -454,12 +456,12 @@ golang.org/x/sys v0.0.0-20200724161237-0e2f3a69832c h1:UIcGWL6/wpCfyGuJnRFJRurA+
|
|||
golang.org/x/sys v0.0.0-20200724161237-0e2f3a69832c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201204225414-ed752295db88 h1:KmZPnMocC93w341XZp26yTJg8Za7lhb2KhkYmixoeso=
|
||||
golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201207223542-d4d67f95c62d h1:MiWWjyhUzZ+jvhZvloX6ZrUsdEghn8a64Upd8EMHglE=
|
||||
golang.org/x/sys v0.0.0-20201207223542-d4d67f95c62d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221 h1:/ZHdbVpdR/jk3g30/d4yUL0JU9kksj8+F/bnQUVLGDM=
|
||||
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/term v0.0.0-20201207232118-ee85cb95a76b h1:a0ErnNnPKmhDyIXQvdZr+Lq8dc8xpMeqkF8y5PgQU4Q=
|
||||
golang.org/x/term v0.0.0-20201207232118-ee85cb95a76b/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs=
|
||||
|
@ -494,8 +496,8 @@ golang.org/x/tools v0.0.0-20191216052735-49a3e744a425 h1:VvQyQJN0tSuecqgcIxMWnnf
|
|||
golang.org/x/tools v0.0.0-20191216052735-49a3e744a425/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
|
||||
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
|
||||
golang.org/x/tools v0.0.0-20200410194907-79a7a3126eef/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
|
||||
golang.org/x/tools v0.0.0-20201207204333-a835c872fcea h1:LgKM3cNs8xO6GK1ZVK0nasPn7IN39Sz9EBTwQLyishk=
|
||||
golang.org/x/tools v0.0.0-20201207204333-a835c872fcea/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/tools v0.0.0-20201208062317-e652b2f42cc7 h1:2OSu5vYyX4LVqZAtqZXnFEcN26SDKIJYlEVIRl1tj8U=
|
||||
golang.org/x/tools v0.0.0-20201208062317-e652b2f42cc7/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543 h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
|
||||
|
|
|
@ -285,7 +285,9 @@ func convertMPMfToPost(mf *microformatItem) (*post, error) {
|
|||
if len(mf.Type) != 1 || mf.Type[0] != "h-entry" {
|
||||
return nil, errors.New("only entry type is supported so far")
|
||||
}
|
||||
entry := &post{}
|
||||
entry := &post{
|
||||
Parameters: map[string][]string{},
|
||||
}
|
||||
// Content
|
||||
if mf.Properties != nil && len(mf.Properties.Content) == 1 && len(mf.Properties.Content[0]) > 0 {
|
||||
entry.Content = mf.Properties.Content[0]
|
||||
|
|
|
@ -286,7 +286,7 @@ func getPosts(config *postsRequestConfig) (posts []*post, err error) {
|
|||
defer func() {
|
||||
_ = rows.Close()
|
||||
}()
|
||||
paths := make(map[string]int)
|
||||
paths := map[string]int{}
|
||||
for rows.Next() {
|
||||
p := &post{}
|
||||
var parameterName, parameterValue string
|
||||
|
@ -297,7 +297,7 @@ func getPosts(config *postsRequestConfig) (posts []*post, err error) {
|
|||
if paths[p.Path] == 0 {
|
||||
index := len(posts)
|
||||
paths[p.Path] = index + 1
|
||||
p.Parameters = make(map[string][]string)
|
||||
p.Parameters = map[string][]string{}
|
||||
posts = append(posts, p)
|
||||
}
|
||||
if parameterName != "" && posts != nil {
|
||||
|
|
|
@ -193,7 +193,7 @@ func initRendering() error {
|
|||
},
|
||||
}
|
||||
|
||||
templates = make(map[string]*template.Template)
|
||||
templates = map[string]*template.Template{}
|
||||
|
||||
baseTemplatePath := path.Join(templatesDir, templateBase+templatesExt)
|
||||
err := filepath.Walk(templatesDir, func(p string, info os.FileInfo, err error) error {
|
||||
|
|
Loading…
Reference in New Issue