diff --git a/admin/settings/users.php b/admin/settings/users.php index b9612cbe76a..5b49bcae0c6 100644 --- a/admin/settings/users.php +++ b/admin/settings/users.php @@ -260,10 +260,28 @@ if ($hassiteconfig) { $temp->add($setting); // See {@link https://gdpr-info.eu/art-8-gdpr/}. + // See {@link https://www.betterinternetforkids.eu/web/portal/practice/awareness/detail?articleId=3017751}. $ageofdigitalconsentmap = implode(PHP_EOL, [ '*, 16', 'AT, 14', + 'BE, 13', + 'BG, 14', + 'CY, 14', + 'CZ, 15', + 'DK, 13', + 'EE, 13', 'ES, 14', + 'FI, 13', + 'FR, 15', + 'GB, 13', + 'GR, 15', + 'IT, 14', + 'LT, 14', + 'LV, 13', + 'MT, 13', + 'NO, 13', + 'PT, 13', + 'SE, 13', 'US, 13' ]); $setting = new admin_setting_agedigitalconsentmap('agedigitalconsentmap', diff --git a/lib/db/upgrade.php b/lib/db/upgrade.php index a1df4d33623..77a94383ade 100644 --- a/lib/db/upgrade.php +++ b/lib/db/upgrade.php @@ -3873,5 +3873,48 @@ function xmldb_main_upgrade($oldversion) { upgrade_main_savepoint(true, 2019111802.08); } + if ($oldversion < 2019111803.14) { + // Update default digital age consent map according to the current legislation on each country. + + // The default age of digital consent map for 38 and below. + $oldageofdigitalconsentmap = implode(PHP_EOL, [ + '*, 16', + 'AT, 14', + 'ES, 14', + 'US, 13' + ]); + + // Check if the current age of digital consent map matches the old one. + if (get_config('moodle', 'agedigitalconsentmap') === $oldageofdigitalconsentmap) { + // If the site is still using the old defaults, upgrade to the new default. + $ageofdigitalconsentmap = implode(PHP_EOL, [ + '*, 16', + 'AT, 14', + 'BE, 13', + 'BG, 14', + 'CY, 14', + 'CZ, 15', + 'DK, 13', + 'EE, 13', + 'ES, 14', + 'FI, 13', + 'FR, 15', + 'GB, 13', + 'GR, 15', + 'IT, 14', + 'LT, 14', + 'LV, 13', + 'MT, 13', + 'NO, 13', + 'PT, 13', + 'SE, 13', + 'US, 13' + ]); + set_config('agedigitalconsentmap', $ageofdigitalconsentmap); + } + + upgrade_main_savepoint(true, 2019111803.14); + } + return true; } diff --git a/version.php b/version.php index b0644476f0d..1eaf479c20a 100644 --- a/version.php +++ b/version.php @@ -29,7 +29,7 @@ defined('MOODLE_INTERNAL') || die(); -$version = 2019111803.13; // 20191118 = branching date YYYYMMDD - do not modify! +$version = 2019111803.14; // 20191118 = branching date YYYYMMDD - do not modify! // RR = release increments - 00 in DEV branches. // .XX = incremental changes. $release = '3.8.3+ (Build: 20200618)'; // Human-friendly version name