diff --git a/admin/settings/users.php b/admin/settings/users.php index 0b7c4a4aa47..c54a169ce34 100644 --- a/admin/settings/users.php +++ b/admin/settings/users.php @@ -261,10 +261,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 53fa76a7536..dcc2f48034a 100644 --- a/lib/db/upgrade.php +++ b/lib/db/upgrade.php @@ -2443,6 +2443,48 @@ function xmldb_main_upgrade($oldversion) { // Automatically generated Moodle v3.9.0 release upgrade line. // Put any upgrade step following this. + if ($oldversion < 2020061500.02) { + // 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, 2020061500.02); + } return true; } diff --git a/version.php b/version.php index 54a463ea483..d0e76042d49 100644 --- a/version.php +++ b/version.php @@ -29,7 +29,7 @@ defined('MOODLE_INTERNAL') || die(); -$version = 2020061500.01; // YYYYMMDD = weekly release date of this DEV branch. +$version = 2020061500.02; // YYYYMMDD = weekly release date of this DEV branch. // RR = release increments - 00 in DEV branches. // .XX = incremental changes. $release = '4.0dev (Build: 20200618)'; // Human-friendly version name