public function processValues($vals)
 {
     $this->setEnabled(array_key_exists('enabled', $vals) && $vals['enabled']);
     if (!$this->processJoin($vals)) {
         return false;
     }
     return parent::processValues($vals);
 }
 public function getChildType($child)
 {
     switch ($child) {
         case 'limits':
             return 'CustomReports_Report_ReportingFunction_Limits';
         default:
             return parent::getChildType($child);
     }
 }
 public function getChildType($child)
 {
     switch ($child) {
         case 'merges':
             return 'CustomReports_Report_ReportingForm_Field_Merges';
         case 'limits':
             return 'CustomReports_Report_ReportingForm_Field_Limits';
         case 'module_limits':
             return 'CustomReports_Report_ReportingForm_Field_ModuleLimits';
         default:
             return parent::getChildType($child);
     }
 }
 public function getDisplayName()
 {
     if (!$this->setupRelationshipFactory()) {
         return parent::getDisplayName();
     }
     $report = $this->getBaseReport();
     if (!$report instanceof I2CE_Swiss_CustomReports_Report) {
         return parent::getDisplayName();
     }
     $root = $this->relationshipFactory->getSwiss('/' . $report->getRelationship());
     if (!$root instanceof I2CE_Swiss) {
         return parent::getDisplayName();
     }
     $forms = $root->getExistingSwissForms();
     if (!array_key_exists($this->name, $forms) || !$forms[$this->name] instanceof I2CE_Swiss) {
         if ($this->name == 'primary_form') {
             return $root->getDisplayName();
         } else {
             return parent::getDisplayName();
         }
     }
     return $forms[$this->name]->getDisplayName();
 }
 /**
  * Rewind the iterator for this object.
  */
 public function rewind()
 {
     $this->ensureModuleLimits();
     parent::rewind();
 }
 public function rewind()
 {
     $this->ensureLinkableReports();
     parent::rewind();
 }
 public function rewind()
 {
     $this->ensureFieldsFromForm();
     parent::rewind();
 }