From e0a02a34a393b9bb061791c3d8a644f95525778d Mon Sep 17 00:00:00 2001 From: yaemiku Date: Wed, 28 Sep 2022 22:41:50 +0200 Subject: [PATCH] [func] buttons everywhere --- core/models.py | 1 - core/templates/atu.html | 7 ++++- core/templates/calendar.html | 3 ++ core/templates/grandprix.html | 7 ++++- core/templates/home-reverse.html | 3 ++ core/templates/home.html | 3 ++ core/templates/mbkb.html | 3 ++ core/templates/membership.html | 3 ++ core/templatetags/wysiwyg.py | 4 ++- db/atu/migrations/0003_atu_buttons.py | 18 ++++++++++++ db/atu/models.py | 27 ++++++++++++++++++ .../migrations/0004_calendar_buttons.py | 18 ++++++++++++ db/calendar/models.py | 27 ++++++++++++++++++ db/gpb/migrations/0003_grandprixb_buttons.py | 18 ++++++++++++ db/gpb/models.py | 26 +++++++++++++++++ .../0006_grandprixw_buttons_post_buttons.py | 23 +++++++++++++++ db/main/models.py | 28 +++++++++++++++++++ db/mbkb/migrations/0002_mbkb_buttons.py | 18 ++++++++++++ db/mbkb/models.py | 27 ++++++++++++++++++ .../migrations/0004_membership_buttons.py | 18 ++++++++++++ db/membership/models.py | 27 ++++++++++++++++++ static/css/dist/styles.css | 16 +++++++++++ theme/static/css/dist/styles.css | 16 +++++++++++ 23 files changed, 337 insertions(+), 4 deletions(-) create mode 100644 db/atu/migrations/0003_atu_buttons.py create mode 100644 db/calendar/migrations/0004_calendar_buttons.py create mode 100644 db/gpb/migrations/0003_grandprixb_buttons.py create mode 100644 db/main/migrations/0006_grandprixw_buttons_post_buttons.py create mode 100644 db/mbkb/migrations/0002_mbkb_buttons.py create mode 100644 db/membership/migrations/0004_membership_buttons.py diff --git a/core/models.py b/core/models.py index 36d457c..2b4b6b0 100644 --- a/core/models.py +++ b/core/models.py @@ -1,5 +1,4 @@ from django.db import models -from tinymce.models import HTMLField from admin_ordering.models import OrderableModel from filebrowser.fields import FileBrowseField diff --git a/core/templates/atu.html b/core/templates/atu.html index 4d83b43..94ab09f 100644 --- a/core/templates/atu.html +++ b/core/templates/atu.html @@ -4,6 +4,11 @@ {% load static tailwind_tags wysiwyg %} {% block content %}
-
{% content atu %}
+
+ {% content atu %} +
+ {% buttons atu.buttons %} +
+
{% endblock %} diff --git a/core/templates/calendar.html b/core/templates/calendar.html index f786853..2c80238 100644 --- a/core/templates/calendar.html +++ b/core/templates/calendar.html @@ -22,6 +22,9 @@ {% for calendar in calendars %} {% empty %} Brak kalendarzy diff --git a/core/templates/grandprix.html b/core/templates/grandprix.html index c52e070..660f7a5 100644 --- a/core/templates/grandprix.html +++ b/core/templates/grandprix.html @@ -3,5 +3,10 @@ {% block title %}Grand Prix Białegostoku | pdlzbs{% endblock %} {% load static tailwind_tags wysiwyg %} {% block content %} -
{% content gpb %}
+
+ {% content gpb %} +
+ {% buttons gpb.buttons %} +
+
{% endblock %} diff --git a/core/templates/home-reverse.html b/core/templates/home-reverse.html index 9257044..1288e9d 100644 --- a/core/templates/home-reverse.html +++ b/core/templates/home-reverse.html @@ -9,6 +9,9 @@

{{ focus.title }}

{% endif %}
{% content focus %}
+
+ {% buttons focus.buttons %} +
{% endblock %} diff --git a/core/templates/home.html b/core/templates/home.html index f2c4f23..4647e90 100644 --- a/core/templates/home.html +++ b/core/templates/home.html @@ -21,6 +21,9 @@

{{ post.title }}

{% endif %}
{% readmore post %}
+
+ {% buttons post.buttons %} +
{% if not forloop.last %}
diff --git a/core/templates/mbkb.html b/core/templates/mbkb.html index cfa4e5e..0aae08d 100644 --- a/core/templates/mbkb.html +++ b/core/templates/mbkb.html @@ -11,6 +11,9 @@ {% if article.show_title %}

