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

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