async def add_to_schedule(message: types.Message, state: FSMContext): data = await state.get_data() if data.get('name') is None: await message.answer('Вы не добавили название, введите его:') await state.set_state('States:add_name') return elif data.get('text') is None: await message.answer('Вы не добавили текст, введите его:') await state.set_state('States:add_text') return elif data.get('hyperlinks') is None: await message.answer('Вы не добавили гиперссылки, введите их:') await state.set_state('States:add_hyperlinks') return elif data.get('link') is None: await message.answer('Загружаю фото..') if data.get('tgh_text') is not None: link = tgh.create_site(name=data['name'], text=data['tgh_text']) else: link = tgh.create_site(name=data['name']) if link == -1: await message.answer('Вы не добавили фото для Telegraph') await message.answer('Добавте их прямо сейчас и нажмите принять:', reply_markup=kb.next_state) await state.set_state('States:add_photo') return await state.update_data(link=link) await message.answer(text='Введите время в формате:\n ' + datetime.now().strftime("%d.%m.%y %H:%M")) await state.set_state('States:add_schedule')
async def save_changes_to_db(mes: Message, state: FSMContext): data = await state.get_data() product_name = '<b>' + data['name'] + "</b>\n" direct = str(mes.from_user.id) if not os.path.exists(str(mes.from_user.id)): os.mkdir(str(mes.from_user.id)) if len(os.listdir(direct + '/')) > 0: await mes.answer('Загружаю фото...') link = create_site(name=data['name'], id_u=direct) else: link = data['link'] await mes.answer('Загружаю в базу данных..') post = f"\n{data['text']}\n<a href=\"{link}\">Фото товара</a>" if data.get('sale_end') is None: result = await update_in_db(type_product=data['type'], sex=data['sex'], category=data['product'], post=post, price=data['price'], product_name=product_name, number=data['number']) else: result = await update_in_db(type_product=data['type'], sex=data['sex'], category=data['product'], post=post, price=data['price'], product_name=product_name, number=data['number'], sale=data['sale'], sale_start=data['sale_start'], sale_end=data['sale_end']) await state.update_data(name=None, type=None, sex=None, price=None, product=None, link=None, text=None, sale=None) await state.reset_state(with_data=False) if result == 'UPDATE 1': await mes.answer('Добавлено!', reply_markup=start) else: await mes.answer('Ошибка :( Попробуйте, снова', reply_markup=start) await delete_media(str(mes.from_user.id))
async def show_message(message: types.Message, state: FSMContext): data = await state.get_data() if data.get('name') is None: await message.answer('Вы не добавили название, введите его:') await state.set_state('States:add_name') return elif data.get('text') is None: await message.answer('Вы не добавили текст, введите его:') await state.set_state('States:add_text') return elif data.get('hyperlinks') is None: await message.answer('Вы не добавили гиперссылки, введите их:') await state.set_state('States:add_hyperlinks') return elif data.get('link') is None: await message.answer('Загружаю фото..') if data.get('tgh_text') is not None: link = tgh.create_site(name=data['name'], text=data['tgh_text']) else: link = tgh.create_site(name=data['name']) if link == -1: await message.answer('Вы не добавили фото для Telegraph') await message.answer('Добавте их прямо сейчас и нажмите принять:', reply_markup=kb.next_state) await state.set_state('States:add_photo') return await state.update_data(link=link) else: link = data['link'] await message.answer('Отправляю..', reply_markup=kb.start) print('отправляем сообщение в канал:') text = '<b>' + data['name'] + '</b>' + '\n' \ + hide_link(link) + data['hyperlinks'] + '\n' \ + '\n' + data['text'] await state.update_data(link=link) await bot.send_message( chat_id=ch_id, text=text, parse_mode='HTML', reply_markup=kb.favourite, ) await state.reset_data()
async def show_message(message: types.Message, state: FSMContext): data = await state.get_data() print(data.get('name')) if data.get('name') is None: await message.answer('Вы не добавили название, введите его:') await state.set_state('States:add_name') return elif data.get('text') is None: await message.answer('Вы не добавили текст, введите его:') await state.set_state('States:add_text') return elif data.get('hyperlinks') is None: await message.answer('Вы не добавили гиперссылки, введите их:') await state.set_state('States:add_hyperlinks') return elif data.get('link') is None: await message.answer('Загружаю фото..') if data.get('tgh_text') is not None: link = tgh.create_site(name=data['name'], text=data['tgh_text']) else: link = tgh.create_site(name=data['name']) if link == -1: await message.answer('Вы не добавили фото для Telegraph') await message.answer('Добавте их прямо сейчас и нажмите принять:', reply_markup=kb.next_state) await state.set_state('States:add_photo') return await state.update_data(link=link) else: link = data['link'] text = '<b>' + data['name'] + '</b>' + '\n' \ + hide_link(link) + data['hyperlinks'] + '\n' \ + '\n' + data['text'] await message.answer('Предпросмотр поста:') await message.answer( text=text, parse_mode='HTML', reply_markup=kb.done, )
async def pre_show(mes: Message, state: FSMContext): data = await state.get_data() name_product = '<b>' + data['name'] + "</b>\n" direct = str(mes.from_user.id) if len(os.listdir(direct + '/')) > 0: await mes.answer('Загружаю фото...') link = create_site(name=data['name'], id_u=direct) else: link = data['link'] post = f"\n{data['text']}\n<a href=\"{link}\">Фото товара</a>" await mes.answer(name_product + data['price'] + post, parse_mode='HTML')
async def pre_show(message: Message, state: FSMContext): data = await state.get_data() if data.get('name') is None: await message.answer('Вы не добавили название, введите его:') await state.set_state('States:add_name') return elif data.get('text') is None: await message.answer('Вы не добавили описание, введите его:') await state.set_state('States:add_text') return elif data.get('price') is None: await message.answer('Вы не добавили цену, введите её:') await state.set_state('States:add_price') return elif data.get('link') is None: await message.answer('Загружаю фото..') link = create_site(name=data['name'], id_u=str(message.from_user.id)) if link == -1: await message.answer('Вы не добавили фото') await message.answer('Добавте их прямо сейчас и нажмите принять:', reply_markup=photo) await state.set_state('States:add_photo') return await state.update_data(link=link) else: link = data['link'] if data.get('sale') is None: product_price = data['price'] else: product_price = data['sale'] + ' <s>' + data['price'] + '</s>' text = '<b>' + data['name'] + '</b>' + '\n' \ + hide_link(link) + product_price + '\n' \ + '\n' + data['text'] + '\n' if message.text == 'Предпросмотр': await message.answer('Предпросмотр товара:') await message.answer(text=text, parse_mode='HTML', reply_markup=add_product) else: await message.answer( 'Выберите категорию в которую необходимо добавить товар', reply_markup=type_object) await state.set_state('States:set_category')