local function OnLoad(self, event, addon) |
if(addon ~= 'pError') then return end |
|
pErrorDB = pErrorDB or {} |
for k,v in pairs(defaults) do |
if(type(pErrorDB[k]) == 'nil') then |
pErrorDB[k] = v |
end |
end |
pErrorDB2 = pErrorDB2 or {all = false, blacklist = {}} |
|
UIErrorsFrame:SetScript('OnEvent', OnEvent) |
|
self:UnregisterEvent(event) |
end |
|
local function pprint(...) |
print(string.format('|cffff8080pError:|r %s', ...)) |
end |
|
local addon = CreateFrame('Frame') |
addon:RegisterEvent('ADDON_LOADED') |
addon:SetScript('OnEvent', OnLoad) |
|
SLASH_PERROR1 = '/perror' |
SlashCmdList.PERROR = function(str) |
if(str == 'reset') then |
pErrorDB = {} |
print('|cffff8080pError:|r Savedvariables is now reset') |
pErrorDB2 = {all = false, blacklist = {}} |
pprint('Savedvariables is now reset') |
elseif(str == 'all') then |
pErrorDB2.all = not pErrorDB2.all |
pprint(string.format('Filtering of all events turned %s', pErrorDB2.all and 'on' or 'off')) |
elseif(str == 'list') then |
print('|cffff8080pError:|r Listing database of events and their states:') |
for k,v in pairs(pErrorDB) do |
print(format('"%s" %s', k, v and '|cff00ff00Enabled|r' or '|cffff0000Disabled|r')) |
if(pErrorDB2.all) then |
pprint('Filtering all events!') |
elseif(not pErrorDB2.blacklist[1]) then |
pprint('Database is empty') |
else |
pprint('Listing database of events:') |
for k,v in pairs(pErrorDB2.blacklist) do |
pprint(format(' \'%s\'', v)) |
end |
end |
elseif(#str > 0) then |
for k,v in pairs(pErrorDB) do |
if(string.find(string.lower(str), string.lower(k))) then |
pErrorDB[k] = not v |
print(format('|cffff8080pError:|r %s "%s"', v and '|cffff0000Disabled|r' or '|cff00ff00Enabled|r', k)) |
return |
if(pErrorDB2.all) then |
pprint('Can\'t add to database, pError is filtering all events') |
else |
local num = 0 |
for k,v in ipairs(pErrorDB2.blacklist) do |
num = num + 1 |
if(string.find(string.lower(str), string.lower(v))) then |
table.remove(pErrorDB2.blacklist, num) |
pprint(format('\'%s\' removed', v)) |
return |
end |
end |
|
table.insert(pErrorDB2.blacklist, str) |
pprint(format('Added \'%s\' to the database', str)) |
end |
|
pErrorDB[str] = true |
print(format('|cffff8080pError:|r Added "%s" to the database', str)) |
else |
print('|cffff8080pError:|r Please provide an error string') |
pprint('Please provide an error string') |
end |
end |