- 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.
- fixed caching, by escaping control chars
- rough support for shortened urls .. kinda
- achievements shows icons for required items again; also can get name for quest
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..?)
- removed excess escapes (htmlspecialchars really needed?)
* urlencode icons for all powered tooltips (some contain obscure symbols)
Spell:
- added relatedTabs "criteria of" and "contains" (the later should be reworked with generic loot access)
* implemented first draft of conditions in listview as extraCol; condition: {type, typeId, status}; currently only inpmplemented in the item-brick
* obligatory oneliners all over the place fixing stuff that boggles the mind
- add hardcoded Totem-DisplayIds
Spell:
- fixed amount/damage not being displayed, when spell had createItemId set but no effect to create it
- respect interactivity for constructs in tooltip
- parse playerLevel as textVar, if the constuct cant be evaled
- fixed functionality to change level on tooltips granting ratings
- added related tabs: 'modified by', 'modifies', 'used by item', 'used by itemset', 'see also'
* some minor cleansing in js-tooltip code
- plus food and talents, minus zones (those are just madning)
- also addes some bc/classic information on pet scaling
* mucked about the modelviewer, always uses high quality version .. should muck about some more to add animation-info and remove the java-option
* fixed some minor issues in spell maxaffectedtaregs in spell is displayed properly and erronous adding all classes/races to globals if none where selected
* created own table for creatures which unifies creature_template, locales_creature, creature_template_addon and some creatureDisplayInfo.dbc information
* more work against listviews and general structure in global.js .. should probably split this file by class and reassemble it for use
- 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
- preparing tooltips (locks to Util & localization)
quests & npcs:
- implemented tooltips
spells:
- fixed tooltip-header
- stat gain inclued periodic healing auras (item: 17743 for example) and spellHeal no longer applies spellPower
achievements:
- path is less prone to errors
events:
- disabled tab as it was causing js-errors
obligatory cleaning up everywhere
Spells:
- improved tooltips to use a less table-dependant layout
- defined the missing fulltext-variables
- buff or tooltip are only reandered for the current spell
- reduced redundancy in buff / tooltip-code
some ToDos:
- no tabs on the detail-page implemented yet (used-by, affected-by, ect)
- localization for frFR, esES and ruRu is .. lacking and will probably be commited with the point above)
- a full search runs for almost 2sec and i haven't implemented every type yet >.< .. spells are too greedy
- in some cases $d must supply a time unit, in most cases it does not .. why..?
- sources can be improved .. anything related to items is still missing
- added some more lasses for (for now) static use
Achievements:
- moved setup to separate file (not included yet (and shouldn't have been))
- unified use of the infobox.tpl
Items:
- Tooltip-layout changes, when used as standalone or incorporated in other tooltips. This can now be considered.
Util:
- added utf8-safe Util::ucFirst()
- added Lang::getRequiredItems() for use with spell - equippedItem[Sub]Class
Templates:
- minor wording fix (link -> links)
Markup:
- [class=X], [race=X], [money=X] added (i really shouldn't have done this)
- [color=X] now also accepts r1 - r4 as parameter
obligatory minor stuff here and there
- 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)
- make offset optional, when converting list to mask
Items:
- fixed display of inventory type for robes and ranged weapons
Spells:
- parsing: $charLevel and $interactive are now properties of spell.
- parsing: fixed durations, passing the time-unit seperately to allow for evaluation of the actual value
- parsing: fixed gender-specific formating [ >male/female< to <male/female>]
- parsing: usage of is_numeric() instead of (float) as 0 is a fucking valid numeric (caused some formulas to not be evaluated *grrr*)
- parsing: lastValue-references now skip to the next previous \d instead of being stopped by random \w (like time units)
- implemented forgotten display of runes for spellCost
- fixed castTimes for most hunter shots (they are -1000 for some reason)
- fixed display of required stances (sometimes they are not actually required but show, when you are _allowed_ to use a spell in certain forms)
- improved formating of tooltips-js (no visual change)
ListViews:
- pass '_truncated' separately. there are nough cases in which 'note' gets send without truncated results
misc changes here and there
this allows for better flag matching i.e. [(flags & 0x4) = 0]
furthermore it is now possible to group conditions to a subset with a different link
* hasDiffCategories() -> hasDiffFields(array $fields)
now returns a bitmask of the array keys what field does diff
- 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
- hm. should i move the (SERVERSIDE) to db to be searchable?
- detail-page is nyi
- some static data should be moved to install scripts and some point .. e.g. when install scripts come to existance
- calendar is commented in pages/events.php as it's not really working yet
- apply abs() in final function as the original value may be needed before output .. fixes some 'reduced by -X talents/setboni'
- use number_format() instead fo round() for precision .. trailing zeros will show for exact vaues e.g. ${1.5}.3 => 1.500
Basetype:
- custom operators in the setup query are now properly applied.
Searches:
- implemented result cap and set it to 1000 results
- split achievements in achievements and statistics
- the modelviewer that may be called from the item-listview now works (and still calls home)
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.
- resilience is now recognized
- weapon damage is now assigned to a fixed key
- block value now gets assigned to block value instead of block rating (*doh!*)
- some mixups in keys, when modding powers corrected
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