Пример #1
0
def process_student_list(user_id, txt):
    #sheets.acquire_auth()
    values = sheets.get_range_values('Список группы!A3:B')
    name_list = []
    for row in values:
        name_list.append('%s. %s' % (row[0], row[1]))
    say(user_id, '👫 Список группы:\n\n' + '\n'.join(name_list))
Пример #2
0
def process_student_patronymic(user_id, txt):
    global state
    #sheets.acquire_auth()
    name = final_name_pattern.search(txt).group(1)
    name = name[:1].upper() + name[1:]
    values = sheets.get_range_values('Список группы!A3:G')
    for row in values:
        if row[6][:len(row[6]) - 4] in name:
            full_name = row[1]
            say(user_id, '✒ %s' % (full_name))
            return
    say(
        user_id,
        '❗ В группе не числится студент с фамилией %s! Ты точно правильно её указал?'
        % (name))
Пример #3
0
def process_student_othernumber(user_id, txt):
    global state
    name = final_name_pattern.search(txt).group(1)
    if name == 'меня':
        return process_student_selfnumber(user_id, txt)

    name = name[:1].upper() + name[1:]
    #sheets.acquire_auth()
    values = sheets.get_range_values('Список группы!A3:G')
    for row in values:
        if row[6][:len(row[6]) - 4] in name:
            say(user_id, '🔢 %s: вариант №%s' % (row[6], row[0]))
            return
    say(
        user_id,
        '❗ В группе не числится студент с фамилией %s! Ты точно правильно её указал?'
        % (name))
Пример #4
0
def process_student_selfnumber(user_id, txt):
    global state
    try:
        name = state.get('names/%d' % user_id, throw=True)
    except:
        response = vk.method('users.get', {
            'user_ids': user_id,
            'fields': 'last_name'
        })
        name = response[0]['last_name']
    #sheets.acquire_auth()
    values = sheets.get_range_values('Список группы!A3:G')
    for row in values:
        if row[6] == name:
            say(user_id, '🔢 Твой вариант — №%s!' % (row[0]))
            return
    say(
        user_id,
        '❗ В группе не числится студент с фамилией %s! Может, ты сидишь под псевдонимом? '
        'В таком случае напиши «моя фамилия Х», и я запомню твой псевдоним.' %
        (name))
Пример #5
0
def get_schedule_for_day(day, denom):
    #sheets.acquire_auth()
    offset = 2 if denom else 0
    values = sheets.get_range_values('Расписание!A4:H28')
    processing = False
    schedule = []
    row_i = 0
    for row in values:
        if processing:
            row_i += 1
        if len(row) == 0:
            continue
        if (row[0].startswith('wd')):
            if (row[0] == 'wd%d' % (day)):
                processing = True
            else:
                if processing:
                    processing = False
                    break
            continue
        if processing:
            if row[1 + offset] != '':
                schedule.append((row_i, row[1 + offset], row[5], row[6]))
    return schedule
Пример #6
0
def get_class_index(time):
    schedule = sheets.get_range_values('Расписание!E39:G44')
    for row in schedule:
        if time == row[1]:
            return int(row[0])
    return None