Esempio n. 1
0
 /**
  * Language translation form.
  *
  * @param Language $language
  * @return Curry_Form
  */
 protected function getTranslationForm(Language $language)
 {
     $form = new Curry_Form(array('action' => url('', $_GET), 'method' => 'post'));
     $translations = LanguageStringTranslationQuery::create()->filterByLanguage($language)->find()->toKeyValue('StringId', 'Translation');
     foreach (LanguageStringQuery::create()->find()->toKeyValue('Id', 'ElementType') as $id => $elementType) {
         $translation = array_key_exists($id, $translations) ? $translations[$id] : '';
         $options = array('label' => $id, 'value' => $translation);
         try {
             $form->getPluginLoader('element')->load($elementType);
             if ($elementType == 'textarea') {
                 $options['rows'] = 4;
                 //$options['wrap'] = null;
             }
         } catch (Zend_Loader_Exception $e) {
             $elementType = 'text';
         }
         $form->addElement($elementType, sha1($id), $options);
     }
     $form->addElement('submit', 'submit', array('label' => 'Save'));
     return $form;
 }