zobrazeni textu pri uspesnem odeslani emailu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vosy
Člen | 532
+
0
-

ahoj chtel bych zobrazi zpravu o uspesnem odealsni emailu pobliz daneho formulare tak jak je to treba s errors

<blockquote n:if="$form->hasErrors()" class="bs-callout bs-callout-danger">
        <h4>Při odesílání emailu se vyskytla chyba</h4>
        {control contactForm errors}
</blockquote>
public function defaultFormSubmitted(\Vosy\Form\MyForm $form)
    {
        $presenter = $form->getPresenter();

        $vals = $form->values;

        if($form['send']->isSubmittedBy())
        {
            try
            {
                $template = new \Nette\Templating\FileTemplate(dirname(__FILE__).'/../../templates/Emails/contact.phtml');
                $template->registerFilter(new \Nette\Latte\Engine);
                $template->registerHelperLoader('Nette\Templating\Helpers::loader');
                $template->predmet = $vals->predmet;
                $template->jmeno = $vals->jmeno;
                $template->email = $vals->email;
                $template->zprava = nl2br($vals->zprava);



                $mail = new Message;
                $mail->setFrom($vals->jmeno.' <'.$vals->email.'>' )
                    ->addTo(\Glb::$DOTAZY_MAIL_TO)
                    ->setSubject($vals->predmet.' - kontakt z webu '.\Glb::$DOMAIN)
                    ->setHtmlBody($template);

                // $mail->setMailer($mailer);

                $mail->send();

                $presenter->flashMessage("Zpráva byla úspěšně odeslána.", "success");

            } catch (\Nette\Mail\SmtpException $e)
            {
                $presenter->flashMessage("Odeslání emailu selhalo, zkuste prosím později.", "error");
            }

        }

        $presenter->redirect('default');
    }

ale $presenter->flashMessage bych chtel zobrazit pobliz formulare.
ale zase ne tak by se tam zobrazovaly vsechny flashMessage.

Oli
Člen | 1215
+
0
-

Nejsem si jistej jeslti to pak odchytává všechny flash messages, ale kdyz zavolas flash nad komponentou, tak se zobrazí v komponentě, když nad presenterem tak se zobrazí u něj pokud ho invaliduješ. Používám to v komponentě zhruba takhle:

$this->flashMessage('This flash belong control');
$this->presenter->flashMessage('This flash belong presenter');
$this->presenter->invalidateControl('flashes'); // zobrazí flash pro presenter
$this->invalidateControl('control'); // zobrazí flash pro control

Říkám, nevím jestli neříkám blbosti, zatím to používám takhle a celkem funguje to :-)