コード例 #1
0
ファイル: Feedback.php プロジェクト: s4urp8n/kohana-admin
 public static function getForm()
 {
     $alert = $success = $message = $email_phone = $temp = $name = $check = false;
     /* defining variables values */
     if (!empty($_POST)) {
         $check = true;
         if (!empty($_POST['message'])) {
             $temp = self::trim($_POST['message']);
             if (!empty($temp)) {
                 $message = $temp;
             }
         }
         if (!empty($_POST['name'])) {
             $temp = self::trim($_POST['name']);
             if (!empty($temp)) {
                 $name = $temp;
             }
         }
         if (!empty($_POST['email_phone'])) {
             $temp = self::trim($_POST['email_phone']);
             if (!empty($temp)) {
                 $email_phone = $temp;
             }
         }
     }
     /* validating */
     if ($check === true) {
         if (empty($name)) {
             $alert = self::$emptyNameAlertText;
         } elseif (empty($email_phone)) {
             $alert = self::$emptyEmailPhoneAlertText;
         } elseif (empty($message)) {
             $alert = self::$emptyMessageAlertText;
         } else {
             /* spam defence */
             self::checkTable();
             $today = date('Y-m-d');
             $identity = self::getIdentity();
             $todayMessages = DB::select([DB::expr('COUNT(id)'), 'c'])->from(self::$tableName)->where('`date`', '=', $today)->where('identity', '=', $identity)->execute()->get('c');
             if ($todayMessages < self::$attempsPerDay) {
                 $model = new Model_Feedback();
                 $model->date = $today;
                 $model->message = $message;
                 $model->name = $name;
                 $model->email_phone = $email_phone;
                 $model->identity = $identity;
                 $model->save();
                 self::afterSuccess($today, $name, $email_phone, $message);
                 $message = $email_phone = $name = '';
                 $success = self::$successText;
             } else {
                 $alert = self::$spamAlertText;
             }
         }
     }
     /* rendering */
     $form = View::factory('feedback/form', ['message' => $message, 'name' => $name, 'alert' => $alert, 'success' => $success, 'email_phone' => $email_phone]);
     return $form;
 }
コード例 #2
0
 public function action_delete($id = null)
 {
     is_null($id) and Response::redirect('feedback');
     if ($feedback = Model_Feedback::find($id)) {
         $feedback->delete();
         Session::set_flash('success', 'Deleted feedback #' . $id);
     } else {
         Session::set_flash('error', 'Could not delete feedback #' . $id);
     }
     Response::redirect('feedback');
 }
コード例 #3
0
ファイル: index.php プロジェクト: daniel-rodas/rodasnet.com
 public function action_feedback()
 {
     if (Input::method() == 'POST') {
         $val = Model_Feedback::validate('create');
         if ($val->run()) {
             $feedback = Model_Feedback::forge(array('feedback' => Input::post('feedback'), 'user_id' => Input::post('user_id')));
             if ($feedback and $feedback->save()) {
                 Session::set_flash('success', 'Added feedback #' . $feedback->id . '.');
                 Response::redirect('backend/index/thankyou');
             } else {
                 Session::set_flash('error', 'Could not save feedback.');
             }
         } else {
             Session::set_flash('error', $val->error());
         }
     }
     $this->template->title = 'We Value your Feedback';
     $data['user_id'] = $this->_userId;
     $this->template->content = View::forge('backend/index/feedback/create', $data);
 }