* append a filemtime timestamp to js/css files to work around browser caching after update
* shuffle script handling around a bit
* also user pages cant have community content
* also fix breadcrumbs on items page
* fixed auth against TCs auth table
* check for real paths when creating emote aliasses
* races page no longer identifies as classes
* fixed item comparison tool
* fixed js error when trying to display spawn maps
* removed most templates by sensibly restructuring lvTab-data. Util::toJSON() does the rest.
* taught Util::toJSON() to recognize values prefixed with $ as js-code
* use Util::toJSON whenever possible
* misc
- mail attachments are displyed again
- always show all currency rewards on Quest-LVs
- suppress an error, when encountering unused ItemMods
- implemented Memcached (untested though (tough luck trying to get it to run using win))
- added config value to select caching method (default: filecache; setting debug to 1 will still disable caching)
- implemented url-param 'refresh' to clear cache for this page
- 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
- Currency: fixed title (copy n paste from gameObject)
- Spell: fixed display off effectValue, when spell creates items
- compare: changed page to non-caching (fixed display)
- 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
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
detail and listview for NPCs (without spawns, spells and some filters)
forcing the template to be more generic
- noticed, that the loot display is off. It happens with different modes
on a creature, that has the same loot but different chances or quantities
... analyzing
- 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
* implemented detail-page
* since factions are NYI the infobox will display an empty link
* added articles for every race
- CharClasses:
* added forgotten expansion-icon to detail-page
- Search
* added no result gnome
- moved some locale-strings around, killed one duplicate
- rewrote BaseType::iterate() to be a generator and yield references (requires php 5.5)
- reduced usage of bandaid BaseType::reset()
- removed Util::getIdFieldName() which was even more of a bandaid
- discovered DBSimple::selectPage() and consequently removed $matchQuery as they are now obsoloete
Util:
- added trainerTemplate lists for future use with trainers and trained spells
misc. forgotten and/or broken stuff here and there
- 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.
I'm not overly happy with passing the templateObject to each typeObject, but it works .. for now.
Effectively this should reduce db-lookups as each type should be looked up only twice at max (once for relevant data on the page and maybe again to get related jsGlobals for the template)
also removed BaseType::addRewardsToJscript() get it with BaseType::addGlobalsToJscript() and the appropriate addMask
* added ListviewHelper::getSetFields() wich is more appropriate in some cases (like reagents for spells should be shown even if they are all the same)
* load bricks as needed, removed the if-blocks (maybe add the filename to every TypeClass..?)
- while the code and strings are there, no rules have been set concerning availability
User:
- HTTP_ACCEPT_LANGUAGE may not be set.
Compare:
- removed some relic code, that, once uppon a time, was used to link virtual item sets with real item sets or something..
Titles:
- fixed a few forgotten changes
Lang:
- hide DND-entries for locks
BaseType:
- improved getField to automaticaly cast numerics to float
- improved __construct to check for numeric instead of int
- 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)
- what which index does needs to be implemented in the implementation
- differences to wowhead
* strings in criteria are more lenient and will also work with partial matches
* the ? and * wildcards are supported
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..
dropped single-item classes for all types, because it doesn't make much difference to use a list with a single item instead, especially if it's preselected. Additionally it is now easier to chain certain queries together and execute them all at once. additionally, additionally certain data can now be cahced and shared between types of the same .. type, that were previously in different instances alltogether.
And you may now specify a limit to sql-queries (while setting up a typeList), it will default to the config-limit if no value is given.
features:
- tool - Maps:
* finally supports multi-layered zones
* should also support icons if needed (questgiver, ect)
- tool - Item Comparison:
* fully functional (yes, that includes heirlooms and items with random props)
* may throw a minor js-error if using arrow-keys/esc/ret in input-fields in the LightboxPopus (but wowhead does also)
* icons for prismatic sockets are not displayed if no other sockets are present (calculation is correct though)
* modelviewer will still 'call home'
- tool - Talent Calculator:
* got rid of a VERY dirty hack for the icons (they are now supplied as texture, not laoded one at a time)
* glyphs should also be a bit more informative
* talent data is pulled from static file, that should a) speed up load and b) prevent lockups if it cant be generated on the fly
* you can now set the level for your build, which affects available talent points, glyphs and glyph-slots
- tool - Pet Calculator:
* initial implementation; basically the same as the Talent Calculator
- general concept changed:
* dropped ajax.php; json is now supplied by the appropriate page if &json is appended to the url
* search.php and opensearch.php are being merged; again, output will depend on the appended parameter (&openserach, &json)
* data included via data.php will be static and assembled only on installation and when the database changes (should speed up load)
* locale strings are now in a single file instead of being split up to the template
* still getting rid of criss-cross-includes, global variables and string-defines