{{ article.title }}

{% endif %} {% content article %} +
+ {% buttons article.buttons %} +
{% if not forloop.last %}
diff --git a/core/templates/membership.html b/core/templates/membership.html index 0934fc9..e8c4bbc 100644 --- a/core/templates/membership.html +++ b/core/templates/membership.html @@ -24,6 +24,9 @@ {% for membership in memberships %} {% empty %} Brak dokumentów diff --git a/core/templatetags/wysiwyg.py b/core/templatetags/wysiwyg.py index d40e806..90137d9 100644 --- a/core/templatetags/wysiwyg.py +++ b/core/templatetags/wysiwyg.py @@ -22,7 +22,9 @@ def readmore(context, value: str): res = value.content.split('') cntnt = res[0] if len(res) > 1: - cntnt += f'

...

Czytaj dalej' + cntnt += '

...

' + cntnt += f'Czytaj dalej' + cntnt += '
' return mark_safe(tableoverflow(cntnt)) diff --git a/db/atu/migrations/0003_atu_buttons.py b/db/atu/migrations/0003_atu_buttons.py new file mode 100644 index 0000000..4703454 --- /dev/null +++ b/db/atu/migrations/0003_atu_buttons.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.5 on 2022-09-28 20:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('atu', '0002_alter_atu_content'), + ] + + operations = [ + migrations.AddField( + model_name='atu', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + ] diff --git a/db/atu/models.py b/db/atu/models.py index eaf6a5c..a9bdd05 100644 --- a/db/atu/models.py +++ b/db/atu/models.py @@ -4,9 +4,36 @@ from core.utils import SingletonModel # Create your models here. +buttons_help_text = """Tutaj można wpisać dowolną ilość przycisków w następującym formacie: + + tekst1 -> link + teskt2 | link + ... + + Symbol -> oznacza, że link będzie otwarty w nowej karcie + Symbol | oznacza, że link będzie otwarty w tej samej karcie + Na przykład: + + pzbs -> https://pzbs.pl + fotogaleria | https://galeria.podlaskizbs.pl + cezar -> https://www.msc.com.pl/cezar + + PZBS i Cezar zostaną otwarte w nowej karcie + UWAGA !! + Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link + Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób: + + -> link do wyników + fotogaleria -> link do fotogalerii + + Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników! + """.replace('\n', '
') + class Atu(SingletonModel): content = HTMLField('Tekst', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) def __str__(self): return 'Stowarzyszenie Brydżowe ATU' diff --git a/db/calendar/migrations/0004_calendar_buttons.py b/db/calendar/migrations/0004_calendar_buttons.py new file mode 100644 index 0000000..a6e3425 --- /dev/null +++ b/db/calendar/migrations/0004_calendar_buttons.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.5 on 2022-09-28 20:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('calendar', '0003_calendar_published'), + ] + + operations = [ + migrations.AddField( + model_name='calendar', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + ] diff --git a/db/calendar/models.py b/db/calendar/models.py index 1fc8639..ea770f6 100644 --- a/db/calendar/models.py +++ b/db/calendar/models.py @@ -2,6 +2,30 @@ from django.db import models from tinymce.models import HTMLField # Create your models here. +buttons_help_text = """Tutaj można wpisać dowolną ilość przycisków w następującym formacie: + + tekst1 -> link + teskt2 | link + ... + + Symbol -> oznacza, że link będzie otwarty w nowej karcie + Symbol | oznacza, że link będzie otwarty w tej samej karcie + Na przykład: + + pzbs -> https://pzbs.pl + fotogaleria | https://galeria.podlaskizbs.pl + cezar -> https://www.msc.com.pl/cezar + + PZBS i Cezar zostaną otwarte w nowej karcie + UWAGA !! + Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link + Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób: + + -> link do wyników + fotogaleria -> link do fotogalerii + + Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników! + """.replace('\n', '
') class Calendar(models.Model): @@ -9,6 +33,9 @@ class Calendar(models.Model): year = models.IntegerField('Rok', primary_key=True) content = HTMLField('Kalendarz', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) + def __str__(self): return f'Kalendarz {self.year}' diff --git a/db/gpb/migrations/0003_grandprixb_buttons.py b/db/gpb/migrations/0003_grandprixb_buttons.py new file mode 100644 index 0000000..ad986e7 --- /dev/null +++ b/db/gpb/migrations/0003_grandprixb_buttons.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.5 on 2022-09-28 20:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('gpb', '0002_alter_grandprixb_content'), + ] + + operations = [ + migrations.AddField( + model_name='grandprixb', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + ] diff --git a/db/gpb/models.py b/db/gpb/models.py index 419d884..1200c6f 100644 --- a/db/gpb/models.py +++ b/db/gpb/models.py @@ -3,10 +3,36 @@ from tinymce.models import HTMLField from core.utils import SingletonModel # Create your models here. +buttons_help_text = """Tutaj można wpisać dowolną ilość przycisków w następującym formacie: + + tekst1 -> link + teskt2 | link + ... + + Symbol -> oznacza, że link będzie otwarty w nowej karcie + Symbol | oznacza, że link będzie otwarty w tej samej karcie + Na przykład: + + pzbs -> https://pzbs.pl + fotogaleria | https://galeria.podlaskizbs.pl + cezar -> https://www.msc.com.pl/cezar + + PZBS i Cezar zostaną otwarte w nowej karcie + UWAGA !! + Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link + Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób: + + -> link do wyników + fotogaleria -> link do fotogalerii + + Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników! + """.replace('\n', '
') class GrandPrixB(SingletonModel): content = HTMLField('Tekst GPB', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) def __str__(self): return 'Grand Prix Białegostoku' diff --git a/db/main/migrations/0006_grandprixw_buttons_post_buttons.py b/db/main/migrations/0006_grandprixw_buttons_post_buttons.py new file mode 100644 index 0000000..6822872 --- /dev/null +++ b/db/main/migrations/0006_grandprixw_buttons_post_buttons.py @@ -0,0 +1,23 @@ +# Generated by Django 4.0.5 on 2022-09-28 20:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('main', '0005_post_published_post_show_title'), + ] + + operations = [ + migrations.AddField( + model_name='grandprixw', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + migrations.AddField( + model_name='post', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + ] diff --git a/db/main/models.py b/db/main/models.py index da78615..aec68b2 100644 --- a/db/main/models.py +++ b/db/main/models.py @@ -6,6 +6,30 @@ from admin_ordering.models import OrderableModel from core.utils import SingletonModel # Create your models here. +buttons_help_text = """Tutaj można wpisać dowolną ilość przycisków w następującym formacie: + + tekst1 -> link + teskt2 | link + ... + + Symbol -> oznacza, że link będzie otwarty w nowej karcie + Symbol | oznacza, że link będzie otwarty w tej samej karcie + Na przykład: + + pzbs -> https://pzbs.pl + fotogaleria | https://galeria.podlaskizbs.pl + cezar -> https://www.msc.com.pl/cezar + + PZBS i Cezar zostaną otwarte w nowej karcie + UWAGA !! + Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link + Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób: + + -> link do wyników + fotogaleria -> link do fotogalerii + + Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników! + """.replace('\n', '
') class Post(OrderableModel): @@ -13,6 +37,8 @@ class Post(OrderableModel): show_title = models.BooleanField('Pokaż tytuł', default=True) title = models.CharField('Tytuł', default='', blank=True, max_length=250) content = HTMLField('Treść', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) created_at = models.DateTimeField(auto_now_add=True) def __str__(self): @@ -30,6 +56,8 @@ class Post(OrderableModel): class GrandPrixW(SingletonModel): content = HTMLField('Tekst GPW', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) def __str__(self): return 'Grand Prix Województwa' diff --git a/db/mbkb/migrations/0002_mbkb_buttons.py b/db/mbkb/migrations/0002_mbkb_buttons.py new file mode 100644 index 0000000..67d6ad3 --- /dev/null +++ b/db/mbkb/migrations/0002_mbkb_buttons.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.5 on 2022-09-28 20:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('mbkb', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='mbkb', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + ] diff --git a/db/mbkb/models.py b/db/mbkb/models.py index 46d7a4d..ebe1488 100644 --- a/db/mbkb/models.py +++ b/db/mbkb/models.py @@ -4,12 +4,39 @@ from admin_ordering.models import OrderableModel # Create your models here. +buttons_help_text = """Tutaj można wpisać dowolną ilość przycisków w następującym formacie: + + tekst1 -> link + teskt2 | link + ... + + Symbol -> oznacza, że link będzie otwarty w nowej karcie + Symbol | oznacza, że link będzie otwarty w tej samej karcie + Na przykład: + + pzbs -> https://pzbs.pl + fotogaleria | https://galeria.podlaskizbs.pl + cezar -> https://www.msc.com.pl/cezar + + PZBS i Cezar zostaną otwarte w nowej karcie + UWAGA !! + Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link + Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób: + + -> link do wyników + fotogaleria -> link do fotogalerii + + Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników! + """.replace('\n', '
') + class MBKB(OrderableModel): published = models.BooleanField('Wpis opublikowany', default=True) show_title = models.BooleanField('Pokaż tytuł', default=True) title = models.CharField('Tytuł', default='', blank=True, max_length=250) content = HTMLField('Tekst', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) def __str__(self): return self.title or '(brak tytułu)' diff --git a/db/membership/migrations/0004_membership_buttons.py b/db/membership/migrations/0004_membership_buttons.py new file mode 100644 index 0000000..b58a664 --- /dev/null +++ b/db/membership/migrations/0004_membership_buttons.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.5 on 2022-09-28 20:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('membership', '0003_membership_published'), + ] + + operations = [ + migrations.AddField( + model_name='membership', + name='buttons', + field=models.TextField(blank=True, default='', help_text='Tutaj można wpisać dowolną ilość przycisków w następującym formacie:

