225 lines
12 KiB
PHP
Executable File
225 lines
12 KiB
PHP
Executable File
<?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
|
||
*/
|
||
?>
|