* detatch from User and Util and move to its own enum class
* added definitions for all locales the 12340 client could in theory have
* this is incompatble with the Intl extension
* version bump and php requirement bump
* fixed several deprecation notices and warnings from MySQL8, most notably:
- SQL_CALC_FOUND_ROWS: stopped using DBSimple::selectPage and query 'SELECT COUNT(*) ...' separately where needed
- ON DUPLICATE KEY UPDATE ... VALUES(): use row alias for new values instead of VALUES function
- boolean shorthands to long form (&& -> AND, etc)
* so, apparently the client allows ui escape sequences in the weirdest of places. Guess i have to follow suit.
* also, the sequences can be multiline
* also also, the file extension for icons is optional
* fixed wrong indizes for gem color picker in locale 3 (deDE)
* fixed interpretation of filter enums. Some are providing their value directly, others have an intermediate key.
* createSQLForCriterium is no longer abstract. (was implemented in exactly the same way everywhere)
* erronous criteria are now logged and discarded entirely)
* rewrote SetupSrcipt
* implemented 'zone' parameter
* implemented 'bossdrop' parameter
* implemented 'dungeondifficulty' parameter
* implemented item filter relying on zone information (dropsInX)
* fixed world random drops showing a single loot source
* extended Source column of spells to the same functionality as items
ToDo:
* apply new 'commondrop' parameter on loot listviews
* gather difficuly versions of gameobjects and apply the same logic as for creatures
* implement fake spawns so npcs can get linked to a zone
* added support for locale 4
* some strings are missing and will need to be translated at a later date
* thx @qyh214 for a lot of content
Co-authored-by: qyh214 <sandy0214qin@msn.com>
* vastly improved input validation
* content and type validation occurs when filter is created
* contextual filters like itemTypes are now only applied in context
* aproving a screenshot now flags the corresponding db entry as having a screenshot
* deleting & moving screenshots works equivalent
* instancing a new TypeClass without parameters no longer grabs everything from the corresponding tables ( pass a "[true]" to retain this behaviour)
* retroactively flag db entries for having screenshots
* fixed a typo
* replaced error-suppressions with proper checks
* log php errors to db
* use __callStatic() to access localization and thus handle erronous keys
- Setup:
* fixed some erronous filenames when generating icons
* increased alpha threshold for spawn maps (should improve spawn points)
- disentangled DB::Aowow and DB::World. Aowow should now be able to run
with DB::World being on a different server
- added missing faction transfer pendants (title/quest/faction/..)
- fixed extended costs for specific vendors
!IMPORTANT!
Due to the inability to determine what layer covers what height-level
in multilayer-zones, spawns and waypoints WILL have duplicates and must
be removed manually from ?_spawns and ?_waypoints respectively, if
nessecary. Besides, the other points may also need manual love.
- NPC:
* removed a redundant cuFlags for Bosses
* set NPC_CU_INSTANCE_BOSS with data from world.instance_encounters
* removed misc. factions from tooltip
* fixed malformed condition for creature-loot
* location is displayed in Listviews (also for GOs)
* enabled filters foundIn and relatedEvent (also for GOs)
* do not display empty quotes
- Zone:
* initial implementation of detail page
- Misc:
* fixed notices being displayed without restrictions
* added RewriteBase hint to .htaccess (lost several hours to this one)
* removed lost isles from dataset 'zones'
* updated sql-archives and removed old sql updates, db_setup_2.zip
will need to be reapplied
- implemented 'group by source' and most source-related filters in items.php
note: some fields are not yet set and searches against those will yield no usable result
- fixed js-error; always expecting array characters in g_user
- fixed rep gain on first login, when using external auth
- fixed wrong lootIds in ?_objects, where the field size was too small
- some filter are still missing
- didn't bother with the mapper yet
- zoneOrSort is still inconsistent for instances
- merged all queststarter/-ender into one single table
- removed $template-parameter from addGlobalsToJscript and access it through Util
- dropped error.tpl and 404.tpl and moved the error-text to aowow_articles
- misc improvements here and there
groupable
- force profile.lastupdated to new Date; trial and aerror on
raid-progress; remove 'profile=summary' from generated pages (is generated by
jscript)
- fixed some misc errors
* GameObjects: initial implementation (some filter missing; positions not
yet availabe; some custom data to be set; required table will be added
later)
* MiscTools: fixed random page; 'implemented' missing Screenshots; fixed
access to template file
* Search: implemented check for CUSTOM_EXCLUDE_FOR_LISTVIEW if user is not
in U_GROUP_STAFF; searches should now be cachable
* NPCs: three more tabs on detailPage
* some work against Quests
* fighting the template-system :<
* display required quest for loot with questchance
* implemented genericmodel-Tab for item- and object-models
* tabs2spaces in gloabl.js (why were they still there in the first place?)