コード例 #1
0
ファイル: fields.py プロジェクト: BohemianDolphin/wtforms
 def test(self):
     expected = u"""<label for="test">Caption</label>"""
     label = Label('test', u'Caption')
     self.assertEqual(label(), expected)
     self.assertEqual(str(label), expected)
     self.assertEqual(unicode(label), expected)
     self.assertEqual(label.__html__(), expected)
     self.assertEqual(label().__html__(), expected)
     self.assertEqual(label('hello'), u"""<label for="test">hello</label>""")
     self.assertEqual(TextField(u'hi').bind(Form(), 'a').label.text, u'hi')
コード例 #2
0
 def test(self):
     expected = u"""<label for="test">Caption</label>"""
     label = Label('test', u'Caption')
     self.assertEqual(label(), expected)
     self.assertEqual(str(label), expected)
     self.assertEqual(unicode(label), expected)
     self.assertEqual(label.__html__(), expected)
     self.assertEqual(label().__html__(), expected)
     self.assertEqual(label('hello'), u"""<label for="test">hello</label>""")
     self.assertEqual(TextField(u'hi').bind(Form(), 'a').label.text, u'hi')
コード例 #3
0
def value_counts():
    try:
        if not data.save and data.annotated_value:
            data.save_matches(data.annotated_value)

        if data.label_name[2]:
            form = ValueFormThree()
        elif data.label_name[1]:
            form = ValueFormTwo()
        else:
            form = ValueFormOne()

        if data.num_label > 2:
            form.label3_value.label = Label(field_id="label3_value",
                                            text=data.label_name[2])
            form.label3_value.render_kw = {'readonly': True}
        if data.num_label > 1:
            form.label2_value.label = Label(field_id="label2_value",
                                            text=data.label_name[1])
            form.label2_value.render_kw = {'readonly': True}
        if data.num_label > 0:
            form.label1_value.label = Label(field_id="label1_value",
                                            text=data.label_name[0])
            form.label1_value.render_kw = {'readonly': True}

        form.submit_save.render_kw = {'readonly': True}
        form.submit_prev.render_kw = {'readonly': True}
        form.submit_next.render_kw = {'readonly': True}
        value_counts = data.get_value_counts()

        downloadform = DownloadForm()
        valueform = ValueForm()

        if request.method == 'POST':
            if downloadform.validate_on_submit(
            ) and downloadform.submit_download.data:
                return send_file('../output/' + data.output_fname,
                                 mimetype='text/csv',
                                 attachment_filename=data.output_fname,
                                 as_attachment=True)
            if valueform.validate_on_submit() and valueform.submit_value.data:
                data.search_value = valueform.data['value']
                value_counts = data.get_value_counts()
                return redirect(url_for('auth_bp.value_counts'))
    except BaseException:
        flash('Something went wrong')
        return redirect(url_for('auth_bp.run_regex'))

    return render_template('valuecounts.html',
                           form=form,
                           downloadform=downloadform,
                           valueform=valueform,
                           num_label=data.num_label,
                           num_keywords=data.num_keywords,
                           value_counts=value_counts)
コード例 #4
0
 def test(self):
     expected = """<label for="test">Caption</label>"""
     label = Label("test", "Caption")
     assert label() == expected
     assert str(label) == expected
     assert str(label) == expected
     assert label.__html__() == expected
     assert label().__html__() == expected
     assert label("hello") == """<label for="test">hello</label>"""
     assert StringField("hi").bind(Form(), "a").label.text == "hi"
     assert repr(label) == "Label('test', 'Caption')"
コード例 #5
0
class TransitFilter(FlaskForm):
    user = "******"
    user_name_lb = Label(field_id="user_name", text=user)
    user_name = SelectField(user)

    f_desde = "Fecha desde"
    f_inicio_lb = Label(field_id="f_inicio", text=f_desde)
    f_inicio = DateField(f_desde, format='%d/%m/%Y')

    f_hasta = "Fecha hasta"
    f_fin_lb = Label(field_id="f_fin", text=f_hasta)
    f_fin = DateField(f_hasta, format='%d/%m/%Y')
