Exemplo n.º 1
0
def succot_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.succos(user, 'Русский')
        return response
Exemplo n.º 2
0
def purim_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.purim(user, 'Русский')
        return response
Exemplo n.º 3
0
def tu_beshvat_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.tu_bshevat(user, 'Русский')
        return response
Exemplo n.º 4
0
def chanukah_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.chanukah(user, 'Русский')
        return response
Exemplo n.º 5
0
def chanukah_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.chanukah(user, 'English')
        return response
Exemplo n.º 6
0
def ext_zmanim_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = zmanim.get_ext_zmanim(loc, 'Русский')
        return response
Exemplo n.º 7
0
def shmini_atzeret_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.shmini_atzeres_simhat(user, 'English')
        return response
Exemplo n.º 8
0
def daf_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = daf.get_daf(loc, 'Русский')
        return response
Exemplo n.º 9
0
def shmini_atzeret_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.shmini_atzeres_simhat(user, 'Русский')
        return response
Exemplo n.º 10
0
def yom_kippur_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.yom_kipur(user, 'English')
        return response
Exemplo n.º 11
0
def purim_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.purim(user, 'English')
        return response
Exemplo n.º 12
0
def rosh_hashana_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.rosh_hashanah(user, 'English')
        return response
Exemplo n.º 13
0
def yom_kippur_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.yom_kipur(user, 'Русский')
        return response
