function createLanguage($iso639, $iso3166, $iso3166_3) { $locales = mamboLanguage::getLocales(); $default = $locales['locales'][$iso639]; $lang = $iso639; $lang .= strlen($iso3166) == 2 ? '_' . $iso3166 : ''; $language =& new mamboLanguage($lang); foreach ($default as $k => $v) { if (in_array($k, array_keys(get_class_vars(get_class($language))))) { $language->{$k} = $v; } } foreach ($_POST as $k => $v) { if (in_array($k, array_keys(get_class_vars(get_class($language))))) { $language->{$k} = $v; } } $language->name = $lang; $language->description = $language->title . ' Locale'; if (!empty($language->territory)) { $language->description .= ' For ' . $language->territory; } $language->locale = $lang . '.' . $language->charset . ',' . $lang . ',' . $iso639 . ',' . strtolower($language->title); $language->iso3166_3 = $iso3166_3; $language->creationdate = date('d-m-Y'); $language->author = 'Mambo Foundation Inc.'; $language->authorurl = 'http://www.mambo-foundation.org'; $language->authoremail = '*****@*****.**'; $language->copyright = 'Refer to copyright.php'; $language->license = 'http://www.gnu.org/copyleft/gpl.html GNU/GPL'; $language->setPlurals($_POST['plural_form']); $textdomain = rtrim($language->path, '\\/'); $dir = $textdomain . '/' . $language->name; $untranslated = $textdomain . '/untranslated'; $charset = $language->charset; $langfiles = mosReadDirectory($untranslated, '.pot$'); @mkdir($dir); @mkdir($dir . '/LC_MESSAGES'); //$gettext_admin = new PHPGettextAdmin(); foreach ($langfiles as $domain) { $domain = substr($domain, 0, -4); /*if (file_exists("$textdomain/glossary/$lang.$charset.po")) { copy("$textdomain/glossary/$lang.$charset.po", "$dir/$lang.po"); $gettext_admin->initialize_translation($domain, $textdomain, $lang, $charset); $gettext_admin->compile($lang, $textdomain, $charset); } else {*/ copy("{$untranslated}/{$domain}.pot", "{$dir}/{$domain}.po"); //} } //if (!file_exists("$textdomain/$lang/$lang.po")) { // @copy("$textdomain/glossary/untranslated.pot", "$textdomain/$lang/$lang.po"); //} $language->save(); }
function getlocales() { return mamboLanguage::getLocales(); }