Skip to content
Snippets Groups Projects
Select Git revision
  • aaa212f10055ddfb7b76379f76f3e1d066280f45
  • renovate/django-split-settings-1.x
  • renovate/djangorestframework-3.x
  • main
  • 520-improve-trackmanager
  • 520-fix-scheduling
  • 520-akowner
  • 520-status
  • 520-message-resolved
  • 520-improve-scheduling-2
  • renovate/django-bootstrap5-24.x
  • 520-improve-submission
  • 520-improve-scheduling
  • 520-improve-wall
  • 520-fix-event-wizard-datepicker
  • 520-upgrades
  • renovate/tzdata-2023.x
  • renovate/django-5.x
  • renovate/fontawesomefree-6.x
  • renovate/sphinx-rtd-theme-2.x
  • renovate/sphinxcontrib-apidoc-0.x
21 results

models.py

Blame
  • Forked from KIF / AKPlanning
    835 commits behind the upstream repository.
    Benjamin Hättasch's avatar
    Benjamin Hättasch authored
    Introduce model
    Introduce admin interface
    Show buttons on dashboard start page
    2f0936df
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    models.py 1.27 KiB
    from django.db import models
    from django.utils.translation import gettext_lazy as _
    from fontawesome_5.fields import IconField
    
    from AKModel.models import Event
    
    
    class DashboardButton(models.Model):
        class Meta:
            verbose_name = _("Dashboard Button")
            verbose_name_plural = _("Dashboard Buttons")
    
        COLOR_CHOICES = (
            (0, "primary"),
            (1, "success"),
            (2, "info"),
            (3, "warning"),
            (4, "danger"),
        )
    
        text = models.CharField(max_length=50, blank=False, verbose_name=_("Text"),
                        help_text=_("Text that will be shown on the button"))
        url = models.URLField(blank=False, verbose_name=_("Link URL"), help_text=_("URL this button links to"))
        icon = IconField(default="external-link-alt", verbose_name=_("Icon"), help_text="Symbol represeting this button.")
        color = models.PositiveSmallIntegerField(choices=COLOR_CHOICES, default=0, blank=False,
                        verbose_name=_("Button Style"), help_text=_("Style (Color) of this button (bootstrap class)"))
        event = models.ForeignKey(to=Event, on_delete=models.CASCADE, blank=False, null=False,
                        verbose_name=_("Event"), help_text=_("Event this button belongs to"))
    
        def __str__(self):
            return f"{self.text} ({self.event})"