コード例 #1
0
 /**
  * IS: Parameter name, email, subject terdeklarasi
  * FS: Mengirimkan ke viewer: success
  * Desc: Fungsi untuk melakukan mengirimkan email kepada administrator dan
  *       melakukan penyimpanan data di tabel Contact
  * 
  * @param Zend_Request $request
  */
 private function _sendMessage($request)
 {
     // Model
     $contactSubject = new Model_DbTable_ContactSubject();
     $contactDb = new Model_DbTable_Contact();
     // Data
     $fromName = $this->_getParam('name');
     $fromEmail = $this->_getParam('email');
     $subject = '[Budaya Indonesia] New comment with topic: ' . $contactSubject->getNameById($this->_getParam('subject'));
     if (APPLICATION_ENV == 'development') {
         $to = array('*****@*****.**');
     }
     // Jika email tidak diblacklist
     //$sendEmail = parent::_sendEmail($msg, $fromName, $fromEmail, $subject, $to);
     $contactDb->insertContact($request->getPost());
     $this->view->success = true;
     //    if ($sendEmail) {
     // Masukkan data ke tabel
     //    }
 }
コード例 #2
0
 /**
  * Fungsi inisialisasi form
  */
 public function init()
 {
     parent::init();
     $langId = Zend_Registry::get('languageId');
     if ($langId == 2) {
         // English
         $textrealnamereg = 'Name';
         $textwebs = 'Website (Optional):';
         $textcountryreg = 'Country';
         $textselectcountryreg = 'Choose Country';
         $textreg = 'Submit';
         $textsubj = 'Subject:';
         $textsubjcolm = 'Choose Country';
         $textmsg = 'Message:';
     } else {
         $textrealnamereg = 'Nama';
         $textwebs = 'Website (Tidak Wajib):';
         $textcountryreg = 'Negara';
         $textselectcountryreg = 'Pilih Negara Anda';
         $textreg = 'Kirim';
         $textsubj = 'Subyek:';
         $textsubjcolm = 'Choose Country';
         $textmsg = 'Pesan:';
     }
     // Form Attribute
     $this->setMethod('post');
     $this->addAttribs(array('id' => 'inputForm', 'action' => $this->_baseUrlHelper->baseUrl() . '/contact-us/index'));
     $this->setAttrib('accept-charset', 'utf-8');
     // Element Form
     // -> Name
     $name = $this->createElement('text', 'name');
     $name->setLabel($textrealnamereg)->setRequired(true);
     $this->addElement($name);
     // -> Email
     $email = $this->createElement('text', 'email');
     $email->setLabel('Email:')->setRequired(true)->addValidator(new Zend_Validate_EmailAddress());
     $this->addElement($email);
     // -> Website
     $website = $this->createElement('text', 'website');
     $website->setLabel($textwebs)->addValidator(new Budpar_Form_Validator_Url());
     $this->addElement($website);
     // -> Country
     // ----> Model Country
     //        $country = $this->createElement('select', 'country');
     //        $country->setLabel($textcountryreg)
     //                ->setRequired(true)
     //                ->setMultiOptions($countryData);
     //        $this->addElement($country);
     // -> Subject
     $contactSubjectDb = new Model_DbTable_ContactSubject();
     $subjectData = $contactSubjectDb->getAllForForm($langId);
     $subject = $this->createElement('select', 'subject');
     $subject->setLabel($textsubj)->setRequired(true)->setMultiOptions($subjectData);
     $this->addElement($subject);
     // -> Message
     $message = $this->createElement('textarea', 'comment');
     $message->setLabel($textmsg)->setRequired(true);
     $message->setAttrib('rows', 15);
     $this->addElement($message);
     // -> Captcha
     $publicKey = Zend_Registry::get('recaptcha_public_key');
     $privateKey = Zend_Registry::get('recaptcha_private_key');
     $recaptcha = new Zend_Service_ReCaptcha($publicKey, $privateKey);
     $captcha = new Zend_Form_Element_Captcha('captcha', array('captcha' => 'ReCaptcha', 'captchaOptions' => array('captcha' => 'ReCaptcha', 'service' => $recaptcha)));
     $this->addElement($captcha);
     // -> Submit
     $submit = $this->createElement('submit', 'submit');
     $submit->setLabel($textreg)->removeDecorator('Label')->setOptions(array('class' => 'button button-grey'));
     $this->addElement($submit);
 }