e6e4eb7cdb55f44b8c6202938a974d0e5ca545d6
[wolnelektury.git] / src / infopages / models.py
1 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
2 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
3 #
4 from django.db import models
5 from django.urls import reverse
6 from django.utils.translation import gettext_lazy as _
7
8
9 class InfoPage(models.Model):
10     """An InfoPage is used to display a two-column flatpage."""
11
12     main_page = models.IntegerField(_('main page priority'), null=True, blank=True)
13     slug = models.SlugField(_('slug'), max_length=120, unique=True, db_index=True)
14     title = models.CharField(_('title'), max_length=120, blank=True)
15     left_column = models.TextField(_('left column'), blank=True)
16     right_column = models.TextField(_('right column'), blank=True)
17
18     class Meta:
19         ordering = ('main_page', 'slug',)
20         verbose_name = _('info page')
21         verbose_name_plural = _('info pages')
22
23     def __str__(self):
24         return self.title
25
26     def get_absolute_url(self):
27         return reverse('infopage', args=[self.slug])