# Copyright (C) 2020 by Animath # SPDX-License-Identifier: GPL-3.0-or-later from django.utils import formats from django.utils.text import format_lazy from django.utils.translation import gettext_lazy as _ import django_tables2 as tables from .models import Team, Tournament # noinspection PyTypeChecker class TeamTable(tables.Table): name = tables.LinkColumn( 'participation:team_detail', args=[tables.A("id")], verbose_name=lambda: _("name").capitalize(), ) class Meta: attrs = { 'class': 'table table condensed table-striped', } model = Team fields = ('name', 'trigram',) template_name = 'django_tables2/bootstrap4.html' # noinspection PyTypeChecker class ParticipationTable(tables.Table): name = tables.LinkColumn( 'participation:participation_detail', args=[tables.A("id")], verbose_name=lambda: _("name").capitalize(), accessor="team__name", ) trigram = tables.Column( verbose_name=lambda: _("trigram").capitalize(), accessor="team__trigram", ) class Meta: attrs = { 'class': 'table table condensed table-striped', } model = Team fields = ('name', 'trigram', 'valid',) template_name = 'django_tables2/bootstrap4.html' class TournamentTable(tables.Table): name = tables.LinkColumn() date = tables.Column(_("date").capitalize, accessor="id") def render_date(self, record): return format_lazy(_("From {start} to {end}"), start=formats.date_format(record.date_start, format="SHORT_DATE_FORMAT", use_l10n=True), end=formats.date_format(record.date_end, format="SHORT_DATE_FORMAT", use_l10n=True)) class Meta: attrs = { 'class': 'table table condensed table-striped', } model = Tournament fields = ('name', 'date',) template_name = 'django_tables2/bootstrap4.html'