From ca7e4a649ddfc44a7c621f4a95acee25fcfce875 Mon Sep 17 00:00:00 2001 From: Ted Trask Date: Mon, 3 Nov 2014 19:54:19 +0000 Subject: Modify handle_clientdata to not update readonly values --- app/acf_cli-controller.lua | 2 ++ app/acf_www-controller.lua | 2 ++ lua/mvc.lua | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/acf_cli-controller.lua b/app/acf_cli-controller.lua index 7b706c3..14badd9 100644 --- a/app/acf_cli-controller.lua +++ b/app/acf_cli-controller.lua @@ -36,6 +36,8 @@ mymodule.handle_clientdata = function(form, clientdata, group) if group then name = group.."."..name end if value.type == "group" then mymodule.handle_clientdata(value, clientdata, name) + elseif value.readonly then + -- Don't update readonly values -- Don't update from the default unless a value exists elseif value.type == "boolean" and clientdata[name] then value.value = (clientdata[name] == "true") diff --git a/app/acf_www-controller.lua b/app/acf_www-controller.lua index fac4cff..b16a8aa 100644 --- a/app/acf_www-controller.lua +++ b/app/acf_www-controller.lua @@ -612,6 +612,8 @@ mymodule.handle_clientdata = function(form, clientdata) end if value.type == "group" then mymodule.handle_clientdata(value, clientdata[name]) + elseif value.readonly then + -- Don't update readonly values elseif value.type == "boolean" then --- HTML forms simply don't include checkboxes unless they're checked value.value = (clientdata[name] ~= nil) and (clientdata[name] ~= "false") diff --git a/lua/mvc.lua b/lua/mvc.lua index 8735942..ea1037e 100755 --- a/lua/mvc.lua +++ b/lua/mvc.lua @@ -437,7 +437,7 @@ mymodule.handle_clientdata = function(form, clientdata) value.errtxt = nil if value.type == "group" then mymodule.handle_clientdata(value, clientdata[name]) - else + elseif not value.readonly then value.value = clientdata[name] or value.value end end -- cgit v1.2.3