This commit is contained in:
Egor Pavlovich Gorbunov 2026-01-26 03:23:41 +03:00
parent efb56cf09b
commit 28622cec90
312 changed files with 25866 additions and 14083 deletions

View file

@ -1,19 +1,24 @@
.PHONY: help install run restart test test-xml test-html uninstall backup \
generate-env export-env make-messages compile-messages \
format check typecheck precommit
format check typecheck precommit clear
# Detect OS and set script paths
ifeq ($(OS),Windows_NT)
SCRIPT_DIR := scripts/Windows
SCRIPT_EXT := .ps1
RUN_SCRIPT = pwsh -ExecutionPolicy Bypass -File ./$(SCRIPT_DIR)/$(1)$(SCRIPT_EXT)
CLEAR_CMD := cls
else
SCRIPT_DIR := scripts/Unix
SCRIPT_EXT := .sh
RUN_SCRIPT = bash ./$(SCRIPT_DIR)/$(1)$(SCRIPT_EXT)
CLEAR_CMD := clear
endif
help:
clear:
@$(CLEAR_CMD)
help: clear
@echo "Schon Project Management"
@echo ""
@echo "Usage: make [target]"
@ -39,33 +44,33 @@ help:
@echo "Detected OS: $(if $(filter Windows_NT,$(OS)),Windows,Unix)"
@echo "Scripts directory: $(SCRIPT_DIR)"
install:
install: clear
@$(call RUN_SCRIPT,install)
run:
run: clear
@$(call RUN_SCRIPT,run)
restart:
restart: clear
@$(call RUN_SCRIPT,restart)
test:
test: clear
@$(call RUN_SCRIPT,test)
test-xml:
test-xml: clear
ifeq ($(OS),Windows_NT)
@pwsh -ExecutionPolicy Bypass -File ./$(SCRIPT_DIR)/test$(SCRIPT_EXT) -r xml
else
@bash ./$(SCRIPT_DIR)/test$(SCRIPT_EXT) --report xml
endif
test-html:
test-html: clear
ifeq ($(OS),Windows_NT)
@pwsh -ExecutionPolicy Bypass -File ./$(SCRIPT_DIR)/test$(SCRIPT_EXT) -r html
else
@bash ./$(SCRIPT_DIR)/test$(SCRIPT_EXT) --report html
endif
uninstall:
uninstall: clear
@echo "This will remove all Docker containers, volumes, and generated files."
ifeq ($(OS),Windows_NT)
@pwsh -Command "$$confirm = Read-Host 'Continue? [y/N]'; if ($$confirm -eq 'y') { pwsh -ExecutionPolicy Bypass -File ./$(SCRIPT_DIR)/uninstall$(SCRIPT_EXT) } else { Write-Host 'Uninstall cancelled.' }"
@ -73,28 +78,31 @@ else
@read -p "Continue? [y/N] " confirm && [ "$$confirm" = "y" ] && bash ./$(SCRIPT_DIR)/uninstall$(SCRIPT_EXT) || echo "Uninstall cancelled."
endif
backup:
backup: clear
@$(call RUN_SCRIPT,backup)
generate-env:
generate-env: clear
@$(call RUN_SCRIPT,generate-environment-file)
export-env:
export-env: clear
@$(call RUN_SCRIPT,export-environment-file)
make-messages:
make-messages: clear
@$(call RUN_SCRIPT,make-messages)
compile-messages:
compile-messages: clear
@$(call RUN_SCRIPT,compile-messages)
format:
format: clear
@ruff format
check:
check: clear
@ruff check
typecheck:
typecheck: clear
@ty check
precommit: format check typecheck
precommit: clear
@ruff format
@ruff check
@ty check

View file

