* 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
* display and link clientside mails to other types and events
* fixed favorites menu for new types
* fixed sorting column triggered spells in enchantment listview
* some misc cleanups
* vastly improved input validation
* content and type validation occurs when filter is created
* contextual filters like itemTypes are now only applied in context
* initial implementation
* this includes a complete reindexing of everything touching icons
* this also means, no linking to red-rocket-site though, they index them differently
* distinguish between articles for dbpage and other articles
* can be served by url instead of arbitrary picked type/typeId-pair
* save access to article in db (not used yet)
* serve correct g_pageInfo if on article-page
SiteReputation/Privileges
* implemented info pages
Client sounds are cross-referenced with as many other DB-Types as possible. Including, but not limited to:
* Character VOs (Errors, Emotes)
* Creature VOs (Boss Dialogue)
* Zone Music and Ambience
* Sounds triggerd by spells
* Sounds from general item/spell usage, creature behavior
Restrictions:
* only one locale is supported. Choose wisely!
* 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 markdown [enchantment=123] and [emote=456]
* updated item_stats to accomodate enchantments
* updated tables for community content to handle emotes and enchantments
Spells:
* getStatGain() now reads aura 123 as Spell Penetration
* fixed error in tooltips when displaying effect ranges (e.g. 10 - 10 damage)
* display the miscValue of aura 50, 102, 131 and 180 human readable
Emote:
* no longer displays empty quickInfo on detail page
* detail page no longer pretends to be a pet
Setup:
* sync no longer regenerates all tables/files, when the supplied world-table affects nothing
* fixed dependancy of ?_source from ?_achievment (damn plural-s)
Misc:
* FireFox doesn't understand <node>.innerText, use <node>.textContent instead
please refresh the affected tables and files
php aowow --sql=itemenchantment,item_stats
php aowow --build=enchants,gems
* added emotes to DB .. why? just because!
* also added to search
* cross-linked achievements and emotes
* data is generated via: php aowow --sql=emotes
* setup requires GlobalStrings.lua (see README.md)
* 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!)
- 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
- 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
* editing after upload
* reputation gain for approved uploads
* moderator interface (albeit a bit wonky)
I still do not speak French, Spanish or Russian, so translations are
appreciated
* 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
- added config-option to restrict available locales
- fixed opensearch suggestions by generating strict json
- include TalentCalc.css as lowerCase (fixes display under *nix)
- some minor formating
- Setup:
* added some additional files to be generated (they required STATIC_URL or HOST_URL to be set)
* moved class Locale from global.js to own template and generate it with CFG_LOCALES
* changed urlParam (?build=script): may be empty (builds everything) or specific scriptNames chained together with ; (?build=script1;script2)
you are required to run the following command to regenerate files affected by these cahnges
?build=demo;power;realmMenu;searchboxBody;searchboxScript;searchplugin;locales
- 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, ..)
- reviewed and used objects PageTemplate and Locale
- removed associated workarounds
- replaced ~12k tabs with ~48k spaces
- fixed some localization errors
- whoops, forgot to update some Util::$pageTemplate calls to $this
- 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
readded spell/spells
- changes to Lang, since it can no longer access the template
- set required php-version to 5.5.0 (generators were added and are essential to aowow)
- display stats in footer to staff only
- 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()
- 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
- items: allow 'upg' to be an array
- filter: fixed logic error in checks
- Markup: prevent handling of [menu], as PageTemplate is nyi
- Power: advanced features (hide reagents or sellprice; recoloring,
renaming, iconizing of links)
- search: side-icon for titles
- smarty: added template-vars to cache (has to be fixed sooner or later)
- identify as HTML5 (fixed a strange bug with displaced list-pegs)
- removed several typos
minor:
- icons in summary-dropdown menu
- improved handling of non-standard specs for weight-presets (mostly due
to Profiler)
- probably some things i forgott... :x
- do not display serverside events in calendar
- include gems in item comparison .. also parse their stats in setup
- filters use conditions and are more restrictive
- changed DBSimple version so it uses mysqli (mysql is deprecated as of php 5.5)
- moved each filter class to matching type; file for baseType and BaseFilter
- baseType querys are somewhat modular, trying to avoid ridiculous joins that WILL occur sometimes (especially with items) as far as possible
- miscTools:
* implemented random DB-Page
* others are placeholder (at least no errors are generated)
- Articles / Infobox:
* dropped aowow_article_items, parse nessecary globals directly from article or infobox
* articles default back to english if no target articles is absent
* quickinfo from db is only used if no auto-generated info is available
- CharClass:
* implemented detail-page
* added basic articles per class (english only)
- generic lv-page
* now accepts multiple listviews (as required by miscTools)
* can display text and title
- Markup.js:
* exchanged to current version (yet to be looked over, but basic articles are displayed properly for now)
* removed some hacks that were nessecary for the old Markup / Menu
- Listview
* made some more code readeable, no major changes
* calendar-template is now functional (WorldEvents use it)
...squashing bugs left and right
- consequentially prepended $WH to those functions (since i do have issues with regEx, some errors may occur)
* simplified including required JS and CSS files per page
* replaced old Menu-class with (almost) current version. Since it relies heavily on jQuery it is also loaded.
- dropped property "names" and changed getField to return localized Fields if specified. Dropped stupid getNameFieldName() in the process as it was now obsolete.
- made property "matches" private. Access through getMatches() that will execute the query _only_ when needed (which is basically always anyway (so much for optimization))
SpellList: parsing
- ""fixed"" behavior of the amount-switch $l when used on russian text. It has 3 options instead of 2, no idea what the last one is for though
- fixed extra leading whitespace occuring when parsing formulas
Lang:
- removed offset from getMagicShools(), apparently it is unneeded :o
Util:
- changed the output of formatTime() in the long version to be more correct in layout
- initialized values in parseTime() to prevent empty strings returned by formatTime()
- added asBin() and asHex() - helper to improve display of bitmasks (Spells are coming!)
- update Spell-Effects/Auras and added misc strings to display different MiscValue-content
Filter:
- removed escapes from $_POST-handler. If the input is erronous it should be corrected/ignored/noted by the $_GET-handler
Smarty:
- added optinal parameter to saveCache(), loadCache() to better handle filter variables
Search:
- changed $maxResults to 10 for OpenSearches in an effort to lower execution time and appied limits to all queries
- changed result calculation for OpenSearch. It should now stick to it's limit of 10 results for the list
- simplified WorldEvent search
global.js:
- backported function to parse title-tag of dfn-elements into mouseover-tooltips
- shortened document.getElementByTagName(x) calls to gE(document, x)
a few things to consider:
- the virtual Itemset-Ids will not be the same as wowheads. Which dosn't really matter imho..
- the Arena-Sets all have their base names. I've to admit, i'm not too fond of the idea to collect 40 prefix-strings and attach them manually. But i see no other option.
- availability for players is not supported. I dread the thought of crawling through vendor and loot-tables for every .. single .. item!
simple listview-pages now use one shared template (instead of having the same file multiple times)
some bug fixing here and there
- achievement: faction is no longer out of range (need to reparse the faction :/)
- item: quality is prepended to the name again and wont be left out in case of heirlooms (is 0)
- general: forgot to change some error()-calls in index
- and some more wich i forgot..
currently searchable are:
- classes
- races
- titles
- currencies
- items
- itemsets
- achievements
directly or as &opensearch
&json is yet to come, yes that means ?compare cant find any items