2025-06-16 18:28:08 +05:00

225 lines
12 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
ini_set('display_errors', 0);
/*
23.02.2025:
Переписан модуль создания заказа и отправки на электронную почту
*/
class modClass
{
static function regme()
{
$user_id = \DBmysql::getValue('SELECT `id` FROM `users` WHERE `email`=?', $_POST['email']);
if (!$user_id) {
$pwd = \core::genpassword(10);
$md5 = md5($pwd);
$user_id = \DBmysql::add("INSERT INTO `users` (`email`, `pwd`, `act`, `dostup`,`token`) VALUES (?, ?, ?, ?, ?)", array(
$_POST['email'],
$md5,
1,
'u',
$_COOKIE['token']
));
$_SESSION['dostup'] = 'u';
$_SESSION['user_id'] = $user_id;
$_SESSION['pwd'] = md5($_POST['pwd']);
$cookies = base64_encode(\json::to_j($_SESSION));
$tri_mes = time() + 31536000;
setcookie('cookies', $cookies, $tri_mes, '/', $_SERVER['SERVER_NAME']);
$txt = "Вы успешно зарегистрированы на сайте " . $_SERVER['SERVER_NAME'] . ", ваш пароль: " . $pwd;
\core::sendemail($_POST['email'], 'Регистрация на сайте ' . $_SERVER['SERVER_NAME'], $txt);
}
}
static function zakaz($user)
{
$tri_mes = time() + 31536000;
setcookie('z_inn', $_POST['inn'], $tri_mes, '/', $_SERVER['SERVER_NAME']);
setcookie('z_tel', $_POST['tel'], $tri_mes, '/', $_SERVER['SERVER_NAME']);
setcookie('z_fio', $_POST['fio'], $tri_mes, '/', $_SERVER['SERVER_NAME']);
setcookie('z_txt', $_POST['txt'], $tri_mes, '/', $_SERVER['SERVER_NAME']);
setcookie('z_adres', $_POST['adres'], $tri_mes, '/', $_SERVER['SERVER_NAME']);
setcookie('z_email', $_POST['email'], $tri_mes, '/', $_SERVER['SERVER_NAME']);
$order = \DBmysql::add("INSERT INTO `orders` (`tel`, `fio`, `user_id`, `t`, `email`, `adres_dostavki`, `dostavka`, `inn`, `org`) VALUES (?,?,?,?,?,?,?,?,?)", [
$_POST['tel'],
$_POST['fio'],
$user,
time(),
$_POST['email'],
$_POST['adres'],
$_POST['dostavka'],
$_POST['inn'],
$_POST['txt']
]);
\DBmysql::set("UPDATE `cart` SET `order`=? WHERE `user_id`=? AND `order` IS NULL", [$order, $user]);
return $order;
}
static function send($order, $user)
{
//Получаем заказчика
$ord = \DBmysql::getRow("SELECT * FROM `orders` WHERE `id`=? LIMIT 1", $order);
$table0 = '<table border=1><tr><td>№</td><td>' . $ord['id'] . '</td></tr>
<tr><td>Дата</td><td>' . date("d.m.Y", $ord['t']) . '</td></tr>
<tr><td>ИНН</td><td>' . $ord['inn'] . '</td></tr>
<tr><td>Организация</td><td>' . $ord['org'] . '</td></tr>
<tr><td>Контактное лицо</td><td>' . $ord['fio'] . '</td></tr>
<tr><td>Телефон</td><td>' . $ord['tel'] . '</td></tr>
<tr><td>Электронная почта</td><td>' . $ord['email'] . '</td></tr></table><br><br>';
//Получаем товар
$row = \DBmysql::getAll("SELECT tovar.id, tovar.title, tovar.cena, cart.kolvo, (tovar.cena * cart.kolvo) as summ FROM tovar, cart WHERE tovar.id = cart.tovar_id AND cart.user_id='" . $user . "' AND cart.order=" . $order);
$table = '<table border=1 style="width: 100%;">';
$table .= '<tr><td>ID</td><td>Товар</td><td>Количество</td><td>Цена</td><td>Сумма</td></tr>';
$c = count($row);
$itog=0;
for ($i = 0; $i < $c; $i++){
$table .= '<tr><td><a href="https://' . $_SERVER['SERVER_NAME'] . '/tovar/' . $row[$i]['id'] . '">' . $row[$i]['id'] . '</a></td><td>' . $row[$i]['title'] . '</td><td>' . $row[$i]['kolvo'] . '</td><td>' . $row[$i]['cena'] . '</td><td>' . $row[$i]['summ'] . '</td></tr>';
$itog=$itog+$row[$i]['summ'];
}
$table .= '<tr><td colspan=4></td><td><b>Итого:</b></td><td><b>' . $itog . '</b></td></tr>';
$table .= '</table>';
// \core::sendemail('1@yurecnt.ru', 'Заказ с сайта ' . $_SERVER['SERVER_NAME'], $table0 . $table);
// \core::sendemail("oksana.ligat@yandex.ru", 'Заказ с сайта ' . $_SERVER['SERVER_NAME'], $table0 . $table);
// \core::sendemail(E_ADMIN_EMAIL, 'Заказ с сайта ' . $_SERVER['SERVER_NAME'], $table0 . $table);
// \core::sendemail($_POST['email'], 'Заказ с сайта ' . $_SERVER['SERVER_NAME'], $table0 . $table);
}
}
switch (@$_POST['act']) {
case 'createOrder':
$user=($_SESSION['user_id'])?$_SESSION['user_id']:session_id();
//Создаем заказ
$id=DBmysql::add("INSERT INTO `orders` (`tel`, `fio`, `t`, `status`) VALUES (?, ?, ?, ?)", [$_POST['tel'], $_POST['fio'], time(), 0]);
DBmysql::set("UPDATE `cart` SET `order`=? WHERE `user_id`=? AND `order` IS NULL", [$id, $user]);
$table='<table border=1><tr><td>Клиент</td><td>Телефон</td></tr>';
$table.='<tr><td>' . $_POST['fio'] . '</td><td>' . $_POST['tel'] . '</td></tr></table>';
$table.='<table border=1 style="width: 100%; margin-top: 10px;"><tr><td><b>Товар</b></td><td><b>Количество</b></td><td><b>Срок</b></td><td><b>Цена</b></td><td><b>Сумма</b></td></tr>';
$array = DBmysql::getAll("SELECT tovar.title, cart.kolvo, cart.id as id, cart.tarif,cart.tovar_id FROM cart JOIN tovar ON tovar.id=cart.tovar_id WHERE cart.order=?", $id);
$c = count($array);
for ($i = 0; $i < $c; $i++) {
$m = core::j($array[$i]['json']);
$array[$i]['img'] = $m['images'][0];
$array[$i]['artikul'] = ($m['artikul']) ? $m['artikul'] : $m['code'];
$row=DBmysql::getRow("SELECT * FROM `cenaarendy` WHERE `tovar_id`=? LIMIT 1", $array[$i]['tovar_id']);
$array[$i]['mincena']=$row['ch4'];
$array[$i]['arenda']=core::j($row);
$tarif_cena=DBmysql::getValue("SELECT `" . $array[$i]['tarif'] . "` FROM `cenaarendy` WHERE `tovar_id`=? LIMIT 1", $array[$i]['tovar_id']);
$array[$i]['itog']=$tarif_cena*$array[$i]['kolvo'];
//отъиндусить код
if ($array[$i]['tarif']=='ch4')$array[$i]['srok']='До 4 часов';
if ($array[$i]['tarif']=='ch8')$array[$i]['srok']='До 8 часов';
if ($array[$i]['tarif']=='sut1')$array[$i]['srok']='До 24 часов';
if ($array[$i]['tarif']=='sut2')$array[$i]['srok']='До 48 часов';
if ($array[$i]['tarif']=='sut3')$array[$i]['srok']='До 10 дней';
if ($array[$i]['tarif']=='sut10')$array[$i]['srok']='До от 10 дней';
$table.='<tr><td>' . $array[$i]['title'] . '</td><td>' . $array[$i]['kolvo'] . '</td><td>' . $array[$i]['srok'] . '</td><td>' . $array[$i]['mincena'] . '</td><td>' . $array[$i]['itog'] . '</td></tr>';
$itog=$itog+$array[$i]['itog'];
}
$table.='<tr><td></td><td></td><td></td><td><b>Итого:</b></td><td><b>' . $itog . '</b></td></tr></table>';
core::sendemail(E_ADMIN_EMAIL, 'Заказ с сайта ' . $_SERVER['SERVER_NAME'] . ' №: ' . $id, $table);
core::sendemail('info@misterbolt.ru', 'Заказ с сайта ' . $_SERVER['SERVER_NAME'] . ' №: ' . $id, $table);
echo $id;
break;
case 'zakaz':
$user=($_SESSION['user_id'])?$_SESSION['user_id']:session_id();
$check_cart = DBmysql::getRow("SELECT `id` FROM `cart` WHERE `user_id`=? AND `order` IS NULL LIMIT 1", $user);
if ($check_cart) {
$order = modClass::zakaz($user);
modClass::send($order, $user);
echo $order;
}
break;
/* ----------------------------------------------------------------------
28.01.2024
Очистка корзины
---------------------------------------------------------------------- */
case 'clear_cart':
$session_id = ($_SESSION['user_id']) ? $_SESSION['user_id'] : session_id();
\DBmysql::set("DELETE FROM `cart` WHERE `order` IS NULL AND `user_id`=? AND `site`=?", [$session_id, $_SERVER['SERVER_NAME']]);
break;
case 'getSummFromCart':
$array = DBmysql::getAll("SELECT tovar.title, cart.kolvo, tovar.json, cart.id as id, cart.tarif,cart.tovar_id FROM cart JOIN tovar ON tovar.id=cart.tovar_id WHERE cart.order IS NULL AND cart.user_id=?", ($_SESSION['user_id'])?$_SESSION['user_id']:session_id());
$c = count($array);
for ($i = 0; $i < $c; $i++)
$itog=@$itog+($array[$i]['kolvo']*DBmysql::getValue("SELECT `" . $array[$i]['tarif'] . "` FROM `cenaarendy` WHERE `tovar_id`=? LIMIT 1", $array[$i]['tovar_id']));
$arr['c']=$c;
$arr['itog']=$itog;
echo core::j($arr);
break;
case 'change-tarif':
$user=($_SESSION['user_id'])?$_SESSION['user_id']:session_id();
DBmysql::set("UPDATE `cart` SET `tarif`=? WHERE `id`=? AND `user_id`=?", array($_POST['tarif'], $_POST['id'], $user));
$array = DBmysql::getAll("SELECT tovar.id, tovar.cena, cart.kolvo, cart.tarif FROM tovar, cart WHERE cart.user_id=? AND cart.order IS NULL AND tovar.id=cart.tovar_id", $user);
$c = count($array);
for ($i = 0; $i < $c; $i++){
$tarif_cena=DBmysql::getValue("SELECT `" . $array[$i]['tarif'] . "` FROM `cenaarendy` WHERE `tovar_id`=? LIMIT 1", $array[$i]['id']);
$itog=$itog+($array[$i]['kolvo']*$tarif_cena);
}
echo $itog;
break;
case 'change-kolvo':
$user=($_SESSION['user_id'])?$_SESSION['user_id']:session_id();
DBmysql::set("UPDATE `cart` SET `kolvo`=? WHERE `id`=? AND `user_id`=?", array($_POST['kolvo'], $_POST['id'], $user));
$array = DBmysql::getAll("SELECT tovar.id, tovar.cena, cart.kolvo, cart.tarif FROM tovar, cart WHERE cart.user_id=? AND cart.order IS NULL AND tovar.id=cart.tovar_id", $user);
$c = count($array);
for ($i = 0; $i < $c; $i++){
$tarif_cena=DBmysql::getValue("SELECT `" . $array[$i]['tarif'] . "` FROM `cenaarendy` WHERE `tovar_id`=? LIMIT 1", $array[$i]['id']);
$itog=$itog+($array[$i]['kolvo']*$tarif_cena);
}
echo $itog;
break;
case 'del-from-cart':
$session_id = ($_SESSION['user_id']) ? $_SESSION['user_id'] : session_id();
\DBmysql::set("DELETE FROM `cart` WHERE `id`=? AND `user_id`=?", array($_POST['id'], $session_id));
$res = \core::getCart();
echo $res['summ'];
break;
default:
}
/**
*
*
*
* </table><table><tr><td>ID</td><td>Товар</td><td>Артикул</td><td>Количество</td><td>Цена</td><td>Сумма</td></tr><tr><td><a href="https://tk-ligat.ru/tovar_show/1100">1100</a></td><td>Полотенца бумажные 200 шт., LAIMA (H2) ADVANCED, 2-слойные, белые, КОМПЛЕКТ 21 пачка, 22,5х21,3, Z-сложение, 111337</td><td>111337</td><td>2</td><td>3971</td><td>7942</td></tr><tr><td><a href="https://tk-ligat.ru/tovar_show/18078">18078</a></td><td>Лампа БАКТЕРИЦИДНАЯ ультрафиолетовая ЭРА UV-С, 30 Вт, G13, трубка 90 см, 48973, Б0048973</td><td>Б0048973</td><td>3</td><td>531</td><td>1593</td></tr><tr><td><a href="https://tk-ligat.ru/tovar_show/64192">64192</a></td><td>Полотенца бумажные 2-слойные, MegaPack (12 рулонов по 15 метров), LAIMA LUXE, 100% целлюлоза, 5087442</td><td>5087442</td><td>1</td><td>781</td><td>781</td></tr></table>17
*/
?>