forked from OpenNeo/impress
Okay right, the wardrobe-2020 app treats `state` as a bit of an override thing, and `pose` is the main canonical field for how a pet looks. We were missing a few pieces here: 1. After loading a pet, we weren't including the `pose` field in the initial query string for the wardrobe URL, but we _were_ including the `state` field, so the outfit would get set up with a conflicting pet state ID vs pose. 2. When saving an outfit, we weren't taking the `state` field into account at all. This could cause the saved outfit to not quite match how it actually looked in-app, because the default pet state for that species/color/pose trio could be different; and regardless, the outfit state would come back with `appearanceId` set to `null`, which wouldn't match the local outfit state, which would trigger an infinite loop. Here, we complete the round-trip of the `state` field, from pet loading to outfit saving to the outfit data that comes back after saving! |
||
|---|---|---|
| .. | ||
| alt_styles_controller.rb | ||
| application_controller.rb | ||
| campaigns_controller.rb | ||
| closet_hangers_controller.rb | ||
| closet_lists_controller.rb | ||
| contributions_controller.rb | ||
| donation_features_controller.rb | ||
| donations_controller.rb | ||
| item_appearances_controller.rb | ||
| item_trades_controller.rb | ||
| items_controller.rb | ||
| locales_controller.rb | ||
| neopets_connections_controller.rb | ||
| neopets_page_import_tasks_controller.rb | ||
| outfits_controller.rb | ||
| pet_types_controller.rb | ||
| pets_controller.rb | ||
| sitemap_controller.rb | ||
| static_controller.rb | ||
| users_controller.rb | ||