Commit Graph

438 Commits

Author SHA1 Message Date
Sarjuuk
2dd9265700 Template/Update (Part 21)
* convert dbtype 'emotes'
 * in setup use voicemacros as additional aliasses
 * also fix emote text descriptor
2025-09-25 15:56:47 +02:00
Sarjuuk
26226e2bad Template/Update (Part 18)
* convert dbtype 'item'
 * StatsContainer::toJson - exclude empty values in listviews + xml
2025-09-25 15:56:47 +02:00
Sarjuuk
2899cc881b Template/Update (Part 12)
* convert user page
 * update db to handle custom avatars
2025-09-25 15:56:42 +02:00
Sarjuuk
81d9248541 Template/Update (Part 3)
* convert amalgamation more.php into separate endpoints
 * fix url of help articles
2025-09-25 15:55:31 +02:00
Sarjuuk
226f521439 Template/Endpoints (Base)
* redo page render following the logic of:
      Response ─┬─> TextResponse ─> TextResponseImpl
                └─> TemplateResponse ─> TemplateResponseImpl
    * split up giant files, one per response path
    * caching becomes a trait, implemented where necessary
        * TextResponses (Ajax) can now be cached
    * make use of previously defined php classes for js objects
        * Tabs, Listview, Tooltip, Announcement, Markup, Book, ...
    * \Aowow\Template\PageTemplate is the new class to be cached
    * do not discard error messages generated after vars have been sent to template
      and store in session for display at a later time
    * implement tracking consent management
    * move logic out of template into their respective endpoints
2025-09-25 15:32:18 +02:00
Sarjuuk
aeb84327d6 Template/Endpoints (Prep)
* modernize DB-Types
   - long term: should be split in class that describes the DB-Type and container class that handles multiples
 * make unchanging filter props static, allow lookup of criteria indizes through filter
 * move username/mail/password checks to util and make them usable as input filter
2025-09-25 15:32:16 +02:00
Sarjuuk
16eabb90b6 Core/Cleanup
* move DBType Filter base to its own file under components
 * modernize class and its children
2025-08-05 21:12:23 +02:00
Sarjuuk
569c9efca4 Setup/Source
* fix copy/paste error breaking item - pvp source query
2025-07-31 18:02:32 +02:00
Sarjuuk
112acb2216 Zones/QuickFacts
* unlink quick facts from articles and store per-row
 * new system allows generic and manual QuickFacts to coexist
 * fill new table with data for zones
 * if someone used static quickFacts .. uh .. good luck?
2025-07-28 00:30:04 +02:00
Sarjuuk
40b5c992e2 Misc/Fixup
* make time formatting js compatible
 * add auto-discovery for rss feeds
 * fix typos
 * define more magic numbers
2025-07-27 16:42:15 +02:00
Sarjuuk
a99fff46aa User/Sessions
* implement tracking
    * FUTURE: log out all devices for user
    * generally store less info in _SESSION
2025-07-27 16:42:13 +02:00
Sarjuuk
086760b9b1 User/Cleanup
* the great unfuckening of user and displayName
    * `login` is purely used as login with AUTH_MODE_SELF
    * `email` may now also be used to log in (if the system knows it)
    * `username` is purely used for display around the site, and lookups from web context
    * both must exist because of external logins
        a) that may be not unique
        b) you may not want to share with the rest of the world
    * todo: implement rename ( because of b) )
2025-07-27 16:42:13 +02:00
Sarjuuk
06bd7aa665 More/Searchbox
* modernize article
 * (clicktocopy pending cherry-pick)
2025-07-26 23:04:23 +02:00
Sarjuuk
fbfb81cd25 Profiler/Talents
* use icon from g_file_specs instead of weightscale data
 * fix detecting tank subspec for class 6
2025-07-24 19:43:09 +02:00
Sarjuuk
f826e4d68a NPCs/Vendors
* fix npc_vendor self-referencing itself
 * game_event_npc_vendor seems to not allow for self references
2025-07-04 22:29:15 +02:00
Sarjuuk
e173de9a97 Quests/Series
* apply cuFlags to quest series
 * implement firstquestseries, lastquestseries, partseries filters using said flags
2025-06-22 19:31:22 +02:00
Sarjuuk
44e0b6c62d Spells/Racial Skills
* fix manually set race mask for expansion races (and one class mask)
 * show applicable classes in race detail page listing
2025-05-13 20:11:20 +02:00
Sarjuuk
db1d3ccace Core/Cleanup
* try to give included files a logical structure
 * move objects from Util and Game to their own files
 * make non-essential files auto-loaded
2025-04-01 22:33:36 +02:00
Sarjuuk
3a6c86092b Core/Compat
* create namespace Aowow to avoid naming conflicts
 * inclues/libs/ is outside of the Aowow namespace
2025-04-01 22:32:37 +02:00
Sarjuuk
73f4a69a41 Setup/CustomData
* fix entry for item 33147
2025-03-22 19:24:01 +01:00
Sarjuuk
676c8617a5 Misc/Fixup
* fixed an exception for using an enum as string when generating log message.
2025-03-19 13:50:28 +01:00
Sarjuuk
50a5ccbaf6 Items/Summary
* Fixed itemset bonus calculation for sets with interchangeable items.
 * Fixed multiple items for the same slot activating set boni
2025-03-07 16:29:14 +01:00
Sarjuuk
1f59e6fe2d Util/Enums
* create helper enum classes ChrClass & ChrRace
 * replace various iterators and checks with said enums
2025-02-28 14:04:19 +01:00
Sarjuuk
870cbea2ca SmartAI/Update
* update events and actions to match TrinityCore again
   * removed events and actions have been kept but marked as deprecated
 * general rewording and use of UIES for better readability
 * move constants to respective classes
 * reevaluate usage of UNIT_FIELD_BYTES1 content
