- The inventory's Recently Added puts T5 products added to the library in the last 30 days first. - The shop's T5 listing follows its sort menu: Best Match ranks by name, Newest by upload date (oldest first ascending); ratings and prices (T5 products have neither) sort by newest. - Outfit cards: outfit_products.php gets the outfit's community products added (not for sale), find_bundle.php is asked about IMVU's products only, and removing one in the card (remove_pids) keeps it from IMVU and forgets it in the outfit. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
af9158513b
commit
171e8173af
11 files changed
+463
-7
No files matched your search
@@ -54,6 +54,12 @@ func (p *Products) Intercept(x *proxy.Exchange) error {
|
||||
} else if len(x.Body) > 0 {
|
||||
return p.interceptProductInfo(x)
|
||||
}
|
||||
case "/api/outfit_products.php":
|
||||
return p.interceptOutfitProducts(x)
|
||||
case "/api/find_bundle.php":
|
||||
return p.interceptFindBundle(x)
|
||||
case "/api/recently_added_inventory.php":
|
||||
return p.interceptRecent(x)
|
||||
case "/api/shop/search_st.php":
|
||||
return p.interceptShopSearch(x)
|
||||
case "/api/service/shop/svc_catalog_purchase.php":
|
||||
@@ -625,8 +631,20 @@ func (p *Products) interceptOutfits(x *proxy.Exchange) error {
|
||||
if json.Unmarshal(x.Body, &save) != nil {
|
||||
return nil
|
||||
}
|
||||
removed := p.outfitRemovals(save) // the outfit card's remove_pids
|
||||
resave := func() error {
|
||||
body, _ := json.Marshal(save)
|
||||
if !p.keys.resign(x.Request.Header, x.Body, x.URL.RawQuery, body, x.URL.RawQuery) {
|
||||
return errNoKey
|
||||
}
|
||||
x.Body = body
|
||||
return nil
|
||||
}
|
||||
var products string
|
||||
if json.Unmarshal(save["products"], &products) != nil {
|
||||
if removed {
|
||||
return resave()
|
||||
}
|
||||
return nil // not a save (e.g. set_default_outfit_id)
|
||||
}
|
||||
var kept []string
|
||||
@@ -644,6 +662,9 @@ func (p *Products) interceptOutfits(x *proxy.Exchange) error {
|
||||
kept = append(kept, f)
|
||||
}
|
||||
if stripped == 0 {
|
||||
if removed {
|
||||
return resave()
|
||||
}
|
||||
return nil
|
||||
}
|
||||
save["products"], _ = json.Marshal(strings.Join(kept, ","))
|
||||
|
||||
Reference in new issue
Block a user