Mercurial > wow > reaction
annotate Profile.lua @ 215:258ca67bde4a
Fix upgrade script to not throw errors on profile swap
author | Flick <flickerstreak@gmail.com> |
---|---|
date | Fri, 19 Nov 2010 14:33:11 -0800 |
parents | 8ba8ab8bf6dd |
children | a4e7475633b3 |
rev | line source |
---|---|
flickerstreak@211 | 1 local _, addonTable = ... |
flickerstreak@211 | 2 local ReAction = addonTable.ReAction |
flickerstreak@211 | 3 |
flickerstreak@211 | 4 ReAction.PROFILEVERSION_LATEST = 1 |
flickerstreak@211 | 5 |
flickerstreak@213 | 6 ReAction.defaultProfile = { |
flickerstreak@213 | 7 profile = { |
flickerstreak@213 | 8 dbversion = nil, |
flickerstreak@213 | 9 bars = { }, |
flickerstreak@213 | 10 options = { |
flickerstreak@213 | 11 hideBlizzardBars = false, |
flickerstreak@213 | 12 hideBlizzardVehicleBar = false, |
flickerstreak@213 | 13 }, |
flickerstreak@213 | 14 }, |
flickerstreak@213 | 15 global = { |
flickerstreak@213 | 16 skipKeybindWarning = false, |
flickerstreak@213 | 17 } |
flickerstreak@213 | 18 } |
flickerstreak@213 | 19 |
flickerstreak@213 | 20 function ReAction:UpgradeProfile() |
flickerstreak@211 | 21 local db = self.db |
flickerstreak@211 | 22 |
flickerstreak@211 | 23 if not db.profile.dbversion then |
flickerstreak@211 | 24 -- upgrade from legacy db to v1 |
flickerstreak@211 | 25 |
flickerstreak@213 | 26 -- (1) remove unused defaultBars table (cleanup) |
flickerstreak@211 | 27 db.profile.defaultBars = nil |
flickerstreak@211 | 28 |
flickerstreak@211 | 29 -- (2) HideBlizzard is no longer a module |
flickerstreak@215 | 30 local hb = db:GetNamespace("HideBlizzard",true) or db:RegisterNamespace("HideBlizzard") |
flickerstreak@213 | 31 if hb then |
flickerstreak@213 | 32 db.profile.options.hideBlizzardBars = hb.profile.hide |
flickerstreak@213 | 33 db.profile.options.hideBlizzardVehicleBar = hb.profile.hideVehicle |
flickerstreak@213 | 34 hb:ResetProfile() |
flickerstreak@213 | 35 end |
flickerstreak@213 | 36 |
flickerstreak@213 | 37 -- (3) LBF is no longer a module |
flickerstreak@215 | 38 local bf = db:GetNamespace("ButtonFacade",true) or db:RegisterNamespace("ButtonFacade") |
flickerstreak@213 | 39 if bf then |
flickerstreak@213 | 40 for name, bar in pairs(db.profile.bars) do |
flickerstreak@213 | 41 bar.ButtonFacade = bf.profile[name] or bar.ButtonFacade |
flickerstreak@213 | 42 end |
flickerstreak@213 | 43 bf:ResetProfile() |
flickerstreak@211 | 44 end |
flickerstreak@211 | 45 |
flickerstreak@211 | 46 db.profile.dbversion = 1 |
flickerstreak@211 | 47 end |
flickerstreak@211 | 48 |
flickerstreak@211 | 49 db.profile.dbversion = self.PROFILEVERSION_LATEST |
flickerstreak@211 | 50 end |