changeset 10:627bb3803132

aliases support; convert plural support to aliases
author ovolkov
date Tue, 03 Feb 2015 07:41:39 +0300
parents 7bc12a08a3d4
children bd476e399376
files LFGFilter.lua
diffstat 1 files changed, 24 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/LFGFilter.lua	Sat Jan 24 06:43:21 2015 +0300
+++ b/LFGFilter.lua	Tue Feb 03 07:41:39 2015 +0300
@@ -12,6 +12,24 @@
    end
 })
 
+local aliases = {
+   hm       = "highmaul",
+   healers  = "healer",
+   members  = "member",
+   tanks    = "tank",
+   damagers = "damager",
+   damage   = "damager",
+   plates   = "plate",
+   mails    = "mail",
+   leathers = "leather",
+   cloths   = "cloth",
+   clothies = "cloth",
+}
+for idx = 1, MAX_CLASSES do
+   local class_lc = CLASS_SORT_ORDER[idx]:lower()
+   aliases[class_lc .. "s"] = class_lc
+end
+
 function LFGListSearchPanel_DoSearch(self)
    local searchText = self.SearchBox:GetText();
    local real_search, filter_expression = searchText:match("^([^=]-)=(.+)$")
@@ -50,13 +68,9 @@
          result_env.ilvl = iLvl
          -- TODO: should be calculated in meta
          result_env.defeated = completedEncounters and #completedEncounters or 0
-         result_env.members = numMembers
          result_env.member = numMembers
-         result_env.tanks = memberCounts.TANK
          result_env.tank = memberCounts.TANK
-         result_env.healers = memberCounts.HEALER
          result_env.healer = memberCounts.HEALER
-         result_env.damagers = memberCounts.DAMAGER + memberCounts.NOROLE
          result_env.damager = memberCounts.DAMAGER + memberCounts.NOROLE
          result_env.my_server = leaderName and not leaderName:find('-')
 
@@ -69,12 +83,7 @@
          for idx = 1, MAX_CLASSES do
             local class_lc = CLASS_SORT_ORDER[idx]:lower()
             local count = result_env[class_lc]
-            if count then
-               result_env[class_lc .. "s"] = count
-            else
-               result_env[class_lc] = 0
-               result_env[class_lc .. "s"] = 0
-            end
+            if not count then result_env[class_lc] = 0 end
          end
 
          if activityID == 37 then
@@ -85,7 +94,11 @@
             result_env.heroic = true
          end
 
-         -- dump(result_env)
+          -- dump(result_env)
+
+         for alias, original in pairs(aliases) do result_env[alias] = result_env[original] end
+
+         -- dump(result_env)         
 
          local pass
          if check then