Commit Graph

34 Commits

Author SHA1 Message Date
Sarjuuk
49800da2c8 Moved most code related to jsGlobals to template. (Except for Globals, that belong to the object already created, it makes zero sense to look them up again from the template.)
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..?)
2013-07-11 21:47:00 +02:00
Sarjuuk
a8804f6440 Achievements:
- 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
2013-07-07 23:25:15 +02:00
Sarjuuk
79ee421833 Creatures:
- 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
2013-07-07 01:21:47 +02:00
Sarjuuk
a3f16f0e0d implemented detail-page for pets
- 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
2013-07-02 23:02:04 +02:00
Sarjuuk
bbfc4f5820 moved articles to template-class .. and am fed up with smarty by now.. 2013-07-01 10:28:17 +02:00
Sarjuuk
3d66eacb90 implemented Itemset detail page
- 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
2013-06-23 22:11:39 +02:00
Sarjuuk
08f4d84b6d objects:
- 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
2013-06-19 21:41:15 +02:00
Sarjuuk
513c9d9114 split field 'flags' in announcements into distinct properties, mark jsVars with a '$' like in every other case 2013-06-19 20:43:16 +02:00
Sarjuuk
aef069e919 - implemented tooltips for NPCs
- global STATIC_URL defined to be also usable in script
2013-06-01 16:56:05 +02:00
Sarjuuk
e603a0cff8 fiddling with spell-tooltips, parsing some more bitmasks and ratings in the spellEffects, fixed several typos, tabs to spaces in js-locales, implemented flightpath-maps for ?zones 2013-05-30 23:54:35 +02:00
Sarjuuk
8b7ca25f08 misc fixes 2013-05-21 23:03:54 +02:00
Sarjuuk
4238395921 updated packed database .. also some minor fixes 2013-05-16 19:44:19 +02:00
Sarjuuk
86387f7707 Spells: initial implementation of DetailPage, ListPage, Filter, Search
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
2013-05-13 00:50:10 +02:00
Sarjuuk
cbd27c67b3 Types:
- 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
2013-05-13 00:24:30 +02:00
Sarjuuk
732226b44a BaseType:
- 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)
2013-04-26 17:02:35 +02:00
Sarjuuk
1142220674 Filters:
- 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
2013-04-20 16:16:29 +02:00
Sarjuuk
f8b8ee218c moved check for valid url-params to Util (will be reused in spells, ect) 2013-04-20 15:48:35 +02:00
Sarjuuk
b6c0fa1b89 * improved conditions for BaseType to accept conditions in addition to explicit field names
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
2013-04-20 15:33:05 +02:00
Sarjuuk
4d626472b1 implemented Pets
lisview, searcheable, setup
detail page missing

minor:
- show icon for achievements in open search
- show high-quality items first in open search
2013-03-26 21:21:23 +01:00
Sarjuuk
c045fe1081 implemented generic filters
- 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
2013-03-23 15:58:35 +01:00
Sarjuuk
041aea1a85 moved template-class from kernel to util .. which is now in dire need of reordering :/ 2013-03-13 23:07:55 +01:00
Sarjuuk
881e5143d1 I think, I've finally found a use for traits
- working on listviews displaying only the columns needed
- still fighting leftovers from class conversion
2013-03-13 20:51:36 +01:00
Sarjuuk
7c482e9319 WorldEvents: initial implementation
- 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
2013-03-11 00:38:47 +01:00
Sarjuuk
74df6f77ef minor typos and a corrected staticUrl for the clientside scripts 2013-03-08 15:59:31 +01:00
Sarjuuk
0c0a7ec5e2 Spellparsing:
- 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)
2013-03-07 23:30:04 +01:00
Sarjuuk
2b7440ecf8 corrected typos 2013-03-05 23:55:09 +01:00
Sarjuuk
d848faa1fa any 'Id' => 'id' as i'm mighty tired of the conflicts between js (lower) and php (ucFirst)
added achievemnts-page to enable display of tooltips
2013-03-05 23:21:25 +01:00
Sarjuuk
9019c3b811 Types
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.
2013-03-05 22:07:12 +01:00
Sarjuuk
3f69a9ab49 - added announcements to titles and error-page
- file inclusion:
    - now only require without brackets
    - classes for ListTypes are auto-loaded
- (minor) empty array to new syntax (php5+)
2013-03-04 22:57:51 +01:00
Sarjuuk
8dc836f91d batch changes
- TYPEID_* => TYPE_
- AddSelfToJScript => AddGolbalsToJScript
- require, require_once, include with or without brackets => require <file>;
2013-01-25 18:02:05 +01:00
Sarjuuk
e67d0a3dae moved shared code from the type-classes to commen parent-class
conditions for the type-lists should be more flexible to use
2013-01-19 22:42:26 +01:00
Sarjuuk
1adafd62e1 fixed some bugs in spell parsing:
- 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
2012-12-28 14:26:20 +01:00
Sarjuuk
7c723068f5 added execution-time measurement 2012-12-27 19:52:51 +01:00
Sarjuuk
8d3698d466 initial commit
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
2012-12-19 00:53:36 +01:00