переразмещение кнопки групповой привязки
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
2025-09-29 16:07:59 +03:00
parent 8c02770fe3
commit f40dbbf41d
+23 -8
View File
@@ -430,11 +430,11 @@
<span>Выбранное событие: </span> <span>Выбранное событие: </span>
<span id="post-selected-event-name"></span> <span id="post-selected-event-name"></span>
<button class="btn btn-sm btn-outline-primary ms-2" id="post-link-event-btn">Привязать</button> <button class="btn btn-sm btn-outline-primary ms-2" id="post-link-event-btn">Привязать</button>
</div>
<button class="btn btn-sm btn-outline-success ms-2" id="post-venues-btn" style="display: none;"> <button class="btn btn-sm btn-outline-success ms-2" id="post-venues-btn" style="display: none;">
<i class="fas fa-map-marker-alt me-1"></i> Площадки <i class="fas fa-map-marker-alt me-1"></i> Площадки
</button> </button>
</div> </div>
</div>
<div class="row"> <div class="row">
<!-- Левая панель - список постов --> <!-- Левая панель - список постов -->
<div class="col-md-5"> <div class="col-md-5">
@@ -719,6 +719,8 @@
loadPosts(); loadPosts();
updateSelectedEventInfo(); updateSelectedEventInfo();
} }
// Обновляем видимость кнопки "Площадки"
updateVenuesButtonVisibility();
// Принудительно обновляем размеры панелей и синхронизируем колонки // Принудительно обновляем размеры панелей и синхронизируем колонки
setTimeout(() => { setTimeout(() => {
adjustPanelWidthsOnResize(); adjustPanelWidthsOnResize();
@@ -730,6 +732,10 @@
loadEvents(); loadEvents();
updateSelectedPostInfo(); updateSelectedPostInfo();
} }
// Сбрасываем выбранный пост при переключении на вкладку событий
selectedPostId = null;
selectedPostData = null;
updateVenuesButtonVisibility();
// Принудительно обновляем размеры панелей и синхронизируем колонки // Принудительно обновляем размеры панелей и синхронизируем колонки
setTimeout(() => { setTimeout(() => {
adjustPanelWidthsOnResize(); adjustPanelWidthsOnResize();
@@ -1640,6 +1646,8 @@
updateSelectedPostInfo(); updateSelectedPostInfo();
// Обновляем информацию о выбранном событии на вкладке постов (для показа кнопки "Площадки") // Обновляем информацию о выбранном событии на вкладке постов (для показа кнопки "Площадки")
updateSelectedEventInfo(); updateSelectedEventInfo();
// Показываем кнопку "Площадки" при выборе поста
updateVenuesButtonVisibility();
} }
// Показать детали поста // Показать детали поста
async function showPostDetails(postId) { async function showPostDetails(postId) {
@@ -1917,20 +1925,22 @@
function updateSelectedEventInfo() { function updateSelectedEventInfo() {
const eventInfoElement = document.getElementById('post-selected-event-info'); const eventInfoElement = document.getElementById('post-selected-event-info');
const eventNameElement = document.getElementById('post-selected-event-name'); const eventNameElement = document.getElementById('post-selected-event-name');
const venuesBtn = document.getElementById('post-venues-btn');
if (selectedEventData) { if (selectedEventData) {
eventNameElement.textContent = selectedEventData.name || `Событие ${selectedEventData.id}`; eventNameElement.textContent = selectedEventData.name || `Событие ${selectedEventData.id}`;
eventInfoElement.style.display = 'flex'; eventInfoElement.style.display = 'flex';
// Показываем кнопку "Площадки" только если выбран пост
if (selectedPostId) {
venuesBtn.style.display = 'inline-block';
} else {
venuesBtn.style.display = 'none';
}
updateInterlinkInfo(); updateInterlinkInfo();
} else { } else {
eventInfoElement.style.display = 'none'; eventInfoElement.style.display = 'none';
}
}
// Обновление видимости кнопки "Площадки"
function updateVenuesButtonVisibility() {
const venuesBtn = document.getElementById('post-venues-btn');
if (selectedPostId) {
venuesBtn.style.display = 'inline-block';
} else {
venuesBtn.style.display = 'none'; venuesBtn.style.display = 'none';
} }
} }
@@ -2770,6 +2780,11 @@ document.addEventListener('DOMContentLoaded', () => {
// Обновляем информацию о связях // Обновляем информацию о связях
updateInterlinkInfo(); updateInterlinkInfo();
// Обновляем детали выбранного поста, если он открыт
if (currentPostId) {
await showPostDetails(currentPostId);
}
} catch (error) { } catch (error) {
console.error('Ошибка при сохранении изменений:', error); console.error('Ошибка при сохранении изменений:', error);
alert('Ошибка при сохранении изменений'); alert('Ошибка при сохранении изменений');