Also, as part of all that, 2.26.608 completely overhauls and upgrades the presentation of the Fighting Arts, so that they look a lot better, overall.
(Also also, I should mention that I finally got around to fixing the alignment of the Survivor Sheet "Survival" number input at all three breakpoints. That's been bugging me for months now, and it feels really good to finally get around to it.)
And speaking of presentation, this issue addresses a handful of issues affecting Firefox. I have been monitoring browser/OS information a little more closely lately, and it looks like more users are coming in with Firefox, so I'm going to start using it more in my QA/pre-release process.
Thanks for using the Manager!
Corrections and Fixes
- Addressed an issue where the Fighting Art "Champion's Rite" had a broken/non-conventional handle (due to bad automated conversion from legacy game_assets.py) that caused errors during Survivor Sheet rendering.
- Models.set_pretty_types() now uses the title() method (instead of capitalize(), which looked weird in the app).
- Addressed a (super-annoying, super-longstanding) presentation issue on the Survivor Sheet where the alignment of the Survival box/number was always just a little bit off.
- Cleaned up the presentation on the Survival Limit max error.
- The 'World' panel's number for settlements that have been 'abandoned' is now the API's abandoned_or_removed_settlements asset value.
- Completely deprecated all Fighting Arts references from game_assets.py
- Deprecated the following assets.Survivor methods:
- I also deprecated all references to the Fighting Arts model in the legacy webapp's models.py
- The assets.Survivor.add_game_asset() method now throws an error if you attempt to use it to add a Fighting Art to a survivor
- Removed support from assets.Survivor.modify() for the following CGI FieldStorage parameters:
- Removed so-called 'fighting arts picker' code from the assets.Survivor.render_html_form() method
- Created new AngularJS controls for adding and removing Fighting Arts:
- removed the old form
- created rmFightingArts() method in the JS fightingArtsController module
- created a new initAssetLists() method in the main controller that runs on init (and whenever an asset is added or removed) and updates all drop-down/picklists at once. This only retrieves the settlement from the API once, so it should help performance mightily.
- created an addFightingArts() method in the JS controller
- The controls for adding Fighting Arts disappear if the Survivor has three Fighting Arts on their Sheet
- Re-did the presentation at all breakpoints for Fighting Art "cards" (to include special colors for Dragon Trait FAs)
- Implemented Fighting Art "flair" on cards that indicates their expansion (if they belong to an expansion)
- Revised the survivorSheetController to have a single method that initializes all Survivor Sheet pick/drop-down lists.
- Refactored kdmManager.js so that the setGameAssetList() method a.) logs failures better, b.) an be called any time that $scope.settlement exists.
- Refactored the main style.js to use the 'clickable' class the way I do literally everywhere else. Also removed individual 'cursor: pointer' styles from many classes and refactored HTML to use the 'clickable' class.
- Refactored the dashboard "rollup" CSS so that it's more modular/extensible (should help speed up the coming dashboard refactor).
- Added a 'help-tip' for Fighting Arts controls on the Survivor Sheet.
- The abandoned_and_removed_settlements asset has been renamed abandoned_or_removed_settlements to more accurately reflect what it is. Its description has also been updated/enhanced.
- Admin Panel now only shows the recent users item if there are recent users.
- User Agent popularity contest is now hidden by default.
- Created support for managing Survivor Fighting Arts via the API:
- Created a convert_fighting_arts() method for the Survivor base class
- Added a 'fighting_arts_version' attrib check (and convert method call) to models.survivors.Survivor.normalize() so that survivors are converted on init.
- update the Survivor class get_dragon_traits() method to consider Fighting Art handles, instead of names when doing its check
- Base class method for asset models Models.list_assets() now logs failures by default.
- Models.UserAsset.check_request_params() method now logs bad/insufficient requests when it bombs them out.
- Models.AssetCollection.set_pretty_types() now creates capitalized "pretty" type name by default.
- Expansion asset dictionaries now have a 'flair' attribute, which contains their color and bgcolor (for display/UI purposes) and should help tamp down the emails about which expansion an asset belongs to.
- Keyed in "flair" colors for all expansions based on FA/Disorder cards.Will probably revise.
- Implemented and documented the new Survivor method/route, toggle_fighting_arts_level()
- Added the 'fighting_arts_levels' attribute to both the new() and baseline() methods of the Survivor class object, so it's part of the data model now.
- Survivor asset handle lists (e.g. 'fighting_arts', 'epithets', etc.) now sort on save.