You are here

public function WebformExporterBase::getSubmissionBaseName in Webform 6.x

Same name and namespace in other branches
  1. 8.5 src/Plugin/WebformExporterBase.php \Drupal\webform\Plugin\WebformExporterBase::getSubmissionBaseName()

Get webform submission base file name.

Parameters

\Drupal\webform\WebformSubmissionInterface $webform_submission: A webform submission.

Return value

string Webform submission's base file name.

Overrides WebformExporterInterface::getSubmissionBaseName

3 calls to WebformExporterBase::getSubmissionBaseName()
JsonWebformExporter::writeSubmission in src/Plugin/WebformExporter/JsonWebformExporter.php
Write submission to export.
WebformEntityPrintWebformExporter::writeSubmission in modules/webform_entity_print/src/Plugin/WebformExporter/WebformEntityPrintWebformExporter.php
Write submission to export.
YamlWebformExporter::writeSubmission in src/Plugin/WebformExporter/YamlWebformExporter.php
Write submission to export.

File

src/Plugin/WebformExporterBase.php, line 226

Class

WebformExporterBase
Provides a base class for a results exporter.

Namespace

Drupal\webform\Plugin

Code

public function getSubmissionBaseName(WebformSubmissionInterface $webform_submission) {
  $export_options = $this
    ->getConfiguration();
  $file_name = $export_options['file_name'];
  $file_name = $this->tokenManager
    ->replace($file_name, $webform_submission);

  // Sanitize file name.
  // @see http://stackoverflow.com/questions/2021624/string-sanitizer-for-filename
  $file_name = preg_replace('([^\\w\\s\\d\\-_~,;:\\[\\]\\(\\].]|[\\.]{2,})', '', $file_name);
  $file_name = preg_replace('/\\s+/', '-', $file_name);
  return $file_name;
}