Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
e10e4ff
notice
Oct 9, 2023
63636e6
Change Namespace
Nov 19, 2023
2a1be84
Merge pull request #78 from Zeichen32/matomo_5x
Zeichen32 Nov 19, 2023
41e2e49
Change plugin name
Nov 19, 2023
88353f3
Rename the plugin to MatomoCustomOptOut
Nov 19, 2023
f53e5c6
Added translation using Weblate (Gujarati)
weblate Oct 14, 2025
b50a066
Translated using Weblate (Irish)
weblate Oct 14, 2025
50dedf1
Added translation using Weblate (Luxembourgish)
weblate Oct 14, 2025
27e32a0
Translated using Weblate (Tamil)
weblate Oct 14, 2025
e9b31a8
Added translation using Weblate (Esperanto)
weblate Oct 14, 2025
8b5fac8
Translated using Weblate (Russian)
weblate Oct 14, 2025
e637107
Added translation using Weblate (Bengali)
weblate Oct 14, 2025
e7c98e7
Translated using Weblate (Czech)
weblate Oct 14, 2025
51a497d
Added translation using Weblate (Armenian)
weblate Oct 14, 2025
8d186fe
Translated using Weblate (Croatian)
weblate Oct 14, 2025
02825cc
Added translation using Weblate (Malay)
weblate Oct 14, 2025
4d7b182
Added translation using Weblate (Azerbaijani)
weblate Oct 14, 2025
1fdf710
Added translation using Weblate (Sinhala)
weblate Oct 14, 2025
6da1d28
Added translation using Weblate (Kurdish)
weblate Oct 14, 2025
ea63952
Translated using Weblate (Chinese (Simplified Han script))
weblate Oct 14, 2025
7bdb9ae
Added translation using Weblate (Dhivehi)
weblate Oct 14, 2025
834b5ab
Added translation using Weblate (Tamazight (Central Atlas))
weblate Oct 14, 2025
4e7e656
Translated using Weblate (Gujarati)
Dec 9, 2025
c2fbefb
Translated using Weblate (Basque)
Dec 9, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions API.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
* @category Piwik_Plugins
* @package CustomOptOut
* @package MatomoCustomOptOut
*/

namespace Piwik\Plugins\CustomOptOut;
namespace Piwik\Plugins\MatomoCustomOptOut;

use Piwik\Common;
use Piwik\Db;
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
## Changelog

### CustomOptOut 3.0.0
* Matomo 5 compatibility
* Add deprecation notice

### CustomOptOut 2.0.4
* Update translation

Expand Down
8 changes: 4 additions & 4 deletions Controller.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
* @package CustomOptOut
*/

namespace Piwik\Plugins\CustomOptOut;
namespace Piwik\Plugins\MatomoCustomOptOut;

use Piwik\Common;
use Piwik\Piwik;
Expand All @@ -22,7 +22,7 @@

/**
*
* @package CustomOptOut
* @package MatomoCustomOptOut
*/
class Controller extends ControllerAdmin
{
Expand Down Expand Up @@ -73,14 +73,14 @@ public function index()
}

// Redirect to, clear POST vars
$this->redirectToIndex('CustomOptOut', 'index');
$this->redirectToIndex('MatomoCustomOptOut', 'index');

return;

}
}

$view = new View('@CustomOptOut/index.twig');
$view = new View('@MatomoCustomOptOut/index.twig');
Site::clearCache();

if (Piwik::hasUserSuperUserAccess()) {
Expand Down
4 changes: 3 additions & 1 deletion Menu.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\CustomOptOut;
namespace Piwik\Plugins\MatomoCustomOptOut;

use Piwik\Menu\MenuAdmin;
use Piwik\Piwik;
Expand All @@ -17,6 +17,7 @@
* To configure a menu (such as Admin Menu, Reporting Menu, User Menu...) simply call the corresponding methods as
* described in the API-Reference http://developer.piwik.org/api-reference/Piwik/Menu/MenuAbstract
*/

class Menu extends \Piwik\Plugin\Menu
{
public function configureAdminMenu(MenuAdmin $menu)
Expand All @@ -30,3 +31,4 @@ public function configureAdminMenu(MenuAdmin $menu)
}
}
}

