diff --git a/nummi/account/templates/account/account_detail.html b/nummi/account/templates/account/account_detail.html index fcd9321..a4b6676 100644 --- a/nummi/account/templates/account/account_detail.html +++ b/nummi/account/templates/account/account_detail.html @@ -16,7 +16,9 @@
- {% for cat in categories %} + {% for cat in user.category_set.all %} {{ cat.icon|remix }}{{ cat }} {% endfor %} {{ "add"|remix }}{% translate "Create category" %} diff --git a/nummi/main/views.py b/nummi/main/views.py index 0dc8b3f..df08d7c 100644 --- a/nummi/main/views.py +++ b/nummi/main/views.py @@ -1,5 +1,3 @@ -from account.models import Account -from category.models import Category from django.contrib import messages from django.contrib.auth import views as auth_views from django.contrib.auth.mixins import LoginRequiredMixin @@ -15,33 +13,24 @@ from django.views.generic import ( UpdateView, ) from history.utils import history -from statement.models import Statement -from transaction.models import Transaction class IndexView(LoginRequiredMixin, TemplateView): template_name = "main/index.html" def get_context_data(self, **kwargs): - _max = 8 - _transactions = Transaction.objects.filter(user=self.request.user) - _accounts = Account.objects.filter(user=self.request.user) + _user = self.request.user + _transactions = _user.transaction_set.all() _statements = ( - Statement.objects.filter(user=self.request.user) - .exclude(account__archived=True) + _user.statement_set.exclude(account__archived=True) .order_by("account__id", "-date") .distinct("account__id") ) res = { - "accounts": _accounts, - "categories": Category.objects.filter(user=self.request.user), "statements": _statements, "history": history(_transactions.exclude(category__budget=False)), } - if _transactions.count() > _max: - res["transactions_url"] = reverse_lazy("transactions") - res["statements_url"] = reverse_lazy("statements") return super().get_context_data(**kwargs) | res diff --git a/nummi/statement/templates/statement/statement_list.html b/nummi/statement/templates/statement/statement_list.html index 6970a63..2b2d998 100644 --- a/nummi/statement/templates/statement/statement_list.html +++ b/nummi/statement/templates/statement/statement_list.html @@ -7,6 +7,6 @@ {% translate "Statements" %} {% endblock h2 %} {% block table %} - {% url "new_statement" as new_statement_url %} - {% statement_table statements new_statement_url=new_statement_url %} + {% url "new_statement" as ns_url %} + {% statement_table statements new_statement_url=ns_url %} {% endblock table %} diff --git a/nummi/statement/templatetags/statement_extras.py b/nummi/statement/templatetags/statement_extras.py index 54eef80..d63dd6d 100644 --- a/nummi/statement/templatetags/statement_extras.py +++ b/nummi/statement/templatetags/statement_extras.py @@ -16,6 +16,11 @@ def check(s, diff): @register.inclusion_tag("statement/statement_table.html") def statement_table(statements, **kwargs): + if (n_max := kwargs.get("n_max")) is not None: + if statements.count() <= n_max: + del kwargs["statements_url"] + statements = statements[:n_max] + return kwargs | { "statements": statements, }