Beispiel #1
0
def save_filters(
    _,
    name,
    graph_scalars_options,
    graph_timeseries_options,
    order_by,
    agg_group_by,
    normalize,
    filter_div,
):
    if not name:
        raise PreventUpdate

    filters = preprocessing.extract_filters("scalars", filter_div)
    filters["order_by"] = order_by
    filters["agg_group_by"] = agg_group_by
    filters["normalize"] = normalize
    scalar_graph_options = preprocessing.extract_graph_options("scalars", graph_scalars_options)
    ts_graph_options = preprocessing.extract_graph_options("timeseries", graph_timeseries_options)

    db_filter = Filter(
        name=name,
        filters=filters,
        scalar_graph_options=scalar_graph_options,
        ts_graph_options=ts_graph_options,
    )
    db.session.add(db_filter)
    db.session.commit()

    return get_model_options(Filter), ""
Beispiel #2
0
    def init_filter(self, operator):
        filter = Filter()
        filter.initialize(operator)
        filter.save()
        for band in Band.objects.all():
            filter.bands.add(band)
        filter.save()

        return filter
Beispiel #3
0
def signup():
    if current_user.is_authenticated:
        return redirect(url_for('home_page.index'))
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(username=form.username.data, email=form.email.data)
        user.set_password(form.password.data)
        user.filters = Filter()
        db.session.add(user)
        db.session.commit()
        return redirect(url_for('users.login'))
    return render_template('signup.html', form=form)
Beispiel #4
0
    def get_data(self, request, id):
        response = api.get_filter_metadata(request, id)
        data = json.loads(response.text)

        filter = Filter(data['dsl_name'], data['filter_name'],
                        data['dsl_name'], data['language'],
                        data['filter_type'], data['dependencies'], None,
                        data['main'], data['execution_server'],
                        data['reverse'], data['put'], data['get'],
                        data['post'], data['head'], data['delete'],
                        data['valid_parameters'])
        return filter
Beispiel #5
0
def test_create_metadata_and_verify_filters():
    def pk():
        n = 0
        step = 1
        while True:
            yield n
            n = n + step

    meta_data = []  # contains metadata

    n = 1000
    primary_key = pk()
    for _ in range(n):
        random_title = ''.join(random.choices(string.ascii_uppercase, k=10))
        meta_data.append(Metadata(next(primary_key), title=random_title))

    f = Filter(meta_data, ['kind'], ['book'])
    assert len(meta_data) > len(f.tofilter)

    g = Filter(meta_data, ['kind', 'category'], ['book', 'textbook'])

    assert len(meta_data) > len(g.tofilter)
    assert len(f.tofilter) > len(g.tofilter)
Beispiel #6
0
def addFilter():
    data = json.loads(request.get_data())
    if data['uemail'] in session:
        ofilter = Filter(data['ffrom'], data['ftag'], data['flongi'],
                         data['flati'], data['fradius'], data['ftime'],
                         data['fstate'])
        ofilter.schedule = Schedule(data['starttime'], data['endtime'],
                                    data['repetition'])
        ofilter.user = User.query.filter_by(
            uid=session[data['uemail']]).first()
        db.session.add(ofilter)
        db.session.commit()
        return jsonify({'status': 1})
    else:
        return jsonify({'status': 0, 'message': 'User haven\'t login yet!'})