protected function addNewLocaleMenu($contentNode, $transient_options) { $locales = I2CE_Locales::validateLocales($this->getChildNames()); $def_locales = array(); //the locales packaged with iHRIS by default I2CE::getConfig()->setIfIsSet($def_locales, "/locales/default-available", true); $def_locale_list = array(); foreach ($def_locales as $locale => $locale_lang) { if (in_array($locale_lang, $locales)) { continue; } $disp = I2CE_Module_LocaleSelector::getLocaleName($locale_lang); if ($disp != $locale_lang) { $disp .= ' (' . $locale_lang . ')'; } $def_locale_list[$locale_lang] = $disp; } if (count($def_locale_list) > 0) { $this->template->setDisplayDataImmediate('has_def_locale', 1, $contentNode); $this->template->setDisplayDataImmediate('def_locale', $def_locale_list, $contentNode); $this->addAjaxOptionMenu('add_def_locale', 'locales_container', $contentNode); } else { $this->template->setDisplayDataImmediate('has_def_locale', 0, $localeNode); } if (!($localeNode = $this->template->getElementById('new_locale', $contentNode)) instanceof DOMNode) { return false; } $this->template->setClassValue($localeNode, 'validate_data', array('notinlist' => array_unique(array_merge($def_locales, $locales))), '%'); return $this->addAjaxOptionMenu('add_locale', 'locales_container', $contentNode); }
public function getDescription() { return I2CE_Module_LocaleSelector::getLocaleName($this->name); }