Exemplo n.º 14
0
def rosh_hashana_ru(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.rosh_hashanah(user, 'Русский')
        return response
Exemplo n.º 15
0
def main_menu(user):
    r = redis.StrictRedis()
    lang_in_redis = r.get(f'{user}')
    if not lang_in_redis:
        lang_in_db = l.get_lang_by_id(user)
        if not lang_in_db:
            return change_lang(user)
        else:
            r.set(f'{user}', data.lang[lang_in_db])
            r.expire(f'{user}', 31536000)
            lang = data.short_lang[r.get(f'{user}').decode('unicode_escape')]
    else:
        lang = data.short_lang[r.get(f'{user}').decode('unicode_escape')]

    auth = f.get_location_by_id(user)
    if not auth:
        resp_and_markup = request_location(user)
        response = resp_and_markup[0]
        user_markup = resp_and_markup[1]
    else:
        user_markup = f.get_main_menu(lang)
        if lang == 'Русский':
            response = 'Выберите:'
        elif lang == 'English':
            response = 'Choose:'
    return response, user_markup
Exemplo n.º 16
0
def daf_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = daf.get_daf(loc, 'English')
        return response
Exemplo n.º 17
0
def tu_beshvat_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.tu_bshevat(user, 'English')
        return response
Exemplo n.º 18
0
def succot_en(user):
    loc = f.get_location_by_id(user)
    if not loc:
        return request_location(user)
    else:
        response = h.succos(user, 'English')
        return response
Exemplo n.º 19
0
def handle_text(message):
    f.check_location(message.from_user.id,
                     message.location.latitude,
                     message.location.longitude
                     )
    tz = f.get_tz_by_location(f.get_location_by_id(message.from_user.id))
    f.check_tz(message.from_user.id, tz)
    botan.track(message.from_user.id, message, 'Получил геометку')
Exemplo n.º 20
0
def handle_text(message):
    f.check_id_in_db(message.from_user)
    loc = message.text.split(sep=', ')
    if loc[0] == message.text:
        loc = message.text.split(sep=',')
    if f.check_location(message.from_user.id, loc[0], loc[1], bot):
        text_handler.make_response('Back', message.from_user.id, bot)
        logger.info(f' Text location: {loc[0]}, {loc[1]}, '
                    f'from: {message.from_user.id}')
        tz = f.get_tz_by_location(f.get_location_by_id(message.from_user.id))
        f.check_tz(message.from_user.id, tz)
        botan.track(config.BOTAN_KEY, message.from_user.id, message,
                    'Получил текстовую геометку')
Exemplo n.º 21
0
def handle_text(message):
    f.check_id_in_db(message.from_user)
    if f.check_location(message.from_user.id, message.location.latitude,
                        message.location.longitude, bot):
        text_handler.make_response('Back', message.from_user.id, bot)
        tz = f.get_tz_by_location(f.get_location_by_id(message.from_user.id))
        f.check_tz(message.from_user.id, tz)
        logger.info(f' Location: '
                    f'{message.location.latitude}, '
                    f'{message.location.longitude}, '
                    f'from: {message.from_user.id}')
        botan.track(config.BOTAN_KEY, message.from_user.id, message,
                    'Получил геометку')
Exemplo n.º 22
0
def handle_text(message):
    if message.text == 'Сменить язык' or    \
       message.text == 'Change language' or \
       message.text == 'Назад/Back':
        user_markup = telebot.types.ReplyKeyboardMarkup(True, False)
        user_markup.row('Русский', 'English')
        bot.send_message(message.from_user.id, 'Выберите язык/'
                                               'Choose the language',
                         reply_markup=user_markup)
        botan.track(message.from_user.id, message, 'Выбор языка')

    elif message.text == '🇱🇷':  # FAQ
        bot.send_message(message.from_user.id, 'https://goo.gl/4320iu')
        botan.track(message.from_user.id, message, 'FAQ')
    elif message.text == '🇷🇺':  # ЧАВО
        bot.send_message(message.from_user.id, 'https://goo.gl/bavHuO')
        botan.track(message.from_user.id, message, 'ЧАВО')

    elif message.text == 'Русский':
        user_markup = f.get_main_menu(message.text)
        bot.send_message(message.from_user.id, text='Выберите',
                         reply_markup=user_markup)
        botan.track(message.from_user.id, message, 'Выбран русский язык')
    elif message.text == 'English':
        user_markup = f.get_main_menu(message.text)
        bot.send_message(message.from_user.id, text='Choose the option',
                         reply_markup=user_markup)
        botan.track(message.from_user.id, message, 'Выбран английский язык')

    elif message.text == 'Зманим':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            zmanim_str = zmanim.get_zmanim(loc, 'Русский')
            bot.send_message(message.chat.id, zmanim_str)
            botan.track(message.from_user.id, message, 'Зманим Рус')
    elif message.text == 'Zmanim':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            zmanim_str = zmanim.get_zmanim(loc, 'English')
            bot.send_message(message.chat.id, zmanim_str)
            botan.track(message.from_user.id, message, 'Зманим Англ')

    elif message.text == 'Расширенные Зманим':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            zmanim_str = zmanim.get_ext_zmanim(loc, 'Русский')
            bot.send_message(message.chat.id, zmanim_str)
            botan.track(message.from_user.id, message,
                        'Расширенные Зманим Рус')
    elif message.text == 'Extended Zmanim':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            zmanim_str = zmanim.get_ext_zmanim(loc, 'English')
            bot.send_message(message.chat.id, zmanim_str)
            botan.track(message.from_user.id, message,
                        'Расширенные зманим Англ')

    elif message.text == 'Шаббат':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.from_user.id,
                             'Отправьте свое местоположение')
        else:
            shabbat_str = shabbos.get_shabbos_string(loc, 'Русский')
            bot.send_message(message.from_user.id, shabbat_str)
            botan.track(message.from_user.id, message, 'Шаббат Рус')
    elif message.text == 'Shabbos':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.from_user.id, 'Send your location')
        else:
            shabbat_str = shabbos.get_shabbos_string(loc, 'English')
            bot.send_message(message.from_user.id, shabbat_str)
            botan.track(message.from_user.id, message, 'Шаббат Англ')

    elif message.text == 'Рош-Ходеш':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        rh = rosh_hodesh.get_rh(loc, 'Русский')
        bot.send_message(message.chat.id, rh)
        botan.track(message.from_user.id, message, 'Рош-Ходеш Рус')
    elif message.text == 'Rosh Chodesh':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        rh = rosh_hodesh.get_rh(loc, 'English')
        bot.send_message(message.chat.id, rh)
        botan.track(message.from_user.id, message, 'Рош-Ходеш Англ')

    elif message.text == 'Праздники':
        holiday_menu = f.get_holiday_menu('Русский')
        bot.send_message(message.from_user.id, 'Выберите '
                                               '(клавиатуру можно скроллить)',
                         reply_markup=holiday_menu)
        botan.track(message.from_user.id, message, 'Праздники Рус')
    elif message.text == 'Holidays':
        holiday_menu = f.get_holiday_menu('English')
        bot.send_message(message.from_user.id, 'Choose (scroll keyboard)',
                         reply_markup=holiday_menu)
        botan.track(message.from_user.id, message, 'Праздники Англ')

    elif message.text == 'Посты':
        fast_menu = f.get_fast_menu('Русский')
        bot.send_message(message.from_user.id, 'Выберите',
                         reply_markup=fast_menu)
        botan.track(message.from_user.id, message, 'Посты Рус')
    elif message.text == 'Fast days':
        fast_menu = f.get_fast_menu('English')
        bot.send_message(message.from_user.id, 'Choose',
                         reply_markup=fast_menu)
        botan.track(message.from_user.id, message, 'Посты Англ')

    elif message.text == 'Даф Йоми (Талмуд)':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        daf_yomi = daf.get_daf(loc, 'Русский')
        bot.send_message(message.from_user.id, daf_yomi)
        botan.track(message.from_user.id, message, 'Дай Йоми Рус')
    elif message.text == 'Daf Yomi':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        daf_yomi = daf.get_daf(loc, 'English')
        bot.send_message(message.from_user.id, daf_yomi)
        botan.track(message.from_user.id, message, 'Даф Йоми Англ')

    elif re.match(loc_pattern, message.text):
        print(123)
        loc = message.text.split(sep=', ')
        f.check_location(message.from_user.id, loc[0], loc[1])
        botan.track(message.from_user.id, message, 'Получил текстовую локацию')

    elif message.text == 'Обновить местоположение':
        upd_str = 'Пожалуйста, пришлите новые координаты'
        bot.send_message(message.from_user.id, upd_str)
        botan.track(message.from_user.id, message, 'Обновить локацию Рус')
    elif message.text == 'Update location':
        upd_str = 'Please, send new location'
        bot.send_message(message.from_user.id, upd_str)
        botan.track(message.from_user.id, message, 'Обновил Локацию Англ')

    elif message.text == 'Назад':
        user_markup = f.get_main_menu('Русский')
        bot.send_message(message.from_user.id, 'Выберите:',
                         reply_markup=user_markup)
        botan.track(message.from_user.id, message, 'Назад Рус')
    elif message.text == 'Back':
        user_markup = f.get_main_menu('English')
        bot.send_message(message.from_user.id, 'Choose:',
                         reply_markup=user_markup)
        botan.track(message.from_user.id, message, 'Назад Англ')
