Passed
Push — master ( a82a12...289cbe )
by Anton
03:10
created

Mime::getFormat()   B

Complexity

Conditions 8
Paths 8

Size

Total Lines 20
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 8
eloc 9
nc 8
nop 1
dl 0
loc 20
rs 7.7777
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * @package Cadmium\System\Modules\Filemanager
5
 * @author Anton Romanov
6
 * @copyright Copyright (c) 2015-2017, Anton Romanov
7
 * @link http://cadmium-cms.com
8
 */
9
10
namespace Modules\Filemanager\Utils {
11
12
	abstract class Mime extends \Mime {
13
14
		/**
15
		 * Get an editor mode
16
		 *
17
		 * @return string|false : one of the following values: 'php', 'html', 'javascript', 'json', 'css',
18
		 *         or false if the extension is not supported by the editor
19
		 */
20
21
		public static function getMode(string $extension) {
22
23
			$modes = ['php' => 'php', 'html' => 'html', 'tpl' => 'html', 'js' => 'javascript', 'json' => 'json', 'css' => 'css'];
24
25
			return ($modes[$extension] ?? false);
26
		}
27
28
		/**
29
		 * Get a file format
30
		 *
31
		 * @return string|false : one of the following values: 'image', 'audio', 'video', 'word', 'excel', 'powerpoint', 'pdf',
32
		 *         or false if the extension does not exist in the MIME types list
33
		 */
34
35
		public static function getFormat(string $extension) {
36
37
			if (self::isImage($extension)) return 'image';
38
39
			if (self::isAudio($extension)) return 'audio';
40
41
			if (self::isVideo($extension)) return 'video';
42
43
			if (in_array($extension, ['doc', 'docx'], true)) return 'word';
44
45
			if (in_array($extension, ['xls', 'xlsx'], true)) return 'excel';
46
47
			if (in_array($extension, ['ppt', 'pptx'], true)) return 'powerpoint';
48
49
			if ($extension === 'pdf') return 'pdf';
50
51
			# ------------------------
52
53
			return false;
54
		}
55
	}
56
}
57