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')
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)
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')"
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')
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')")
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')")
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)
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)
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
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)
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)
def test_escaped_label_text(self): label = Label("test", '<script>alert("test");</script>') assert label( for_="foo") == ('<label for="foo"><script>' "alert("test");</script></label>") assert label(**{"for": "bar"}) == ( '<label for="bar"><script>' "alert("test");</script></label>")
def test_escaped_label_text(self): label = Label('test', '<script>alert("test");</script>') self.assertEqual( label(for_='foo'), """<label for="foo"><script>alert("test");</script></label>""" ) self.assertEqual( label(**{'for': 'bar'}), """<label for="bar"><script>alert("test");</script></label>""" )
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')
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')
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)
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)
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)
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)
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)
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)
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>"""
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>""" )
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>""")
class ProductForm(FlaskForm): label = Label('testing', 'hellolllll') like_button = BooleanField('like', default=False)
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)
def __init__(self, text, field_id='', **kwargs): _Label.__init__(self, field_id, text) Field.__init__(self, **kwargs)
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
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