예제 #1
0
 public function init()
 {
     $model_countries = new Locale_Model_Languages();
     $model_t_keys = new Locale_Model_TranslateKeys();
     $key_id = new Zend_Form_Element_Select('key_id');
     $key_id->addValidator(new Zend_Validate_Digits(), true);
     $key_id->setLabel('Key');
     $key_id->setRequired(true);
     $key_id->setMultiOptions($model_t_keys->getIdAndKeyArray(true));
     $this->addElement($key_id);
     $country_id = new Zend_Form_Element_Select('language_id');
     $country_id->addValidator(new Zend_Validate_Digits(), true);
     $country_id->setLabel('Language');
     $country_id->setRequired(true);
     $country_id->setMultiOptions($model_countries->getIdAndNameArray());
     $this->addElement($country_id);
     $value = new My_Form_Element_CKEditor('value');
     $value->setLabel('Translation');
     $value->setDescription('Tags for dynamic values: {1}, {2}, {3}...Double quotes (")are not allowed');
     $this->addElement($value);
     $cancel = new Zend_Form_Element_Button('cancel');
     $cancel->setLabel('Cancel');
     $cancel->setAttrib('class', 'btn btn-gold')->setAttrib('style', 'color:black');
     $cancel->setAttrib("onClick", "window.location = window.location.origin+'/locale/translate-messages/'");
     $this->addElement($cancel);
     $submit = new Zend_Form_Element_Submit('save');
     $submit->setAttrib('class', 'btn btn-primary');
     $submit->setLabel('Confirm');
     $this->setAction('')->setMethod('post')->addElement($submit);
 }
예제 #2
0
 public function _initLocale()
 {
     $this->bootstrap('modules');
     $this->bootstrap('session');
     $lang_countries_model = new Locale_Model_Languages();
     $lang_countries = $lang_countries_model->getCountryCodes();
     $ter_countries_model = new Locale_Model_Countries();
     $ter_countries = $ter_countries_model->getCountryCodesAndLang();
     $country_code = false;
     //detect true locale, default is set in config
     $true_locale = $locale = Zend_Registry::get('default_locale');
     foreach ($ter_countries as $code => $lang) {
         $code_exploded = explode('_', $code);
         if ($code_exploded[1] == $country_code) {
             $true_locale = $code;
             if (isset($lang)) {
                 $locale = $lang;
             }
         }
     }
     //detect locale, default is set in config
     foreach ($lang_countries as $code) {
         if (strpos($code, $country_code) !== false) {
             $locale = $code;
         }
     }
     if (isset($_GET['lang']) && in_array($_GET['lang'], $lang_countries)) {
         $locale = $_SESSION['lang'] = $_GET['lang'];
     } elseif (isset($_SESSION['lang']) && in_array($_SESSION['lang'], $lang_countries)) {
         $locale = $_SESSION['lang'];
     }
     Zend_Registry::set('true_locale', $true_locale);
     Zend_Registry::set('Zend_Locale', $locale);
 }
예제 #3
0
 public function init()
 {
     $model_t_countries = new Locale_Model_Languages();
     $name = new Zend_Form_Element_Text('name');
     $name->setLabel('Name');
     $name->setRequired(true);
     $this->addElement($name);
     $country_code = new Zend_Form_Element_Text('country_code');
     $country_code->setLabel('Country code');
     $country_code->setDescription('List of codes you can see here: http://framework.zend.com/manual/1.12/en/zend.locale.appendix.html');
     $country_code->setRequired(true);
     $this->addElement($country_code);
     $calling_code = new Zend_Form_Element_Text('calling_code');
     $calling_code->setLabel('Calling code');
     $calling_code->setRequired(true);
     $calling_code->addValidator('Digits', true);
     $this->addElement($calling_code);
     $t_country_id = new Zend_Form_Element_Select('language_id');
     $t_country_id->addValidator(new Zend_Validate_Digits(), true);
     $t_country_id->setLabel('Language');
     $t_country_id->setAttrib("data-placeholder", "Choose language...");
     $t_country_id->setMultiOptions(array('0' => 'none') + $model_t_countries->getIdAndNameArray());
     $this->addElement($t_country_id);
     $is_active = new Zend_Form_Element_Checkbox('is_active');
     $is_active->setLabel('Active');
     $is_active->setRequired(true);
     $this->addElement($is_active);
     $cancel = new Zend_Form_Element_Button('cancel');
     $cancel->setLabel('Cancel');
     $cancel->setAttrib('class', 'btn btn-gold')->setAttrib('style', 'color:black');
     $cancel->setAttrib("onClick", "window.location = window.location.origin+'/locale/countries/'");
     $this->addElement($cancel);
     $submit = new Zend_Form_Element_Submit('save');
     $submit->setAttrib('class', 'btn btn-primary');
     $submit->setLabel('Confirm');
     $this->setAction('')->setMethod('post')->addElement($submit);
 }