Remember category selection for long cat. list

This commit is contained in:
Wuzzy 2016-11-07 16:02:01 +01:00
parent 5c2a4a0b3f
commit 5178181ccb

View File

@ -45,6 +45,7 @@ function doc.new_category(id, def)
doc.data.categories[id].def = def doc.data.categories[id].def = def
doc.data.categories[id].entry_aliases = {} doc.data.categories[id].entry_aliases = {}
table.insert(doc.data.category_order, id) table.insert(doc.data.category_order, id)
doc.data.categories[id].order_position = #doc.data.category_order
return true return true
else else
return false return false
@ -512,7 +513,12 @@ function doc.formspec_main(playername)
formstring = formstring .. "," formstring = formstring .. ","
end end
end end
formstring = formstring .. ";]" formstring = formstring .. ";"
local sel = doc.data.categories[doc.data.players[playername].category]
if sel ~= nil then
formstring = formstring .. doc.data.categories[doc.data.players[playername].category].order_position
end
formstring = formstring .. "]"
formstring = formstring .. "button[0,8;3,1;doc_button_goto_category;"..F("Show category").."]" formstring = formstring .. "button[0,8;3,1;doc_button_goto_category;"..F("Show category").."]"
end end
end end
@ -808,10 +814,8 @@ function doc.process_form(player,formname,fields)
end end
if fields["doc_button_goto_category"] then if fields["doc_button_goto_category"] then
local cid = doc.data.players[playername].category local cid = doc.data.players[playername].category
if cid ~= nil then local formspec = doc.formspec_core(2)..doc.formspec_category(cid, playername)
local formspec = doc.formspec_core(2)..doc.formspec_category(cid, playername) minetest.show_formspec(playername, "doc:category", formspec)
minetest.show_formspec(playername, "doc:category", formspec)
end
end end
elseif(formname == "doc:category") then elseif(formname == "doc:category") then
if fields["doc_button_goto_entry"] then if fields["doc_button_goto_entry"] then