コード例 #6
0
ファイル: fields.py プロジェクト: afeide/LuoYunCloud
 def test(self):
     expected = """<label for="test">Caption</label>"""
     label = Label('test', 'Caption')
     self.assertEqual(label(), expected)
     self.assertEqual(str(label), expected)
     self.assertEqual(text_type(label), expected)
     self.assertEqual(label.__html__(), expected)
     self.assertEqual(label().__html__(), expected)
     self.assertEqual(label('hello'), """<label for="test">hello</label>""")
     self.assertEqual(TextField('hi').bind(Form(), 'a').label.text, 'hi')
     if PYTHON_VERSION < (3,):
         self.assertEqual(repr(label), "Label(u'test', u'Caption')")
     else:
         self.assertEqual(repr(label), "Label('test', 'Caption')")
コード例 #7
0
 def test(self):
     expected = """<label for="test">Caption</label>"""
     label = Label('test', 'Caption')
     self.assertEqual(label(), expected)
     self.assertEqual(str(label), expected)
     self.assertEqual(text_type(label), expected)
     self.assertEqual(label.__html__(), expected)
     self.assertEqual(label().__html__(), expected)
     self.assertEqual(label('hello'), """<label for="test">hello</label>""")
     self.assertEqual(TextField('hi').bind(Form(), 'a').label.text, 'hi')
     if PYTHON_VERSION < (3, ):
         self.assertEqual(repr(label), "Label(u'test', u'Caption')")
     else:
         self.assertEqual(repr(label), "Label('test', 'Caption')")
コード例 #8
0
ファイル: fields.py プロジェクト: pakdev/wtforms
 def test(self):
     expected = """<label for="test">Caption</label>"""
     label = Label("test", "Caption")
     self.assertEqual(label(), expected)
     self.assertEqual(str(label), expected)
     self.assertEqual(text_type(label), expected)
     self.assertEqual(label.__html__(), expected)
     self.assertEqual(label().__html__(), expected)
     self.assertEqual(label("hello"), """<label for="test">hello</label>""")
     self.assertEqual(TextField("hi").bind(Form(), "a").label.text, "hi")
     if PYTHON_VERSION < (3,):
         self.assertEqual(repr(label), "Label(u'test', u'Caption')")
     else:
         self.assertEqual(repr(label), "Label('test', 'Caption')")
         self.assertEqual(label.__unicode__(), expected)
コード例 #9
0
ファイル: test_fields.py プロジェクト: yd5011/wtforms
 def test(self):
     expected = """<label for="test">Caption</label>"""
     label = Label("test", "Caption")
     self.assertEqual(label(), expected)
     self.assertEqual(str(label), expected)
     self.assertEqual(text_type(label), expected)
     self.assertEqual(label.__html__(), expected)
     self.assertEqual(label().__html__(), expected)
     self.assertEqual(label("hello"), """<label for="test">hello</label>""")
     self.assertEqual(StringField("hi").bind(Form(), "a").label.text, "hi")
     if PYTHON_VERSION < (3,):
         self.assertEqual(repr(label), "Label(u'test', u'Caption')")
     else:
         self.assertEqual(repr(label), "Label('test', 'Caption')")
         self.assertEqual(label.__unicode__(), expected)
コード例 #10
0
ファイル: test_fields.py プロジェクト: xen/wtforms
 def test(self):
     expected = """<label for="test">Caption</label>"""
     label = Label("test", "Caption")
     assert label() == expected
     assert str(label) == expected
     assert text_type(label) == expected
     assert label.__html__() == expected
     assert label().__html__() == expected
     assert label("hello") == """<label for="test">hello</label>"""
     assert StringField("hi").bind(Form(), "a").label.text == "hi"
     if PYTHON_VERSION < (3, ):
         assert repr(label) == "Label(u'test', u'Caption')"
     else:
         assert repr(label) == "Label('test', 'Caption')"
         assert label.__unicode__() == expected
