public function testIsFileRequired() { // When uninitialized, files should not be required. $type = new ContributionType(); $this->assertFalse($type->isFileRequired()); $type->file_permissions = ContributionType::FILE_PERMISSION_ALLOWED; $this->assertFalse($type->isFileRequired()); $type->file_permissions = ContributionType::FILE_PERMISSION_REQUIRED; $this->assertTrue($type->isFileRequired()); $type->file_permissions = ContributionType::FILE_PERMISSION_DISALLOWED; $this->assertFalse($type->isFileRequired()); }
/** * Deals with files specified on the contribution form. * * @param ContributionType $contributionType Type of contribution. * @return array File upload array. */ protected function _processFileUpload($contributionType) { if ($contributionType->isFileAllowed()) { $options = array(); if ($contributionType->isFileRequired()) { $options['ignoreNoFile'] = false; } else { $options['ignoreNoFile'] = true; } $fileMetadata = array('file_transfer_type' => 'Upload', 'files' => 'contributed_file', 'file_ingest_options' => $options); // Add the whitelists for uploaded files $fileValidation = new ContributionFileValidation(); $fileValidation->enableFilter(); return $fileMetadata; } return array(); }