From 643e2562a929b3f7c81db62c9908958c5dd4852d Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 21 Jun 2021 22:31:49 +0300 Subject: [PATCH] add push_ok --- app/routes/anpay.php | 48 +++++++++++++++++++++++++++--------- app/routes/order.php | 29 +++++++++++++++++++--- app/routes/sendmail.php | 5 ++-- app/views/checkout.phtml | 4 +-- app/views/order_status.phtml | 4 +-- scripts/push_mail.sh | 6 +++++ 6 files changed, 74 insertions(+), 22 deletions(-) create mode 100644 scripts/push_mail.sh diff --git a/app/routes/anpay.php b/app/routes/anpay.php index 264086f..74dc783 100644 --- a/app/routes/anpay.php +++ b/app/routes/anpay.php @@ -160,29 +160,55 @@ function resultpay_kuri(){ } +# уведомление доставлено +function push_ok($buy_id){ + + return db_get( "UPDATE `anbuy` SET `mail_status` = '1' WHERE `buy_id` = $buy_id", 'chitatel'); + +} + #оповещаем письмом об успешном заказе function sendstatus_kuri(){ - if (isset($find_order['client_id'])) { # получаем клиента - - $find_client = db_get("SELECT * FROM `clients` WHERE `client_id` = '{$find_order['client_id']}'"); - - if (isset($find_client['client_id'])){ # если удалось индефицировать клиента - if ($find_order['delivery_id'] == 1) { #электронный платеж отправляем личный кабинет + /** + * обнуление доставки заказов + * UPDATE `anbuy` SET `mail_status` = '1' WHERE `buy_status` = 1 AND `mail_status` = '0'; + **/ + + # ищем не пушнутые с Яндекс Кассы на почту заказку + $orders = db_get("SELECT * FROM `anbuy` WHERE `buy_status` = 1 AND `mail_status` = '0'"); + + foreach($orders as $order){ + + if (isset($order['buy_email'])){ # есть почта куда пушить + + if ($order['delivery_id'] == 1) { #электронный платеж отправляем личный кабинет $message = "Ваш заказ выполнен. Он доступен в Вашем личном кабинете.\n - Чтобы войти в кабинет перейдите по ссылке - ".SITE.'login'; + Чтобы войти в кабинет перейдите по ссылке - https://klam.argumenti.ru/login"; $subject = "Аргументы Недели: заказ выполнен"; - klanmail($find_order['clientmail'], $subject, $message, set('klanmail')); + $result = klanmail($order['buy_email'], $subject, $message, set('klanmail')); } else { - $message = "Ваш платеж подтвержден. Номер заказа {find_order['order_id']}\n - Сообщите его менеджеру при необходимостию"; + $message = "Ваш платеж подтвержден. Номер заказа {forder['order_id']}\n + Сообщите его менеджеру при необходимости"; $subject = "Аргументы Недели: платеж подтвержден"; - klanmail($find_order['clientmail'], $subject, $message, set('klanmail')); + $result = klanmail($order['buy_email'], $subject, $message, set('klanmail')); } + # меняем на статус доставлено + if ($result == True){ + push_ok($order['buy_id']); + } + + } + } + + return; + + + } diff --git a/app/routes/order.php b/app/routes/order.php index e5f7080..c964fdb 100644 --- a/app/routes/order.php +++ b/app/routes/order.php @@ -47,7 +47,11 @@ function checkout_kuri($priceslug, $delivery_id = 1){ else { if ($price_id['pieces'] > 0 ){ $price = $price_id['offline_price']; // бумажный прайс - $delivery = db_get("SELECT * FROM delivery WHERE delivery_id > 1"); // список доставок для бумажной версии + $delivery = delivery_list(); // список доставок для бумажной версии + + if ($delivery[$delivery_id]['delivery_price'] > 0) { + $price = $price + $delivery[$delivery_id]['delivery_price']; #надбавка за услугу + } } else{ echo 'Товара больше нет в наличии'; @@ -197,11 +201,13 @@ function checkout_kuri($priceslug, $delivery_id = 1){ if (isset($add['buy_email'])) { - $message = "Ваш платеж подтвержден. Номер заказа $order_id\n + $message = "Ваш платеж ($price руб.) подтвержден. Номер заказа $order_id.\n Сообщите его менеджеру при необходимости.\n"; $subject = "Аргументы Недели: платеж подтвержден"; $result = klanmail($add['buy_email'], $subject, $message, set('klanmail')); - // echo $result; + if ($result == True){ # сообщение отправлено + push_ok($order_id); + } } header("Location: $order_url"); // переводим на инфу про заказа @@ -244,3 +250,20 @@ function status_kuri($order_id){ } + +function delivery_list() { + + $result = []; + + $delivery = db_get("SELECT * FROM delivery WHERE delivery_id > 1"); + + foreach ($delivery as $del){ + + $key = $del['delivery_id']; + $result[$key] = $del; + + } + + return $result; +} + diff --git a/app/routes/sendmail.php b/app/routes/sendmail.php index 75ef9ee..0452f79 100644 --- a/app/routes/sendmail.php +++ b/app/routes/sendmail.php @@ -68,10 +68,9 @@ function klanmail( $mail, $subject, $message, $frommail ) { if($send->send()) - $status = 'OK'; + $status = true; else { - $status = 'NO'; - echo 'Mailer Error: ' . $send->ErrorInfo."\n"; + $status = 'Mailer Error: ' . $send->ErrorInfo."\n"; } return $status; diff --git a/app/views/checkout.phtml b/app/views/checkout.phtml index 947e71c..2dc468d 100644 --- a/app/views/checkout.phtml +++ b/app/views/checkout.phtml @@ -1,7 +1,7 @@