1
0
mirror of https://github.com/civsocit/olgram.git synced 2025-12-20 20:06:29 +00:00

html support in /start message

This commit is contained in:
mihalin
2022-06-24 23:58:59 +03:00
parent 4063f9f336
commit 944c5ce002
3 changed files with 35 additions and 5 deletions

View File

@@ -26,6 +26,10 @@ async def upgrade_1():
async def upgrade_2():
"""Отменяем малый TTL для старых сообщений"""
meta_info = await MetaInfo.first()
if meta_info.version != 1:
logging.info("skip")
return
con = await aioredis.create_connection(ServerSettings.redis_path())
client = aioredis.Redis(con)
@@ -35,9 +39,35 @@ async def upgrade_2():
if not key.startswith(b"thread"):
await client.pexpire(key, ServerSettings.redis_timeout_ms())
meta_info.version = 2
await meta_info.save()
logging.info("done")
async def upgrade_3():
"""start_text и second_text должны быть валидными HTML"""
import html
meta_info = await MetaInfo.first()
if meta_info.version != 2:
logging.info("skip")
return
async with transactions.in_transaction():
bots = await Bot.all()
for bot in bots:
if bot.start_text:
bot.start_text = html.escape(bot.start_text)
if bot.second_text:
bot.second_text = html.escape(bot.second_text)
await bot.save(update_fields=["start_text", "second_text"])
meta_info.version = 3
await meta_info.save()
logging.info("done")
# Не забудь добавить миграцию в этот лист!
_migrations = [upgrade_1, upgrade_2]
_migrations = [upgrade_1, upgrade_2, upgrade_3]
async def migrate():