function process($file) { if ($this->_context == 'activity') { require_once 'api/v2/Activity.php'; $result = civicrm_activity_process_email($this->_mailDir . DIRECTORY_SEPARATOR . $file, EMAIL_ACTIVITY_TYPE_ID); } elseif ($this->_context == 'case') { require_once 'CRM/Case/BAO/Case.php'; $result = CRM_Case_BAO_Case::recordActivityViaEmail($this->_mailDir . DIRECTORY_SEPARATOR . $file); } else { echo "Context not supported/set.\n"; exit; } if ($result['is_error']) { rename($this->_mailDir . DIRECTORY_SEPARATOR . $file, $this->_errorDir . DIRECTORY_SEPARATOR . $file); echo "Failed Processing: {$file}. Reason: {$result['error_message']}\n"; return false; } else { rename($this->_mailDir . DIRECTORY_SEPARATOR . $file, $this->_processedDir . DIRECTORY_SEPARATOR . $file); echo "Processed: {$file}\n"; return true; } }