/** * Export All Forms * */ public function actionExportAllEntries() { // TODO: Make EXPORTS WORK $this->requirePostRequest(); $entries = FormBuilder2_EntryRecord::model()->findAll(); $attributes = []; $submission = []; $files = []; foreach ($entries as $key => $entry) { $entry = $entry->getAttributes(); foreach ($entry['submission'] as $index => $value) { $field = craft()->fields->getFieldByHandle($index); $submission[$index] = $field->name . ':' . $value; } if ($entry['files']) { foreach ($entry['files'] as $index => $value) { $file = craft()->assets->getFileById($value); $submission[$index] = 'File:' . $file->getUrl(); } } $attributes[$key]['id'] = $entry['id']; $attributes[$key]['formId'] = $entry['formId']; $attributes[$key]['title'] = $entry['title']; $attributes[$key]['submission'] = StringHelper::arrayToString($submission, ','); } $date = uniqid(gmdate('Y-m-d-')); $filename = 'formbuilder2_entries_' . $date . '.csv'; header('Content-Type: application/csv; charset=utf-8'); header('Content-Disposition: attachment; filename=' . $filename); $output = fopen('php://output', 'w'); fputcsv($output, array('ID', 'Form ID', 'Form Name', 'Submission')); foreach ($attributes as $line) { fputcsv($output, $line, ','); } exit; // craft()->request->sendFile('filename.csv', $output, array('forceDownload' => true)); }
/** * Get Submission By ID * */ public function getSubmissionById($entryId) { return FormBuilder2_EntryRecord::model()->findById($entryId); }