###############################################################################
    elif message.text == 'Рош-Ашана':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            loc = ['55.7', '37.5']
            h_str = h.rosh_hashanah(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Рош аШана Рус')
    elif message.text == 'Rosh HaShanah':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.rosh_hashanah(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Рош аШана Англ')

    elif message.text == 'Йом-Кипур':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.yom_kipur(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Йом-Кипур Рус')
    elif message.text == 'Yom Kippur':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.yom_kipur(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Йом-Кипур Англ')

    elif message.text == 'Суккот':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.succos(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Суккот Рус')
    elif message.text == 'Succos':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.succos(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Суккот Англ')

    elif message.text == 'Шмини Ацерет':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.shmini_atzeres_simhat(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Шмини Ацерет Рус')
    elif message.text == 'Shmini Atzeres':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.shmini_atzeres_simhat(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Шмини Ацерет Англ')

    elif message.text == 'Ханука':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.chanukah(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Ханука Рус')
    elif message.text == 'Chanukah':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.chanukah(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Ханука Англ')

    elif message.text == 'Ту биШват':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tu_bshevat(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Ту биШват Рус')
    elif message.text == 'Tu BShevat':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.tu_bshevat(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Ту-биШват Англ')

    elif message.text == 'Пурим':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.purim(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пурим Рус')
    elif message.text == 'Purim':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.purim(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пурим Англ')

    elif message.text == 'Пейсах':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.pesach(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пейсах Рус')
    elif message.text == 'Pesach':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.pesach(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пейсах Англ')

    elif message.text == 'Лаг баОмер':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.lag_baomer(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Лаг Баомер Рус')
    elif message.text == 'Lag BaOmer':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.lag_baomer(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Лаг Баомер Англ')

    elif message.text == 'Шавуот':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.shavuot(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Шавуот Рус')
    elif message.text == 'Shavuot':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.shavuot(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Шавуот Англ')

    elif message.text == '15 Ава':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tu_bav(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '15 Ава Рус')
    elif message.text == 'Tu BAv':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tu_bav(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '15 Ава Англ')

    elif message.text == 'Израильские праздники':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.get_israel(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message,
                        'Израильские праздники Рус')
    elif message.text == 'Israel holidays':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Send your location')
        else:
            h_str = h.get_israel(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message,
                        'Израильские праздники Англ')

    elif message.text == 'Пост Гедалии':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tzom_gedaliah(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пост Гедалии Рус')
    elif message.text == 'Tzom Gedaliah':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tzom_gedaliah(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пост Гедалии Англ')

    elif message.text == '10 Тевета':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.asarah_btevet(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '10 Тевета Рус')
    elif message.text == 'Asarah BTevet':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.asarah_btevet(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '10 Тевета Англ')

    elif message.text == 'Пост Эстер':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.taanit_esther(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пост Эстер Рус')
    elif message.text == 'Taanit Esther':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.taanit_esther(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, 'Пост Эстер Англ')

    elif message.text == '17 Таммуза':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.shiva_asar_tammuz(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '17 Таммуза Рус')
    elif message.text == 'Shiva Asar BTammuz':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.shiva_asar_tammuz(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '17 Таммуза Англ')

    elif message.text == '9 Ава':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tisha_bav(loc, 'Русский')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '9 Ава Рус')
    elif message.text == 'Tisha BAv':
        loc = f.get_location_by_id(message.from_user.id)
        if not loc:
            bot.send_message(message.chat.id, 'Отправьте свое местоположение')
        else:
            h_str = h.tisha_bav(loc, 'English')
            bot.send_message(message.from_user.id, h_str)
            botan.track(message.from_user.id, message, '9 Ава Англ')
Exemplo n.º 23
0
def get_zmanim(id, lang):
    tz = f.get_tz_by_id(id)
    loc = f.get_location_by_id(id)
    tz_time = pytz.timezone(tz)
    now = datetime.now(tz_time)
    params = {
        'mode': 'day',
        'timezone': tz,
        'dateBegin': f'{now.month}/{now.day}/{now.year}',
        'lat': loc[0],
        'lng': loc[1]
    }
    zmanim = requests.get(URL, params=params)
    zmanim_dict = zmanim.json()
    month = re.search(r'[a-zA-z]+', zmanim_dict['hebDateString']) \
        .group(0)
    year_day = re.findall(r'\d+', zmanim_dict['hebDateString'])
    zmanim_str = ''
    if zmanim_dict['zmanim']['sunset'] == 'X:XX:XX':
        if lang == 'Русский':
            zmanim_str = 'В данных широтах невозможно определить' \
                         ' зманим из-за полярного дня/полярной ночи'
        elif lang == 'English':
            zmanim_str = 'In these latitudes it is impossible to determine' \
                         ' because of polar night/day'
        return zmanim_str
    elif zmanim_dict['zmanim']['tzeis_595_degrees'] == 'X:XX:XX':
        chazot_time = datetime.strptime(zmanim_dict['zmanim']['chatzos'],
                                        "%H:%M:%S")
        chazot_delta = timedelta(hours=12)
        # высчитываем полночь, прибавляя 12 часов
        d6 = chazot_time + chazot_delta
        chazot_laila = str(datetime.time(d6))

        alot_delta = chazot_time - chazot_delta
        alot_chazot_time = str(datetime.time(alot_delta))

        zmanim_dict['zmanim']['alos_ma'] = alot_chazot_time
        zmanim_dict['zmanim']['talis_ma'] = alot_chazot_time
        zmanim_dict['zmanim']['tzeis_595_degrees'] = chazot_laila
    elif zmanim_dict['zmanim']['alos_ma'] == 'X:XX:XX'\
            and zmanim_dict['zmanim']['talis_ma'] == 'X:XX:XX':
        chazot_time = datetime.strptime(zmanim_dict['zmanim']['chatzos'],
                                        "%H:%M:%S")
        chazot_delta = timedelta(hours=12)
        alot_delta = chazot_time - chazot_delta
        alot_chazot_time = str(datetime.time(alot_delta))
        zmanim_dict['zmanim']['alos_ma'] = alot_chazot_time
        zmanim_dict['zmanim']['talis_ma'] = alot_chazot_time
    elif zmanim_dict['zmanim']['alos_ma'] == 'X:XX:XX':
        chazot_time = datetime.strptime(zmanim_dict['zmanim']['chatzos'],
                                        "%H:%M:%S")
        chazot_delta = timedelta(hours=12)
        alot_delta = chazot_time - chazot_delta
        alot_chazot_time = str(datetime.time(alot_delta))
        zmanim_dict['zmanim']['alos_ma'] = alot_chazot_time

    if lang == 'Русский':
        zmanim_str = '*Зманим*\n\n*Еврейская дата:* {} {} {} года\n' \
                     '*Рассвет* _(Алот Ашахар)_ *—* {:.5s}\n' \
                     '*Самое раннее время надевания ' \
                     'талита и тфилин* _(Мишеякир)_ *—* {:.5s}\n' \
                     '*Восход солнца* _(Нец Ахама)_ *—* {:.5s}\n' \
                     '*Конец времени чтения Шма* *—* {:.5s}\n' \
                     '*Конец времени чтения молитвы Амида* *—* {:.5s}\n' \
                     '*Полдень* _(Хацот)_ *—* {:.5s}\n' \
                     '*Самое раннее время Минхи*' \
                     ' _(Минха Гдола)_ *—* {:.5s}\n' \
                     '*Заход солнца* _(Шкия)_ *—* {:.5s}\n' \
                     '*Выход звезд* _(Цет Акохавим)_ *—* {:.5s}\n' \
            .format(year_day[0],
                    data.jewish_months_a[month],
                    year_day[1],
                    zmanim_dict['zmanim']['alos_ma'],
                    zmanim_dict['zmanim']['talis_ma'],
                    zmanim_dict['zmanim']['sunrise'],
                    zmanim_dict['zmanim']['sof_zman_shema_gra'],
                    zmanim_dict['zmanim']['sof_zman_tefila_gra'],
                    zmanim_dict['zmanim']['chatzos'],
                    zmanim_dict['zmanim']['mincha_gedola_ma'],
                    zmanim_dict['zmanim']['sunset'],
                    zmanim_dict['zmanim']['tzeis_595_degrees']
                    )
    elif lang == 'English':
        zmanim_str = '*Zmanim*\n\n*Hebrew date*: {} {} {}\n' \
                     '*Alot Hashachar* *—* {:.5s}\n' \
                     '*Misheyakir* *—* {:.5s}\n' \
                     '*Hanetz Hachama* *—* {:.5s}\n' \
                     '*Sof Zman Shema* *—* {:.5s}\n' \
                     '*Sof Zman Tefilah* *—* {:.5s}\n' \
                     '*Chatzot Hayom* *—* {:.5s}\n' \
                     '*Mincha Gedolah* *—* {:.5s}\n' \
                     '*Shkiat Hachama* *—* {:.5s}\n' \
                     '*Tzeit Hakochavim* *—* {:.5s}\n' \
            .format(year_day[0],
                    month,
                    year_day[1],
                    zmanim_dict['zmanim']['alos_ma'],
                    zmanim_dict['zmanim']['talis_ma'],
                    zmanim_dict['zmanim']['sunrise'],
                    zmanim_dict['zmanim']['sof_zman_shema_gra'],
                    zmanim_dict['zmanim']['sof_zman_tefila_gra'],
                    zmanim_dict['zmanim']['chatzos'],
                    zmanim_dict['zmanim']['mincha_gedola_ma'],
                    zmanim_dict['zmanim']['sunset'],
                    zmanim_dict['zmanim']['tzeis_595_degrees']
                    )
    return zmanim_str