Browse Source

Move mimetypemapping.json to mimetypemapping.dist.json

This allows users to create their own mapping file to extend our current
mappings. This makes sure that custom mappings are not lost on OC
upgrades.
tags/v8.2beta1
Roeland Jago Douma 9 years ago
parent
commit
895d29adf1
2 changed files with 12 additions and 2 deletions
  1. 3
    0
      config/mimetypemapping.dist.json
  2. 9
    2
      lib/private/helper.php

config/mimetypemapping.json → config/mimetypemapping.dist.json View File

@@ -3,6 +3,9 @@
"_comment2": "The first index in the mime type array is the assumed correct mimetype",
"_comment3": "and the second (if present] is a secure alternative",

"_comment4": "Any changes you make here will be overwritten on an update of ownCloud",
"_comment5": "Put any custom mappings in a new file mimetypemapping.json in this directory",


"3gp": ["video/3gpp"],
"7z": ["application/x-7z-compressed"],

+ 9
- 2
lib/private/helper.php View File

@@ -424,8 +424,15 @@ class OC_Helper {
*/
static public function getMimetypeDetector() {
if (!self::$mimetypeDetector) {
$file = file_get_contents(OC::$SERVERROOT . '/config/mimetypemapping.json');
$mimetypemapping = get_object_vars(json_decode($file));
$dist = file_get_contents(OC::$SERVERROOT . '/config/mimetypemapping.dist.json');
$mimetypemapping = get_object_vars(json_decode($dist));

//Check if need to load custom mappings
if (file_exists(OC::$SERVERROOT . '/config/mimetypemapping.json')) {
$custom = file_get_contents(OC::$SERVERROOT . '/config/mimetypemapping.json');
$custom_mapping = get_object_vars(json_decode($custom));
$mimetypemapping = array_merge($mimetypemapping, $custom_mapping);
}

self::$mimetypeDetector = new \OC\Files\Type\Detection();
self::$mimetypeDetector->registerTypeArray($mimetypemapping);

Loading…
Cancel
Save