the problem is i dont want to use viewscript, because my jquery decorator
wont be working I guess, any one can fix my approach?


swilhelm wrote:
> 
> Coincidentally, I was testing subforms on Monday.  Here is a somewhat
> contrived login form created from two subforms.
> 
> I took a slightly different approach in that I wanted the form and
> subforms created by config files and I am using a form viewscript to
> render the form. 
> 
> Code fragments below. Hope this helps.
> 
> - Steve W.
> 
> // 
>         $config = new Zend_Config_Ini(APPLICATION_PATH .
> '/config/forms.ini');
>         $this->_loginForm   = new Zend_Form($config->login->login);
>         
>         $utilConfig = new Zend_Config_Ini(APPLICATION_PATH .
> '/config/utilForms.ini');
>         
>         $this->_loginForm->addSubForm(new
> Zend_Form_SubForm($utilConfig->util->login), 'login'); 
>         $this->_loginForm->addSubForm(new
> Zend_Form_SubForm($utilConfig->util->minimalInfo), 'minimalInfo');
>         
>         $element = new Zend_Form_Element_Submit('submit');
>         $this->_loginForm->addElement($element, 'submit');
>         
>         $this->_loginForm->setDecorators( 
>                                 array( 
>                                     array('ViewScript', array('viewScript'
> => 'login/login.phtml'))
>                                 )
>         ); 
> 
> Here are my config files. Notice I am playing setting decorators.type to
> ViewHelper to test the control  element decoration.
> 
> // forms.ini
> 
> ;; Login Controller
> ;; Login Form
> login.form = "login"
> login.login.action = "identify"
> login.login.method = "post"
> ;
> login.login.elements.hidden.type = "hidden" 
> login.login.elements.hidden.options.value = "testing"
> 
> 
> // utilForms.ini
> 
> ;; login subform
> util.login.subform = true
> util.login.subform.name = "_login"
> 
> ; username element
> util.login.elements.username.type = "text"
> util.login.elements.username.options.validators.alnum.validator = "alnum"
> util.login.elements.username.options.validators.regex.validator = "regex"
> util.login.elements.username.options.validators.regex.options.pattern =
> "/^[a-z]/i"
> util.login.elements.username.options.validators.strlen.validator =
> "StringLength"
> util.login.elements.username.options.validators.strlen.options.min = "6"
> util.login.elements.username.options.validators.strlen.options.max = "20"
> util.login.elements.username.options.required = true
> util.login.elements.username.options.filters.lower.filter =
> "StringToLower"
> util.login.elements.username.options.label = "Username:"
> util.login.elements.username.options.decorators.type = "ViewHelper"
> 
> ; password element
> util.login.elements.password.type = "password"
> util.login.elements.password.options.validators.strlen.validator =
> "StringLength"
> util.login.elements.password.options.validators.strlen.options.min = "6"
> util.login.elements.password.options.required = true
> util.login.elements.password.options.label = "Password:"
> util.login.elements.password.options.decorators.type = "ViewHelper"
> 
> 
> ;; minimualInfo subForm
> 
> util.minimalInfo.subform = true
> util.minimalInfo.subform.name = "_minimalInfo"
> 
> ; email element
> util.minimalInfo.elements.email.type = "text"
> util.minimalInfo.elements.email.options.validators.notempty.validator =
> "NotEmpty"
> util.minimalInfo.elements.email.options.validators.notempty.breakChainOnFailure
> = true
> util.minimalInfo.elements.email.options.validators.strlen.validator =
> "StringLength"
> util.minimalInfo.elements.email.options.validators.strlen.options.min = 1
> util.minimalInfo.elements.email.options.validators.strlen.options.max = 50
> util.minimalInfo.elements.email.options.required = true
> util.minimalInfo.elements.email.options.label = "EMail:"
> 
> ; phone element
> util.minimalInfo.elements.phone.type = "text"
> util.minimalInfo.elements.phone.options.validators.notempty.validator =
> "NotEmpty"
> util.minimalInfo.elements.phone.options.validators.notempty.breakChainOnFailure
> = true
> util.minimalInfo.elements.phone.options.validators.strlen.validator =
> "StringLength"
> util.minimalInfo.elements.phone.options.validators.strlen.options.min = 1
> util.minimalInfo.elements.phone.options.validators.strlen.options.max = 15
> util.minimalInfo.elements.phone.options.required = false
> util.minimalInfo.elements.phone.options.label = "Phone:"
> 
> // Here is the ViewScript views/scripts/login/login.phtml
> 
> <h1><?php echo $this->escape($this->title); ?></h1>
> <?php echo $this->actionMessages();?>
> <p>Please log in here</p>
> <form action="<?php echo $this->escape($this->loginForm->getAction()); ?>"
>           method="<?php echo $this->escape($this->loginForm->getMethod());
> ?>">
>     
>     <div id="username" class="formLabel">Username:</div><?php echo
> $this->loginForm->login->username; ?><br/>
>     
>     Password:<?php echo $this->loginForm->login->password; ?><br/>
>     
>     <?php echo $this->loginForm->minimalInfo->email; ?><br/>
> 
>     <?php echo $this->loginForm->minimalInfo->phone; ?><br/>
> 
>     <?echo $this->loginForm->submit ?>
> </form>
> 
> 
> qba_rox wrote:
>> 
>> HI
>> I have one main form, and two sub forms, and I want to have a common
>> submit button. But it really doesnt display that button after render
>> action. 
>> 
>> got:
>> 
>> $this->setDecorators(array(
>>                      'FormElements',         
>>                  array('TabContainer', array(
>>                      'id'          => 'newsTabs',
>>                      'style'       => 'width: 960px;',
>>                      'jQueryParams' => array()
>>                  )),
>>              'Form',
>>              ));
>> 
>>              $submit = new Zend_Form_Element_Submit('submit');
>>              $submit->setLabel('Save');
>>              $this->addElement($submit);
>> 
>>              $this->addSubForm(new News_Form_General, 'general');
>>              $this->addSubForm(new News_Form_Content, 'content');
>> 
>> and both sub forms are displayed, bot submit element is not. help :)
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/zend-form%2C-sub-forms-and-submit-element-tp21460497p21467711.html
Sent from the Zend Framework mailing list archive at Nabble.com.

Reply via email to