Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.88 KB | None | 0 0
  1. $form['comp_card_dl'] = [
  2. '#type' => 'button',
  3. '#value' => $this->t('Download'),
  4. '#ajax' => [
  5. 'callback' => '::generateCSV',
  6. 'progress' => [
  7. 'type' => 'throbber',
  8. ],
  9. ],
  10. '#name' => 'comp_card_download',
  11. ];
  12.  
  13. public function generateCSV($form, FormStateInterface $form_state) {
  14. $trigger = $form_state->getTriggeringElement();
  15. if ($trigger['#name'] == 'gift_card_download') {
  16. $filename = $form['#gift_card_filename'];
  17. $data = $form['#gift_card_data'];
  18. }
  19. else if ($trigger['#name'] == 'comp_card_download') {
  20. $filename = $form['#comp_card_filename'];
  21. $data = $form['#comp_card_data'];
  22. }
  23.  
  24. $path = Drupal::service('file_system')->realpath(file_default_scheme() . "://") . '/';
  25. $csv = fopen($path . $filename, 'w');
  26.  
  27. foreach ($data as $id => $value) {
  28. array_unshift($value, $id);
  29. fputcsv($csv, $value);
  30. }
  31.  
  32. fclose($csv);
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement