예제 #1
0
async def keyboards(message: Message):
    text = "Нажми на кнопку"
    keyboard = ListOfButtons(
        text=["Кошелек", "Имя"],
        callback=[f"user {message.from_user.username}", "2"]
    ).inline_keyboard
    await message.reply(text=text, reply_markup=keyboard)
예제 #2
0
async def keyboards(message: Message):
    text = 'Выберите раздел'
    keyboard = ListOfButtons(
        text=['Обучение', 'Рассылка', 'Анкетирование', 'COVID-19', 'Новости'],
        align=[2, 2, 1]  # 2-это сколько кнопок в одном ряду
    ).reply_keyboard
    await message.reply(text=text, reply_markup=keyboard)
예제 #3
0
async def register_user(message: types.Message):
    chat_id = message.from_user.id
    referral = message.get_args()
    id = await db.add_new_user(referral=referral)
    count_users = await db.count_users()
    keyboard = ListOfButtons(
        text=["Стать предпринимателем 💼", "Пригласить члена партии 🗣", "Все о партии 🌍", "Общение ☎️", "Социальная иерархия СССР 🇲🇪"],
        align=[2, 2, 1]
    ).reply_keyboard
    text = "Добро пожаловать, коммунист!"
    if not id:
        id = await db.get_id()
    else:
        text += "Записал в базу! "

    bot_username = (await bot.me).username
    bot_link = f"https://t.me/{bot_username}?start={id}"
    balance = await db.check_balance()
    text += f"""

<b>Мы видим, что ты заблудился и находишься в поисках нужного пути для дальнейшего движения по просторам интернета.</b> 

Тебе однозначно повезло! Если ты читаешь данное послание, то уже мысленно вступил в партию Коммуналка СССР. 
Последний шаг за тобой. Действуй. Чего же ты ждёшь?
<b>Мы рады тебя приветствовать в нашей партии.</b>

"""

    await bot.send_message(chat_id, text, reply_markup=keyboard)
예제 #4
0
async def keyboards(message: types.Message):
    text = "Добро пожаловать, коммунист!"
    keyboard = ListOfButtons(
           text=["Стать предпринимателем 💼", "Пригласить члена партии 🗣", "Все о партии 🌍", "Общение ☎️", "Социальная иерархия СССР 🇲🇪"],
           align=[2, 2, 1]
    ).reply_keyboard
    await message.answer(text=text, reply_markup=keyboard)
예제 #5
0
async def keyboards(message: Message):
    chat_id = message.chat.id
    keyboard = ListOfButtons(
        text=['Kategoriler', 'Sohbet', 'İletişim'],
        align=[1, 2]
    ).reply_keyboard
    await bot.send_document(chat_id,("CAADBAADJwADhEa6Gq0m-NvEsdVGFgQ"), reply_markup=keyboard),
    await bot.send_message(chat_id, ("Merhaba"), reply_markup=keyboard)
예제 #6
0
async def с_btn1(call: CallbackQuery):
    db_work = SQLighter(database_name)
    table_name = "Физкультура1"
    for i in range(1, db_work.count_rows(table_name) + 1):
        right_answer = db_work.select_right_answer(table_name, i)[0]
        answers = str(db_work.select_wrong_answers(table_name, i)[0]).split(';')
        answers.append(right_answer)
        keyboard = ListOfButtons(text=answers, callback=answers).inline_keyboard
        await call.message.answer(text=str(db_work.select_question(table_name, i)[0]), reply_markup=keyboard)
예제 #7
0
async def btn1(message: Message):
    inline_keyboard = ListOfButtons(
        text=['Регистрация'],
        callback=['regis'],
        align=[1]  # 2-это сколько кнопок в одном ряду
    ).inline_keyboard
    await message.reply(
        f'Вы в разделе "Обучение"\n\n{veb_title}\n{veb_text}\n{veb_link}',
        reply_markup=inline_keyboard)
