clean up the one or many arrays a little
This commit is contained in:
parent
a7adc79f20
commit
bed7d662bb
43
activity.go
43
activity.go
|
@ -468,19 +468,12 @@ func newphone(a []string, obj junk.Junk) []string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func extractattrto(obj junk.Junk) string {
|
func extractattrto(obj junk.Junk) string {
|
||||||
who, _ := obj.GetString("attributedTo")
|
arr := oneforall(obj, "attributedTo")
|
||||||
if who != "" {
|
|
||||||
return who
|
|
||||||
}
|
|
||||||
o, ok := obj.GetMap("attributedTo")
|
|
||||||
if ok {
|
|
||||||
id, ok := o.GetString("id")
|
|
||||||
if ok {
|
|
||||||
return id
|
|
||||||
}
|
|
||||||
}
|
|
||||||
arr, _ := obj.GetArray("attributedTo")
|
|
||||||
for _, a := range arr {
|
for _, a := range arr {
|
||||||
|
s, ok := a.(string)
|
||||||
|
if ok {
|
||||||
|
return s
|
||||||
|
}
|
||||||
o, ok := a.(junk.Junk)
|
o, ok := a.(junk.Junk)
|
||||||
if ok {
|
if ok {
|
||||||
t, _ := o.GetString("type")
|
t, _ := o.GetString("type")
|
||||||
|
@ -489,14 +482,21 @@ func extractattrto(obj junk.Junk) string {
|
||||||
return id
|
return id
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
s, ok := a.(string)
|
|
||||||
if ok {
|
|
||||||
return s
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func oneforall(obj junk.Junk, key string) []interface{} {
|
||||||
|
if val, ok := obj.GetMap(key); ok {
|
||||||
|
return []interface{}{val}
|
||||||
|
}
|
||||||
|
if str, ok := obj.GetString(key); ok {
|
||||||
|
return []interface{}{str}
|
||||||
|
}
|
||||||
|
arr, _ := obj.GetArray(key)
|
||||||
|
return arr
|
||||||
|
}
|
||||||
|
|
||||||
func firstofmany(obj junk.Junk, key string) string {
|
func firstofmany(obj junk.Junk, key string) string {
|
||||||
if val, _ := obj.GetString(key); val != "" {
|
if val, _ := obj.GetString(key); val != "" {
|
||||||
return val
|
return val
|
||||||
|
@ -958,7 +958,7 @@ func xonksaver(user *WhatAbout, item junk.Junk, origin string) *Honk {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if !preferorig {
|
if !preferorig {
|
||||||
atts, _ := obj.GetArray("attachment")
|
atts := oneforall(obj, "attachment")
|
||||||
for _, atti := range atts {
|
for _, atti := range atts {
|
||||||
att, ok := atti.(junk.Junk)
|
att, ok := atti.(junk.Junk)
|
||||||
if !ok {
|
if !ok {
|
||||||
|
@ -967,9 +967,6 @@ func xonksaver(user *WhatAbout, item junk.Junk, origin string) *Honk {
|
||||||
}
|
}
|
||||||
procatt(att)
|
procatt(att)
|
||||||
}
|
}
|
||||||
if att, ok := obj.GetMap("attachment"); ok {
|
|
||||||
procatt(att)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
proctag := func(tag junk.Junk) {
|
proctag := func(tag junk.Junk) {
|
||||||
tt, _ := tag.GetString("type")
|
tt, _ := tag.GetString("type")
|
||||||
|
@ -1016,7 +1013,7 @@ func xonksaver(user *WhatAbout, item junk.Junk, origin string) *Honk {
|
||||||
mentions = append(mentions, m)
|
mentions = append(mentions, m)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tags, _ := obj.GetArray("tag")
|
tags := oneforall(obj, "tag")
|
||||||
for _, tagi := range tags {
|
for _, tagi := range tags {
|
||||||
tag, ok := tagi.(junk.Junk)
|
tag, ok := tagi.(junk.Junk)
|
||||||
if !ok {
|
if !ok {
|
||||||
|
@ -1024,10 +1021,6 @@ func xonksaver(user *WhatAbout, item junk.Junk, origin string) *Honk {
|
||||||
}
|
}
|
||||||
proctag(tag)
|
proctag(tag)
|
||||||
}
|
}
|
||||||
tag, ok := obj.GetMap("tag")
|
|
||||||
if ok {
|
|
||||||
proctag(tag)
|
|
||||||
}
|
|
||||||
if starttime, ok := obj.GetString("startTime"); ok {
|
if starttime, ok := obj.GetString("startTime"); ok {
|
||||||
if start, err := time.Parse(time.RFC3339, starttime); err == nil {
|
if start, err := time.Parse(time.RFC3339, starttime); err == nil {
|
||||||
t := new(Time)
|
t := new(Time)
|
||||||
|
|
Loading…
Reference in New Issue