Работа над сайтом 14
This commit is contained in:
parent
2ca929e122
commit
bf821a9819
|
@ -38,6 +38,7 @@ class AppAsset extends AssetBundle
|
|||
'https://cdn.jsdelivr.net/bxslider/4.1.1/jquery.bxslider.min.js',
|
||||
'https://unpkg.com/cookielib/src/cookie.min.js',
|
||||
'js/menu.js',
|
||||
'js/main.js',
|
||||
'js/account.js',
|
||||
'js/search.js',
|
||||
'js/notification.js',
|
||||
|
@ -47,7 +48,7 @@ class AppAsset extends AssetBundle
|
|||
// 'position' => View::POS_HEAD
|
||||
];
|
||||
public $depends = [
|
||||
'yii\web\YiiAsset',
|
||||
'yii\web\YiiAsset'
|
||||
// 'yii\bootstrap\BootstrapAsset'
|
||||
];
|
||||
}
|
||||
|
|
|
@ -77,7 +77,7 @@ class CartController extends Controller
|
|||
*
|
||||
* @see $this->behaviors Доступ только аутентифицированным
|
||||
*/
|
||||
public function actionIndex(): string|array|null
|
||||
public function actionIndex(): string|array|null|Response
|
||||
{
|
||||
// Инициализация
|
||||
$page = yii::$app->request->get('page') ?? yii::$app->request->post('page') ?? 1;
|
||||
|
|
|
@ -198,22 +198,22 @@ class SearchController extends Controller
|
|||
$to = 36;
|
||||
}
|
||||
|
||||
if ($buffer_connection = $connection['product']['bffr']["$from-$to"] ?? false) {
|
||||
if (
|
||||
($buffer_connection = $connection['product']['bffr']["$from-$to"] ?? false)
|
||||
&& time() < $buffer_connection['expires']
|
||||
) {
|
||||
// Найдены данные доставки в буфере
|
||||
|
||||
if (time() < $buffer_connection['expires']) {
|
||||
// Срок хранения не превышен, информация актуальна
|
||||
// и срок хранения не превышен, информация актуальна
|
||||
|
||||
// Запись в буфер вывода
|
||||
$connection['delivery'] = $buffer_connection['data'];
|
||||
$connection['delivery']['type'] = 'auto';
|
||||
}
|
||||
} else {
|
||||
// Инициализация инстанции продукта в базе данных
|
||||
$product = Product::searchByCatn($connection['product']['catn']);
|
||||
|
||||
// Инициализация доставки Dellin (автоматическая)
|
||||
$product->bffr = ($product->bffr ?? []) + [
|
||||
$product->bffr = [
|
||||
"$from-$to" => [
|
||||
'data' => $connection['delivery'] = Dellin::calcDeliveryAdvanced(
|
||||
$from,
|
||||
|
@ -225,7 +225,7 @@ class SearchController extends Controller
|
|||
),
|
||||
'expires' => time() + 86400
|
||||
]
|
||||
];
|
||||
] + ($product->bffr ?? []);
|
||||
$connection['delivery']['type'] = 'auto';
|
||||
|
||||
// Отправка в базу данных
|
||||
|
@ -248,7 +248,7 @@ class SearchController extends Controller
|
|||
// Инициализация версии для рассчета доставки по воздуху
|
||||
$buffer = $connection;
|
||||
|
||||
try {// Инициализация данных геолокации
|
||||
try { // Инициализация данных геолокации
|
||||
try {
|
||||
$from = (int) $connection['account']['opts']['delivery_from_terminal'] ?? Settings::search()->delivery_from_default ?? 36;
|
||||
} catch (Exception $e) {
|
||||
|
@ -261,22 +261,22 @@ class SearchController extends Controller
|
|||
$to = 36;
|
||||
}
|
||||
|
||||
if ($buffer_connection = $connection['product']['bffr']["$from-$to-avia"] ?? false) {
|
||||
if (
|
||||
($buffer_connection = $connection['product']['bffr']["$from-$to-avia"] ?? false)
|
||||
&& time() < $buffer_connection['expires']
|
||||
) {
|
||||
// Найдены данные доставки в буфере
|
||||
|
||||
if (time() < $buffer_connection['expires']) {
|
||||
// Срок хранения не превышен, информация актуальна
|
||||
// и срок хранения не превышен, информация актуальна
|
||||
|
||||
// Запись в буфер вывода
|
||||
$connection['delivery'] = $buffer_connection['data'];
|
||||
$connection['delivery']['type'] = 'avia';
|
||||
}
|
||||
} else {
|
||||
// Инициализация инстанции продукта в базе данных
|
||||
$product = Product::searchByCatn($connection['product']['catn']);
|
||||
|
||||
// Инициализация доставки Dellin (автоматическая)
|
||||
$product->bffr = ($product->bffr ?? []) + [
|
||||
$product->bffr = [
|
||||
"$from-$to-avia" => [
|
||||
'data' => $connection['delivery'] = Dellin::calcDeliveryAdvanced(
|
||||
$from,
|
||||
|
@ -289,7 +289,7 @@ class SearchController extends Controller
|
|||
),
|
||||
'expires' => time() + 86400
|
||||
]
|
||||
];
|
||||
] + ($product->bffr ?? []);
|
||||
$connection['delivery']['type'] = 'avia';
|
||||
|
||||
// Отправка в базу данных
|
||||
|
|
|
@ -446,7 +446,10 @@ class Order extends Document implements DocumentInterface
|
|||
// Если стоимость не найдена или равна нулю (явная ошибка)
|
||||
|
||||
// Удаление из базы данных
|
||||
$this->deleteSupply($connection['supply']->readId());
|
||||
$this->deleteSupply($connection['supply']['_id']);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Добавить уведомление об ошибочном товаре
|
||||
|
||||
// Удаление из списка
|
||||
unset($connections[$key]);
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace app\models\helpers;
|
||||
|
||||
use yii;
|
||||
use yii\base\Model;
|
||||
use yii\web\View;
|
||||
|
||||
class JsManager extends Model
|
||||
{
|
||||
/**
|
||||
* Сгенерировать <script> элементы из данных AssetManager
|
||||
*
|
||||
* Создавалось под виджет ActiveForm и только на нём тестировалось
|
||||
*
|
||||
* @param View $view Представление
|
||||
* @param array $targets Названия виджетов (например: "yii\widgets\ActiveFormAsset")
|
||||
*
|
||||
* @return string HTML-код
|
||||
*/
|
||||
public static function include(View $view, array $targets): string
|
||||
{
|
||||
// Инициализация
|
||||
$buffer = '';
|
||||
|
||||
foreach ($targets as $target) {
|
||||
// Перебор целей для генерации
|
||||
|
||||
// Инициализация
|
||||
$depends = $view->assetBundles[$target]->depends;
|
||||
|
||||
if (count($depends) > 0) {
|
||||
// Найдены зависимости
|
||||
|
||||
// Рекурсивный вызов
|
||||
self::include($view, $depends);
|
||||
}
|
||||
|
||||
// Инициализация
|
||||
$files = $view->assetBundles[$target]->js;
|
||||
|
||||
foreach ($files as $file) {
|
||||
// Перебор файлов цели для генерации
|
||||
|
||||
// Инициализация публичного пути к файлу
|
||||
$path = $view->assetBundles[$target]->baseUrl . '/' . $file;
|
||||
|
||||
// Генерация
|
||||
$buffer .= <<<HTML
|
||||
<script src="$path" defer></script>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
|
||||
return $buffer;
|
||||
}
|
||||
}
|
|
@ -3,6 +3,7 @@
|
|||
declare(strict_types=1);
|
||||
|
||||
use yii;
|
||||
use app\models\helpers\JsManager;
|
||||
|
||||
?>
|
||||
|
||||
|
@ -16,3 +17,5 @@ use yii;
|
|||
<!-- <a class="dropdown-item-text text-center px-0 py-2" href="#"><small>Восстановление пароля</small></a> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?= JsManager::include($this, ['yii\widgets\ActiveFormAsset']);?>
|
||||
|
|
|
@ -49,10 +49,10 @@ $this->title = 'SkillParts';
|
|||
</div>
|
||||
<div class="p-3 px-md-4 category_block">
|
||||
<dl class="mb-0">
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Масла моторные</a></dd>
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Масла трансмиссионные</a></dd>
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Масла гидравлические</a></dd>
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Смазки</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Масла моторные</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Масла трансмиссионные</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Масла гидравлические</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Смазки</a></dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -62,7 +62,7 @@ $this->title = 'SkillParts';
|
|||
</div>
|
||||
<div class="p-3 px-md-4 category_block">
|
||||
<dl class="mb-0">
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Фары и свет</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Фары и свет</a></dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -72,9 +72,9 @@ $this->title = 'SkillParts';
|
|||
</div>
|
||||
<div class="p-3 px-md-4 category_block">
|
||||
<dl class="mb-0">
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Шприцы для смазки</a></dd>
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Ключи, съёмники</a></dd>
|
||||
<dd><a onclick="return writeinDevelopment(this);" type="button">Наборы инструментов</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Шприцы для смазки</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Ключи, съёмники</a></dd>
|
||||
<dd><a onclick="return writeInDevelopment(this);" type="button">Наборы инструментов</a></dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -83,4 +83,4 @@ $this->title = 'SkillParts';
|
|||
</div>
|
||||
|
||||
<script src="/js/ticker.js" defer></script>
|
||||
<script src="/js/main.js" defer></script>
|
||||
<script src="/js/text.js" defer></script>
|
||||
|
|
|
@ -161,7 +161,7 @@
|
|||
<div class="col-5 mr-4"></div>
|
||||
<small class="col-1 ml-2 my-auto pl-2 pr-0">$index</small>
|
||||
<small class="col-1 my-auto pl-2 pr-0 text-center">$amount</small>
|
||||
<small class="col-auto mr-2 my-auto pl-2 pr-0 text-left" title="Ориентировочно">$delivery_icon ~$delivery дн</small>
|
||||
<small class="col-auto mr-2 my-auto pl-2 pr-0 text-left" title="Ориентировочно">$delivery_icon $delivery дн</small>
|
||||
<b class="col-2 ml-auto my-auto">$price</b>
|
||||
<a class="col-1 ml-0 py-2 text-dark d-flex button_white rounded" title="Добавить $catn в корзину" role="button" onclick="return cart_write('{$supply['_id']}', '$delivery_type');">
|
||||
<i class="fas fa-cart-arrow-down pr-1 m-auto"></i>
|
||||
|
|
|
@ -4,20 +4,8 @@ function identification() {
|
|||
type: 'post',
|
||||
dataType: 'json',
|
||||
data: { '_csrf': yii.getCsrfToken() },
|
||||
success: function (data) {
|
||||
if (data.menu !== undefined) {
|
||||
// Обновление документа
|
||||
document.getElementsByTagName('menu')[0].innerHTML = data.menu;
|
||||
}
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
success: account_response_success,
|
||||
error: account_response_error
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -40,55 +28,8 @@ function authentication(form) {
|
|||
type: 'post',
|
||||
dataType: 'json',
|
||||
data: form,
|
||||
success: function (data, status) {
|
||||
if (data.menu !== undefined) {
|
||||
// Обновление документа
|
||||
document.getElementsByTagName('menu')[0].innerHTML = data.menu;
|
||||
}
|
||||
if (data.main !== undefined && document.getElementById('page_index') === null) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
|
||||
// Реинициализация панели поиска
|
||||
// Перенести в отдельный файл который подгружается в зависимости от настроек
|
||||
// search_panel_show();
|
||||
|
||||
// Обновление панели поиска
|
||||
product_search();
|
||||
},
|
||||
error: function (data, status) {
|
||||
if (data.responseJSON.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.responseJSON.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
if (data.responseJSON.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.responseJSON.redirect);
|
||||
}
|
||||
if (data.responseJSON._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data.responseJSON._csrf);
|
||||
}
|
||||
}
|
||||
success: account_response_success,
|
||||
error: account_response_error
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -98,36 +39,8 @@ function deauthentication() {
|
|||
type: 'post',
|
||||
dataType: 'json',
|
||||
data: { '_csrf': yii.getCsrfToken() },
|
||||
success: function (data) {
|
||||
if (data.menu !== undefined) {
|
||||
// Обновление документа
|
||||
document.getElementsByTagName('menu')[0].innerHTML = data.menu;
|
||||
}
|
||||
if (data.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
|
||||
// Реинициализация панели поиска
|
||||
// Перенести в отдельный файл который подгружается в зависимости от настроек
|
||||
// search_panel_hide();
|
||||
|
||||
// Обновление панели поиска
|
||||
product_search();
|
||||
}
|
||||
success: account_response_success,
|
||||
error: account_response_error
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -266,6 +179,9 @@ function registration_start(form, type) {
|
|||
|
||||
function registration_end(form) {
|
||||
// Инициализация
|
||||
$(form).yiiActiveForm('init');
|
||||
|
||||
// Проверка
|
||||
$(form).yiiActiveForm('validate', true);
|
||||
|
||||
if (form == undefined) {
|
||||
|
@ -286,52 +202,66 @@ function registration_end(form) {
|
|||
type: 'post',
|
||||
dataType: 'json',
|
||||
data: form,
|
||||
success: function (data) {
|
||||
if (data.menu !== undefined) {
|
||||
// Обновление документа
|
||||
document.getElementsByTagName('menu')[0].innerHTML = data.menu;
|
||||
}
|
||||
// Разобраться нужна ли ещё првоерка на page_index, избавиться от неё
|
||||
if (data.main !== undefined && document.getElementById('page_index') === null) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
},
|
||||
error: function (data) {
|
||||
if (data.responseJSON.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.responseJSON.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
if (data.responseJSON.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.responseJSON.redirect);
|
||||
}
|
||||
if (data.responseJSON._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data.responseJSON._csrf);
|
||||
}
|
||||
}
|
||||
success: account_response_success,
|
||||
error: account_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
};
|
||||
|
||||
document.addEventListener('DOMContentLoaded', identification(), true);
|
||||
|
||||
function account_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
// // Разобраться нужна ли ещё првоерка на page_index, избавиться от неё
|
||||
// if (data.main !== undefined && document.getElementById('page_index') === null) {
|
||||
// main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// // Обновление документа
|
||||
// main.innerHTML = data.main;
|
||||
|
||||
// // Реинициализация
|
||||
// reinitialization(main);
|
||||
// }
|
||||
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Меню
|
||||
if (data.menu !== undefined) {
|
||||
// Инициализация
|
||||
let menu = document.getElementsByTagName('menu')[0];
|
||||
|
||||
// Обновление документа
|
||||
menu.innerHTML = data.menu;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(menu);
|
||||
}
|
||||
}
|
||||
|
||||
main_response(data, status, xhr);
|
||||
}
|
||||
|
||||
function account_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
// Реинициализация панели поиска
|
||||
// Перенести в отдельный файл который подгружается в зависимости от настроек
|
||||
// search_panel_show();
|
||||
|
||||
// Обновление панели поиска
|
||||
product_search();
|
||||
|
||||
account_response(data, status, xhr);
|
||||
}
|
||||
|
||||
function account_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Инициализвация
|
||||
data = data.responseJSON;
|
||||
|
||||
account_response(data, status, xhr);
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ function cart_write(supply_id, delivery_type, amount = 1) {
|
|||
data['supply_id'] = supply_id;
|
||||
data['amount'] = amount;
|
||||
data['delivery_type'] = delivery_type;
|
||||
data['_csrf'] = yii.getCsrfToken()
|
||||
data['_csrf'] = yii.getCsrfToken();
|
||||
|
||||
$.ajax({
|
||||
url: '/order/write',
|
||||
|
@ -19,7 +19,7 @@ function cart_write(supply_id, delivery_type, amount = 1) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Удалить корзину
|
||||
|
@ -37,7 +37,7 @@ function cart_delete() {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Сформировать заказ
|
||||
|
@ -55,7 +55,7 @@ function cart_request() {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Управление чекбоксами
|
||||
|
@ -72,7 +72,7 @@ function cart_list_checkbox(target) {
|
|||
// Перебор всех выбранных элементов
|
||||
|
||||
elements[$i].getElementsByTagName('input')[0].checked = true;
|
||||
}
|
||||
};
|
||||
|
||||
target.checked = true;
|
||||
} else {
|
||||
|
@ -80,14 +80,14 @@ function cart_list_checkbox(target) {
|
|||
// Перебор всех выбранных элементов
|
||||
|
||||
elements[$i].getElementsByTagName('input')[0].checked = false;
|
||||
}
|
||||
};
|
||||
|
||||
target.checked = false;
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* Удалить из корзины
|
||||
|
@ -115,9 +115,9 @@ function cart_list_delete(target, amount = 0) {
|
|||
|
||||
if (checkbox.checked === true) {
|
||||
targets[reg.exec(checkbox.id)[1]] = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: '/order/delete',
|
||||
|
@ -138,7 +138,7 @@ function cart_list_delete(target, amount = 0) {
|
|||
cart_cost_calculate();
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Изменить количество товара в корзине
|
||||
|
@ -162,13 +162,13 @@ function cart_list_amount_update(target, input) {
|
|||
success: cart_response_success,
|
||||
error: cart_response_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// Пересчитывание стоимости
|
||||
cart_cost_calculate();
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Подсчёт стоимости
|
||||
|
@ -183,10 +183,10 @@ function cart_cost_calculate() {
|
|||
let amount = elements[$i].getElementsByTagName('div')[5].children[0].value;
|
||||
|
||||
costs += +reg.exec(cost)[1] * amount;
|
||||
}
|
||||
};
|
||||
|
||||
document.getElementById('cart_cost').innerHTML = costs;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Изменить количество товара в корзине
|
||||
|
@ -246,10 +246,10 @@ function cart_list_comment_edit(catn, element) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function cart_list_comment_save(catn, element) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -261,7 +261,7 @@ function cart_list_comment_save(catn, element) {
|
|||
element.innerHTML = 'Комментарий к заказу';
|
||||
} else {
|
||||
element.innerHTML = text;
|
||||
}
|
||||
};
|
||||
|
||||
// Деинициализация счетчика
|
||||
document.getElementById(element.id + '-textarea-counter').remove();
|
||||
|
@ -277,7 +277,7 @@ function cart_list_comment_save(catn, element) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'text': text
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
// Заголовок
|
||||
if (data.comm !== undefined) {
|
||||
// Обновление заголовка
|
||||
|
@ -287,55 +287,34 @@ function cart_list_comment_save(catn, element) {
|
|||
element.setAttribute('onclick', 'return cart_list_comment_edit(\'' + catn + '\', this);');
|
||||
};
|
||||
|
||||
cart_response_success(data, status);
|
||||
cart_response_success(data, status, xhr);
|
||||
},
|
||||
error: cart_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function cart_response(data, status) {
|
||||
function cart_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
|
||||
function cart_response_success(data, status) {
|
||||
function cart_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
cart_response(data, status);
|
||||
}
|
||||
cart_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function cart_response_error(data, status) {
|
||||
function cart_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Инициализвация
|
||||
data = data.responseJSON;
|
||||
|
||||
cart_response(data, status);
|
||||
}
|
||||
cart_response(data, status, xhr);
|
||||
};
|
||||
|
|
|
@ -1,20 +1,37 @@
|
|||
function writeinDevelopment(target) {
|
||||
// Инициализация буфера
|
||||
let buffer = target.innerText;
|
||||
function main_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
// Запись текста
|
||||
target.innerText = target.innerText + ' (в разработке)';
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Блокировка от повторного вызова
|
||||
target.setAttribute('onclick', 'return false;');
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
// Инициализация
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
setTimeout(function () {
|
||||
// Возврат изначального текста из буфера
|
||||
target.innerText = buffer;
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Разблокировка
|
||||
target.setAttribute('onclick', 'return writeinDevelopment(this);');
|
||||
}, 3000);
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
};
|
||||
|
||||
return false;
|
||||
// Заголовок
|
||||
if (data.title !== undefined) {
|
||||
// Запись
|
||||
document.title = data.title;
|
||||
};
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
};
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -10,10 +10,10 @@ function page_main() {
|
|||
success: menu_success,
|
||||
error: menu_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function page_profile() {
|
||||
if (document.getElementById('page_profile') === null) {
|
||||
|
@ -27,10 +27,10 @@ function page_profile() {
|
|||
success: menu_success,
|
||||
error: menu_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function page_cart() {
|
||||
if (document.getElementById('page_cart') === null) {
|
||||
|
@ -44,7 +44,7 @@ function page_cart() {
|
|||
success: menu_success,
|
||||
error: menu_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
};
|
||||
|
@ -61,7 +61,7 @@ function page_orders() {
|
|||
success: menu_success,
|
||||
error: menu_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
};
|
||||
|
@ -69,76 +69,25 @@ function page_orders() {
|
|||
function notifications() {
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function menu_responce(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
function menu_success(data, status) {
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function menu_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
// Инициализация
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
menu_responce(data, status, xhr);
|
||||
};
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// Заголовок
|
||||
if (data.title !== undefined) {
|
||||
// Запись
|
||||
document.title = data.title;
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
|
||||
function menu_error(data, status) {
|
||||
function menu_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Инициализация
|
||||
data = data.responseJSON;
|
||||
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
// Инициализация
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление окна результатов поиска
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// Заголовок
|
||||
if (data.title !== undefined) {
|
||||
// Запись
|
||||
document.title = data.title;
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
menu_responce(data, status, xhr);
|
||||
};
|
||||
|
|
|
@ -73,7 +73,18 @@ function notification_stream(preload = 0) {
|
|||
// Предзагрузка уведомлений
|
||||
notification_stream(1);
|
||||
|
||||
function notification_response_success(data, status) {
|
||||
function notification_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function notification_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Кнопка уведомлений
|
||||
if (data.button !== undefined) {
|
||||
// Инициализация
|
||||
|
@ -87,7 +98,7 @@ function notification_response_success(data, status) {
|
|||
|
||||
// Реинициализация
|
||||
$('#notification_button').dropdown().init();
|
||||
}
|
||||
};
|
||||
|
||||
// Панель уведомлений
|
||||
if (data.panel !== undefined) {
|
||||
|
@ -99,7 +110,7 @@ function notification_response_success(data, status) {
|
|||
|
||||
// Реинициализация
|
||||
reinitialization(panel);
|
||||
}
|
||||
};
|
||||
|
||||
// Всплывающее окно
|
||||
if (data.popup !== undefined && data.popup['html'] !== undefined && data.popup['id'] !== undefined) {
|
||||
|
@ -108,41 +119,17 @@ function notification_response_success(data, status) {
|
|||
|
||||
// Генерация
|
||||
notification_popup_create(data.popup['html'], data.popup['id']);
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
notification_response(data, status);
|
||||
}
|
||||
notification_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function notification_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
function notification_response_error(data, status) {
|
||||
// Инициализация
|
||||
data = data.responseJSON;
|
||||
|
||||
notification_response(data, status);
|
||||
}
|
||||
|
||||
function notification_response(data, status) {
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
// Инициализация
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
};
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
};
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
};
|
||||
}
|
||||
|
||||
notification_response(data, status, xhr);
|
||||
};
|
||||
|
|
|
@ -1,42 +1,20 @@
|
|||
|
||||
function orders_response(data, status) {
|
||||
function orders_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
|
||||
function orders_response_success(data, status) {
|
||||
function orders_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
orders_response(data, status);
|
||||
}
|
||||
orders_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function orders_response_error(data, status) {
|
||||
function orders_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Инициализвация
|
||||
data = data.responseJSON;
|
||||
|
||||
orders_response(data, status);
|
||||
}
|
||||
orders_response(data, status, xhr);
|
||||
};
|
||||
|
|
|
@ -14,16 +14,16 @@ function order_init(order_key) {
|
|||
if ((target === undefined || target.children[1] === undefined || target.children[1].children[0] === undefined) && !target.classList.contains('dropdown-divider')) {
|
||||
|
||||
supplies_are_confirmed = false;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
if (supplies_are_confirmed) {
|
||||
|
||||
button.classList.remove('disabled');
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function order_accept(order_key) {
|
||||
$.ajax({
|
||||
|
@ -38,7 +38,7 @@ function order_accept(order_key) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function orders_supply_edit(supply_key, order_key) {
|
||||
// Инициализация
|
||||
|
@ -56,8 +56,8 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
// Если это кнопка конкретно с этого заказа
|
||||
|
||||
rows[i].classList.remove('row_supply_active');
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
// Активация выбранной кнопки
|
||||
supply.classList.add('row_supply_active');
|
||||
|
@ -72,10 +72,12 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
data: {
|
||||
'_csrf': yii.getCsrfToken()
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, statu, xhrs) {
|
||||
// Удаление индикатора загрузки
|
||||
panel.innerHTML = '';
|
||||
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
// Идентификатор
|
||||
if (document.getElementById(supply.getAttribute('id') + '_id') === null) {
|
||||
// Инициализация контейнера
|
||||
|
@ -97,7 +99,7 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
text.innerText = '#' + data.id;
|
||||
} else {
|
||||
text.innerText = 'Неизвестно';
|
||||
}
|
||||
};
|
||||
|
||||
// Запись в документ
|
||||
panel.appendChild(container);
|
||||
|
@ -139,7 +141,7 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
input.setAttribute('value', data.cost);
|
||||
} else {
|
||||
input.setAttribute('value', 0);
|
||||
}
|
||||
};
|
||||
input.setAttribute('aria-invalid', 'false');
|
||||
|
||||
// Инициализация дополнительных данных
|
||||
|
@ -177,7 +179,7 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
input.setAttribute('value', data.time);
|
||||
} else {
|
||||
input.setAttribute('value', 0);
|
||||
}
|
||||
};
|
||||
input.setAttribute('aria-invalid', 'false');
|
||||
|
||||
// Инициализация дополнительных данных
|
||||
|
@ -210,7 +212,7 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
textarea.value = 'Комментарий к заказу';
|
||||
} else {
|
||||
textarea.value = data.comm;
|
||||
}
|
||||
};
|
||||
|
||||
// Запись в документ
|
||||
panel.appendChild(container);
|
||||
|
@ -250,8 +252,8 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
|
||||
// Запись индикатора
|
||||
title.appendChild(span);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
// Запись в документ
|
||||
panel.appendChild(container);
|
||||
|
@ -260,14 +262,15 @@ function orders_supply_edit(supply_key, order_key) {
|
|||
// Реинициализация
|
||||
order_init(order_key);
|
||||
};
|
||||
};
|
||||
|
||||
orders_response_success(data, status);
|
||||
orders_response_success(data, status, xhr);
|
||||
},
|
||||
error: orders_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function orders_supply_comm_write(button, supply_key, order_key) {
|
||||
// Инициализация
|
||||
|
@ -281,7 +284,7 @@ function orders_supply_comm_write(button, supply_key, order_key) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'stts': 'accepted'
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
// Инициализация индикатора
|
||||
let span = document.createElement('span');
|
||||
span.setAttribute('id', supply.getAttribute('id') + '_stts_indicator_icon');
|
||||
|
@ -302,23 +305,24 @@ function orders_supply_comm_write(button, supply_key, order_key) {
|
|||
|
||||
// Запись индикатора
|
||||
title.appendChild(span);
|
||||
}
|
||||
};
|
||||
|
||||
// Реинициализация
|
||||
order_init(order_key);
|
||||
}
|
||||
};
|
||||
|
||||
orders_response_success(data, status);
|
||||
orders_response_success(data, status, xhr);
|
||||
},
|
||||
error: orders_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Изменить цену товара в заказе
|
||||
*/
|
||||
function orders_supply_cost_edit(supply_key, input) {
|
||||
function orders_supply_cost_edit(supply_key, input) {
|
||||
if (supply_key !== undefined && input !== undefined) {
|
||||
// Обработка входных параметров
|
||||
|
||||
|
@ -330,27 +334,27 @@ function orders_supply_comm_write(button, supply_key, order_key) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'cost': input.value
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
if (data.cost !== undefined) {
|
||||
input.value = data.cost;
|
||||
}
|
||||
};
|
||||
|
||||
orders_response_success(data, status);
|
||||
orders_response_success(data, status, xhr);
|
||||
},
|
||||
error: orders_response_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// Пересчитывание стоимости
|
||||
cart_cost_calculate();
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Изменить время доставки товара в заказе
|
||||
*/
|
||||
function orders_supply_time_edit(supply_key, input) {
|
||||
function orders_supply_time_edit(supply_key, input) {
|
||||
if (supply_key !== undefined && input !== undefined) {
|
||||
// Обработка входных параметров
|
||||
|
||||
|
@ -362,27 +366,31 @@ function orders_supply_comm_write(button, supply_key, order_key) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'time': input.value
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
if (data.time !== undefined) {
|
||||
input.value = data.time;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
orders_response_success(data, status);
|
||||
orders_response_success(data, status, xhr);
|
||||
},
|
||||
error: orders_response_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// Пересчитывание стоимости
|
||||
cart_cost_calculate();
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Изменить комментарий товара в заказе
|
||||
*/
|
||||
function orders_supply_comm_edit(supply_key, input) {
|
||||
function orders_supply_comm_edit(supply_key, input) {
|
||||
if (supply_key !== undefined && input !== undefined) {
|
||||
// Обработка входных параметров
|
||||
|
||||
|
@ -395,18 +403,22 @@ function orders_supply_comm_write(button, supply_key, order_key) {
|
|||
'comm': input.value
|
||||
},
|
||||
success: function (data, status) {
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
if (data.comm !== undefined) {
|
||||
input.value = data.comm;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
orders_response_success(data, status);
|
||||
},
|
||||
error: orders_response_error
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// Пересчитывание стоимости
|
||||
cart_cost_calculate();
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
|
|
@ -16,44 +16,28 @@ function product_image_choose(key, wrap) {
|
|||
} else {
|
||||
label.classList.remove('active');
|
||||
label.checked = 'false';
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
function product_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function product_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
function product_response_success(data, status) {
|
||||
product_response(data, status);
|
||||
}
|
||||
};
|
||||
|
||||
function product_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
function product_response_error(data, status) {
|
||||
// Инициализация
|
||||
data = data.responseJSON;
|
||||
|
||||
product_response(data, status);
|
||||
}
|
||||
|
||||
function product_response(data, status) {
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
// Инициализация
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
};
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
};
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
};
|
||||
}
|
||||
product_response(data, status, xhr);
|
||||
};
|
||||
|
|
|
@ -5,10 +5,10 @@ function product_panel_title_edit(catn, element) {
|
|||
element.removeAttribute('onclick');
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_title_save(catn, element) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -29,7 +29,11 @@ function product_panel_title_save(catn, element) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'text': text
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Заголовок
|
||||
if (data.name !== undefined && element !== null && element !== undefined) {
|
||||
// Обновление заголовка
|
||||
|
@ -38,17 +42,18 @@ function product_panel_title_save(catn, element) {
|
|||
// Запись аттрибута
|
||||
element.setAttribute('onclick', 'return product_panel_title_edit(\'' + catn + '\', this);');
|
||||
};
|
||||
};
|
||||
|
||||
product_response_success(data, status);
|
||||
product_response_success(data, status, xhr);
|
||||
},
|
||||
error: product_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_catn_edit(catn, element, redirect = false) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -57,10 +62,10 @@ function product_panel_catn_edit(catn, element, redirect = false) {
|
|||
element.removeAttribute('onclick');
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_catn_save(catn, element, redirect = false) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -81,25 +86,29 @@ function product_panel_catn_save(catn, element, redirect = false) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'text': text
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Заголовок
|
||||
if (data.catn !== undefined && element !== null && element !== undefined) {
|
||||
if (redirect) {
|
||||
// Перенаправление
|
||||
history.pushState({}, '/product/' + catn, '/product/' + data.catn);
|
||||
}
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
product_response_success(data, status);
|
||||
product_response_success(data, status, xhr);
|
||||
},
|
||||
error: product_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_dimensions_edit(catn, element, dimension) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -117,10 +126,10 @@ function product_panel_dimensions_edit(catn, element, dimension) {
|
|||
product_panel_handler_save(product_panel_dimensions_save, catn, input, dimension);
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_dimensions_save(catn, element, dimension) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -135,7 +144,7 @@ function product_panel_dimensions_save(catn, element, dimension) {
|
|||
|
||||
if (text.length === 0) {
|
||||
text = '0';
|
||||
}
|
||||
};
|
||||
|
||||
span.innerText = text;
|
||||
|
||||
|
@ -150,7 +159,10 @@ function product_panel_dimensions_save(catn, element, dimension) {
|
|||
'text': text,
|
||||
'dimension': dimension
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Заголовок
|
||||
if (data.dimension !== undefined && span !== null && span !== undefined) {
|
||||
// Обновление заголовка
|
||||
|
@ -159,17 +171,18 @@ function product_panel_dimensions_save(catn, element, dimension) {
|
|||
// Запись аттрибута
|
||||
span.setAttribute('onclick', 'return product_panel_dimensions_edit(\'' + catn + '\', this, \'' + dimension + '\');');
|
||||
};
|
||||
};
|
||||
|
||||
product_response_success(data, status);
|
||||
product_response_success(data, status, xhr);
|
||||
},
|
||||
error: product_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
function product_panel_weight_edit(catn, element) {
|
||||
|
@ -188,10 +201,10 @@ function product_panel_weight_edit(catn, element) {
|
|||
product_panel_handler_save(product_panel_weight_save, catn, input);
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_weight_save(catn, element) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -206,7 +219,7 @@ function product_panel_weight_save(catn, element) {
|
|||
|
||||
if (text.length === 0) {
|
||||
text = '0';
|
||||
}
|
||||
};
|
||||
|
||||
span.innerText = text;
|
||||
|
||||
|
@ -220,7 +233,10 @@ function product_panel_weight_save(catn, element) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'text': text
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Заголовок
|
||||
if (data.weight !== undefined && span !== null && span !== undefined) {
|
||||
// Обновление заголовка
|
||||
|
@ -229,17 +245,18 @@ function product_panel_weight_save(catn, element) {
|
|||
// Запись аттрибута
|
||||
span.setAttribute('onclick', 'return product_panel_weight_edit(\'' + catn + '\', this);');
|
||||
};
|
||||
};
|
||||
|
||||
product_response_success(data, status);
|
||||
product_response_success(data, status, xhr);
|
||||
},
|
||||
error: product_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_description_edit(catn, element) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -248,10 +265,10 @@ function product_panel_description_edit(catn, element) {
|
|||
element.removeAttribute('onclick');
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_description_save(catn, element) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -272,7 +289,10 @@ function product_panel_description_save(catn, element) {
|
|||
'_csrf': yii.getCsrfToken(),
|
||||
'text': text
|
||||
},
|
||||
success: function (data, status) {
|
||||
success: function (data, status, xhr) {
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Заголовок
|
||||
if (data.description !== undefined && element !== null && element !== undefined) {
|
||||
// Обновление заголовка
|
||||
|
@ -281,17 +301,18 @@ function product_panel_description_save(catn, element) {
|
|||
// Запись аттрибута
|
||||
element.setAttribute('onclick', 'return product_panel_description_edit(\'' + catn + '\', this);');
|
||||
};
|
||||
};
|
||||
|
||||
product_response_success(data, status);
|
||||
product_response_success(data, status, xhr);
|
||||
},
|
||||
error: product_response_error
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_images_write(catn, element) {
|
||||
if (catn !== null && catn !== undefined && element !== null && element !== undefined) {
|
||||
|
@ -301,7 +322,7 @@ function product_panel_images_write(catn, element) {
|
|||
data.append('_csrf', yii.getCsrfToken());
|
||||
for (i = 0; i < element.files.length; i++) {
|
||||
data.append('images[' + i + ']', element.files[i]);
|
||||
}
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: '/product/' + catn + '/write/image',
|
||||
|
@ -315,10 +336,10 @@ function product_panel_images_write(catn, element) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_images_delete(catn, index) {
|
||||
if (catn !== null && catn !== undefined && index !== null && index !== undefined) {
|
||||
|
@ -335,10 +356,10 @@ function product_panel_images_delete(catn, index) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_images_cover_write(catn, index) {
|
||||
if (catn !== null && catn !== undefined && index !== null && index !== undefined) {
|
||||
|
@ -355,10 +376,10 @@ function product_panel_images_cover_write(catn, index) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
function product_panel_handler_save(save, catn, element, ...vars) {
|
||||
if (save !== undefined && save !== null) {
|
||||
|
@ -366,9 +387,9 @@ function product_panel_handler_save(save, catn, element, ...vars) {
|
|||
if (event.target.id !== element.id) {
|
||||
save(catn, element, ...vars);
|
||||
document.body.removeEventListener('click', product_panel_handler_save_function, true);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
document.body.addEventListener('click', product_panel_handler_save_function, true);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
|
|
@ -6,14 +6,14 @@ function page_profile_supplies(form, panel) {
|
|||
|
||||
if (panel !== undefined) {
|
||||
form.panel = panel;
|
||||
}
|
||||
};
|
||||
} else {
|
||||
form = new FormData(form);
|
||||
|
||||
if (panel !== undefined) {
|
||||
form.append('panel', panel);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: '/profile/supplies',
|
||||
|
@ -25,7 +25,7 @@ function page_profile_supplies(form, panel) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function page_profile_supplies_import_excel(form, panel) {
|
||||
if (form === undefined) {
|
||||
|
@ -35,14 +35,14 @@ function page_profile_supplies_import_excel(form, panel) {
|
|||
|
||||
if (panel !== undefined) {
|
||||
form.panel = panel;
|
||||
}
|
||||
};
|
||||
} else {
|
||||
form = new FormData(form);
|
||||
|
||||
if (panel !== undefined) {
|
||||
form.append('panel', panel);
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: '/profile/import',
|
||||
|
@ -66,7 +66,7 @@ function page_profile_settings(form, panel) {
|
|||
|
||||
if (panel !== undefined) {
|
||||
form.panel = panel;
|
||||
}
|
||||
};
|
||||
} else {
|
||||
form = $(form).serializeArray();
|
||||
|
||||
|
@ -74,7 +74,7 @@ function page_profile_settings(form, panel) {
|
|||
name: "panel",
|
||||
value: panel
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
url: '/profile',
|
||||
|
@ -89,7 +89,7 @@ function page_profile_settings(form, panel) {
|
|||
initDropdownOem();
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
function page_profile_monitoring(change = 1, panel) {
|
||||
// Инициализация
|
||||
|
@ -100,7 +100,7 @@ function page_profile_monitoring(change = 1, panel) {
|
|||
search = 1;
|
||||
} else {
|
||||
search = +search + change;
|
||||
}
|
||||
};
|
||||
|
||||
// Предобработка
|
||||
url.searchParams.set('search', search);
|
||||
|
@ -132,45 +132,34 @@ function page_profile_monitoring(change = 1, panel) {
|
|||
return false;
|
||||
};
|
||||
|
||||
function page_profile_response_success(data, status) {
|
||||
|
||||
function page_profile_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function page_profile_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Активная панель
|
||||
if (data.panel_selected !== undefined) {
|
||||
// Активация
|
||||
document.getElementById(data.panel_selected).click()
|
||||
}
|
||||
document.getElementById(data.panel_selected).click();
|
||||
};
|
||||
};
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
page_profile_response(data, status);
|
||||
page_profile_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function page_profile_response_error(data, status) {
|
||||
function page_profile_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Инициализация
|
||||
data = data.responseJSON;
|
||||
|
||||
page_profile_response(data, status);
|
||||
page_profile_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function page_profile_response(data, status) {
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
// Инициализация
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление окна результатов поиска
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,8 +4,8 @@ function initDropdown(id) {
|
|||
|
||||
if (dropdown !== null && dropdown.length > 1) {
|
||||
dropdown.children[0].hidden = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
initDropdown('account-opts-import_sections_oem');
|
||||
initDropdown('account-opts-delivery_from_terminal');
|
||||
|
|
|
@ -11,10 +11,10 @@ function page_profile_panel_notification_create(form, html = 0) {
|
|||
name: 'Notification[html]',
|
||||
value: html
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
return page_profile_panel_write(form);
|
||||
}
|
||||
};
|
||||
|
||||
function page_profile_panel_settings(form, panel) {
|
||||
if (form == undefined) {
|
||||
|
@ -24,7 +24,7 @@ function page_profile_panel_settings(form, panel) {
|
|||
|
||||
if (panel !== undefined) {
|
||||
form.panel = panel;
|
||||
}
|
||||
};
|
||||
} else {
|
||||
form = $(form).serializeArray();
|
||||
|
||||
|
@ -32,10 +32,10 @@ function page_profile_panel_settings(form, panel) {
|
|||
name: "panel",
|
||||
value: panel
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
return page_profile_panel_write(form);
|
||||
}
|
||||
};
|
||||
|
||||
function page_profile_panel_write (form) {
|
||||
$.ajax({
|
||||
|
@ -48,4 +48,4 @@ function page_profile_panel_write (form) {
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
|
|
@ -2,6 +2,8 @@ function reinitialization(target) {
|
|||
// Уничтожает все внешние файлы загруженные внутри блока с переданным ID и загружает их в <head> и <body>
|
||||
|
||||
if (target !== undefined) {
|
||||
// Цель обозначена
|
||||
|
||||
let links = target.getElementsByTagName('link');
|
||||
let scripts = target.getElementsByTagName('script');
|
||||
|
||||
|
@ -12,7 +14,7 @@ function reinitialization(target) {
|
|||
new_link.rel = "stylesheet";
|
||||
document.getElementsByTagName("head")[0].appendChild(new_link);
|
||||
link.remove();
|
||||
}
|
||||
};
|
||||
|
||||
// Запись JS
|
||||
for (script of scripts) {
|
||||
|
@ -22,13 +24,13 @@ function reinitialization(target) {
|
|||
document.getElementsByTagName("body")[0].appendChild(new_script);
|
||||
} else {
|
||||
eval(script.innerText);
|
||||
}
|
||||
};
|
||||
|
||||
// script.remove(); По каким-то причинам не работает, надо бы доделать
|
||||
}
|
||||
};
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
return false;
|
||||
};
|
||||
|
|
|
@ -12,19 +12,19 @@ function product_search(text = '', advanced = 0) {
|
|||
'advanced': advanced,
|
||||
'request': text
|
||||
},
|
||||
success: function (data, status) {
|
||||
search_panel_success(text, advanced, data, status);
|
||||
success: function (data, statu, xhrs) {
|
||||
search_panel_success(text, advanced, data, status, xhr);
|
||||
},
|
||||
error: function (data, status) {
|
||||
search_panel_error(text, advanced, data, status);
|
||||
search_panel_error(text, advanced, data, status, xhr);
|
||||
},
|
||||
statusCode: search_panel_statusCode()
|
||||
statusCode: search_panel_statusCode
|
||||
});
|
||||
} else {
|
||||
// Показ истории поиска
|
||||
|
||||
product_search_history();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
function product_search_history(text = '', advanced = 0) {
|
||||
|
@ -38,14 +38,14 @@ function product_search_history(text = '', advanced = 0) {
|
|||
'history': true
|
||||
},
|
||||
success: function (data, status) {
|
||||
search_panel_success(text, advanced, data, status);
|
||||
search_panel_success(text, advanced, data, status, xhr);
|
||||
},
|
||||
error: function (data, status) {
|
||||
search_panel_error(text, advanced, data, status);
|
||||
search_panel_error(text, advanced, data, status, xhr);
|
||||
},
|
||||
statusCode: search_panel_statusCode()
|
||||
statusCode: search_panel_statusCode
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
function search_panel_show(line = 'search_line', panel = 'search_line_window') {
|
||||
// Показ панели поиска
|
||||
|
@ -55,7 +55,7 @@ function search_panel_show(line = 'search_line', panel = 'search_line_window') {
|
|||
|
||||
// Открытие
|
||||
$('#' + line).dropdown('show');
|
||||
}
|
||||
};
|
||||
|
||||
function search_panel_hide(line = 'search_line', panel = 'search_line_window') {
|
||||
// Сокрытие панели поиска
|
||||
|
@ -65,21 +65,12 @@ function search_panel_hide(line = 'search_line', panel = 'search_line_window') {
|
|||
|
||||
// Деактивация
|
||||
document.getElementById(panel).style.display = 'none';
|
||||
}
|
||||
};
|
||||
|
||||
function search_panel_success(text, advanced, data, status) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
function search_panel_response(text, advanced, data, status, xhr) {
|
||||
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
if (data !== undefined) {
|
||||
// Получены данные с сервера
|
||||
|
||||
// Окно поиска
|
||||
if (data.panel !== undefined) {
|
||||
|
@ -93,7 +84,7 @@ function search_panel_success(text, advanced, data, status) {
|
|||
|
||||
// Реинициализация
|
||||
reinitialization(panel);
|
||||
}
|
||||
};
|
||||
|
||||
// Таймер для повтора запроса
|
||||
if (data.timer !== undefined) {
|
||||
|
@ -107,106 +98,48 @@ function search_panel_success(text, advanced, data, status) {
|
|||
|
||||
// Запрос
|
||||
setTimeout(product_search, data.timer + '000', text, advanced);
|
||||
}
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
if (data.responseJSON.hide === 1) {
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
// Сокрытие окна поиска
|
||||
if (data.search_line_window_hide === 1) {
|
||||
search_panel_hide();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
main_response(data, status, xhr);
|
||||
}
|
||||
|
||||
function search_panel_success(text, advanced, data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
search_panel_response(text, advanced, data, status, xhr);
|
||||
};
|
||||
|
||||
function search_panel_error(text, advanced, data, status) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Основной блок
|
||||
if (data.responseJSON.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
// Инициализация
|
||||
data = data.responseJSON;
|
||||
|
||||
// Обновление окна результатов поиска
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// Окно поиска
|
||||
if (data.responseJSON.panel !== undefined) {
|
||||
panel = document.getElementById('search_line_window');
|
||||
|
||||
// Обновление окна результатов поиска
|
||||
panel.innerHTML = data.responseJSON.panel;
|
||||
|
||||
// Отображение окна (потом надо переделать)
|
||||
$('#search_line').dropdown('show');
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(panel);
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.responseJSON.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.responseJSON.redirect);
|
||||
}
|
||||
|
||||
// Таймер для повтора запроса
|
||||
if (data.responseJSON.timer !== undefined) {
|
||||
// Ожидание перед повторным запросом
|
||||
|
||||
if (getCookie('search') !== 'processing') {
|
||||
// На данный момент нет других запросов поиска
|
||||
|
||||
// Запись о существовании запроса
|
||||
search_panel_statusCode_progress();
|
||||
|
||||
// Запрос
|
||||
setTimeout(product_search, data.responseJSON.timer + '000', text, advanced);
|
||||
}
|
||||
}
|
||||
|
||||
// Сокрытие окна поиска
|
||||
if (data.responseJSON.hide === 1) {
|
||||
search_panel_hide();
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data.responseJSON._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data.responseJSON._csrf);
|
||||
}
|
||||
}
|
||||
search_panel_response(text, advanced, data, status, xhr);
|
||||
};
|
||||
|
||||
function search_panel_statusCode() {
|
||||
return {
|
||||
200: search_panel_statusCode_waiting,
|
||||
404: search_panel_statusCode_waiting,
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
function search_panel_statusCode_waiting() {
|
||||
// Ожидание нового запроса
|
||||
document.cookie = "search=waiting; path=/";
|
||||
document.body.style.cursor = "unset";
|
||||
}
|
||||
};
|
||||
|
||||
function search_panel_statusCode_progress() {
|
||||
// Выполнение запроса
|
||||
document.cookie = "search=processing; path=/";
|
||||
document.body.style.cursor = "progress";
|
||||
}
|
||||
};
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
function writeInDevelopment(target) {
|
||||
// Инициализация буфера
|
||||
let buffer = target.innerText;
|
||||
|
||||
// Запись текста
|
||||
target.innerText = target.innerText + ' (в разработке)';
|
||||
|
||||
// Блокировка от повторного вызова
|
||||
target.setAttribute('onclick', 'return false;');
|
||||
|
||||
setTimeout(function () {
|
||||
// Возврат изначального текста из буфера
|
||||
target.innerText = buffer;
|
||||
|
||||
// Разблокировка
|
||||
target.setAttribute('onclick', 'return writeinDevelopment(this);');
|
||||
}, 3000);
|
||||
|
||||
return false;
|
||||
};
|
|
@ -9,19 +9,19 @@ function initTextarea(textarea_id, counter_current_id, counter_maximum_id, disab
|
|||
|
||||
if (characterCount < 70) {
|
||||
current.css('color', '#343a40');
|
||||
}
|
||||
};
|
||||
if (characterCount > 160 && characterCount < 179) {
|
||||
current.css('color', '#600000');
|
||||
}
|
||||
};
|
||||
if (characterCount > 180 && characterCount < 209) {
|
||||
current.css('color', '#700000');
|
||||
}
|
||||
};
|
||||
if (characterCount > 210 && characterCount < 249) {
|
||||
current.css('color', '#c00');
|
||||
}
|
||||
};
|
||||
if (characterCount > 250 && characterCount < 299) {
|
||||
current.css('color', '#d00');
|
||||
}
|
||||
};
|
||||
if (characterCount > 300) {
|
||||
disable_callable();
|
||||
|
||||
|
@ -31,10 +31,10 @@ function initTextarea(textarea_id, counter_current_id, counter_maximum_id, disab
|
|||
current.css('color', '#e00');
|
||||
} else {
|
||||
maximum.css('color', 'rgb(210, 0, 0)');
|
||||
}
|
||||
};
|
||||
} else {
|
||||
maximum.css('color', '#343a40');
|
||||
enable_callable();
|
||||
}
|
||||
};
|
||||
});
|
||||
}
|
||||
};
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
function tickerInit(target) {
|
||||
if (target === undefined) {
|
||||
target = $('.ticker');
|
||||
}
|
||||
};
|
||||
|
||||
target.bxSlider({
|
||||
ticker: true,
|
||||
|
|
|
@ -1,23 +1,25 @@
|
|||
function url_var_insert(key, value)
|
||||
{
|
||||
key = encodeURI(key); value = encodeURI(value);
|
||||
function url_var_insert(key, value) {
|
||||
let key = encodeURI(key); value = encodeURI(value);
|
||||
|
||||
var kvp = document.location.search.substr(1).split('&');
|
||||
kvp = document.location.search.substr(1).split('&');
|
||||
|
||||
var i=kvp.length; var x; while(i--)
|
||||
{
|
||||
let i = kvp.length;
|
||||
let x;
|
||||
|
||||
while (i--) {
|
||||
x = kvp[i].split('=');
|
||||
|
||||
if (x[0]==key)
|
||||
{
|
||||
if (x[0] == key) {
|
||||
x[1] = value;
|
||||
kvp[i] = x.join('=');
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
if(i<0) {kvp[kvp.length] = [key,value].join('=');}
|
||||
if (i < 0) {
|
||||
kvp[kvp.length] = [key, value].join('=');
|
||||
};
|
||||
|
||||
//this will reload the page, it's likely better to store this until finished
|
||||
// this will reload the page, it's likely better to store this until finished
|
||||
document.location.search = kvp.join('&');
|
||||
}
|
||||
};
|
||||
|
|
|
@ -13,47 +13,26 @@
|
|||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
function verify_response(data, status) {
|
||||
function verify_response(data, status, xhr) {
|
||||
// Обработка ответов
|
||||
|
||||
// Основной блок
|
||||
if (data.main !== undefined) {
|
||||
main = document.getElementsByTagName('main')[0];
|
||||
main_response(data, status, xhr);
|
||||
};
|
||||
|
||||
// Обновление документа
|
||||
main.innerHTML = data.main;
|
||||
|
||||
// Реинициализация
|
||||
reinitialization(main);
|
||||
}
|
||||
|
||||
// Перенаправление
|
||||
if (data.redirect !== undefined) {
|
||||
// Перенаправление
|
||||
history.pushState({}, document.title, data.redirect);
|
||||
}
|
||||
|
||||
// CSRF-токен
|
||||
if (data._csrf !== undefined) {
|
||||
// Обновление документа
|
||||
$('meta[name=csrf-token]').prop("content", data._csrf);
|
||||
}
|
||||
}
|
||||
|
||||
function verify_response_success(data, status) {
|
||||
function verify_response_success(data, status, xhr) {
|
||||
// Обработка ответов от удавшихся запросов
|
||||
|
||||
verify_response(data, status);
|
||||
}
|
||||
verify_response(data, status, xhr);
|
||||
};
|
||||
|
||||
function verify_response_error(data, status) {
|
||||
function verify_response_error(data, status, xhr) {
|
||||
// Обработка ответов от неудавшихся запросов
|
||||
|
||||
// Инициализвация
|
||||
data = data.responseJSON;
|
||||
|
||||
verify_response(data, status);
|
||||
}
|
||||
verify_response(data, status, xhr);
|
||||
};
|
||||
|
|
Reference in New Issue