예제 #8
0
async def btn3(call: CallbackQuery):
    inline_keyboard = ListOfButtons(text=['Еще'], callback=['next'],
                                    align=[1]).inline_keyboard
    # await call.message.edit_reply_markup() #для того чтобы убрать клавиатуру
    await call.message.answer(f'{news_1}\n{link_1}')
    await call.message.answer(f'{news_2}\n{link_2}')
    await call.message.answer(f'{news_3}\n{link_3}')
    await call.message.answer(f'{news_4}\n{link_4}')
    await call.message.answer(f'{news_5}\n{link_5}',
                              reply_markup=inline_keyboard)
예제 #9
0
async def btn2(call: CallbackQuery):
    inline_keyboard = ListOfButtons(text=['Все новости'],
                                    callback=['all_news'],
                                    align=[1]).inline_keyboard
    await call.message.answer(f'{news_1_main}\n{link_1_main}')
    await call.message.answer(f'{news_2_main}\n{link_2_main}')
    await call.message.answer(f'{news_3_main}\n{link_3_main}')
    await call.message.answer(f'{news_4_main}\n{link_4_main}')
    await call.message.answer(f'{news_5_main}\n{link_5_main}')
    await call.message.answer(f'{news_6_main}\n{link_6_main}',
                              reply_markup=inline_keyboard)
예제 #10
0
async def pub():
    question = await db.get_random_question()
    if question["topic"] == "ЕГЭ":
        keyboard = ListOfButtons(text=["А", "Б", "В", "Г"],
                                 callback=["А", "Б", "В", "Г"],
                                 align=[2, 2]).inline_keyboard
        message = await bot.send_photo(CHAT_ID,
                                       photo=question["body"],
                                       reply_markup=keyboard)
    else:
        message = await bot.send_photo(CHAT_ID, photo=question["body"])
    await db.save_published_question(CHAT_ID, question["quest_id"],
                                     message["message_id"])
예제 #11
0
async def keyboards_start(message: Message):
    text = SQLighter(database_name).all_table_name()
    data = SQLighter(database_name).all_table_name()
    keyboard = ListOfButtons(text=text, callback=data).inline_keyboard
    await message.answer(text="Выберите тест", reply_markup=keyboard)
예제 #12
0
async def btn3(message: Message):
    inline_keyboard = ListOfButtons(text=['Актуальные новости', 'Все новости'],
                                    callback=['act_news', 'all_news'],
                                    align=[1, 1]).inline_keyboard
    await message.reply(text=message.text, reply_markup=inline_keyboard)
예제 #13
0
async def btn3(message: Message):
    inline_keyboard = ListOfButtons(text=['Ситуация в КР', 'Ситуация в мире'],
                                    callback=['kg', 'world'],
                                    align=[1, 1]).inline_keyboard
    await message.reply(text=message.text, reply_markup=inline_keyboard)
예제 #14
0
from aiogram import types
from asyncpg import Connection, Record
from asyncpg.exceptions import UniqueViolationError
from keyboards import ListOfButtons
from load_all import bot, dp, db
from filters import *
from aiogram.types.reply_keyboard import ReplyKeyboardRemove
from aiogram.dispatcher.storage import FSMContext
from states import States
from datetime import datetime, date

keyboard = ListOfButtons(text=["Отправить", "Перевезти"]).reply_keyboard


class DBCommands:
    pool: Connection = db
    ADD_NEW_USER = "******"
    ADD_NEW_SENDER = "INSERT INTO senders (username, city_a, city_b, send_date) VALUES ($1, $2, $3, $4)"
    ADD_NEW_TAKER = "INSERT INTO takers (username, city_a, city_b, take_date) VALUES ($1, $2, $3, $4)"
    SELECT_SENDERS = "SELECT (username, city_a, city_b) FROM senders " \
                     " WHERE city_a= $1 AND city_b=$2 AND send_date=$3"
    SELECT_TAKERS = "SELECT (username, city_a, city_b) FROM takers" \
                    " WHERE city_a= $1 AND city_b=$2 AND take_date=$3"

    async def add_new_user(self):
        user = types.User.get_current()
        chat_id = int(user.id)
        username = user.username
        full_name = user.full_name
        args = chat_id, username, full_name
        command = self.ADD_NEW_USER