Merge remote-tracking branch 'upstream/4.3' into 4.3-master-2013-05-28-14-04-12
[civicrm-core.git] / CRM / Report / Form.php
index fdff9a942fabda7766a88031fa0bf7633621ef6e..57e3f95989d02aa7c3d70cc3073a46f8a13b8add 100644 (file)
@@ -1,6 +1,4 @@
 <?php
-// $Id$
-
 /*
   +--------------------------------------------------------------------+
   | CiviCRM version 4.3                                                |
@@ -428,10 +426,13 @@ class CRM_Report_Form extends CRM_Core_Form {
         require_once str_replace('_', DIRECTORY_SEPARATOR, $table['bao'] . '.php');
         eval("\$expFields = {$table['bao']}::exportableFields( );");
       }
-      else {
+      elseif (array_key_exists('dao', $table)){
         require_once str_replace('_', DIRECTORY_SEPARATOR, $table['dao'] . '.php');
         eval("\$expFields = {$table['dao']}::export( );");
       }
+      else{
+        $expFields = array();
+      }
 
       $doNotCopy = array('required');
 
@@ -579,7 +580,14 @@ class CRM_Report_Form extends CRM_Core_Form {
         foreach ($table['filters'] as $fieldName => $field) {
           if (isset($field['default'])) {
             if (CRM_Utils_Array::value('type', $field) & CRM_Utils_Type::T_DATE) {
-              $this->_defaults["{$fieldName}_relative"] = $field['default'];
+              if(is_array($field['default'])){
+                $this->_defaults["{$fieldName}_from"] = CRM_Utils_Array::value('from', $field['default']);
+                $this->_defaults["{$fieldName}_to"] = CRM_Utils_Array::value('to', $field['default']);
+                $this->_defaults["{$fieldName}_relative"] = 0;
+              }
+              else{
+                $this->_defaults["{$fieldName}_relative"] = $field['default'];
+              }
             }
             else {
               $this->_defaults["{$fieldName}_value"] = $field['default'];