示例#1
0
def subject_links(domain, subject):
    # type: (text_type, text_type) -> List[text_type]
    from zerver.models import get_realm, RealmFilter, realm_filters_for_domain
    matches = [] # type: List[text_type]

    realm_filters = realm_filters_for_domain(domain)

    for realm_filter in realm_filters:
        pattern = prepare_realm_pattern(realm_filter[0])
        for m in re.finditer(pattern, subject):
            matches += [realm_filter[1] % m.groupdict()]
    return matches
示例#2
0
def subject_links(domain, subject):
    # type: (text_type, text_type) -> List[text_type]
    from zerver.models import get_realm, RealmFilter, realm_filters_for_domain
    matches = [] # type: List[text_type]

    realm_filters = realm_filters_for_domain(domain)

    for realm_filter in realm_filters:
        pattern = prepare_realm_pattern(realm_filter[0])
        for m in re.finditer(pattern, subject):
            matches += [realm_filter[1] % m.groupdict()]
    return matches
示例#3
0
def subject_links(domain, subject):
    from zerver.models import get_realm, RealmFilter, realm_filters_for_domain
    matches = []

    try:
        realm_filters = realm_filters_for_domain(domain)

        for realm_filter in realm_filters:
            pattern = prepare_realm_pattern(realm_filter[0])
            for m in re.finditer(pattern, subject):
                matches += [realm_filter[1] % m.groupdict()]
        return matches
    except RealmFilter.DoesNotExist:
        return matches
示例#4
0
def subject_links(domain, subject):
    from zerver.models import get_realm, RealmFilter, realm_filters_for_domain
    matches = []

    try:
        realm_filters = realm_filters_for_domain(domain)

        for realm_filter in realm_filters:
            pattern = prepare_realm_pattern(realm_filter[0])
            for m in re.finditer(pattern, subject):
                matches += [realm_filter[1] % m.groupdict()]
        return matches
    except RealmFilter.DoesNotExist:
        return matches
示例#5
0
def maybe_update_realm_filters(domain):
    from zerver.models import realm_filters_for_domain, all_realm_filters

    # If domain is None, load all filters
    if domain is None:
        all_filters = all_realm_filters()
        all_filters['default'] = []
        for domain, filters in all_filters.iteritems():
            make_realm_filters(domain, filters)
        # Hack to ensure that getConfig("realm") is right for mirrored Zephyrs
        make_realm_filters("mit.edu/zephyr_mirror", [])
    else:
        realm_filters = realm_filters_for_domain(domain)
        if domain not in realm_filter_data or realm_filter_data[domain] != realm_filters:
            # Data has changed, re-load filters
            make_realm_filters(domain, realm_filters)
示例#6
0
def maybe_update_realm_filters(domain):
    from zerver.models import realm_filters_for_domain, all_realm_filters

    # If domain is None, load all filters
    if domain is None:
        all_filters = all_realm_filters()
        all_filters['default'] = []
        for domain, filters in six.iteritems(all_filters):
            make_realm_filters(domain, filters)
        # Hack to ensure that getConfig("realm") is right for mirrored Zephyrs
        make_realm_filters("mit.edu/zephyr_mirror", [])
    else:
        realm_filters = realm_filters_for_domain(domain)
        if domain not in realm_filter_data or realm_filter_data[domain] != realm_filters:
            # Data has changed, re-load filters
            make_realm_filters(domain, realm_filters)
示例#7
0
def list_filters(request, user_profile):
    # type: (HttpRequest, UserProfile) -> HttpResponse
    filters = realm_filters_for_domain(user_profile.realm.domain)
    return json_success({'filters': filters})
示例#8
0
def list_filters(request, user_profile):
    # type: (HttpRequest, UserProfile) -> HttpResponse
    filters = realm_filters_for_domain(user_profile.realm.domain)
    return json_success({'filters': filters})