Code Duplication    Length = 48-48 lines in 2 locations

_inc/lib/class.media.php 1 location

@@ 112-159 (lines=48) @@
109
	 * @param  string $file Path to file to get its mime type.
110
	 * @return bool
111
	 */
112
	protected static function is_file_supported_for_sideloading( $file ) {
113
		if ( class_exists( 'finfo' ) ) { // php 5.3+
114
			$finfo = new finfo( FILEINFO_MIME );
115
			$mime = explode( '; ', $finfo->file( $file ) );
116
			$type = $mime[0];
117
118
		} elseif ( function_exists( 'mime_content_type' ) ) { // PHP 5.2
119
			$type = mime_content_type( $file );
120
121
		} else {
122
			return false;
123
		}
124
125
		/**
126
		 * Filter the list of supported mime types for media sideloading.
127
		 *
128
		 * @since 4.0
129
		 *
130
		 * @module json-api
131
		 *
132
		 * @param array $supported_mime_types Array of the supported mime types for media sideloading.
133
		 */
134
		$supported_mime_types = apply_filters( 'jetpack_supported_media_sideload_types', array(
135
			'image/png',
136
			'image/jpeg',
137
			'image/gif',
138
			'image/bmp',
139
			'video/quicktime',
140
			'video/mp4',
141
			'video/mpeg',
142
			'video/ogg',
143
			'video/3gpp',
144
			'video/3gpp2',
145
			'video/h261',
146
			'video/h262',
147
			'video/h264',
148
			'video/x-msvideo',
149
			'video/x-ms-wmv',
150
			'video/x-ms-asf',
151
		) );
152
153
		// If the type returned was not an array as expected, then we know we don't have a match.
154
		if ( ! is_array( $supported_mime_types ) ) {
155
			return false;
156
		}
157
158
		return in_array( $type, $supported_mime_types );
159
	}
160
161
	/**
162
	 * Try to remove the temporal file from the given file array.

class.json-api-endpoints.php 1 location

@@ 1798-1845 (lines=48) @@
1795
	 *
1796
	 * @return bool
1797
	 */
1798
	protected function is_file_supported_for_sideloading( $file ) {
1799
		if ( class_exists( 'finfo' ) ) { // php 5.3+
1800
			$finfo = new finfo( FILEINFO_MIME );
1801
			$mime = explode( '; ', $finfo->file( $file ) );
1802
			$type = $mime[0];
1803
1804
		} elseif ( function_exists( 'mime_content_type' ) ) { // PHP 5.2
1805
			$type = mime_content_type( $file );
1806
1807
		} else {
1808
			return false;
1809
		}
1810
1811
		/**
1812
		 * Filter the list of supported mime types for media sideloading.
1813
		 *
1814
		 * @since 4.0.0
1815
		 *
1816
		 * @module json-api
1817
		 *
1818
		 * @param array $supported_mime_types Array of the supported mime types for media sideloading.
1819
		 */
1820
		$supported_mime_types = apply_filters( 'jetpack_supported_media_sideload_types', array(
1821
			'image/png',
1822
			'image/jpeg',
1823
			'image/gif',
1824
			'image/bmp',
1825
			'video/quicktime',
1826
			'video/mp4',
1827
			'video/mpeg',
1828
			'video/ogg',
1829
			'video/3gpp',
1830
			'video/3gpp2',
1831
			'video/h261',
1832
			'video/h262',
1833
			'video/h264',
1834
			'video/x-msvideo',
1835
			'video/x-ms-wmv',
1836
			'video/x-ms-asf',
1837
		) );
1838
1839
		// If the type returned was not an array as expected, then we know we don't have a match.
1840
		if ( ! is_array( $supported_mime_types ) ) {
1841
			return false;
1842
		}
1843
1844
		return in_array( $type, $supported_mime_types );
1845
	}
1846
1847
	function allow_video_uploads( $mimes ) {
1848
		// if we are on Jetpack, bail - Videos are already allowed