From 8d00dfe806b3ae40227a7c10c91031090a33704f Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Wed, 10 Sep 2025 18:03:44 -0700 Subject: [PATCH 1/7] Add google analytics privacy information --- event/listener.php | 24 ++++++- language/en/googleanalytics_ucp.php | 52 +++++++++++++++ tests/event/listener_test.php | 74 +++++++++++++++++++--- tests/functional/google_analytics_test.php | 11 ++++ 4 files changed, 150 insertions(+), 11 deletions(-) create mode 100644 language/en/googleanalytics_ucp.php diff --git a/event/listener.php b/event/listener.php index f0329f9..b3f7d79 100644 --- a/event/listener.php +++ b/event/listener.php @@ -60,9 +60,10 @@ public function __construct(config $config, language $language, template $templa public static function getSubscribedEvents() { return [ + 'core.page_header' => 'load_google_analytics', 'core.acp_board_config_edit_add' => 'add_googleanalytics_configs', - 'core.page_header' => 'load_google_analytics', - 'core.validate_config_variable' => 'validate_googleanalytics_id', + 'core.validate_config_variable' => 'validate_googleanalytics_id', + 'core.page_footer_after' => 'append_agreement', ]; } @@ -171,4 +172,23 @@ public function validate_googleanalytics_id($event) // Update error event data $event['error'] = $error; } + + /** + * Append additional agreement details to the privacy agreement. + * + * @return void + */ + public function append_agreement() + { + if ((strpos($this->user->page['page_name'], 'ucp') !== 0) + || !$this->template->retrieve_var('S_AGREEMENT') + || ($this->template->retrieve_var('AGREEMENT_TITLE') !== $this->language->lang('PRIVACY'))) + { + return; + } + + $this->language->add_lang('googleanalytics_ucp', 'phpbb/googleanalytics'); + + $this->template->append_var('AGREEMENT_TEXT', $this->language->lang('PHPBB_ANALYTICS_PRIVACY_POLICY', $this->config['sitename'])); + } } diff --git a/language/en/googleanalytics_ucp.php b/language/en/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/en/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/tests/event/listener_test.php b/tests/event/listener_test.php index 6400d83..a8b300d 100644 --- a/tests/event/listener_test.php +++ b/tests/event/listener_test.php @@ -10,8 +10,6 @@ namespace phpbb\googleanalytics\tests\event; -require_once __DIR__ . '/../../../../../includes/functions_acp.php'; - class listener_test extends \phpbb_test_case { /** @var \phpbb\googleanalytics\event\listener */ @@ -21,7 +19,7 @@ class listener_test extends \phpbb_test_case protected $config; /** @var \phpbb\language\language */ - protected $lang; + protected $language; /** @var \PHPUnit\Framework\MockObject\MockObject|\phpbb\template\template */ protected $template; @@ -29,6 +27,15 @@ class listener_test extends \phpbb_test_case /** @var \phpbb\user */ protected $user; + public static function setUpBeforeClass(): void + { + $acp_functions = __DIR__ . '/../../../../../includes/functions_acp.php'; + if (is_file($acp_functions)) + { + require_once $acp_functions; + } + } + /** * Setup test environment */ @@ -46,8 +53,8 @@ protected function setUp(): void $this->template = $this->getMockBuilder('\phpbb\template\template') ->getMock(); $lang_loader = new \phpbb\language\language_file_loader($phpbb_root_path, $phpEx); - $this->lang = new \phpbb\language\language($lang_loader); - $this->user = new \phpbb\user($this->lang, '\phpbb\datetime'); + $this->language = new \phpbb\language\language($lang_loader); + $this->user = new \phpbb\user($this->language, '\phpbb\datetime'); $this->user->data['user_id'] = 2; $this->user->data['is_registered'] = true; } @@ -59,7 +66,7 @@ protected function set_listener() { $this->listener = new \phpbb\googleanalytics\event\listener( $this->config, - $this->lang, + $this->language, $this->template, $this->user ); @@ -80,9 +87,10 @@ public function test_construct() public function test_getSubscribedEvents() { self::assertEquals([ - 'core.acp_board_config_edit_add', 'core.page_header', + 'core.acp_board_config_edit_add', 'core.validate_config_variable', + 'core.page_footer_after', ], array_keys(\phpbb\googleanalytics\event\listener::getSubscribedEvents())); } @@ -152,7 +160,7 @@ public function test_add_googleanalytics_configs($mode, $display_vars, $expected $event_data = ['display_vars', 'mode']; $event_data_after = $dispatcher->trigger_event('core.acp_board_config_edit_add', compact($event_data)); - extract($event_data_after, EXTR_OVERWRITE); + extract($event_data_after); $keys = array_keys($display_vars['vars']); @@ -243,8 +251,56 @@ public function test_validate_googleanalytics_id($cfg_array, $expected_error) { self::assertArrayHasKey($expected, $event_data_after); } - extract($event_data_after, EXTR_OVERWRITE); + extract($event_data_after); self::assertEquals($expected_error, $error); } + + /** + * Data for test_append_agreement + * + * @return array + */ + public function append_agreement_data() + { + return [ + [false, 'PRIVACY', 0], // No agreement + [true, 'TERMS', 0], // Wrong title + [true, 'PRIVACY', 1], // Correct conditions + ]; + } + + /** + * Test the append_agreement method + * + * @dataProvider append_agreement_data + * @param mixed $s_agreement S_AGREEMENT template variable value + * @param mixed $agreement_title AGREEMENT_TITLE template variable value + * @param int $expected_append_calls Expected append_var calls + */ + public function test_append_agreement($s_agreement, $agreement_title, $expected_append_calls) + { + $this->config['sitename'] = 'Test Forum'; + $this->user->page['page_name'] = 'ucp.php'; + + $this->template->expects(self::atMost(2)) + ->method('retrieve_var') + ->withConsecutive(['S_AGREEMENT'], ['AGREEMENT_TITLE']) + ->willReturnOnConsecutiveCalls($s_agreement, $this->language->lang($agreement_title)); + + if ($expected_append_calls > 0) + { + $this->template->expects(self::once()) + ->method('append_var') + ->with('AGREEMENT_TEXT', $this->language->lang('PHPBB_ANALYTICS_PRIVACY_POLICY', 'Test Forum')); + } + else + { + $this->template->expects(self::never()) + ->method('append_var'); + } + + $this->set_listener(); + $this->listener->append_agreement(); + } } diff --git a/tests/functional/google_analytics_test.php b/tests/functional/google_analytics_test.php index 27bcfb4..584a5b3 100644 --- a/tests/functional/google_analytics_test.php +++ b/tests/functional/google_analytics_test.php @@ -84,4 +84,15 @@ public function test_google_analytics_code() $crawler = self::request('GET', 'index.php'); self::assertStringContainsString($this->sample_ga_code, $crawler->filter('head > script')->eq(1)->text()); } + + /** + * Test Analytics agreement appears as expected + */ + public function test_ucp_agreement() + { + $this->add_lang_ext('phpbb/googleanalytics', 'googleanalytics_ucp'); + + $crawler = self::request('GET', 'ucp.php?mode=privacy'); + $this->assertStringContainsString($this->lang('PHPBB_ANALYTICS_PRIVACY_POLICY', 'yourdomain.com'), $crawler->filter('.agreement')->html()); + } } From f9dd24575206ad53f5d92cde91c990610ac27ccd Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Sat, 20 Sep 2025 07:23:11 -0700 Subject: [PATCH 2/7] Add all translations --- language/ar/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/cs/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/da/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/de/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/de_x_sie/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/el/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/es/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/es_x_tu/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/fr/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/hr/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/hr_x_vi/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/it/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/nl/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/pl/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/pt/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/pt_br/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/ro/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/ru/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/sk/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/sv/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/tr/googleanalytics_ucp.php | 52 ++++++++++++++++++++ language/zh_cmn_hant/googleanalytics_ucp.php | 52 ++++++++++++++++++++ 22 files changed, 1144 insertions(+) create mode 100644 language/ar/googleanalytics_ucp.php create mode 100644 language/cs/googleanalytics_ucp.php create mode 100644 language/da/googleanalytics_ucp.php create mode 100644 language/de/googleanalytics_ucp.php create mode 100644 language/de_x_sie/googleanalytics_ucp.php create mode 100644 language/el/googleanalytics_ucp.php create mode 100644 language/es/googleanalytics_ucp.php create mode 100644 language/es_x_tu/googleanalytics_ucp.php create mode 100644 language/fr/googleanalytics_ucp.php create mode 100644 language/hr/googleanalytics_ucp.php create mode 100644 language/hr_x_vi/googleanalytics_ucp.php create mode 100644 language/it/googleanalytics_ucp.php create mode 100644 language/nl/googleanalytics_ucp.php create mode 100644 language/pl/googleanalytics_ucp.php create mode 100644 language/pt/googleanalytics_ucp.php create mode 100644 language/pt_br/googleanalytics_ucp.php create mode 100644 language/ro/googleanalytics_ucp.php create mode 100644 language/ru/googleanalytics_ucp.php create mode 100644 language/sk/googleanalytics_ucp.php create mode 100644 language/sv/googleanalytics_ucp.php create mode 100644 language/tr/googleanalytics_ucp.php create mode 100644 language/zh_cmn_hant/googleanalytics_ucp.php diff --git a/language/ar/googleanalytics_ucp.php b/language/ar/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/ar/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/cs/googleanalytics_ucp.php b/language/cs/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/cs/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/da/googleanalytics_ucp.php b/language/da/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/da/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/de/googleanalytics_ucp.php b/language/de/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/de/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/de_x_sie/googleanalytics_ucp.php b/language/de_x_sie/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/de_x_sie/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/el/googleanalytics_ucp.php b/language/el/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/el/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/es/googleanalytics_ucp.php b/language/es/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/es/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/es_x_tu/googleanalytics_ucp.php b/language/es_x_tu/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/es_x_tu/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/fr/googleanalytics_ucp.php b/language/fr/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/fr/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/hr/googleanalytics_ucp.php b/language/hr/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/hr/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/hr_x_vi/googleanalytics_ucp.php b/language/hr_x_vi/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/hr_x_vi/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/it/googleanalytics_ucp.php b/language/it/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/it/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/nl/googleanalytics_ucp.php b/language/nl/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/nl/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/pl/googleanalytics_ucp.php b/language/pl/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/pl/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/pt/googleanalytics_ucp.php b/language/pt/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/pt/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/pt_br/googleanalytics_ucp.php b/language/pt_br/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/pt_br/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/ro/googleanalytics_ucp.php b/language/ro/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/ro/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/ru/googleanalytics_ucp.php b/language/ru/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/ru/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/sk/googleanalytics_ucp.php b/language/sk/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/sk/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/sv/googleanalytics_ucp.php b/language/sv/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/sv/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/tr/googleanalytics_ucp.php b/language/tr/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/tr/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); diff --git a/language/zh_cmn_hant/googleanalytics_ucp.php b/language/zh_cmn_hant/googleanalytics_ucp.php new file mode 100644 index 0000000..e93b046 --- /dev/null +++ b/language/zh_cmn_hant/googleanalytics_ucp.php @@ -0,0 +1,52 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+

Analytics

+ “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. +

+ The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. +

+ Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. +

+ You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. + ', +]); From c731359736eb40189bd093545b3a00ab60fff2d2 Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Sat, 20 Sep 2025 07:23:57 -0700 Subject: [PATCH 3/7] Only show privacy info if analytics enabled --- event/listener.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/event/listener.php b/event/listener.php index b3f7d79..da0259b 100644 --- a/event/listener.php +++ b/event/listener.php @@ -180,7 +180,8 @@ public function validate_googleanalytics_id($event) */ public function append_agreement() { - if ((strpos($this->user->page['page_name'], 'ucp') !== 0) + if (!$this->config['googleanalytics_id'] + || (strpos($this->user->page['page_name'], 'ucp') !== 0) || !$this->template->retrieve_var('S_AGREEMENT') || ($this->template->retrieve_var('AGREEMENT_TITLE') !== $this->language->lang('PRIVACY'))) { From f71af5ffef8d2d58a5c21efa58b30801632fdff5 Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Sat, 20 Sep 2025 17:14:20 -0700 Subject: [PATCH 4/7] Bump to 1.1.0 --- CHANGELOG.md | 11 ++++++++--- composer.json | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b96133..dafaf8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,18 +1,23 @@ # Changelog +## 1.1.0 - 2025-09-20 + +- Added an amendment to the forum privacy policy regarding how Google may collect and/or use user's data. +- Dropped support for phpBB 3.1 + ## 1.0.6 - 2020-11-15 - Added support for Google Analytics Measurement ID. This is for users who have set up a Google Analytics 4 property with a Web data stream (which begins with "G-") instead of Universal Analytics (which begins with "UA-"). ## 1.0.5 - 2019-11-15 -- Support added for Google Analytics new Global Site tag. Now there is an option to select whether you want to use the new Global Site tag (gtag.js), or the older Analytics tag (analytics.js). Existing installations will not be automatically switched over to the newer Global Site tag, however, fresh installs will default to the newer Global Site tag. Details about the new Global Site tag can be found in your Google Analytics Account Admin. +- Support added for Google Analytics new Global Site tag. Now there is an option to select whether you want to use the new Global Site tag (gtag.js) or the older Analytics tag (analytics.js). Existing installations will not be automatically switched over to the newer Global Site tag, however, fresh installs will default to the newer Global Site tag. Details about the new Global Site tag can be found in your Google Analytics Account Admin. - Fixed a bug where Google Analytics ACP Board settings could conflict with other extensions ACP Board settings that resulted in a PHP error. - Added Spanish casual honorifics translation. ## 1.0.4 - 2018-05-17 -- Added an option to enable visitor IP anonymization. This is recommended by Google to make the data collected for Analytics compliant with the EU‘s GDPR laws which go into effect May 25, 2018. +- Added an option to enable visitor IP anonymisation. Google recommends this to make the data collected for Analytics compliant with the EU‘s GDPR's laws, which go into effect May 25, 2018. - Added German translation (formal and casual) ## 1.0.3 - 2017-08-04 @@ -37,7 +42,7 @@ ## 1.0.1 - 2014-11-28 - Fixed issues in the README.md -- Added a new template event `phpbb_googleanalytics_alter_ga_requirements` which may be used by other extensions to add more tracking options (like the ability to track advertisements). See here for a example: https://support.google.com/analytics/answer/2444872?hl=en&utm_id=ad +- Added a new template event `phpbb_googleanalytics_alter_ga_requirements` which may be used by other extensions to add more tracking options (like the ability to track advertisements). See here for an example: https://support.google.com/analytics/answer/2444872?hl=en&utm_id=ad - Added Arabic language pack - Added Dutch language pack - Added French language pack diff --git a/composer.json b/composer.json index e8be075..70032f0 100644 --- a/composer.json +++ b/composer.json @@ -3,7 +3,7 @@ "type": "phpbb-extension", "description": "A phpBB official extension that allows administrators to easily add Google Analytics to their forums.", "homepage": "https://www.phpbb.com/customise/db/extension/googleanalytics/", - "version": "1.1.0-dev", + "version": "1.1.0", "keywords": ["phpbb", "extension", "google", "analytics"], "license": "GPL-2.0-only", "authors": [ From 4cfd71c2f0e55d8a2b28bbfb1b6a96fd99bdfa00 Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Sat, 7 Feb 2026 08:34:19 -0800 Subject: [PATCH 5/7] Support secure cookies over https --- event/listener.php | 1 + .../all/template/event/overall_header_stylesheets_after.html | 1 + tests/event/listener_test.php | 3 +++ 3 files changed, 5 insertions(+) diff --git a/event/listener.php b/event/listener.php index da0259b..c47718e 100644 --- a/event/listener.php +++ b/event/listener.php @@ -80,6 +80,7 @@ public function load_google_analytics() 'GOOGLEANALYTICS_TAG' => $this->config['googleanalytics_tag'], 'GOOGLEANALYTICS_USER_ID' => $this->user->data['user_id'], 'S_ANONYMIZE_IP' => $this->config['ga_anonymize_ip'], + 'S_COOKIE_SECURE' => $this->config['cookie_secure'], ]); } diff --git a/styles/all/template/event/overall_header_stylesheets_after.html b/styles/all/template/event/overall_header_stylesheets_after.html index 7895b2f..4ad533b 100644 --- a/styles/all/template/event/overall_header_stylesheets_after.html +++ b/styles/all/template/event/overall_header_stylesheets_after.html @@ -13,6 +13,7 @@ {%- EVENT phpbb_googleanalytics_gtag_options -%} {%- if S_REGISTERED_USER %}'user_id': '{{ GOOGLEANALYTICS_USER_ID }}',{% endif -%} {%- if S_ANONYMIZE_IP %}'anonymize_ip': true,{% endif -%} + {%- if S_COOKIE_SECURE -%}'cookie_flags': 'samesite=none;secure',{%- endif -%} }); {% else %} diff --git a/tests/event/listener_test.php b/tests/event/listener_test.php index a8b300d..ea42e30 100644 --- a/tests/event/listener_test.php +++ b/tests/event/listener_test.php @@ -48,7 +48,9 @@ protected function setUp(): void // Load/Mock classes required by the event listener class $this->config = new \phpbb\config\config([ 'googleanalytics_id' => 'UA-000000-01', + 'googleanalytics_tag' => 1, 'ga_anonymize_ip' => 0, + 'cookie_secure' => 0, ]); $this->template = $this->getMockBuilder('\phpbb\template\template') ->getMock(); @@ -108,6 +110,7 @@ public function test_load_google_analytics() 'GOOGLEANALYTICS_TAG' => $this->config['googleanalytics_tag'], 'GOOGLEANALYTICS_USER_ID' => $this->user->data['user_id'], 'S_ANONYMIZE_IP' => $this->config['ga_anonymize_ip'], + 'S_COOKIE_SECURE' => $this->config['cookie_secure'], ]); $dispatcher = new \phpbb\event\dispatcher(); From 3553e057248203fde3c0443e04862020d4d146ff Mon Sep 17 00:00:00 2001 From: Jan Wille Date: Tue, 17 Mar 2026 00:15:17 +0100 Subject: [PATCH 6/7] provided matomo specific privacy-notice extension --- language/de/googleanalytics_ucp.php | 52 ----------------------------- language/de/matomoanalytics_ucp.php | 47 ++++++++++++++++++++++++++ language/en/googleanalytics_ucp.php | 52 ----------------------------- language/en/matomoanalytics_ucp.php | 50 +++++++++++++++++++++++++++ 4 files changed, 97 insertions(+), 104 deletions(-) delete mode 100644 language/de/googleanalytics_ucp.php create mode 100644 language/de/matomoanalytics_ucp.php delete mode 100644 language/en/googleanalytics_ucp.php create mode 100644 language/en/matomoanalytics_ucp.php diff --git a/language/de/googleanalytics_ucp.php b/language/de/googleanalytics_ucp.php deleted file mode 100644 index e93b046..0000000 --- a/language/de/googleanalytics_ucp.php +++ /dev/null @@ -1,52 +0,0 @@ - -* @license GNU General Public License, version 2 (GPL-2.0) -* -*/ - -/** -* DO NOT CHANGE -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} - -if (empty($lang) || !is_array($lang)) -{ - $lang = []; -} - -// DEVELOPERS PLEASE NOTE -// -// All language files should use UTF-8 as their encoding and the files must not contain a BOM. -// -// Placeholders can now contain order information, e.g. instead of -// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows -// translators to re-order the output of data while ensuring it remains correct -// -// You do not need this where single placeholders are used, e.g. 'Message %d' is fine -// equally where a string contains only two placeholders which are used to wrap text -// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine -// -// Some characters you may want to copy&paste: -// ’ » “ ” … -// - -$lang = array_merge($lang, [ - 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' -

-

Analytics

- “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. -

- The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. -

- Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. -

- You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. - ', -]); diff --git a/language/de/matomoanalytics_ucp.php b/language/de/matomoanalytics_ucp.php new file mode 100644 index 0000000..d4ce77b --- /dev/null +++ b/language/de/matomoanalytics_ucp.php @@ -0,0 +1,47 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

Website Analytics (Matomo)

+

Der Betreiber benutzt den Open Source Webanalysedienst Matomo um Besucherdaten zu messen, zu sammeln, zu analysieren und auszuwerten, mit dem Ziel, unsere Website besser zu verstehen und zu optimieren.

+

Die durch Matomo erfassten Informationen über die Benutzung von „%1$s“ werden auf unserem Server gespeichert. Die IP-Adresse wird vor der Speicherung anonymisiert.

+

Du kannst dem sammelen von Nutzungsinformationen wiedersprechen, indem du im folgenden die checkbox entfernst:

+
', +]); diff --git a/language/en/googleanalytics_ucp.php b/language/en/googleanalytics_ucp.php deleted file mode 100644 index e93b046..0000000 --- a/language/en/googleanalytics_ucp.php +++ /dev/null @@ -1,52 +0,0 @@ - -* @license GNU General Public License, version 2 (GPL-2.0) -* -*/ - -/** -* DO NOT CHANGE -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} - -if (empty($lang) || !is_array($lang)) -{ - $lang = []; -} - -// DEVELOPERS PLEASE NOTE -// -// All language files should use UTF-8 as their encoding and the files must not contain a BOM. -// -// Placeholders can now contain order information, e.g. instead of -// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows -// translators to re-order the output of data while ensuring it remains correct -// -// You do not need this where single placeholders are used, e.g. 'Message %d' is fine -// equally where a string contains only two placeholders which are used to wrap text -// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine -// -// Some characters you may want to copy&paste: -// ’ » “ ” … -// - -$lang = array_merge($lang, [ - 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' -

-

Analytics

- “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. -

- The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. -

- Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. -

- You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. - ', -]); diff --git a/language/en/matomoanalytics_ucp.php b/language/en/matomoanalytics_ucp.php new file mode 100644 index 0000000..c8cceb0 --- /dev/null +++ b/language/en/matomoanalytics_ucp.php @@ -0,0 +1,50 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+ Website Analytics (Matomo)
+ We use Matomo Analytics to measure, collect, analyse and report visitors’ data for purposes of understanding and optimising our website. +
+ The Informationen the usage of “%1$s” collected by Matomo is stored on our servers. IP-adresses are anonymized before beeing stored. +
+ You can opt out of Matomo by unchecking the following checkbox: +
', +]); From 357c9462f634a8d0c2d3a2fd65e70fe3239e35fb Mon Sep 17 00:00:00 2001 From: Zorglube <630192+zorglube@users.noreply.github.com> Date: Tue, 17 Mar 2026 14:03:06 +0100 Subject: [PATCH 7/7] French translation of Analytics with Matomo Analytics --- language/fr/googleanalytics_ucp.php | 52 ----------------------------- language/fr/matomoanalytics_ucp.php | 49 +++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 52 deletions(-) delete mode 100644 language/fr/googleanalytics_ucp.php create mode 100644 language/fr/matomoanalytics_ucp.php diff --git a/language/fr/googleanalytics_ucp.php b/language/fr/googleanalytics_ucp.php deleted file mode 100644 index e93b046..0000000 --- a/language/fr/googleanalytics_ucp.php +++ /dev/null @@ -1,52 +0,0 @@ - -* @license GNU General Public License, version 2 (GPL-2.0) -* -*/ - -/** -* DO NOT CHANGE -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} - -if (empty($lang) || !is_array($lang)) -{ - $lang = []; -} - -// DEVELOPERS PLEASE NOTE -// -// All language files should use UTF-8 as their encoding and the files must not contain a BOM. -// -// Placeholders can now contain order information, e.g. instead of -// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows -// translators to re-order the output of data while ensuring it remains correct -// -// You do not need this where single placeholders are used, e.g. 'Message %d' is fine -// equally where a string contains only two placeholders which are used to wrap text -// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine -// -// Some characters you may want to copy&paste: -// ’ » “ ” … -// - -$lang = array_merge($lang, [ - 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' -

-

Analytics

- “%1$s” may use Google Analytics, a web analytics service provided by Google LLC (“Google”), to help us understand how visitors use the site. Google Analytics uses cookies and similar technologies to collect information about your interactions with the site, including the pages you visit, the time spent on each page, and general usage patterns. -

- The information generated by these cookies about your use of “%1$s” (including your IP address) is transmitted to and stored by Google on servers in the United States or other locations. Google uses this information to evaluate your use of the site, compile reports on website activity for us, and provide other services relating to website activity and internet usage. -

- Google may also transfer this information to third parties where required to do so by law, or where such third parties process the information on Google’s behalf. To learn more about how Google collects and processes data, please see Google’s Privacy Policy at: https://policies.google.com/privacy. -

- You can opt out of Google Analytics by installing the Google Analytics opt-out browser add-on, available at: https://tools.google.com/dlpage/gaoptout. - ', -]); diff --git a/language/fr/matomoanalytics_ucp.php b/language/fr/matomoanalytics_ucp.php new file mode 100644 index 0000000..0d80d7c --- /dev/null +++ b/language/fr/matomoanalytics_ucp.php @@ -0,0 +1,49 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +*/ + +/** +* DO NOT CHANGE +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +if (empty($lang) || !is_array($lang)) +{ + $lang = []; +} + +// DEVELOPERS PLEASE NOTE +// +// All language files should use UTF-8 as their encoding and the files must not contain a BOM. +// +// Placeholders can now contain order information, e.g. instead of +// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows +// translators to re-order the output of data while ensuring it remains correct +// +// You do not need this where single placeholders are used, e.g. 'Message %d' is fine +// equally where a string contains only two placeholders which are used to wrap text +// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine +// +// Some characters you may want to copy&paste: +// ’ » “ ” … +// + +$lang = array_merge($lang, [ + 'PHPBB_ANALYTICS_PRIVACY_POLICY' => ' +

+ Analyse du trafic sur le site (Matomo)
+ Nous utilisons Matomo Analytics comme silution pour mesurer, collecter, analyser et présenter les données des visiteurs afin de comprendre et d\'optimiser notre site web. +
+ Les informations relatives à l\'utilisation de "%1$s" collectées par Matomo sont stockées sur nos serveurs. Les adresses IP sont anonymisées avant d\'être stockées. +
+ Vous pouvez désactiver Matomo en décochant la case suivante:
', +]);