/**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('menu')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Menu Item Information');
     $subForm1->setDescription('Menu Item Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $title = new Zend_Form_Element_Text('title', array('class' => 'required', 'maxlength' => 200));
     $title->setRequired(true)->setLabel('Title')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $link = new Zend_Form_Element_Text('link', array('maxlength' => 200));
     $link->setLabel('Link')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty')->setDescription('Use module/controller/action for internal links or http://www.example.com for external links');
     $open_window = new Zend_Form_Element_Select('open_window', array('class' => 'required', 'maxlength' => 200));
     $open_window->setRequired(true)->setLabel('Open Window')->setMultiOptions(Fox::getModel('navigation/menu')->getAllTargetWindows());
     $status = new Zend_Form_Element_Select('status', array('class' => 'required', 'maxlength' => 200));
     $status->setRequired(true)->setLabel('Status')->setMultiOptions(Fox::getModel('navigation/menu')->getAllStatuses());
     $sort_order = new Zend_Form_Element_Text('sort_order', array('class' => 'required', 'maxlength' => 200));
     $sort_order->setRequired(true)->setLabel('Sort Order')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $style_class = new Zend_Form_Element_Text('style_class');
     $style_class->setLabel('Style Class')->addFilter('StripTags')->addFilter('StringTrim');
     $menugroup = new Zend_Form_Element_Multiselect('menu_group', array('class' => 'required'));
     $menugroup->setRequired(true)->setLabel('Menu Group')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty')->setMultiOptions(Fox::getModel('navigation/menugroup')->getMenuGroupOptions());
     $subForm1->addElements(array($idField, $title, $link, $open_window, $sort_order, $style_class, $status, $menugroup));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('cms_block')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Block Information');
     $subForm1->setDescription('Block Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $title = new Zend_Form_Element_Text('title', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $title->setRequired(true)->setLabel('Title')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $identifer = new Zend_Form_Element_Text('identifier_key', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $identifer->setRequired(true)->setLabel('Identifer Key')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $content = new Uni_Core_Form_Element_Editor('content', array('cols' => '50', 'rows' => '20', 'class' => 'required'));
     $content->setRequired(true)->setLabel('Content');
     $status = new Zend_Form_Element_Select('status', array('class' => 'required'));
     $status->setRequired(true)->setLabel('Status')->setMultiOptions(Fox::getModel('cms/block')->getAllStatuses());
     $subForm1->addElements(array($idField, $title, $identifer, $content, $status));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('menugroup')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Menu Group Information');
     $subForm1->setDescription('Menu Group Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $name = new Zend_Form_Element_Text('name', array('class' => 'required', 'maxlength' => 200));
     $name->setRequired(true)->setLabel('Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $status = new Zend_Form_Element_Select('status', array('class' => 'required', 'maxlength' => 200));
     $status->setRequired(true)->setLabel('Status')->setMultiOptions(Fox::getModel('navigation/menugroup')->getAllStatuses());
     $sort_order = new Zend_Form_Element_Text('sort_order', array('class' => 'required', 'maxlength' => 200));
     $sort_order->setRequired(true)->setLabel('Sort Order')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $key = new Zend_Form_Element_Text('key', array('class' => 'required', 'maxlength' => 200));
     $key->setRequired(true)->setLabel('Key')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $description = new Zend_Form_Element_Textarea('description', array('cols' => '60', 'rows' => '10'));
     $subForm1->addElements(array($idField, $name, $sort_order, $key, $status, $description));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $userId = $this->getRequest()->getParam('id', FALSE);
     $form->setName('admin_user')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('User Information');
     $subForm1->setDescription('General User Information');
     $subForm2 = new Zend_Form_SubForm();
     $subForm2->setLegend('User Role');
     $subForm2->setDescription('User Role');
     $idField = new Zend_Form_Element_Hidden('id');
     $username = new Zend_Form_Element_Text('username', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $username->setRequired(true)->setLabel('Username')->addFilter('StripTags')->addFilter('StringTrim')->setDescription('Username should be unique')->addValidator('NotEmpty');
     $firstname = new Zend_Form_Element_Text('firstname', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $firstname->setRequired(true)->setLabel('First Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $lastname = new Zend_Form_Element_Text('lastname', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $lastname->setRequired(true)->setLabel('Last Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $password = new Zend_Form_Element_Password('password', array('size' => '30', 'maxlength' => 200, 'class' => !$userId ? 'required' : ''));
     if (!$userId) {
         $password->setRequired(true);
     }
     $password->setLabel('Password')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $cPassword = new Zend_Form_Element_Password('c_password', array('size' => '30', 'maxlength' => 200, 'class' => !$userId ? 'required' : ''));
     if (!$userId) {
         $cPassword->setRequired(true);
     }
     $cPassword->setLabel('Confirm Password')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $email = new Zend_Form_Element_Text('email', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $email->setRequired(true)->setLabel('Email ID')->addFilter('StripTags')->setDescription('Email ID should be unique')->addFilter('StringTrim')->addValidator('NotEmpty');
     $contact = new Zend_Form_Element_Text('contact', array('size' => '30', 'maxlength' => 200));
     $contact->setLabel('Contact')->addFilter('StripTags')->addFilter('StringTrim');
     $status = new Zend_Form_Element_Select('status', array('class' => 'required'));
     $status->setRequired(true)->setLabel('Status')->setMultiOptions(Fox::getModel('admin/user')->getAllStatuses());
     $roleId = new Zend_Form_Element_Select('role_id', array('class' => 'required'));
     $roleId->setRequired(true)->setLabel('Role')->setMultiOptions(Fox::getModel('admin/role')->getUserRole());
     $subForm1->addElements(array($idField, $username, $firstname, $lastname, $email, $password, $cPassword, $contact, $status));
     $subForm2->addElements(array($roleId));
     $form->addSubForm($subForm1, 'subform1');
     $form->addSubForm($subForm2, 'subform2');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('contact_reply')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Contact Information');
     $subForm1->setDescription('Contact Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $name = new Zend_Form_Element_Text('name', array('size' => '30', 'maxlength' => 200, 'class' => 'required', 'readonly' => 'readonly'));
     $name->setRequired(true)->setLabel('Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $email = new Zend_Form_Element_Text('email', array('size' => '30', 'maxlength' => 200, 'class' => 'email required', 'readonly' => 'readonly'));
     $email->setRequired(true)->setLabel('Email')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subject = new Zend_Form_Element_Text('subject', array('size' => '30', 'maxlength' => 200, 'class' => 'required', 'readonly' => 'readonly'));
     $subject->setRequired(true)->setLabel('Subject')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $message = new Zend_Form_Element_Textarea('message', array('cols' => '30', 'rows' => '5', 'class' => 'required', 'readonly' => 'readonly'));
     $message->setRequired(true)->setLabel('Message')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $reply = new Zend_Form_Element_Textarea('reply_message', array('cols' => '30', 'rows' => '5', 'class' => 'required'));
     $reply->setRequired(true)->setLabel('Reply Message')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subForm1->addElements(array($idField, $name, $subject, $email, $message, $reply));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('change_password')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Change Member Password');
     $subForm1->setDescription('Change Member Password');
     $idField = new Zend_Form_Element_Hidden('id');
     $emailFieldOptions = array('size' => '30', 'maxlength' => 200, 'class' => 'required email');
     if ($this->getRequest()->getParam('id') && Fox::getModel('member/member')->load($this->getRequest()->getParam('id'))) {
         $emailFieldOptions['readonly'] = 'readonly';
     }
     $emailId = new Zend_Form_Element_Text('email_id', $emailFieldOptions);
     $emailId->setRequired(true)->setLabel('Email Id')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $password = new Zend_Form_Element_Password('password', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $password->setRequired(true)->setLabel('Password')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $cPassword = new Zend_Form_Element_Password('c_password', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $cPassword->setRequired(true)->setLabel('Confirm Password')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subForm1->addElements(array($idField, $emailId, $password, $cPassword));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('newsletter_template')->setMethod('post');
     $subForm1 = new Uni_Core_Form_SubForm();
     $subForm1->setLegend('Newsletter Template Information');
     $subForm1->setDescription('Newsletter Template Information');
     $id = new Zend_Form_Element_Hidden('id');
     $name = new Zend_Form_Element_Text('name', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $name->setRequired(true)->setLabel('Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subject = new Zend_Form_Element_Text('subject', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $subject->setRequired(true)->setLabel('Subject')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $sender_name = new Zend_Form_Element_Text('sender_name', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $sender_name->setRequired(true)->setLabel('Sender Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $sender_email = new Zend_Form_Element_Text('sender_email', array('size' => '30', 'maxlength' => 200, 'class' => 'required email'));
     $sender_email->setRequired(true)->setLabel('Sender Email')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $content = new Uni_Core_Form_Element_Editor('content', array('cols' => '50', 'rows' => '20', 'class' => 'required'));
     $content->setRequired(true)->setLabel('Content');
     $subForm1->addElements(array($id, $name, $subject, $sender_name, $sender_email, $content));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('news')->setMethod('post');
     $subForm1 = new Uni_Core_Form_SubForm();
     $subForm1->setLegend('News Information');
     $subForm1->setDescription('News Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $title = new Zend_Form_Element_Text('title', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $title->setRequired(true)->setLabel('Title')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $content = new Uni_Core_Form_Element_Editor('content', array('cols' => '50', 'rows' => '20', 'class' => 'required'));
     $content->setRequired(true)->setLabel('Content');
     $dateFrom = new Uni_Core_Form_Element_Date('date_from');
     $dateFrom->setLabel('Date From')->addFilter('StripTags')->addFilter('StringTrim')->setDescription('Must Be less than Date To')->addValidator('NotEmpty');
     $dateTo = new Uni_Core_Form_Element_Date('date_to');
     $dateTo->setLabel('Date To')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $sort_order = new Zend_Form_Element_Text('sort_order', array('size' => '30', 'maxlength' => 200, 'class' => 'integer'));
     $sort_order->setLabel('Sort Order')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $status = new Zend_Form_Element_Select('status', array('class' => 'required'));
     $status->setRequired(true)->setLabel('Status')->setMultiOptions(Fox::getModel('news/news')->getAllStatuses());
     $subForm1->addElements(array($idField, $title, $dateFrom, $dateTo, $content, $sort_order, $status));
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('admin_Role')->setMethod('post');
     $subForm1 = new Uni_Core_Form_SubForm();
     $subForm1->setLegend('Role Information');
     $subForm1->setDescription('General Role Information');
     $subForm2 = new Uni_Core_Form_SubForm();
     $subForm2->setLegend('Role Resources');
     $subForm2->setDescription('Role Resources');
     $idField = new Zend_Form_Element_Hidden('id');
     $resourceIds = new Zend_Form_Element_Hidden('resource_ids');
     $name = new Zend_Form_Element_Text('name', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $name->setRequired(true)->setLabel('Role Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $access = new Zend_Form_Element_Select('resource_access', array('class' => 'required'));
     $access->setRequired(true)->setLabel('Resource Access')->setMultiOptions(Fox::getModel('admin/role')->getRoleAccess());
     $subForm1->addElements(array($idField, $name, $resourceIds));
     $treeView = Fox::getView('admin/system/role/add/tree');
     $subForm2->addElements(array($access));
     $subForm2->addSubView($treeView);
     $form->addSubForm($subForm1, 'subform1');
     $form->addSubForm($subForm2, 'subform2');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('admin_email_template')->setMethod('post');
     $id = $this->getRequest()->getParam('id');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Email Template Information');
     $subForm1->setDescription('Email Template Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $templateName = new Zend_Form_Element_Select('template_name', array('onchange' => 'getTemplateRecord(this)'));
     $templateName->setRequired(false)->setLabel('Template Name')->setDescription('Choose existing template to load its content')->setMultiOptions(Fox::getModel('core/email/template')->getAllTemplates());
     $name = new Zend_Form_Element_Text('name', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $name->setRequired(true)->setLabel('Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subject = new Zend_Form_Element_Text('subject', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $subject->setRequired(true)->setLabel('Subject')->addValidator('NotEmpty');
     $content = new Uni_Core_Form_Element_Editor('content', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $content->setRequired(true)->setLabel('Content')->addValidator('NotEmpty');
     if (!$id) {
         $subForm1->addElements(array($idField, $templateName, $name, $subject, $content));
     } else {
         $subForm1->addElements(array($idField, $name, $subject, $content));
     }
     $form->addSubForm($subForm1, 'subform1');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('cms_page')->setMethod('post');
     $subForm1 = new Zend_Form_SubForm();
     $subForm1->setLegend('Page Information');
     $subForm1->setDescription('Page Information');
     $subForm2 = new Zend_Form_SubForm();
     $subForm2->setLegend('Layout Settings');
     $subForm2->setDescription('Page Layout Settings');
     $subForm3 = new Zend_Form_SubForm();
     $subForm3->setLegend('Meta Data');
     $subForm3->setDescription('Page Meta Data Information');
     $idField = new Zend_Form_Element_Hidden('id');
     $title = new Zend_Form_Element_Text('title', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $title->setRequired(true)->setLabel('Title')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $urlKey = new Zend_Form_Element_Text('url_key', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $urlKey->setRequired(true)->setLabel('Url Key')->addFilter('StripTags')->setDescription('Relative to Website Base URL')->addFilter('StringTrim')->addValidator('NotEmpty');
     $content = new Uni_Core_Form_Element_Editor('content', array('cols' => '50', 'rows' => '20', 'class' => 'required'));
     $content->setRequired(true)->setLabel('Content');
     $layout = new Zend_Form_Element_Select('layout', array('class' => 'required'));
     $layout->setLabel('Layout')->setRequired(true)->setMultiOptions(Fox::getModel('cms/page')->getAvailableLayouts());
     $layoutUpdate = new Zend_Form_Element_Textarea('layout_update', array('cols' => '60', 'rows' => '10'));
     $layoutUpdate->setLabel('Layout Update');
     $metaKey = new Zend_Form_Element_Textarea('meta_keywords', array('cols' => '60', 'rows' => '5'));
     $metaKey->setLabel('Meta Keywords')->addFilter('StripTags')->addFilter('StringTrim');
     $metaDesc = new Zend_Form_Element_Textarea('meta_description', array('cols' => '60', 'rows' => '5'));
     $metaDesc->setLabel('Meta Description')->addFilter('StripTags')->addFilter('StringTrim');
     $status = new Zend_Form_Element_Select('status', array('class' => 'required'));
     $status->setRequired(true)->setLabel('Status')->setMultiOptions(Fox::getModel('cms/page')->getAllStatuses());
     $subForm1->addElements(array($idField, $title, $urlKey, $content, $status));
     $subForm2->addElements(array($layout, $layoutUpdate));
     $subForm3->addElements(array($metaKey, $metaDesc));
     $form->addSubForm($subForm1, 'subform1');
     $form->addSubForm($subForm2, 'subform2');
     $form->addSubForm($subForm3, 'subform3');
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     $form->setName('generate_package')->setMethod('post');
     $form->setEnctype(Zend_Form::ENCTYPE_MULTIPART);
     $subForm1 = new Uni_Core_Form_SubForm();
     $subForm1->setLegend('General Information');
     $subForm1->setDescription('General Information');
     $id = new Zend_Form_Element_Hidden('id');
     $name = new Zend_Form_Element_Text('name', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $name->setRequired(true)->setLabel('Package Name')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $license = new Zend_Form_Element_Text('license', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $license->setRequired(true)->setLabel('License')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $licenseUrl = new Zend_Form_Element_Text('license_url', array('size' => '30', 'maxlength' => 200, 'class' => 'url'));
     $licenseUrl->setLabel('License Url')->addFilter('StripTags')->addFilter('StringTrim');
     $description = new Zend_Form_Element_Textarea('description', array('cols' => '30', 'rows' => '5', 'class' => 'required'));
     $description->setRequired(true)->setLabel('Description')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $summary = new Zend_Form_Element_Textarea('summary', array('cols' => '30', 'rows' => '3', 'class' => 'required'));
     $summary->setRequired(true)->setLabel('Summary')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subForm1->addElements(array($id, $name, $description, $summary, $license, $licenseUrl));
     $subForm2 = new Uni_Core_Form_SubForm();
     $subForm2->setLegend('Release');
     $subForm2->setDescription('Release Information');
     $version = new Zend_Form_Element_Text('version', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
     $version->setRequired(true)->setLabel('Version')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty')->setDescription("Must be x.x.x.x");
     $stability = new Zend_Form_Element_Select('stability', array('class' => 'required'));
     $stability->setRequired(true)->setLabel('Stability')->setMultiOptions(Fox::getModel('extensionmanager/package/state')->_getOptionArray());
     $releaseNote = new Zend_Form_Element_Textarea('release_note', array('cols' => '30', 'rows' => '5', 'class' => 'required'));
     $releaseNote->setRequired(true)->setLabel('Note')->addFilter('StripTags')->addFilter('StringTrim')->addValidator('NotEmpty');
     $subForm2->addElements(array($version, $stability, $releaseNote));
     $subForm3 = new Uni_Core_Form_SubForm();
     $subForm3->setLegend('Contents');
     $subForm3->setDescription('Contents');
     $contentsView = Fox::getView('extensionmanager/admin/generate/add/contents');
     $contentsView->setId("package-contents");
     $subForm3->addSubView($contentsView);
     /*
             $subForm4 = new Uni_Core_Form_SubForm();
             $subForm4->setLegend('Dependencies');
             $subForm4->setDescription('Dependencies');
             
             $minPhpVersion = new Zend_Form_Element_Text('min_php_version', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
             $minPhpVersion->setRequired(true)
            ->setLabel('Min Php Version')
            ->addFilter('StripTags')
            ->addFilter('StringTrim');
             $maxPhpVersion = new Zend_Form_Element_Text('max_php_version', array('size' => '30', 'maxlength' => 200, 'class' => 'required'));
             $maxPhpVersion->setRequired(true)
            ->setLabel('Max Php Version')
            ->addFilter('StripTags')
            ->addFilter('StringTrim');
     
     $subForm4->addElements(array($minPhpVersion, $maxPhpVersion));
     */
     $subForm5 = new Uni_Core_Form_SubForm();
     $subForm5->setLegend('Provider Information');
     $subForm5->setDescription('Provider Information');
     $providerView = Fox::getView('extensionmanager/admin/generate/add/providers');
     $providerView->setId("package-provider");
     $subForm5->addSubView($providerView);
     $providerNote = new Zend_Form_Element_Textarea('provider_note', array('cols' => '30', 'rows' => '5'));
     $providerNote->setLabel('Note')->addFilter('StripTags')->addFilter('StringTrim');
     $subForm5->addElements(array($providerNote));
     $form->addSubForms(array('general' => $subForm1, 'release' => $subForm2, 'provider' => $subForm5, 'content' => $subForm3));
     if ($formData = Fox::getModel('extensionmanager/session')->getFormData()) {
         $form->setFormData($formData);
     }
     parent::_prepareForm($form);
 }
 /**
  * Prepare form
  * 
  * @param Uni_Core_Form $form 
  */
 protected function _prepareForm(Uni_Core_Form $form)
 {
     if (NULL == $this->id) {
         $this->setId(get_class($this));
     }
     $form->setAttrib('id', $this->id);
     $model = Fox::getModel($this->modelKey);
     if ($formData = Fox::getModel('core/session')->getFormData()) {
         Fox::getModel('core/session')->setFormData(NULL);
         $form->setFormData($formData);
     } else {
         if ($model && $model->getId()) {
             $form->setModel($model);
         }
     }
 }