Merge remote-tracking branch 'upstream/4.4' into 4.4-master-2014-07-14-13-42-39
[civicrm-core.git] / api / v3 / Generic / Setvalue.php
index abe405a5eea6a30e53ea57771953e3ced2f0bde6..be0553354b44757f5411e414676e0118447e6625 100644 (file)
@@ -26,7 +26,10 @@ function civicrm_api3_generic_setValue($apiRequest) {
   }
 
   $def = $fields[$field];
-  if (array_key_exists('required', $def) && CRM_Utils_System::isNull($value)) {
+  // Disallow empty values except for the number zero.
+  // TODO: create a utility for this since it's needed in many places
+  // if (array_key_exists('required', $def) && CRM_Utils_System::isNull($value)) {
+  if (array_key_exists('required', $def) && empty($value) && $value !== '0' && $value !== 0) {
     return civicrm_api3_create_error(ts("This can't be empty, please provide a value"), array("error_code" => "required", "field" => $field));
   }