use rendered currency list

This commit is contained in:
Adrien CLERC 2020-05-02 11:41:56 +02:00
parent ddf8007342
commit 08c4ea473f
2 changed files with 5 additions and 16 deletions

View file

@ -23,7 +23,7 @@ from wtforms.validators import (
from ihatemoney.currency_convertor import CurrencyConverter from ihatemoney.currency_convertor import CurrencyConverter
from ihatemoney.models import LoggingMode, Person, Project from ihatemoney.models import LoggingMode, Person, Project
from ihatemoney.utils import eval_arithmetic_expression, slugify from ihatemoney.utils import eval_arithmetic_expression, slugify, render_localized_currency
def strip_filter(string): def strip_filter(string):
@ -33,18 +33,6 @@ def strip_filter(string):
return string return string
def get_editprojectform_for(project, **kwargs):
"""Return an instance of EditProjectForm configured for a particular project.
"""
form = EditProjectForm(**kwargs)
choices = copy.copy(form.default_currency.choices)
choices.sort(
key=lambda rates: "" if rates[0] == project.default_currency else rates[0]
)
form.default_currency.choices = choices
return form
def get_billform_for(project, set_default=True, **kwargs): def get_billform_for(project, set_default=True, **kwargs):
"""Return an instance of BillForm configured for a particular project. """Return an instance of BillForm configured for a particular project.
@ -124,7 +112,7 @@ class EditProjectForm(FlaskForm):
default_currency = SelectField( default_currency = SelectField(
_("Default Currency"), _("Default Currency"),
choices=[ choices=[
(currency_name, currency_name) (currency_name, render_localized_currency(currency_name))
for currency_name in currency_helper.get_currencies() for currency_name in currency_helper.get_currencies()
], ],
validators=[DataRequired()], validators=[DataRequired()],

View file

@ -48,7 +48,7 @@ from ihatemoney.forms import (
ResetPasswordForm, ResetPasswordForm,
UploadForm, UploadForm,
get_billform_for, get_billform_for,
get_editprojectform_for, EditProjectForm,
) )
from ihatemoney.history import get_history, get_history_queries from ihatemoney.history import get_history, get_history_queries
from ihatemoney.models import Bill, LoggingMode, Person, Project, db from ihatemoney.models import Bill, LoggingMode, Person, Project, db
@ -377,7 +377,7 @@ def reset_password():
@main.route("/<project_id>/edit", methods=["GET", "POST"]) @main.route("/<project_id>/edit", methods=["GET", "POST"])
def edit_project(): def edit_project():
edit_form = get_editprojectform_for(g.project) edit_form = EditProjectForm()
import_form = UploadForm() import_form = UploadForm()
# Import form # Import form
if import_form.validate_on_submit(): if import_form.validate_on_submit():
@ -417,6 +417,7 @@ def edit_project():
edit_form.ip_recording.data = True edit_form.ip_recording.data = True
edit_form.contact_email.data = g.project.contact_email edit_form.contact_email.data = g.project.contact_email
edit_form.default_currency.data = g.project.default_currency
return render_template( return render_template(
"edit_project.html", "edit_project.html",