コード例 #11
0
ファイル: routes.py プロジェクト: eyalfoni/trek
def supply_view(trip_id, supply_id):
    trip = Trip.query.filter_by(id=trip_id).first_or_404()
    form = AddSupplyItemForm()
    form.dri.choices = [(t.id, t.first_name + ' ' + t.last_name)
                        for t in trip.travelers]
    form.submit.label = Label(field_id="submit_label", text="Save")
    supply_item = SupplyItem.query.filter_by(id=supply_id).first_or_404()
    if form.validate_on_submit():
        supply_item.name = form.name.data
        supply_item.user_id = form.dri.data
        supply_item.cost = form.cost.data
        supply_item.cost_estimate = form.cost_estimate.data
        supply_item.notes = form.notes.data
        db.session.commit()
        flash('Your supplies has been saved!')
        return redirect(url_for('main.supplies_view', id=trip_id))
    elif request.method == 'GET':
        form.name.data = supply_item.name
        form.dri.data = supply_item.user_id
        form.cost.data = supply_item.cost
        form.cost_estimate.data = supply_item.cost_estimate
        form.notes.data = supply_item.notes
    return render_template('supply.html',
                           form=form,
                           trip=trip,
                           supply=supply_item)
コード例 #12
0
ファイル: routes.py プロジェクト: juliangrimm225/tawachai
def node(nodeid):
    current_node = Node.query.filter_by(id=nodeid).first_or_404()
    form = NodeForm()
    form.name.label = Label(field_id="name", text="Connect two nodes!")
    if form.validate_on_submit():
        node2 = Node.query.filter_by(id=form.name.data).first()
        if node2 in current_node.sources():
            current_node.remove_source(node2)
            db.session.commit()
            flash('Removed existing node as source')
        elif Node.query.filter_by(id=form.name.data).count() == 1:
            current_node.add_source(
                Node.query.filter_by(id=form.name.data).first())
            db.session.commit()
            flash('Added existing node as source')
        else:
            project = current_node.project
            node = Node(name=form.name.data,
                        project=project,
                        created_by=current_user)
            current_node.add_source(node)
            db.session.add(node)
            db.session.commit()
            flash('Added new node as source')
        return redirect(url_for('main.node', nodeid=current_node.id))
    return render_template('node.html',
                           node=current_node,
                           form=form,
                           title=current_node.name)
コード例 #13
0
ファイル: test_fields.py プロジェクト: xen/wtforms
    def test_escaped_label_text(self):
        label = Label("test", '<script>alert("test");</script>')
        assert label(
            for_="foo") == ('<label for="foo">&lt;script&gt;'
                            "alert(&#34;test&#34;);&lt;/script&gt;</label>")

        assert label(**{"for": "bar"}) == (
            '<label for="bar">&lt;script&gt;'
            "alert(&#34;test&#34;);&lt;/script&gt;</label>")
コード例 #14
0
ファイル: test_fields.py プロジェクト: jirivrany/wtforms
 def test_escaped_label_text(self):
     label = Label('test', '<script>alert("test");</script>')
     self.assertEqual(
         label(for_='foo'),
         """<label for="foo">&lt;script&gt;alert(&#34;test&#34;);&lt;/script&gt;</label>"""
     )
     self.assertEqual(
         label(**{'for': 'bar'}),
         """<label for="bar">&lt;script&gt;alert(&#34;test&#34;);&lt;/script&gt;</label>"""
     )
