def step_comment(message):
    uid = str(message.from_user.id)
    cur_time = datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d    %H:%M:%S')
    print(str(cur_time) + " | " + uid + ": " + message.text)

    db = SQLighter(config.database_name)
    if message.from_user.last_name is not None:
        comment = message.from_user.first_name + " " + message.from_user.last_name + "    \n"
    else:
        comment = message.from_user.first_name + "\n"

    if message.from_user.username is not None:
        comment += "@" + message.from_user.username + "\n\n"
    comment += message.text + "\n\n" + str(cur_time)
    db.save_comment(uid, comment, str(cur_time))

    text = db.get_messages('Спасибо за отзыв')
    db.loyalty_decrement(uid)
    if len(text) > 0:
        text = text[0]
    else:
        text = db.get_messages('Спасибо за отзыв')
        print(str(datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S')) + " " + uid + ': database error')

    admin_message = "<b>Отзыв:</b>" + "\n" + comment
    admins = db.get_admin_list()
    for i in admins:
        bot.send_message(i, admin_message, parse_mode='HTML')

    step[uid]['path'].pop()
    step[uid]['cur'] = step[uid]['path'][-1]
    m = markup(db, step[uid]['cur'])
    db.close()
    bot.send_message(message.chat.id, text, reply_markup=m, parse_mode='HTML')
def final(message):
    uid = str(message.from_user.id)
    cur_time = datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d %H:%M:%S')
    print(str(cur_time) + " | " + uid + ": " + message.text)

    db = SQLighter(config.database_name)
    if message.text.split(' ')[-1] == "Подтвердить":
        if not db.has_user(uid):
            db.save_user_info(uid, request[uid]['info']['full_name'], request[uid]['info']['username'],
                              request[uid]['info']['phone'])
        else:
            db.update_user_info(uid, request[uid]['info']['full_name'], request[uid]['info']['username'],
                                request[uid]['info']['phone'])

        request[uid]['date'] = str(datetime.fromtimestamp(time.time()).strftime('%Y-%m-%d'))
        request[uid]['time'] = str(datetime.fromtimestamp(time.time()).strftime('%H:%M:%S'))
        db.save_requests(uid, request[uid]['deliver'],
                         request[uid]['longitude'],
                         request[uid]['latitude'],
                         request[uid]['destination'],
                         request[uid]['additional'],
                         request[uid]['payment'],
                         request[uid]['date'],
                         request[uid]['time'])
        print("Запись прошла успешно")

        # теперь сгенерируем сообщение и отошлем его всем администраторам

        admin_message = '<b>' + request[uid]['info']['full_name'] + "</b>\n"
        if request[uid]['info']['username'] != '':
            admin_message += "@" + request[uid]['info']['username'] + "\n"
        admin_message += "<b>Телефон:</b> " + request[uid]['info']['phone'] + "\n\n"
        k = 1
        reqs = db.get_requests(uid)
        total = 0
        for i in reqs:
            if len(i) >= 3:
                admin_message += str(k) + ") " + str(i[0]) + ",  " + str(i[1]) + " x " + str(i[2]) + "\n"
                total += int(i[1]) * int(i[2])
                k += 1
        admin_message += "\nВсего: {} сум".format(total) + "\n\n"
        if request[uid]['additional'] != '':
            admin_message += "<b>Дополнение:</b> " + request[uid]['additional'] + "\n\n"
        admin_message += "<b>Адрес:</b> " + request[uid]['destination'] + '\n'
        admin_message += "<b>Тип оплаты:</b> " + request[uid]['payment'] + "\n"
        admin_message += "<b>Время заказа:</b> " + " " + request[uid]['time'] + "    " + request[uid]['date']
        admins = db.get_admin_list()

        for i in admins:
            try:
                bot.send_message(i, admin_message, parse_mode='HTML')
            except:
                pass

        # очищаем данные

        del request[uid]
        db.clear_requests(uid)
        step[uid]['path'] = []
        step[uid]['path'].append('start')
        step[uid]['cur'] = 'start'
        text = db.get_messages('Новый заказ')[0]
        m = markup(db, step[uid]['cur'])
        bot.send_message(message.chat.id, text, reply_markup=m, parse_mode='HTML')

    elif message.text.split(' ')[-1] == "Отменить":
        del request[uid]
        step[uid]['path'] = []
        step[uid]['path'].append('start')
        step[uid]['cur'] = 'start'
        text = db.get_messages('start')[1]
        m = markup(db, step[uid]['cur'])
        bot.send_message(message.chat.id, text, reply_markup=m, parse_mode='HTML')

    else:
        pass