private function getLanguagesInUse()
{
// Get all languages in use (see #6013)
$query = "\n SELECT language FROM tl_member\n UNION SELECT language FROM tl_user\n UNION SELECT REPLACE(language, '-', '_') FROM tl_page\n WHERE type='root'\n ";
$statement = $this->connection->prepare($query);
$statement->execute();
$languages = [];
while (false !== ($language = $statement->fetch(\PDO::FETCH_OBJ))) {
if ('' === $language->language) {
continue;
}
$languages[] = $language->language;
// Also cache "de" if "de-CH" is requested
if (strlen($language->language) > 2) {
$languages[] = substr($language->language, 0, 2);
}
}
return array_unique($languages);
}