コード例 #1
1
 /**
  * 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));
 }
コード例 #2
0
 /**
  * Get Submission By ID
  *
  */
 public function getSubmissionById($entryId)
 {
     return FormBuilder2_EntryRecord::model()->findById($entryId);
 }