@ -1,26 +1,21 @@
from django.contrib.admin import register
from django.db.models import TextField
from django_summernote.admin import (
SummernoteModelAdminMixin,
)
from unfold.admin import ModelAdmin
from unfold_markdown import MarkdownWidget
from unfold.contrib.forms.widgets import WysiwygWidget
from engine.blog.models import Post, PostTag
from engine.core.admin import ActivationActionsMixin, FieldsetsMixin
@register(Post)
class PostAdmin(
SummernoteModelAdminMixin, FieldsetsMixin, ActivationActionsMixin, ModelAdmin
):
class PostAdmin(FieldsetsMixin, ActivationActionsMixin, ModelAdmin):
list_display = ("title", "author", "slug", "created", "modified")
list_filter = ("author", "tags", "created", "modified")
search_fields = ("title", "content", "slug")
filter_horizontal = ("tags",)
date_hierarchy = "created"
autocomplete_fields = ("tags",)
formfield_overrides = {TextField: {"widget": MarkdownWidget}}
formfield_overrides = {TextField: {"widget": WysiwygWidget}}
readonly_fields = (
"uuid",
"slug",
@ -28,7 +23,6 @@ class PostAdmin(
"created",
)
summernote_fields = ("content",)
general_fields = [
"title",
"content",

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,76 +25,84 @@ msgstr "سرد جميع المشاركات (للقراءة فقط)"
msgid "retrieve a single post (read-only)"
msgstr "استرداد منشور واحد (للقراءة فقط)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"يمثل نموذج منشور المدونة. تحدد فئة المشاركة بنية وسلوك مشاركة المدونة. "
"وتتضمن سمات للمؤلف والعنوان والمحتوى ومرفق الملف الاختياري والسبيكة "
"والعلامات المرتبطة بها. يفرض الصنف قيودًا مثل طلب إما محتوى أو مرفق ملف ولكن "
"ليس كلاهما في نفس الوقت. كما أنها تدعم إنشاء سبيكة تلقائية بناءً على العنوان."
"والعلامات المرتبطة بها. يفرض الصنف قيودًا مثل طلب إما محتوى أو مرفق ملف ولكن"
" ليس كلاهما في نفس الوقت. كما أنها تدعم إنشاء سبيكة تلقائية بناءً على "
"العنوان."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "عنوان المنشور"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "العنوان"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "المحتوى"
#: engine/blog/models.py:45
msgid "post content"
msgstr "نشر المحتوى"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "هي صفحة ثابتة"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"هل هذا منشور لصفحة ذات عنوان URL ثابت (على سبيل المثال '/مساعدة/التسليم'؟)"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "المنشور"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "المنشورات"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"ملفات تخفيض السعر غير مدعومة Yer - استخدم محتوى تخفيض السعر بدلاً من ذلك!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "يجب توفير ملف ترميز أو محتوى ترميز مخفض - متنافيان"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr "يجب توفير ملف تخفيض أو محتوى تخفيض - متبادل الاستبعاد"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "معرّف العلامة الداخلي لعلامة المنشور"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "اسم العلامة"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "اسم سهل الاستخدام لعلامة المنشور"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "اسم عرض العلامة"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "علامة المشاركة"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "علامات المشاركة"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,80 +25,87 @@ msgstr "Seznam všech příspěvků (pouze pro čtení)"
msgid "retrieve a single post (read-only)"
msgstr "Získání jednoho příspěvku (pouze pro čtení)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Představuje model příspěvku na blogu. Třída Post definuje strukturu a "
"chování příspěvku na blogu. Obsahuje atributy pro autora, název, obsah, "
"volitelnou přílohu, slug a přidružené značky. Třída vynucuje omezení, jako "
"je požadavek na obsah nebo přílohu souboru, ale ne obojí současně. Podporuje "
"také automatické generování slugu na základě názvu."
"je požadavek na obsah nebo přílohu souboru, ale ne obojí současně. Podporuje"
" také automatické generování slugu na základě názvu."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Název příspěvku"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Název"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "obsah"
#: engine/blog/models.py:45
msgid "post content"
msgstr "obsah příspěvku"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "je statická stránka"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"je to příspěvek pro stránku se statickou adresou URL (např. `/help/"
"delivery`)?"
"je to příspěvek pro stránku se statickou adresou URL (např. "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Příspěvek"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Příspěvky"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Soubory Markdown nejsou podporovány - místo toho použijte obsah Markdown!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"musí být poskytnut soubor markdown nebo obsah markdown - vzájemně se "
"vylučují."
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "interní identifikátor tagu pro tag příspěvku"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Název štítku"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Uživatelsky přívětivý název pro značku příspěvku"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Zobrazení názvu štítku"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Označení příspěvku"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Štítky příspěvků"
@ -111,8 +118,8 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"Zapouzdřuje operace pro správu a načítání entit Post v sadě zobrazení modelu "
"pouze pro čtení. Tato třída je přizpůsobena pro práci s aktivními objekty "
"Zapouzdřuje operace pro správu a načítání entit Post v sadě zobrazení modelu"
" pouze pro čtení. Tato třída je přizpůsobena pro práci s aktivními objekty "
"Post a umožňuje filtrování na základě definovaných filtrů. Integruje se s "
"backendovým systémem filtrování Djanga a zajišťuje soulad operací s "
"definovanými oprávněními. Sada zobrazení obsahuje také dodatečnou "

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,78 +25,85 @@ msgstr "Vis alle indlæg (skrivebeskyttet)"
msgid "retrieve a single post (read-only)"
msgstr "Hent et enkelt indlæg (skrivebeskyttet)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Repræsenterer en blogindlægsmodel. Post-klassen definerer strukturen og "
"adfærden i et blogindlæg. Den indeholder attributter for forfatter, titel, "
"indhold, valgfri vedhæftet fil, slug og tilknyttede tags. Klassen håndhæver "
"begrænsninger som f.eks. at kræve enten indhold eller en vedhæftet fil, men "
"ikke begge dele på samme tid. Den understøtter også automatisk generering af "
"slugs baseret på titlen."
"ikke begge dele på samme tid. Den understøtter også automatisk generering af"
" slugs baseret på titlen."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Indlæggets titel"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titel"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "indhold"
#: engine/blog/models.py:45
msgid "post content"
msgstr "indhold"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "er en statisk side"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Er dette et indlæg til en side med statisk URL (f.eks. `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Indlæg"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Indlæg"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown-filer understøttes ikke - brug markdown-indhold i stedet!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "filoverførsler understøttes endnu ikke brug i stedet indhold"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"en markdown-fil eller markdown-indhold skal leveres - gensidigt udelukkende"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "intern tag-identifikator for indlægs-tagget"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tag-navn"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Brugervenligt navn til posttagget"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Navn på tag-visning"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Tag til indlæg"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tags til indlæg"
@ -113,5 +120,6 @@ msgstr ""
"skrivebeskyttet modelvisningssæt. Denne klasse er skræddersyet til at "
"håndtere Post-objekter, der er aktive, og tillader filtrering baseret på "
"definerede filtre. Den integreres med Djangos backend-filtreringssystem og "
"sikrer, at handlingerne er i overensstemmelse med de definerede tilladelser. "
"Visningssættet indeholder også en ekstra konfiguration af tilladelsen 'hent'."
"sikrer, at handlingerne er i overensstemmelse med de definerede tilladelser."
" Visningssættet indeholder også en ekstra konfiguration af tilladelsen "
"'hent'."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Alle Beiträge auflisten (schreibgeschützt)"
msgid "retrieve a single post (read-only)"
msgstr "Einen einzelnen Beitrag abrufen (schreibgeschützt)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Stellt ein Blogpost-Modell dar. Die Klasse Post definiert die Struktur und "
"das Verhalten eines Blogeintrags. Sie enthält Attribute für Autor, Titel, "
@ -42,66 +42,73 @@ msgstr ""
"unterstützt auch die automatische Slug-Generierung auf der Grundlage des "
"Titels."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Titel des Beitrags"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titel"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "Inhalt"
#: engine/blog/models.py:45
msgid "post content"
msgstr "Beitragsinhalte"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "ist eine statische Seite"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Ist dies ein Beitrag für eine Seite mit statischer URL (z. B. `/help/"
"delivery`)?"
"Ist dies ein Beitrag für eine Seite mit statischer URL (z. B. "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Beitrag"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Beiträge"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Markdown-Dateien werden nicht unterstützt - verwenden Sie stattdessen "
"Markdown-Inhalte!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"eine Markdown-Datei oder ein Markdown-Inhalt muss bereitgestellt werden - "
"beide schließen sich gegenseitig aus"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "interner Tag-Bezeichner für den Post-Tag"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tag name"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Benutzerfreundlicher Name für das Post-Tag"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Tag-Anzeigename"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Tag eintragen"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tags eintragen"
@ -119,5 +126,5 @@ msgstr ""
"aktiver Post-Objekte zugeschnitten und ermöglicht die Filterung auf der "
"Grundlage definierter Filter. Sie integriert sich in das Backend-"
"Filtersystem von Django und stellt sicher, dass die Operationen mit den "
"definierten Berechtigungen übereinstimmen. Das View Set beinhaltet auch eine "
"zusätzliche 'retrieve' Berechtigungskonfiguration."
"definierten Berechtigungen übereinstimmen. Das View Set beinhaltet auch eine"
" zusätzliche 'retrieve' Berechtigungskonfiguration."

Binary file not shown.

View file

@ -1,13 +1,9 @@
# SCHON GETTEXT TRANSLATIONS
# Copyright (C) 2025 EGOR <FUREUNOIR> GORBUNOV
# This file is distributed under the same license as the SCHON package.
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -29,77 +25,84 @@ msgstr "List all posts (read-only)"
msgid "retrieve a single post (read-only)"
msgstr "Retrieve a single post (read-only)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Post's title"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Title"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "content"
#: engine/blog/models.py:45
msgid "post content"
msgstr "post content"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "is static page"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "is this a post for a page with static URL (e.g. `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Post"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Posts"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown files are not supported yer - use markdown content instead!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "file uploads are not supported yet - use content instead"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "internal tag identifier for the post tag"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tag name"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "User-friendly name for the post tag"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Tag display name"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Post tag"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Post tags"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,77 +25,84 @@ msgstr "List all posts (read-only)"
msgid "retrieve a single post (read-only)"
msgstr "Retrieve a single post (read-only)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Post's title"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Title"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "content"
#: engine/blog/models.py:45
msgid "post content"
msgstr "post content"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "is static page"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "is this a post for a page with static URL (e.g. `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Post"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Posts"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown files are not supported yer - use markdown content instead!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "file uploads are not supported yet - use content instead"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "internal tag identifier for the post tag"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tag name"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "User-friendly name for the post tag"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Tag display name"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Post tag"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Post tags"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Listar todos los mensajes (sólo lectura)"
msgid "retrieve a single post (read-only)"
msgstr "Recuperar una única entrada (sólo lectura)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Representa un modelo de entrada de blog. La clase Post define la estructura "
"y el comportamiento de una entrada de blog. Incluye atributos para autor, "
@ -41,65 +41,72 @@ msgstr ""
"adjunto, pero no ambos simultáneamente. También admite la generación "
"automática de slug a partir del título."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Título del mensaje"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Título"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "contenido"
#: engine/blog/models.py:45
msgid "post content"
msgstr "publicar contenido"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "es una página estática"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"¿se trata de una entrada para una página con URL estática (por ejemplo, `/"
"help/delivery`)?"
"¿se trata de una entrada para una página con URL estática (por ejemplo, "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Publicar en"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Puestos"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"No se admiten archivos Markdown - ¡utiliza contenido Markdown en su lugar!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"se debe proporcionar un archivo markdown o contenido markdown - mutuamente "
"excluyentes"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "identificador interno de la etiqueta post"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nombre de la etiqueta"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Nombre fácil de usar para la etiqueta de la entrada"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Nombre de la etiqueta"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Etiqueta postal"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Etiquetas"
@ -115,7 +122,7 @@ msgstr ""
"Encapsula operaciones para gestionar y recuperar entidades Post en un "
"conjunto de vistas de modelo de sólo lectura. Esta clase está adaptada para "
"manejar objetos Post que están activos y permite el filtrado basado en "
"filtros definidos. Se integra con el sistema de filtrado backend de Django y "
"asegura que las operaciones se alinean con los permisos definidos. El "
"filtros definidos. Se integra con el sistema de filtrado backend de Django y"
" asegura que las operaciones se alinean con los permisos definidos. El "
"conjunto de vistas también incluye una configuración adicional de permisos "
"de \"recuperación\"."

Binary file not shown.

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 01:44+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -28,7 +28,7 @@ msgstr ""
msgid "retrieve a single post (read-only)"
msgstr ""
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
@ -38,60 +38,67 @@ msgid ""
"title."
msgstr ""
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr ""
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr ""
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr ""
#: engine/blog/models.py:45
msgid "post content"
msgstr ""
#: engine/blog/models.py:57
msgid "is static page"
msgstr ""
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr ""
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr ""
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr ""
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr ""
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr ""
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr ""
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr ""
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr ""

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Liste de tous les messages (en lecture seule)"
msgid "retrieve a single post (read-only)"
msgstr "Récupérer un seul message (en lecture seule)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Représente un modèle de billet de blog. La classe Post définit la structure "
"et le comportement d'un billet de blog. Elle comprend des attributs pour "
@ -42,66 +42,73 @@ msgstr ""
"simultanément. Elle prend également en charge la génération automatique "
"d'une balise en fonction du titre."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Titre du message"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titre"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "contenu"
#: engine/blog/models.py:45
msgid "post content"
msgstr "contenu de publication"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "est une page statique"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"s'agit-il d'un message pour une page dont l'URL est statique (par exemple `/"
"help/delivery`) ?"
"s'agit-il d'un message pour une page dont l'URL est statique (par exemple "
"`/help/delivery`) ?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Poste"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Postes"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Les fichiers Markdown ne sont pas pris en charge - utilisez plutôt du "
"contenu Markdown !"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"un fichier markdown ou un contenu markdown doit être fourni - ils s'excluent "
"mutuellement"
"un fichier markdown ou un contenu markdown doit être fourni - ils s'excluent"
" mutuellement"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "identifiant interne de la balise post"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nom du jour"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Nom convivial pour la balise post"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Nom d'affichage de l'étiquette"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Tag de poste"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tags de la poste"
@ -114,8 +121,8 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"Encapsule les opérations de gestion et d'extraction des entités Post dans un "
"ensemble de vues de modèle en lecture seule. Cette classe est conçue pour "
"Encapsule les opérations de gestion et d'extraction des entités Post dans un"
" ensemble de vues de modèle en lecture seule. Cette classe est conçue pour "
"gérer les objets Post qui sont actifs et permet un filtrage basé sur des "
"filtres définis. Elle s'intègre au système de filtrage du backend de Django "
"et garantit que les opérations s'alignent sur les permissions définies. Le "

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,74 +25,81 @@ msgstr "הצג את כל ההודעות (לקריאה בלבד)"
msgid "retrieve a single post (read-only)"
msgstr "איתור פוסט בודד (לקריאה בלבד)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"מייצג מודל של פוסט בבלוג. מחלקת Post מגדירה את המבנה וההתנהגות של פוסט "
"בבלוג. היא כוללת תכונות עבור מחבר, כותרת, תוכן, קובץ מצורף אופציונלי, slug "
"ותגיות נלוות. המחלקה אוכפת אילוצים כגון דרישה לתוכן או לקובץ מצורף, אך לא "
"לשניהם בו-זמנית. היא תומכת גם ביצירה אוטומטית של slug על סמך הכותרת."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "כותרת הפוסט"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "כותרת"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "תוכן"
#: engine/blog/models.py:45
msgid "post content"
msgstr "תוכן הפוסט"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "הוא דף סטטי"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "האם זו הודעה לדף עם כתובת URL סטטית (למשל `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "פוסט"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "פוסטים"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "קובצי Markdown אינם נתמכים עדיין - השתמש בתוכן Markdown במקום!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "העלאת קבצים אינה נתמכת עדיין - השתמש בתוכן במקום זאת"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr "יש לספק קובץ markdown או תוכן markdown - באופן בלעדי"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "מזהה תגיות פנימי עבור תגיות הפוסט"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "שם היום"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "שם ידידותי למשתמש עבור תגיות הפוסט"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "שם תצוגה של התג"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "תגית פוסט"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "תגיות פוסט"
@ -105,7 +112,7 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"מכיל פעולות לניהול ואחזור ישויות Post במערך תצוגה של מודל לקריאה בלבד. מחלקה "
"זו מותאמת לטיפול באובייקטי Post פעילים ומאפשרת סינון על בסיס מסננים מוגדרים. "
"היא משתלבת במערכת הסינון האחורית של Django ומבטיחה שהפעולות תואמות את "
"ההרשאות המוגדרות. מערך התצוגה כולל גם תצורת הרשאה נוספת ל'אחזור'."
"מכיל פעולות לניהול ואחזור ישויות Post במערך תצוגה של מודל לקריאה בלבד. מחלקה"
" זו מותאמת לטיפול באובייקטי Post פעילים ומאפשרת סינון על בסיס מסננים "
"מוגדרים. היא משתלבת במערכת הסינון האחורית של Django ומבטיחה שהפעולות תואמות "
"את ההרשאות המוגדרות. מערך התצוגה כולל גם תצורת הרשאה נוספת ל'אחזור'."

Binary file not shown.

View file

@ -1,13 +1,9 @@
# SCHON GETTEXT TRANSLATIONS
# Copyright (C) 2025 EGOR <FUREUNOIR> GORBUNOV
# This file is distributed under the same license as the SCHON package.
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:26+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -28,7 +24,7 @@ msgstr ""
msgid "retrieve a single post (read-only)"
msgstr ""
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
@ -38,60 +34,67 @@ msgid ""
"title."
msgstr ""
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr ""
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr ""
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr ""
#: engine/blog/models.py:45
msgid "post content"
msgstr ""
#: engine/blog/models.py:57
msgid "is static page"
msgstr ""
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr ""
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr ""
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr ""
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr ""
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr ""
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr ""
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr ""
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr ""

Binary file not shown.

View file

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 01:44+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -28,7 +28,7 @@ msgstr ""
msgid "retrieve a single post (read-only)"
msgstr ""
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
@ -38,60 +38,67 @@ msgid ""
"title."
msgstr ""
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr ""
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr ""
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr ""
#: engine/blog/models.py:45
msgid "post content"
msgstr ""
#: engine/blog/models.py:57
msgid "is static page"
msgstr ""
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr ""
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr ""
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr ""
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr ""
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr ""
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr ""
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr ""
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr ""

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,82 +25,89 @@ msgstr "Daftar semua postingan (hanya-baca)"
msgid "retrieve a single post (read-only)"
msgstr "Mengambil satu postingan (hanya-baca)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Mewakili model posting blog. Kelas Post mendefinisikan struktur dan perilaku "
"postingan blog. Kelas ini mencakup atribut untuk penulis, judul, konten, "
"Mewakili model posting blog. Kelas Post mendefinisikan struktur dan perilaku"
" postingan blog. Kelas ini mencakup atribut untuk penulis, judul, konten, "
"lampiran file opsional, slug, dan tag yang terkait. Kelas ini memberlakukan "
"batasan seperti membutuhkan konten atau lampiran file, tetapi tidak keduanya "
"secara bersamaan. Kelas ini juga mendukung pembuatan slug otomatis "
"batasan seperti membutuhkan konten atau lampiran file, tetapi tidak keduanya"
" secara bersamaan. Kelas ini juga mendukung pembuatan slug otomatis "
"berdasarkan judul."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Judul postingan"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Judul"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "konten"
#: engine/blog/models.py:45
msgid "post content"
msgstr "posting konten"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "adalah halaman statis"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"apakah ini adalah postingan untuk halaman dengan URL statis (misalnya `/help/"
"pengiriman`)?"
"apakah ini adalah postingan untuk halaman dengan URL statis (misalnya "
"`/help/pengiriman`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Pos"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Posting"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"File penurunan harga tidak didukung - gunakan konten penurunan harga sebagai "
"gantinya!"
"File penurunan harga tidak didukung - gunakan konten penurunan harga sebagai"
" gantinya!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"file penurunan harga atau konten penurunan harga harus disediakan - tidak "
"boleh ada yang sama"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "pengidentifikasi tag internal untuk tag pos"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nama tag"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Nama yang mudah digunakan untuk tag postingan"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Nama tampilan tag"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Tag pos"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tag pos"
@ -113,8 +120,8 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"Mengenkapsulasi operasi untuk mengelola dan mengambil entitas Post dalam set "
"tampilan model hanya-baca. Kelas ini dirancang untuk menangani objek Post "
"Mengenkapsulasi operasi untuk mengelola dan mengambil entitas Post dalam set"
" tampilan model hanya-baca. Kelas ini dirancang untuk menangani objek Post "
"yang aktif dan memungkinkan penyaringan berdasarkan filter yang ditentukan. "
"Kelas ini terintegrasi dengan sistem penyaringan backend Django dan "
"memastikan operasi sesuai dengan izin yang ditentukan. Kumpulan view juga "

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,80 +25,89 @@ msgstr "Elenco di tutti i messaggi (solo lettura)"
msgid "retrieve a single post (read-only)"
msgstr "Recuperare un singolo post (solo lettura)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Rappresenta il modello di un post di un blog. La classe Post definisce la "
"struttura e il comportamento di un post del blog. Include gli attributi per "
"l'autore, il titolo, il contenuto, l'allegato opzionale, lo slug e i tag "
"associati. La classe impone dei vincoli, come la richiesta di un contenuto o "
"di un file allegato, ma non di entrambi contemporaneamente. Supporta anche "
"associati. La classe impone dei vincoli, come la richiesta di un contenuto o"
" di un file allegato, ma non di entrambi contemporaneamente. Supporta anche "
"la generazione automatica dello slug in base al titolo."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Titolo del post"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titolo"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "contenuto"
#: engine/blog/models.py:45
msgid "post content"
msgstr "pubblicare contenuti"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "è una pagina statica"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Si tratta di un post per una pagina con URL statico (ad esempio `/help/"
"delivery`)?"
"Si tratta di un post per una pagina con URL statico (ad esempio "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Posta"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Messaggi"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "I file Markdown non sono supportati: usa invece i contenuti Markdown!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Il caricamento dei file non è ancora supportato: utilizzare invece i "
"contenuti."
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"deve essere fornito un file markdown o un contenuto markdown - si escludono "
"a vicenda"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "identificatore interno del tag post"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nome del tag"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Nome intuitivo per il tag del post"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Nome del tag"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Post tag"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tag dei post"
@ -113,8 +122,8 @@ msgid ""
msgstr ""
"Incapsula le operazioni per gestire e recuperare le entità Post in un "
"insieme di viste del modello di sola lettura. Questa classe è fatta su "
"misura per gestire gli oggetti Post che sono attivi e consente il filtraggio "
"in base ai filtri definiti. Si integra con il sistema di filtraggio del "
"misura per gestire gli oggetti Post che sono attivi e consente il filtraggio"
" in base ai filtri definiti. Si integra con il sistema di filtraggio del "
"backend di Django e garantisce che le operazioni siano in linea con i "
"permessi definiti. L'insieme di viste include anche un'ulteriore "
"configurazione di permessi 'retrieve'."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,79 +25,79 @@ msgstr "すべての投稿をリストアップする(読み取り専用)"
msgid "retrieve a single post (read-only)"
msgstr "単一の投稿を取得する(読み取り専用)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"ブログ記事のモデルを表します。Post クラスはブログ記事の構造と動作を定義しま"
"す。著者、タイトル、内容、オプションの添付ファイル、スラッグ、関連タグの属性"
"を含みます。このクラスは、内容か添付ファイルのどちらかを要求するが、両方は同"
"時に要求しないといった制約を強制します。また、タイトルに基づくスラッグの自動"
"生成もサポートしています。"
"ブログ記事のモデルを表します。Post "
"クラスはブログ記事の構造と動作を定義します。著者、タイトル、内容、オプションの添付ファイル、スラッグ、関連タグの属性を含みます。このクラスは、内容か添付ファイルのどちらかを要求するが、両方は同時に要求しないといった制約を強制します。また、タイトルに基づくスラッグの自動生成もサポートしています。"
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "投稿タイトル"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "タイトル"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "内容"
#: engine/blog/models.py:45
msgid "post content"
msgstr "投稿内容"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "は静的ページ"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "これは静的URLのページ`/help/delivery`)への投稿ですか?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "ポスト"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "投稿"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"マークダウン・ファイルはサポートされていません - 代わりにマークダウン・コンテ"
"ンツを使用してください!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "マークダウン・ファイルはサポートされていません - 代わりにマークダウン・コンテンツを使用してください!"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr "マークダウン・ファイルまたはマークダウン・コンテンツを提供しなければならない。"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"マークダウン・ファイルまたはマークダウン・コンテンツを提供しなければならな"
"い。"
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr "投稿タグの内部タグ識別子"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "タグ名"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "投稿タグのユーザーフレンドリーな名前"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "タグ表示名"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "投稿タグ"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "投稿タグ"
@ -110,9 +110,7 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"読み取り専用のモデルビューセットにおける Post エンティティの管理と取得のため"
"の操作をカプセル化します。このクラスは、アクティブな Post オブジェクトを扱"
"い、定義されたフィルタに基 づいてフィルタリングできるように調整されています。"
"Django のバックエンドのフィルタリングシステムと統合し、定義されたパーミッショ"
"ンに沿った操作を保証します。ビューセットには、追加の 'retrieve' 権限設定も含"
"まれます。"
"読み取り専用のモデルビューセットにおける Post エンティティの管理と取得のための操作をカプセル化します。このクラスは、アクティブな Post "
"オブジェクトを扱い、定義されたフィルタに基 づいてフィルタリングできるように調整されています。Django "
"のバックエンドのフィルタリングシステムと統合し、定義されたパーミッションに沿った操作を保証します。ビューセットには、追加の 'retrieve' "
"権限設定も含まれます。"

Binary file not shown.

View file

@ -1,13 +1,9 @@
# SCHON GETTEXT TRANSLATIONS
# Copyright (C) 2025 EGOR <FUREUNOIR> GORBUNOV
# This file is distributed under the same license as the SCHON package.
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:13+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -28,7 +24,7 @@ msgstr ""
msgid "retrieve a single post (read-only)"
msgstr ""
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
@ -38,60 +34,67 @@ msgid ""
"title."
msgstr ""
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr ""
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr ""
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr ""
#: engine/blog/models.py:45
msgid "post content"
msgstr ""
#: engine/blog/models.py:57
msgid "is static page"
msgstr ""
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr ""
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr ""
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr ""
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr ""
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr ""
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr ""
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr ""
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr ""

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,76 +25,80 @@ msgstr "모든 게시물 나열(읽기 전용)"
msgid "retrieve a single post (read-only)"
msgstr "단일 게시물 검색(읽기 전용)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"블로그 글 모델을 나타냅니다. Post 클래스는 블로그 글의 구조와 동작을 정의합니"
"다. 여기에는 작성자, 제목, 콘텐츠, 선택적 파일 첨부, 슬러그 및 관련 태그에 대"
"한 속성이 포함됩니다. 이 클래스는 콘텐츠 또는 파일 첨부 중 하나만 요구하고 "
"둘 다 동시에 요구하지 않는 등의 제약 조건을 적용합니다. 또한 제목에 따른 자"
"동 슬러그 생성도 지원합니다."
"블로그 글 모델을 나타냅니다. Post 클래스는 블로그 글의 구조와 동작을 정의합니다. 여기에는 작성자, 제목, 콘텐츠, 선택적 파일 "
"첨부, 슬러그 및 관련 태그에 대한 속성이 포함됩니다. 이 클래스는 콘텐츠 또는 파일 첨부 중 하나만 요구하고 둘 다 동시에 요구하지 "
"않는 등의 제약 조건을 적용합니다. 또한 제목에 따른 자동 슬러그 생성도 지원합니다."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "게시물 제목"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "제목"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "콘텐츠"
#: engine/blog/models.py:45
msgid "post content"
msgstr "게시물 내용"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "는 정적 페이지입니다."
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "정적 URL(예: `/help/delivery`)이 있는 페이지의 게시물인가요?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "게시물"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "게시물"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"마크다운 파일은 지원되지 않습니다 예 - 대신 마크다운 콘텐츠를 사용하세요!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "마크다운 파일은 지원되지 않습니다 예 - 대신 마크다운 콘텐츠를 사용하세요!"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr "마크다운 파일 또는 마크다운 콘텐츠를 제공해야 합니다 - 상호 배타적"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "마크다운 파일 또는 마크다운 콘텐츠가 제공되어야 합니다."
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr "게시물 태그의 내부 태그 식별자"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "태그 이름"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "게시물 태그의 사용자 친화적인 이름"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "태그 표시 이름"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "게시물 태그"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "게시물 태그"
@ -107,8 +111,6 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"읽기 전용 모델 보기 집합에서 Post 엔티티를 관리하고 검색하기 위한 작업을 캡슐"
"화합니다. 이 클래스는 활성 상태인 Post 개체를 처리하도록 맞춤화되어 있으며 정"
"의된 필터를 기반으로 필터링을 허용합니다. 이 클래스는 장고의 백엔드 필터링 시"
"스템과 통합되며 정의된 권한에 따라 작업이 이루어지도록 합니다. 보기 세트에는 "
"추가 '검색' 권한 구성도 포함되어 있습니다."
"읽기 전용 모델 보기 집합에서 Post 엔티티를 관리하고 검색하기 위한 작업을 캡슐화합니다. 이 클래스는 활성 상태인 Post 개체를 "
"처리하도록 맞춤화되어 있으며 정의된 필터를 기반으로 필터링을 허용합니다. 이 클래스는 장고의 백엔드 필터링 시스템과 통합되며 정의된 "
"권한에 따라 작업이 이루어지도록 합니다. 보기 세트에는 추가 '검색' 권한 구성도 포함되어 있습니다."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Alle berichten weergeven (alleen-lezen)"
msgid "retrieve a single post (read-only)"
msgstr "Een enkel bericht ophalen (alleen-lezen)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Vertegenwoordigt een blogpostmodel. De klasse Post definieert de structuur "
"en het gedrag van een blogbericht. Ze bevat attributen voor auteur, titel, "
@ -41,66 +41,73 @@ msgstr ""
"maar niet beide tegelijk. Het ondersteunt ook het automatisch genereren van "
"slugs op basis van de titel."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Titel van de post"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titel"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "inhoud"
#: engine/blog/models.py:45
msgid "post content"
msgstr "berichtinhoud"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "is statische pagina"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Is dit een bericht voor een pagina met een statische URL (bijv. `/help/"
"delivery`)?"
"Is dit een bericht voor een pagina met een statische URL (bijv. "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Plaats"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Berichten"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Markdown-bestanden worden niet ondersteund - gebruik in plaats daarvan "
"markdown-inhoud!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"er moet een markdown-bestand of markdown-inhoud worden geleverd - wederzijds "
"exclusief"
"er moet een markdown-bestand of markdown-inhoud worden geleverd - wederzijds"
" exclusief"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "interne tagidentifier voor de posttag"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tag naam"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Gebruiksvriendelijke naam voor de posttag"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Tag weergavenaam"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Post tag"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Post tags"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Liste over alle innlegg (skrivebeskyttet)"
msgid "retrieve a single post (read-only)"
msgstr "Hent et enkelt innlegg (skrivebeskyttet)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Representerer en blogginnleggsmodell. Post-klassen definerer strukturen og "
"virkemåten til et blogginnlegg. Den inneholder attributter for forfatter, "
@ -41,62 +41,69 @@ msgstr ""
"må være med, men ikke begge deler samtidig. Den støtter også automatisk "
"generering av slug basert på tittelen."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Innleggets tittel"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Title"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "innhold"
#: engine/blog/models.py:45
msgid "post content"
msgstr "innleggsinnhold"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "er statisk side"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"er dette et innlegg for en side med statisk URL (f.eks. `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Post"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Innlegg"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown-filer støttes ikke - bruk markdown-innhold i stedet!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "filopplasting støttes ikke ennå bruk innhold i stedet"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"en markdown-fil eller markdown-innhold må oppgis - gjensidig utelukkende"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "intern tagg-identifikator for innleggstaggen"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tagg navn"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Brukervennlig navn for innleggstaggen"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Visningsnavn for taggen"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Post tag"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tagger for innlegg"
@ -114,5 +121,5 @@ msgstr ""
"håndtere Post-objekter som er aktive, og tillater filtrering basert på "
"definerte filtre. Den integreres med Djangos backend-filtreringssystem og "
"sørger for at operasjonene er i tråd med de definerte tillatelsene. "
"Visningssettet inkluderer også en ekstra konfigurasjon for \"hent\"-"
"tillatelse."
"Visningssettet inkluderer også en ekstra konfigurasjon for "
"\"hent\"-tillatelse."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Lista wszystkich postów (tylko do odczytu)"
msgid "retrieve a single post (read-only)"
msgstr "Pobieranie pojedynczego wpisu (tylko do odczytu)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Reprezentuje model wpisu na blogu. Klasa Post definiuje strukturę i "
"zachowanie wpisu na blogu. Zawiera atrybuty autora, tytułu, treści, "
@ -41,64 +41,72 @@ msgstr ""
"nie obu jednocześnie. Obsługuje również automatyczne generowanie slug na "
"podstawie tytułu."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Tytuł postu"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Tytuł"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "treść"
#: engine/blog/models.py:45
msgid "post content"
msgstr "treść postu"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "jest stroną statyczną"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Czy jest to post dla strony ze statycznym adresem URL (np. `/help/delivery`)?"
"Czy jest to post dla strony ze statycznym adresem URL (np. "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Post"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Posty"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Pliki Markdown nie są obsługiwane - zamiast tego użyj zawartości Markdown!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"należy dostarczyć plik markdown lub zawartość markdown - wzajemnie się "
"wykluczające"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "wewnętrzny identyfikator tagu posta"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nazwa tagu"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Przyjazna dla użytkownika nazwa tagu posta"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Wyświetlana nazwa znacznika"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Tag posta"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tagi postów"
@ -112,8 +120,8 @@ msgid ""
"permission configuration."
msgstr ""
"Enkapsuluje operacje zarządzania i pobierania encji Post w zestawie widoków "
"modelu tylko do odczytu. Klasa ta jest dostosowana do obsługi obiektów Post, "
"które są aktywne i pozwala na filtrowanie w oparciu o zdefiniowane filtry. "
"modelu tylko do odczytu. Klasa ta jest dostosowana do obsługi obiektów Post,"
" które są aktywne i pozwala na filtrowanie w oparciu o zdefiniowane filtry. "
"Integruje się z backendowym systemem filtrowania Django i zapewnia zgodność "
"operacji ze zdefiniowanymi uprawnieniami. Zestaw widoków zawiera również "
"dodatkową konfigurację uprawnień \"retrieve\"."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,80 +25,88 @@ msgstr "Listar todas as postagens (somente leitura)"
msgid "retrieve a single post (read-only)"
msgstr "Recuperar um único post (somente leitura)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Representa um modelo de post de blog. A classe Post define a estrutura e o "
"comportamento de um post de blog. Ela inclui atributos para autor, título, "
"conteúdo, anexo de arquivo opcional, slug e tags associadas. A classe impõe "
"restrições, como exigir conteúdo ou um anexo de arquivo, mas não ambos "
"simultaneamente. Ela também oferece suporte à geração automática de slug com "
"base no título."
"simultaneamente. Ela também oferece suporte à geração automática de slug com"
" base no título."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Título da postagem"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Título"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "conteúdo"
#: engine/blog/models.py:45
msgid "post content"
msgstr "conteúdo da publicação"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "é uma página estática"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Essa é uma postagem para uma página com URL estático (por exemplo, `/help/"
"delivery`)?"
"Essa é uma postagem para uma página com URL estático (por exemplo, "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Postar"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Publicações"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Os arquivos markdown não são suportados - use conteúdo markdown em vez disso!"
"Os arquivos markdown não são suportados - use conteúdo markdown em vez "
"disso!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"um arquivo ou conteúdo de markdown deve ser fornecido - mutuamente exclusivo"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "identificador de tag interno para a tag de postagem"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nome da etiqueta"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Nome de fácil utilização para a tag de postagem"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Nome de exibição da tag"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Etiqueta de postagem"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Tags de postagem"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Listează toate postările (doar pentru citire)"
msgid "retrieve a single post (read-only)"
msgstr "Recuperează o singură postare (read-only)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Reprezintă un model de postare pe blog. Clasa Post definește structura și "
"comportamentul unei postări pe blog. Aceasta include atribute pentru autor, "
@ -41,65 +41,73 @@ msgstr ""
"fișier atașat, dar nu ambele simultan. De asemenea, acceptă generarea "
"automată a slug-ului pe baza titlului."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Titlul postului"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titlul"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "conținut"
#: engine/blog/models.py:45
msgid "post content"
msgstr "conținutul postării"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "este o pagină statică"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"este aceasta o postare pentru o pagină cu URL static (de exemplu `/help/"
"delivery`)?"
"este aceasta o postare pentru o pagină cu URL static (de exemplu "
"`/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Post"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Mesaje"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Fișierele Markdown nu sunt acceptate - utilizați în schimb conținut Markdown!"
"Fișierele Markdown nu sunt acceptate - utilizați în schimb conținut "
"Markdown!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"trebuie furnizat un fișier markdown sau conținut markdown - se exclud "
"reciproc"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "identificator intern de etichetă pentru eticheta postului"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Nume etichetă"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Nume ușor de utilizat pentru eticheta postului"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Nume afișare etichetă"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Etichetă post"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Etichete poștale"
@ -112,8 +120,8 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"Încapsulează operațiunile de gestionare și extragere a entităților Post într-"
"un set de vizualizări de model numai pentru citire. Această clasă este "
"Încapsulează operațiunile de gestionare și extragere a entităților Post "
"într-un set de vizualizări de model numai pentru citire. Această clasă este "
"adaptată pentru a gestiona obiectele Post care sunt active și permite "
"filtrarea pe baza filtrelor definite. Se integrează cu sistemul de filtrare "
"din backend al Django și asigură alinierea operațiunilor cu permisiunile "

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Список всех сообщений (только для чтени
msgid "retrieve a single post (read-only)"
msgstr "Получение одного сообщения (только для чтения)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Представляет модель записи в блоге. Класс Post определяет структуру и "
"поведение записи в блоге. Он включает атрибуты автора, заголовка, "
@ -41,65 +41,72 @@ msgstr ""
"вложение файла, но не то и другое одновременно. Он также поддерживает "
"автоматическую генерацию slug на основе заголовка."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Заголовок сообщения"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Название"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "содержание"
#: engine/blog/models.py:45
msgid "post content"
msgstr "содержание публикации"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "это статическая страница"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Это сообщение для страницы со статическим URL (например, `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Пост"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Посты"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Файлы в формате Markdown не поддерживаются - используйте вместо них "
"содержимое в формате Markdown!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"необходимо предоставить файл разметки или содержимое разметки - "
"взаимоисключающие варианты"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "внутренний идентификатор тега для тега post"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Название тега"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Удобное для пользователя название тега поста"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Отображаемое имя тега"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Тэг поста"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Тэги постов"
@ -114,8 +121,8 @@ msgid ""
msgstr ""
"Инкапсулирует операции по управлению и получению объектов Post в наборе "
"представлений модели, доступном только для чтения. Этот класс предназначен "
"для работы с активными объектами Post и позволяет осуществлять фильтрацию на "
"основе заданных фильтров. Он интегрируется с системой фильтрации бэкенда "
"для работы с активными объектами Post и позволяет осуществлять фильтрацию на"
" основе заданных фильтров. Он интегрируется с системой фильтрации бэкенда "
"Django и обеспечивает соответствие операций заданным разрешениям. Набор "
"представлений также включает дополнительную конфигурацию разрешения "
"'retrieve'."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Lista alla inlägg (skrivskyddad)"
msgid "retrieve a single post (read-only)"
msgstr "Hämta ett enskilt inlägg (skrivskyddat)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Representerar en modell för blogginlägg. Klassen Post definierar strukturen "
"och beteendet för ett blogginlägg. Den innehåller attribut för författare, "
@ -41,63 +41,70 @@ msgstr ""
"filbilaga krävs, men inte båda samtidigt. Den stöder också automatisk "
"sluggenerering baserat på titeln."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Inläggets titel"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Titel"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "innehåll"
#: engine/blog/models.py:45
msgid "post content"
msgstr "inläggsinnehåll"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "är statisk sida"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"är detta ett inlägg för en sida med statisk URL (t.ex. `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Post"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Inlägg"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown-filer stöds inte - använd markdown-innehåll istället!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "filuppladdningar stöds ännu inte använd innehåll istället"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"en markdown-fil eller markdown-innehåll måste tillhandahållas - ömsesidigt "
"uteslutande"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "intern taggidentifierare för inläggstaggen"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tagg namn"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Användarvänligt namn för inläggstaggen"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Taggens visningsnamn"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Post tagg"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Taggar för inlägg"
@ -115,5 +122,5 @@ msgstr ""
"objekt som är aktiva och tillåter filtrering baserat på definierade filter. "
"Den integreras med Djangos backend-filtreringssystem och säkerställer att "
"operationerna överensstämmer med de definierade behörigheterna. "
"Vyuppsättningen innehåller också en ytterligare behörighetskonfiguration för "
"\"hämta\"."
"Vyuppsättningen innehåller också en ytterligare behörighetskonfiguration för"
" \"hämta\"."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,74 +25,86 @@ msgstr "แสดงรายการโพสต์ทั้งหมด (อ
msgid "retrieve a single post (read-only)"
msgstr "ดึงโพสต์เดียว (อ่านอย่างเดียว)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"แทนแบบจำลองของโพสต์ในบล็อก คลาส Post กำหนดโครงสร้างและพฤติกรรมของโพสต์ในบล็อก "
"ประกอบด้วยแอตทริบิวต์สำหรับผู้เขียน, ชื่อเรื่อง, เนื้อหา, ไฟล์แนบ (ไม่บังคับ), slug "
"และแท็กที่เกี่ยวข้อง คลาสนี้บังคับใช้ข้อจำกัด เช่น ต้องมีเนื้อหาหรือไฟล์แนบอย่างใดอย่างหนึ่ง "
"แต่ไม่สามารถมีทั้งสองอย่างพร้อมกันได้ นอกจากนี้ยังรองรับการสร้าง slug โดยอัตโนมัติจากชื่อเรื่อง"
"แทนแบบจำลองของโพสต์ในบล็อก คลาส Post "
"กำหนดโครงสร้างและพฤติกรรมของโพสต์ในบล็อก "
"ประกอบด้วยแอตทริบิวต์สำหรับผู้เขียน, ชื่อเรื่อง, เนื้อหา, ไฟล์แนบ "
"(ไม่บังคับ), slug และแท็กที่เกี่ยวข้อง คลาสนี้บังคับใช้ข้อจำกัด เช่น "
"ต้องมีเนื้อหาหรือไฟล์แนบอย่างใดอย่างหนึ่ง "
"แต่ไม่สามารถมีทั้งสองอย่างพร้อมกันได้ นอกจากนี้ยังรองรับการสร้าง slug "
"โดยอัตโนมัติจากชื่อเรื่อง"
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "ชื่อโพสต์"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "ชื่อเรื่อง"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "เนื้อหา"
#: engine/blog/models.py:45
msgid "post content"
msgstr "โพสต์เนื้อหา"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "เป็นหน้าคงที่"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "นี่คือโพสต์สำหรับหน้าที่มี URL แบบคงที่ (เช่น `/help/delivery`)?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "โพสต์"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "โพสต์"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "ไฟล์มาร์กดาวน์ยังไม่รองรับในตอนนี้ - กรุณาใช้เนื้อหาแบบมาร์กดาวน์แทน!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "ยังไม่รองรับการอัปโหลดไฟล์ - กรุณาใช้เนื้อหาแทน"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"ไฟล์มาร์กดาวน์หรือเนื้อหาแบบมาร์กดาวน์ต้องได้รับการจัดเตรียมไว้ - "
"ไม่สามารถใช้ร่วมกันได้"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "ไฟล์มาร์กดาวน์หรือเนื้อหาแบบมาร์กดาวน์ต้องได้รับการจัดเตรียมไว้ - ไม่สามารถใช้ร่วมกันได้"
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr "ตัวระบุแท็กภายในสำหรับแท็กโพสต์"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "ชื่อวัน"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "ชื่อที่ใช้งานได้ง่ายสำหรับแท็กโพสต์"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "แสดงชื่อแท็ก"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "โพสต์แท็ก"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "ป้ายกำกับโพสต์"
@ -105,8 +117,9 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"รวบรวมการดำเนินการสำหรับการจัดการและดึงข้อมูลเอนทิตีโพสต์ในชุดมุมมองแบบอ่านอย่างเดียว "
"คลาสนี้ถูกออกแบบมาเพื่อจัดการกับวัตถุโพสต์ที่ใช้งานอยู่และอนุญาตให้มีการกรองตามตัวกรองที่กำหนดไว้ "
"มันผสานรวมกับระบบการกรองแบ็กเอนด์ของ Django "
"และทำให้แน่ใจว่าการดำเนินการสอดคล้องกับสิทธิ์ที่กำหนดไว้ ชุดมุมมองยังรวมถึงการกำหนดค่าสิทธิ์ "
"'ดึงข้อมูล' เพิ่มเติมด้วย"
"รวบรวมการดำเนินการสำหรับการจัดการและดึงข้อมูลเอนทิตีโพสต์ในชุดมุมมองแบบอ่านอย่างเดียว"
" "
"คลาสนี้ถูกออกแบบมาเพื่อจัดการกับวัตถุโพสต์ที่ใช้งานอยู่และอนุญาตให้มีการกรองตามตัวกรองที่กำหนดไว้"
" มันผสานรวมกับระบบการกรองแบ็กเอนด์ของ Django "
"และทำให้แน่ใจว่าการดำเนินการสอดคล้องกับสิทธิ์ที่กำหนดไว้ "
"ชุดมุมมองยังรวมถึงการกำหนดค่าสิทธิ์ 'ดึงข้อมูล' เพิ่มเติมด้วย"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,81 +25,89 @@ msgstr "Tüm gönderileri listele (salt okunur)"
msgid "retrieve a single post (read-only)"
msgstr "Tek bir gönderiyi al (salt okunur)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Bir blog yazısı modelini temsil eder. Post sınıfı, bir blog gönderisinin "
"yapısını ve davranışını tanımlar. Yazar, başlık, içerik, isteğe bağlı dosya "
"eki, slug ve ilişkili etiketler için öznitelikler içerir. Sınıf, içerik veya "
"dosya eki gerektirme ancak her ikisini aynı anda gerektirmeme gibi "
"eki, slug ve ilişkili etiketler için öznitelikler içerir. Sınıf, içerik veya"
" dosya eki gerektirme ancak her ikisini aynı anda gerektirmeme gibi "
"kısıtlamalar uygular. Ayrıca başlığa dayalı otomatik slug oluşturmayı da "
"destekler."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Gönderinin başlığı"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Başlık"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "içerik"
#: engine/blog/models.py:45
msgid "post content"
msgstr "yazı içeriği"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "statik sayfadır"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Bu, statik URL'ye sahip bir sayfa (örneğin `/help/delivery`) için bir "
"gönderi mi?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Posta"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Mesajlar"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Markdown dosyaları desteklenmiyor yer - bunun yerine markdown içeriği "
"kullanın!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"bir markdown dosyası veya markdown içeriği sağlanmalıdır - birbirini dışlayan"
"bir markdown dosyası veya markdown içeriği sağlanmalıdır - birbirini "
"dışlayan"
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "gönderi etiketi için dahili etiket tanımlayıcısı"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Etiket adı"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Gönderi etiketi için kullanıcı dostu ad"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Etiket görünen adı"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Mesaj etiketi"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Gönderi etiketleri"

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,14 +25,14 @@ msgstr "Danh sách tất cả các bài đăng (chỉ đọc)"
msgid "retrieve a single post (read-only)"
msgstr "Lấy một bài đăng duy nhất (chỉ đọc)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"Đại diện cho mô hình bài viết blog. Lớp Post định nghĩa cấu trúc và hành vi "
"của một bài viết blog. Nó bao gồm các thuộc tính cho tác giả, tiêu đề, nội "
@ -40,65 +40,72 @@ msgstr ""
"ràng buộc như yêu cầu phải có nội dung hoặc tệp đính kèm nhưng không cả hai "
"cùng lúc. Nó cũng hỗ trợ tạo slug tự động dựa trên tiêu đề."
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "Tiêu đề bài đăng"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "Tiêu đề"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "nội dung"
#: engine/blog/models.py:45
msgid "post content"
msgstr "Nội dung bài đăng"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "là trang tĩnh"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Đây có phải là bài đăng cho một trang có URL tĩnh (ví dụ: `/help/delivery`) "
"không?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "Bài đăng"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "Bài đăng"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr ""
"Tệp Markdown hiện chưa được hỗ trợ - hãy sử dụng nội dung Markdown thay thế!"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr ""
"Phải cung cấp tệp Markdown hoặc nội dung Markdown - hai tùy chọn này là "
"tương phản nhau."
#: engine/blog/models.py:144
#: engine/blog/models.py:110
msgid "internal tag identifier for the post tag"
msgstr "Mã định danh thẻ nội bộ cho thẻ bài viết"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "Tên ngày"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "Tên thân thiện với người dùng cho thẻ bài viết"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "Hiển thị tên thẻ"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "Thẻ bài viết"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "Thẻ bài viết"
@ -113,6 +120,7 @@ msgid ""
msgstr ""
"Đóng gói các thao tác quản lý và truy xuất các thực thể Post trong một bộ "
"xem mô hình chỉ đọc. Lớp này được thiết kế để xử lý các đối tượng Post đang "
"hoạt động và cho phép lọc dựa trên các bộ lọc đã định nghĩa. Nó tích hợp với "
"hệ thống lọc phía sau của Django và đảm bảo các thao tác tuân thủ các quyền "
"hạn đã định nghĩa. Bộ xem cũng bao gồm một cấu hình quyền 'retrieve' bổ sung."
"hoạt động và cho phép lọc dựa trên các bộ lọc đã định nghĩa. Nó tích hợp với"
" hệ thống lọc phía sau của Django và đảm bảo các thao tác tuân thủ các quyền"
" hạn đã định nghĩa. Bộ xem cũng bao gồm một cấu hình quyền 'retrieve' bổ "
"sung."

Binary file not shown.

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: SCHON 2026.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-12-21 00:38+0300\n"
"POT-Creation-Date: 2026-01-26 02:16+0300\n"
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
@ -25,73 +25,78 @@ msgstr "列出所有帖子(只读)"
msgid "retrieve a single post (read-only)"
msgstr "检索单个帖子(只读)"
#: engine/blog/models.py:20
#: engine/blog/models.py:19
msgid ""
"Represents a blog post model. The Post class defines the structure and "
"behavior of a blog post. It includes attributes for author, title, content, "
"optional file attachment, slug, and associated tags. The class enforces "
"constraints such as requiring either content or a file attachment but not "
"both simultaneously. It also supports automatic slug generation based on the "
"title."
"both simultaneously. It also supports automatic slug generation based on the"
" title."
msgstr ""
"代表博文模型。帖子类定义了博文的结构和行为。它包括作者、标题、内容、可选文件"
"附件、标签和相关标记的属性。该类可强制执行一些限制条件,如要求提供内容或文件"
"附件,但不能同时提供这两种内容。它还支持根据标题自动生成标签。"
"代表博文模型。帖子类定义了博文的结构和行为。它包括作者、标题、内容、可选文件附件、标签和相关标记的属性。该类可强制执行一些限制条件,如要求提供内容或文件附件,但不能同时提供这两种内容。它还支持根据标题自动生成标签。"
#: engine/blog/models.py:41
#: engine/blog/models.py:40
msgid "post title"
msgstr "帖子标题"
#: engine/blog/models.py:42
#: engine/blog/models.py:41
msgid "title"
msgstr "标题"
#: engine/blog/models.py:89
#: engine/blog/models.py:44
msgid "content"
msgstr "内容"
#: engine/blog/models.py:45
msgid "post content"
msgstr "发布内容"
#: engine/blog/models.py:57
msgid "is static page"
msgstr "是静态页面"
#: engine/blog/models.py:91
#: engine/blog/models.py:59
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "这是静态 URL 页面(如 `/help/delivery`)的帖子吗?"
#: engine/blog/models.py:99
#: engine/blog/models.py:67
msgid "post"
msgstr "职位"
#: engine/blog/models.py:100
#: engine/blog/models.py:68
msgid "posts"
msgstr "职位"
#: engine/blog/models.py:105
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "不支持 Markdown 文件,请使用 Markdown 内容!"
#: engine/blog/models.py:73
msgid "file uploads are not supported yet - use content instead"
msgstr "目前尚不支持文件上传——请改用内容上传功能"
#: engine/blog/models.py:77
msgid "a file or content must be provided - mutually exclusive"
msgstr "必须提供一个Markdown文件或Markdown内容——两者互斥"
#: engine/blog/models.py:110
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "必须提供标记符文件或标记符内容 - 相互排斥"
#: engine/blog/models.py:144
msgid "internal tag identifier for the post tag"
msgstr "职位标签的内部标签标识符"
#: engine/blog/models.py:145
#: engine/blog/models.py:111
msgid "tag name"
msgstr "标签名称"
#: engine/blog/models.py:149
#: engine/blog/models.py:115
msgid "user-friendly name for the post tag"
msgstr "方便用户使用的帖子标签名称"
#: engine/blog/models.py:150
#: engine/blog/models.py:116
msgid "tag display name"
msgstr "标签显示名称"
#: engine/blog/models.py:158
#: engine/blog/models.py:124
msgid "post tag"
msgstr "职位标签"
#: engine/blog/models.py:159
#: engine/blog/models.py:125
msgid "post tags"
msgstr "帖子标签"
@ -104,6 +109,5 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"该类封装了在只读模型视图集中管理和检索 \"帖子 \"实体的操作。该类专门用于处理"
"活动的 \"帖子 \"对象,并允许根据定义的过滤器进行过滤。它与 Django 的后台过滤"
"系统集成,确保操作与定义的权限一致。视图集还包括额外的 \"检索 \"权限配置。"
"该类封装了在只读模型视图集中管理和检索 \"帖子 \"实体的操作。该类专门用于处理活动的 \"帖子 \"对象,并允许根据定义的过滤器进行过滤。它与 "
"Django 的后台过滤系统集成,确保操作与定义的权限一致。视图集还包括额外的 \"检索 \"权限配置。"

View file

@ -6,11 +6,10 @@ from django.db.models import (
FileField,
ForeignKey,
ManyToManyField,
TextField,
)
from django.utils.translation import gettext_lazy as _
from django_extensions.db.fields import AutoSlugField
from markdown.extensions.toc import TocExtension
from markdown_field import MarkdownField
from engine.core.abstract import NiceModel
@ -41,40 +40,9 @@ class Post(NiceModel):
help_text=_("post title"),
verbose_name=_("title"),
)
content: MarkdownField = MarkdownField(
"content",
extensions=[
TocExtension(toc_depth=3),
"pymdownx.arithmatex",
"pymdownx.b64",
"pymdownx.betterem",
"pymdownx.blocks.admonition",
"pymdownx.blocks.caption",
"pymdownx.blocks.definition",
"pymdownx.blocks.details",
"pymdownx.blocks.html",
"pymdownx.blocks.tab",
"pymdownx.caret",
"pymdownx.critic",
"pymdownx.emoji",
"pymdownx.escapeall",
"pymdownx.extra",
"pymdownx.fancylists",
"pymdownx.highlight",
"pymdownx.inlinehilite",
"pymdownx.keys",
"pymdownx.magiclink",
"pymdownx.mark",
"pymdownx.pathconverter",
"pymdownx.progressbar",
"pymdownx.saneheaders",
"pymdownx.smartsymbols",
"pymdownx.snippets",
"pymdownx.striphtml",
"pymdownx.superfences",
"pymdownx.tasklist",
"pymdownx.tilde",
],
content = TextField(
verbose_name=_("content"),
help_text=_("post content"),
blank=True,
null=True,
)
@ -102,13 +70,11 @@ class Post(NiceModel):
def save(self, *args, **kwargs):
if self.file:
raise ValueError(
_("markdown files are not supported yet - use markdown content instead")
_("file uploads are not supported yet - use content instead")
)
if not any([self.file, self.content]) or all([self.file, self.content]):
raise ValueError(
_(
"a markdown file or markdown content must be provided - mutually exclusive"
)
_("a file or content must be provided - mutually exclusive")
)
super().save(*args, **kwargs)

View file

@ -155,7 +155,7 @@ class ActivationActionsMixin:
]
@action(
description=_("activate selected %(verbose_name_plural)s").lower().title(),
description=_("Activate selected %(verbose_name_plural)s"),
permissions=["change"],
)
def activate_selected(self, request: HttpRequest, queryset: QuerySet[Any]) -> None:
@ -171,7 +171,7 @@ class ActivationActionsMixin:
self.message_user(request=request, message=str(e), level=messages.ERROR)
@action(
description=_("deactivate selected %(verbose_name_plural)s").lower().title(),
description=_("Deactivate selected %(verbose_name_plural)s"),
permissions=["change"],
)
def deactivate_selected(
@ -528,9 +528,7 @@ class ProductAdmin(
has_images.short_description = _("has images") # ty:ignore[unresolved-attribute]
@action(
description=_("export selected %(verbose_name_plural)s to marketplaces' feeds")
.lower()
.title(),
description=_("Export selected %(verbose_name_plural)s to marketplaces' feeds"),
permissions=["change"],
)
def export_to_marketplaces(
@ -552,9 +550,7 @@ class ProductAdmin(
self.message_user(request=request, message=str(e), level=messages.ERROR)
@action(
description=_("ban selected %(verbose_name_plural)s from marketplaces' feeds")
.lower()
.title(),
description=_("Ban selected %(verbose_name_plural)s from marketplaces' feeds"),
permissions=["change"],
)
def ban_from_marketplaces(

View file

@ -335,9 +335,9 @@ class BulkWishlistAction(Mutation):
# noinspection PyUnreachableCode
match action:
case "add":
wishlist = wishlist.bulk_add_products(products) # ty: ignore[possibly-missing-attribute]
wishlist = wishlist.bulk_add_products(products)
case "remove":
wishlist = wishlist.bulk_remove_products(products) # ty: ignore[possibly-missing-attribute]
wishlist = wishlist.bulk_remove_products(products)
case _:
raise BadRequest(_("action must be either add or remove"))
@ -723,7 +723,7 @@ class Search(Mutation):
return Search(results=None) # ty: ignore[unknown-argument]
# noinspection PyTypeChecker
return Search( # ty: ignore[unknown-argument]
return Search(
results=SearchResultsType( # ty: ignore[unknown-argument]
products=data["products"], # ty: ignore[unknown-argument]
categories=data["categories"], # ty: ignore[unknown-argument]

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show more