52 changes: 30 additions & 22 deletions CustomOptOut.php → PiwikCustomOptOut.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,17 @@
* @package CustomOptOut
*/

namespace Piwik\Plugins\CustomOptOut;
namespace Piwik\Plugins\MatomoCustomOptOut;

use Piwik\Common;
use Piwik\Container\StaticContainer;
use Piwik\Db;
use Piwik\Plugins\CustomOptOut\SystemSettings as Settings;
use Piwik\Plugins\MatomoCustomOptOut\SystemSettings as Settings;

/**
* @package CustomOptOut
* @package MatomoCustomOptOut
*/
class CustomOptOut extends \Piwik\Plugin
class MatomoCustomOptOut extends \Piwik\Plugin
{

/**
Expand All @@ -31,7 +31,7 @@ public function getListHooksRegistered()
'AssetManager.getJavaScriptFiles' => 'getJsFiles',
'AssetManager.getStylesheetFiles' => 'getStylesheetFiles',
'Controller.CoreAdminHome.optOut' => 'addOptOutStyles',
'Settings.CustomOptOut.settingsUpdated' => 'onSettingsUpdate',
'Settings.MatomoCustomOptOut.settingsUpdated' => 'onSettingsUpdate',
'SystemSettings.updated' => 'onSystemSettingsUpdate',
);
}
Expand All @@ -51,24 +51,24 @@ public function getJsFiles(&$jsFiles)
{

// CodeMirror
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/codemirror.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/mode/css/css.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/mode/javascript/javascript.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/addon/hint/show-hint.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/addon/hint/css-hint.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/addon/hint/javascript-hint.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/addon/lint/lint.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/addon/lint/css-lint.js";
$jsFiles[] = "plugins/CustomOptOut/javascripts/codemirror/addon/lint/javascript-lint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/codemirror.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/mode/css/css.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/mode/javascript/javascript.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/addon/hint/show-hint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/addon/hint/css-hint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/addon/hint/javascript-hint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/addon/lint/lint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/addon/lint/css-lint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/codemirror/addon/lint/javascript-lint.js";

// CSS Lint for CodeMirror
$jsFiles[] = "plugins/CustomOptOut/javascripts/csslint/csslint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/csslint/csslint.js";

// CSS Lint for CodeMirror
$jsFiles[] = "plugins/CustomOptOut/javascripts/jshint/jshint.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/jshint/jshint.js";

// Plugin
$jsFiles[] = "plugins/CustomOptOut/javascripts/plugin.js";
$jsFiles[] = "plugins/MatomoCustomOptOut/javascripts/plugin.js";

}

Expand All @@ -79,10 +79,10 @@ public function getStylesheetFiles(&$stylesheets)
{

// CodeMirror CSS
$stylesheets[] = "plugins/CustomOptOut/stylesheets/codemirror/codemirror.css";
$stylesheets[] = "plugins/CustomOptOut/stylesheets/codemirror/theme/blackboard.css";
$stylesheets[] = "plugins/CustomOptOut/stylesheets/codemirror/lint.css";
$stylesheets[] = "plugins/CustomOptOut/stylesheets/codemirror/show-hint.css";
$stylesheets[] = "plugins/MatomoCustomOptOut/stylesheets/codemirror/codemirror.css";
$stylesheets[] = "plugins/MatomoCustomOptOut/stylesheets/codemirror/theme/blackboard.css";
$stylesheets[] = "plugins/MatomoCustomOptOut/stylesheets/codemirror/lint.css";
$stylesheets[] = "plugins/MatomoCustomOptOut/stylesheets/codemirror/show-hint.css";

}

Expand All @@ -93,7 +93,7 @@ public function onSettingsUpdate(Settings $settings)
}

public function onSystemSettingsUpdate(\Piwik\Settings\Plugin\SystemSettings $settings) {
if ($settings->getPluginName() == 'CustomOptOut') {
if ($settings->getPluginName() == 'MatomoCustomOptOut') {
$this->install();
}
}
Expand Down Expand Up @@ -167,6 +167,14 @@ public function addOptOutStyles()
}
}

public function activate() {
$this->install();
}

public function deactivate() {
$this->uninstall();
}

/**
* Plugin install hook
*
Expand Down
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
# Custom Opt-Out Styles Piwik Plugin
# Custom Opt-Out Styles Piwik / Matomo Plugin

## Deprecation
You no longer need this plugin to change the CSS Styles in your opt-out. All features this plugin provides can
be found in the Matomo core features. This plugin will be keep available to not break any websites using this plugin.

## Description

Expand Down Expand Up @@ -31,7 +35,7 @@ or insert a URL to the file containing your custom CSS into the input field call

## Requirements

+ Matomo >=4.0.0-b1
+ Matomo >=5.0.0-b1

## Authors

Expand Down
2 changes: 1 addition & 1 deletion SystemSettings.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*
*/
namespace Piwik\Plugins\CustomOptOut;
namespace Piwik\Plugins\MatomoCustomOptOut;

use Piwik\Piwik;
use Piwik\Settings\FieldConfig;
Expand Down
1 change: 1 addition & 0 deletions lang/az.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions lang/bn.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
16 changes: 8 additions & 8 deletions lang/cs.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"CustomOptOut": {
"DefaultCssFile": "Výchozí soubor šablony",
"DefaultCssFileDescription": "Tento css soubor bude použit, pokud nebude vybrána žádná stránka.",
"DefaultCssStyles": "Výchozí šablona",
"DefaultCssStylesDescription": "Tento css styl bude použit, pokud nebude vybrána žádná stránka.",
"DefaultCssFile": "Výchozí soubor stylesheet",
"DefaultCssFileDescription": "Tento soubor CSS se použije, pokud není vybrána žádná stránka.",
"DefaultCssStyles": "Výchozí soubory stylů",
"DefaultCssStylesDescription": "Tyto styly CSS se použijí, pokud není vybrána žádná stránka.",
"EditorThemeDescription": "Vyberte motiv editoru.",
"EditorThemeOptionName": "Motiv editoru",
"EnableJavascriptInjection": "Povolit javascriptová pole",
"EnableJavascriptInjectionDescription": "Povolte tuto možnost pro zobrazení polí k zadání javascriptu.",
"ShowEditorDescription": "Povolte tuto možnost pro zobrazení vlastního css kódu v jednoduchém css editoru.",
"ShowEditorOptionName": "Povolit editor css"
"EnableJavascriptInjection": "Povolit pole JavaScript",
"EnableJavascriptInjectionDescription": "Zapnutím této možnosti zobrazíte pole pro zadání JavaScriptu.",
"ShowEditorDescription": "Zapnutím této možnosti zobrazíte \"vlastní kód CSS\" v jednoduchém editoru CSS.",
"ShowEditorOptionName": "Povolit editor CSS"
}
}
1 change: 1 addition & 0 deletions lang/dv.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions lang/eo.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
8 changes: 8 additions & 0 deletions lang/eu.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
{
"CustomOptOut": {
"DefaultCssFile": "Estilo-orrien fitxategi lehenetsia",
"DefaultCssFileDescription": "CSS fitxategi hau erabiliko da orririk ez bada hautatu.",
"DefaultCssStyles": "Estilo-orri lehenetsiak",
"DefaultCssStylesDescription": "CSS estilo hauek erabiliko dira orririk ez bada hautatu.",
"EditorThemeDescription": "Aukeratu editorearen gaia.",
"EditorThemeOptionName": "Editore itxura",
"EnableJavascriptInjection": "Gaitu JavaScript eremuak",
"EnableJavascriptInjectionDescription": "Aktibatu aukera hau JavaScript kodea sartzeko eremuak erakusteko.",
"ShowEditorDescription": "Aktibatu aukera hau \"CSS pertsonalizatuaren\" kodea CSS editore sinple batean erakusteko.",
"ShowEditorOptionName": "Gaitu CSS editorea"
}
}
15 changes: 14 additions & 1 deletion lang/ga.json
Original file line number Diff line number Diff line change
@@ -1 +1,14 @@
{}
{
"CustomOptOut": {
"DefaultCssFile": "Comhad stílbhileog réamhshocraithe",
"DefaultCssFileDescription": "Úsáidfear an comhad CSS seo mura roghnaítear leathanach.",
"DefaultCssStyles": "Stílbhileoga réamhshocraithe",
"DefaultCssStylesDescription": "Úsáidfear na stíleanna CSS seo mura roghnaítear aon leathanach.",
"EditorThemeDescription": "Roghnaigh téama don eagarthóir.",
"EditorThemeOptionName": "Téama Eagarthóir",
"EnableJavascriptInjection": "Cumasaigh réimsí JavaScript",
"EnableJavascriptInjectionDescription": "Cuir an rogha seo ar siúl chun réimsí a thaispeáint inar féidir JavaScript a chur isteach.",
"ShowEditorDescription": "Cuir an rogha seo ar siúl chun an cód \"CSS saincheaptha\" a thaispeáint in eagarthóir CSS simplí.",
"ShowEditorOptionName": "Cumasaigh eagarthóir CSS"
}
}
14 changes: 14 additions & 0 deletions lang/gu.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"CustomOptOut": {
"DefaultCssFile": "ડિફૉલ્ટ સ્ટાઇલશીટ ફાઇલ",
"DefaultCssFileDescription": "જો કોઈ પેજ પસંદ કરવામાં ન આવે તો આ CSS ફાઇલનો ઉપયોગ કરવામાં આવશે.",
"DefaultCssStyles": "ડિફૉલ્ટ સ્ટાઇલશીટ્સ",
"DefaultCssStylesDescription": "જો કોઈ પેજ પસંદ કરવામાં ન આવે તો આ CSS શૈલીઓનો ઉપયોગ કરવામાં આવશે.",
"EditorThemeDescription": "એડિટર માટે એક થીમ પસંદ કરો.",
"EditorThemeOptionName": "એડિટર થીમ",
"EnableJavascriptInjection": "JavaScript ફીલ્ડ્સ સક્ષમ કરો",
"EnableJavascriptInjectionDescription": "JavaScript દાખલ કરવા માટે ફીલ્ડ્સ બતાવવા માટે આ વિકલ્પ ચાલુ કરો.",
"ShowEditorDescription": "સરળ CSS એડિટરમાં \"કસ્ટમ CSS\" કોડ બતાવવા માટે આ વિકલ્પ ચાલુ કરો.",
"ShowEditorOptionName": "CSS એડિટર સક્ષમ કરો"
}
}
15 changes: 14 additions & 1 deletion lang/hr.json
Original file line number Diff line number Diff line change
@@ -1 +1,14 @@
{}
{
"CustomOptOut": {
"DefaultCssFile": "Zadana datoteka popisa stilova",
"DefaultCssFileDescription": "Ova CSS datoteka će se koristiti ako nijedna stranica nije odabrana.",
"DefaultCssStyles": "Zadani popis stilova",
"DefaultCssStylesDescription": "Ovi CSS stilovi će se koristiti ako nijedna stranica nije odabrana.",
"EditorThemeDescription": "Odaberi temu za uređivač.",
"EditorThemeOptionName": "Tema uređivača",
"EnableJavascriptInjection": "Aktiviraj JavaScript polja",
"EnableJavascriptInjectionDescription": "Uključi ovu opciju za prikaz polja za unos JavaScripta.",
"ShowEditorDescription": "Uključite ovu opciju za prikazivanje koda „prilagođenog CSS-a” u jednostavnom CSS uređivaču.",
"ShowEditorOptionName": "Aktiviraj CSS uređivač"
}
}
1 change: 1 addition & 0 deletions lang/hy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions lang/ku.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions lang/lb.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions lang/ms.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
16 changes: 8 additions & 8 deletions lang/ru.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"CustomOptOut": {
"ShowEditorOptionName": "Включить редактор css",
"ShowEditorDescription": "Включить эту опцию, чтобы показывать «пользовательский css» код в простом редакторе css.",
"EditorThemeOptionName": "Тема редактора",
"EditorThemeDescription": "Выбрать тему для редактора.",
"DefaultCssStyles": "Таблица стилей по умолчанию",
"DefaultCssStylesDescription": "Эти стили будут использованы, если страница не выбрана.",
"DefaultCssFile": "Файл с таблицей стиля по умолчанию",
"DefaultCssFileDescription": "Этот файл css будет использован, если страница не выбрана.",
"DefaultCssStyles": "Таблица стилей по умолчанию",
"DefaultCssStylesDescription": "Эти стили будут использованы, если страница не выбрана.",
"EditorThemeDescription": "Выбрать тему для редактора.",
"EditorThemeOptionName": "Тема редактора",
"EnableJavascriptInjection": "Включить поля Javascript",
"EnableJavascriptInjectionDescription": "Включите эту опцию, чтобы показать поля для ввода JavaScript.",
"EnableJavascriptInjection": "Включить поля Javascript"
"ShowEditorDescription": "Включить эту опцию, чтобы показывать «пользовательский css» код в простом редакторе css.",
"ShowEditorOptionName": "Включить редактор css"
}
}
}
1 change: 1 addition & 0 deletions lang/si.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
15 changes: 14 additions & 1 deletion lang/ta.json
Original file line number Diff line number Diff line change
@@ -1 +1,14 @@
{}
{
"CustomOptOut": {
"DefaultCssFile": "இயல்புநிலை நடைதாள் கோப்பு",
"DefaultCssFileDescription": "எந்தப் பக்கமும் தேர்ந்தெடுக்கப்படாவிட்டால் இந்த சிஎச்எச் கோப்பு பயன்படுத்தப்படும்.",
"DefaultCssStyles": "இயல்புநிலை நடைதாள்",
"DefaultCssStylesDescription": "எந்தப் பக்கமும் தேர்ந்தெடுக்கப்படாவிட்டால் இந்த சிஎச்எச் பாணிகள் பயன்படுத்தப்படும்.",
"EditorThemeDescription": "எடிட்டருக்கு ஒரு கருப்பொருளைத் தேர்வுசெய்க.",
"EditorThemeOptionName": "ஆசிரியர் கருப்பொருள்",
"EnableJavascriptInjection": "சாவாச்கிரிப்ட் புலங்களை இயக்கவும்",
"EnableJavascriptInjectionDescription": "சாவாச்கிரிப்ட் உள்ளே நுழைய புலங்களைக் காட்ட இந்த விருப்பத்தை இயக்கவும்.",
"ShowEditorDescription": "எளிய சிஎச்எச் எடிட்டரில் \"தனிப்பயன் CSS\" குறியீட்டைக் காட்ட இந்த விருப்பத்தை இயக்கவும்.",
"ShowEditorOptionName": "சிஎச்எச் எடிட்டரை இயக்கவும்"
}
}
1 change: 1 addition & 0 deletions lang/tzm.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
2 changes: 1 addition & 1 deletion lang/zh-cn.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"EditorThemeOptionName": "编辑主题",
"EnableJavascriptInjection": "启用Javascript字段",
"EnableJavascriptInjectionDescription": "启用此选项可显示要输入javascript的字段。",
"ShowEditorDescription": "启用此选项可在简单的CSS编辑器中显示“自定义CSS”代码。",
"ShowEditorDescription": "启用此选项可在简易CSS编辑器中显示“自定义CSS”代码。",
"ShowEditorOptionName": "启用 CSS 编辑器"
}
}
6 changes: 3 additions & 3 deletions plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "CustomOptOut",
"version": "2.0.4",
"name": "MatomoCustomOptOut",
"version": "3.0.3",
"description": "Create your own opt-out iframe css styles",
"keywords": [
"Opt-Out",
Expand All @@ -10,7 +10,7 @@
"license": "GPL-3.0+",
"homepage": "https:\/\/www.zwei-entwickler.de",
"require": {
"matomo": ">=4.0.0-b1,<5.0.0-b1",
"matomo": ">=5.0.0-b1,<6.0.0-b1",
"php": ">=7.2.5"
},
"donate": {
Expand Down
Loading