if not PriceTracker then
	return
end

local PriceTrackerMenu = {}
PriceTracker.menu = PriceTrackerMenu

PriceTrackerMenu.algorithmTable = {
	"Weighted Average",
	"Median",
	"Most Frequently Used"
}

function PriceTrackerMenu:InitAddonMenu(addOnName)
	local LAM = LibStub:GetLibrary("LibAddonMenu-1.0")
	local addOnMenu = LAM:CreateControlPanel("PriceTrackerMenu", addOnName)

	-- Ensure compatibility
	if PriceTracker.settings.showMinMax == nil then
		PriceTracker.settings.showMinMax = true
	end

	if PriceTracker.settings.showSeen == nil then
		PriceTracker.settings.showSeen = true
	end

	-- Create the settings menu
	LAM:AddHeader(addOnMenu, addOnName .. "Header", "Options")
	LAM:AddDropdown(addOnMenu, addOnName .. "Algorithm", "Select Price Algorithm", "", self.algorithmTable,
		function() return PriceTracker.settings.algorithm or self.algorithmTable[1] end,
		function(algorithm) PriceTracker.settings.algorithm = algorithm end)
	LAM:AddCheckbox(addOnMenu, addOnName .. "MinMax", "Show Min / Max Prices", "Show minimum and maximum sell values",
		function() return PriceTracker.settings.showMinMax end,
		function(check) PriceTracker.settings.showMinMax = check end)
	LAM:AddCheckbox(addOnMenu, addOnName .. "Seen", "Show 'Seen'", "Show how many times an item was seen in the guild stores",
		function() return PriceTracker.settings.showSeen end,
		function(check) PriceTracker.settings.showSeen = check end)
end