allow import the most recent honks for a xonker

master
Ted Unangst 5 years ago
parent 2ac28709ea
commit 50f0222eb1

@ -311,39 +311,37 @@ func getboxes(ident string) (*Box, error) {
return b, nil return b, nil
} }
func peeppeep() { func gimmexonks(user *WhatAbout, outbox string) {
user, _ := butwhatabout("htest") log.Printf("getting outbox: %s", outbox)
honkers := gethonkers(user.ID) j, err := GetJunk(outbox)
for _, f := range honkers {
if f.Flavor != "peep" {
continue
}
log.Printf("getting updates: %s", f.XID)
box, err := getboxes(f.XID)
if err != nil { if err != nil {
log.Printf("error getting outbox: %s", err) log.Printf("error getting outbox: %s", err)
continue return
}
log.Printf("getting outbox")
j, err := GetJunk(box.Out)
if err != nil {
log.Printf("err: %s", err)
continue
} }
t, _ := j.GetString("type") t, _ := j.GetString("type")
origin := originate(f.XID) origin := originate(outbox)
if t == "OrderedCollection" { if t == "OrderedCollection" {
items, _ := j.GetArray("orderedItems") items, _ := j.GetArray("orderedItems")
if items == nil { if items == nil {
obj, ok := j.GetMap("first")
if ok {
items, _ = obj.GetArray("orderedItems")
} else {
page1, _ := j.GetString("first") page1, _ := j.GetString("first")
j, err = GetJunk(page1) j, err = GetJunk(page1)
if err != nil { if err != nil {
log.Printf("err: %s", err) log.Printf("error gettings page1: %s", err)
continue return
} }
items, _ = j.GetArray("orderedItems") items, _ = j.GetArray("orderedItems")
} }
}
if len(items) > 20 {
items = items[0:20]
}
for i, j := 0, len(items)-1; i < j; i, j = i+1, j-1 {
items[i], items[j] = items[j], items[i]
}
for _, item := range items { for _, item := range items {
obj, ok := item.(junk.Junk) obj, ok := item.(junk.Junk)
if !ok { if !ok {
@ -356,8 +354,23 @@ func peeppeep() {
} }
} }
} }
}
func peeppeep() {
user, _ := butwhatabout("htest")
honkers := gethonkers(user.ID)
for _, f := range honkers {
if f.Flavor != "peep" {
continue
}
log.Printf("getting updates: %s", f.XID)
box, err := getboxes(f.XID)
if err != nil {
log.Printf("error getting outbox: %s", err)
continue
}
gimmexonks(user, box.Out)
}
}
func whosthere(xid string) ([]string, string) { func whosthere(xid string) ([]string, string) {
obj, err := GetJunk(xid) obj, err := GetJunk(xid)
if err != nil { if err != nil {

@ -372,8 +372,17 @@ func ximport(w http.ResponseWriter, r *http.Request) {
log.Printf("error getting external object: %s", err) log.Printf("error getting external object: %s", err)
return return
} }
log.Printf("importing %s", xid)
u := login.GetUserInfo(r) u := login.GetUserInfo(r)
user, _ := butwhatabout(u.Username) user, _ := butwhatabout(u.Username)
what, _ := j.GetString("type")
if what == "Person" {
outbox, _ := j.GetString("outbox")
gimmexonks(user, outbox)
http.Redirect(w, r, "/h?xid="+url.QueryEscape(xid), http.StatusSeeOther)
return
}
xonk := xonkxonk(user, j, originate(xid)) xonk := xonkxonk(user, j, originate(xid))
convoy := "" convoy := ""
if xonk != nil { if xonk != nil {

Loading…
Cancel
Save