ExtensionMimeTypeGuesser.php in FileField Sources 8
File
src/File/MimeType/ExtensionMimeTypeGuesser.php
View source
<?php
namespace Drupal\filefield_sources\File\MimeType;
use Drupal\Core\File\MimeType\ExtensionMimeTypeGuesser as CoreExtensionMimeTypeGuesser;
class ExtensionMimeTypeGuesser extends CoreExtensionMimeTypeGuesser {
public function convertMimeTypeToExtension($mimetype) {
$this
->checkDefaultMapping();
$mime_key = array_search($mimetype, $this->mapping['mimetypes']);
$extension = array_search($mime_key, $this->mapping['extensions']);
return $extension;
}
public function convertMimeTypeToMostCommonExtension($mimetype) {
$this
->checkDefaultMapping();
$extension = FALSE;
if (isset($mimetype)) {
$mime_key = array_search($mimetype, $this->mapping['mimetypes']);
if ($mime_key !== FALSE) {
if ($extensions = array_keys($this->mapping['extensions'], $mime_key)) {
$extension = end($extensions);
}
}
}
return $extension;
}
private function checkDefaultMapping() {
if ($this->mapping === NULL) {
$mapping = $this->defaultMapping;
$this->moduleHandler
->alter('file_mimetype_mapping', $mapping);
$this->mapping = $mapping;
}
}
}