function smarty_function_translation_exists($params, &$smarty)
{
    // @codingStandardsIgnoreEnd
    if (is_array($params)) {
        $prefix = isset($params['prefix']) ? $params['prefix'] : '';
        $text = isset($params['text']) ? $params['text'] : '';
    } else {
        $text = $params;
    }
    // default true for backwards compatibility
    $status = true;
    if (function_exists('translationExists')) {
        $status = translationExists(array('text' => $text, 'prefix' => $prefix));
    }
    $smarty->assign('translationStatus', $status);
}
/**
 * generates po files with appropriate header for a given locale and all apps
 * 
 * @param  string $_locale
 * @return void
 */
function generateNewTranslationFiles($_locale, $_verbose = false, $_overwrite = false)
{
    list($language, $region) = explode('_', $_locale);
    $locale = new Zend_Locale('en');
    $languageName = $locale->getTranslation($language, 'language');
    $regionName = $locale->getTranslation($region, 'country');
    if (!$languageName) {
        die("Language '{$language}' is not valid / known \n");
    }
    if ($region && !$regionName) {
        die("Region '{$region}' is not valid / known \n");
    }
    $regionName = $region ? $regionName : 'Not Specified / Any';
    if (translationExists($_locale)) {
        if ($_overwrite) {
            if ($_verbose) {
                echo "Overwriting existing lang files for {$_locale} \n";
            }
        } else {
            die("Translations for {$_locale} already exist \n");
        }
    }
    if ($_verbose) {
        echo "Generation new lang files for \n";
        echo "  Language: {$languageName} \n";
        echo "  Region: {$regionName} \n";
    }
    $pluralForm = getPluralForm($languageName);
    foreach (Tinebase_Translation::getTranslationDirs() as $appName => $translationPath) {
        if (!checkAppName($appName, $_verbose)) {
            continue;
        }
        $file = "{$translationPath}/{$_locale}.po";
        generateNewTranslationFile($languageName, $regionName, $appName, $pluralForm, $file, $_verbose);
    }
}