diff options
author | Ted Trask <ttrask01@yahoo.com> | 2014-02-05 19:46:21 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2014-03-10 00:27:17 +0000 |
commit | 0a8126e20f3301196b32e04c5268884a544e6065 (patch) | |
tree | 973559e0f9a3d6390a8875ab23007039ad539e08 | |
parent | 8ac4773598507456d31e5942cdf2b23981fb8dfa (diff) | |
download | acf-core-0a8126e20f3301196b32e04c5268884a544e6065.tar.bz2 acf-core-0a8126e20f3301196b32e04c5268884a544e6065.tar.xz |
Fix htmlviewfunctions displaypagination when clientdata contains tables
(cherry picked from commit 7fef28404c6a17b583a852053d4963aeb533ff55)
-rw-r--r-- | lib/htmlviewfunctions.lua | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/lib/htmlviewfunctions.lua b/lib/htmlviewfunctions.lua index 35d4ca4..2d4721d 100644 --- a/lib/htmlviewfunctions.lua +++ b/lib/htmlviewfunctions.lua @@ -313,11 +313,18 @@ function mymodule.displaypagination(page_data, page_info) -- Pre-determine the links for each page local link = page_info.script .. page_info.orig_action .. "?" local clientdata = {} - for name,val in pairs(page_info.clientdata) do - if name ~= "sessionid" and name ~= "page" then - clientdata[#clientdata + 1] = name.."="..val + function serialize_clientdata(cltdata, prefix) + for name,val in pairs(cltdata) do + if name ~= "sessionid" and name ~= "page" then + if (type(val) == "table") then + serialize_clientdata(val, prefix..name..".") + else + clientdata[#clientdata + 1] = prefix..name.."="..val + end + end end end + serialize_clientdata(page_info.clientdata, "") if #clientdata > 0 then link = link .. table.concat(clientdata, "&") .. "&" end |