コード例 #15
0
def new_post():
    global cur_hash, henum, data, entry, worksheet, api, Queue, Posted
    cur_hash, henum, data, entry, worksheet, api, Queue, Posted = first_run.inintial_values(
    )
    text = ('#' + cur_hash + str(henum + 1) + ": " +
            data['Say your name friend'].iat[entry] + "\n \n" +
            data['School'].iat[entry])
    date = data['Χρονική σήμανση'][entry]
    form = PostForm()
    if main.url_checker(text):
        has_url = "Yep"
    else:
        has_url = "Nop"
    #form.title.data = date #changes data
    form.content.data = text  #changes data
    date = "Date: " + date + "  ||  " + "Has link: " + str(
        has_url) + "  ||  " + "Queue: " + str(
            Queue) + "  ||  " + "Posted: " + str(Posted)
    form.content.label = Label("content", date)
    form.hashtag.data = cur_hash  #changes data
    if form.validate_on_submit():
        if form.post.data:
            flash(
                "Posted post on posting poster page :'D " + cur_hash +
                str(henum + 1), 'success')
            print("Posted post on posting poster page :'D " + cur_hash +
                  str(henum + 1))
            text = form.content.raw_data[0]
            if form.admin_edit.raw_data[0]:
                text = main.admin_edit_add(text, form.admin_edit.raw_data[0])
            main.post_anom(worksheet, entry, text, api, cur_hash)
            entry += 1
            henum += 2
            Queue -= 1
            Posted += 1
            return redirect(url_for('posts.next_post'))
        elif form.archive.data:
            flash('Moved to archive :(', 'success')
            print('Moved to archive :(')
            main.move_to_archive(worksheet, entry)
            entry += 1
            Queue -= 1
            return redirect(url_for('posts.next_post'))
        elif form.change_hashtag.data:
            if cur_hash != form.hashtag.raw_data[0]:
                henum = 1
                cur_hash = form.hashtag.raw_data[0]
                print(cur_hash)
                return redirect(url_for('posts.next_post'))
    return render_template('create_post.html',
                           title='Secrets Poster',
                           form=form,
                           legend='Post some stuffs')
コード例 #16
0
ファイル: forms.py プロジェクト: UPsudJM/SoCo
 def __init__(self, formulaire, *args, **kwargs):
     FlaskForm.__init__(self, *args, **kwargs)
     self.formulaire = formulaire
     if not formulaire.champ_attestation:
         self.__delitem__('attestation_demandee')
     if formulaire.jour_par_jour or formulaire.evenement.recurrence:
         if formulaire.evenement.date_fin == formulaire.evenement.date:
             self.__delitem__('jours_de_presence')
         else:
             formulaire.evenement.calcule_jours()
             for i in range(len(formulaire.evenement.jours)):
                 j = formulaire.evenement.jours[i]
                 self.jours_de_presence.append_entry()
                 self.jours_de_presence.entries[
                     i].value = "jour-" + j.strftime("%x")
                 self.jours_de_presence.entries[i].label = j.strftime(
                     "%A %d %b")
     if not formulaire.champ_type_inscription:
         self.__delitem__('type_inscription')
     if formulaire.champ_restauration_1:
         self.__getitem__('inscription_repas_1').label = Label(
             'inscription_repas_1', formulaire.texte_restauration_1)
     else:
         self.__delitem__('inscription_repas_1')
     if formulaire.champ_restauration_2:
         self.__getitem__('inscription_repas_2').label = Label(
             'inscription_repas_1', formulaire.texte_restauration_2)
     else:
         self.__delitem__('inscription_repas_2')
     if formulaire.champ_libre_1:
         self.__getitem__('reponse_question_1').label = Label(
             'reponse_question_1', formulaire.texte_libre_1)
     else:
         self.__delitem__('reponse_question_1')
     if formulaire.champ_libre_2:
         self.__getitem__('reponse_question_2').label = Label(
             'reponse_question_1', formulaire.texte_libre_2)
     else:
         self.__delitem__('reponse_question_2')
コード例 #17
0
ファイル: routes.py プロジェクト: juliangrimm225/tawachai
def edit_node(nodeid):
    current_node = Node.query.filter_by(id=nodeid).first_or_404()
    form = NodeForm()
    form.name.label = Label(field_id='name', text='New Node Name')
    if form.validate_on_submit():
        current_node.name = form.name.data
        db.session.commit()
        flash('Your changes have been saved.')
        return redirect(url_for('main.node', nodeid=current_node.id))
    if request.method == 'GET':
        form.name.data = current_node.name

    return render_template('edit_node.html',
                           node=current_node,
                           form=form,
                           title=current_node.name,
                           edit_node=True)
コード例 #18
0
ファイル: routes.py プロジェクト: juliangrimm225/tawachai
def edit_project(projectid):
    project = Project.query.filter_by(id=projectid).first_or_404()
    form = ProjectForm()
    form.name.label = Label(field_id='name', text='New Project Name')
    if form.validate_on_submit():
        project.name = form.name.data
        db.session.commit()
        flash('Your changes have been saved.')
        return redirect(url_for('main.project', projectid=project.id))
    elif request.method == 'GET':
        form.name.data = project.name

    return render_template('edit_project.html',
                           project=project,
                           form=form,
                           title=project.name,
                           edit=True)
