This commit is contained in:
+19
@@ -26,6 +26,7 @@ from evtg_publish import tg_post_event_by_id, tg_post_all_events
|
|||||||
from zk_load import load_json_all
|
from zk_load import load_json_all
|
||||||
from volk_load import load_categories, load_all_events
|
from volk_load import load_categories, load_all_events
|
||||||
from volk_cat_publish import tg_post_category_by_id, tg_post_all_categories
|
from volk_cat_publish import tg_post_category_by_id, tg_post_all_categories
|
||||||
|
from test_tg_poster import make_test_post
|
||||||
|
|
||||||
# Загружаем настройки из .env
|
# Загружаем настройки из .env
|
||||||
load_dotenv()
|
load_dotenv()
|
||||||
@@ -985,6 +986,24 @@ def api_generate_all_shortnames():
|
|||||||
log_event(error_msg)
|
log_event(error_msg)
|
||||||
return jsonify({'success': False, 'error': error_msg}), 500
|
return jsonify({'success': False, 'error': error_msg}), 500
|
||||||
|
|
||||||
|
@bp.route('/api/test_post', methods=['POST'])
|
||||||
|
@login_required
|
||||||
|
def api_test_post():
|
||||||
|
try:
|
||||||
|
log_event("Запуск публикации тестового сообщения...")
|
||||||
|
result = make_test_post()
|
||||||
|
if result:
|
||||||
|
log_event("Тестовое сообщение успешно опубликовано")
|
||||||
|
return jsonify({'success': True})
|
||||||
|
else:
|
||||||
|
error_msg = "Не удалось опубликовать тестовое сообщение"
|
||||||
|
log_event(error_msg)
|
||||||
|
return jsonify({'success': False, 'error': error_msg}), 500
|
||||||
|
except Exception as e:
|
||||||
|
error_msg = f"Ошибка при публикации тестового сообщения: {str(e)}"
|
||||||
|
log_event(error_msg)
|
||||||
|
return jsonify({'success': False, 'error': error_msg}), 500
|
||||||
|
|
||||||
@bp.route('/api/generate_shortname/<int:post_id>', methods=['POST'])
|
@bp.route('/api/generate_shortname/<int:post_id>', methods=['POST'])
|
||||||
@login_required
|
@login_required
|
||||||
def api_generate_shortname(post_id):
|
def api_generate_shortname(post_id):
|
||||||
|
|||||||
@@ -478,6 +478,9 @@
|
|||||||
<button class="btn btn-info" id="generate-names-btn">
|
<button class="btn btn-info" id="generate-names-btn">
|
||||||
<i class="fas fa-font me-1"></i> Названия
|
<i class="fas fa-font me-1"></i> Названия
|
||||||
</button>
|
</button>
|
||||||
|
<button class="btn btn-secondary ms-2" id="test-post-btn">
|
||||||
|
<i class="fas fa-vial me-1"></i> Тест
|
||||||
|
</button>
|
||||||
<div id="post-selected-event-info" class="cross-tab-info" style="display: none;">
|
<div id="post-selected-event-info" class="cross-tab-info" style="display: none;">
|
||||||
<span>Выбранное событие: </span>
|
<span>Выбранное событие: </span>
|
||||||
<span id="post-selected-event-name"></span>
|
<span id="post-selected-event-name"></span>
|
||||||
@@ -939,6 +942,7 @@
|
|||||||
document.getElementById('mark-all-posts-pub-btn').addEventListener('click', markAllPostsForPublication);
|
document.getElementById('mark-all-posts-pub-btn').addEventListener('click', markAllPostsForPublication);
|
||||||
document.getElementById('publish-btn').addEventListener('click', runPublishScript);
|
document.getElementById('publish-btn').addEventListener('click', runPublishScript);
|
||||||
document.getElementById('generate-names-btn').addEventListener('click', generateAllShortnames);
|
document.getElementById('generate-names-btn').addEventListener('click', generateAllShortnames);
|
||||||
|
document.getElementById('test-post-btn').addEventListener('click', runTestPost);
|
||||||
document.getElementById('refresh-events-btn').addEventListener('click', loadEvents);
|
document.getElementById('refresh-events-btn').addEventListener('click', loadEvents);
|
||||||
// Обработчики для кнопок добавления события
|
// Обработчики для кнопок добавления события
|
||||||
document.getElementById('add-event-btn').addEventListener('click', () => {
|
document.getElementById('add-event-btn').addEventListener('click', () => {
|
||||||
@@ -1540,6 +1544,31 @@
|
|||||||
alert('Произошла ошибка при генерации названий');
|
alert('Произошла ошибка при генерации названий');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// Функция для запуска тестового поста
|
||||||
|
function runTestPost() {
|
||||||
|
showProcessingMessage("Публикация тестового сообщения...");
|
||||||
|
fetch(`${PREFIX}/api/test_post`, {
|
||||||
|
method: 'POST',
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
'X-Requested-With': 'XMLHttpRequest'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.then(response => response.json())
|
||||||
|
.then(data => {
|
||||||
|
hideProcessingMessage();
|
||||||
|
if (data.success) {
|
||||||
|
alert('Тестовое сообщение успешно опубликовано!');
|
||||||
|
} else {
|
||||||
|
alert('Ошибка публикации тестового сообщения: ' + (data.error || 'неизвестная ошибка'));
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
hideProcessingMessage();
|
||||||
|
console.error('Ошибка публикации тестового сообщения:', error);
|
||||||
|
alert('Произошла ошибка при публикации тестового сообщения');
|
||||||
|
});
|
||||||
|
}
|
||||||
// Функция для генерации названия для конкретного поста
|
// Функция для генерации названия для конкретного поста
|
||||||
function generateShortname(postId) {
|
function generateShortname(postId) {
|
||||||
showProcessingMessage("Генерация названия для поста...");
|
showProcessingMessage("Генерация названия для поста...");
|
||||||
@@ -2939,6 +2968,7 @@
|
|||||||
window.deletePost = deletePost;
|
window.deletePost = deletePost;
|
||||||
window.deleteEvent = deleteEvent;
|
window.deleteEvent = deleteEvent;
|
||||||
window.generateAllShortnames = generateAllShortnames;
|
window.generateAllShortnames = generateAllShortnames;
|
||||||
|
window.runTestPost = runTestPost;
|
||||||
window.generateShortname = generateShortname;
|
window.generateShortname = generateShortname;
|
||||||
window.publishPost = publishPost;
|
window.publishPost = publishPost;
|
||||||
window.publishCurrentEvent = publishCurrentEvent;
|
window.publishCurrentEvent = publishCurrentEvent;
|
||||||
|
|||||||
Reference in New Issue
Block a user