comparison util/dataforms.lua @ 4541:05f5ec99da77

Merge with trunk
author Matthew Wild <mwild1@gmail.com>
date Sun, 22 Jan 2012 22:55:49 +0000
parents ea69296afaef
children b8d852aea3ad
comparison
equal deleted inserted replaced
4530:40905e7bf680 4541:05f5ec99da77
118 tag = field_tag; 118 tag = field_tag;
119 break; 119 break;
120 end 120 end
121 end 121 end
122 122
123 local reader = field_readers[field.type]; 123 if not tag then
124 local verifier = field.verifier or field_verifiers[field.type]; 124 if field.required then
125 if reader then 125 errors[field.name] = "Required value missing";
126 data[field.name] = reader(tag); 126 end
127 if verifier then 127 else
128 errors[field.name] = verifier(data[field.name], tag, field.required); 128 local reader = field_readers[field.type];
129 local verifier = field.verifier or field_verifiers[field.type];
130 if reader then
131 data[field.name] = reader(tag);
132 if verifier then
133 errors[field.name] = verifier(data[field.name], tag, field.required);
134 end
129 end 135 end
130 end 136 end
131 end 137 end
132 if next(errors) then 138 if next(errors) then
133 return data, errors; 139 return data, errors;
159 field_readers["jid-single"] = 165 field_readers["jid-single"] =
160 field_readers["text-single"]; 166 field_readers["text-single"];
161 167
162 field_verifiers["jid-single"] = 168 field_verifiers["jid-single"] =
163 function (data, field_tag, required) 169 function (data, field_tag, required)
164 if #data == 0 and required then 170 if ((not data) or (#data == 0)) and required then
165 return "Required value missing"; 171 return "Required value missing";
166 end 172 end
167 if not jid_prep(data) then 173 if not jid_prep(data) then
168 return "Invalid JID"; 174 return "Invalid JID";
169 end 175 end
244 end 250 end
245 251
246 field_verifiers["boolean"] = 252 field_verifiers["boolean"] =
247 function (data, field_tag, required) 253 function (data, field_tag, required)
248 data = field_readers["text-single"](field_tag); 254 data = field_readers["text-single"](field_tag);
249 if #data == 0 and required then 255 if ((not data) or (#data == 0)) and required then
250 return "Required value missing"; 256 return "Required value missing";
251 end 257 end
252 if data ~= "1" and data ~= "true" and data ~= "0" and data ~= "false" then 258 if data ~= "1" and data ~= "true" and data ~= "0" and data ~= "false" then
253 return "Invalid boolean representation"; 259 return "Invalid boolean representation";
254 end 260 end