Пример #1
0
def update_default_stream_group_streams(
    request: HttpRequest,
    user_profile: UserProfile,
    group_id: int,
    op: str = REQ(),
    stream_names: List[str] = REQ(validator=check_list(check_string))
) -> None:
    group = access_default_stream_group_by_id(
        user_profile.realm,
        group_id,
    )
    streams = []
    for stream_name in stream_names:
        (stream, recipient,
         sub) = access_stream_by_name(user_profile, stream_name)
        streams.append(stream)

    if op == 'add':
        do_add_streams_to_default_stream_group(user_profile.realm, group,
                                               streams)
    elif op == 'remove':
        do_remove_streams_from_default_stream_group(user_profile.realm, group,
                                                    streams)
    else:
        return json_error(
            _('Invalid value for "op". Specify one of "add" or "remove".'))
    return json_success()
Пример #2
0
def update_default_stream_group_streams(request: HttpRequest, user_profile: UserProfile,
                                        group_id: int, op: Text=REQ(),
                                        stream_names: List[Text]=REQ(
                                            validator=check_list(check_string))) -> None:
    group = access_default_stream_group_by_id(user_profile.realm, group_id,)
    streams = []
    for stream_name in stream_names:
        (stream, recipient, sub) = access_stream_by_name(user_profile, stream_name)
        streams.append(stream)

    if op == 'add':
        do_add_streams_to_default_stream_group(user_profile.realm, group, streams)
    elif op == 'remove':
        do_remove_streams_from_default_stream_group(user_profile.realm, group, streams)
    else:
        return json_error(_('Invalid value for "op". Specify one of "add" or "remove".'))
    return json_success()
Пример #3
0
def update_default_stream_group(
    request: HttpRequest,
    user_profile: UserProfile,
    group_name: Text = REQ(),
    op: Text = REQ(),
    stream_names: List[Text] = REQ(validator=check_list(check_string))
) -> None:
    streams = []
    for stream_name in stream_names:
        (stream, recipient,
         sub) = access_stream_by_name(user_profile, stream_name)
        streams.append(stream)

    if op == 'add':
        do_add_streams_to_default_stream_group(user_profile.realm, group_name,
                                               streams)
    elif op == 'remove':
        do_remove_streams_from_default_stream_group(user_profile.realm,
                                                    group_name, streams)
    else:
        return json_error(
            _('Nothing to do. Specify at least one of "add" or "remove".'))
    return json_success()