* use built in function to determine if CLI can use escape codes
* define _post, _get and _cookie in all cases
* do not apply 8 regexes to a string that doesn't even contain a UI Sequence
* colAddins should be null if not in use
* fix index warnings in search + profiler
* cast url param 'locale' to int for all uses
* fix breadcrumbs for sounds page
* fix determining actionOwner for SmartAI
* a guide is a wrapper around an article providing management tools.
* administration is limited to the review process. Needs to be expanded.
* articles on DB pages are seperate. Editor will be added in the future.
* move custom data from setup scripts to DB
* move strings from DB to locale files
* use common function to calculate coordinates of dungeon entrances instead of inline sql
* fixed manual data zones and itemset
* fixed typos across the board
* defined upper limit for localeIds and also discard negative localeIds
* fixed eval error when parsing spell descriptions. Calculated numbers sadly can't be localized.
* fix some outdated array indizes during setup
* fix indexing when connecting to DB for first time
* add initial loading of config strings during setup
* moving commonly used strings to defines
* moving commonly reused/similar page generation functions to the parent
* generally using consistent return types, more type hints and less strings
* prevent browser context menu when right clicking on UI elements with their own context menus
* fixed menu path for icons
* vastly improved input validation
* content and type validation occurs when filter is created
* contextual filters like itemTypes are now only applied in context
* undefined variables in Markup.js
* logic error preventing screenshot uploads
* bitshift by negative value in spell
* and i'm pretty sure i already added an exception handler at one point
* separated into appropriate subclasses
* unified sanitizing of $_GET and $_POST data using build in filter_input()
* index now always tries to resolve page calls with ajaxHandler first and as a page last
minor bug-fixes to bugs that wre not reported yet, because they didn't occur yet
(e.g.: nobody tried to compose a comment with >7500 characters yet)
* added msg-level INFO
* changed some WARN-level messages to INFO
Util
* added function to handle directories aowow wants to write to / read from
SiteConfig
* group options to be less cluttered
* allow empty strings (numerical values must still at least be 0)
* renamed account related config values to be make more sense
* make cache path configurable
* make session save path configurable - use this to avoid the garbage collect cron job on Debian or Ubuntu, that cleans sessions and only depends on your php.ini (NOTE: putting this inside a web-enabled directory is a risk!)
fixed sql-error in manager
Comments:
no longer appear as upvoted for anonymous user
can be voted on, again
Class detail page:
removed default limit on class ability query (300). now shows all spells
Filter/Items:
added missing table-prefix; fixed search for iconString
Spells/Search:
display triggered player abilities as misc. spells. (previously hidden)
Misc:
removed some obscure piece of old config
- removed web-setup
- new CLI parameters
--account : create initial account(s)
--siteconfig : edit php/aowow config values
--dbconfig : set up db connection
--sql : create db content from world/dbc-tables
--firstrun : [NYI] step by step initial setup
- some fixes by the wayside
* display required arena bracket for extendedCost
* achievement chains are searchable again
* category trees for factions should now be correct
* trainer tab on spell detail page reapeared
* userMenu item 'Settings' no longer breaks the page
* display abilities of shapeshift in tab on spell detail page
* corrected reading ?_sourcestrings for titles
* fixed error on race detail page
* added simple descriptions to skill detail page
* fixed tab "reward from" (achievement) on title detail page
* fixed alphabetical order of some filter-dropdowns
* fixed skill colors for spells
* fixed power display for rune-based spells, that also cost mana
* added more information to zones
* also check mail_loot_template for achivements
* fixed bug, where loot_template-ids would be reused for multiple templates
* display sourcemore for pvp-sources
* 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
- setup can now be run from CLI. Use "> php index.php --help" to start off
- updated logging for use with CLI
- added generators for client imagery (icons, maps, talents, ect)
DBC:
- parsed DBCs are now expected in the Aowow-DB, prefixed with dbc_* (they are joined with
these tables, so its easier to have them here altogether)
- setup/db_setup_3.zip may be reapplied (optionally)
- alternatively aowow will now extract you own DBCs alongside your textures.
They will be parsed and saved to DB, as needed.
Misc:
* HOST_URL and STATIC_URL will now be determined automaticly once and
* then saved to ?_config (setup by CLI requires these to be set)
Spell:
* added glyph-symbol to infobox for glyph-related spells
* added pages config and phpinfo
* config can also set php-vars (restrictions apply)
* commented menu items that will not be implemented in near future
Misc:
* deleted a greedily grabbed icon, unrealated to aowow
- spell: added effect: killCredit2 to parsed list
- fixed some mixups, when eventId was used instead of holidayId and vice versa
- avoid zero values for page Types so there are no longer empty tooltips on the language-menu
- rewrote conditions system:
* table: conditions is now in use (needs some more cases to check for)
* adapted existing 'conditions', may need some wording fixes
* can now calso reate a single listview tab for more detailed information
* this is not localized for frFR, esES or ruRU
- enabled support for non-tamplate tabs (leave 'file' empty and 'data' is used as HTML)
- use https if available, added a config value to enforce it if nessecary
- NPC:
* fixed currency icons when displaying extendedCost for vendor
* display conditions column only if we actually have conditions set
- partially implemented site reputation (required to grant privileges to comments)
- reworked 'home'-page (the news-box is now as configurable as you want)
- removed some ancient compatibility-code for IE67 (srsly, its 2014!)
- dropped associated stylesheets, reviewed the rest
- split some user-restrictions to trigger on insufficient siteRep
- added text-page: Markup-Guide
- implemented new class to handle Markup
- bugfixes [TM]
- also you will need to reapply the db-dumps (you may want do save account*, news,
reports, ..)
- added some forgotten account-srings
- fixed an error handling ItemFilter /w upgradeItems + markdown appearing in tooltips
- relaxed session-regeneration (only regenerates on status changes (signin/-out)), fixes losing the session, when opening multiple tabs at once
- striped smarty from profiler (only cleanups remaining)
- moved profiler-ajax to AjaxHandler
- created a (dummy, for now) ProfileClass to handle Chars and Profiles
- reimplemented Utilities-Page and Account-Page
- moved account-ajax to ajaxHandler
- AjaxHandler::handle() can no longer call itself, if the parameter is empty
- cache is now compressed (has a negligible delay)
- revisited User-Class / Accounts:
* implemented mail-confirmation (be sure to configure your server appropriately)
* implemented recovery of password or username
* there are now 3 options to auth against: 1) aowow-DB (default); 2)
wow-auth-DB; 3) user-defined script (SOAP or similar exotic methods)
* dropped the aowow-cookie, it relies on php-sessions now
* reworked how bans are handled (can now also ban from upload, rate, comment)
- fixed enhancements on itemTooltips
account related localization for FR, ES and RU is lacking (help is appreciated)
_account and _account_banned have changed and are incompatible with the prvious version
- rewrote Item/Items
- BaseType: fixed querey generation wizh null-values in extraOpts
- ItemList:
* reworked extendJsonStats() to use ?_itemstats istead of parsing on the fly
* moved onUse-components used by xml from extendJsonStats() to separate function
* the enhance-string passed with tooltips is now checked first
- Loot: class is no longer static
- Util::parseItemEnchantment() will now accept and return arrays and does only one single lookup
- cuFlags are explained in the infobox, when available
- JS:
* do NOT strip iconStrings. It rightly can contain whitespaces >.<
* removed a redundant $WH.ct in Conditions
- moved search to /pages
- moved g_dataKey to header.tpl and apply it on nessecary pages (restores TalentCalc)
- Events: fixed relTabs with arbitrary data, when holidayId was 0
- CharClass: get heroClass-status through flags; dropped related DB-field
- Achievements: fixed some criteria not being displayed in tooltips
- Community: applied long forgotten changes to tplVars and use of uppercase ids
- Titles:
* exclude unused titles from listview
* restored 'links'-button on detail-page
- Quests:
* added 'slain' fro proxy-npcs
* use more wflags (&1 needs more research)
- Factions:
* fixed order of categories
* fixed params to QuestList for relTabs
- Profiler:
* enabled 'profiles that have this char as source' in Profiler
* removed the exampelChar from project
* further documented more expected variables; includes/excludes-handling still not entirely clear
* created datasets for reference data (create with ?build=profiler)
- Localzation:
* localized profiler for loc3
* corrected some single words
* localized custom reward rate - table in factions
- AjaxHandler:
* new handler for ajax-requests *duh*
* dropped data.php (index.php now calls to AjaxHandler for these cases)
- moved reading of static files to own function Util::loadStaticFile()
- implemented some session-token to limit access to profile data
- researched structure to send onDemand data (still some minor bugs to iron out)
- rewrote spells' access to model data and killed a redundant instance of ItemList
group by source won't require much additional work besides adding source to
items in the first place
search for multiple itemUpgrades are also yet to come