From 41dca3c4e0ec3d355977735f74af2e49ea0eedd7 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Mon, 31 Aug 2009 05:47:34 +0000 Subject: - Patch #331171 by pwolanin, mfb, drewish: allow modules to alter the MIME extension mapping rather than setting a huge variable. --- modules/system/system.api.php | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'modules/system/system.api.php') diff --git a/modules/system/system.api.php b/modules/system/system.api.php index 5f50c30d2..6ec40db01 100644 --- a/modules/system/system.api.php +++ b/modules/system/system.api.php @@ -2159,6 +2159,28 @@ function hook_profile_tasks() { return $tasks; } +/** + * Alter MIME type mappings used to determine MIME type from a file extension. + * + * This hook is run when file_mimetype_mapping() is called. It is used to + * allow modules to add to or modify the default mapping from + * file_default_mimetype_mapping(). + * + * @param $mapping + * An array of mimetypes correlated to the extensions that relate to them. + * The array has 'mimetypes' and 'extensions' elements, each of which is an + * array. + * @see file_default_mimetype_mapping() + */ +function hook_file_mimetype_mapping_alter(&$mapping) { + // Add new MIME type 'drupal/info'. + $mapping['mimetypes']['example_info'] = 'drupal/info'; + // Add new extension '.info' and map it to the 'drupal/info' MIME type. + $mapping['extensions']['info'] = 'example_info'; + // Override existing extension mapping for '.ogg' files. + $mapping['extensions']['ogg'] = 189; +} + /** * @} End of "addtogroup hooks". */ -- cgit v1.2.3