コード例 #19
0
def update_post(post_id):
    post = Post.query.get_or_404(post_id)
    if post.author != current_user:
        abort(403)
    form = PostForm()
    if form.validate_on_submit():
        post.title = form.title.data
        post.content = form.content.data
        db.session.commit()
        flash("Your post has been updated", "success")
        return redirect(url_for('posts.post', post_id=post.id))
    elif request.method == 'GET':
        form.title.data = post.title
        form.content.data = post.content
    # This is used to update the label in runtime
    form.submit.label = Label(field_id='submit', text="Update")
    return render_template('create_post.html',
                           title='Update_Post',
                           legend='Update Post',
                           form=form)
コード例 #20
0
ファイル: routes.py プロジェクト: eyalfoni/trek
def flight_view(trip_id, flight_id):
    trip = Trip.query.filter_by(id=trip_id).first_or_404()
    flight = db.session.query(Flight).filter_by(id=flight_id).first_or_404()
    flight_form = AddFlightForm()
    flight_form.submit_flight.label = Label(field_id="submit_label",
                                            text="Save")
    if flight_form.validate_on_submit():
        flight.code = flight_form.flight_number.data,
        flight.start_datetime = to_utc_time(flight_form.departure_time.data),
        flight.end_datetime = to_utc_time(flight_form.arrival_time.data)
        db.session.commit()
        flash('Your flight has been updated!')
        return redirect(url_for('main.trip_view', id=trip_id))
    elif request.method == 'GET':
        flight_form.flight_number.data = flight.code
        flight_form.departure_time.data = flight.start_datetime
        flight_form.arrival_time.data = flight.end_datetime
    return render_template('flight_edit.html',
                           flight=flight,
                           trip=trip,
                           flight_form=flight_form)
コード例 #21
0
ファイル: routes.py プロジェクト: eyalfoni/trek
def invite_landing_view(id):
    trip = Trip.query.filter_by(id=id).first_or_404()
    if current_user.is_authenticated:
        if current_user not in trip.travelers:
            trip.travelers.append(current_user)
            db.session.commit()
        return redirect(url_for('main.trip_view', id=id))
    form = RegistrationForm()
    form.submit.label = Label(field_id="submit_label", text="Join the trip!")
    if form.validate_on_submit():
        user = User(email=form.email.data,
                    first_name=form.first_name.data.title(),
                    last_name=form.last_name.data.title())
        user.set_password(form.password.data)
        db.session.add(user)
        trip.travelers.append(user)
        db.session.add(trip)
        db.session.commit()
        login_user(user)
        return redirect(url_for('main.trip_view', id=id))
    return render_template('invite.html', trip=trip, form=form)
コード例 #22
0
def edit_info(field):
    form = EditInfoForm()
    if field == 'first_name':
        label = 'First Name'
    elif field == 'last_name':
        label = 'Last Name'
    elif field == 'username':
        label = 'Username'
    else:
        label = 'Info'
    form.field.label = Label(field_id="name", text=label)
    if form.validate_on_submit():
        user = current_user
        setattr(user, field, form.field.data)

        db.session.commit()
        flash('Your information was saved.', 'success')
        return redirect(url_for('auth.account'))

    return render_template('auth/edit_info.html',
                           title='Edit Info',
                           user=current_user,
                           form=form)
コード例 #23
0
ファイル: test_fields.py プロジェクト: xen/wtforms
 def test_override_for(self):
     label = Label("test", "Caption")
     assert label(for_="foo") == """<label for="foo">Caption</label>"""
     assert label(
         **{"for": "bar"}) == """<label for="bar">Caption</label>"""
コード例 #24
0
ファイル: test_fields.py プロジェクト: yd5011/wtforms
 def test_override_for(self):
     label = Label("test", "Caption")
     self.assertEqual(label(for_="foo"), """<label for="foo">Caption</label>""")
     self.assertEqual(
         label(**{"for": "bar"}), """<label for="bar">Caption</label>"""
     )
