function productAction() { $img_id = $_SESSION['imag_id']; $imgAccount = ImgAccountUtil::getImgAccountById($img_id, TRUE); $v_params['sys_name'] = SysPropertiesUtil::getPropertyValue("sys_name"); $v_params['sys_slog'] = SysPropertiesUtil::getPropertyValue("sys_slog"); $v_params['img_gds'] = ImgGdsUtil::getImgGdsByIdAndAccountId($_REQUEST[PRODUCT_PARAM_NAME], $imgAccount['id']); if (NULL != $imgAccount && NULL != $v_params['img_gds']) { $v_params['logined'] = LoginChecker::isLogined(); $v_params['in_card_count'] = CardCounter::countGDSinCard(); if ($v_params['logined'] == $img_id) { $v_params['mysc']['main'] = TRUE; } $v_params['show_add_gds'] = !isset($_COOKIE["gds" . $_REQUEST[PRODUCT_PARAM_NAME]]); $v_params['img_name'] = $imgAccount['img_name']; $v_params['img_slog'] = $imgAccount['img_slog']; $v_params['img_all_gds_cats_href'] = "/" . IMAG_PREFIX . $img_id . "/" . IMAG_DIR; $v_params['img_gds_cats_HTML'] = ImgGdsCatUtil::createTreeHTML($imgAccount['id'], "/" . IMAG_PREFIX . $img_id . "/" . IMAG_DIR . "?" . PROD_CAT_PARAM_NAME . "="); $v_params['img_all_blog_cats_href'] = "/" . IMAG_PREFIX . $img_id . "/" . BLOG_DIR; $v_params['img_blog_cats_HTML'] = ImgBlogCatUtil::createTreeHTML($imgAccount['id'], "/" . IMAG_PREFIX . $img_id . "/" . BLOG_DIR . "?" . ART_CAT_PARAM_NAME . "="); $v_params['img_root_url'] = "/" . IMAG_PREFIX . $img_id . "/"; $v_params['img_gds_breadcrump_HTML'] = ImgGdsCatUtil::createBreadcrumpHTMLByProductId($imgAccount['id'], $_REQUEST[PRODUCT_PARAM_NAME]); $v_params['img_gds_props'] = ImgGdsPropUtil::getImgGdsProps($_REQUEST[PRODUCT_PARAM_NAME]); $v_params['img_gdss_smil'] = ImgGdsUtil::getSmilaryImgGdss($imgAccount['id'], $v_params['img_gds']['img_gds_cat_id'], $_REQUEST[PRODUCT_PARAM_NAME]); $v_params['img_gds_link'] = "/" . IMAG_PREFIX . $imgAccount['id'] . "/" . PRODUCT_DIR . "?" . PRODUCT_PARAM_NAME . "="; $v_params['img_gds_descr'] = ImgGdsUtil::getDescriptionOfImgGds($_REQUEST[PRODUCT_PARAM_NAME]); Application::fastView('imags/img_product', $v_params); } else { Application::fastView('main/sys_error', NULL); } }
function orderAction() { $img_id = $_SESSION['imag_id']; $imgAccount = ImgAccountUtil::getImgAccountById($img_id, TRUE); $v_params['sys_name'] = SysPropertiesUtil::getPropertyValue("sys_name"); $v_params['sys_slog'] = SysPropertiesUtil::getPropertyValue("sys_slog"); if (NULL != $imgAccount) { $v_params['logined'] = LoginChecker::isLogined(); if ($v_params['logined'] == $img_id) { $v_params['mysc']['main'] = TRUE; $v_params['img_name'] = $imgAccount['img_name']; $v_params['img_all_gds_cats_href'] = "/" . IMAG_PREFIX . $img_id . "/" . IMAG_DIR; $v_params['img_all_blog_cats_href'] = "/" . IMAG_PREFIX . $img_id . "/" . BLOG_DIR; $v_params['img_gds_cats_HTML'] = ImgGdsCatUtil::createTreeHTML($imgAccount['id'], "/" . IMAG_PREFIX . $img_id . "/" . IMAG_DIR . "?" . PROD_CAT_PARAM_NAME . "="); $v_params['img_blog_cats_HTML'] = ImgBlogCatUtil::createTreeHTML($imgAccount['id'], "/" . IMAG_PREFIX . $img_id . "/" . BLOG_DIR . "?" . ART_CAT_PARAM_NAME . "="); if ($_GET['id']) { $order_id = $_GET['id']; $v_params['order'] = OrderUtil::getOrderById($order_id, $imgAccount['id']); $v_params['order_gdss'] = ImgGdsUtil::getImgGdssForOrder($imgAccount['id'], $order_id); if ($_POST['order_ended'] && count($v_params['order_gdss'])) { if (0 == strcmp("not_ended", $_POST['order_ended'])) { OrderAccountSendedUtil::updateOrderAccountRelation($order_id, $imgAccount['id'], 0); $v_params['order']['sended'] = 0; } else { if (0 == strcmp("ended", $_POST['order_ended'])) { OrderAccountSendedUtil::updateOrderAccountRelation($order_id, $imgAccount['id'], 1); $v_params['order']['sended'] = 1; } } } Application::fastView('imag-admin/order/img_admin_order', $v_params); exit; } } } Application::fastView('main/sys_error', $v_params); }
function orderAction() { $v_params['logined'] = LoginChecker::isLogined(); $v_params['sys_name'] = SysPropertiesUtil::getPropertyValue("sys_name"); $v_params['sys_slog'] = SysPropertiesUtil::getPropertyValue("sys_slog"); // Товары переданные в POST запросе foreach ($_POST as $req_key => $req_value) { if (0 == strcmp("gds", substr($req_key, 0, 3))) { $img_gds_id_post = (int) substr($req_key, 3); $img_gds_ids_post[] = $img_gds_id_post; $img_gds_id_map_post[$img_gds_id_post] = (int) $req_value; } } // Товары переданные в GET запросе foreach ($_GET as $req_key => $req_value) { if (0 == strcmp("gds", substr($req_key, 0, 3))) { $img_gds_id_get = (int) substr($req_key, 3); $img_gds_ids_get[] = $img_gds_id_get; $img_gds_id_map_get[$img_gds_id_get] = (int) $req_value; } } if (count($img_gds_id_map_get) && !count($img_gds_id_map_post)) { // Если есть только GET, значит переход от формы проверки корзины // рисуем просто форму заказа $v_params['img_gdss'] = ImgGdsUtil::getBasketImgGds($img_gds_ids_get); if (0 != count($v_params['img_gdss'])) { foreach ($v_params['img_gdss'] as $img_gds) { $img_gds['count_in_basket'] = $img_gds_id_map_get[$img_gds['ig_id']]; $img_gds['price_all'] = $img_gds['count_in_basket'] * $img_gds['ig_price']; $img_gds_temp[] = $img_gds; $v_params['summ'][$img_gds['ic_name']] += $img_gds['price_all']; } } $v_params['img_gdss'] = $img_gds_temp; $v_params['img_link_prefix'] = "/" . IMAG_PREFIX; Application::fastView('main/sys_order', $v_params); exit; } else { if (!count($img_gds_id_map_get) && count($img_gds_id_map_post)) { // если POST - была попытка оформить заказ if (!isset($_POST['u_email']) || 0 == strcmp("", trim($_POST['u_email']))) { $v_params['errors'][] = "Вы не ввели email, он нужен для того чтоб менеджер связался с вами."; } if (!preg_match("/^[^0-9][A-z0-9_]+([.][A-z0-9_]+)*[@][A-z0-9_]+([.][A-z0-9_]+)*[.][A-z]{2,4}\$/", $_POST['u_email'])) { $v_params['errors'][] = "Скорее всего вы ввели email не правильно, попробуйте снова."; } $resp = recaptcha_check_answer(RECAPCHA_PRIVATE_KEY, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]); if ($resp->is_valid) { foreach ($img_gds_ids_post as $img_gds_id_post) { setcookie("gds" . $img_gds_id_post, '', time() - 1); } if (count($img_gds_id_map_post)) { $order['u_email'] = $_POST['u_email']; $order['u_name'] = $_POST['u_name']; $order['u_phone'] = $_POST['u_phone']; $order['u_comment'] = $_POST['u_comment']; $order_id = OrderUtil::insertOrder($order); foreach ($img_gds_id_map_post as $img_gds_id => $img_gds_count) { $order_gds['order_id'] = $order_id; $order_gds['img_gds_id'] = $img_gds_id; $order_gds['count_gds'] = $img_gds_count; OrderGdsUtil::insertOrderGds($order_gds); } OrderAccountSendedUtil::insertOrderAccountRelation($order_id); $orderAccs = OrderAccountSendedUtil::getOrderAccsToMailMessage($order_id); foreach ($orderAccs as $orderAcc) { // Рассылка писем для владельцев стендов $mail_values['__root_url__'] = "http://" . $_SERVER["HTTP_HOST"]; $mail_values['__o_email__'] = $orderAcc['oemail']; $mail_values['__o_url__'] = "http://" . $_SERVER["HTTP_HOST"] . "/imag" . $orderAcc['accid'] . "/admin/order?id=" . $orderAcc['oid']; $mail_values['__o_num__'] = $orderAcc['oid']; MailWork::sendMailByTemplate($orderAcc['accemail'], "Новый заказ - №" . $orderAcc['oid'], "new_order.html", $mail_values); } $v_params['order_sended'] = TRUE; } } else { $v_params['errors'][] = "Картинка подтверждения была введена не правильно. Попробуйте еще раз."; } $v_params['img_gdss'] = ImgGdsUtil::getBasketImgGds($img_gds_ids_post); if (0 != count($v_params['img_gdss'])) { foreach ($v_params['img_gdss'] as $img_gds) { $img_gds['count_in_basket'] = $img_gds_id_map_post[$img_gds['ig_id']]; $img_gds['price_all'] = $img_gds['count_in_basket'] * $img_gds['ig_price']; $img_gds_temp[] = $img_gds; $v_params['summ'][$img_gds['ic_name']] += $img_gds['price_all']; } } $v_params['img_gdss'] = $img_gds_temp; $v_params['img_link_prefix'] = "/" . IMAG_PREFIX; if ($v_params['order_sended']) { $v_params['message'] = "Заказ отправлен"; $v_params['message_descr'] = "Вскоре менеджеры торговых стендов с вами свяжутся по указанному email"; Application::fastView('main/sys_message', $v_params); } else { Application::fastView('main/sys_order', $v_params); exit; } } else { $v_params['message'] = "Ошибка обработки заказа"; $v_params['message_descr'] = "Переданные данные не верны, попробуйте снова"; Application::fastView('main/sys_message', $v_params); } } }