diff options
| author | Bobby <[email protected]> | 2024-12-15 09:50:35 -0500 |
|---|---|---|
| committer | Bobby <[email protected]> | 2024-12-15 09:50:35 -0500 |
| commit | 06f23e7745c5875039720468db0a2786d2aaf848 (patch) | |
| tree | cc49ba62e71c35b3294edc7b753b9627b2d2ac9c /apps | |
| parent | 2efc3e9fbb38e447c5e336dfea679644ea16af12 (diff) | |
| download | thatcomputerscientist-06f23e7745c5875039720468db0a2786d2aaf848.tar.xz thatcomputerscientist-06f23e7745c5875039720468db0a2786d2aaf848.zip | |
moved announcements to administration. custom admin center. removed userpages app
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/administration/__init__.py | 0 | ||||
| -rw-r--r-- | apps/administration/admin.py | 6 | ||||
| -rw-r--r-- | apps/administration/apps.py | 6 | ||||
| -rw-r--r-- | apps/administration/migrations/0001_initial.py | 29 | ||||
| -rw-r--r-- | apps/administration/migrations/0002_rename_date_announcement_created_at.py | 18 | ||||
| -rw-r--r-- | apps/administration/migrations/0003_rename_body_announcement_content_and_more.py | 22 | ||||
| -rw-r--r-- | apps/administration/migrations/0004_alter_announcement_created_at.py | 18 | ||||
| -rw-r--r-- | apps/administration/migrations/0005_announcement_content_ja.py | 17 | ||||
| -rw-r--r-- | apps/administration/migrations/__init__.py | 0 | ||||
| -rw-r--r-- | apps/administration/models.py | 28 | ||||
| -rw-r--r-- | apps/administration/tests.py | 3 | ||||
| -rw-r--r-- | apps/administration/urls.py | 6 | ||||
| -rw-r--r-- | apps/administration/views.py | 3 | ||||
| -rw-r--r-- | apps/core/views.py | 9 |
14 files changed, 163 insertions, 2 deletions
diff --git a/apps/administration/__init__.py b/apps/administration/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/apps/administration/__init__.py diff --git a/apps/administration/admin.py b/apps/administration/admin.py new file mode 100644 index 00000000..2e3dcf91 --- /dev/null +++ b/apps/administration/admin.py @@ -0,0 +1,6 @@ +from django.contrib import admin + +# Register your models here. +from apps.administration.models import Announcement + +admin.site.register(Announcement) diff --git a/apps/administration/apps.py b/apps/administration/apps.py new file mode 100644 index 00000000..fe525a51 --- /dev/null +++ b/apps/administration/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class AdministrationConfig(AppConfig): + default_auto_field = "django.db.models.BigAutoField" + name = "apps.administration" diff --git a/apps/administration/migrations/0001_initial.py b/apps/administration/migrations/0001_initial.py new file mode 100644 index 00000000..7d78fdaa --- /dev/null +++ b/apps/administration/migrations/0001_initial.py @@ -0,0 +1,29 @@ +# Generated by Django 4.0.6 on 2022-10-02 15:22 + +import django.db.models.deletion +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Announcement', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(max_length=100)), + ('body', models.TextField()), + ('date', models.DateTimeField(auto_now_add=True)), + ('is_public', models.BooleanField(default=False)), + ('is_new', models.BooleanField(default=True)), + ('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/apps/administration/migrations/0002_rename_date_announcement_created_at.py b/apps/administration/migrations/0002_rename_date_announcement_created_at.py new file mode 100644 index 00000000..69343a2b --- /dev/null +++ b/apps/administration/migrations/0002_rename_date_announcement_created_at.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.6 on 2022-10-02 15:23 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ("administration", "0001_initial"), + ] + + operations = [ + migrations.RenameField( + model_name="announcement", + old_name="date", + new_name="created_at", + ), + ] diff --git a/apps/administration/migrations/0003_rename_body_announcement_content_and_more.py b/apps/administration/migrations/0003_rename_body_announcement_content_and_more.py new file mode 100644 index 00000000..2e1ecf09 --- /dev/null +++ b/apps/administration/migrations/0003_rename_body_announcement_content_and_more.py @@ -0,0 +1,22 @@ +# Generated by Django 4.0.6 on 2022-10-02 16:06 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ("administration", "0002_rename_date_announcement_created_at"), + ] + + operations = [ + migrations.RenameField( + model_name="announcement", + old_name="body", + new_name="content", + ), + migrations.RemoveField( + model_name="announcement", + name="title", + ), + ] diff --git a/apps/administration/migrations/0004_alter_announcement_created_at.py b/apps/administration/migrations/0004_alter_announcement_created_at.py new file mode 100644 index 00000000..ee2d40a1 --- /dev/null +++ b/apps/administration/migrations/0004_alter_announcement_created_at.py @@ -0,0 +1,18 @@ +# Generated by Django 4.0.6 on 2022-11-12 18:37 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("administration", "0003_rename_body_announcement_content_and_more"), + ] + + operations = [ + migrations.AlterField( + model_name="announcement", + name="created_at", + field=models.DateTimeField(), + ), + ] diff --git a/apps/administration/migrations/0005_announcement_content_ja.py b/apps/administration/migrations/0005_announcement_content_ja.py new file mode 100644 index 00000000..8000c118 --- /dev/null +++ b/apps/administration/migrations/0005_announcement_content_ja.py @@ -0,0 +1,17 @@ +# Generated by Django 5.0.7 on 2024-12-15 09:10 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("administration", "0004_alter_announcement_created_at"), + ] + + operations = [ + migrations.AddField( + model_name="announcement", + name="content_ja", + field=models.TextField(blank=True), + ), + ] diff --git a/apps/administration/migrations/__init__.py b/apps/administration/migrations/__init__.py new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/apps/administration/migrations/__init__.py diff --git a/apps/administration/models.py b/apps/administration/models.py new file mode 100644 index 00000000..fdfd0238 --- /dev/null +++ b/apps/administration/models.py @@ -0,0 +1,28 @@ +from django.conf import settings +from django.db import models +from django.utils import timezone + +# Create your models here. + + +class Announcement(models.Model): + class Meta: + db_table = "announcements_announcement" + + content = models.TextField() + content_ja = models.TextField(blank=True) + created_at = models.DateTimeField() + author = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + ) + is_public = models.BooleanField(default=False) + is_new = models.BooleanField(default=True) + + def save(self, *args, **kwargs): + if not self.id: + self.created_at = timezone.now() + return super(Announcement, self).save(*args, **kwargs) + + def __str__(self): + return self.content[:50] + "..." diff --git a/apps/administration/tests.py b/apps/administration/tests.py new file mode 100644 index 00000000..7ce503c2 --- /dev/null +++ b/apps/administration/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/apps/administration/urls.py b/apps/administration/urls.py new file mode 100644 index 00000000..d4781c66 --- /dev/null +++ b/apps/administration/urls.py @@ -0,0 +1,6 @@ +from django.urls import path + +from . import views + +app_name = "administration" +urlpatterns = [] diff --git a/apps/administration/views.py b/apps/administration/views.py new file mode 100644 index 00000000..91ea44a2 --- /dev/null +++ b/apps/administration/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/apps/core/views.py b/apps/core/views.py index 90554d10..5393edb4 100644 --- a/apps/core/views.py +++ b/apps/core/views.py @@ -1,5 +1,6 @@ from django.shortcuts import render from thatcomputerscientist.utils import i18npatterns +from apps.administration.models import Announcement def home(request): @@ -8,5 +9,9 @@ def home(request): } LANGUAGE_CODE = i18npatterns(request.LANGUAGE_CODE) request.meta.update(META) - - return render(request, f"{LANGUAGE_CODE}/core/home.html") + announcements = Announcement.objects.filter(is_public=True).order_by("-created_at") + announcements = announcements if len(announcements) > 0 else None + context = { + "announcements": announcements, + } + return render(request, f"{LANGUAGE_CODE}/core/home.html", context) |
