ой уволили
This commit is contained in:
parent
70d2ae2935
commit
bc98da67ce
|
@ -4,6 +4,7 @@ declare(strict_types=1);
|
||||||
|
|
||||||
namespace app\controllers;
|
namespace app\controllers;
|
||||||
|
|
||||||
|
use app\models\Account;
|
||||||
use yii;
|
use yii;
|
||||||
use yii\filters\AccessControl;
|
use yii\filters\AccessControl;
|
||||||
use yii\web\Controller;
|
use yii\web\Controller;
|
||||||
|
@ -82,7 +83,7 @@ class CartController extends Controller
|
||||||
{
|
{
|
||||||
// Инициализация
|
// Инициализация
|
||||||
$page = yii::$app->request->get('page') ?? yii::$app->request->post('page') ?? 1;
|
$page = yii::$app->request->get('page') ?? yii::$app->request->post('page') ?? 1;
|
||||||
$account = yii::$app->user->identity;
|
$account = Account::initAccount();
|
||||||
|
|
||||||
// Поиск корзины (текущего заказа)
|
// Поиск корзины (текущего заказа)
|
||||||
$model = Order::searchByType();
|
$model = Order::searchByType();
|
||||||
|
@ -106,20 +107,45 @@ class CartController extends Controller
|
||||||
// Инициализация содержимого корзины
|
// Инициализация содержимого корзины
|
||||||
$connections = $model->content(10, $page);
|
$connections = $model->content(10, $page);
|
||||||
|
|
||||||
|
// Инициализация данных списка для выбора терминала
|
||||||
|
$delivery_to_terminal_list = $account->genListTerminalsTo();
|
||||||
|
$array_unshift_in_start = function (array &$array, string|int $key, mixed $value) {
|
||||||
|
$array = array_reverse($array, true);
|
||||||
|
$array[$key] = $value;
|
||||||
|
return $array = array_reverse($array, true);
|
||||||
|
};
|
||||||
|
$array_write_default_value = function (array &$array, string $key = 'Выберите', string $value = 'Выберите') use ($array_unshift_in_start) {
|
||||||
|
if (isset($array[$key])) {
|
||||||
|
// Смещение или ассоциация найдена
|
||||||
|
|
||||||
|
// Деинициализация
|
||||||
|
unset($array[$key]);
|
||||||
|
|
||||||
|
// Инициализация
|
||||||
|
$array_unshift_in_start($array, $key, $value);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// Сортировка по алфавиту
|
||||||
|
asort($delivery_to_terminal_list);
|
||||||
|
|
||||||
|
// Перемещение в начало массива значения "Выберите"
|
||||||
|
$array_write_default_value($delivery_to_terminal_list);
|
||||||
|
|
||||||
if (yii::$app->request->isPost) {
|
if (yii::$app->request->isPost) {
|
||||||
// POST-запрос
|
// POST-запрос
|
||||||
|
|
||||||
yii::$app->response->format = Response::FORMAT_JSON;
|
yii::$app->response->format = Response::FORMAT_JSON;
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'main' => $this->renderPartial('index', compact('model', 'connections')),
|
'main' => $this->renderPartial('index', compact('account', 'model', 'connections', 'delivery_to_terminal_list')),
|
||||||
'title' => 'Корзина',
|
'title' => 'Корзина',
|
||||||
'redirect' => '/cart',
|
'redirect' => '/cart',
|
||||||
'_csrf' => yii::$app->request->getCsrfToken()
|
'_csrf' => yii::$app->request->getCsrfToken()
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->render('index', compact('model', 'connections'));
|
return $this->render('index', compact('account', 'model', 'connections', 'delivery_to_terminal_list'));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function actionEditComm(string $catn): array|string|null
|
public function actionEditComm(string $catn): array|string|null
|
||||||
|
|
|
@ -115,6 +115,7 @@ class ProfileController extends Controller
|
||||||
// Инициализация
|
// Инициализация
|
||||||
$model = yii::$app->user->identity;
|
$model = yii::$app->user->identity;
|
||||||
$panel = yii::$app->request->post('panel') ?? yii::$app->request->get('panel');
|
$panel = yii::$app->request->post('panel') ?? yii::$app->request->get('panel');
|
||||||
|
$redirect = yii::$app->request->post('redirect') ?? yii::$app->request->get('redirect');
|
||||||
$sidebar = $this->renderPartial('sidebar');
|
$sidebar = $this->renderPartial('sidebar');
|
||||||
|
|
||||||
// Обработка настроек аккаунта
|
// Обработка настроек аккаунта
|
||||||
|
@ -172,17 +173,29 @@ class ProfileController extends Controller
|
||||||
|
|
||||||
yii::$app->response->format = Response::FORMAT_JSON;
|
yii::$app->response->format = Response::FORMAT_JSON;
|
||||||
|
|
||||||
return [
|
// Инициализация буфера вывода
|
||||||
'main' => $this->renderPartial('index', compact(
|
$return = ['_csrf' => yii::$app->request->getCsrfToken()];
|
||||||
|
|
||||||
|
if (!empty($redirect)) {
|
||||||
|
// Передан маршрут перенаправления
|
||||||
|
|
||||||
|
// Запись маршрута перенаправления
|
||||||
|
$return['redirect'] = $redirect;
|
||||||
|
|
||||||
|
if ($redirect === '/profile') {
|
||||||
|
// Перенаправление на страницу профиля
|
||||||
|
|
||||||
|
$return['main'] = $this->renderPartial('index', compact(
|
||||||
'model',
|
'model',
|
||||||
'sidebar',
|
'sidebar',
|
||||||
'delivery_to_terminal_list',
|
'delivery_to_terminal_list',
|
||||||
'import_oem_list',
|
'import_oem_list',
|
||||||
'panel'
|
'panel'
|
||||||
)),
|
));
|
||||||
'redirect' => '/profile',
|
}
|
||||||
'_csrf' => yii::$app->request->getCsrfToken()
|
}
|
||||||
];
|
|
||||||
|
return $return;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->render('index', compact(
|
return $this->render('index', compact(
|
||||||
|
|
|
@ -10,6 +10,7 @@ use yii\web\Controller;
|
||||||
use yii\web\Response;
|
use yii\web\Response;
|
||||||
|
|
||||||
use app\models\AccountForm;
|
use app\models\AccountForm;
|
||||||
|
use app\models\Order;
|
||||||
use yii\bootstrap\ActiveForm;
|
use yii\bootstrap\ActiveForm;
|
||||||
|
|
||||||
class RegistrationController extends Controller
|
class RegistrationController extends Controller
|
||||||
|
|
|
@ -23,7 +23,7 @@ class VerifyController extends Controller
|
||||||
return $this->redirect('/profile');
|
return $this->redirect('/profile');
|
||||||
}
|
}
|
||||||
|
|
||||||
return ErrorController::throw('Ошибка подтверждения регистрации', 'Код подтверждения не совпадает с тем, что мы отправили вам на почту, либо регистрация уже была подтверждена. Свяжитесь с администрацией');
|
return ErrorController::throw('Ошибка подтверждения', 'Код не совпадает с тем, что мы отправили вам на почту, либо регистрация уже была подтверждена.\n Свяжитесь с администрацией');
|
||||||
} else {
|
} else {
|
||||||
// Простой запрос
|
// Простой запрос
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ class Request extends Document
|
||||||
parent::attributeLabels(),
|
parent::attributeLabels(),
|
||||||
[
|
[
|
||||||
'name' => 'ФИО',
|
'name' => 'ФИО',
|
||||||
'phon' => 'Номер',
|
'phon' => 'Телефон',
|
||||||
'mail' => 'Почта',
|
'mail' => 'Почта',
|
||||||
'file' => 'Карточка предприятия'
|
'file' => 'Карточка предприятия'
|
||||||
]
|
]
|
||||||
|
|
|
@ -1,6 +1,9 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
use yii;
|
use yii;
|
||||||
|
use yii\bootstrap\ActiveForm;
|
||||||
|
|
||||||
use app\models\connection\Dellin;
|
use app\models\connection\Dellin;
|
||||||
|
|
||||||
|
@ -11,7 +14,7 @@ use DateTime;
|
||||||
<link href="/css/pages/cart.css" rel="stylesheet">
|
<link href="/css/pages/cart.css" rel="stylesheet">
|
||||||
|
|
||||||
<div id="page_cart" class="container mb-auto py-3">
|
<div id="page_cart" class="container mb-auto py-3">
|
||||||
<article class="py-3 px-4 rounded">
|
<article class="p-4 rounded">
|
||||||
<h4 class="ml-4 mt-2 mb-4"><i class="fas fa-shopping-cart mr-2"></i>Корзина</h4>
|
<h4 class="ml-4 mt-2 mb-4"><i class="fas fa-shopping-cart mr-2"></i>Корзина</h4>
|
||||||
<div class="col mb-4 list rounded overflow-hidden">
|
<div class="col mb-4 list rounded overflow-hidden">
|
||||||
<div class="row py-2">
|
<div class="row py-2">
|
||||||
|
@ -211,7 +214,8 @@ use DateTime;
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-2 mx-0">
|
|
||||||
|
<div class="row mb-3 mx-0">
|
||||||
<select id="cart_list_action" class="form-control mr-3 button_clean w-auto" name="CartListAction">
|
<select id="cart_list_action" class="form-control mr-3 button_clean w-auto" name="CartListAction">
|
||||||
<option value="none" hidden>Действие с выбранными</option>
|
<option value="none" hidden>Действие с выбранными</option>
|
||||||
<option value="delete" onclick="return cart_list_delete();">Удалить</option>
|
<option value="delete" onclick="return cart_list_delete();">Удалить</option>
|
||||||
|
@ -219,25 +223,79 @@ use DateTime;
|
||||||
<a class="mr-3 btn button_red button_clean" title="Очистить корзину" href="/cart" role="button" onclick="return cart_delete();">
|
<a class="mr-3 btn button_red button_clean" title="Очистить корзину" href="/cart" role="button" onclick="return cart_delete();">
|
||||||
Очистить
|
Очистить
|
||||||
</a>
|
</a>
|
||||||
<p class="ml-auto mr-3 cart_field_cost">
|
</div>
|
||||||
|
|
||||||
|
<div class="dropdown-divider mb-3"></div>
|
||||||
|
|
||||||
|
<div class="p-3 mx-0 row">
|
||||||
|
<div id="cart_registration_menu" class="mr-5 col px-0">
|
||||||
|
<div class="row mb-4 mx-0">
|
||||||
|
<label class="ml-auto btn button_white mb-0 mr-4" for="cart_registration_individual">Физическое лицо</label>
|
||||||
|
<label class="mr-auto btn button_white mb-0" for="cart_registration_entity" onclick="cart_registration_entity_init(<?= $account['_key'] ?>)">Юридическое лицо</label>
|
||||||
|
</div>
|
||||||
|
<div class="cart_registration_content d-flex">
|
||||||
|
<input type="radio" id="cart_registration_individual" name="registration_panel" />
|
||||||
|
<div id="cart_registration_individual_body" class="col"></div>
|
||||||
|
<input type="radio" id="cart_registration_entity" name="registration_panel" checked />
|
||||||
|
<div id="cart_registration_entity_body" class="col"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-4 px-0 d-flex flex-column">
|
||||||
|
<div class="mb-3 mx-0 row mt-auto">
|
||||||
|
<?php $form = ActiveForm::begin([
|
||||||
|
'id' => 'form_profile_settings',
|
||||||
|
'action' => false,
|
||||||
|
'fieldConfig' => [
|
||||||
|
'template' => '{label}{input}',
|
||||||
|
],
|
||||||
|
'options' => [
|
||||||
|
'onsubmit' => 'return false;',
|
||||||
|
'class' => 'ml-auto px-0 col'
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
|
||||||
|
// Инициализация
|
||||||
|
$model_delivery ?? $model_delivery = yii::$app->user->identity;
|
||||||
|
$delivery_to_terminal_list ?? $delivery_to_terminal_list = ['Нет данных'];
|
||||||
|
?>
|
||||||
|
|
||||||
|
<?= $form->field($model_delivery, 'opts[delivery_to_terminal]', ['options' => ['class' => "mb-0"]])
|
||||||
|
->dropDownList($delivery_to_terminal_list, [
|
||||||
|
'onChange' => 'page_profile_settings(this.parentElement.parentElement, undefined, \'\'); cart_cost_calculate();',
|
||||||
|
'disabled' => count($delivery_to_terminal_list) <= 1
|
||||||
|
])->label(false); ?>
|
||||||
|
|
||||||
|
<?php ActiveForm::end(); ?>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-0 mx-0 row">
|
||||||
|
<div class="ml-auto px-0 col d-flex">
|
||||||
|
<a class="ml-auto col btn button_clean button_blue" title="Оформить заказ" href="/orders" role="button" onclick="return cart_request();">
|
||||||
<span id="cart_cost">0</span>
|
<span id="cart_cost">0</span>
|
||||||
руб
|
руб
|
||||||
</p>
|
|
||||||
<a class="btn button_clean button_blue" title="Оформить заказ" href="/orders" role="button" onclick="return cart_request();">
|
|
||||||
Оформить заказ
|
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="/js/textarea.js" defer></script>
|
<script src="/js/textarea.js" defer></script>
|
||||||
<script src="/js/cart.js" defer></script>
|
<script src="/js/cart.js" defer></script>
|
||||||
|
<script src="/js/profile.js" defer></script>
|
||||||
<script defer>
|
<script defer>
|
||||||
if (document.readyState === "complete") {
|
if (document.readyState === "complete") {
|
||||||
cart_cost_calculate();
|
cart_cost_calculate();
|
||||||
|
|
||||||
|
cart_registration_entity_init(<?= $account['_key'] ?>);
|
||||||
} else {
|
} else {
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
cart_cost_calculate();
|
cart_cost_calculate();
|
||||||
|
|
||||||
|
cart_registration_entity_init(<?= $account['_key'] ?>);
|
||||||
}, false);
|
}, false);
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<p>ФИО: <span style="margin-left: auto;"><?= $name ?></span></p>
|
<p>ФИО: <span style="margin-left: auto;"><?= $name ?></span></p>
|
||||||
<p>Номер: <span style="margin-left: auto;"><?= $phon ?></span></p>
|
<p>Телефон: <span style="margin-left: auto;"><?= $phon ?></span></p>
|
||||||
<p>Почта: <span style="margin-left: auto;"><?= $mail ?></span></p>
|
<p>Почта: <span style="margin-left: auto;"><?= $mail ?></span></p>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,7 @@ if (
|
||||||
'disabled' => count($delivery_to_terminal_list) <= 1
|
'disabled' => count($delivery_to_terminal_list) <= 1
|
||||||
])->label('Терминал'); ?>
|
])->label('Терминал'); ?>
|
||||||
|
|
||||||
<small class="d-block mb-1">Выберите терминал <b><u>получателя</u></b> для <b>рассчёта доставки</b></small>
|
<small class="d-block mb-1">Выберите терминал <b><u>получателя</u></b> для <b>расчёта доставки</b></small>
|
||||||
|
|
||||||
<?php ActiveForm::end(); ?>
|
<?php ActiveForm::end(); ?>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -215,6 +215,7 @@ $timezone = $timezone[1][0];
|
||||||
?>
|
?>
|
||||||
<?php foreach ($supplies ?? [] as $supply) : ?>
|
<?php foreach ($supplies ?? [] as $supply) : ?>
|
||||||
<?php
|
<?php
|
||||||
|
try {
|
||||||
// Поиск аккаунта владельца
|
// Поиск аккаунта владельца
|
||||||
$account = '/account/' . Account::searchBySupplyId($supply->readId())['_key'];
|
$account = '/account/' . Account::searchBySupplyId($supply->readId())['_key'];
|
||||||
|
|
||||||
|
@ -240,7 +241,9 @@ $timezone = $timezone[1][0];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (Throwable $t) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<div class="mb-3 row">
|
<div class="mb-3 row">
|
||||||
|
|
|
@ -15,3 +15,31 @@
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
font-size: larger;
|
font-size: larger;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content {
|
||||||
|
flex-grow: 1;
|
||||||
|
border-radius: 0 3px 3px 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content>div,
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content>input {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content>input:checked+div {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content>div>.header_blue {
|
||||||
|
background-color: #dbdde3;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content>div>.header_blue~.row:nth-child(2n) {
|
||||||
|
background-color: #f7f6f9;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page_cart #cart_registration_menu>.cart_registration_content #cart_registration_input_suppliers_requests .panel_supplier_request .cart_registration_input_suppliers_requests_block_textarea {
|
||||||
|
min-height: 100px;
|
||||||
|
display: inline-block;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
|
@ -30,7 +30,6 @@
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/* #page_profile [id^=profile_panel_]>.profile_panel_content>div>.header_blue~.row:nth-child(2n + 1) {
|
/* #page_profile [id^=profile_panel_]>.profile_panel_content>div>.header_blue~.row:nth-child(2n + 1) {
|
||||||
background-color: #dbdde3;
|
background-color: #dbdde3;
|
||||||
|
|
|
@ -315,6 +315,326 @@ function cart_list_comment_save(catn, type, element) {
|
||||||
return true;
|
return true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Редактирование параметра
|
||||||
|
*
|
||||||
|
* @param {*} _key
|
||||||
|
* @param {*} target
|
||||||
|
* @param {*} value
|
||||||
|
*
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
function cart_registration_block_edit(_key, target, value) {
|
||||||
|
$.ajax({
|
||||||
|
url: `/${_key}/${target}/edit`,
|
||||||
|
type: 'post',
|
||||||
|
dataType: 'json',
|
||||||
|
data: {
|
||||||
|
'_csrf': yii.getCsrfToken(),
|
||||||
|
'value': value
|
||||||
|
},
|
||||||
|
success: page_profile_response_success,
|
||||||
|
error: page_profile_response_error
|
||||||
|
});
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function cart_registration_entity_init(_key, wrap = 'cart_registration_entity_body') {
|
||||||
|
// Инициализация содержимого блока "Заявки на регистрацию поставщиков"
|
||||||
|
|
||||||
|
// Инициализация оболочки
|
||||||
|
wrap = document.getElementById(wrap);
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: '/profile/panel/suppliers/requests/search',
|
||||||
|
type: 'post',
|
||||||
|
dataType: 'json',
|
||||||
|
data: {
|
||||||
|
'_csrf': yii.getCsrfToken(),
|
||||||
|
_key
|
||||||
|
},
|
||||||
|
success: (data, status, xhr) => {
|
||||||
|
// Обработка ответа
|
||||||
|
|
||||||
|
if (data !== undefined) {
|
||||||
|
// Получены данные с сервера
|
||||||
|
|
||||||
|
if (data.suppliers !== undefined && data.suppliers !== null) {
|
||||||
|
// Найдены данные поставщиков
|
||||||
|
|
||||||
|
// Удаление данных в оболочке
|
||||||
|
wrap.innerHTML = null;
|
||||||
|
|
||||||
|
for (let html of cart_registration_entity_generate(data.suppliers[0])) {
|
||||||
|
// Перебор сгенерированных HTML-элементов
|
||||||
|
|
||||||
|
// Запись в документ
|
||||||
|
wrap.appendChild(html);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Переход к остальным обработчикам
|
||||||
|
cart_response_success(data, status, xhr);
|
||||||
|
},
|
||||||
|
error: cart_response_error
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function cart_registration_entity_generate(account) {
|
||||||
|
// Инициализация буфера вывода
|
||||||
|
let html = new Set;
|
||||||
|
|
||||||
|
if (account !== undefined) {
|
||||||
|
// Инициализация контейнера
|
||||||
|
let container = document.createElement('div');
|
||||||
|
container.setAttribute('class', 'row');
|
||||||
|
|
||||||
|
// Инициализация первой строки
|
||||||
|
let row_1 = document.createElement('div');
|
||||||
|
row_1.setAttribute('class', 'row px-0');
|
||||||
|
|
||||||
|
// Инициализация оболочки идентификатора аккаунта
|
||||||
|
let wrap_id = document.createElement('p');
|
||||||
|
wrap_id.setAttribute('class', 'mt-0 mb-2 px-3 row');
|
||||||
|
|
||||||
|
// Инициализация ярлыка идентификатора аккаунта
|
||||||
|
let label_id = document.createElement('b');
|
||||||
|
label_id.setAttribute('class', '');
|
||||||
|
label_id.innerText = 'Договор:';
|
||||||
|
|
||||||
|
// Инициализация значения идентификатора аккаунта
|
||||||
|
let value_id = document.createElement('span');
|
||||||
|
value_id.setAttribute('class', 'ml-auto');
|
||||||
|
|
||||||
|
// Инициализация колонки с основными данными аккаунта
|
||||||
|
let block_info = document.createElement('div');
|
||||||
|
block_info.setAttribute('class', 'col-6 pl-0 d-flex flex-column');
|
||||||
|
|
||||||
|
// Инициализация ярлыка "NAME"
|
||||||
|
let label_name = document.createElement('label');
|
||||||
|
label_name.setAttribute('class', 'control-label');
|
||||||
|
label_name.innerText = 'Контактное лицо';
|
||||||
|
|
||||||
|
// Инициализация поля "NAME"
|
||||||
|
let input_name = document.createElement('input');
|
||||||
|
input_name.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_name.setAttribute('type', 'text');
|
||||||
|
input_name.setAttribute('placeholder', 'Иванов Иван Иванович');
|
||||||
|
input_name.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "name", this.value);');
|
||||||
|
input_name.value = account.name ?? '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "BOSS"
|
||||||
|
let label_boss = document.createElement('label');
|
||||||
|
label_boss.setAttribute('class', 'control-label');
|
||||||
|
label_boss.innerText = 'Директор';
|
||||||
|
|
||||||
|
// Инициализация поля "BOSS"
|
||||||
|
let input_boss = document.createElement('input');
|
||||||
|
input_boss.setAttribute('id', 'boss');
|
||||||
|
input_boss.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_boss.setAttribute('type', 'text');
|
||||||
|
input_boss.setAttribute('placeholder', 'Иванов Иван Иванович');
|
||||||
|
input_boss.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "boss", this.value);');
|
||||||
|
input_boss.value = account.boss ?? '';;
|
||||||
|
|
||||||
|
// Инициализация ярлыка "SIMC" (телефон)
|
||||||
|
let label_simc = document.createElement('label');
|
||||||
|
label_simc.setAttribute('class', 'control-label');
|
||||||
|
label_simc.innerText = 'Телефон';
|
||||||
|
|
||||||
|
// Инициализация поля "SIMC" (телефон)
|
||||||
|
let input_simc = document.createElement('input');
|
||||||
|
input_simc.setAttribute('id', 'simc');
|
||||||
|
input_simc.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_simc.setAttribute('type', 'number');
|
||||||
|
input_simc.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "simc", this.value);');
|
||||||
|
input_simc.value = '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "MAIL"
|
||||||
|
let label_mail = document.createElement('label');
|
||||||
|
label_mail.setAttribute('class', 'control-label');
|
||||||
|
label_mail.innerText = 'Почта';
|
||||||
|
|
||||||
|
// Инициализация поля "MAIL"
|
||||||
|
let input_mail = document.createElement('input');
|
||||||
|
input_mail.setAttribute('id', 'mail');
|
||||||
|
input_mail.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_mail.setAttribute('type', 'mail');
|
||||||
|
input_mail.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "mail", this.value);');
|
||||||
|
input_mail.value = account.mail ?? '';
|
||||||
|
|
||||||
|
// Инициализация колонки с вторичными данными аккаунта
|
||||||
|
let block_details = document.createElement('div');
|
||||||
|
block_details.setAttribute('id', 'details');
|
||||||
|
block_details.setAttribute('class', 'pr-0 col-6 d-flex flex-column');
|
||||||
|
|
||||||
|
// Инициализация ярлыка "INDX"
|
||||||
|
let label_indx = document.createElement('label');
|
||||||
|
label_indx.setAttribute('class', 'control-label');
|
||||||
|
label_indx.innerText = 'Индекс';
|
||||||
|
|
||||||
|
// Инициализация оболочки "INDX"
|
||||||
|
let wrap_indx = document.createElement('div');
|
||||||
|
wrap_indx.setAttribute('class', 'row mx-0 mb-3');
|
||||||
|
|
||||||
|
// Инициализация поля "INDX"
|
||||||
|
let input_indx = document.createElement('input');
|
||||||
|
input_indx.setAttribute('id', 'indx');
|
||||||
|
input_indx.setAttribute('class', 'col form-control button_clean');
|
||||||
|
input_indx.setAttribute('type', 'text');
|
||||||
|
input_indx.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "indx", this.value);');
|
||||||
|
input_indx.value = account.indx ?? '';
|
||||||
|
|
||||||
|
// Инициализация кнопки "INDX"
|
||||||
|
let button_indx = document.createElement('a');
|
||||||
|
button_indx.setAttribute('class', 'ml-2 my-auto text-dark');
|
||||||
|
button_indx.setAttribute('type', 'button');
|
||||||
|
button_indx.setAttribute('role', 'button');
|
||||||
|
button_indx.innerHTML = '<i class="fas fa-redo-alt" onclick="return profile_panel_input_suppliers_requests_block_regen(\'indx\');"></i>';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "TAXN"
|
||||||
|
let label_taxn = document.createElement('label');
|
||||||
|
label_taxn.setAttribute('class', 'control-label');
|
||||||
|
label_taxn.innerText = 'ИНН';
|
||||||
|
|
||||||
|
// Инициализация поля "TAXN"
|
||||||
|
let input_taxn = document.createElement('input');
|
||||||
|
input_taxn.setAttribute('id', 'taxn');
|
||||||
|
input_taxn.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_taxn.setAttribute('type', 'text');
|
||||||
|
input_taxn.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "taxn", this.value);');
|
||||||
|
input_taxn.value = account.taxn ?? '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "CNTG"
|
||||||
|
let label_cntg = document.createElement('label');
|
||||||
|
label_cntg.setAttribute('class', 'control-label');
|
||||||
|
label_cntg.innerText = 'КПП';
|
||||||
|
|
||||||
|
// Инициализация поля "CNTG"
|
||||||
|
let input_cntg = document.createElement('input');
|
||||||
|
input_cntg.setAttribute('id', 'cntg');
|
||||||
|
input_cntg.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_cntg.setAttribute('type', 'text');
|
||||||
|
input_cntg.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "cntg", this.value);');
|
||||||
|
input_cntg.value = account.cntg ?? '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "FADD"
|
||||||
|
let label_fadd = document.createElement('label');
|
||||||
|
label_fadd.setAttribute('class', 'control-label');
|
||||||
|
label_fadd.innerText = 'Фактический адрес';
|
||||||
|
|
||||||
|
// Инициализация поля "FADD"
|
||||||
|
let input_fadd = document.createElement('input');
|
||||||
|
input_fadd.setAttribute('id', 'fadd');
|
||||||
|
input_fadd.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_fadd.setAttribute('type', 'text');
|
||||||
|
input_fadd.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "fadd", this.value);');
|
||||||
|
input_fadd.value = account.fadd ?? '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "LADD"
|
||||||
|
let label_ladd = document.createElement('label');
|
||||||
|
label_ladd.setAttribute('class', 'control-label');
|
||||||
|
label_ladd.innerText = 'Юридический адрес';
|
||||||
|
|
||||||
|
// Инициализация поля "LADD"
|
||||||
|
let input_ladd = document.createElement('input');
|
||||||
|
input_ladd.setAttribute('id', 'ladd');
|
||||||
|
input_ladd.setAttribute('class', 'form-control button_clean');
|
||||||
|
input_ladd.setAttribute('type', 'text');
|
||||||
|
input_ladd.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "ladd", this.value);');
|
||||||
|
input_ladd.value = account.ladd ?? '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "COMP"
|
||||||
|
let label_comp = document.createElement('label');
|
||||||
|
label_comp.setAttribute('class', 'control-label');
|
||||||
|
label_comp.innerText = 'Организация';
|
||||||
|
|
||||||
|
// Инициализация поля "COMP"
|
||||||
|
let input_comp = document.createElement('input');
|
||||||
|
input_comp.setAttribute('id', 'comp');
|
||||||
|
input_comp.setAttribute('class', 'form-control button_clean mb-3');
|
||||||
|
input_comp.setAttribute('type', 'text');
|
||||||
|
input_comp.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "comp", this.value);');
|
||||||
|
input_comp.value = account.comp ?? '';
|
||||||
|
|
||||||
|
// Инициализация ярлыка "CNTC"
|
||||||
|
let label_cntc = document.createElement('label');
|
||||||
|
label_cntc.setAttribute('class', 'control-label');
|
||||||
|
label_cntc.innerText = 'Контакты';
|
||||||
|
|
||||||
|
// Инициализация поля "CNTC"
|
||||||
|
let input_cntc = document.createElement('textarea');
|
||||||
|
input_cntc.setAttribute('id', 'cntc');
|
||||||
|
input_cntc.setAttribute('class', 'form-control button_clean h-100');
|
||||||
|
input_cntc.setAttribute('style', 'resize: none;');
|
||||||
|
input_cntc.setAttribute('type', 'text');
|
||||||
|
input_cntc.setAttribute('onchange', 'return cart_registration_block_edit(' + account._key + ', "cntc", this.value);');
|
||||||
|
input_cntc.value = account.cntc ?? '';
|
||||||
|
|
||||||
|
// Инициализация оболочки найденного по геолокации города
|
||||||
|
let wrap_city = document.createElement('p');
|
||||||
|
wrap_city.setAttribute('class', 'mt-1 mb-2 px-3 row');
|
||||||
|
|
||||||
|
// Инициализация ярлыка найденного по геолокации города
|
||||||
|
let label_city = document.createElement('b');
|
||||||
|
label_city.setAttribute('class', '');
|
||||||
|
label_city.innerText = 'Город:';
|
||||||
|
|
||||||
|
// Инициализация значения найденного по геолокации города
|
||||||
|
let value_city = document.createElement('span');
|
||||||
|
value_city.setAttribute('class', 'ml-auto');
|
||||||
|
value_city.innerText = account.city ?? 'Неизвестно';
|
||||||
|
|
||||||
|
// Компоновка элементов блока с основной информацией
|
||||||
|
block_info.appendChild(label_name);
|
||||||
|
block_info.appendChild(input_name);
|
||||||
|
|
||||||
|
block_info.appendChild(label_simc);
|
||||||
|
block_info.appendChild(input_simc);
|
||||||
|
|
||||||
|
block_info.appendChild(label_mail);
|
||||||
|
block_info.appendChild(input_mail);
|
||||||
|
|
||||||
|
block_info.appendChild(label_indx);
|
||||||
|
wrap_indx.appendChild(input_indx);
|
||||||
|
wrap_indx.appendChild(button_indx);
|
||||||
|
block_info.appendChild(wrap_indx);
|
||||||
|
|
||||||
|
block_info.appendChild(label_cntc);
|
||||||
|
block_info.appendChild(input_cntc);
|
||||||
|
|
||||||
|
// Компоновка элементов блока с вторичными данными
|
||||||
|
block_details.appendChild(label_boss);
|
||||||
|
block_details.appendChild(input_boss);
|
||||||
|
|
||||||
|
block_details.appendChild(label_comp);
|
||||||
|
block_details.appendChild(input_comp);
|
||||||
|
|
||||||
|
block_details.appendChild(label_taxn);
|
||||||
|
block_details.appendChild(input_taxn);
|
||||||
|
|
||||||
|
block_details.appendChild(label_cntg);
|
||||||
|
block_details.appendChild(input_cntg);
|
||||||
|
|
||||||
|
block_details.appendChild(label_fadd);
|
||||||
|
block_details.appendChild(input_fadd);
|
||||||
|
|
||||||
|
block_details.appendChild(label_ladd);
|
||||||
|
block_details.appendChild(input_ladd);
|
||||||
|
|
||||||
|
// Компоновка всех колонок
|
||||||
|
container.appendChild(block_info);
|
||||||
|
container.appendChild(block_details);
|
||||||
|
|
||||||
|
html.add(container);
|
||||||
|
}
|
||||||
|
|
||||||
|
return html;
|
||||||
|
};
|
||||||
|
|
||||||
function cart_response(data, status, xhr) {
|
function cart_response(data, status, xhr) {
|
||||||
// Обработка ответов
|
// Обработка ответов
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
function page_main() {
|
function page_main(redirect = '/') {
|
||||||
if (document.getElementById('page_index') === null) {
|
if (document.getElementById('page_index') === null) {
|
||||||
url = '/';
|
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: '/',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
data: { '_csrf': yii.getCsrfToken() },
|
data: {
|
||||||
|
'_csrf': yii.getCsrfToken(),
|
||||||
|
redirect
|
||||||
|
},
|
||||||
success: menu_success,
|
success: menu_success,
|
||||||
error: menu_error
|
error: menu_error
|
||||||
});
|
});
|
||||||
|
@ -15,15 +16,16 @@ function page_main() {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
function page_profile() {
|
function page_profile(redirect = '/profile') {
|
||||||
if (document.getElementById('page_profile') === null) {
|
if (document.getElementById('page_profile') === null) {
|
||||||
url = '/profile'
|
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: '/profile',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
data: { '_csrf': yii.getCsrfToken() },
|
data: {
|
||||||
|
'_csrf': yii.getCsrfToken(),
|
||||||
|
redirect
|
||||||
|
},
|
||||||
success: menu_success,
|
success: menu_success,
|
||||||
error: menu_error
|
error: menu_error
|
||||||
});
|
});
|
||||||
|
@ -32,15 +34,16 @@ function page_profile() {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
function page_cart() {
|
function page_cart(redirect = '/cart') {
|
||||||
if (document.getElementById('page_cart') === null) {
|
if (document.getElementById('page_cart') === null) {
|
||||||
url = '/cart'
|
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: '/cart',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
data: { '_csrf': yii.getCsrfToken() },
|
data: {
|
||||||
|
'_csrf': yii.getCsrfToken(),
|
||||||
|
redirect
|
||||||
|
},
|
||||||
success: menu_success,
|
success: menu_success,
|
||||||
error: menu_error
|
error: menu_error
|
||||||
});
|
});
|
||||||
|
@ -49,15 +52,16 @@ function page_cart() {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
function page_orders() {
|
function page_orders(redirect = '/orders') {
|
||||||
if (document.getElementById('page_orders') === null) {
|
if (document.getElementById('page_orders') === null) {
|
||||||
url = '/orders'
|
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: url,
|
url: '/orders',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
data: { '_csrf': yii.getCsrfToken() },
|
data: {
|
||||||
|
'_csrf': yii.getCsrfToken(),
|
||||||
|
redirect
|
||||||
|
},
|
||||||
success: menu_success,
|
success: menu_success,
|
||||||
error: menu_error
|
error: menu_error
|
||||||
});
|
});
|
||||||
|
|
|
@ -125,7 +125,7 @@ function page_supplies_settings(form, warehouse, panel) {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
function page_profile_settings(form, panel) {
|
function page_profile_settings(form, panel, redirect = '/profile') {
|
||||||
if (form == undefined) {
|
if (form == undefined) {
|
||||||
form = {
|
form = {
|
||||||
'_csrf': yii.getCsrfToken()
|
'_csrf': yii.getCsrfToken()
|
||||||
|
@ -134,15 +134,24 @@ function page_profile_settings(form, panel) {
|
||||||
if (panel !== undefined) {
|
if (panel !== undefined) {
|
||||||
form.panel = panel;
|
form.panel = panel;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
form.redirect = redirect;
|
||||||
} else {
|
} else {
|
||||||
form = $(form).serializeArray();
|
form = $(form).serializeArray();
|
||||||
|
|
||||||
|
if (panel !== undefined) {
|
||||||
form.push({
|
form.push({
|
||||||
name: "panel",
|
name: "panel",
|
||||||
value: panel
|
value: panel
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
form.push({
|
||||||
|
name: "redirect",
|
||||||
|
value: redirect
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: '/profile',
|
url: '/profile',
|
||||||
type: 'post',
|
type: 'post',
|
||||||
|
|
|
@ -290,7 +290,7 @@ function page_profile_panel_input_suppliers_requests_generate(suppliers) {
|
||||||
// Инициализация ярлыка "SIMC" (телефон)
|
// Инициализация ярлыка "SIMC" (телефон)
|
||||||
let label_simc = document.createElement('label');
|
let label_simc = document.createElement('label');
|
||||||
label_simc.setAttribute('class', 'control-label');
|
label_simc.setAttribute('class', 'control-label');
|
||||||
label_simc.innerText = 'Номер';
|
label_simc.innerText = 'Телефон';
|
||||||
|
|
||||||
// Инициализация поля "SIMC" (телефон)
|
// Инициализация поля "SIMC" (телефон)
|
||||||
let input_simc = document.createElement('input');
|
let input_simc = document.createElement('input');
|
||||||
|
|
Reference in New Issue