tekst1 -> link
teskt2 | link
...

Symbol -> oznacza, że link będzie otwarty w nowej karcie
Symbol | oznacza, że link będzie otwarty w tej samej karcie
Na przykład:

pzbs -> https://pzbs.pl
fotogaleria | https://galeria.podlaskizbs.pl
cezar -> https://www.msc.com.pl/cezar

PZBS i Cezar zostaną otwarte w nowej karcie
UWAGA !!
Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link
Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób:

-> link do wyników
fotogaleria -> link do fotogalerii

Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników!
', verbose_name='Przyciski'), + ), + ] diff --git a/db/membership/models.py b/db/membership/models.py index 03108c4..259cdab 100644 --- a/db/membership/models.py +++ b/db/membership/models.py @@ -3,11 +3,38 @@ from tinymce.models import HTMLField # Create your models here. +buttons_help_text = """Tutaj można wpisać dowolną ilość przycisków w następującym formacie: + + tekst1 -> link + teskt2 | link + ... + + Symbol -> oznacza, że link będzie otwarty w nowej karcie + Symbol | oznacza, że link będzie otwarty w tej samej karcie + Na przykład: + + pzbs -> https://pzbs.pl + fotogaleria | https://galeria.podlaskizbs.pl + cezar -> https://www.msc.com.pl/cezar + + PZBS i Cezar zostaną otwarte w nowej karcie + UWAGA !! + Klikając na zdjęcie zawsze zostaniemy przekierowani na pierwszy podany link + Gdy nie podamy tekstu przyciku, nie pokaże on się, można to wykorzystać w taki sposób: + + -> link do wyników + fotogaleria -> link do fotogalerii + + Wtedy pokaże się tylko przycisk fotogalerii, a zdjęcie przekieruje nas do wyników! + """.replace('\n', '
') + class Membership(models.Model): published = models.BooleanField('Wpis opublikowany', default=True) year = models.IntegerField('Rok', primary_key=True) content = HTMLField('Treść', default='', blank=True) + buttons = models.TextField( + 'Przyciski', default='', blank=True, help_text=buttons_help_text) def __str__(self): return f'Składki członkowskie {self.year}' diff --git a/static/css/dist/styles.css b/static/css/dist/styles.css index 3377809..913a5c4 100644 --- a/static/css/dist/styles.css +++ b/static/css/dist/styles.css @@ -1305,6 +1305,22 @@ select { margin-bottom: auto; } +.mt-8 { + margin-top: 2rem; +} + +.mt-12 { + margin-top: 3rem; +} + +.mt-16 { + margin-top: 4rem; +} + +.mt-20 { + margin-top: 5rem; +} + .block { display: block; } diff --git a/theme/static/css/dist/styles.css b/theme/static/css/dist/styles.css index 3377809..913a5c4 100644 --- a/theme/static/css/dist/styles.css +++ b/theme/static/css/dist/styles.css @@ -1305,6 +1305,22 @@ select { margin-bottom: auto; } +.mt-8 { + margin-top: 2rem; +} + +.mt-12 { + margin-top: 3rem; +} + +.mt-16 { + margin-top: 4rem; +} + +.mt-20 { + margin-top: 5rem; +} + .block { display: block; }