/** * Check if particular uploaded file has valid extension. * * @static * @access public * @param ModelCore\FileBroker $fileBroker $_FILE like array * @param array $exts Extensions list * @return boolean|string * @since 1.0.0-alpha * @version 1.0.0-alpha */ public static function allowedExt(ModelCore\FileBroker $fileBroker, array $exts) { if (is_null($fileBroker)) { return TRUE; } $value = $fileBroker->getTempData(); if (!isset($value['tmp_name'])) { return TRUE; } $mimeType = Helper\MimeTypes::getMimeType($value['tmp_name']); $extByMime = Helper\MimeTypes::getExtByType($mimeType); $value['type'] = $mimeType; if (!$extByMime || !Helper\Arrays::anyInArray($exts, $extByMime)) { return __('File with wrong format uploaded! Allowed types of files: :exts.', ['exts' => implode(', ', $exts)]); } return TRUE; }