Does a locale have translation strings that needs review?

@param LocaleEntity $locale

@return bool
193250
public function localeHasPendingApprovals(LocaleEntity $locale)
    {
        $cn = $this->app->make(EntityManager::class)->getConnection();
        $rs = $cn->executeQuery(
            '
                select
                    CommunityTranslationTranslations.id
                from
                    CommunityTranslationTranslations
                    inner join CommunityTranslationTranslatablePlaces on CommunityTranslationTranslations.translatable = CommunityTranslationTranslatablePlaces.translatable
                where
                    CommunityTranslationTranslations.locale = ?
                    and (
                        (CommunityTranslationTranslations.approved is null)
                        or
                        (CommunityTranslationTranslations.current = 1 and CommunityTranslationTranslations.approved = 0)
                    )
                limit 1
            ',
            [
                $locale->getID(),
            ]
        );
        $result = $rs->fetchColumn() !== false;
        $rs->closeCursor();

        return $result;
    }
975322
protected function getNumberFormat($locale)
    {
        if (!isset($this->numberFormats[$locale])) {
            $this->numberFormats[$locale] = $this->numberFormatRepository->get($locale);
        }

        return $this->numberFormats[$locale];
    }
970007
private function processLocale(LocaleEntity $locale)
    {
        $result = 0;
        $this->logger->info(sprintf('Processing %s (%s)', $locale->getName(), $locale->getID()));
        $aspiringGroup = $this->groupsHelper->getAspiringTranslators($locale);
        $aspiringGroupMemberIDs = $aspiringGroup->getGroupMemberIDs();
        $numberOfAspiringMembers = count($aspiringGroupMemberIDs);
        if ($numberOfAspiringMembers === 0) {
            $this->logger->info('  - No pending requests found.');
        } else {
            foreach ($aspiringGroupMemberIDs as $memberID) {
                if ($this->processAspiring($locale, $aspiringGroup, $memberID)) {
                    ++$result;
                }
            }
            $this->logger->info(sprintf('  - %d out of %d requests accepted.', $result, $numberOfAspiringMembers));
        }

        return $result;
    }
533329
public function getTranslationByLocale($locale)
    {
        foreach ($this->getTranslations() as $valueTranslation) {
            if ($valueTranslation->getLocale() === $locale) {
                return $valueTranslation;
            }
        }

        return null;
    }
1208693
public function setLocale($locale)
    {
        $locale = preg_replace_callback('/[-_]([a-z]{2,})/', function ($matches) {
            // _2-letters is a region, _3+-letters is a variant
            return '_'.call_user_func(strlen($matches[1]) > 2 ? 'ucfirst' : 'strtoupper', $matches[1]);
        }, strtolower($locale));

        if ($this->loadMessagesFromFile($locale)) {
            parent::setLocale($locale);

            return true;
        }

        return false;
    }
851493
public function getOrCreateTranslationForLocale($locale)
    {
        foreach ($this->getTranslations() as $propelTranslation) {
            if ($propelTranslation->getLocale() == $locale) {
                return $propelTranslation;
            }
        }

        $propelTranslation = new PropelTranslation();
        $propelTranslation->setLocale($locale);
        $this->addTranslation($propelTranslation);

        return $propelTranslation;
    }
1248390
public function isValidLocale($locale) {
        foreach ($this->locales as $validLocale) {
            if (strcmp($validLocale, $locale) == 0) {
                return true;
            }
        }
        return false;
    }
406690
private function normalizeLocale(string $locale): string
    {
        return \preg_replace_callback('/^([a-z]{2})[-_]([a-z]{2})$/i', static function (array $matches): string {
            return \sprintf('%s_%s', $matches[1], \mb_strtoupper($matches[2]));
        }, $locale);
    }
633805
public function translate($locale) {
		$localeEntity = clone $this;
		$localeEntity->setLocale($locale);
		if(isset($this->data['translations'][$locale]))
			$localeEntity->_set($this->data['translations'][$locale]);
		unset($localeEntity->data['translations'][$locale]);
		$localeEntity->data['translations'][$this->getLocale()] = $this->data['properties'];

		return $localeEntity;
	}
386315
public static final function configuration(string $locale) {
    if (!empty($locale)) {
      Lang::$locale = $locale;
    } else {
      Lang::$locale = Lang::STANDARD_LOCALE;
    }
    return null;
  }
826476
protected function getLocale($locale)
    {
        $result = null;
        if ($locale instanceof LocaleEntity) {
            $result = $locale;
        } elseif (is_string($locale) && $locale !== '') {
            $result = $this->app->make(LocaleRepository::class)->findApproved($locale);
        }

        return $result;
    }
656030
private function hasLocale(string $locale): bool
    {
        assert(empty($locale) === false);

        $result = in_array($locale, $this->getLocales());

        return $result;
    }
1371687
public function isCurrentlyActive(Locale $locale)
    {
        $current = $this->getCurrentLocale();
        return $locale->getCode() === $current->getCode();
    }
500601
public function has($key, $locale = null)
    {
        return $this->translator->has($this->fullkey($key));
    }
1348717
private function translationsNeedsPluralFix(Translations $translations, LocaleEntity $locale, &$translationsPluralCount)
    {
        $txPlurals = $translations->getPluralForms();
        $translationsPluralCount = isset($txPlurals) ? $txPlurals[0] : null;

        return $translationsPluralCount !== $locale->getPluralCount();
    }
753763
public static function getByLocale($locale)
    {
        if (!$locale) {
            return null;
        }

        if ($locale instanceof Locale) {
            return $locale;
        }

        if (!static::$locales_by_title) {
            static::$locales_by_title = [];
            foreach (Locale::getCached() as $localeObj) {
                static::$locales_by_title[$localeObj->Locale] = $localeObj;
            }
        }

        // Get filtered locale
        return isset(static::$locales_by_title[$locale]) ? static::$locales_by_title[$locale] : null;
    }
1183965
public function evaluateRequired($required, $locale)
    {
        return (boolean) $required
            ? !$this->fallback || ($this->masterLocale === $locale)
            : false;
    }