8
0
Fork 0
mirror of https://gitlab.federez.net/re2o/re2o synced 2024-05-16 23:56:12 +00:00

Fix js calculation of price - NaN bug

This commit is contained in:
Gabriel Detraz 2019-12-27 17:00:20 +01:00 committed by root
parent 9e87f796aa
commit f91f284ed1
4 changed files with 17 additions and 11 deletions

View file

@ -795,7 +795,7 @@ class UserSerializer(NamespacedHMSerializer):
"access",
"end_access",
"uid",
"class_name",
"class_type",
"api_url",
)
extra_kwargs = {"shell": {"view_name": "shell-detail"}}

View file

@ -775,7 +775,7 @@ class Article(RevMixin, AclMixin, models.Model):
target_user: The user to sell articles
"""
if target_user is None:
objects_pool = cls.objects.filter(Q(type_user="All"))
objects_pool = cls.objects.all()
elif target_user.is_class_club:
objects_pool = cls.objects.filter(Q(type_user="All") | Q(type_user="Club"))
else:

View file

@ -102,7 +102,7 @@ def new_facture(request, user, userid):
invoice = Facture(user=user)
# The template needs the list of articles (for the JS part)
article_list = Article.objects.filter(
Q(type_user="All") | Q(type_user=request.user.class_name)
Q(type_user="All") | Q(type_user=user.class_type)
)
# Building the invoice form and the article formset
invoice_form = FactureForm(
@ -184,9 +184,7 @@ def new_cost_estimate(request):
point of view.
"""
# The template needs the list of articles (for the JS part)
articles = Article.objects.filter(
Q(type_user="All") | Q(type_user=request.user.class_name)
)
articles = Article.objects.all()
# Building the invocie form and the article formset
cost_estimate_form = CostEstimateForm(request.POST or None)
@ -241,9 +239,7 @@ def new_custom_invoice(request):
point of view.
"""
# The template needs the list of articles (for the JS part)
articles = Article.objects.filter(
Q(type_user="All") | Q(type_user=request.user.class_name)
)
articles = Article.objects.all()
# Building the invocie form and the article formset
invoice_form = CustomInvoiceForm(request.POST or None)

View file

@ -283,8 +283,18 @@ class User(
return str(self.emailaddress_set.get(local_part=self.pseudo.lower()))
@cached_property
def class_name(self):
"""Renvoie si il s'agit d'un adhérent ou d'un club"""
def class_type(self):
"""Returns the type of that user; returns database keyname"""
if hasattr(self, "adherent"):
return "Adherent"
elif hasattr(self, "club"):
return "Club"
else:
raise NotImplementedError(_("Unknown type."))
@cached_property
def class_display(self):
"""Returns the typename of that user to display for user interface"""
if hasattr(self, "adherent"):
return _("Member")
elif hasattr(self, "club"):