Merge branch 'main' into storefront-nuxt
This commit is contained in:
commit
4a99d51077
229 changed files with 43727 additions and 6028 deletions
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
BIN
blog/locale/fa_IR/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/fa_IR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
70
blog/locale/fa_IR/LC_MESSAGES/django.po
Normal file
70
blog/locale/fa_IR/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# 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-09-19 15:04+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"
|
||||||
|
"Language: \n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
msgid "markdown files are not supported yet - use markdown content instead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:90
|
||||||
|
msgid ""
|
||||||
|
"a markdown file or markdown content must be provided - mutually exclusive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr ""
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
BIN
blog/locale/he_IL/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/he_IL/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
67
blog/locale/he_IL/LC_MESSAGES/django.po
Normal file
67
blog/locale/he_IL/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,67 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: he-il\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "בלוג"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "כותרת הפוסט"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "כותרת"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "פוסט"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "פוסטים"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
msgid "markdown files are not supported yet - use markdown content instead"
|
||||||
|
msgstr "קובצי Markdown אינם נתמכים עדיין - השתמש בתוכן Markdown במקום!"
|
||||||
|
|
||||||
|
#: blog/models.py:90
|
||||||
|
msgid ""
|
||||||
|
"a markdown file or markdown content must be provided - mutually exclusive"
|
||||||
|
msgstr "יש לספק קובץ markdown או תוכן markdown - באופן בלעדי"
|
||||||
|
|
||||||
|
#: blog/models.py:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "מזהה תגיות פנימי עבור תגיות הפוסט"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "שם היום"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "שם ידידותי למשתמש עבור תגיות הפוסט"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "שם תצוגה של התג"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "תגית פוסט"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "תגיות פוסט"
|
||||||
|
|
@ -7,7 +7,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
BIN
blog/locale/hr_HR/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/hr_HR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
70
blog/locale/hr_HR/LC_MESSAGES/django.po
Normal file
70
blog/locale/hr_HR/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
# SOME DESCRIPTIVE TITLE.
|
||||||
|
# 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-09-19 15:04+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"
|
||||||
|
"Language: \n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
msgid "markdown files are not supported yet - use markdown content instead"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:90
|
||||||
|
msgid ""
|
||||||
|
"a markdown file or markdown content must be provided - mutually exclusive"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr ""
|
||||||
BIN
blog/locale/id_ID/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/id_ID/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
71
blog/locale/id_ID/LC_MESSAGES/django.po
Normal file
71
blog/locale/id_ID/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,71 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: id-id\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "Blog"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "Judul postingan"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "Judul"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "Pos"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "Posting"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
msgid "markdown files are not supported yet - use markdown content instead"
|
||||||
|
msgstr ""
|
||||||
|
"File penurunan harga tidak didukung - gunakan konten penurunan harga sebagai"
|
||||||
|
" gantinya!"
|
||||||
|
|
||||||
|
#: blog/models.py:90
|
||||||
|
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:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "pengidentifikasi tag internal untuk tag pos"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "Nama tag"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "Nama yang mudah digunakan untuk tag postingan"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "Nama tampilan tag"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "Tag pos"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "Tag pos"
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
BIN
blog/locale/ko_KR/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/ko_KR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
67
blog/locale/ko_KR/LC_MESSAGES/django.po
Normal file
67
blog/locale/ko_KR/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,67 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: ko-kr\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "블로그"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "게시물 제목"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "제목"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "게시물"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "게시물"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
msgid "markdown files are not supported yet - use markdown content instead"
|
||||||
|
msgstr "마크다운 파일은 지원되지 않습니다 예 - 대신 마크다운 콘텐츠를 사용하세요!"
|
||||||
|
|
||||||
|
#: blog/models.py:90
|
||||||
|
msgid ""
|
||||||
|
"a markdown file or markdown content must be provided - mutually exclusive"
|
||||||
|
msgstr "마크다운 파일 또는 마크다운 콘텐츠가 제공되어야 합니다."
|
||||||
|
|
||||||
|
#: blog/models.py:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "게시물 태그의 내부 태그 식별자"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "태그 이름"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "게시물 태그의 사용자 친화적인 이름"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "태그 표시 이름"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "게시물 태그"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "게시물 태그"
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
BIN
blog/locale/no_NO/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/no_NO/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
68
blog/locale/no_NO/LC_MESSAGES/django.po
Normal file
68
blog/locale/no_NO/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,68 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: no-no\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "Blogg"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "Innleggets tittel"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "Title"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "Post"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "Innlegg"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
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:90
|
||||||
|
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:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "intern tagg-identifikator for innleggstaggen"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "Tagg navn"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "Brukervennlig navn for innleggstaggen"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "Visningsnavn for taggen"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "Post tag"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "Tagger for innlegg"
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
BIN
blog/locale/sv_SE/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/sv_SE/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
69
blog/locale/sv_SE/LC_MESSAGES/django.po
Normal file
69
blog/locale/sv_SE/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: sv-se\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "Blogg"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "Inläggets titel"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "Titel"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "Post"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "Inlägg"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
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:90
|
||||||
|
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:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "intern taggidentifierare för inläggstaggen"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "Tagg namn"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "Användarvänligt namn för inläggstaggen"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "Taggens visningsnamn"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "Post tagg"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "Taggar för inlägg"
|
||||||
BIN
blog/locale/th_TH/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/th_TH/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
69
blog/locale/th_TH/LC_MESSAGES/django.po
Normal file
69
blog/locale/th_TH/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: th-th\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "บล็อก"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "ชื่อโพสต์"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "ชื่อเรื่อง"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "โพสต์"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "โพสต์"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
msgid "markdown files are not supported yet - use markdown content instead"
|
||||||
|
msgstr "ไฟล์มาร์กดาวน์ยังไม่รองรับในตอนนี้ - กรุณาใช้เนื้อหาแบบมาร์กดาวน์แทน!"
|
||||||
|
|
||||||
|
#: blog/models.py:90
|
||||||
|
msgid ""
|
||||||
|
"a markdown file or markdown content must be provided - mutually exclusive"
|
||||||
|
msgstr ""
|
||||||
|
"ไฟล์มาร์กดาวน์หรือเนื้อหาแบบมาร์กดาวน์ต้องได้รับการจัดเตรียมไว้ - "
|
||||||
|
"ไม่สามารถใช้ร่วมกันได้"
|
||||||
|
|
||||||
|
#: blog/models.py:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "ตัวระบุแท็กภายในสำหรับแท็กโพสต์"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "ชื่อวัน"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "ชื่อที่ใช้งานได้ง่ายสำหรับแท็กโพสต์"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "แสดงชื่อแท็ก"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "โพสต์แท็ก"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "ป้ายกำกับโพสต์"
|
||||||
BIN
blog/locale/tr_TR/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/tr_TR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
71
blog/locale/tr_TR/LC_MESSAGES/django.po
Normal file
71
blog/locale/tr_TR/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,71 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: tr-tr\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "Blog"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "Gönderinin başlığı"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "Başlık"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "Posta"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "Mesajlar"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
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:90
|
||||||
|
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"
|
||||||
|
|
||||||
|
#: blog/models.py:122
|
||||||
|
msgid "internal tag identifier for the post tag"
|
||||||
|
msgstr "gönderi etiketi için dahili etiket tanımlayıcısı"
|
||||||
|
|
||||||
|
#: blog/models.py:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "Etiket adı"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
msgid "user-friendly name for the post tag"
|
||||||
|
msgstr "Gönderi etiketi için kullanıcı dostu ad"
|
||||||
|
|
||||||
|
#: blog/models.py:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "Etiket görünen adı"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "Mesaj etiketi"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "Gönderi etiketleri"
|
||||||
BIN
blog/locale/vi_VN/LC_MESSAGES/django.mo
Normal file
BIN
blog/locale/vi_VN/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
70
blog/locale/vi_VN/LC_MESSAGES/django.po
Normal file
70
blog/locale/vi_VN/LC_MESSAGES/django.po
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
#
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2025-09-19 15:04+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"
|
||||||
|
"Language: vi-vn\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: blog/apps.py:8
|
||||||
|
msgid "blog"
|
||||||
|
msgstr "Blog"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "post title"
|
||||||
|
msgstr "Tiêu đề bài đăng"
|
||||||
|
|
||||||
|
#: blog/models.py:36
|
||||||
|
msgid "title"
|
||||||
|
msgstr "Tiêu đề"
|
||||||
|
|
||||||
|
#: blog/models.py:83
|
||||||
|
msgid "post"
|
||||||
|
msgstr "Bài đăng"
|
||||||
|
|
||||||
|
#: blog/models.py:84
|
||||||
|
msgid "posts"
|
||||||
|
msgstr "Bài đăng"
|
||||||
|
|
||||||
|
#: blog/models.py:88
|
||||||
|
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:90
|
||||||
|
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:122
|
||||||
|
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:123
|
||||||
|
msgid "tag name"
|
||||||
|
msgstr "Tên ngày"
|
||||||
|
|
||||||
|
#: blog/models.py:127
|
||||||
|
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:128
|
||||||
|
msgid "tag display name"
|
||||||
|
msgstr "Hiển thị tên thẻ"
|
||||||
|
|
||||||
|
#: blog/models.py:136
|
||||||
|
msgid "post tag"
|
||||||
|
msgstr "Thẻ bài viết"
|
||||||
|
|
||||||
|
#: blog/models.py:137
|
||||||
|
msgid "post tags"
|
||||||
|
msgstr "Thẻ bài viết"
|
||||||
|
|
@ -3,7 +3,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: EVIBES 3.0.0\n"
|
"Project-Id-Version: EVIBES 3.0.0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-09-13 15:25+0300\n"
|
"POT-Creation-Date: 2025-09-19 15:04+0300\n"
|
||||||
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
"PO-Revision-Date: 2025-06-16 08:59+0100\n"
|
||||||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||||||
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
"Language-Team: LANGUAGE <CONTACT@FUREUNOIR.COM>\n"
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,173 @@
|
||||||
|
# Generated by Django 5.2 on 2025-09-19 11:59
|
||||||
|
|
||||||
|
import markdown_field.fields
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
dependencies = [
|
||||||
|
("blog", "0004_post_content_ar_ar_post_content_cs_cz_and_more"),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_fa_ir",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_he_il",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_hr_hr",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_id_id",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_ko_kr",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_no_no",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_sv_se",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_th_th",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_tr_tr",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="content_vi_vn",
|
||||||
|
field=markdown_field.fields.MarkdownField(blank=True, null=True, verbose_name="content"),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_fa_ir",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_he_il",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_hr_hr",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_id_id",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_ko_kr",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_no_no",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_sv_se",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_th_th",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_tr_tr",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="post",
|
||||||
|
name="title_vi_vn",
|
||||||
|
field=models.CharField(
|
||||||
|
help_text="post title",
|
||||||
|
max_length=128,
|
||||||
|
null=True,
|
||||||
|
unique=True,
|
||||||
|
verbose_name="title",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
|
@ -544,7 +544,7 @@ class FeedbackProductAction(BaseMutation):
|
||||||
user = info.context.user
|
user = info.context.user
|
||||||
try:
|
try:
|
||||||
order_product = OrderProduct.objects.get(uuid=order_product_uuid)
|
order_product = OrderProduct.objects.get(uuid=order_product_uuid)
|
||||||
if user != order_product.order.user or not user.has_perm("core.change_orderproduct"):
|
if user != order_product.order.user:
|
||||||
raise PermissionDenied(permission_denied_message)
|
raise PermissionDenied(permission_denied_message)
|
||||||
match action:
|
match action:
|
||||||
case "add":
|
case "add":
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ from django.db.models.functions import Length
|
||||||
from django.utils.translation import gettext_lazy as _
|
from django.utils.translation import gettext_lazy as _
|
||||||
from graphene import (
|
from graphene import (
|
||||||
UUID,
|
UUID,
|
||||||
|
Boolean,
|
||||||
Field,
|
Field,
|
||||||
Float,
|
Float,
|
||||||
InputObjectType,
|
InputObjectType,
|
||||||
|
|
@ -16,7 +17,6 @@ from graphene import (
|
||||||
ObjectType,
|
ObjectType,
|
||||||
String,
|
String,
|
||||||
relay,
|
relay,
|
||||||
Boolean,
|
|
||||||
)
|
)
|
||||||
from graphene.types.generic import GenericScalar
|
from graphene.types.generic import GenericScalar
|
||||||
from graphene_django import DjangoObjectType
|
from graphene_django import DjangoObjectType
|
||||||
|
|
@ -44,15 +44,15 @@ from core.models import (
|
||||||
Vendor,
|
Vendor,
|
||||||
Wishlist,
|
Wishlist,
|
||||||
)
|
)
|
||||||
from core.utils import graphene_current_lang, graphene_abs
|
from core.utils import graphene_abs, graphene_current_lang
|
||||||
from core.utils.seo_builders import (
|
from core.utils.seo_builders import (
|
||||||
org_schema,
|
|
||||||
breadcrumb_schema,
|
|
||||||
brand_schema,
|
brand_schema,
|
||||||
website_schema,
|
breadcrumb_schema,
|
||||||
category_schema,
|
category_schema,
|
||||||
item_list_schema,
|
item_list_schema,
|
||||||
|
org_schema,
|
||||||
product_schema,
|
product_schema,
|
||||||
|
website_schema,
|
||||||
)
|
)
|
||||||
from payments.graphene.object_types import TransactionType
|
from payments.graphene.object_types import TransactionType
|
||||||
from payments.models import Transaction
|
from payments.models import Transaction
|
||||||
|
|
@ -397,6 +397,7 @@ class OrderProductType(DjangoObjectType):
|
||||||
attributes = GenericScalar(description=_("attributes"))
|
attributes = GenericScalar(description=_("attributes"))
|
||||||
notifications = GenericScalar(description=_("notifications"))
|
notifications = GenericScalar(description=_("notifications"))
|
||||||
download_url = String(description=_("download url for this order product if applicable"))
|
download_url = String(description=_("download url for this order product if applicable"))
|
||||||
|
feedback = Field(lambda: FeedbackType, description=_("feedback"))
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = OrderProduct
|
model = OrderProduct
|
||||||
|
|
@ -409,10 +410,15 @@ class OrderProductType(DjangoObjectType):
|
||||||
"comments",
|
"comments",
|
||||||
"attributes",
|
"attributes",
|
||||||
"notifications",
|
"notifications",
|
||||||
|
"feedback",
|
||||||
)
|
)
|
||||||
filter_fields = ["uuid"]
|
filter_fields = ["uuid"]
|
||||||
description = _("order products")
|
description = _("order products")
|
||||||
|
|
||||||
|
def resolve_feedback(self: OrderProduct, _info):
|
||||||
|
feedbacks = Feedback.objects.filter(order_product=self)
|
||||||
|
return feedbacks.first() if feedbacks.exists() else None
|
||||||
|
|
||||||
def resolve_attributes(self, _info):
|
def resolve_attributes(self, _info):
|
||||||
return camelize(self.attributes)
|
return camelize(self.attributes)
|
||||||
|
|
||||||
|
|
|
||||||
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
BIN
core/locale/fa_IR/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/fa_IR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2432
core/locale/fa_IR/LC_MESSAGES/django.po
Normal file
2432
core/locale/fa_IR/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
BIN
core/locale/he_IL/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/he_IL/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2498
core/locale/he_IL/LC_MESSAGES/django.po
Normal file
2498
core/locale/he_IL/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
BIN
core/locale/hr_HR/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/hr_HR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2432
core/locale/hr_HR/LC_MESSAGES/django.po
Normal file
2432
core/locale/hr_HR/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
BIN
core/locale/id_ID/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/id_ID/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2623
core/locale/id_ID/LC_MESSAGES/django.po
Normal file
2623
core/locale/id_ID/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
BIN
core/locale/ko_KR/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/ko_KR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2479
core/locale/ko_KR/LC_MESSAGES/django.po
Normal file
2479
core/locale/ko_KR/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
BIN
core/locale/no_NO/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/no_NO/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2607
core/locale/no_NO/LC_MESSAGES/django.po
Normal file
2607
core/locale/no_NO/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
BIN
core/locale/sv_SE/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/sv_SE/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2587
core/locale/sv_SE/LC_MESSAGES/django.po
Normal file
2587
core/locale/sv_SE/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
BIN
core/locale/th_TH/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/th_TH/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2557
core/locale/th_TH/LC_MESSAGES/django.po
Normal file
2557
core/locale/th_TH/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
BIN
core/locale/tr_TR/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/tr_TR/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2602
core/locale/tr_TR/LC_MESSAGES/django.po
Normal file
2602
core/locale/tr_TR/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
BIN
core/locale/vi_VN/LC_MESSAGES/django.mo
Normal file
BIN
core/locale/vi_VN/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2620
core/locale/vi_VN/LC_MESSAGES/django.po
Normal file
2620
core/locale/vi_VN/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
|
@ -5,3 +5,38 @@ class RootDirectory:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.label = "root"
|
self.label = "root"
|
||||||
self.path = settings.BASE_DIR / "evibes"
|
self.path = settings.BASE_DIR / "evibes"
|
||||||
|
|
||||||
|
|
||||||
|
# Mapping from Django locale codes to DeepL API codes
|
||||||
|
DEEPL_TARGET_LANGUAGES_MAPPING = {
|
||||||
|
"ar-ar": "AR",
|
||||||
|
"cs-cz": "CS",
|
||||||
|
"da-dk": "DA",
|
||||||
|
"de-de": "DE",
|
||||||
|
"en-gb": "EN-GB",
|
||||||
|
"en-us": "EN-US",
|
||||||
|
"es-es": "ES",
|
||||||
|
"fa-ir": "unsupported",
|
||||||
|
"fr-fr": "FR",
|
||||||
|
"he-il": "HE",
|
||||||
|
"hi-in": "unsupported",
|
||||||
|
"hr-hr": "unsupported",
|
||||||
|
"id-id": "ID",
|
||||||
|
"it-it": "IT",
|
||||||
|
"ja-jp": "JA",
|
||||||
|
"kk-kz": "unsupported",
|
||||||
|
"ko-kr": "KO",
|
||||||
|
"nl-nl": "NL",
|
||||||
|
"no-no": "NB",
|
||||||
|
"pl-pl": "PL",
|
||||||
|
"pt-br": "PT-BR",
|
||||||
|
"ro-ro": "RO",
|
||||||
|
"ru-ru": "RU",
|
||||||
|
"sv-se": "SV",
|
||||||
|
"th-th": "TH",
|
||||||
|
"tr-tr": "TR",
|
||||||
|
"vi-vn": "VI",
|
||||||
|
"zh-hans": "ZH-HANS",
|
||||||
|
}
|
||||||
|
|
||||||
|
TRANSLATABLE_APPS = ["core", "vibes_auth", "blog", "payments", "root"]
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,10 @@ from tempfile import NamedTemporaryFile
|
||||||
|
|
||||||
import polib
|
import polib
|
||||||
from django.apps import apps
|
from django.apps import apps
|
||||||
|
from django.conf import settings
|
||||||
from django.core.management.base import BaseCommand, CommandError
|
from django.core.management.base import BaseCommand, CommandError
|
||||||
|
|
||||||
from core.management.commands import RootDirectory
|
from core.management.commands import RootDirectory, TRANSLATABLE_APPS
|
||||||
|
|
||||||
# Patterns to identify placeholders
|
# Patterns to identify placeholders
|
||||||
PLACEHOLDER_REGEXES = [
|
PLACEHOLDER_REGEXES = [
|
||||||
|
|
@ -93,13 +94,19 @@ class Command(BaseCommand):
|
||||||
|
|
||||||
def handle(self, *args, **options) -> None:
|
def handle(self, *args, **options) -> None:
|
||||||
langs: list[str] = options["target_languages"]
|
langs: list[str] = options["target_languages"]
|
||||||
|
if "ALL" in langs:
|
||||||
|
langs = list(dict(settings.LANGUAGES).keys())
|
||||||
apps_to_scan: set[str] = set(options["target_apps"])
|
apps_to_scan: set[str] = set(options["target_apps"])
|
||||||
|
if "ALL" in apps_to_scan:
|
||||||
|
apps_to_scan = set(TRANSLATABLE_APPS)
|
||||||
root_path: str = options.get("root_path") or "/app/"
|
root_path: str = options.get("root_path") or "/app/"
|
||||||
|
|
||||||
configs = list(apps.get_app_configs())
|
configs = list(apps.get_app_configs())
|
||||||
# noinspection PyTypeChecker
|
# noinspection PyTypeChecker
|
||||||
configs.append(RootDirectory()) # type: ignore [arg-type]
|
configs.append(RootDirectory()) # type: ignore [arg-type]
|
||||||
|
|
||||||
|
errors = 0
|
||||||
|
|
||||||
for app_conf in configs:
|
for app_conf in configs:
|
||||||
if app_conf.label not in apps_to_scan:
|
if app_conf.label not in apps_to_scan:
|
||||||
continue
|
continue
|
||||||
|
|
@ -143,6 +150,7 @@ class Command(BaseCommand):
|
||||||
if app_issues:
|
if app_issues:
|
||||||
self.stdout.write(f"→ App: {app_conf.label}")
|
self.stdout.write(f"→ App: {app_conf.label}")
|
||||||
for line in app_issues:
|
for line in app_issues:
|
||||||
|
errors += 1
|
||||||
self.stdout.write(line)
|
self.stdout.write(line)
|
||||||
self.stdout.write("")
|
self.stdout.write("")
|
||||||
else:
|
else:
|
||||||
|
|
@ -151,3 +159,5 @@ class Command(BaseCommand):
|
||||||
self.stdout.write("")
|
self.stdout.write("")
|
||||||
|
|
||||||
self.stdout.write(self.style.SUCCESS("Done scanning."))
|
self.stdout.write(self.style.SUCCESS("Done scanning."))
|
||||||
|
if errors:
|
||||||
|
exit(1)
|
||||||
|
|
|
||||||
|
|
@ -7,29 +7,7 @@ import requests
|
||||||
from django.apps import apps
|
from django.apps import apps
|
||||||
from django.core.management.base import BaseCommand, CommandError
|
from django.core.management.base import BaseCommand, CommandError
|
||||||
|
|
||||||
from core.management.commands import RootDirectory
|
from core.management.commands import RootDirectory, DEEPL_TARGET_LANGUAGES_MAPPING, TRANSLATABLE_APPS
|
||||||
|
|
||||||
# Mapping from Django locale codes to DeepL API codes
|
|
||||||
DEEPL_TARGET_LANGUAGES_MAPPING = {
|
|
||||||
"en-gb": "EN-GB",
|
|
||||||
"ar-ar": "AR",
|
|
||||||
"cs-cz": "CS",
|
|
||||||
"da-dk": "DA",
|
|
||||||
"de-de": "DE",
|
|
||||||
"en-us": "EN-US",
|
|
||||||
"es-es": "ES",
|
|
||||||
"fr-fr": "FR",
|
|
||||||
"hi-in": "unsupported",
|
|
||||||
"it-it": "IT",
|
|
||||||
"ja-jp": "JA",
|
|
||||||
"kk-kz": "unsupported",
|
|
||||||
"nl-nl": "NL",
|
|
||||||
"pl-pl": "PL",
|
|
||||||
"pt-br": "PT-BR",
|
|
||||||
"ro-ro": "RO",
|
|
||||||
"ru-ru": "RU",
|
|
||||||
"zh-hans": "ZH-HANS",
|
|
||||||
}
|
|
||||||
|
|
||||||
# Patterns to identify placeholders
|
# Patterns to identify placeholders
|
||||||
PLACEHOLDER_REGEXES = [
|
PLACEHOLDER_REGEXES = [
|
||||||
|
|
@ -107,7 +85,7 @@ class Command(BaseCommand):
|
||||||
action="append",
|
action="append",
|
||||||
required=True,
|
required=True,
|
||||||
metavar="LANG",
|
metavar="LANG",
|
||||||
help="Locale code for translation, e.g. de-DE, fr-FR.",
|
help="Locale code for translation, e.g. de-DE, fr-FR. Use ALL to translate all languages.",
|
||||||
)
|
)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
"-a",
|
"-a",
|
||||||
|
|
@ -116,12 +94,20 @@ class Command(BaseCommand):
|
||||||
action="append",
|
action="append",
|
||||||
required=True,
|
required=True,
|
||||||
metavar="APP",
|
metavar="APP",
|
||||||
help="App label for translation, e.g. core, payments.",
|
help="App label for translation, e.g. core, payments. Use ALL to translate all apps.",
|
||||||
)
|
)
|
||||||
|
|
||||||
def handle(self, *args, **options) -> None:
|
def handle(self, *args, **options) -> None:
|
||||||
target_langs = options["target_languages"]
|
target_langs = options["target_languages"]
|
||||||
|
if "ALL" in target_langs:
|
||||||
|
target_langs = DEEPL_TARGET_LANGUAGES_MAPPING.keys()
|
||||||
target_apps = set(options["target_apps"])
|
target_apps = set(options["target_apps"])
|
||||||
|
if "ALL" in target_apps:
|
||||||
|
target_apps = {
|
||||||
|
app_conf.label
|
||||||
|
for app_conf in list(apps.get_app_configs()) + [RootDirectory()]
|
||||||
|
if app_conf.label in TRANSLATABLE_APPS
|
||||||
|
}
|
||||||
auth_key = os.environ.get("DEEPL_AUTH_KEY")
|
auth_key = os.environ.get("DEEPL_AUTH_KEY")
|
||||||
if not auth_key:
|
if not auth_key:
|
||||||
raise CommandError("DEEPL_AUTH_KEY not set")
|
raise CommandError("DEEPL_AUTH_KEY not set")
|
||||||
|
|
|
||||||
|
|
@ -5,28 +5,9 @@ import requests
|
||||||
from django.core.management.base import BaseCommand, CommandError
|
from django.core.management.base import BaseCommand, CommandError
|
||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
|
|
||||||
DEEPL_API_URL = "https://api.deepl.com/v2/translate"
|
from core.management.commands import DEEPL_TARGET_LANGUAGES_MAPPING
|
||||||
|
|
||||||
DEEPL_TARGET_LANGUAGES_MAPPING = {
|
DEEPL_API_URL = "https://api.deepl.com/v2/translate"
|
||||||
"en-gb": "EN-GB",
|
|
||||||
"ar-ar": "AR",
|
|
||||||
"cs-cz": "CS",
|
|
||||||
"da-dk": "DA",
|
|
||||||
"de-de": "DE",
|
|
||||||
"en-us": "EN-US",
|
|
||||||
"es-es": "ES",
|
|
||||||
"fr-fr": "FR",
|
|
||||||
"hi-in": "unsupported",
|
|
||||||
"it-it": "IT",
|
|
||||||
"ja-jp": "JA",
|
|
||||||
"kk-kz": "unsupported",
|
|
||||||
"nl-nl": "NL",
|
|
||||||
"pl-pl": "PL",
|
|
||||||
"pt-br": "PT-BR",
|
|
||||||
"ro-ro": "RO",
|
|
||||||
"ru-ru": "RU",
|
|
||||||
"zh-hans": "ZH-HANS",
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue