* fix usage of generic search wildcards: ? *
* only transform search form fields expected to be text
* some cleanup (magic numbers to define, fn return types, nullsafe assignemnts)
* changed logic to not display required arena rating in tooltip or infobox if there are sources that don't require it.
* also, should there be a difference in sources, display lowest required rating, not not highest.
* do not display crafted item tooltip inside recipe tooltip if the craft spell doesn't create an item.
(notably: enchantments were displaying enchantment scrolls)
* always display reagent cost if set
* 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)
* avoid using "echo" to write to CLI as php mistakes it for sent headers (see php-src #12303)
* as we are using fwrite now, errors are written to STDERR instead of STDOUT
* fixes an issue where reloading the config would cause "ini_set(): Session ini settings cannot be changed after headers have already been sent" to be spammed
* split completion table into it's subcomponents
* this should save some disk space as some keys and null fields have been optimized out and col sizes have been reduced
* sort ICC raid bosses first to last
* minor rework
* fixed columns of tab item loot
* fixed lookup of classes/races (as they are the only type used as bitmask)
* implemented reverse lookups everywhere (arguably class, race and skill are too spammy)
* reverse lookups no longer contain redundant data
* changed how the groupKey is set, so there are no more cases that can't be looked up
* fixes#273
* title: added tab 'criteria-of'
* spell: resolve MiscValue for SPELL_AURA_MOD_INVISIBILITY
* search: do not double escape page title
* profiler: fixed typo, causing shaman spirit weapons to be applied _everywhere_
* rework npc <-> chest loot linking
* difficulty is now directly stored
* should fix multiple issues where loot tabs had wrong difficulty or null title
* do not transform page parameters to lowercase. The tooltip Javascript expects the server response in the same case it got sent.
* transform to lowercase just for lookups
* fixes#394
* fix Conditions derived from spell_area
* Type Statistic should not be random searchable and excluded from "missing screenshots" UtilityPage
* do not cut off querys in log
* fixed skipping the value in oneline mode being interpreted as empty string
* fixed entering infinite loop in oneline mode, when passed value was invalid
* fixed displaying config hint, when passed value was valid
* spell: do not create a temporary copy of the spell.dbc, but merge serverside spells directly into aowow_spell.
This sidesteps a mysql issue where a temp table can't be read multiple times.
* spawns: fixed lost var rename in log output
* items: use UNSIGNED instead of INT when typecasting in query so mysql can also understand it