Skip to content

Commit

Permalink
MDL-58746 core: Add environment check for finfo
Browse files Browse the repository at this point in the history
  • Loading branch information
andrewnicols committed May 1, 2017
1 parent 75528e9 commit b5cc09d
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 0 deletions.
5 changes: 5 additions & 0 deletions admin/environment.xml
Expand Up @@ -2078,6 +2078,11 @@
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_finfo" level="required">
<FEEDBACK>
<ON_ERROR message="finforequired" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
</COMPATIBILITY_MATRIX>
1 change: 1 addition & 0 deletions lang/en/admin.php
Expand Up @@ -622,6 +622,7 @@
IP address location is displayed on simple map or using Google Maps. Please note that you need to have a Google account and apply for free Google Maps API key to enable interactive maps.';
$string['iplookupmaxmindnote'] = 'This product includes GeoLite2 data created by MaxMind, available from <a href="http://www.maxmind.com">http://www.maxmind.com</a>.';
$string['ishttpswarning'] = 'It has been detected that your site is not secured using HTTPS. For increased security and improved integrations with other systems is highly recommended to migrate your site to HTTPS.';
$string['finforequired'] = 'The finfo PHP extension is now required by Moodle, in order to improve mimetype decoding.';
$string['keeptagnamecase'] = 'Keep tag name casing';
$string['lang'] = 'Default language';
$string['langcache'] = 'Cache language menu';
Expand Down
17 changes: 17 additions & 0 deletions lib/upgradelib.php
Expand Up @@ -2507,3 +2507,20 @@ function check_libcurl_version(environment_results $result) {

return null;
}

/**
* Check if the finfo class is present.
*
* @param environment_results $result object to update, if relevant.
* @return environment_results|null updated results or null.
*/
function check_finfo(environment_results $result) {
if (!class_exists('finfo')) {
$result->setInfo('finfo extension not enabled');
$result->setStatus(false);

return $result;
}

return null;
}

0 comments on commit b5cc09d

Please sign in to comment.