/core/Translate/Filter/EmptyTranslations.php
PHP | 47 lines | 22 code | 8 blank | 17 comment | 4 complexity | 9dd40a42ee9e0ffed119e63185b316f3 MD5 | raw file
Possible License(s): LGPL-3.0, JSON, MIT, GPL-3.0, LGPL-2.1, GPL-2.0, AGPL-1.0, BSD-2-Clause, BSD-3-Clause
- <?php
- /**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
- */
- namespace Piwik\Translate\Filter;
- /**
- */
- class EmptyTranslations extends FilterAbstract
- {
- /**
- * Removes all empty translations
- *
- * @param array $translations
- *
- * @return array filtered translations
- */
- public function filter($translations)
- {
- $translationsBefore = $translations;
- foreach ($translations AS $plugin => &$pluginTranslations) {
- $pluginTranslations = array_filter($pluginTranslations, function ($value) {
- return !empty($value) && '' != trim($value);
- });
- $diff = array_diff($translationsBefore[$plugin], $pluginTranslations);
- if (!empty($diff)) {
- $this->filteredData[$plugin] = $diff;
- }
- }
- // remove plugins without translations
- $translations = array_filter($translations, function ($value) {
- return !empty($value) && count($value);
- });
- return $translations;
- }
- }