Index: CommonAuras.lua
===================================================================
--- CommonAuras.lua	(revision 15361)
+++ CommonAuras.lua	(working copy)
@@ -28,8 +28,8 @@
 ------------------------------
 
 L:RegisterTranslations("enUS", function() return {
-	fw_cast = "%s fearwarded %s.",
-	fw_bar = "%s: FW Cooldown",
+	spell_cast = "%s got %s from %s.",
+	spell_cd = "%s cooldown: %s",
 
 	used_cast = "%s used %s.",
 	used_bar = "%s: %s",
@@ -71,12 +71,13 @@
 } end )
 
 L:RegisterTranslations("deDE", function() return {
-	fw_cast = "%s sch\195\188tzt %s vor Furcht.",
-	fw_bar = "%s: FS Cooldown",
+	spell_cast = "%s bekam %s von %s.",
+	spell_cd = "%s Abklingzeit: %s",
 
-	used_cast = "%s benutzt %s.",
+	used_cast = "%s benutzte %s.",
+	used_bar = "%s: %s",
 
-	portal_cast = "%s \195\182ffnet ein Portal nach %s!",
+	portal_cast = "%s \195\182ffnete ein Portal nach %s!",
 	-- portal_bar is the spellname
 
 	["Toggle %s display."] = "Aktiviert oder Deaktiviert die Anzeige von %s.",
@@ -113,6 +114,8 @@
 BigWigsCommonAuras = BigWigs:NewModule(name, "AceHook-2.1")
 BigWigsCommonAuras.synctoken = myname
 BigWigsCommonAuras.defaultDB = {
+	innervate = true,
+	blessingofprotection = true,
 	fearward = true,
 	shieldwall = true,
 	challengingshout = true,
@@ -127,6 +130,20 @@
 	name = L["Common Auras"],
 	desc = L["Gives timer bars and raid messages about common buffs and debuffs."],
 	args   = {
+		["innervate"] = {
+			type = "toggle",
+			name = BS["Innervate"],
+			desc = string.format(L["Toggle %s display."], BS["Innervate"]),
+			get = function() return BigWigsCommonAuras.db.profile.innervate end,
+			set = function(v) BigWigsCommonAuras.db.profile.innervate = v end,
+		},
+		["blessingofprotection"] = {
+			type = "toggle",
+			name = BS["Blessing of Protection"],
+			desc = string.format(L["Toggle %s display."], BS["Blessing of Protection"]),
+			get = function() return BigWigsCommonAuras.db.profile.blessingofprotection end,
+			set = function(v) BigWigsCommonAuras.db.profile.blessingofprotection = v end,
+		},
 		["fearward"] = {
 			type = "toggle",
 			name = BS["Fear Ward"],
@@ -181,27 +198,19 @@
 	local _, class = UnitClass("player")
 	local _, race = UnitRace("player")
 
-	if class == "WARRIOR" or class == "DRUID" then
+	if class == "WARRIOR" or class == "DRUID" or class == "PALADIN" or (class == "PRIEST" and race == "Dwarf") then
 		self:RegisterEvent("SpellStatus_SpellCastInstant")
-		if class == "WARRIOR" then
-			local _, _, _, _, currentRank ,_ , _, _ = GetTalentInfo( 3 , 13 )
-			if currentRank == 0 then
-				shieldWallDuration = 10
-			elseif currentRank == 1 then
-				shieldWallDuration = 13
-			else
-				shieldWallDuration = 15
-			end
+	end
+
+	if class == "WARRIOR" then
+		local _, _, _, _, currentRank ,_ , _, _ = GetTalentInfo( 3 , 13 )
+		if currentRank == 0 then
+			shieldWallDuration = 10
+		elseif currentRank == 1 then
+			shieldWallDuration = 13
+		else
+			shieldWallDuration = 15
 		end
-	elseif class == "PRIEST" and race == "Dwarf" then
-		self:RegisterEvent("SpellStatus_SpellCastInstant")
-		--[[self:Hook("CastSpell")
-		self:Hook("CastSpellByName")
-		self:Hook("SpellTargetUnit")
-		self:Hook("SpellStopTargeting")
-		self:Hook("TargetUnit")
-		self:Hook("UseAction")
-		self:HookScript(WorldFrame,"OnMouseDown","BigWigsCommonAurasOnMouseDown")]]
 	elseif class == "MAGE" then
 		if not spellStatus then spellStatus = AceLibrary("SpellStatus-1.0") end
 		self:RegisterEvent("SpellStatus_SpellCastCastingFinish")
@@ -212,6 +221,8 @@
 
 	-- XXX Lets have a low throttle because you'll get 2 syncs from yourself, so
 	-- it results in 2 messages.
+	self:TriggerEvent("BigWigs_ThrottleSync", "BWCAIN", .4) -- Innervate
+	self:TriggerEvent("BigWigs_ThrottleSync", "BWCABOP", .4) -- Blessing of Protection
 	self:TriggerEvent("BigWigs_ThrottleSync", "BWCAFW", .4) -- Fear Ward
 	self:TriggerEvent("BigWigs_ThrottleSync", "BWCASW", .4) -- Shield Wall
 	self:TriggerEvent("BigWigs_ThrottleSync", "BWCACS", .4) -- Challenging Shout
@@ -225,9 +236,19 @@
 
 function BigWigsCommonAuras:BigWigs_RecvSync( sync, rest, nick )
 	if not nick then nick = UnitName("player") end
-	if self.db.profile.fearward and sync == "BWCAFW" and rest then
-		self:TriggerEvent("BigWigs_Message", string.format(L["fw_cast"], nick, rest), "Green", not self.db.profile.broadcast, false)
-		self:TriggerEvent("BigWigs_StartBar", self, string.format(L["fw_bar"], nick), 30, BS:GetSpellIcon("Fear Ward"), "Green")
+	if self.db.profile.innervate and sync == "BWCAIN" then
+		local spell = BS["Innervate"]
+		self:TriggerEvent("BigWigs_Message", string.format(L["spell_cast"], rest, spell, nick), "Green", not self.db.profile.broadcast, false)
+		self:TriggerEvent("BigWigs_StartBar", self, string.format(L["used_bar"], rest, spell), 20, BS:GetSpellIcon("Innervate"), "Green")
+	elseif self.db.profile.blessingofprotection and sync == "BWCABOP" then
+		local spell = BS["Blessing of Protection"]
+		self:TriggerEvent("BigWigs_Message", string.format(L["spell_cast"], rest, spell, nick), "Yellow", not self.db.profile.broadcast, false)
+		self:TriggerEvent("BigWigs_StartBar", self, string.format(L["used_bar"], rest, spell), 10, BS:GetSpellIcon("Blessing of Protection"), "Yellow")
+		self:SetCandyBarOnClick("BigWigsBar "..string.format(L["used_bar"], rest, spell), function(name, button, extra) TargetByName(extra, true) end, nick )
+	elseif self.db.profile.fearward and sync == "BWCAFW" and rest then
+		local spell = BS["Fear Ward"]
+		self:TriggerEvent("BigWigs_Message", string.format(L["spell_cast"], rest, spell, nick), "Green", not self.db.profile.broadcast, false)
+		self:TriggerEvent("BigWigs_StartBar", self, string.format(L["spell_cd"], spell, nick), 30, BS:GetSpellIcon("Fear Ward"), "Green")
 	elseif self.db.profile.shieldwall and sync == "BWCASW" then
 		local swTime = tonumber(rest)
 		if not swTime then swTime = 10 end -- If the tank uses an old BWCA, just assume 10 seconds.
@@ -259,7 +280,7 @@
 end
 
 function BigWigsCommonAuras:SpellStatus_SpellCastInstant(sId, sName, sRank, sFullName, sCastTime)
-	if sName == BS["Fear Ward"] then
+	if sName == BS["Innervate"] then
 		local targetName = nil
 		if spellTarget then
 			targetName = spellTarget
@@ -272,6 +293,34 @@
 				targetName = UnitName("player")
 			end
 		end
+		self:TriggerEvent("BigWigs_SendSync", "BWCABIN "..targetName)
+	elseif sName == BS["Blessing of Protection"] then
+		local targetName = nil
+		if spellTarget then
+			targetName = spellTarget
+			spellCasting = nil
+			spellTarget = nil
+		else
+			if UnitExists("target") and UnitIsPlayer("target") and not UnitIsEnemy("target", "player") then
+				targetName = UnitName("target")
+			else
+				targetName = UnitName("player")
+			end
+		end
+		self:TriggerEvent("BigWigs_SendSync", "BWCABOP "..targetName)
+	elseif sName == BS["Fear Ward"] then
+		local targetName = nil
+		if spellTarget then
+			targetName = spellTarget
+			spellCasting = nil
+			spellTarget = nil
+		else
+			if UnitExists("target") and UnitIsPlayer("target") and not UnitIsEnemy("target", "player") then
+				targetName = UnitName("target")
+			else
+				targetName = UnitName("player")
+			end
+		end
 		self:TriggerEvent("BigWigs_SendSync", "BWCAFW "..targetName)
 	elseif sName == BS["Shield Wall"] then
 		self:TriggerEvent("BigWigs_SendSync", "BWCASW "..tostring(shieldWallDuration))
