=======================================
Background Tasks
=======================================
Details:RegisterBackgroundTask (name, func, priority, ...)
register a function to be called while the player isn't in: combat, group, raid
instances.
priority determines the interval time and support "LOW", "MEDIUM", "HIGH" values.
Details:UnregisterBackgroundTask (name)
unregister a background task.
=======================================
Item Level
=======================================
Details.ilevel:IsTrackerEnabled()
return if the item level tracker is enabled.
Details.ilevel:TrackItemLevel (bool)
enable or disable the tracker, item level tracker only work when inside a raid
instance and out of combat.
Details.ilevel:GetPool()
return a table containing all tracked players:
{[GUID] = {["name"] = name-realm, ["ilvl"] = item level, ["time"] = time()}}
Details.ilevel:GetIlvl (guid)
return the item level table for the requested guid.
Details.ilevel:GetInOrder()
return a new numeric table with sorted in decreasing order:
{{name-realm, item level, time()}, {name-realm, item level, time()}}
=======================================
Raid History
=======================================
Details.storage:OpenRaidStorage()
get the table containing all stored data.
Details.storage:ListDiffs()
return a indexed table with dificulty numbers.
Details.storage:ListEncounters (diff)
return a indexed table with all encounters stored for the dificulty.
Details.storage:GetEncounterData (diff, encounterId, guildname)
return a indexed table with encounter tables playd by the guild.
Details.storage:GetPlayerData (diff, encounterId, playername)
return a indexed table with player tables for the player.
Details.storage:GetBestFromPlayer (diff, encounterId, role, playername)
return the best result from the player.
Structure:
DB = hash{
[difficulty index] = hash{
[encounter id] = indexed{
{
--encounter table
damage = hash{
[playername] = indexed{} --player table
}
...
}--[1]
}
}
}
encounter table = hash {["time"] = time(), ["guild"] = guild name, ["date"] =
formated date, ["healing"] = {[playername] = playertable}, ["elapsed"] = combat
time, ["damage"] = {[playername] = playertable}}
player table = indexed {total done, item level, class index}
=======================================
Parser
=======================================
/dump Details.parser.original_functions
will tell all internal tokens used by the parser.
Details.parser:SetParserFunction (token, func)
replaces a original parser function with a customized one.
If no function passed, it uses the default function.