Quantcast

Fix default expressions returning after deletion

Erik L. Vonderscheer [07-06-09 - 06:51]
Fix default expressions returning after deletion
Filename
TradeFilter3.lua
TradeFilter3Options.lua
diff --git a/TradeFilter3.lua b/TradeFilter3.lua
index f05e4c8..d27e701 100644
--- a/TradeFilter3.lua
+++ b/TradeFilter3.lua
@@ -71,11 +71,11 @@ defaults = {
 		editfilter_enable = false,
 		editlists_enable = false,
 		friendslist = {},
-		whitelist = L.WHITELIST,
-		blacklist = L.BLACKLIST,
-		filters = L.FILTERS,
-		basefilters = L.FILTERS.BASE,
-		tradefilters = L.FILTERS.TRADE,
+		whitelist = {},
+		blacklist = {},
+		filters = {},
+		basefilters = {},
+		tradefilters = {},
 	},
 }

@@ -102,6 +102,11 @@ function TF3:OnInitialize()
 	self.OptionsPanel.profiles = ACD:AddToBlizOptions("TradeFilter3P", L["Profiles"], self.name)
 	self.OptionsPanel.about = LAP.new(self.name, self.name)

+	if (TF3.db.profile.firstlogin == true) then
+		TF3:FirstLogin()
+		TF3.db.profile.firstlogin = false
+	end
+
 	if IsLoggedIn() then
 		self:IsLoggedIn()
 	else
@@ -115,6 +120,12 @@ function TF3:OpenOptions()
 	InterfaceOptionsFrame_OpenToCategory(self.OptionsPanel)
 end

+function TF3:FirstLogin()
+	TF3.db.profile.whitelist = L.WHITELIST
+	TF3.db.profile.blacklist = L.BLACKLIST
+	TF3.db.profile.filters = L.FILTERS
+end
+
 function TF3:IsLoggedIn()
 self:RegisterEvent("FRIENDLIST_UPDATE", "GetFriends")
 friends.RegisterCallback(self, "Added")
diff --git a/TradeFilter3Options.lua b/TradeFilter3Options.lua
index 97ec5f2..a96d112 100644
--- a/TradeFilter3Options.lua
+++ b/TradeFilter3Options.lua
@@ -165,7 +165,7 @@ options = {
 --~ 							desc = L["BTF"],
 							get = function(info)
 								local ret = '';
-									for k, v in pairs(TF3.db.profile.tradefilters) do
+									for k, v in pairs(TF3.db.profile.filters.TRADE) do
 										if ret == '' then
 											ret = k..' = '..v;
 										else
@@ -175,14 +175,14 @@ options = {
 									return ret;
 								end,
 							set = function(info, value)
-								TF3:ClearTable(TF3.db.profile.tradefilters)
+								TF3:ClearTable(TF3.db.profile.filters.TRADE)
 								local tbl = { strsplit('\n', value) };
 								local type, val;
 								for i, str in pairs(tbl) do
 									type, val = strsplit('=', str);
 									type = strtrim(type);
 									val = strtrim(val);
-									TF3.db.profile.tradefilters[type] = val;
+									TF3.db.profile.filters.TRADE[type] = val;
 								end
 							end,
 						},
@@ -198,7 +198,7 @@ options = {
 --~ 							desc = L["BCF"],
 							get = function(info)
 								local ret = '';
-									for k, v in pairs(TF3.db.profile.basefilters) do
+									for k, v in pairs(TF3.db.profile.filters.BASE) do
 										if ret == '' then
 											ret = k..' = '..v;
 										else
@@ -208,14 +208,14 @@ options = {
 									return ret;
 								end,
 							set = function(info, value)
-								TF3:ClearTable(TF3.db.profile.basefilters)
+								TF3:ClearTable(TF3.db.profile.filters.BASE)
 								local tbl = { strsplit('\n', value) };
 								local type, val;
 								for i, str in pairs(tbl) do
 									type, val = strsplit('=', str);
 									type = strtrim(type);
 									val = strtrim(val);
-									TF3.db.profile.basefilters[type] = val;
+									TF3.db.profile.filters.BASE[type] = val;
 								end
 							end,
 						},