# depicter/1.3.3/app/src/WordPress/SVGServiceProvider.php

Depicter — Popup &amp; Slider Builder, version 1.3.3. 58 lines.

- Page: https://pluginprobe.com/plugins/depicter/1.3.3/code/app/src/WordPress/SVGServiceProvider.php
- Raw: https://pluginprobe.com/plugins/depicter/1.3.3/raw/app/src/WordPress/SVGServiceProvider.php
- Modified: 2022-06-01T06:26:20+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/depicter/1.3.3/code/app/src/WordPress/SVGServiceProvider.php#L10-L20`.

```php
<?php
namespace Depicter\WordPress;

use WPEmerge\ServiceProviders\ServiceProviderInterface;

class SVGServiceProvider implements ServiceProviderInterface
{

	/**
	 * {@inheritDoc}
	 */
	public function register( $container ) {
		// Nothing to register.
	}

	/**
	 * {@inheritDoc}
	 */
	public function bootstrap( $container ) {
		// Enable SVG support 
		add_filter( 'wp_check_filetype_and_ext', [ $this, 'checkFileType' ], 10, 4 );
		add_filter( 'upload_mimes', [ $this, 'addSvgMimeType' ] );
	}

	/**
	 * Allow SVG
	 *
	 * @param $data
	 * @param $file
	 * @param $filename
	 * @param $mimes
	 *
	 * @return array
	 */
	public function checkFileType( $data, $file, $filename, $mimes ) {
		$fileType = wp_check_filetype( $filename, $mimes );

	  	return [
	  		'ext'             => $fileType['ext'],
			'type'            => $fileType['type'],
			'proper_filename' => $data['proper_filename']
		];
	}

	/**
	 * Add SVG mime type
	 *
	 * @param $mimes
	 *
	 * @return mixed
	 */
	public function addSvgMimeType( $mimes ){
		$mimes['svg'] = 'image/svg+xml';
		return $mimes;
	}

}

```
