Files
aux-addon-ClassicAPI/aux-addon/tabs/search/core.lua
T
geojak 02cfc420dd aux auto bid and price heuristics
this commit does two things
1. it implements auto bid just like auto buy
2. it has some minimum pricing heuristics when posting items. this behavoiur actiaves when the post bid price is set to 0, the buyout price behaves like a minimum
2022-02-20 23:51:19 +01:00

86 lines
1.9 KiB
Lua

module 'aux.tabs.search'
local aux = require 'aux'
local info = require 'aux.util.info'
local tab = aux.tab 'Search'
StaticPopupDialogs.AUX_SEARCH_TABLE_FULL = {
text = 'Table full!\nFurther results from this search will still be processed but no longer displayed in the table.',
button1 = 'Ok',
showAlert = 1,
timeout = 0,
hideOnEscape = 1,
}
RESULTS, SAVED, FILTER = aux.enum(3)
function aux.handle.LOAD()
set_subtab(SAVED)
end
function tab.OPEN()
frame:Show()
update_search_listings()
update_filter_display()
end
function tab.CLOSE()
current_search().table:SetSelectedRecord()
frame:Hide()
end
function tab.CLICK_LINK(item_info)
set_filter(strlower(item_info.name) .. '/exact')
execute(nil, false)
end
function tab.USE_ITEM(item_info)
set_filter(strlower(info.item(item_info.item_id).name) .. '/exact')
execute(nil, false)
end
function set_subtab(tab)
CloseDropDownMenus()
search_results_button:UnlockHighlight()
saved_searches_button:UnlockHighlight()
new_filter_button:UnlockHighlight()
frame.results:Hide()
frame.saved:Hide()
frame.filter:Hide()
if tab == RESULTS then
frame.results:Show()
search_results_button:LockHighlight()
elseif tab == SAVED then
frame.saved:Show()
saved_searches_button:LockHighlight()
elseif tab == FILTER then
frame.filter:Show()
new_filter_button:LockHighlight()
end
end
function M.set_filter(filter_string)
search_box:SetFocus()
search_box:SetText(filter_string)
end
function add_filter(filter_string)
local old_filter_string = search_box:GetText()
old_filter_string = aux.trim(old_filter_string)
if old_filter_string ~= '' then
old_filter_string = old_filter_string .. ';'
end
set_filter(old_filter_string .. filter_string)
end
function blizzard_page_index(str)
if tonumber(str) then
return max(0, tonumber(str) - 1)
end
end