コード例 #25
0
 def test_override_for(self):
     label = Label('test', 'Caption')
     self.assertEqual(label(for_='foo'),
                      """<label for="foo">Caption</label>""")
     self.assertEqual(label(**{'for': 'bar'}),
                      """<label for="bar">Caption</label>""")
コード例 #26
0
class ProductForm(FlaskForm):
    label = Label('testing', 'hellolllll')
    like_button = BooleanField('like', default=False)
コード例 #27
0
def annotation():
    try:
        if not data.save and data.annotated_value:
            data.save_matches(data.annotated_value)
        data.save = False

        jump = request.args.get('jump')

        if data.is_empty() and data.load_annotation:
            data.phrases, data.label_name = [''] * 3, [''] * 3
            data.output_df = data.input_df
            cols = data.output_df.columns.values.tolist()
            length = data.output_df.index[data.output_df[
                cols[1]].isna()].tolist()
            if length: data.output_df = data.output_df.iloc[:length[0], :]
            if 'L1_' not in cols[2] or '_span' not in cols[
                    3] or '_text' not in cols[4] or 'keywords' not in cols:
                flash('Please select the correct file to load the annotation')
                return redirect(url_for('auth_bp.login_page'))
            data.pt_ID, data.report_text = cols[:2]
            if '-' not in data.output_df.loc[0, 'keywords']:
                data.num_keywords = tuple(
                    (len(data.output_df), len(data.output_df)))
            else:
                data.num_keywords = tuple(
                    int(i)
                    for i in data.output_df.loc[0, 'keywords'].split('-'))
            try:
                for i in range(3):
                    if 3 * i + 5 < len(cols) and 'L%d_' % (i + 1) in cols[3 * i
                                                                          + 2]:
                        data.label_name[i] = cols[3 * i + 2][3:]
                        data.phrases[i] = data.output_df.loc[i + 1, 'keywords']
                        data.allphrases.extend(data.phrases[i].split(','))
                        data.num_label = i + 1
                    else:
                        break
            except BaseException:
                flash('Please select the correct file to load the annotation')
                return redirect(url_for('auth_bp.login_page', load=False))

        if data.label_name[2]:
            form = ValueFormThree()
            data.num_label = 3
        elif data.label_name[1]:
            form = ValueFormTwo()
            data.num_label = 2
        else:
            form = ValueFormOne()
            data.num_label = 1
        if data.update_keyword or (data.is_empty()
                                   and not data.load_annotation):
            msg = data.sort_data()
            if msg != "done":
                flash(msg)
                return redirect(url_for('auth_bp.run_regex'))
        # pagination
        if jump:
            start_page = int(jump) + 1
        elif data.load_annotation or data.update_keyword:
            try:
                start_page = int(data.output_df.loc[data.num_label + 1,
                                                    'keywords']) + 1
            except:
                start_page = data.output_df.index[data.output_df[
                    'L1_' + data.label_name[0]].isna()].tolist()
                start_page = start_page[0] + 1 if start_page else 1
        else:
            start_page = 1

        data.update_keyword = False
        data.load_annotation = False
        page = int(request.args.get('page', start_page))

        per_page = 1
        offset = (page - 1) * per_page
        total_length = data.num_keywords[
            0] if data.positive_hit else data.num_keywords[1]
        pagination = Pagination(page=page,
                                total=total_length,
                                search=False,
                                per_page=per_page,
                                css_framework='bootstrap3',
                                inner_window=5,
                                outer_window=0)

        # display report text on html
        report = data.output_df.loc[page - 1, data.report_text]
        if '[Header_Start]' in report:
            data.output_df.loc[page - 1,
                               data.report_text] = data.combine_keywords_notes(
                                   report)
        text = data.output_df.loc[page - 1, data.report_text].split('\n')
        length = [len(text[0]) + 1]

        for i in range(1, len(text)):
            length.append(len(text[i]) + 1 + length[i - 1])

        header = 'Patient ID: ' if data.patient_level else 'Note ID: '
        id_text = [(header + str(data.output_df.loc[page - 1, data.pt_ID]),
                    text)]
        data.current_row_index = page - 1
        data.get_matches_indices(length, text)

        # set default annotation values
        if data.num_label > 2:
            form.label3_value.label = Label(field_id="label3_value",
                                            text=data.label_name[2])
            form.label3_value.render_kw = {
                "placeholder": data.matches_value[2]
            }
        if data.num_label > 1:
            form.label2_value.label = Label(field_id="label2_value",
                                            text=data.label_name[1])
            form.label2_value.render_kw = {
                "placeholder": data.matches_value[1]
            }
        if data.num_label > 0:
            form.label1_value.label = Label(field_id="label1_value",
                                            text=data.label_name[0])
            form.label1_value.render_kw = {
                "placeholder": data.matches_value[0]
            }

        # get annotation values
        if data.num_label > 0:
            value = [data.matches_value[0]
                     ] if form.data['label1_value'] == None else [
                         form.data['label1_value']
                     ]
        if data.num_label > 1:
            value.append(data.matches_value[1] if form.data['label2_value'] ==
                         None else form.data['label2_value'])
        if data.num_label > 2:
            value.append(data.matches_value[2] if form.data['label3_value'] ==
                         None else form.data['label3_value'])
        data.annotated_value = value
        value_counts = data.get_value_counts()

        downloadform = DownloadForm()
        zoom = Zoom()

        if request.method == 'POST':
            # save annotation value and go to next or previous note
            if form.is_submitted():
                data.save_matches(data.annotated_value)
                value_counts = data.get_value_counts()
                if form.submit_next.data:
                    return redirect(
                        url_for('auth_bp.annotation',
                                jump=min(page,
                                         len(data.output_df) - 2)))
                elif form.submit_prev.data:
                    return redirect(
                        url_for('auth_bp.annotation', jump=max(page - 2, 0)))
            # download report
            if downloadform.validate_on_submit(
            ) and downloadform.submit_download.data:
                if downloadform.data['with_report']:
                    return send_file('../output/' + data.output_fname,
                                     mimetype='text/csv',
                                     attachment_filename=data.output_fname,
                                     as_attachment=True)
                else:
                    return send_file('../output/noreport_' + data.output_fname,
                                     mimetype='text/csv',
                                     attachment_filename='noreport_' +
                                     data.output_fname,
                                     as_attachment=True)
            # zoom in and zoom out
            if zoom.is_submitted():
                if zoom.submit_zoom_in.data and data.font_size < 20:
                    data.font_size += 2
                if zoom.submit_zoom_out.data and data.font_size > 4:
                    data.font_size -= 2
                return redirect(url_for('auth_bp.annotation', jump=page - 1))

    except BaseException:
        flash('Something went wrong')
        return redirect(url_for('auth_bp.login_page', load=False))

    return render_template('annotation.html',
                           form=form,
                           downloadform=downloadform,
                           zoom=zoom,
                           pagination=pagination,
                           page=page,
                           per_page=per_page,
                           id_text=id_text,
                           matches=data.matches_display,
                           num_keywords=data.num_keywords,
                           num_label=data.num_label,
                           value_counts=value_counts,
                           font_size=data.font_size)
コード例 #28
0
 def __init__(self, text, field_id='', **kwargs):
     _Label.__init__(self, field_id, text)
     Field.__init__(self, **kwargs)
コード例 #29
0
ファイル: helper.py プロジェクト: lendoo73/my_idea_boxes
def get_placeholder(colleague, current_user, form):
    placeholder = "Your current password"
    if colleague.email != current_user.email:
        placeholder = "Admin password"
        form.password.label = Label(field_id="password", text=placeholder)
    return placeholder
コード例 #30
0
def format_var_form(var_form, var_list_of_dicts):
    # Populates the variable form from the list of variables
    for n, i in enumerate(var_list_of_dicts):
        l = Label(field_id="variable", text=list(i.keys())[0])
        var_form.vars[n].variable.label = l
    return var_form
コード例 #31
0
ファイル: fields.py プロジェクト: PyFansLi/chiki
 def __init__(self, text, field_id='', **kwargs):
     _Label.__init__(self, field_id, text)
     Field.__init__(self, **kwargs)