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
86 lines
1.9 KiB
Lua
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
|
|
|