From 0905b21570b813471a4487c30bcf146d37d68aa1 Mon Sep 17 00:00:00 2001 From: gitadmin Date: Sun, 12 Oct 2025 11:55:44 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20PROCESS=5FEVENT=5FUPDATES=20=D0=B8=20?= =?UTF-8?q?=D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B8=20=D0=BE=D1=82=D0=BA=D0=BB=D1=8E=D1=87=D0=B0=D1=82=D1=8C?= =?UTF-8?q?=20=D1=8D=D1=82=D0=BE=D0=B9=20=D0=BF=D0=B5=D1=80=D0=B5=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=BD=D0=BE=D0=B9=20=D0=B0=D0=B2=D1=82=D0=BE=D0=BF?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D0=B8=D0=BD=D0=B3=20=D0=B4=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D1=8F=D0=B5=D0=BC=D1=8B?= =?UTF-8?q?=D1=85=20=D1=81=D0=BE=D0=B1=D1=8B=D1=82=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env | 1 + zk_load.py | 12 ++++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.env b/.env index 6cd447c..43aa004 100644 --- a/.env +++ b/.env @@ -89,6 +89,7 @@ DESC_PREFIX = "https://reg.konvent.ru/zk2025/events/actions/" # Event status IS_EVENT = true AUTO_PUBLISH = true +PROCESS_EVENT_UPDATES = true # OpenRouter OR_KEY = "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" diff --git a/zk_load.py b/zk_load.py index 3b14853..661d757 100644 --- a/zk_load.py +++ b/zk_load.py @@ -17,6 +17,7 @@ MDB_USER = os.getenv('MDB_USER') MDB_PW = os.getenv('MDB_PW') MDBASE = os.getenv('MDBASE') LOG_FILE = os.getenv('LOG_FILE') +PROCESS_EVENT_UPDATES = os.getenv('PROCESS_EVENT_UPDATES', 'false').lower() == 'true' def log_message(message, category="JSON_loader"): """Функция для записи в лог-файл с повторными попытками при блокировке""" @@ -146,12 +147,13 @@ def process_json_data(): existing_modified = existing_modified.replace(tzinfo=None) # Проверка расхождения во времени - time_diff = abs(modified - existing_modified) if modified and existing_modified else timedelta(minutes=2) + time_diff = abs(modified - existing_modified) if modified and existing_modified else timedelta(seconds=2) - if time_diff > timedelta(minutes=1): + if time_diff > timedelta(seconds=1): # Проверка изменения только по полю name name_changed = existing['name'] != name - is_posted_tg = 0 if name_changed else existing['is_posted_tg'] + # Сброс флага is_posted_tg только если PROCESS_EVENT_UPDATES = true + is_posted_tg = 0 if (name_changed and PROCESS_EVENT_UPDATES) else existing['is_posted_tg'] # Обновление записи cursor.execute( @@ -168,8 +170,10 @@ def process_json_data(): # Формирование сообщения для лога update_msg = f"Обновление: Запись {id_event}, Updated: {modified}" - if name_changed: + if name_changed and PROCESS_EVENT_UPDATES: update_msg += ". Флаг публикации сброшен." + elif name_changed and not PROCESS_EVENT_UPDATES: + update_msg += ". Имя изменено, но флаг публикации сохранен (PROCESS_EVENT_UPDATES=false)." log_message(update_msg) connection.commit()