public function indexAction() { $commentModel = new Admin_Model_Comment(); $this->view->comments = $commentModel->fetchAll(K_Db_Select::create()->where(array('comment_status' => 'опубликован'))->order('comment_date DESC')); $capchaText = K_Secur::genCapchaText(); $this->view->capacha64 = K_Secur::genCapcha($capchaText); K_Auth::setUserKey('capchaText', $capchaText); K_Auth::setUserKey('capchaTime', time()); }
public function ask() { if (!K_Request::isPost()) { $this->putAjax('ERROR'); } // var_dump( $_POST['capcha']);var_dump(K_Auth::getUserInfo('capchaText')); if (strcasecmp(trim($_POST['capcha']), K_Auth::getUserInfo('capchaText')) != 0 || time() - 300 > K_Auth::getUserInfo('capchaTime')) { $jsonReturn['error'] = true; $jsonReturn['msg'] = array(1 => array('label' => t('Символы с картинки', 'Символи з картинки'), 'error' => t('Неправильно введён код с картинки !!!', 'Неправильно введений код з малюнка !!!'))); $capchaText = K_Secur::genCapchaText(); K_Auth::setUserKey('capchaText', $capchaText); K_Auth::setUserKey('capchaTime', time()); $jsonReturn['callback'] = 'function callback(){$("#captcha-img").attr("src","data:image/png;base64,' . K_Secur::genCapcha($capchaText) . '");$("#capcha-text").val("")}'; if (K_Request::isAjax()) { $this->putJSON($jsonReturn); } else { K_Request::redirect('/'); } } $nameAccos = array('userName' => t('Ваше имя:', "Ваше ім'я:"), 'userContact' => t('Ваш E-mail*:', 'Ваш E-mail*:'), 'userPhone' => t('Ваш Телефон*:', 'Ваш Телефон*:'), 'userMessage' => t('Ваше сообщение:', 'Ваше повідомлення:')); $data = array('userName' => trim($_POST['userName']), 'userContact' => trim($_POST['userContact']), 'userPhone' => trim($_POST['userPhone']), 'userMessage' => trim($_POST['userMessage']), 'manager_email' => trim($_POST['manager_email'])); $managers = K_TreeQuery::crt('/manager/')->types('manager')->go(); foreach ($managers as $v) { $managerMails[] = $v['email']; } $validate = array('userName' => array('maxlen' => 255), 'userContact' => array('required' => true, 'notEmpty', 'email'), 'userPhone' => array('required' => true, 'notEmpty', 'phone'), 'userMessage' => array('required' => true, 'notEmpty', 'maxlen' => 1500), 'manager_email' => array('required' => true, 'notEmpty', 'enum' => $managerMails)); $commentModel = new Admin_Model_Valid(); if ($commentModel->isValidRow($data, $validate)) { $jsonReturn['error'] = false; $jsonReturn['msg'] = t("Ваш вопрос был отправлено успешно. Спасибо.", "Ваше питання було надіслано успішно. Спасибi."); $jsonReturn['clean'] = true; //Send mail /////////////////////////////////////////////////////////////////// $toMail = strip_tags(trim($data['manager_email'])); $mailText = 'Вам на сайт добавили вопрос. /r /n'; $mailText .= 'Имя:' . strip_tags($data['userName']) . ' /r /n'; $mailText .= 'E-mail:' . strip_tags($data['userContact']) . ' /r /n'; $mailText .= 'Телефон:' . strip_tags($data['userPhone']) . ' /r /n'; $mailText .= ' Сообщение: /r /n' . strip_tags($data['userMessage']); $mailer = new K_mail(); $mailer->setBody($mailText); $mailer->addTo($toMail); $mailer->send('*****@*****.**', 'На ваш сайт добавили новый вопрос'); //////////////////////////////////////////////////////////////// } else { $jsonReturn['error'] = true; $jsonReturn['msg'] = $commentModel->getErrorsD($nameAccos); } if (K_Request::isAjax()) { $this->putJSON($jsonReturn); } else { K_Request::redirect('/'); } }