Файл: upload/pages/admin/solutions/solutions.php
Строк: 291
<?php
require_once ($_SERVER['DOCUMENT_ROOT'] . '/core/core.php');
if ($users_perms['manage_deal'] != 1) {
RedirectToPage('/');
exit();
}
$categories = dbquery("SELECT * FROM `solutions_category` ORDER BY `id`");
echo '<div class="home_us tematic">';
$breadcrumbs = generateBreadcrumbs([
['/', 'Главная'],
['/admin', 'Админ панель'],
['#', 'База знаний']
]);
$html = $breadcrumbs['html'];
$json_ld = $breadcrumbs['json_ld'];
echo $html;
echo '<script type="application/ld+json">' . $json_ld . '</script>';
echo '<div class="head_box section-header">
<div class="box_title">База знаний</div>
</div>';
echo '<div class="side_in_count">';
include ($_SERVER['DOCUMENT_ROOT'] . '/core/elements/sidebars/panel.php');
echo '<div class="info_box arb">
<div class="node-info_box">
<div class="dropdown">
<a class="btn button btn-secondary dropdown-toggle" data-bs-toggle="dropdown">Добавить узел</a>
<ul class="dropdown-menu" style="inset: auto;">
<li><a class="dropdown-item" href="' . homeLink() . '/admin/solutions/new-category">Добавить категорию</a></li>
<li><a class="dropdown-item" data-bs-toggle="modal" data-bs-target="#new-section">Добавить раздел</a></li>
<li><a class="dropdown-item" data-bs-toggle="modal" data-bs-target="#new-solution">Добавить решение</a></li>
</ui>
</div>
<div class="modal fade" id="new-section" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Выберите категорию</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><i class = "fas fa-xmark"></i></button>
</div>
<div class="modal-body">';
$category = dbquery("SELECT * FROM `solutions_category` ORDER BY `id`");
while($c = FetchAssoc($category)) {
echo '<a class="link-nc" href="' . homeLink() . '/admin/solutions/new-section' . ($c['id'] ?? '') . '">' . ($c['name'] ?? '-') . '</a>';
}
echo '</div>
<div class="modal-footer">
<a class="button" style="float: right;" data-bs-dismiss="modal">Отмена</a>
</div>
</div>
</div>
</div>
<div class="modal fade" id="new-solution" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Выберите раздел</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><i class = "fas fa-xmark"></i></button>
</div>
<div class="modal-body">';
$scategory = dbquery("SELECT * FROM `solutions_category` ORDER BY `id`");
echo '<div class="flex-nc_box">';
while($sc = FetchAssoc($scategory)) {
echo '<div class="nc_box">
<div class="name-nc">' . $sc['name'] . '</div>';
$section = dbquery("SELECT * FROM `solutions_section` WHERE `category` = ? ORDER BY `id`", [$sc['id']]);
while($rz = FetchAssoc($section)) {
echo '<a class="link-nc" href="' . homeLink() . '/admin/solutions/new-solution' . ($rz['id'] ?? '') . '">' . ($rz['name'] ?? '-') . '</a>';
}
echo '</div>';
}
echo '</div>';
echo '</div>
<div class="modal-footer">
<a class="button" style="float: right;" data-bs-dismiss="modal">Отмена</a>
</div>
</div>
</div>
</div>
<div class="modal fade" id="deleteSolution" tabindex="-1">
<form method="POST" action="' . homeLink() . '/admin/solutions/del-solution" id="delete-solution">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Удаление решения</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><i class = "fas fa-xmark"></i></button>
</div>
<div class="modal-body">
<span>Удалить решение <b><span id="delete-solution-text"></span></b>?</span>
<input type="hidden" name="id" id="delete-solution-id">
<input type="hidden" name="csrf_token" value="' . $_SESSION['csrf_token'] . '">
</div>
<div class="modal-footer">
<input type="submit" name="del-solution" class="btn button" style="float: right; margin-left: 5px;" value="Удалить">
</div>
</div>
</div>
</form>
</div>
<div class="modal fade" id="deletesection" tabindex="-1">
<form method="POST" action="' . homeLink() . '/admin/solutions/del-section" id="delete-section">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Удаление раздела</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><i class = "fas fa-xmark"></i></button>
</div>
<div class="modal-body">
<span>Удалить раздел <b><span id="delete-section-text"></span></b>?</span>
<input type="hidden" name="id" id="delete-section-id">
<input type="hidden" name="csrf_token" value="' . $_SESSION['csrf_token'] . '">
</div>
<div class="modal-footer">
<input type="submit" name="del-section" class="btn button" style="float: right; margin-left: 5px;" value="Удалить">
</div>
</div>
</div>
</form>
</div>
<div class="modal fade" id="deleteCategory" tabindex="-1">
<form method="POST" action="' . homeLink() . '/admin/solutions/del-category" id="delete-category">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Удаление категории</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"><i class = "fas fa-xmark"></i></button>
</div>
<div class="modal-body">
<span>Удалить категорию <b><span id="delete-category-text"></span></b>?</span>
<input type="hidden" name="id" id="delete-category-id">
<input type="hidden" name="csrf_token" value="' . $_SESSION['csrf_token'] . '">
</div>
<div class="modal-footer">
<input type="submit" name="del-category" class="btn button" style="float: right; margin-left: 5px;" value="Удалить">
</div>
</div>
</div>
</form>
</div>';
while($ct = FetchAssoc($categories)) {
echo '<div class="node_box">';
echo '<div class="category_node-elm"><div class="name_node">' . ($ct['name'] ?? '-') . '</div><div class="links_node"><a class="link-node" href="' . homeLink() . '/admin/solutions/edit-category' . ($ct['id'] ?? '') . '">Редактировать</a><a class="link-node del-btn" data-id="' . ($ct['id'] ?? '') . '" data-name="' . ($ct['name'] ?? '-') . '" data-type="category" data-bs-toggle="modal" data-bs-target="#deleteCategory">Удалить</a></div></div>';
$section = dbquery("SELECT * FROM `solutions_section` WHERE `category` = ? ORDER BY `id`", [$ct['id']]);
echo '<div class="prz_box">';
while($rz = FetchAssoc($section)) {
echo '<div class="prz-node_box">';
echo '<div class="subcategory_node-elm"><div class="name_node">' . ($rz['name'] ?? '-') . '</div><div class="links_node"><a class="link-node" href="' . homeLink() . '/admin/solutions/edit-section' . ($rz['id'] ?? '') . '">Редактировать</a><a class="link-node del-btn" data-id="' . ($rz['id'] ?? '') . '" data-name="' . ($rz['name'] ?? '-') . '" data-type="section" data-bs-toggle="modal" data-bs-target="#deletesection">Удалить</a></div></div>';
$question = dbquery("SELECT * FROM `solutions_question` WHERE `section` = ? ORDER BY `id`", [$rz['id']]);
while($qs = FetchAssoc($question)) {
echo '<div class="section_node-elm"><div class="name_node">' . ($qs['question'] ?? '-') . '</div><div class="links_node"><a class="link-node" href="' . homeLink() . '/admin/solutions/edit-solution' . ($qs['id'] ?? '') . '">Редактировать</a><a class="link-node del-btn" data-id="' . ($qs['id'] ?? '') . '" data-name="' . ($qs['question'] ?? '-') . '" data-type="solution" data-bs-toggle="modal" data-bs-target="#deleteSolution">Удалить</a></div></div>';
}
echo '</div>';
}
echo '</div>';
echo '</div>';
}
echo '</div>';
echo '</div>';
echo '</div>';
echo '</div>';
$page_html = ob_get_clean();
require_once ($_SERVER['DOCUMENT_ROOT'] . '/layout.php');
?>
<script>
document.addEventListener('click', function(e) {
if (e.target.classList.contains('del-btn')) {
let id = e.target.dataset.id;
let name = e.target.dataset.name;
let type = e.target.dataset.type;
if (type === 'solution') {
document.getElementById('delete-solution-text').innerText =
'' + name + '';
document.getElementById('delete-solution-id').value = id;
}
if (type === 'section') {
document.getElementById('delete-section-text').innerText =
'' + name + '';
document.getElementById('delete-section-id').value = id;
}
if (type === 'category') {
document.getElementById('delete-category-text').innerText =
'' + name + '';
document.getElementById('delete-category-id').value = id;
}
}
});
</script>