IRF_FuBar = AceLibrary("AceAddon-2.0"):new("AceDB-2.0", "FuBarPlugin-2.0")
local mother = InvenRaidFrames
IRF_FuBar.hasIcon = true

function IRF_FuBar:OnInitialize()
	self:RegisterDB("InvenRaidFramesFuBarDB")
	self.title = "IRF"
	self.defaultPosition = "RIGHT"
	self.defaultMinimapPosition = 240
	self.blizzardTooltip = true
	self.cannotDetachTooltip = true
	self.hideWithoutStandby = true
	self.OnMenuRequest = {
		name = "인벤 레이드 프레임",
		handler = InvenRaidFrames,
		type = "group",
		args = {
			config = {
				type = "execute",
				name = "설정",
				desc = "설정창을 열고 닫습니다.",
				order = 10,
				func = function() self:OnClick() end,
			},
			doreadycheck = {
				type = "execute",
				name = "전투 준비 확인",
				desc = "전투 준비 확인을 합니다. 파티장이나 공격대장 또는 승급자 이상의 권한이 필요합니다.",
				order = 20,
				func = function() DoReadyCheck() end,
				disabled = function() return not mother:IsReadyCheckable() end,
			},
			use = {
				type = "toggle",
				name = "사용",
				desc = "IRF를 사용합니다.",
				order = 30,
				get = function() return mother.db.char.showIRF end,
				set = function()
					mother.db.char.showIRF = not mother.db.char.showIRF
					mother:RosterUpdate()
				end,
			},
			buff = {
				type = "toggle",
				name = "버프 확인 토글",
				desc = "단축키를 누를때 마다 버프 확인을 토글합니다. 단축키는 단축키 설정의 인벤 레이드 프레임 항목에서 할 수 있습니다.",
				order = 30,
				get = function() return mother.db.char.checkbuff.toggle end,
				set = function()
					if mother:IsEnableModule("Buff") then
						IRF_Buff:ToggleBuff()
					end
				end,
				hidden = function() return not (mother:IsEnableModule("Buff") and mother.db.char.checkbuff.togglemode) end,
			},
			menu = {
				type = "group",
				name = "미니맵 및 푸바 설정",
				desc = "미니맵 아이콘 및 푸바 메뉴를 설정합니다.",
				args = AceLibrary("FuBarPlugin-2.0"):GetAceOptionsDataTable(IRF_FuBar),
				order = 50,
			}
		},
	}
	self:SetIcon(mother.icon)
end

function IRF_FuBar:OnClick()
	mother:OnMMButtonClick("LeftButton")
end

function IRF_FuBar:OnTooltipUpdate()
	GameTooltip:AddLine(mother.title.." v"..mother.version)
	GameTooltip:AddLine("|cffffffff"..mother.website.."|r")
	GameTooltip:AddLine("|cffffff00좌클릭: 설정창 열기|r")
	GameTooltip:AddLine("|cffffff00우클릭: 메뉴 열기|r")
	if mother.db.profile.readycheck and mother:HasModule("ReadyCheck") then
		if mother:IsReadyCheckable() then
			GameTooltip:AddLine("|cffffff00Ctrl + 클릭: 전투 준비 확인|r")
		else
			GameTooltip:AddLine("|cff9f9f9fCtrl + 클릭: 전투 준비 확인|r")
		end
	end
	if mother.db.char.checkbuff.togglemode then
		GameTooltip:AddLine("|cffffff00Alt + 클릭: 버프 확인|r")
	end
end