-- Eugene Morgan <eugenemorganrea...@gmail.com> wrote
(on Monday, 30 November 2009, 06:35 PM -0600):
> I am working on a contact form in ZF 1.9. In one of my actions, I am
> trying to access the bootstrap by
> $this->getFrontController()->getParam('bootstrap')

Not sure why it's not working, but there's an easier way:

    $bootstrap = $this->getInvokeArg('bootstrap');

> I made some changes to the application.ini file that shouldn't affect
> anything ... but now the code above is not returning the bootstrap. In
> fact, $this->getFrontController() returns NULL -- I am not sure why?
> It was working fine before ...
> 
> Here is my application.ini file
> [production]
> phpSettings.display_startup_errors = 0
> phpSettings.display_errors = 0
> phpSettings.date.timezone = "America/Chicago"
> 
> includePaths.library = APPLICATION_PATH "/../library"
> bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
> bootstrap.class = "Bootstrap"
> 
> resources.frontController.controllerDirectory = APPLICATION_PATH 
> "/controllers"
> resources.layout.layout = "layout"
> resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
> 
> contactMail.fromAddress = cont...@xyz.com
> contactMail.fromName = Contact form
> contactMail.toAddress = a...@abc.com
> contactMail.toName = Some Name
> contactMail.subject = "Contact Form Message on xyz.com"
> 
> [staging : production]
> 
> [testing : production]
> phpSettings.display_startup_errors = 1
> phpSettings.display_errors = 1
> 
> [development : production]
> phpSettings.display_startup_errors = 1
> phpSettings.display_errors = 1
> 
> Here is the code in the action method:
> 
> 
>     public function createAction()
>     {
>         if (!$this->_request->isPost()) {
>             return $this->_forward('new');
>         }
> 
>         $form = new Form_Contact();
>         $formData = $this->_request->getPost();
>         if (!$form->isValid($formData)) {
>             return $this->_forward('new');
>         }
> 
>         // Check for honeypot to avoid spam
>         if ($form->getValue('altEmail')) {
>             return $this->_forward('spam');
>         }
> 
>         $view = new Zend_View();
>         $path = APPLICATION_PATH . '/views/scripts';
>         $view->setScriptPath($path);
>         $view->name = $form->getValue('contactName');
>         $view->phone = $form->getValue('phone');
>         $view->email = $form->getValue('email');
>         $view->comments = $form->getValue('comments');
> 
>         $bootstrap = $this->getFrontController()->getParam('bootstrap');
>         if ($bootstrap->getEnvironment() == 'production') {
>             $config = new Zend_Config($bootstrap->getOption('smtp'));
>             $mail = new Zend_Mail('utf-8');
>             $mail->setFrom($config->fromAddress, $config->fromName);
>             $mail->addTo($config->toAddress, $config->toName);
>             $mail->setSubject($config->subject);
>             $mail->setBodyHtml($view->render('mail/contact.phtml'));
>             $mail->send();
>         }
> 
>         $this->_redirector->gotoSimple('show');
>     }
> 

-- 
Matthew Weier O'Phinney
Project Lead            | matt...@zend.com
Zend Framework          | http://framework.zend.com/

Reply via email to