parent
a352ea331a
commit
46943dc359
|
|
@ -34,6 +34,7 @@ apps = [
|
|||
'membership',
|
||||
'youth',
|
||||
'atu',
|
||||
'mbkb',
|
||||
'core'
|
||||
]
|
||||
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@ from db.tournaments.models import *
|
|||
from db.membership.models import *
|
||||
from db.youth.models import *
|
||||
from db.atu.models import *
|
||||
from db.mbkb.models import *
|
||||
|
||||
|
||||
def load_config(request):
|
||||
|
|
@ -24,14 +25,15 @@ def load_config(request):
|
|||
'regulaminy': Regulation.objects.all(),
|
||||
'rodos': RODO.objects.all(),
|
||||
'leagues': {
|
||||
'Wyniki I Ligi': FirstLeague.objects.all(),
|
||||
'Wyniki II Ligi': SecondLeague.objects.all(),
|
||||
'Wyniki I Ligi': FirstLeague.objects.all().reverse(),
|
||||
'Wyniki II Ligi': SecondLeague.objects.all().reverse(),
|
||||
'Wyniki III Ligi': ThirdLeague.objects.all()
|
||||
},
|
||||
'calendars': Calendar.objects.all(),
|
||||
'gpb': GrandPrixB.load(),
|
||||
'tournaments': Tournament.objects.filter(published=True),
|
||||
'memberships': Membership.objects.filter(published=True),
|
||||
'youth': Youth.load(),
|
||||
'youth': Youth.objects.all(),
|
||||
'mbkb': MBKB.objects.all(),
|
||||
'atu': Atu.load()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,21 @@
|
|||
{% extends 'base.html' %}
|
||||
<!---->
|
||||
{% block title %}Miejski Białostocki Klub Brydżowy | pdlzbs{% endblock %}
|
||||
<!---->
|
||||
{% load static tailwind_tags tablepipe %} {% block content %}
|
||||
<h1 class="text-center mb-4">Miejski Białostocki Klub Brydżowy</h1>
|
||||
|
||||
<div class="flex flex-col items-center gap-4">
|
||||
{% for article in mbkb %}
|
||||
<article class="w-full pb-4">
|
||||
{% if article.show_title %}
|
||||
<h2 class="font-normal">{{ article.title }}</h2>
|
||||
{% endif %} {{ article.content | tablescroll | safe }}
|
||||
</article>
|
||||
{% if not forloop.last %}
|
||||
<hr class="w-36 border-b border-stone-200" />
|
||||
{% endif %} {% empty %}
|
||||
<span class="py-4 text-xl">Brak artykułów</span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
@ -3,5 +3,19 @@
|
|||
{% block title %}Młodzież | pdlzbs{% endblock %}
|
||||
<!---->
|
||||
{% load static tailwind_tags tablepipe %} {% block content %}
|
||||
<article class="w-full">{{ youth.content | safe }}</article>
|
||||
<h1 class="text-center mb-4">Młodzież</h1>
|
||||
|
||||
<div class="flex flex-col items-center gap-4">
|
||||
{% for article in youth %}
|
||||
<article class="w-full pb-4">
|
||||
{% if article.show_title %}
|
||||
<h2 class="font-normal">{{ article.title }}</h2>
|
||||
{% endif %} {{ article.content | tablescroll | safe }}
|
||||
</article>
|
||||
{% if not forloop.last %}
|
||||
<hr class="w-36 border-b border-stone-200" />
|
||||
{% endif %} {% empty %}
|
||||
<span class="py-4 text-xl">Brak artykułów</span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -19,4 +19,5 @@ urlpatterns = [
|
|||
path('skladki', MembershipView.as_view(), name='membership'),
|
||||
path('mlodziez', YouthView.as_view(), name='youth'),
|
||||
path('atu', AtuView.as_view(), name='atu'),
|
||||
path('mbkb', MBKBView.as_view(), name='mbkb'),
|
||||
]
|
||||
|
|
|
|||
|
|
@ -59,3 +59,7 @@ class YouthView(TemplateView):
|
|||
|
||||
class AtuView(TemplateView):
|
||||
template_name = 'atu.html'
|
||||
|
||||
|
||||
class MBKBView(TemplateView):
|
||||
template_name = "mbkb.html"
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
# Generated by Django 4.0.5 on 2022-08-15 02:08
|
||||
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('league', '0003_firstleague_secondleague_rename_league_thirdleague_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='firstleague',
|
||||
options={'ordering': ['-year'], 'verbose_name': 'Wyniki I ligi', 'verbose_name_plural': 'Wyniki I ligi'},
|
||||
),
|
||||
migrations.AlterModelOptions(
|
||||
name='secondleague',
|
||||
options={'ordering': ['-year'], 'verbose_name': 'Wyniki II ligi', 'verbose_name_plural': 'Wyniki II ligi'},
|
||||
),
|
||||
migrations.AlterModelOptions(
|
||||
name='thirdleague',
|
||||
options={'ordering': ['-year'], 'verbose_name': 'Wyniki III ligi', 'verbose_name_plural': 'Wyniki III ligi'},
|
||||
),
|
||||
]
|
||||
|
|
@ -13,7 +13,6 @@ class League(models.Model):
|
|||
|
||||
class Meta:
|
||||
abstract = True
|
||||
ordering = ['-year']
|
||||
|
||||
|
||||
class FirstLeague(League):
|
||||
|
|
@ -22,6 +21,7 @@ class FirstLeague(League):
|
|||
class Meta:
|
||||
verbose_name = 'Wyniki I ligi'
|
||||
verbose_name_plural = 'Wyniki I ligi'
|
||||
ordering = ['-year']
|
||||
|
||||
|
||||
class SecondLeague(League):
|
||||
|
|
@ -30,6 +30,7 @@ class SecondLeague(League):
|
|||
class Meta:
|
||||
verbose_name = 'Wyniki II ligi'
|
||||
verbose_name_plural = 'Wyniki II ligi'
|
||||
ordering = ['-year']
|
||||
|
||||
|
||||
class ThirdLeague(League):
|
||||
|
|
@ -38,3 +39,4 @@ class ThirdLeague(League):
|
|||
class Meta:
|
||||
verbose_name = 'Wyniki III ligi'
|
||||
verbose_name_plural = 'Wyniki III ligi'
|
||||
ordering = ['-year']
|
||||
|
|
|
|||
|
|
@ -0,0 +1,13 @@
|
|||
from django.contrib import admin
|
||||
from admin_ordering.admin import OrderableAdmin
|
||||
from .models import *
|
||||
|
||||
# Register your models here.
|
||||
|
||||
|
||||
@admin.register(MBKB)
|
||||
class MBKBModelAdmin(OrderableAdmin, admin.ModelAdmin):
|
||||
list_display = ['__str__', 'ordering']
|
||||
list_editable = ['ordering']
|
||||
ordering_field_hide_input = True
|
||||
exclude = ['ordering']
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class MbkbConfig(AppConfig):
|
||||
default_auto_field = 'django.db.models.BigAutoField'
|
||||
name = 'db.mbkb'
|
||||
verbose_name = 'Miejski Białostocki Klub Brydżowy'
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
# Generated by Django 4.0.5 on 2022-08-15 01:54
|
||||
|
||||
from django.db import migrations, models
|
||||
import tinymce.models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='MBKB',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('ordering', models.IntegerField(default=0, verbose_name='Kolejność')),
|
||||
('published', models.BooleanField(default=True, verbose_name='Wpis opublikowany')),
|
||||
('show_title', models.BooleanField(default=True, verbose_name='Pokaż tytuł')),
|
||||
('title', models.CharField(blank=True, default='', max_length=250, verbose_name='Tytuł')),
|
||||
('content', tinymce.models.HTMLField(blank=True, default='', verbose_name='Tekst')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Artykuł MBKB',
|
||||
'verbose_name_plural': 'Artykuły MBKB',
|
||||
'ordering': ['ordering'],
|
||||
'abstract': False,
|
||||
},
|
||||
),
|
||||
]
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
from django.db import models
|
||||
from tinymce.models import HTMLField
|
||||
from admin_ordering.models import OrderableModel
|
||||
|
||||
# Create your models here.
|
||||
|
||||
|
||||
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)
|
||||
|
||||
def __str__(self):
|
||||
return self.title or '(brak tytułu)'
|
||||
|
||||
class Meta(OrderableModel.Meta):
|
||||
verbose_name = 'Artykuł MBKB'
|
||||
verbose_name_plural = 'Artykuły MBKB'
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
from django.contrib import admin
|
||||
from admin_ordering.admin import OrderableAdmin
|
||||
from .models import *
|
||||
|
||||
# Register your models here.
|
||||
|
||||
|
||||
@admin.register(Youth)
|
||||
class YouthModelAdmin(OrderableAdmin, admin.ModelAdmin):
|
||||
list_display = ['__str__', 'ordering']
|
||||
list_editable = ['ordering']
|
||||
ordering_field_hide_input = True
|
||||
exclude = ['ordering']
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
# Generated by Django 4.0.5 on 2022-08-15 01:54
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('youth', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='youth',
|
||||
options={'ordering': ['ordering'], 'verbose_name': 'Młodzież', 'verbose_name_plural': 'Młodzież'},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='youth',
|
||||
name='ordering',
|
||||
field=models.IntegerField(default=0, verbose_name='Kolejność'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='youth',
|
||||
name='published',
|
||||
field=models.BooleanField(default=True, verbose_name='Wpis opublikowany'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='youth',
|
||||
name='show_title',
|
||||
field=models.BooleanField(default=True, verbose_name='Pokaż tytuł'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='youth',
|
||||
name='title',
|
||||
field=models.CharField(blank=True, default='', max_length=250, verbose_name='Tytuł'),
|
||||
),
|
||||
]
|
||||
|
|
@ -1,16 +1,19 @@
|
|||
from django.db import models
|
||||
from tinymce.models import HTMLField
|
||||
from core.utils import SingletonModel
|
||||
from admin_ordering.models import OrderableModel
|
||||
|
||||
# Create your models here.
|
||||
|
||||
|
||||
class Youth(SingletonModel):
|
||||
class Youth(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)
|
||||
|
||||
def __str__(self):
|
||||
return 'Młodzież'
|
||||
return self.title or '(brak tytułu)'
|
||||
|
||||
class Meta:
|
||||
class Meta(OrderableModel.Meta):
|
||||
verbose_name = 'Młodzież'
|
||||
verbose_name_plural = 'Młodzież'
|
||||
|
|
|
|||
|
|
@ -52,6 +52,7 @@ INSTALLED_APPS = [
|
|||
'db.membership',
|
||||
'db.youth',
|
||||
'db.atu',
|
||||
'db.mbkb',
|
||||
'theme',
|
||||
'core'
|
||||
] + [
|
||||
|
|
|
|||
|
|
@ -1300,10 +1300,6 @@ select {
|
|||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.mt-8 {
|
||||
margin-top: 2rem;
|
||||
}
|
||||
|
||||
.mb-auto {
|
||||
margin-bottom: auto;
|
||||
}
|
||||
|
|
@ -1336,14 +1332,6 @@ select {
|
|||
display: none;
|
||||
}
|
||||
|
||||
.h-\[40px\] {
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
.h-full {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.h-screen {
|
||||
height: 100vh;
|
||||
}
|
||||
|
|
@ -1364,10 +1352,6 @@ select {
|
|||
width: 100%;
|
||||
}
|
||||
|
||||
.w-\[48px\] {
|
||||
width: 48px;
|
||||
}
|
||||
|
||||
.w-36 {
|
||||
width: 9rem;
|
||||
}
|
||||
|
|
@ -1388,10 +1372,6 @@ select {
|
|||
max-width: 768px;
|
||||
}
|
||||
|
||||
.shrink-0 {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.basis-1\/2 {
|
||||
flex-basis: 50%;
|
||||
}
|
||||
|
|
@ -1593,10 +1573,6 @@ select {
|
|||
font-size: 15px;
|
||||
}
|
||||
|
||||
.text-\[13px\] {
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.text-\[2\.25rem\] {
|
||||
font-size: 2.25rem;
|
||||
}
|
||||
|
|
@ -1614,14 +1590,14 @@ select {
|
|||
font-weight: 300;
|
||||
}
|
||||
|
||||
.font-bold {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.font-semibold {
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.font-normal {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.lowercase {
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
|
@ -1642,11 +1618,6 @@ select {
|
|||
letter-spacing: 0em;
|
||||
}
|
||||
|
||||
.text-white {
|
||||
--tw-text-opacity: 1;
|
||||
color: rgb(255 255 255 / var(--tw-text-opacity));
|
||||
}
|
||||
|
||||
.antialiased {
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
|
|
|
|||
Loading…
Reference in New Issue