Merge branch 'main' into storefront-nuxt

This commit is contained in:
Egor Pavlovich Gorbunov 2025-11-11 10:45:26 +03:00
commit 607af80235
656 changed files with 37549 additions and 33928 deletions

View file

@ -76,10 +76,10 @@ backups/
services_data/
static/
media/
!core/static
!blog/static
!vibes_auth/static
!payments/static
!engine/core/static
!engine/blog/static
!engine/vibes_auth/static
!engine/payments/static
# Environment file
.env

8
.gitignore vendored
View file

@ -109,10 +109,10 @@ static/
media/
# Allow checked-in static from apps
!core/static/
!payments/static/
!vibes_auth/static/
!blog/static/
!engine/core/static/
!engine/payments/static/
!engine/vibes_auth/static/
!engine/blog/static/
# Webassets
.webassets-cache/

View file

@ -8,7 +8,6 @@
<plugin id="com.intellij.python.django" />
<plugin id="com.koxudaxi.ruff" />
<plugin id="com.leinardi.pycharm.mypy" />
<plugin id="com.mallowigi" />
<plugin id="com.nasller.CodeGlancePro" />
<plugin id="dev.meanmail.plugin.nginx-intellij-plugin" />
<plugin id="mobi.hsz.idea.gitignore" />

View file

