HosipLan

Untitled

Jan 11th, 2012
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.13 KB | None | 0 0
  1. <?php
  2.  
  3. require_once __DIR__ . '/nette.min.php';
  4. NDebugger::enable();
  5. $flashMessages = array();
  6.  
  7. function email_send(NForm $form, $email = '[email protected]') {
  8.     global $flashMessages;
  9.  
  10.     $message = new NMail();
  11.     $message->addTo($email);
  12.     $message->setFrom($form['email']->value);
  13.     $message->setHtmlBody(strip_tags($form['message']->value));
  14.  
  15.     try {
  16.         $message->send();
  17.     } catch (InvalidStateException $e) { }
  18.  
  19.     $flashMessages[] = "Děkujeme Vám za váš názor.";
  20. }
  21.  
  22. $form = new NForm;
  23.  
  24. $form->addText('name', 'Váše jméno')
  25.     ->setRequired("Nevyplnili jste Vaše jméno");
  26.  
  27. $form->addText('email', 'Váš email')
  28.     ->setDefaultValue('@')
  29.     ->setRequired("Nevyplnili jste adresu, na kterou Vám máme odpovědět")
  30.     ->addRule(NForm::EMAIL, "Omlouváme se, ale špatně jste vyplnili email");
  31.  
  32. $form->addTextArea('message', 'Vaše zpráva', 20, 10)
  33.     ->setRequired("Zapomněli jste nám napsat zprávu");
  34.  
  35. $form->addSubmit('send', 'ODESLAT');
  36. $form->onSubmit[] = callback('email_send');
  37.  
  38. $form->action .= '#ask';
  39. $form->elementPrototype->novalidate('');
  40. $form->fireEvents();
  41.  
  42. ?><!DOCTYPE html>
  43. <html>
  44. <head>
  45.     <script src="netteForms.js"></script>
  46. </head>
  47. <body>
  48.  
  49. <h2 id="ask">Chcete se na něco zeptat ?</h2>
  50. <p><i>Napište nám přímo z webu, pokusíme se Vám odpovědět co nejdříve !</i></p>
  51.  
  52. <p><?php echo implode(', ', $flashMessages); ?></p>
  53.  
  54. <?php $form->render('begin'); ?>
  55.     <div class="column-third-width">
  56.         <?php $form->render('errors'); ?>
  57.         <p>
  58.             <?php echo $form['name']->label; ?>
  59.             <?php echo $form['name']->control->class('input-text input-width-260'); ?>
  60.         </p>
  61.                            
  62.         <p>
  63.             <?php echo $form['email']->label; ?>
  64.             <?php echo $form['email']->control->class('input-text input-width-260'); ?>
  65.         </p>
  66.                            
  67.         <p>
  68.             <?php echo $form['send']->control->class('input-submit button-red'); ?>
  69.         </p>
  70.     </div>
  71.     <div class="column-two-third-width column-last">           
  72.         <p>
  73.             <?php echo $form['message']->label; ?>
  74.             <?php echo $form['message']->control->class('textarea-big required'); ?>
  75.         </p>
  76.     </div>
  77.     <div class="clear"></div>
  78.                    
  79.     <?php $form->render('end'); ?>
  80.  
  81. </body>
  82. </html>
Advertisement
Add Comment
Please, Sign In to add comment