local E = unpack(ElvUI)
local L = E.Libs.ACL:GetLocale('ElvUI', E.global.general.locale)
local _G = _G

-- Eltruism media options
function ElvUI_EltreumUI:MediaOptions()
	ElvUI_EltreumUI.Options.args.media = E.Libs.ACH:Group(E:TextGradient(L["Media"], 0.50, 0.70, 1, 0.67, 0.95, 1), L["Change Fonts, Font Outlines and Action Paging"], 85, 'tab')
	ElvUI_EltreumUI.Options.args.media.icon = 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Icons\\media'
	ElvUI_EltreumUI.Options.args.media.args.general = E.Libs.ACH:Group(L["Setup Media"], nil, 1)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description1 = E.Libs.ACH:Description(" ", 1, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.resetmedia = E.Libs.ACH:Execute(L["Reset all Media"], L["Reset all Media"], 2, function() ElvUI_EltreumUI:SetupPrivate() E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true,'full')
	ElvUI_EltreumUI.Options.args.media.args.general.args.description2 = E.Libs.ACH:Description(L["Set the fonts used in Eltruism. Kimberley is the default font"], 3, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.kimberley = E.Libs.ACH:Execute("Kimberley", L["This will set all ElvUI fonts as Kimberley"], 4, function() ElvUI_EltreumUI:SetupFont("Kimberley") end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.exo2 = E.Libs.ACH:Execute("Exo2", L["This will set all ElvUI fonts as Exo2"], 4, function() ElvUI_EltreumUI:SetupFont("Exo2 Extra Bold") end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.gap1 = E.Libs.ACH:Description('', 5, nil)
	ElvUI_EltreumUI.Options.args.media.args.general.args.Gotham = E.Libs.ACH:Execute("Gotham", L["This will set all ElvUI fonts as Gotham"], 6, function() ElvUI_EltreumUI:SetupFont("GothamNarrow Black") end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.Roboto = E.Libs.ACH:Execute("Roboto", L["This will set all ElvUI fonts as Roboto"], 6, function() ElvUI_EltreumUI:SetupFont("Roboto") end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.gap2 = E.Libs.ACH:Description('', 7, nil)
	ElvUI_EltreumUI.Options.args.media.args.general.args.sharedmedia = E.Libs.ACH:SharedMediaFont(L["Or choose a custom font"], L["Choose a different font from the preselected ones"], 8, "double", function() return E.db.ElvUI_EltreumUI.otherstuff.fonts.playerfont end, function(_,fontvalue) E.db.ElvUI_EltreumUI.otherstuff.fonts.playerfont = fontvalue ElvUI_EltreumUI:SetupFont(fontvalue, true) end)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description3 = E.Libs.ACH:Description(L["Texture"], 9, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.sharedmediatexture = E.Libs.ACH:SharedMediaStatusbar(" ", nil, 10, "double", function() return E.private.general.normTex end, function(_,texturevalue) ElvUI_EltreumUI:SetupTexture(texturevalue) E:StaticPopup_Show('CONFIG_RL') end)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description4 = E.Libs.ACH:Description(L["Set the Font Outlines everywhere. Use Default to return to Eltruism default settings"], 11, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontoutlinedefault = E.Libs.ACH:Execute(L["Defaults"], L["This will set fonts to Eltruism defaults, recommended for 4K"], 12, function() ElvUI_EltreumUI:SetupFontsOutlineDefault() E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true,"double")
	ElvUI_EltreumUI.Options.args.media.args.general.args.gap3 = E.Libs.ACH:Description('', 13, nil)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontoutlinenone = E.Libs.ACH:Execute(L["None"], L["This will set fonts to no outline"], 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("NONE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontoutlineoutline = E.Libs.ACH:Execute(L["Outline"], L["This will set fonts to use outline, recommended for 1440p and 1080p"], 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("OUTLINE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontoutlinethick = E.Libs.ACH:Execute(L["Thick Outline"], L["This will set fonts to use thick outline"], 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("THICKOUTLINE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontshadow = E.Libs.ACH:Execute(L['|cff888888Shadow|r'], nil, 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("SHADOW") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontshadowoutline = E.Libs.ACH:Execute(L['|cff888888Shadow|r Outline'], nil, 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("SHADOWOUTLINE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontshadowoutlinethick = E.Libs.ACH:Execute(L['|cff888888Shadow|r Thick'], nil, 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("SHADOWTHICKOUTLINE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontmono = E.Libs.ACH:Execute(L['|cFFAAAAAAMono|r'], nil, 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("MONOCHROME") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontmonooutline = E.Libs.ACH:Execute(L['|cFFAAAAAAMono|r Outline'], nil, 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("MONOCHROMEOUTLINE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.fontmonooutlinethick = E.Libs.ACH:Execute(L['|cFFAAAAAAMono|r Thick'], nil, 14, function() ElvUI_EltreumUI:SetupFontsOutlineCustom("MONOCHROMETHICKOUTLINE") E:StaggeredUpdateAll() E:StaticPopup_Show('CONFIG_RL') end,nil,true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description5 = E.Libs.ACH:Description(L["Change the ElvUI background"], 15, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.greybg = E.Libs.ACH:Execute(L["Grey Background"], L["This will set the background to be a grey color"], 16, function() ElvUI_EltreumUI:GreyBg() end, nil, true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.darkbg = E.Libs.ACH:Execute(L["Black Background"], L["This will set the background to be a black color"], 16, function() ElvUI_EltreumUI:BlackBg() end, nil, true)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description6 = E.Libs.ACH:Description(L["Class Colors"], 17, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.magewarlockclasscolor = E.Libs.ACH:Toggle(L["Make Mage and Warlock use their original Class Colors"], nil, 18, nil, false,'full',function() return E.db.ElvUI_EltreumUI.skins.oldclasscolors end,function(_, value) E.db.ElvUI_EltreumUI.skins.oldclasscolors = value E:StaticPopup_Show('CONFIG_RL') end)
	ElvUI_EltreumUI.Options.args.media.args.general.args.shamanbluecolor = E.Libs.ACH:Toggle(L["Make Shamans Blue instead of Pink"], nil, 18, nil, false,'full',function() return E.db.ElvUI_EltreumUI.skins.classicblueshaman end,function(_, value) E.db.ElvUI_EltreumUI.skins.classicblueshaman = value E:StaticPopup_Show('CONFIG_RL') end, nil, not E.Classic)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description7 = E.Libs.ACH:Description(L["WeakAuras Action Bar"], 19, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.weakaurasactionbar = E.Libs.ACH:Toggle(L["Move ActionBars and Power to be similar to WeakAuras"], L["Overwrites some profile settings to move ActionBars, Unitframes and Powers to look more similar to a WeakAura. |cffFF0000WARNING:|r This will overwrite some of your profile settings with no way to restore"], 20, nil, false,'full',function() return E.db.ElvUI_EltreumUI.otherstuff.ABlikeWA end,function(_, value) E.db.ElvUI_EltreumUI.otherstuff.ABlikeWA = value ElvUI_EltreumUI:WeakAurasLikeActionBars(value) E:StaticPopup_Show('CONFIG_RL') end)
	ElvUI_EltreumUI.Options.args.media.args.general.args.description8 = E.Libs.ACH:Description(" ", 21, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.paging = E.Libs.ACH:Execute(L["Swap Action Paging and visibility for Bar1 and Bar4"], nil, 22, function() ElvUI_EltreumUI:ActionPagingSwap() E:StaticPopup_Show('CONFIG_RL') end,nil,true, "full")
	ElvUI_EltreumUI.Options.args.media.args.general.args.aurafilters = E.Libs.ACH:Execute(L["Aura Indicator"].." "..L["Textured Icon"].." "..L["Style"], nil, 23, function() ElvUI_EltreumUI:AuraFiltersUpdate() end,nil,true, "full")
	ElvUI_EltreumUI.Options.args.media.args.tags = E.Libs.ACH:Group(L["Tags"], nil, 2, "tab")
	ElvUI_EltreumUI.Options.args.media.args.tags.args.enable = E.Libs.ACH:Group("", nil, 1)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.enable.inline = true
	ElvUI_EltreumUI.Options.args.media.args.tags.args.enable.args.description1 = E.Libs.ACH:Description(L["Customize Tags"], 2)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.hpstatus = E.Libs.ACH:Group("[eltruism:hpstatus]", nil, 2)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.hpstatus.args.description1 = E.Libs.ACH:Description(L["Customize Health Status Icons"], 1, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.tags.args.hpstatus.args.deadiconpick = E.Libs.ACH:Select(L["Dead"], nil, 2, {
		["1"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead1',':20:20'),
		["2"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead2',':20:20'),
		["3"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead3',':20:20'),
		["4"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead4',':20:20'),
		["5"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead5',':20:20'),
		["6"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead6',':20:20'),
		["7"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead7',':20:20'),
		["NONE"] = L["None"],
	}, false, nil, function() return E.db.ElvUI_EltreumUI.otherstuff.hpstatusdeadicon end, function(_,value) E.db.ElvUI_EltreumUI.otherstuff.hpstatusdeadicon = _G.tostring(value) end)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.hpstatus.args.deadiconpick.style = "radio"
	ElvUI_EltreumUI.Options.args.media.args.tags.args.hpstatus.args.dciconpick = E.Libs.ACH:Select(L["Disconnected"], nil, 2, {
		["1"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc1',':20:20'),
		["2"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc2',':20:20'),
		["3"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc3',':20:20'),
		["4"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc4',':20:20'),
		["5"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc5',':20:20'),
		["6"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc6',':20:20'),
		["NONE"] = L["None"],
	}, false, nil, function() return E.db.ElvUI_EltreumUI.otherstuff.hpstatusdcicon end, function(_,value) E.db.ElvUI_EltreumUI.otherstuff.hpstatusdcicon = _G.tostring(value) end)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.hpstatus.args.dciconpick.style = "radio"
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dead = E.Libs.ACH:Group("[eltruism:dead]", nil, 2)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dead.args.description1 = E.Libs.ACH:Description(L["Customize the Dead Icons"], 1, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dead.args.deadiconpick = E.Libs.ACH:Select(L["Disconnected"], nil, 2, {
		["1"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead1',':20:20'),
		["2"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead2',':20:20'),
		["3"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead3',':20:20'),
		["4"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead4',':20:20'),
		["5"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead5',':20:20'),
		["6"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead6',':20:20'),
		["7"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Dead\\dead7',':20:20'),
		["NONE"] = L["None"],
	}, false, nil, function() return E.db.ElvUI_EltreumUI.otherstuff.deadtagicon end, function(_,value) E.db.ElvUI_EltreumUI.otherstuff.deadtagicon = _G.tostring(value) end)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dead.args.deadiconpick.style = "radio"
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dc = E.Libs.ACH:Group("[eltruism:dc]", nil, 2)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dc.args.description1 = E.Libs.ACH:Description(L["Customize the Disconnected Icons"], 1, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dc.args.dciconpick = E.Libs.ACH:Select(L["Disconnected"], nil, 2, {
		["1"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc1',':20:20'),
		["2"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc2',':20:20'),
		["3"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc3',':20:20'),
		["4"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc4',':20:20'),
		["5"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc5',':20:20'),
		["6"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Disconnect\\dc6',':20:20'),
		["NONE"] = L["None"],
	}, false, nil, function() return E.db.ElvUI_EltreumUI.otherstuff.dctagicon end, function(_,value) E.db.ElvUI_EltreumUI.otherstuff.dctagicon = _G.tostring(value) end)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.dc.args.dciconpick.style = "radio"

	ElvUI_EltreumUI.Options.args.media.args.tags.args.ghost = E.Libs.ACH:Group(L["Ghost"], nil, 2)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.ghost.args.description1 = E.Libs.ACH:Description(L["Customize the Ghost Icons"], 1, nil, 'Interface\\AddOns\\ElvUI_EltreumUI\\Media\\Textures\\EltreumHeader', nil, 3240, 1, "full")
	ElvUI_EltreumUI.Options.args.media.args.tags.args.ghost.args.ghosticonpick = E.Libs.ACH:Select(L["Ghost"], nil, 2, {
		["1"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Ghost\\ghost1',':20:20'),
		["2"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Ghost\\ghost2',':20:20'),
		["3"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Ghost\\ghost3',':20:20'),
		["4"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Ghost\\ghost4',':20:20'),
		["5"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Ghost\\ghost5',':20:20'),
		["6"] = E:TextureString('Interface\\Addons\\ElvUI_EltreumUI\\Media\\Textures\\Ghost\\ghost6',':20:20'),
		["NONE"] = L["None"],
	}, false, nil, function() return E.db.ElvUI_EltreumUI.otherstuff.ghosttagicon end, function(_,value) E.db.ElvUI_EltreumUI.otherstuff.ghosttagicon = _G.tostring(value) end)
	ElvUI_EltreumUI.Options.args.media.args.tags.args.ghost.args.ghosticonpick.style = "radio"
end