@ -1,6 +1,6 @@
# eVibes
![LOGO](core/docs/images/evibes-big.png)
![LOGO](engine/core/docs/images/evibes-big.png)
eVibes — a lightweight, production-ready ecommerce backend. Storefront, product catalog, cart, and orders work out of the box. Minimal complexity, maximum flexibility — install, adjust to your needs, and start selling.
@ -87,7 +87,7 @@ eVibes — a lightweight, production-ready ecommerce backend. Storefront, pro
## Configuration
### Dockerfile
If you rely on locale mirrors, adjust Debian sources before running install scripts:
If you rely on locale mirrors, adjust Debian sources before running installation scripts:
```
RUN sed -i 's|https://deb.debian.org/debian|https://ftp.<locale>.debian.org/debian|g' /etc/apt/sources.list.d/debian.sources
```
@ -107,14 +107,7 @@ After generation, review and update secrets and credentials (API keys, DB passwo
1. @.your-domain.com
2. www.your-domain.com
3. api.your-domain.com
4. b2b.your-domain.com
5. prometheus.your-domain.com
- For local development, add hosts entries (development only):
```hosts
127.0.0.1 api.localhost
127.0.0.1 b2b.localhost
```
4. prometheus.your-domain.com
- Once running, access:
- API root / Admin redirect: http://api.localhost:8000/
@ -136,4 +129,4 @@ After generation, review and update secrets and credentials (API keys, DB passwo
This project is licensed under the terms of the LICENSE file included in this repository.
![FAVICON](core/docs/images/evibes.png)
![FAVICON](engine/core/docs/images/evibes.png)

View file

@ -1,3 +0,0 @@
import logging
logger = logging.getLogger("django")

View file

@ -1,88 +0,0 @@
from django.urls import include, path
from rest_framework.routers import DefaultRouter
from core.sitemaps import BrandSitemap, CategorySitemap, ProductSitemap, StaticPagesSitemap
from core.views import (
CacheOperatorView,
ContactUsView,
DownloadDigitalAssetView,
GlobalSearchView,
RequestCursedURLView,
SupportedLanguagesView,
WebsiteParametersView,
sitemap_detail,
sitemap_index,
)
from core.viewsets import (
AddressViewSet,
AttributeGroupViewSet,
BrandViewSet,
CategoryViewSet,
FeedbackViewSet,
OrderProductViewSet,
OrderViewSet,
ProductTagViewSet,
ProductViewSet,
PromoCodeViewSet,
PromotionViewSet,
StockViewSet,
VendorViewSet,
WishlistViewSet,
)
app_name = "core"
core_router = DefaultRouter()
core_router.register(r"products", ProductViewSet, basename="products")
core_router.register(r"orders", OrderViewSet, basename="orders")
core_router.register(r"wishlists", WishlistViewSet, basename="wishlists")
core_router.register(r"attribute_groups", AttributeGroupViewSet, basename="attribute_groups")
core_router.register(r"brands", BrandViewSet, basename="brands")
core_router.register(r"categories", CategoryViewSet, basename="categories")
core_router.register(r"vendors", VendorViewSet, basename="vendors")
core_router.register(r"feedbacks", FeedbackViewSet, basename="feedbacks")
core_router.register(r"stocks", StockViewSet, basename="stocks")
core_router.register(r"promo_codes", PromoCodeViewSet, basename="promo_codes")
core_router.register(r"promotions", PromotionViewSet, basename="promotions")
core_router.register(r"addresses", AddressViewSet, basename="addresses")
core_router.register(r"product_tags", ProductTagViewSet, basename="product_tags")
core_router.register(r"order_products", OrderProductViewSet, basename="order_products")
sitemaps = {
"static": StaticPagesSitemap,
"products": ProductSitemap,
"categories": CategorySitemap,
"brands": BrandSitemap,
}
urlpatterns = [
path("core/", include(core_router.urls)),
path(
"sitemap.xml",
sitemap_index,
{
"sitemaps": sitemaps,
"sitemap_url_name": "core:sitemap-detail",
},
name="sitemap-index",
),
path(
"sitemap-<section>.xml",
sitemap_detail,
{"sitemaps": sitemaps},
name="sitemap-detail",
),
path(
"sitemap-<section>-<int:page>.xml",
sitemap_detail,
{"sitemaps": sitemaps},
name="sitemap-detail",
),
path("download/<str:order_product_uuid>/", DownloadDigitalAssetView.as_view(), name="download_digital_asset"),
path("search/", GlobalSearchView.as_view(), name="global_search"),
path("app/cache/", CacheOperatorView.as_view(), name="cache_operator"),
path("app/languages/", SupportedLanguagesView.as_view(), name="supported_languages"),
path("app/parameters/", WebsiteParametersView.as_view(), name="parameters"),
path("app/contact_us/", ContactUsView.as_view(), name="contact_us"),
path("app/request_cursed_url/", RequestCursedURLView.as_view(), name="request_cursed_url"),
]

View file

@ -1,3 +0,0 @@
from typing import Any
urlpatterns: list[Any] = []

View file

@ -1,39 +0,0 @@
import logging
from contextlib import suppress
from typing import Type
from celery import current_task
from celery.utils.log import get_task_logger
from core.models import Vendor
from core.vendors import AbstractVendor
from evibes.utils.misc import create_object
sync_logger = logging.getLogger("django")
async_logger = get_task_logger(__name__)
def _in_celery_task() -> bool:
task = current_task
with suppress(Exception):
return bool(task and getattr(task, "request", None) and getattr(task.request, "id", None))
return False
def get_vendors_integrations(name: str | None = None) -> list[Type[AbstractVendor]]:
vendors_integrations: list[Type[AbstractVendor]] = []
vendors = Vendor.objects.filter(is_active=True, integration_path__isnull=False)
if name:
vendors = vendors.filter(name=name)
logger = async_logger if _in_celery_task() else sync_logger
for vendor in vendors:
try:
module_name, class_name = vendor.integration_path.rsplit(".", 1)
vendors_integrations.append(create_object(module_name, class_name))
except Exception as e:
logger.warning("Couldn't load integration for vendor %s: %s", vendor.name, e)
return vendors_integrations

View file

@ -1,7 +1,7 @@
from django.contrib.admin import ModelAdmin, register
from django_summernote.admin import SummernoteModelAdminMixin
from core.admin import ActivationActionsMixin, FieldsetsMixin
from engine.core.admin import ActivationActionsMixin, FieldsetsMixin
from .models import Post, PostTag
@ -13,7 +13,7 @@ class PostAdmin(SummernoteModelAdminMixin, FieldsetsMixin, ActivationActionsMixi
search_fields = ("title", "content", "slug")
filter_horizontal = ("tags",)
date_hierarchy = "created"
autocomplete_fields = ("author", "tags")
autocomplete_fields = ("tags",)
readonly_fields = (
"uuid",
"slug",
@ -29,6 +29,7 @@ class PostAdmin(SummernoteModelAdminMixin, FieldsetsMixin, ActivationActionsMixi
"file",
]
relation_fields = [
"author",
"tags",
]

View file

@ -4,10 +4,10 @@ from django.utils.translation import gettext_lazy as _
class BlogConfig(AppConfig):
default_auto_field = "django.db.models.BigAutoField"
name = "blog"
name = "engine.blog"
verbose_name = _("blog")
# noinspection PyUnresolvedReferences
def ready(self) -> None:
import blog.elasticsearch.documents
import blog.signals # noqa: F401
import engine.blog.elasticsearch.documents
import engine.blog.signals # noqa: F401

View file

@ -2,8 +2,8 @@ from django.utils.translation import gettext_lazy as _
from drf_spectacular.utils import extend_schema
from rest_framework import status
from core.docs.drf import BASE_ERRORS
from blog.serializers import PostSerializer
from engine.core.docs.drf import BASE_ERRORS
from engine.blog.serializers import PostSerializer
POST_SCHEMA = {
"list": extend_schema(

View file

@ -1,9 +1,9 @@
from django_elasticsearch_dsl import fields
from django_elasticsearch_dsl.registries import registry
from blog.models import Post
from core.elasticsearch import COMMON_ANALYSIS, ActiveOnlyMixin, add_multilang_fields
from core.elasticsearch.documents import BaseDocument
from engine.blog.models import Post
from engine.core.elasticsearch import COMMON_ANALYSIS, ActiveOnlyMixin, add_multilang_fields
from engine.core.elasticsearch.documents import BaseDocument
class PostDocument(ActiveOnlyMixin, BaseDocument): # type: ignore [misc]

View file

@ -1,7 +1,7 @@
from django_filters import CharFilter, FilterSet, OrderingFilter, UUIDFilter
from blog.models import Post
from core.filters import CaseInsensitiveListFilter
from engine.blog.models import Post
from engine.core.filters import CaseInsensitiveListFilter
class PostFilter(FilterSet): # type: ignore [misc]

View file

@ -2,7 +2,7 @@ import graphene
from graphene import relay
from graphene_django import DjangoObjectType
from blog.models import Post, PostTag
from engine.blog.models import Post, PostTag
class PostType(DjangoObjectType):

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,93 +13,92 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "المدونة"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "سرد جميع المشاركات (للقراءة فقط)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "استرداد منشور واحد (للقراءة فقط)"
#: blog/models.py:12
#: engine/blog/models.py:13
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 ""
"يمثل نموذج منشور المدونة. تحدد فئة المشاركة بنية وسلوك مشاركة المدونة. "
"وتتضمن سمات للمؤلف والعنوان والمحتوى ومرفق الملف الاختياري والسبيكة "
"والعلامات المرتبطة بها. يفرض الصنف قيودًا مثل طلب إما محتوى أو مرفق ملف ولكن"
" ليس كلاهما في نفس الوقت. كما أنها تدعم إنشاء سبيكة تلقائية بناءً على "
"العنوان."
"والعلامات المرتبطة بها. يفرض الصنف قيودًا مثل طلب إما محتوى أو مرفق ملف ولكن "
"ليس كلاهما في نفس الوقت. كما أنها تدعم إنشاء سبيكة تلقائية بناءً على العنوان."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "عنوان المنشور"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "العنوان"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "هي صفحة ثابتة"
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"هل هذا منشور لصفحة ذات عنوان URL ثابت (على سبيل المثال '/مساعدة/التسليم'؟)"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "المنشور"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "المنشورات"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"ملفات تخفيض السعر غير مدعومة Yer - استخدم محتوى تخفيض السعر بدلاً من ذلك!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "يجب توفير ملف ترميز أو محتوى ترميز مخفض - متنافيان"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "معرّف العلامة الداخلي لعلامة المنشور"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "اسم العلامة"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "اسم سهل الاستخدام لعلامة المنشور"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "اسم عرض العلامة"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "علامة المشاركة"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "علامات المشاركة"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,96 +13,96 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Seznam všech příspěvků (pouze pro čtení)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Získání jednoho příspěvku (pouze pro čtení)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Název příspěvku"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Název"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "je statická stránka"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Příspěvek"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Příspěvky"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Soubory Markdown nejsou podporovány - místo toho použijte obsah Markdown!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"musí být poskytnut soubor markdown nebo obsah markdown - vzájemně se "
"vylučují."
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "interní identifikátor tagu pro tag příspěvku"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Název štítku"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Uživatelsky přívětivý název pro značku příspěvku"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Zobrazení názvu štítku"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Označení příspěvku"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Štítky příspěvků"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -111,8 +111,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 "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,94 +13,94 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Vis alle indlæg (skrivebeskyttet)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Hent et enkelt indlæg (skrivebeskyttet)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Indlæggets titel"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titel"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "er en statisk side"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Indlæg"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Indlæg"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown-filer understøttes ikke - brug markdown-indhold i stedet!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"en markdown-fil eller markdown-indhold skal leveres - gensidigt udelukkende"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "intern tag-identifikator for indlægs-tagget"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tag-navn"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Brugervenligt navn til posttagget"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Navn på tag-visning"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Tag til indlæg"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tags til indlæg"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -113,6 +113,5 @@ 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'."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Alle Beiträge auflisten (schreibgeschützt)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Einen einzelnen Beitrag abrufen (schreibgeschützt)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,70 +42,70 @@ msgstr ""
"unterstützt auch die automatische Slug-Generierung auf der Grundlage des "
"Titels."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Titel des Beitrags"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titel"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "ist eine statische Seite"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Beitrag"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Beiträge"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Markdown-Dateien werden nicht unterstützt - verwenden Sie stattdessen "
"Markdown-Inhalte!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"eine Markdown-Datei oder ein Markdown-Inhalt muss bereitgestellt werden - "
"beide schließen sich gegenseitig aus"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "interner Tag-Bezeichner für den Post-Tag"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tag name"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Benutzerfreundlicher Name für das Post-Tag"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Tag-Anzeigename"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Tag eintragen"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tags eintragen"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -119,5 +119,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."

View file

@ -2,12 +2,12 @@
# Copyright (C) 2025 EGOR <FUREUNOIR> GORBUNOV
# This file is distributed under the same license as the EVIBES package.
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -17,93 +17,93 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "List all posts (read-only)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Retrieve a single post (read-only)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Post's title"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Title"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "is static page"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Post"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Posts"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown files are not supported yer - use markdown content instead!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "internal tag identifier for the post tag"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tag name"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "User-friendly name for the post tag"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Tag display name"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Post tag"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Post tags"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,93 +13,93 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "List all posts (read-only)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Retrieve a single post (read-only)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Post's title"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Title"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "is static page"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Post"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Posts"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown files are not supported yer - use markdown content instead!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"a markdown file or markdown content must be provided - mutually exclusive"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "internal tag identifier for the post tag"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tag name"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "User-friendly name for the post tag"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Tag display name"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Post tag"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Post tags"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Listar todos los mensajes (sólo lectura)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Recuperar una única entrada (sólo lectura)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,69 +41,69 @@ msgstr ""
"adjunto, pero no ambos simultáneamente. También admite la generación "
"automática de slug a partir del título."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Título del mensaje"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Título"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "es una página estática"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Publicar en"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Puestos"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"No se admiten archivos Markdown - ¡utiliza contenido Markdown en su lugar!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"se debe proporcionar un archivo markdown o contenido markdown - mutuamente "
"excluyentes"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "identificador interno de la etiqueta post"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nombre de la etiqueta"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Nombre fácil de usar para la etiqueta de la entrada"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Nombre de la etiqueta"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Etiqueta postal"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Etiquetas"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -115,7 +115,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\"."

View file

@ -2,12 +2,12 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -16,19 +16,19 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr ""
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr ""
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr ""
#: blog/models.py:12
#: engine/blog/models.py:13
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,64 +38,64 @@ msgid ""
"title."
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr ""
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr ""
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr ""
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr ""
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr ""
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr ""
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr ""
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr ""
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr ""
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr ""
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Liste de tous les messages (en lecture seule)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Récupérer un seul message (en lecture seule)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,70 +42,70 @@ msgstr ""
"simultanément. Elle prend également en charge la génération automatique "
"d'une balise en fonction du titre."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Titre du message"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titre"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "est une page statique"
#: blog/models.py:69
#: engine/blog/models.py:70
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`) ?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Poste"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Postes"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Les fichiers Markdown ne sont pas pris en charge - utilisez plutôt du "
"contenu Markdown !"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown 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"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "identifiant interne de la balise post"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nom du jour"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Nom convivial pour la balise post"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Nom d'affichage de l'étiquette"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Tag de poste"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tags de la poste"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -114,8 +114,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 "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,90 +13,90 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "בלוג"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "הצג את כל ההודעות (לקריאה בלבד)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "איתור פוסט בודד (לקריאה בלבד)"
#: blog/models.py:12
#: engine/blog/models.py:13
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 על סמך הכותרת."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "כותרת הפוסט"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "כותרת"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "הוא דף סטטי"
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "האם זו הודעה לדף עם כתובת URL סטטית (למשל `/help/delivery`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "פוסט"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "פוסטים"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "קובצי Markdown אינם נתמכים עדיין - השתמש בתוכן Markdown במקום!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "יש לספק קובץ markdown או תוכן markdown - באופן בלעדי"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "מזהה תגיות פנימי עבור תגיות הפוסט"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "שם היום"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "שם ידידותי למשתמש עבור תגיות הפוסט"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "שם תצוגה של התג"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "תגית פוסט"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "תגיות פוסט"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -105,7 +105,7 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"מכיל פעולות לניהול ואחזור ישויות Post במערך תצוגה של מודל לקריאה בלבד. מחלקה"
" זו מותאמת לטיפול באובייקטי Post פעילים ומאפשרת סינון על בסיס מסננים "
"מוגדרים. היא משתלבת במערכת הסינון האחורית של Django ומבטיחה שהפעולות תואמות "
"את ההרשאות המוגדרות. מערך התצוגה כולל גם תצורת הרשאה נוספת ל'אחזור'."
"מכיל פעולות לניהול ואחזור ישויות Post במערך תצוגה של מודל לקריאה בלבד. מחלקה "
"זו מותאמת לטיפול באובייקטי Post פעילים ומאפשרת סינון על בסיס מסננים מוגדרים. "
"היא משתלבת במערכת הסינון האחורית של Django ומבטיחה שהפעולות תואמות את "
"ההרשאות המוגדרות. מערך התצוגה כולל גם תצורת הרשאה נוספת ל'אחזור'."

View file

@ -2,12 +2,12 @@
# Copyright (C) 2025 EGOR <FUREUNOIR> GORBUNOV
# This file is distributed under the same license as the EVIBES package.
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -16,19 +16,19 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr ""
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr ""
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr ""
#: blog/models.py:12
#: engine/blog/models.py:13
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,64 +38,64 @@ msgid ""
"title."
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr ""
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr ""
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr ""
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr ""
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr ""
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr ""
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr ""
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr ""
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr ""
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr ""
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -2,12 +2,12 @@
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -16,19 +16,19 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr ""
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr ""
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr ""
#: blog/models.py:12
#: engine/blog/models.py:13
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,64 +38,64 @@ msgid ""
"title."
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr ""
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr ""
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr ""
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr ""
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr ""
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr ""
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr ""
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr ""
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr ""
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr ""
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,98 +13,98 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Daftar semua postingan (hanya-baca)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Mengambil satu postingan (hanya-baca)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Judul postingan"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Judul"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "adalah halaman statis"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Pos"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Posting"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown 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!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"file penurunan harga atau konten penurunan harga harus disediakan - tidak "
"boleh ada yang sama"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "pengidentifikasi tag internal untuk tag pos"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nama tag"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Nama yang mudah digunakan untuk tag postingan"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Nama tampilan tag"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Tag pos"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tag pos"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -113,8 +113,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 "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,96 +13,96 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Elenco di tutti i messaggi (solo lettura)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Recuperare un singolo post (solo lettura)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Titolo del post"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titolo"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "è una pagina statica"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Posta"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Messaggi"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "I file Markdown non sono supportati: usa invece i contenuti Markdown!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"deve essere fornito un file markdown o un contenuto markdown - si escludono "
"a vicenda"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "identificatore interno del tag post"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nome del tag"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Nome intuitivo per il tag del post"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Nome del tag"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Post tag"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tag dei post"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -113,8 +113,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'."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,88 +13,95 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "ブログ"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "すべての投稿をリストアップする(読み取り専用)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "単一の投稿を取得する(読み取り専用)"
#: blog/models.py:12
#: engine/blog/models.py:13
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 クラスはブログ記事の構造と動作を定義しま"
"す。著者、タイトル、内容、オプションの添付ファイル、スラッグ、関連タグの属性"
"を含みます。このクラスは、内容か添付ファイルのどちらかを要求するが、両方は同"
"時に要求しないといった制約を強制します。また、タイトルに基づくスラッグの自動"
"生成もサポートしています。"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "投稿タイトル"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "タイトル"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "は静的ページ"
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "これは静的URLのページ`/help/delivery`)への投稿ですか?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "ポスト"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "投稿"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "マークダウン・ファイルはサポートされていません - 代わりにマークダウン・コンテンツを使用してください!"
msgstr ""
"マークダウン・ファイルはサポートされていません - 代わりにマークダウン・コンテ"
"ンツを使用してください!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "マークダウン・ファイルまたはマークダウン・コンテンツを提供しなければならない。"
msgstr ""
"マークダウン・ファイルまたはマークダウン・コンテンツを提供しなければならな"
"い。"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "投稿タグの内部タグ識別子"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "タグ名"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "投稿タグのユーザーフレンドリーな名前"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "タグ表示名"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "投稿タグ"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "投稿タグ"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -103,7 +110,9 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"読み取り専用のモデルビューセットにおける Post エンティティの管理と取得のための操作をカプセル化します。このクラスは、アクティブな Post "
"オブジェクトを扱い、定義されたフィルタに基 づいてフィルタリングできるように調整されています。Django "
"のバックエンドのフィルタリングシステムと統合し、定義されたパーミッションに沿った操作を保証します。ビューセットには、追加の 'retrieve' "
"権限設定も含まれます。"
"読み取り専用のモデルビューセットにおける Post エンティティの管理と取得のため"
"の操作をカプセル化します。このクラスは、アクティブな Post オブジェクトを扱"
"い、定義されたフィルタに基 づいてフィルタリングできるように調整されています。"
"Django のバックエンドのフィルタリングシステムと統合し、定義されたパーミッショ"
"ンに沿った操作を保証します。ビューセットには、追加の 'retrieve' 権限設定も含"
"まれます。"

View file

@ -2,12 +2,12 @@
# Copyright (C) 2025 EGOR <FUREUNOIR> GORBUNOV
# This file is distributed under the same license as the EVIBES package.
# EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>, 2025.
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -16,19 +16,19 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr ""
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr ""
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr ""
#: blog/models.py:12
#: engine/blog/models.py:13
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,64 +38,64 @@ msgid ""
"title."
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr ""
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr ""
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr ""
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr ""
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr ""
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr ""
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr ""
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr ""
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr ""
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr ""
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr ""
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,89 +13,92 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "블로그"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "모든 게시물 나열(읽기 전용)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "단일 게시물 검색(읽기 전용)"
#: blog/models.py:12
#: engine/blog/models.py:13
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 클래스는 블로그 글의 구조와 동작을 정의합니"
"다. 여기에는 작성자, 제목, 콘텐츠, 선택적 파일 첨부, 슬러그 및 관련 태그에 대"
"한 속성이 포함됩니다. 이 클래스는 콘텐츠 또는 파일 첨부 중 하나만 요구하고 "
"둘 다 동시에 요구하지 않는 등의 제약 조건을 적용합니다. 또한 제목에 따른 자"
"동 슬러그 생성도 지원합니다."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "게시물 제목"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "제목"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "는 정적 페이지입니다."
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "정적 URL(예: `/help/delivery`)이 있는 페이지의 게시물인가요?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "게시물"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "게시물"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "마크다운 파일은 지원되지 않습니다 예 - 대신 마크다운 콘텐츠를 사용하세요!"
msgstr ""
"마크다운 파일은 지원되지 않습니다 예 - 대신 마크다운 콘텐츠를 사용하세요!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr "마크다운 파일 또는 마크다운 콘텐츠가 제공되어야 합니다."
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "게시물 태그의 내부 태그 식별자"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "태그 이름"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "게시물 태그의 사용자 친화적인 이름"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "태그 표시 이름"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "게시물 태그"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "게시물 태그"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -104,6 +107,8 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"읽기 전용 모델 보기 집합에서 Post 엔티티를 관리하고 검색하기 위한 작업을 캡슐화합니다. 이 클래스는 활성 상태인 Post 개체를 "
"처리하도록 맞춤화되어 있으며 정의된 필터를 기반으로 필터링을 허용합니다. 이 클래스는 장고의 백엔드 필터링 시스템과 통합되며 정의된 "
"권한에 따라 작업이 이루어지도록 합니다. 보기 세트에는 추가 '검색' 권한 구성도 포함되어 있습니다."
"읽기 전용 모델 보기 집합에서 Post 엔티티를 관리하고 검색하기 위한 작업을 캡슐"
"화합니다. 이 클래스는 활성 상태인 Post 개체를 처리하도록 맞춤화되어 있으며 정"
"의된 필터를 기반으로 필터링을 허용합니다. 이 클래스는 장고의 백엔드 필터링 시"
"스템과 통합되며 정의된 권한에 따라 작업이 이루어지도록 합니다. 보기 세트에는 "
"추가 '검색' 권한 구성도 포함되어 있습니다."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Alle berichten weergeven (alleen-lezen)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Een enkel bericht ophalen (alleen-lezen)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,70 +41,70 @@ msgstr ""
"maar niet beide tegelijk. Het ondersteunt ook het automatisch genereren van "
"slugs op basis van de titel."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Titel van de post"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titel"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "is statische pagina"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Plaats"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Berichten"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Markdown-bestanden worden niet ondersteund - gebruik in plaats daarvan "
"markdown-inhoud!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown 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"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "interne tagidentifier voor de posttag"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tag naam"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Gebruiksvriendelijke naam voor de posttag"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Tag weergavenaam"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Post tag"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Post tags"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blogg"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Liste over alle innlegg (skrivebeskyttet)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Hent et enkelt innlegg (skrivebeskyttet)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,66 +41,66 @@ msgstr ""
"må være med, men ikke begge deler samtidig. Den støtter også automatisk "
"generering av slug basert på tittelen."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Innleggets tittel"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Title"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "er statisk side"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Post"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Innlegg"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown-filer støttes ikke - bruk markdown-innhold i stedet!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"en markdown-fil eller markdown-innhold må oppgis - gjensidig utelukkende"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "intern tagg-identifikator for innleggstaggen"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tagg navn"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Brukervennlig navn for innleggstaggen"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Visningsnavn for taggen"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Post tag"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tagger for innlegg"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -114,5 +114,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."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Lista wszystkich postów (tylko do odczytu)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Pobieranie pojedynczego wpisu (tylko do odczytu)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,69 +41,68 @@ msgstr ""
"nie obu jednocześnie. Obsługuje również automatyczne generowanie slug na "
"podstawie tytułu."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Tytuł postu"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Tytuł"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "jest stroną statyczną"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Post"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Posty"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Pliki Markdown nie są obsługiwane - zamiast tego użyj zawartości Markdown!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"należy dostarczyć plik markdown lub zawartość markdown - wzajemnie się "
"wykluczające"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "wewnętrzny identyfikator tagu posta"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nazwa tagu"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Przyjazna dla użytkownika nazwa tagu posta"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Wyświetlana nazwa znacznika"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Tag posta"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tagi postów"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -113,8 +112,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\"."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,97 +13,96 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Listar todas as postagens (somente leitura)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Recuperar um único post (somente leitura)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Título da postagem"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Título"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "é uma página estática"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Postar"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Publicações"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown 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!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"um arquivo ou conteúdo de markdown deve ser fornecido - mutuamente exclusivo"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "identificador de tag interno para a tag de postagem"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nome da etiqueta"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Nome de fácil utilização para a tag de postagem"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Nome de exibição da tag"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Etiqueta de postagem"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Tags de postagem"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Listează toate postările (doar pentru citire)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Recuperează o singură postare (read-only)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,70 +41,69 @@ msgstr ""
"fișier atașat, dar nu ambele simultan. De asemenea, acceptă generarea "
"automată a slug-ului pe baza titlului."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Titlul postului"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titlul"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "este o pagină statică"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Post"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Mesaje"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown 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!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"trebuie furnizat un fișier markdown sau conținut markdown - se exclud "
"reciproc"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "identificator intern de etichetă pentru eticheta postului"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Nume etichetă"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Nume ușor de utilizat pentru eticheta postului"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Nume afișare etichetă"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Etichetă post"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Etichete poștale"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -113,8 +112,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 "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Блог"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Список всех сообщений (только для чтения)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Получение одного сообщения (только для чтения)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,69 +41,69 @@ msgstr ""
"вложение файла, но не то и другое одновременно. Он также поддерживает "
"автоматическую генерацию slug на основе заголовка."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Заголовок сообщения"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Название"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "это статическая страница"
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr ""
"Это сообщение для страницы со статическим URL (например, `/help/delivery`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Пост"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Посты"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Файлы в формате Markdown не поддерживаются - используйте вместо них "
"содержимое в формате Markdown!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"необходимо предоставить файл разметки или содержимое разметки - "
"взаимоисключающие варианты"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "внутренний идентификатор тега для тега post"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Название тега"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Удобное для пользователя название тега поста"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Отображаемое имя тега"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Тэг поста"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Тэги постов"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -114,8 +114,8 @@ msgid ""
msgstr ""
"Инкапсулирует операции по управлению и получению объектов Post в наборе "
"представлений модели, доступном только для чтения. Этот класс предназначен "
"для работы с активными объектами Post и позволяет осуществлять фильтрацию на"
" основе заданных фильтров. Он интегрируется с системой фильтрации бэкенда "
"для работы с активными объектами Post и позволяет осуществлять фильтрацию на "
"основе заданных фильтров. Он интегрируется с системой фильтрации бэкенда "
"Django и обеспечивает соответствие операций заданным разрешениям. Набор "
"представлений также включает дополнительную конфигурацию разрешения "
"'retrieve'."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blogg"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Lista alla inlägg (skrivskyddad)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Hämta ett enskilt inlägg (skrivskyddat)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,67 +41,67 @@ msgstr ""
"filbilaga krävs, men inte båda samtidigt. Den stöder också automatisk "
"sluggenerering baserat på titeln."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Inläggets titel"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Titel"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "är statisk sida"
#: blog/models.py:69
#: engine/blog/models.py:70
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`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Post"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Inlägg"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "Markdown-filer stöds inte - använd markdown-innehåll istället!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"en markdown-fil eller markdown-innehåll måste tillhandahållas - ömsesidigt "
"uteslutande"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "intern taggidentifierare för inläggstaggen"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tagg namn"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Användarvänligt namn för inläggstaggen"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Taggens visningsnamn"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Post tagg"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Taggar för inlägg"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -115,5 +115,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\"."

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,95 +13,90 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "บล็อก"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "แสดงรายการโพสต์ทั้งหมด (อ่านอย่างเดียว)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "ดึงโพสต์เดียว (อ่านอย่างเดียว)"
#: blog/models.py:12
#: engine/blog/models.py:13
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 โดยอัตโนมัติจากชื่อเรื่อง"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "ชื่อโพสต์"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "ชื่อเรื่อง"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "เป็นหน้าคงที่"
#: blog/models.py:69
#: engine/blog/models.py:70
msgid "is this a post for a page with static URL (e.g. `/help/delivery`)?"
msgstr "นี่คือโพสต์สำหรับหน้าที่มี URL แบบคงที่ (เช่น `/help/delivery`)?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "โพสต์"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "โพสต์"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr "ไฟล์มาร์กดาวน์ยังไม่รองรับในตอนนี้ - กรุณาใช้เนื้อหาแบบมาร์กดาวน์แทน!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown content must be provided - mutually exclusive"
msgstr ""
"ไฟล์มาร์กดาวน์หรือเนื้อหาแบบมาร์กดาวน์ต้องได้รับการจัดเตรียมไว้ - "
"ไม่สามารถใช้ร่วมกันได้"
msgstr "ไฟล์มาร์กดาวน์หรือเนื้อหาแบบมาร์กดาวน์ต้องได้รับการจัดเตรียมไว้ - ไม่สามารถใช้ร่วมกันได้"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "ตัวระบุแท็กภายในสำหรับแท็กโพสต์"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "ชื่อวัน"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "ชื่อที่ใช้งานได้ง่ายสำหรับแท็กโพสต์"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "แสดงชื่อแท็ก"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "โพสต์แท็ก"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "ป้ายกำกับโพสต์"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -110,9 +105,8 @@ msgid ""
"defined permissions. The view set also includes an additional 'retrieve' "
"permission configuration."
msgstr ""
"รวบรวมการดำเนินการสำหรับการจัดการและดึงข้อมูลเอนทิตีโพสต์ในชุดมุมมองแบบอ่านอย่างเดียว"
" "
"คลาสนี้ถูกออกแบบมาเพื่อจัดการกับวัตถุโพสต์ที่ใช้งานอยู่และอนุญาตให้มีการกรองตามตัวกรองที่กำหนดไว้"
" มันผสานรวมกับระบบการกรองแบ็กเอนด์ของ Django "
"และทำให้แน่ใจว่าการดำเนินการสอดคล้องกับสิทธิ์ที่กำหนดไว้ "
"ชุดมุมมองยังรวมถึงการกำหนดค่าสิทธิ์ 'ดึงข้อมูล' เพิ่มเติมด้วย"
"รวบรวมการดำเนินการสำหรับการจัดการและดึงข้อมูลเอนทิตีโพสต์ในชุดมุมมองแบบอ่านอย่างเดียว "
"คลาสนี้ถูกออกแบบมาเพื่อจัดการกับวัตถุโพสต์ที่ใช้งานอยู่และอนุญาตให้มีการกรองตามตัวกรองที่กำหนดไว้ "
"มันผสานรวมกับระบบการกรองแบ็กเอนด์ของ Django "
"และทำให้แน่ใจว่าการดำเนินการสอดคล้องกับสิทธิ์ที่กำหนดไว้ ชุดมุมมองยังรวมถึงการกำหนดค่าสิทธิ์ "
"'ดึงข้อมูล' เพิ่มเติมด้วย"

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,98 +13,97 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Tüm gönderileri listele (salt okunur)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Tek bir gönderiyi al (salt okunur)"
#: blog/models.py:12
#: engine/blog/models.py:13
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."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Gönderinin başlığı"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Başlık"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "statik sayfadır"
#: blog/models.py:69
#: engine/blog/models.py:70
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?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Posta"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Mesajlar"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Markdown dosyaları desteklenmiyor yer - bunun yerine markdown içeriği "
"kullanın!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown 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"
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "gönderi etiketi için dahili etiket tanımlayıcısı"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Etiket adı"
#: blog/models.py:120
#: engine/blog/models.py:121
msgid "user-friendly name for the post tag"
msgstr "Gönderi etiketi için kullanıcı dostu ad"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Etiket görünen adı"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Mesaj etiketi"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Gönderi etiketleri"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "

View file

@ -1,9 +1,9 @@
#
#
msgid ""
msgstr ""
"Project-Id-Version: EVIBES 3.0.0\n"
"Project-Id-Version: EVIBES 2025.4\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-10-26 19:18+0300\n"
"POT-Creation-Date: 2025-11-10 15:53+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"
@ -13,26 +13,26 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: blog/apps.py:8
#: engine/blog/apps.py:8
msgid "blog"
msgstr "Blog"
#: blog/docs/drf/viewsets.py:10
#: engine/blog/docs/drf/viewsets.py:10
msgid "list all posts (read-only)"
msgstr "Danh sách tất cả các bài đăng (chỉ đọc)"
#: blog/docs/drf/viewsets.py:14
#: engine/blog/docs/drf/viewsets.py:14
msgid "retrieve a single post (read-only)"
msgstr "Lấy một bài đăng duy nhất (chỉ đọc)"
#: blog/models.py:12
#: engine/blog/models.py:13
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,69 +40,69 @@ 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 đề."
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "post title"
msgstr "Tiêu đề bài đăng"
#: blog/models.py:23
#: engine/blog/models.py:24
msgid "title"
msgstr "Tiêu đề"
#: blog/models.py:68
#: engine/blog/models.py:69
msgid "is static page"
msgstr "là trang tĩnh"
#: blog/models.py:69
#: engine/blog/models.py:70
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?"
#: blog/models.py:76
#: engine/blog/models.py:77
msgid "post"
msgstr "Bài đăng"
#: blog/models.py:77
#: engine/blog/models.py:78
msgid "posts"
msgstr "Bài đăng"
#: blog/models.py:81
#: engine/blog/models.py:82
msgid "markdown files are not supported yet - use markdown content instead"
msgstr ""
"Tệp Markdown hiện chưa được hỗ trợ - hãy sử dụng nội dung Markdown thay thế!"
#: blog/models.py:83
#: engine/blog/models.py:84
msgid ""
"a markdown file or markdown 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."
#: blog/models.py:115
#: engine/blog/models.py:116
msgid "internal tag identifier for the post tag"
msgstr "Mã định danh thẻ nội bộ cho thẻ bài viết"
#: blog/models.py:116
#: engine/blog/models.py:117
msgid "tag name"
msgstr "Tên ngày"
#: blog/models.py:120
#: engine/blog/models.py:121
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"
#: blog/models.py:121
#: engine/blog/models.py:122
msgid "tag display name"
msgstr "Hiển thị tên thẻ"
#: blog/models.py:129
#: engine/blog/models.py:130
msgid "post tag"
msgstr "Thẻ bài viết"
#: blog/models.py:130
#: engine/blog/models.py:131
msgid "post tags"
msgstr "Thẻ bài viết"
#: blog/viewsets.py:16
#: engine/blog/viewsets.py:16
msgid ""
"Encapsulates operations for managing and retrieving Post entities in a read-"
"only model view set. This class is tailored to handle Post objects that are "
@ -113,7 +113,6 @@ 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."

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