From 7f8aa5be4a93ce1088df7e019a3e9220a4dfdfa0 Mon Sep 17 00:00:00 2001 From: Lukas Winkler Date: Fri, 26 Oct 2018 21:26:24 +0200 Subject: [PATCH] initial version --- CHANGELOG.md | 3 ++ CustomiseTranslations.php | 22 +++++++++++++++ MyCustomLoader.php | 26 +++++++++++++++++ README.md | 5 ++++ SystemSettings.php | 58 ++++++++++++++++++++++++++++++++++++++ config/config.php | 5 ++++ lang/de.json | 10 +++++++ lang/en.json | 10 +++++++ plugin.json | 28 ++++++++++++++++++ screenshots/.gitkeep | 0 screenshots/settings.png | Bin 0 -> 27535 bytes stylesheets/styles.less | 14 +++++++++ 12 files changed, 181 insertions(+) create mode 100644 CHANGELOG.md create mode 100644 CustomiseTranslations.php create mode 100644 MyCustomLoader.php create mode 100644 README.md create mode 100644 SystemSettings.php create mode 100644 config/config.php create mode 100644 lang/de.json create mode 100644 lang/en.json create mode 100644 plugin.json create mode 100644 screenshots/.gitkeep create mode 100644 screenshots/settings.png create mode 100644 stylesheets/styles.less diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..8546318 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +## Changelog + +Here goes the changelog text. diff --git a/CustomiseTranslations.php b/CustomiseTranslations.php new file mode 100644 index 0000000..bef2bf1 --- /dev/null +++ b/CustomiseTranslations.php @@ -0,0 +1,22 @@ + 'getStylesheetFiles', + ); + } + + public function getStylesheetFiles(&$files) { + $files[] = "plugins/CustomiseTranslations/stylesheets/styles.less"; + } +} diff --git a/MyCustomLoader.php b/MyCustomLoader.php new file mode 100644 index 0000000..cc102ba --- /dev/null +++ b/MyCustomLoader.php @@ -0,0 +1,26 @@ +tranlations->getValue(); + foreach ($trans as $translation) { + if ($translation["translationKey"] == "") { + continue; + } + $split = explode("_", $translation["translationKey"]); + + $translations[$split[0]][$split[1]] = $translation["translationText"]; + } + + return $translations; + } +} diff --git a/README.md b/README.md new file mode 100644 index 0000000..46c449b --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# Matomo Customise Translations + +## Description + +This plugin allows you to quickly replace translatable texts in Matomo. diff --git a/SystemSettings.php b/SystemSettings.php new file mode 100644 index 0000000..777fa7a --- /dev/null +++ b/SystemSettings.php @@ -0,0 +1,58 @@ +title = "Customize Translation"; // this can't be translated as it would create a loop + + $this->tranlations = $this->createTranslationsSetting(); + } + + private function createTranslationsSetting() { + return $this->makeSetting('translations', array(), FieldConfig::TYPE_ARRAY, function (FieldConfig $field) { + $plugins = Manager::getAllPluginsNames(); + $field->description = Piwik::translate('CustomiseTranslations_Description'); + $field->uiControl = FieldConfig::UI_CONTROL_MULTI_TUPLE; + $field1 = new FieldConfig\MultiPair(Piwik::translate('CustomiseTranslations_TranslationKey'), 'translationKey', FieldConfig::UI_CONTROL_TEXT); + $field2 = new FieldConfig\MultiPair(Piwik::translate('CustomiseTranslations_Replacement'), 'translationText', FieldConfig::UI_CONTROL_TEXTAREA); + $field->uiControlAttributes['field1'] = $field1->toArray(); + $field->uiControlAttributes['field2'] = $field2->toArray(); + $field->validate = function ($value, Setting $setting) use ($plugins) { + foreach ($value as $translation) { + $key = $translation["translationKey"]; + if ($key == "") { + continue; + } + $split = explode("_", $key); + if (count($split) !== 2) { + throw new \Exception(Piwik::translate("CustomiseTranslations_MisingUnderscore")); + } + + if (!in_array($split[0], $plugins)) { + throw new \Exception(Piwik::translate("CustomiseTranslations_InvalidPlugin", $split[0])); + } + if ($key === Piwik::translate($key)) { + throw new \Exception(Piwik::translate("CustomiseTranslations_InvalidKey", $key)); + } + } + + }; + }); + } +} diff --git a/config/config.php b/config/config.php new file mode 100644 index 0000000..8fb4e5a --- /dev/null +++ b/config/config.php @@ -0,0 +1,5 @@ + DI\object('Piwik\Plugins\CustomiseTranslations\MyCustomLoader'), +); diff --git a/lang/de.json b/lang/de.json new file mode 100644 index 0000000..fd1aea4 --- /dev/null +++ b/lang/de.json @@ -0,0 +1,10 @@ +{ + "CustomiseTranslations": { + "MisingUnderscore": "Bitte formatieren sie den Key so: 'PluginName_TranslationKey'.", + "InvalidPlugin": "Das Plugin '%s' exisistiert nicht.", + "InvalidKey": "Der Übersetzungs-Key '%s' exisistiert nicht.", + "Description": "Sie können existierende Übersetzungen bearbeiten, indem sie den Key (e.g. 'PrivacyManager_TermsAndConditions') in die erste Spalte und den neuen Text in die zweite Spalte schreiben.", + "TranslationKey": "Übersetzungs-Key", + "Replacement": "Ersatztext" + } +} diff --git a/lang/en.json b/lang/en.json new file mode 100644 index 0000000..ad16600 --- /dev/null +++ b/lang/en.json @@ -0,0 +1,10 @@ +{ + "CustomiseTranslations": { + "MisingUnderscore": "Please format the Key like this: 'PluginName_TranslationKey'.", + "InvalidPlugin": "The plugin '%s' doesn't exist.", + "InvalidKey": "The tranlation key '%s' doesn't exist.", + "Description": "You can modify translations by entering the key (e.g. 'PrivacyManager_TermsAndConditions') into the first column and writing your replacement into the textbox.", + "TranslationKey": "Tranlation Key", + "Replacement": "Replacement" + } +} diff --git a/plugin.json b/plugin.json new file mode 100644 index 0000000..f624ec8 --- /dev/null +++ b/plugin.json @@ -0,0 +1,28 @@ +{ + "name": "CustomiseTranslations", + "description": "This plugin allows you to modify all translateable strings in Matomo", + "version": "0.1.0", + "theme": false, + "require": { + "piwik": ">=3.6.0,<4.0.0-b1" + }, + "authors": [ + { + "name": "Lukas Winkler", + "email": "lukas@matomo.org", + "homepage": "https://lw1.at" + } + ], + "support": { + "email": "lukas@matomo.org", + "issues": "https://github.com/Findus23/plugin-LanguageToogle/issues", + "forum": "https://forum.matomo.org", + "source": "https://github.com/Findus23/plugin-LanguageToogle" + }, + "homepage": "https://lw1.at", + "license": "GPL v3+", + "keywords": [ + "language", + "customisation" + ] +} diff --git a/screenshots/.gitkeep b/screenshots/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/screenshots/settings.png b/screenshots/settings.png new file mode 100644 index 0000000000000000000000000000000000000000..9305db57500a5fb75b5ade7c7afd90f7aba4727b GIT binary patch literal 27535 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 z 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 W>?x-j=0YAQ!~xYYx>lj>9P=N~TR=wu literal 0 HcmV?d00001 diff --git a/stylesheets/styles.less b/stylesheets/styles.less new file mode 100644 index 0000000..1c7d406 --- /dev/null +++ b/stylesheets/styles.less @@ -0,0 +1,14 @@ +#CustomiseTranslationsPluginSettings { + .col { + width: 100%; + } + .input-field { + width: 100%; + } + textarea { + width: 100%; + } + .multiPairField .fieldUiControl1.hasMultiFields { + width: 400px; + } +}