$error = ""; if (isset($_REQUEST["forma_zakaz"])) { if (check_order_form($error)) { $client_id = add_client_if_need(1); if (!$client_id) { ErrorLogger::add('iframe_order', 'Fail to add client', $error); } if (add_order($client_id, $error)) { ob_clean(); header("location: /frame/?type=form&ok"); die; } else { ErrorLogger::add('iframe_order', 'Fail to add order', $error); } } else { ErrorLogger::add('iframe_order', 'Fail to check order form', $error); } } else { clear_saved_form(); } ?> <!-- <div class="caption_txt" id="page_caption">Заказ работы</div> --> <!--<div class="normal_txt" id="mkorder_info">--><?php // include "text_mkorder.html"; ?> <!--</div>--> <?php if (strlen($error)) { ?>
require_once DIR_FS_DOCUMENT_ROOT . "/config/constants.php"; require_once DIR_FS_CONFIGS . "db_config.php"; require_once DIR_FS_CONFIGS . "email_config.php"; require_once DIR_FS_CONFIGS . "tables.php"; require_once DIR_FS_INCLUDES . "autoloader.php"; db::connect(); set_error_handler('Components\\Classes\\ErrorLogger::all_error_handler'); set_exception_handler('Components\\Classes\\ErrorLogger::exception_handler'); if (!isset(ErrorLogger::$hostname)) { if (!isset($_SERVER) || !isset($_SERVER["HTTP_HOST"]) || $_SERVER["HTTP_HOST"] == "") { ErrorLogger::$hostname = getenv("HOSTNAME"); } else { ErrorLogger::$hostname = $_SERVER["HTTP_HOST"]; } } ErrorLogger::create_path(DIR_FS_LOGFILES, DIR_FS_DOCUMENT_ROOT); require_once DIR_FS_INCLUDES . "functions.php"; if (get_magic_quotes_gpc()) { $_GET = stripslashes_array($_GET); $_POST = stripslashes_array($_POST); $_REQUEST = stripslashes_array($_REQUEST); $_COOKIE = stripslashes_array($_COOKIE); } require_once DIR_FS_DOCUMENT_ROOT . "/default_data.php"; require_once DIR_FS_DOCUMENT_ROOT . "/gui/gui.php"; if (ENVIRONMENT == 'dev') { require_once DIR_FS_EXTENSIONS . 'PHPConsole/src/PhpConsole/__autoload.php'; $handler = PhpConsole\Handler::getInstance(); $handler->start(); $handler->getConnector()->setSourcesBasePath($_SERVER['DOCUMENT_ROOT']); }
function send_real_email($receiver_email, $receiver_name, $subj, $body, $attachments = array(), $isHTML = false, $replyTo = array()) { include_once DIR_FS_DOCUMENT_ROOT . "/frame/libs/libphpmailer.php"; $m = new PHPMailer(); $m->IsSMTP(); $m->Host = MAIL_HOST; $m->Username = MAIL_USER; $m->Password = MAIL_PASW; $m->SMTPAuth = true; if (MAIL_HOST_SSL) { $m->SMTPSecure = "ssl"; $m->Port = MAIL_HOST_SSL; } $m->CharSet = "UTF-8"; $m->AddAddress($receiver_email, $receiver_name); $m->From = FIRM_EMAIL; $m->FromName = FIRM_NAME; $m->Subject = $subj; if (!empty($replyTo)) { $m->AddReplyTo($replyTo['email'], $replyTo['name']); } if ($isHTML) { $m->MsgHTML($body); } else { $m->Body = $body; } foreach ($attachments as $file) { $m->addAttachment($file['path'], $file['name']); } $m->Send(); if ($m->IsError()) { ErrorLogger::add('email', 'Email sending failed', $m->ErrorInfo); } }
function assign_order_to_author($Frm, $Err) { if (!$Err) { $order_id = $Frm->GetNmValueI("order_id"); try { $order_info = Order::find($order_id); } catch (Exception $e) { ErrorLogger::add('assign_order_to_author', 'Sessia', $_SESSION); ErrorLogger::add('assign_order_to_author', 'REQUEST', $_REQUEST); ErrorLogger::add('assign_order_to_author', 'GET', $_GET); ErrorLogger::add('assign_order_to_author', 'POST', $_POST); $Frm->_gui->ERR("Произошла ошибка"); page_reloadAll(); } $author_id = $Frm->GetNmValueI("author_id"); $status_id = get_status_id_by_iname("ASSIGNED"); if (!$status_id) { $Frm->_gui->ERR("Статус не найден"); page_reloadAll(); } Order::update($order_id, array('author_id' => $author_id, 'status_id' => $status_id)); if ($Frm->GetNmValueI("need_offer")) { if (!AuthorOffer::findOneBy(array('order_id' => $order_id, 'author_id' => $author_id))) { AuthorOffer::create(array('order_id' => $order_id, 'author_id' => $author_id, 'price' => $order_info['cost_auth'], 'comment' => '')); } } if ($order_info['disc_id'] == 0) { $spec = $order_info['disc_user']; } else { $spec = get_discipline_name($order_info['disc_id']); } $txt = "Заказ закреплен"; if (\Components\Entity\EmailNotificationType::isPersistable(\Components\Entity\EmailNotification::TO_AUTHOR_ON_ASSIGN)) { $body = "На вас назначен заказ №" . $order_id . ' ' . ucfirst($spec) . "<br>" . "<b>Обязательно подтвердите закрепление за Вами данного заказа</b>, достаточно в ответном письме написать \"OK\""; $message_id = mls_Send("u" . $author_id, "u" . $_SESSION["user"]["data"]["id"], "На вас назначен заказ №" . $order_id . ' ' . ucfirst($spec), $body, 1, 0); Author::enqueue_message_to_email($message_id, array($author_id), \Components\Entity\EmailNotification::TO_AUTHOR_ON_ASSIGN); $txt = "Заказ закреплен, уведомление отправлено"; } $old_author_id = $Frm->GetNmValueI("old_author_id"); if ($old_author_id != 0) { if (\Components\Entity\EmailNotificationType::isPersistable(\Components\Entity\EmailNotification::TO_AUTHOR_ON_UNASSIGN)) { $message_id = mls_Send("u" . $old_author_id, "u" . $_SESSION["user"]["data"]["id"], "Вы сняты с заказа №" . $order_id, "Вас сняли с заказа №" . $order_id . "<br>Причина: " . $Frm->GetNmValueH("reason"), 1, 0); Author::enqueue_message_to_email($message_id, array($old_author_id), \Components\Entity\EmailNotification::TO_AUTHOR_ON_UNASSIGN); } } // Author::sendEmail($order_id, array($author_id), 'Закрепление заказа №' . $order_id . ' ' . ucfirst($spec), 'Заказ №' . $order_id . ' ' . ucfirst($spec) . ' закреплен за вами'); $Frm->_gui->OK($txt); redirect('index.php?section=ord&subsection=2&order=' . $order_id . '&p=3'); } }