- 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
- 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
- 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
- allow 0 (mis Spells) as valid pageParam
- set lcoale before creating featuredBox on homepage (fixes links)
- set iconStrings in DB to lowercase for Linux compatibility (thx @zackbcom)
- implemented 'group by source' and most source-related filters in items.php
note: some fields are not yet set and searches against those will yield no usable result
- fixed js-error; always expecting array characters in g_user
- fixed rep gain on first login, when using external auth
- fixed wrong lootIds in ?_objects, where the field size was too small
* use (locales_)achievement_reward to display rewards
* implemented display of reward mails
* updated mail to display sender if possible
Spell:
* fixed some issues with spell_loot
* added aura 286 (Ability Periodic Crit) to affect-checks
- added more sources for future use
* implemented enchantment conditions for meta gems
* removed hardcoded static-domain in transfer-string
Site:
* gain rep for ACTION_REGISTER when logging in for the first time, using external auth
* language-menu uses the same dropdown-icon as other menus
Spell:
* hide procChance of 100% or more
ItemComparison:
* fixed display of drag-icon
* fixed single gems being moved to first empty socket in tooltips
squelched some notices in quest.php and item.php
- 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, ..)
- 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
- 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
1 => strucutre only for community-related tables
2 => data and structure for everything else
3 => parsed dbc files required to run the dataset-assembler
basic stuff is working with examplary static data
need to sit down and collect mods from talents and class-spells
<bla bla> from profession perks
loadOnDemandData not implemented as the structure needs more research
some visual bugs
remember to generate your realm-file. i used these example realms
[
["us","US & Oceanic",null,[["pure-pwnage","Pure Pwnage",null,[["trinity","Trinity"]]]]],
["eu","Europe",null,[["pure-pwnage","Pure Pwnage",null,[["dafuque","da'Fuqú]]]
]
* display required quest for loot with questchance
* implemented genericmodel-Tab for item- and object-models
* tabs2spaces in gloabl.js (why were they still there in the first place?)
- 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
- 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
- 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
- improved handling of rewards
Spell:
- moved calcuation of effectValue to separate function, use realPointsPerLevel
- eval: applied proper format, fixed evalable string when facing multiple signs in a row
- display modelviewer for summons
Titles:
- looks like titles behave differently when using "faction" or "side"
Achievement:
- implemented rewards (which i have forgotten for almost 2 years)
* reworked pet-setup
* typos and forgotten changes, that broke code here and there
- 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
- 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
* updated Summary.js (Item Comparison)
- can now manage custom weightscales, when logged in
- can now apply weightscales to rank search results
- CAN NOT yet search for items with a certain scale alone, as i haven't figured out yet how to design the database for that
* sorted and commented basic.css
* some missing imagery
* some cleanup
(my todoStack just got less inhuman in size)
- 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
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!
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.