/** * Set view object * * @param \Zend_View_Interface $view * @return \Zend_Form_Element */ public function setView(\Zend_View_Interface $view = null) { $element = parent::setView($view); if (null !== $view) { if (false === $view->getPluginLoader('helper')->getPaths('MUtil_JQuery_View_Helper')) { $view->addHelperPath('MUtil/JQuery/View/Helper', 'MUtil_JQuery_View_Helper'); } } if ($locale = \Zend_Registry::get('Zend_Locale')) { $language = $locale->getLanguage(); // We have a language, but only when not english if ($language && $language != 'en') { $jquery = $view->JQuery(); if ($uiPath = $jquery->getUiLocalPath()) { $baseUrl = dirname($uiPath); } else { $baseUrl = \MUtil_Https::on() ? \ZendX_JQuery::CDN_BASE_GOOGLE_SSL : \ZendX_JQuery::CDN_BASE_GOOGLE; $baseUrl .= \ZendX_JQuery::CDN_SUBFOLDER_JQUERYUI; $baseUrl .= $jquery->getUiVersion(); } // Option 1: download single language file if (version_compare($jquery->getUiVersion(), '1.11.0', '>=')) { $jquery->addJavascriptFile($baseUrl . '/i18n/datepicker-' . $language . '.js'); } else { $jquery->addJavascriptFile($baseUrl . '/i18n/jquery.ui.datepicker-' . $language . '.js'); } // Option 2: download all languages and select current // $jquery->addJavascriptFile($baseUrl . '/i18n/jquery-ui-i18n.min.js'); // $jquery->addOnLoad("$.datepicker.setDefaults($.datepicker.regional['$language'])"); // TODO: Option 3: enable language setting for each individual date } } return $element; }