1
0
mirror of https://github.com/moodle/moodle.git synced 2025-04-25 10:26:17 +02:00

MDL-58746 core: Add environment check for finfo

This commit is contained in:
Andrew Nicols 2017-05-01 08:51:37 +08:00
parent 06e3b6d8ba
commit 9a2854cc65
3 changed files with 23 additions and 0 deletions

@ -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>

@ -623,6 +623,7 @@ It is recommended to install local copy of free GeoLite2 City database from MaxM
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';

@ -2516,3 +2516,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;
}