Merge pull request #14326 from civicrm/5.14
[civicrm-core.git] / CRM / Core / Form / Search.php
index cb5839bf877e39b010002ff1b51689b343bf8e0a..ede46d09d6fd7f98bb6fd25c97f5ee306a6ad0f4 100644 (file)
@@ -61,7 +61,7 @@ class CRM_Core_Form_Search extends CRM_Core_Form {
   /**
    * Have we already done this search
    *
-   * @var boolean
+   * @var bool
    */
   protected $_done;
 
@@ -178,6 +178,11 @@ class CRM_Core_Form_Search extends CRM_Core_Form {
    */
   public static function formRule($fields, $files, $form) {
     $errors = [];
+    if (!is_a($form, 'CRM_Core_Form_Search')) {
+      // So this gets hit with a form object when doing an activity date search from
+      // advanced search, but a NULL object when doing a pledge search.
+      return $errors;
+    }
     foreach ($form->getSearchFieldMetadata() as $entity => $spec) {
       foreach ($spec as $fieldName => $fieldSpec) {
         if ($fieldSpec['type'] === CRM_Utils_Type::T_DATE || $fieldSpec['type'] === (CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME)) {