diff --git a/projects/packages/forms/changelog/change-jetpack-forms-utils-move-method b/projects/packages/forms/changelog/change-jetpack-forms-utils-move-method new file mode 100644 index 0000000000000..f0c90584575e0 --- /dev/null +++ b/projects/packages/forms/changelog/change-jetpack-forms-utils-move-method @@ -0,0 +1,4 @@ +Significance: minor +Type: changed + +Forms: move get_export_filename method from Admin to Util diff --git a/projects/packages/forms/src/contact-form/class-contact-form-plugin.php b/projects/packages/forms/src/contact-form/class-contact-form-plugin.php index 55ac5f496aef7..25859fd33e5c9 100644 --- a/projects/packages/forms/src/contact-form/class-contact-form-plugin.php +++ b/projects/packages/forms/src/contact-form/class-contact-form-plugin.php @@ -2201,13 +2201,13 @@ public function download_feedback_as_csv() { if ( ! empty( $post_data['post'] ) && $post_data['post'] !== 'all' ) { $filename = sprintf( '%s - %s.csv', - Admin::init()->get_export_filename( get_the_title( (int) $post_data['post'] ) ), + Util::get_export_filename( get_the_title( (int) $post_data['post'] ) ), gmdate( 'Y-m-d H:i' ) ); } else { $filename = sprintf( '%s - %s.csv', - Admin::init()->get_export_filename(), + Util::get_export_filename(), gmdate( 'Y-m-d H:i' ) ); } diff --git a/projects/packages/forms/src/contact-form/class-util.php b/projects/packages/forms/src/contact-form/class-util.php index 2bde19ae84d62..862030501214e 100644 --- a/projects/packages/forms/src/contact-form/class-util.php +++ b/projects/packages/forms/src/contact-form/class-util.php @@ -339,4 +339,25 @@ function ( $match ) use ( $new_attr ) { $content ); } + + /** + * Get a filename for export tasks + * + * @param string $source The filtered source for exported data. + * @return string The filename without source nor date suffix. + */ + public static function get_export_filename( $source = '' ) { + return $source === '' + ? sprintf( + /* translators: Site title, used to craft the export filename, eg "MySite - Jetpack Form Responses" */ + __( '%s - Jetpack Form Responses', 'jetpack-forms' ), + sanitize_file_name( get_bloginfo( 'name' ) ) + ) + : sprintf( + /* translators: 1: Site title; 2: post title. Used to craft the export filename, eg "MySite - Jetpack Form Responses - Contact" */ + __( '%1$s - Jetpack Form Responses - %2$s', 'jetpack-forms' ), + sanitize_file_name( get_bloginfo( 'name' ) ), + sanitize_file_name( $source ) + ); + } }