2025-02-27 16:25:24 +01:00
Sarjuuk
398b93e9a7 Locale
* detatch from User and Util and move to its own enum class
 * added definitions for all locales the 12340 client could in theory have
 * this is incompatble with the Intl extension
 * version bump and php requirement bump
2025-02-27 16:25:23 +01:00
Sarjuuk
88da3588e5 Compat/SQL
* make ON DUPLICATE KEY UPDATE queries compatible with both MySQL8 and MariaDB by providing update values from php
2025-01-26 13:53:26 +01:00
Sarjuuk
c1eecb4c22 ItemStats/Filters
* do not use NULL on item stats as it prevents searching for an amount of 0 (except for stats that certain items just cant have)
 * fix stats from spells granting spell power and spell healing separately
 * define and use some item subclasses
2024-09-10 16:54:49 +02:00
Sarjuuk
a62f24b97c Locales/Domain
* entirely switch over to write 'en' for locale 0 and accept both 'www' and 'en' for locale 0 when receiving
2024-09-10 14:42:27 +02:00
Sarjuuk
e3fc4ebd62 Updates/Fixup
* DROP COLUMN IF EXIST is MariaDB specific and should not be used.
2024-09-08 21:46:59 +02:00
Sarjuuk
075e15ba0c Setup/Fixup
* even more forgotten renames in help text
 * see 07e001ee9c
2024-08-24 15:11:31 +02:00
Sarjuuk
7d2e306f0c Game/Spawns
* fix spawn point calculation on instance maps without dungeonmap entry
   (can't wait to see what breaks elsewhere)
2024-08-24 14:49:22 +02:00
Sarjuuk
d2e109d818 SpellDetailPage
* attempted cleanup in effect generation and template
 * display summon properties
 * display unit of effect value
 * fix spell effect layout, typos, missing tools, ...
2024-08-19 21:35:36 +02:00
Sarjuuk
b330f88699 Itemstats/Ammunition
* don't use 'delay' to calc added dps from ammunition
2024-07-31 02:38:25 +02:00
Sarjuuk
481a3dc63f MySQL/Compat
* fixed several deprecation notices and warnings from MySQL8, most notably:
   - SQL_CALC_FOUND_ROWS: stopped using DBSimple::selectPage and query 'SELECT COUNT(*) ...' separately where needed
   - ON DUPLICATE KEY UPDATE ... VALUES(): use row alias for new values instead of VALUES function
   - boolean shorthands to long form (&& -> AND, etc)
2024-07-31 02:38:19 +02:00
Sarjuuk
1b2b773663 PHP/Compat
* avoid using "echo" to write to CLI as php mistakes it for sent headers (see php-src #12303)
 * as we are using fwrite now, errors are written to STDERR instead of STDOUT
 * fixes an issue where reloading the config would cause "ini_set(): Session ini settings cannot be changed after headers have already been sent" to be spammed
2024-07-31 00:51:10 +02:00
Sarjuuk
b5c2f7a296 Git/Misc
* force text files eol to \n
2024-07-31 00:50:46 +02:00
Sarjuuk
07e001ee9c Setup/Fixup
* fixed help text referencing renamed parameter
2024-07-31 00:50:46 +02:00
Sarjuuk
7d545167df Errors/Log
* also log POST data
2024-07-14 17:18:22 +02:00
Sarjuuk
a9f1832b6d GearScore/Enchants
* reapply lost /4 modifier for enchantment scores
2024-07-11 01:48:20 +02:00
Sarjuuk
b0a51f4746 Spells/SpellClassMask
* fix confusion of SpellClassMask fields
 * no functional change
2024-07-10 18:04:35 +02:00
Sarjuuk
f55945780b Setup/Fixup
* fix syntax of db_structure.sql
 * not to self: SHOW CREATE TABLE doesn't return a terminated statement
 * fixes #431
2024-07-09 21:10:17 +02:00
Sarjuuk
c14d53067b Comments/Replies
* add default values to comments table so replying doesn't cause errors
2024-07-09 13:30:51 +02:00
Sarjuuk
460615c112 Profiler/Completion
* split completion table into it's subcomponents
 * this should save some disk space as some keys and null fields have been optimized out and col sizes have been reduced
 * sort ICC raid bosses first to last
2024-07-08 23:56:43 +02:00
Sarjuuk
98b1771850 Config/Locales
* flag locales as 'required'
 * allow bitmasks to be empty unless required
 * skip empty check in javascript
2024-07-08 17:16:10 +02:00
Sarjuuk
37def70f6a Setup/Realms
* force use of Locale EN instead of last used locale (usually RU)
2024-07-08 16:51:44 +02:00
Sarjuuk
f4364099c6 DB/CustomData
* alter value column from varchar to text to prevent truncated data
2024-07-08 16:51:44 +02:00
Sarjuuk
828fa40d4b Loot/LootLink
* link Ahune and Majordomo Executus to their chests
2024-07-07 23:02:44 +02:00
Sarjuuk
8d885a5a67 Setup/WIN
* fix paths for WIN ... and try to not use slashes in the future...
 * fixes #430
2024-07-05 18:15:05 +02:00
Sarjuuk
8b46607c29 Setup/Spawns
* handle erronous zone data from TDB creature/gameobject tables
2024-07-04 23:22:29 +02:00
Sarjuuk
2e9b503c59 Loot/LinkedLoot
* rework npc <-> chest loot linking
 * difficulty is now directly stored
 * should fix multiple issues where loot tabs had wrong difficulty or null title
2024-07-04 21:31:48 +02:00