blog

Update translations

Author
Maarten Vangeneugden
Date
April 9, 2022, 7:27 a.m.
Hash
0eb87046c5b1112d66eae80ea97bfb8cd527ff73
Parent
226361afe87e17f982d6457e1e83d315faf0fd18
Modified files
locale/af/LC_MESSAGES/django.po
locale/de/LC_MESSAGES/django.po
locale/eo/LC_MESSAGES/django.po
locale/es/LC_MESSAGES/django.po
locale/fr/LC_MESSAGES/django.po
locale/nl/LC_MESSAGES/django.po
models.py
templates/blog/locale/af/LC_MESSAGES/django.po
templates/blog/locale/de/LC_MESSAGES/django.po
templates/blog/locale/eo/LC_MESSAGES/django.po
templates/blog/locale/es/LC_MESSAGES/django.po
templates/blog/locale/fr/LC_MESSAGES/django.po
templates/blog/locale/nl/LC_MESSAGES/django.po
templates/blog/post.djhtml
views.py

locale/af/LC_MESSAGES/django.po

12 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/views.py:46
21
-
msgid "Notepad from a student"
+
21
msgid "Notepad from a student"
22
22
msgstr ""
23
23
24
24
#: blog/views.py:144
25
-
msgid "Weekly-archief"
+
25
msgid "Comment succesfully submitted!"
+
26
msgstr ""
+
27
+
28
#: blog/views.py:49
+
29
msgid ""
+
30
"An error occured while trying to submit your comment. Please try again later."
+
31
msgstr ""
+
32
+
33
#: blog/views.py:88
+
34
msgid "Weekly-archief"
26
35
msgstr ""
27
36

locale/de/LC_MESSAGES/django.po

12 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/views.py:46
21
-
msgid "Notepad from a student"
+
21
msgid "Notepad from a student"
22
22
msgstr ""
23
23
24
24
#: blog/views.py:144
25
-
msgid "Weekly-archief"
+
25
msgid "Comment succesfully submitted!"
+
26
msgstr ""
+
27
+
28
#: blog/views.py:49
+
29
msgid ""
+
30
"An error occured while trying to submit your comment. Please try again later."
+
31
msgstr ""
+
32
+
33
#: blog/views.py:88
+
34
msgid "Weekly-archief"
26
35
msgstr ""
27
36

locale/eo/LC_MESSAGES/django.po

12 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/views.py:46
21
-
msgid "Notepad from a student"
+
21
msgid "Notepad from a student"
22
22
msgstr ""
23
23
24
24
#: blog/views.py:144
25
-
msgid "Weekly-archief"
+
25
msgid "Comment succesfully submitted!"
+
26
msgstr ""
+
27
+
28
#: blog/views.py:49
+
29
msgid ""
+
30
"An error occured while trying to submit your comment. Please try again later."
+
31
msgstr ""
+
32
+
33
#: blog/views.py:88
+
34
msgid "Weekly-archief"
26
35
msgstr ""
27
36

locale/es/LC_MESSAGES/django.po

12 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/views.py:46
21
-
msgid "Notepad from a student"
+
21
msgid "Notepad from a student"
22
22
msgstr ""
23
23
24
24
#: blog/views.py:144
25
-
msgid "Weekly-archief"
+
25
msgid "Comment succesfully submitted!"
+
26
msgstr ""
+
27
+
28
#: blog/views.py:49
+
29
msgid ""
+
30
"An error occured while trying to submit your comment. Please try again later."
+
31
msgstr ""
+
32
+
33
#: blog/views.py:88
+
34
msgid "Weekly-archief"
26
35
msgstr ""
27
36

locale/fr/LC_MESSAGES/django.po

12 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
19
19
20
20
#: blog/views.py:46
21
-
msgid "Notepad from a student"
+
21
msgid "Notepad from a student"
22
22
msgstr "Bloc-notes d'un étudiant"
23
23
24
24
#: blog/views.py:144
25
-
msgid "Weekly-archief"
+
25
msgid "Comment succesfully submitted!"
+
26
msgstr ""
+
27
+
28
#: blog/views.py:49
+
29
msgid ""
+
30
"An error occured while trying to submit your comment. Please try again later."
+
31
msgstr ""
+
32
+
33
#: blog/views.py:88
+
34
msgid "Weekly-archief"
26
35
msgstr ""
27
36
28
37
#, fuzzy
29
38
#~| msgid "Blog main page"
30
39
#~ msgid "Back to main page"
31
40
#~ msgstr "Blog // Page principal"
32
41
33
42
#~ msgid "Contact"
34
43
#~ msgstr "Contact"
35
44
36
45
#~ msgid ""
37
46
#~ "Maarten's personal blog, with sprinkles and a dollop of healthy bugs."
38
47
#~ msgstr ""
39
48
#~ "Blog personnel de Maarten, avec des sprinkles et un cuillerée des bogues "
40
49
#~ "sains."
41
50

locale/nl/LC_MESSAGES/django.po

12 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
msgid ""
6
6
msgstr ""
7
7
"Project-Id-Version: \n"
8
8
"Report-Msgid-Bugs-To: \n"
9
9
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
10
-
"PO-Revision-Date: 2021-10-30 16:10+0200\n"
+
10
"PO-Revision-Date: 2021-10-30 16:10+0200\n"
11
11
"Last-Translator: \n"
12
12
"Language-Team: \n"
13
13
"Language: nl\n"
14
14
"MIME-Version: 1.0\n"
15
15
"Content-Type: text/plain; charset=UTF-8\n"
16
16
"Content-Transfer-Encoding: 8bit\n"
17
17
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
18
"X-Generator: Poedit 3.0\n"
19
19
20
20
#: blog/views.py:46
21
-
msgid "Notepad from a student"
+
21
msgid "Notepad from a student"
22
22
msgstr "Studentikoos kladblok"
23
23
24
24
#: blog/views.py:144
25
-
msgid "Weekly-archief"
+
25
msgid "Comment succesfully submitted!"
+
26
msgstr ""
+
27
+
28
#: blog/views.py:49
+
29
msgid ""
+
30
"An error occured while trying to submit your comment. Please try again later."
+
31
msgstr ""
+
32
+
33
#: blog/views.py:88
+
34
msgid "Weekly-archief"
26
35
msgstr "Weekly-archief"
27
36
28
37
#, fuzzy
29
38
#~| msgid "Blog main page"
30
39
#~ msgid "Back to main page"
31
40
#~ msgstr "Blog // Hoofdpagina"
32
41
33
42
#~ msgid "Contact"
34
43
#~ msgstr "Contact"
35
44
36
45
#~ msgid ""
37
46
#~ "Maarten's personal blog, with sprinkles and a dollop of healthy bugs."
38
47
#~ msgstr ""
39
48
#~ "Maartens persoonlijke blog, met sprinkeltjes en een doperwtje aan gezonde "
40
49
#~ "bugs."
41
50

models.py

22 additions and 1 deletion.

View changes Hide changes
1
1
from django.utils import translation
2
2
from django.template.defaultfilters import slugify
3
3
from django.db import models
4
4
from django.conf import settings  # Necessary to get the link to the media root folder
5
5
import pytz
6
6
import datetime
7
7
import os
8
8
import subprocess
9
9
10
10
from django.shortcuts import render as render_shortcut
11
11
12
12
""" New version:
13
13
- For each post, there's no longer a mandatory Dutch and English
14
14
  version. Instead, only the title needs to be in multiple languages.
15
15
- There's a new table for the links to the articles themselves. These include a
16
16
  language code and a foreign key to the post they belong to.
17
17
- If an article is available in the active language, but not tagged for the same
18
18
  dialect, then it should just show up without any warnings.
19
19
- If an article is not available in the active language, only the title should
20
20
  show up, but where the short intro text would normally be, there should be an
21
21
  explanation that it's only available in other languages, and provide links to
22
22
  those versions.
23
23
"""
24
24
25
25
# Look, you think this function is worthless, it's not. It's required to make
26
26
# migrations with manage.py, so here it stays, being empty and hollow like the
27
27
# piece of shit it is.
28
28
def post_title_directory():
29
29
    pass
30
30
        
31
31
32
32
class Post(models.Model):
33
33
    """ Represents a blog post."""
34
34
    published = models.DateTimeField(auto_now_add=True)
35
35
    visible = models.BooleanField(default=True, 
36
36
            help_text="Whether this post is shown in the index. If False, it's \
37
37
            only accessible by direct link.")
38
38
    # TODO: The titles should all be changed to 'unique=True' to avoid slug
39
39
    # collisions. But at this moment, there are still some posts that don't have
40
40
    # a title in all these languages (and "" collides with ""), so until that's
41
41
    # fixed, they're set to False.
42
42
    title_en = models.CharField(max_length=64, unique=False, blank=False)
43
43
    title_nl = models.CharField(max_length=64, unique=False, blank=False)
44
44
    title_fr = models.CharField(max_length=64, unique=False, blank=True)
45
45
    title_de = models.CharField(max_length=64, unique=False, blank=True)
46
46
    title_es = models.CharField(max_length=64, unique=False, blank=True)
47
47
    title_eo = models.CharField(max_length=64, unique=False, blank=True)
48
48
    title_af = models.CharField(max_length=64, unique=False, blank=True)
49
49
    title_nl_be=models.CharField(max_length=64, unique=False, blank=True)
50
50
    title_fr_be=models.CharField(max_length=64, unique=False, blank=True)
51
51
52
52
53
53
    def __str__(self):
54
54
        return self.title()
55
55
56
56
57
57
    def articles(self):
58
58
        #print(len(Article.objects.filter(post=self)))
59
59
        return Article.objects.filter(post=self)
60
60
        
61
61
    def article(self):
62
62
        language_code = translation.get_language()
63
63
        print(language_code)
64
64
        # Retrieves all articles that have this post as their foreign key
65
65
        articles = Article.objects.filter(post=self)
66
66
        for a in articles:
67
67
            if a.language_code == language_code:
68
68
                return a
69
69
        # If no exact match was found, try again, but now accept other dialects
70
70
        # as well:
71
71
        for a in articles:
72
72
            if a.language_code.startswith(language_code):
73
73
                return a
74
74
        
75
75
        # If still no article was found, return None
76
76
        return None
77
77
78
78
    def title(self):
79
79
        language_code = translation.get_language()
80
80
        options = {'af': self.title_af,
81
81
                   'de': self.title_de,
82
82
                   'es': self.title_es,
83
83
                   'en': self.title_en,
84
84
                   'eo': self.title_eo,
85
85
                   'fr': self.title_fr,
86
86
                   'nl-be': self.title_nl_be,
87
87
                   'fr-be': self.title_fr_be,
88
88
                   'nl': self.title_nl}
89
89
        for code, translated_title in options.items():
90
90
            if language_code.startswith(code):
91
91
                return translated_title
92
92
        # If no return has happened, default to English
93
93
        return self.title_en
94
94
95
95
def org_to_html(file_path, return_djhtml_path=False):
96
96
    """ Converts the given org formatted file to HTML.
97
97
    This function directly returns the resulting HTML code. This function uses
98
98
    the amazing Haskell library Pandoc to convert the file (and takes care
99
99
    of header id's and all that stuff).
100
100
    """
101
101
    # FIXME: Remove hardcoded link to media. Replace with media tag!
102
102
    # XXX: The reason I'm first converting all occurences of .jpg][ and .png][
103
103
    # to .jpgPANDOCBUG][ and .pngPANDOCBUG][, is because of a Pandoc bug that
104
104
    # removes the text links for images. It is afterwards converted back, no
105
105
    # worries.
106
106
    file = open(file_path, "r", encoding="utf-8")
107
107
    text = file.read()
108
108
    file.close()
109
109
    text = text.replace(".jpg][", ".jpgPANDOCBUG][")
110
110
    text = text.replace(".png][", ".pngPANDOCBUG][")
111
111
    file = open("/tmp/blog-file.org", "w", encoding="utf-8")
112
112
    file.write(text)
113
113
    file.close()
114
114
    html_text = subprocess.check_output(["pandoc", "--from=org", "--to=html","/tmp/blog-file.org"])
115
-
    html_text = html_text.decode("utf-8").replace(".jpgPANDOCBUG", ".jpg")
+
115
    # properly, otherwise the heuristic fails on a regular basis
+
116
    html_text = subprocess.check_output(["pandoc", "--from=org", "--to=html", "--wrap=none", "/tmp/blog-file.org"])
+
117
    html_text = html_text.decode("utf-8").replace(".jpgPANDOCBUG", ".jpg")
116
118
    html_text = html_text.replace(".pngPANDOCBUG", ".png")
117
119
    #rendered_file_path = "file_path.rpartition('.')[0] + ".djhtml"
+
120
    html_text = html_text.replace('<section class="footnotes footnotes-end-of-document" role="doc-endnotes">', "")
+
121
    #rendered_file_path = "file_path.rpartition('.')[0] + ".djhtml"
118
122
    rendered_file_path = "/tmp/blog-file.djhtml"
119
123
    rendered_file = open(rendered_file_path, "w", encoding="utf-8")
120
124
    rendered_file.write(html_text)
121
125
    rendered_file.close()
122
126
    if return_djhtml_path:
123
127
        return rendered_file_path
124
128
    else:
125
129
        return html_text
126
130
127
131
class Article(models.Model):
128
132
    AFRIKAANS = 'af'
129
133
    BELGIAN_FRENCH = 'fr-be'
130
134
    DUTCH = 'nl'
131
135
    ESPERANTO = 'eo'
132
136
    ENGLISH = 'en'
133
137
    FLEMISH = 'nl-be'
134
138
    FRENCH = 'fr'
135
139
    GERMAN = 'de'
136
140
    SPANISH = 'es'
137
141
138
142
    LANGUAGE_CODES = [
139
143
        (AFRIKAANS, 'Afrikaans'),
140
144
        (BELGIAN_FRENCH, 'Français (Belgique)'),
141
145
        (DUTCH, 'Nederlands'),
142
146
        (ESPERANTO, 'Esperanto'),
143
147
        (ENGLISH, 'English'),
144
148
        (FLEMISH, 'Vlaams'),
145
149
        (FRENCH, 'Français'),
146
150
        (GERMAN, 'Deutsch'),
147
151
        (SPANISH, 'Español')]
148
152
149
153
    visible = models.BooleanField(default=True)
150
154
    post = models.ForeignKey(Post, on_delete=models.CASCADE)
151
155
    language_code = models.CharField(max_length=16,
152
156
                                      choices = LANGUAGE_CODES,
153
157
                                      blank=False)
154
158
    # file_path shouldn't be unique, because the same article file could be used
155
159
    # for multiple dialects of the same language.
156
160
    file_path = models.FilePathField(path=settings.MEDIA_ROOT + "blog/articles/",
157
161
                                     blank=False)
158
162
    # Same reason, slug shouldn't be unique
159
163
    slug = models.SlugField(unique=False, blank=False, allow_unicode=True)
160
164
    title = models.CharField(max_length=64, unique=False, blank=True)
161
165
162
166
    def text(self):
163
167
        return org_to_html(self.file_path)
164
168
    def djhtml_file(self):
165
169
        return org_to_html(self.file_path, return_djhtml_path=True)
166
170
+
171
        """ Returns the headings and their slugs present in this article. Useful
+
172
        for building the navigation drawer. """
+
173
        text = self.text()
+
174
        headers = list()
+
175
        lines = text.splitlines()
+
176
+
177
        for line in lines:
+
178
            # Heuristic approach to collecting headers
+
179
            if "<h" in line and "id=" in line and "</h" in line:
+
180
                first_part, second_part = line.split(">", maxsplit=1)
+
181
                slug = first_part.split('"')[-2]
+
182
                header = second_part.split("<", maxsplit=1)[0]
+
183
                headers.append((header, slug))
+
184
        return headers
+
185
+
186
+
187
167
188
168
189
class Comment(models.Model):
169
190
    """ Represents a comment on a blog post.
170
191
    Comments are not filtered by language; a
171
192
    comment made by someone reading the article in Dutch, that's written in
172
193
    Dutch, will show up (unedited) for somebody whom's reading the Spanish
173
194
    version.
174
195
    """
175
196
    # Allows me to manually hide certain messages if need be
176
197
    visible = models.BooleanField(default=True)
177
198
    date = models.DateTimeField(auto_now_add=True)
178
199
    name = models.CharField(max_length=64, blank=True)
179
200
    text = models.TextField(max_length=10000, blank=False)  # Should be more than enough
180
201
    # reaction_to is null if it's not a reaction to an existing comment
181
202
    reaction_to = models.ForeignKey('Comment', on_delete=models.CASCADE, null=True)
182
203
    from_myself = models.BooleanField(default=False)
183
204
    post = models.ForeignKey(
184
205
        Post,
185
206
        on_delete=models.CASCADE,
186
207
        null=False,
187
208
        )
188
209
    class meta:
189
210
        ordering = ['date']  # When printed, prints the oldest comment first.
190
211
191
212
    def reactions(self):
192
213
        # Should return the comments that are a reaction to this comment
193
214
        return Comment.objects.filter(reaction_to=self).order_by('-date')
194
215
    def __str__(self):
195
216
        return str(self.id) +" | "+ self.name
196
217
    def is_new(self):
197
218
        # True if this comment was created less than one minute ago.
198
219
        now = datetime.datetime.utcnow().replace(tzinfo=pytz.UTC)
199
220
        delta = now-self.date
200
221
        return delta.seconds < 60
201
222
202
223
203
224
class FeedItem(models.Model):
204
225
    """ An item that shows up in the RSS feed."""
205
226
    title = models.CharField(max_length=64)
206
227
    added = models.DateTimeField(auto_now_add=True)
207
228
    description = models.CharField(max_length=400)
208
229
    link = models.URLField()
209
230

templates/blog/locale/af/LC_MESSAGES/django.po

31 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/templates/blog/index.djhtml:20
+
21
msgid "Respond"
+
22
msgstr ""
+
23
+
24
#: blog/templates/blog/comment.djhtml:31 blog/templates/blog/post.djhtml:118
+
25
msgid "Your name"
+
26
msgstr ""
+
27
+
28
#: blog/templates/blog/comment.djhtml:32
+
29
msgid "Your response"
+
30
msgstr ""
+
31
+
32
#: blog/templates/blog/comment.djhtml:33 blog/templates/blog/post.djhtml:120
+
33
msgid "Submit"
+
34
msgstr ""
+
35
+
36
#: blog/templates/blog/index.djhtml:20
21
37
msgid "Maarten's blog"
22
38
msgstr ""
23
39
24
40
#: blog/templates/blog/index.djhtml:22
25
41
msgid ""
26
42
"The always coherently put together, yet\n"
27
43
"fuzzy blog of whatever sprouts in my mind."
28
44
msgstr ""
29
45
30
46
#: blog/templates/blog/index.djhtml:28
31
47
msgid "Notepad of a student"
32
48
msgstr ""
33
49
34
50
#: blog/templates/blog/index.djhtml:37
35
51
msgid "Navigation"
36
52
msgstr ""
37
53
38
54
#: blog/templates/blog/index.djhtml:45
39
55
msgid "Front page"
40
56
msgstr ""
41
57
42
58
#: blog/templates/blog/index.djhtml:52
43
59
msgid "Blog"
44
60
msgstr ""
45
61
46
62
#: blog/templates/blog/index.djhtml:54
47
63
msgid ""
48
64
"Welcome to my blog. Here, I write\n"
49
65
"        about things that interest me. Politics, coding,\n"
50
66
"        studying, life, or anything else I fancy rambling\n"
51
67
"        about. If you're in luck, I may've written it in a\n"
52
68
"        language that you understand better than English.\n"
53
69
"        "
54
70
msgstr ""
55
71
56
72
#: blog/templates/blog/index.djhtml:71
57
73
msgid "Open archive"
58
74
msgstr ""
59
75
60
76
#: blog/templates/blog/index.djhtml:85
61
77
msgid "Read on"
62
78
msgstr ""
63
79
64
80
#: blog/templates/blog/index.djhtml:90
65
81
#, python-format
66
82
msgid ""
67
83
"This blog\n"
68
84
"               post is not available in %(cur_lang)s."
69
85
msgstr ""
70
86
71
87
#: blog/templates/blog/index.djhtml:92
72
88
msgid ""
73
89
"\n"
74
90
"                    However, it is available in \n"
75
91
"                    "
76
92
msgid_plural ""
77
93
"\n"
78
94
"                    If you want, you can choose to read it in one of these\n"
79
95
"                    languages: <br>\n"
80
96
"                    "
81
97
msgstr[0] ""
82
98
msgstr[1] ""
83
99
84
100
#: blog/templates/blog/index.djhtml:100
85
101
msgid "Flemish"
86
102
msgstr ""
87
103
88
104
#: blog/templates/blog/index.djhtml:102
89
105
msgid "Belgian French"
90
106
msgstr ""
91
107
92
108
#: blog/templates/blog/monthly_archive.djhtml:16
93
109
msgid "Weekly | Archief"
94
110
msgstr ""
95
111
96
112
#: blog/templates/blog/monthly_archive.djhtml:19
97
113
msgid "Voor een duik terug in de geschiedenis van mijn publieke dagboek."
98
114
msgstr ""
99
115
100
116
#: blog/templates/blog/post.djhtml:104
101
-
msgid "Comments"
+
117
msgid "Table of contents"
+
118
msgstr ""
+
119
+
120
#: blog/templates/blog/post.djhtml:91
+
121
msgid "Blog index"
+
122
msgstr ""
+
123
+
124
#: blog/templates/blog/post.djhtml:92
+
125
msgid "Main page"
+
126
msgstr ""
+
127
+
128
#: blog/templates/blog/post.djhtml:112
+
129
msgid "Comments"
102
130
msgstr ""
103
131
104
132
#: blog/templates/blog/post.djhtml:119
105
133
msgid "Submit"
106
-
msgstr ""
+
134
msgstr ""
107
135

templates/blog/locale/de/LC_MESSAGES/django.po

31 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/templates/blog/index.djhtml:20
+
21
msgid "Respond"
+
22
msgstr ""
+
23
+
24
#: blog/templates/blog/comment.djhtml:31 blog/templates/blog/post.djhtml:118
+
25
msgid "Your name"
+
26
msgstr ""
+
27
+
28
#: blog/templates/blog/comment.djhtml:32
+
29
msgid "Your response"
+
30
msgstr ""
+
31
+
32
#: blog/templates/blog/comment.djhtml:33 blog/templates/blog/post.djhtml:120
+
33
msgid "Submit"
+
34
msgstr ""
+
35
+
36
#: blog/templates/blog/index.djhtml:20
21
37
msgid "Maarten's blog"
22
38
msgstr ""
23
39
24
40
#: blog/templates/blog/index.djhtml:22
25
41
msgid ""
26
42
"The always coherently put together, yet\n"
27
43
"fuzzy blog of whatever sprouts in my mind."
28
44
msgstr ""
29
45
30
46
#: blog/templates/blog/index.djhtml:28
31
47
msgid "Notepad of a student"
32
48
msgstr ""
33
49
34
50
#: blog/templates/blog/index.djhtml:37
35
51
msgid "Navigation"
36
52
msgstr ""
37
53
38
54
#: blog/templates/blog/index.djhtml:45
39
55
msgid "Front page"
40
56
msgstr ""
41
57
42
58
#: blog/templates/blog/index.djhtml:52
43
59
msgid "Blog"
44
60
msgstr ""
45
61
46
62
#: blog/templates/blog/index.djhtml:54
47
63
msgid ""
48
64
"Welcome to my blog. Here, I write\n"
49
65
"        about things that interest me. Politics, coding,\n"
50
66
"        studying, life, or anything else I fancy rambling\n"
51
67
"        about. If you're in luck, I may've written it in a\n"
52
68
"        language that you understand better than English.\n"
53
69
"        "
54
70
msgstr ""
55
71
56
72
#: blog/templates/blog/index.djhtml:71
57
73
msgid "Open archive"
58
74
msgstr ""
59
75
60
76
#: blog/templates/blog/index.djhtml:85
61
77
msgid "Read on"
62
78
msgstr ""
63
79
64
80
#: blog/templates/blog/index.djhtml:90
65
81
#, python-format
66
82
msgid ""
67
83
"This blog\n"
68
84
"               post is not available in %(cur_lang)s."
69
85
msgstr ""
70
86
71
87
#: blog/templates/blog/index.djhtml:92
72
88
msgid ""
73
89
"\n"
74
90
"                    However, it is available in \n"
75
91
"                    "
76
92
msgid_plural ""
77
93
"\n"
78
94
"                    If you want, you can choose to read it in one of these\n"
79
95
"                    languages: <br>\n"
80
96
"                    "
81
97
msgstr[0] ""
82
98
msgstr[1] ""
83
99
84
100
#: blog/templates/blog/index.djhtml:100
85
101
msgid "Flemish"
86
102
msgstr ""
87
103
88
104
#: blog/templates/blog/index.djhtml:102
89
105
msgid "Belgian French"
90
106
msgstr ""
91
107
92
108
#: blog/templates/blog/monthly_archive.djhtml:16
93
109
msgid "Weekly | Archief"
94
110
msgstr ""
95
111
96
112
#: blog/templates/blog/monthly_archive.djhtml:19
97
113
msgid "Voor een duik terug in de geschiedenis van mijn publieke dagboek."
98
114
msgstr ""
99
115
100
116
#: blog/templates/blog/post.djhtml:104
101
-
msgid "Comments"
+
117
msgid "Table of contents"
+
118
msgstr ""
+
119
+
120
#: blog/templates/blog/post.djhtml:91
+
121
msgid "Blog index"
+
122
msgstr ""
+
123
+
124
#: blog/templates/blog/post.djhtml:92
+
125
msgid "Main page"
+
126
msgstr ""
+
127
+
128
#: blog/templates/blog/post.djhtml:112
+
129
msgid "Comments"
102
130
msgstr ""
103
131
104
132
#: blog/templates/blog/post.djhtml:119
105
133
msgid "Submit"
106
-
msgstr ""
+
134
msgstr ""
107
135
108
136
#~ msgid "This article in other languages"
109
137
#~ msgstr "Dieser Artikel in anderen Sprachen"
110
138

templates/blog/locale/eo/LC_MESSAGES/django.po

31 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/templates/blog/index.djhtml:20
+
21
msgid "Respond"
+
22
msgstr ""
+
23
+
24
#: blog/templates/blog/comment.djhtml:31 blog/templates/blog/post.djhtml:118
+
25
msgid "Your name"
+
26
msgstr ""
+
27
+
28
#: blog/templates/blog/comment.djhtml:32
+
29
msgid "Your response"
+
30
msgstr ""
+
31
+
32
#: blog/templates/blog/comment.djhtml:33 blog/templates/blog/post.djhtml:120
+
33
msgid "Submit"
+
34
msgstr ""
+
35
+
36
#: blog/templates/blog/index.djhtml:20
21
37
msgid "Maarten's blog"
22
38
msgstr ""
23
39
24
40
#: blog/templates/blog/index.djhtml:22
25
41
msgid ""
26
42
"The always coherently put together, yet\n"
27
43
"fuzzy blog of whatever sprouts in my mind."
28
44
msgstr ""
29
45
30
46
#: blog/templates/blog/index.djhtml:28
31
47
msgid "Notepad of a student"
32
48
msgstr ""
33
49
34
50
#: blog/templates/blog/index.djhtml:37
35
51
msgid "Navigation"
36
52
msgstr ""
37
53
38
54
#: blog/templates/blog/index.djhtml:45
39
55
msgid "Front page"
40
56
msgstr ""
41
57
42
58
#: blog/templates/blog/index.djhtml:52
43
59
msgid "Blog"
44
60
msgstr ""
45
61
46
62
#: blog/templates/blog/index.djhtml:54
47
63
msgid ""
48
64
"Welcome to my blog. Here, I write\n"
49
65
"        about things that interest me. Politics, coding,\n"
50
66
"        studying, life, or anything else I fancy rambling\n"
51
67
"        about. If you're in luck, I may've written it in a\n"
52
68
"        language that you understand better than English.\n"
53
69
"        "
54
70
msgstr ""
55
71
56
72
#: blog/templates/blog/index.djhtml:71
57
73
msgid "Open archive"
58
74
msgstr ""
59
75
60
76
#: blog/templates/blog/index.djhtml:85
61
77
msgid "Read on"
62
78
msgstr ""
63
79
64
80
#: blog/templates/blog/index.djhtml:90
65
81
#, python-format
66
82
msgid ""
67
83
"This blog\n"
68
84
"               post is not available in %(cur_lang)s."
69
85
msgstr ""
70
86
71
87
#: blog/templates/blog/index.djhtml:92
72
88
msgid ""
73
89
"\n"
74
90
"                    However, it is available in \n"
75
91
"                    "
76
92
msgid_plural ""
77
93
"\n"
78
94
"                    If you want, you can choose to read it in one of these\n"
79
95
"                    languages: <br>\n"
80
96
"                    "
81
97
msgstr[0] ""
82
98
msgstr[1] ""
83
99
84
100
#: blog/templates/blog/index.djhtml:100
85
101
msgid "Flemish"
86
102
msgstr ""
87
103
88
104
#: blog/templates/blog/index.djhtml:102
89
105
msgid "Belgian French"
90
106
msgstr ""
91
107
92
108
#: blog/templates/blog/monthly_archive.djhtml:16
93
109
msgid "Weekly | Archief"
94
110
msgstr ""
95
111
96
112
#: blog/templates/blog/monthly_archive.djhtml:19
97
113
msgid "Voor een duik terug in de geschiedenis van mijn publieke dagboek."
98
114
msgstr ""
99
115
100
116
#: blog/templates/blog/post.djhtml:104
101
-
msgid "Comments"
+
117
msgid "Table of contents"
+
118
msgstr ""
+
119
+
120
#: blog/templates/blog/post.djhtml:91
+
121
msgid "Blog index"
+
122
msgstr ""
+
123
+
124
#: blog/templates/blog/post.djhtml:92
+
125
msgid "Main page"
+
126
msgstr ""
+
127
+
128
#: blog/templates/blog/post.djhtml:112
+
129
msgid "Comments"
102
130
msgstr ""
103
131
104
132
#: blog/templates/blog/post.djhtml:119
105
133
msgid "Submit"
106
-
msgstr ""
+
134
msgstr ""
107
135

templates/blog/locale/es/LC_MESSAGES/django.po

31 additions and 3 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
#, fuzzy
6
6
msgid ""
7
7
msgstr ""
8
8
"Project-Id-Version: PACKAGE VERSION\n"
9
9
"Report-Msgid-Bugs-To: \n"
10
10
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
11
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+
11
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
"Language-Team: LANGUAGE <LL@li.org>\n"
14
14
"Language: \n"
15
15
"MIME-Version: 1.0\n"
16
16
"Content-Type: text/plain; charset=UTF-8\n"
17
17
"Content-Transfer-Encoding: 8bit\n"
18
18
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
19
20
20
#: blog/templates/blog/index.djhtml:20
+
21
msgid "Respond"
+
22
msgstr ""
+
23
+
24
#: blog/templates/blog/comment.djhtml:31 blog/templates/blog/post.djhtml:118
+
25
msgid "Your name"
+
26
msgstr ""
+
27
+
28
#: blog/templates/blog/comment.djhtml:32
+
29
msgid "Your response"
+
30
msgstr ""
+
31
+
32
#: blog/templates/blog/comment.djhtml:33 blog/templates/blog/post.djhtml:120
+
33
msgid "Submit"
+
34
msgstr ""
+
35
+
36
#: blog/templates/blog/index.djhtml:20
21
37
msgid "Maarten's blog"
22
38
msgstr ""
23
39
24
40
#: blog/templates/blog/index.djhtml:22
25
41
msgid ""
26
42
"The always coherently put together, yet\n"
27
43
"fuzzy blog of whatever sprouts in my mind."
28
44
msgstr ""
29
45
30
46
#: blog/templates/blog/index.djhtml:28
31
47
msgid "Notepad of a student"
32
48
msgstr ""
33
49
34
50
#: blog/templates/blog/index.djhtml:37
35
51
msgid "Navigation"
36
52
msgstr ""
37
53
38
54
#: blog/templates/blog/index.djhtml:45
39
55
msgid "Front page"
40
56
msgstr ""
41
57
42
58
#: blog/templates/blog/index.djhtml:52
43
59
msgid "Blog"
44
60
msgstr ""
45
61
46
62
#: blog/templates/blog/index.djhtml:54
47
63
msgid ""
48
64
"Welcome to my blog. Here, I write\n"
49
65
"        about things that interest me. Politics, coding,\n"
50
66
"        studying, life, or anything else I fancy rambling\n"
51
67
"        about. If you're in luck, I may've written it in a\n"
52
68
"        language that you understand better than English.\n"
53
69
"        "
54
70
msgstr ""
55
71
56
72
#: blog/templates/blog/index.djhtml:71
57
73
msgid "Open archive"
58
74
msgstr ""
59
75
60
76
#: blog/templates/blog/index.djhtml:85
61
77
msgid "Read on"
62
78
msgstr ""
63
79
64
80
#: blog/templates/blog/index.djhtml:90
65
81
#, python-format
66
82
msgid ""
67
83
"This blog\n"
68
84
"               post is not available in %(cur_lang)s."
69
85
msgstr ""
70
86
71
87
#: blog/templates/blog/index.djhtml:92
72
88
msgid ""
73
89
"\n"
74
90
"                    However, it is available in \n"
75
91
"                    "
76
92
msgid_plural ""
77
93
"\n"
78
94
"                    If you want, you can choose to read it in one of these\n"
79
95
"                    languages: <br>\n"
80
96
"                    "
81
97
msgstr[0] ""
82
98
msgstr[1] ""
83
99
84
100
#: blog/templates/blog/index.djhtml:100
85
101
msgid "Flemish"
86
102
msgstr ""
87
103
88
104
#: blog/templates/blog/index.djhtml:102
89
105
msgid "Belgian French"
90
106
msgstr ""
91
107
92
108
#: blog/templates/blog/monthly_archive.djhtml:16
93
109
msgid "Weekly | Archief"
94
110
msgstr ""
95
111
96
112
#: blog/templates/blog/monthly_archive.djhtml:19
97
113
msgid "Voor een duik terug in de geschiedenis van mijn publieke dagboek."
98
114
msgstr ""
99
115
100
116
#: blog/templates/blog/post.djhtml:104
101
-
msgid "Comments"
+
117
msgid "Table of contents"
+
118
msgstr ""
+
119
+
120
#: blog/templates/blog/post.djhtml:91
+
121
msgid "Blog index"
+
122
msgstr ""
+
123
+
124
#: blog/templates/blog/post.djhtml:92
+
125
msgid "Main page"
+
126
msgstr ""
+
127
+
128
#: blog/templates/blog/post.djhtml:112
+
129
msgid "Comments"
102
130
msgstr ""
103
131
104
132
#: blog/templates/blog/post.djhtml:119
105
133
msgid "Submit"
106
-
msgstr ""
+
134
msgstr ""
107
135

templates/blog/locale/fr/LC_MESSAGES/django.po

34 additions and 4 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
msgid ""
6
6
msgstr ""
7
7
"Project-Id-Version: \n"
8
8
"Report-Msgid-Bugs-To: \n"
9
9
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
10
-
"PO-Revision-Date: 2021-10-30 16:01+0200\n"
+
10
"PO-Revision-Date: 2021-10-30 16:01+0200\n"
11
11
"Last-Translator: \n"
12
12
"Language-Team: \n"
13
13
"Language: fr\n"
14
14
"MIME-Version: 1.0\n"
15
15
"Content-Type: text/plain; charset=UTF-8\n"
16
16
"Content-Transfer-Encoding: 8bit\n"
17
17
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
18
18
"X-Generator: Poedit 3.0\n"
19
19
20
20
#: blog/templates/blog/index.djhtml:20
+
21
msgid "Respond"
+
22
msgstr ""
+
23
+
24
#: blog/templates/blog/comment.djhtml:31 blog/templates/blog/post.djhtml:118
+
25
msgid "Your name"
+
26
msgstr ""
+
27
+
28
#: blog/templates/blog/comment.djhtml:32
+
29
msgid "Your response"
+
30
msgstr ""
+
31
+
32
#: blog/templates/blog/comment.djhtml:33 blog/templates/blog/post.djhtml:120
+
33
msgid "Submit"
+
34
msgstr "Envoyer"
+
35
+
36
#: blog/templates/blog/index.djhtml:20
21
37
msgid "Maarten's blog"
22
38
msgstr "Blog de Maarten"
23
39
24
40
#: blog/templates/blog/index.djhtml:22
25
41
msgid ""
26
42
"The always coherently put together, yet\n"
27
43
"fuzzy blog of whatever sprouts in my mind."
28
44
msgstr ""
29
45
"Le toujours mis de façon cohérente ensemble, mais floue de ce que les germes "
30
46
"dans mon esprit."
31
47
32
48
#: blog/templates/blog/index.djhtml:28
33
49
msgid "Notepad of a student"
34
50
msgstr ""
35
51
36
52
#: blog/templates/blog/index.djhtml:37
37
53
msgid "Navigation"
38
54
msgstr ""
39
55
40
56
#: blog/templates/blog/index.djhtml:45
41
57
msgid "Front page"
42
58
msgstr ""
43
59
44
60
#: blog/templates/blog/index.djhtml:52
45
61
msgid "Blog"
46
62
msgstr "Blog"
47
63
48
64
#: blog/templates/blog/index.djhtml:54
49
65
#, fuzzy
50
66
#| msgid ""
51
67
#| "Welcome to my blog. Here, I write\n"
52
68
#| "                about things that interest me. Politics, coding,\n"
53
69
#| "                studying, life, or anything else I fancy rambling\n"
54
70
#| "                about. If you're in luck, I may've written it in a\n"
55
71
#| "                language that you understand better than English.\n"
56
72
#| "                "
57
73
msgid ""
58
74
"Welcome to my blog. Here, I write\n"
59
75
"        about things that interest me. Politics, coding,\n"
60
76
"        studying, life, or anything else I fancy rambling\n"
61
77
"        about. If you're in luck, I may've written it in a\n"
62
78
"        language that you understand better than English.\n"
63
79
"        "
64
80
msgstr ""
65
81
"Bienvenue dans mon blog. Ici j'écris des choses qui m'intéressent. La "
66
82
"politique, le codage, l'étude, la vie, ou autre chose dont j'ai envie de me "
67
83
"venger."
68
84
69
85
#: blog/templates/blog/index.djhtml:71
70
86
msgid "Open archive"
71
87
msgstr ""
72
88
73
89
#: blog/templates/blog/index.djhtml:85
74
90
msgid "Read on"
75
91
msgstr "Lire plus"
76
92
77
93
#: blog/templates/blog/index.djhtml:90
78
94
#, python-format
79
95
msgid ""
80
96
"This blog\n"
81
97
"               post is not available in %(cur_lang)s."
82
98
msgstr ""
83
99
84
100
#: blog/templates/blog/index.djhtml:92
85
101
msgid ""
86
102
"\n"
87
103
"                    However, it is available in \n"
88
104
"                    "
89
105
msgid_plural ""
90
106
"\n"
91
107
"                    If you want, you can choose to read it in one of these\n"
92
108
"                    languages: <br>\n"
93
109
"                    "
94
110
msgstr[0] ""
95
111
msgstr[1] ""
96
112
97
113
#: blog/templates/blog/index.djhtml:100
98
114
msgid "Flemish"
99
115
msgstr ""
100
116
101
117
#: blog/templates/blog/index.djhtml:102
102
118
msgid "Belgian French"
103
119
msgstr ""
104
120
105
121
#: blog/templates/blog/monthly_archive.djhtml:16
106
122
msgid "Weekly | Archief"
107
123
msgstr ""
108
124
109
125
#: blog/templates/blog/monthly_archive.djhtml:19
110
126
msgid "Voor een duik terug in de geschiedenis van mijn publieke dagboek."
111
127
msgstr ""
112
128
113
129
#: blog/templates/blog/post.djhtml:104
114
-
msgid "Comments"
+
130
msgid "Table of contents"
+
131
msgstr ""
+
132
+
133
#: blog/templates/blog/post.djhtml:91
+
134
msgid "Blog index"
+
135
msgstr ""
+
136
+
137
#: blog/templates/blog/post.djhtml:92
+
138
msgid "Main page"
+
139
msgstr ""
+
140
+
141
#: blog/templates/blog/post.djhtml:112
+
142
msgid "Comments"
115
143
msgstr "Commentaires"
116
144
117
145
#: blog/templates/blog/post.djhtml:119
118
146
msgid "Submit"
119
-
msgstr "Envoyer"
120
-
+
147
#| msgid "Comments"
+
148
msgid "Your comment"
+
149
msgstr "Commentaires"
+
150
121
151
#~ msgid "This article in other languages"
122
152
#~ msgstr "Cet article en autres langues"
123
153
124
154
#~ msgid "Never miss an update again."
125
155
#~ msgstr "Ne manquez plus jamais une mise à jour."
126
156
127
157
#~ msgid ""
128
158
#~ "Getting info on updates to blog posts, major website changes, and other "
129
159
#~ "important\n"
130
160
#~ "                news items is now easy and convenient with RSS.\n"
131
161
#~ "                "
132
162
#~ msgstr ""
133
163
#~ "Recevoir des mise à jours du blog, des grands changements du site web et "
134
164
#~ "d'autre information, c'est maitenant facile et pratique avec RSS."
135
165

templates/blog/locale/nl/LC_MESSAGES/django.po

34 additions and 4 deletions.

View changes Hide changes
1
1
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
2
2
# This file is distributed under the same license as the PACKAGE package.
3
3
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
4
4
#
5
5
msgid ""
6
6
msgstr ""
7
7
"Project-Id-Version: \n"
8
8
"Report-Msgid-Bugs-To: \n"
9
9
"POT-Creation-Date: 2022-03-06 07:38+0000\n"
10
-
"PO-Revision-Date: 2021-10-30 16:11+0200\n"
+
10
"PO-Revision-Date: 2021-10-30 16:11+0200\n"
11
11
"Last-Translator: \n"
12
12
"Language-Team: \n"
13
13
"Language: nl\n"
14
14
"MIME-Version: 1.0\n"
15
15
"Content-Type: text/plain; charset=UTF-8\n"
16
16
"Content-Transfer-Encoding: 8bit\n"
17
17
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
18
"X-Generator: Poedit 3.0\n"
19
19
20
20
#: blog/templates/blog/index.djhtml:20
+
21
msgid "Respond"
+
22
msgstr ""
+
23
+
24
#: blog/templates/blog/comment.djhtml:31 blog/templates/blog/post.djhtml:118
+
25
msgid "Your name"
+
26
msgstr ""
+
27
+
28
#: blog/templates/blog/comment.djhtml:32
+
29
msgid "Your response"
+
30
msgstr ""
+
31
+
32
#: blog/templates/blog/comment.djhtml:33 blog/templates/blog/post.djhtml:120
+
33
msgid "Submit"
+
34
msgstr "Reageren"
+
35
+
36
#: blog/templates/blog/index.djhtml:20
21
37
msgid "Maarten's blog"
22
38
msgstr "Maartens blog"
23
39
24
40
#: blog/templates/blog/index.djhtml:22
25
41
msgid ""
26
42
"The always coherently put together, yet\n"
27
43
"fuzzy blog of whatever sprouts in my mind."
28
44
msgstr ""
29
45
"Een zeer weloverwogen geschreven, en toch warrige blog over vanalles wat in "
30
46
"mij opkomt."
31
47
32
48
#: blog/templates/blog/index.djhtml:28
33
49
msgid "Notepad of a student"
34
50
msgstr ""
35
51
36
52
#: blog/templates/blog/index.djhtml:37
37
53
msgid "Navigation"
38
54
msgstr ""
39
55
40
56
#: blog/templates/blog/index.djhtml:45
41
57
msgid "Front page"
42
58
msgstr ""
43
59
44
60
#: blog/templates/blog/index.djhtml:52
45
61
msgid "Blog"
46
62
msgstr "Blog"
47
63
48
64
#: blog/templates/blog/index.djhtml:54
49
65
#, fuzzy
50
66
#| msgid ""
51
67
#| "Welcome to my blog. Here, I write\n"
52
68
#| "                about things that interest me. Politics, coding,\n"
53
69
#| "                studying, life, or anything else I fancy rambling\n"
54
70
#| "                about. If you're in luck, I may've written it in a\n"
55
71
#| "                language that you understand better than English.\n"
56
72
#| "                "
57
73
msgid ""
58
74
"Welcome to my blog. Here, I write\n"
59
75
"        about things that interest me. Politics, coding,\n"
60
76
"        studying, life, or anything else I fancy rambling\n"
61
77
"        about. If you're in luck, I may've written it in a\n"
62
78
"        language that you understand better than English.\n"
63
79
"        "
64
80
msgstr ""
65
81
"Welkom op mijn blog. Hier schrijf ik over onderwerpen die mij interesseren. "
66
82
"Politiek, programmeren, studeren en het leven, plus alles waar ik goesting "
67
83
"in heb om over te schrijven."
68
84
69
85
#: blog/templates/blog/index.djhtml:71
70
86
msgid "Open archive"
71
87
msgstr ""
72
88
73
89
#: blog/templates/blog/index.djhtml:85
74
90
msgid "Read on"
75
91
msgstr "Verder lezen"
76
92
77
93
#: blog/templates/blog/index.djhtml:90
78
94
#, python-format
79
95
msgid ""
80
96
"This blog\n"
81
97
"               post is not available in %(cur_lang)s."
82
98
msgstr ""
83
99
84
100
#: blog/templates/blog/index.djhtml:92
85
101
msgid ""
86
102
"\n"
87
103
"                    However, it is available in \n"
88
104
"                    "
89
105
msgid_plural ""
90
106
"\n"
91
107
"                    If you want, you can choose to read it in one of these\n"
92
108
"                    languages: <br>\n"
93
109
"                    "
94
110
msgstr[0] ""
95
111
msgstr[1] ""
96
112
97
113
#: blog/templates/blog/index.djhtml:100
98
114
msgid "Flemish"
99
115
msgstr ""
100
116
101
117
#: blog/templates/blog/index.djhtml:102
102
118
msgid "Belgian French"
103
119
msgstr ""
104
120
105
121
#: blog/templates/blog/monthly_archive.djhtml:16
106
122
msgid "Weekly | Archief"
107
123
msgstr ""
108
124
109
125
#: blog/templates/blog/monthly_archive.djhtml:19
110
126
msgid "Voor een duik terug in de geschiedenis van mijn publieke dagboek."
111
127
msgstr ""
112
128
113
129
#: blog/templates/blog/post.djhtml:104
114
-
msgid "Comments"
+
130
msgid "Table of contents"
+
131
msgstr ""
+
132
+
133
#: blog/templates/blog/post.djhtml:91
+
134
msgid "Blog index"
+
135
msgstr ""
+
136
+
137
#: blog/templates/blog/post.djhtml:92
+
138
msgid "Main page"
+
139
msgstr ""
+
140
+
141
#: blog/templates/blog/post.djhtml:112
+
142
msgid "Comments"
115
143
msgstr "Reacties"
116
144
117
145
#: blog/templates/blog/post.djhtml:119
118
146
msgid "Submit"
119
-
msgstr "Reageren"
120
-
+
147
#| msgid "Comments"
+
148
msgid "Your comment"
+
149
msgstr "Reacties"
+
150
121
151
#~ msgid "This article in other languages"
122
152
#~ msgstr "Dit artikel in andere talen"
123
153
124
154
#~ msgid "Never miss an update again."
125
155
#~ msgstr "Mis nooit meer een update."
126
156
127
157
#~ msgid ""
128
158
#~ "Getting info on updates to blog posts, major website changes, and other "
129
159
#~ "important\n"
130
160
#~ "                news items is now easy and convenient with RSS.\n"
131
161
#~ "                "
132
162
#~ msgstr ""
133
163
#~ "Updates van blogartikelen, grote veranderingen op de website en andere "
134
164
#~ "belangrijke nieuwtjes zijn nu makkelijk te verkrijgen met RSS."
135
165

templates/blog/post.djhtml

23 additions and 1 deletion.

View changes Hide changes
1
1
{% load humanize %}
2
2
{% load i18n %}
3
3
{% load static %}
4
4
5
5
6
6
{% block stylesheets %}
7
7
{{ block.super }}
8
8
<style>
9
9
@font-face {
10
10
  font-family: 'Merriweather';
11
11
  font-style: italic;
12
12
  font-weight: 400;
13
13
  src: url({% get_static_prefix %}fonts/merriweather-400-italic.woff2) format('woff2');
14
14
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
15
15
}
16
16
@font-face {
17
17
  font-family: 'Merriweather';
18
18
  font-style: normal;
19
19
  font-weight: 400;
20
20
  src: url({% get_static_prefix %}fonts/merriweather-400-regular.woff2) format('woff2');
21
21
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
22
22
}
23
23
@font-face {
24
24
  font-family: 'Merriweather';
25
25
  font-style: normal;
26
26
  font-weight: 700;
27
27
  src: url({% get_static_prefix %}fonts/merriweather-700-regular.woff2) format('woff2');
28
28
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
29
29
}
30
30
31
31
body {
32
32
    background-color: #0d1521; /*#0d47a1; /* Material blue P900 */
33
33
}
34
34
body video {
35
35
    width: 80%;
36
36
}
37
37
header {
38
38
    background-color: #3e2723;
39
39
}
40
40
section.article {
41
41
    background-color: #efebe9;/*rgb(210, 188, 157);*/
42
42
    font-family: Merriweather, serif;
43
43
}
+
44
+
45
}
44
46
45
47
.comment {
+
48
        background-color: var(--P100);
+
49
        background-color: red;
+
50
    }
+
51
.comment {
46
52
    margin-left: 0.2em;
47
53
    padding-left: 0.5em;
48
54
    padding-bottom: 0.5em;
49
55
    border-left-style: solid;
50
56
    border-color: var(--primary);
51
57
}
52
58
.recently-posted {
53
59
    background-color: var(--P100);
54
60
}
55
61
56
62
span.small-detail {
57
63
    font-size: smaller;
58
64
    color: grey;
59
65
}
60
66
</style>
61
67
{% endblock stylesheets %}
62
68
63
69
{% block description %}
64
70
{{ article.text|safe|truncatewords_html:10 }}
65
71
{% endblock description %}
66
72
{% block title %}📚 {{ navbar_title }}{% endblock title %}
67
73
68
74
69
75
{% block header %}
70
76
<header>
71
77
<h1>{{ navbar_title }}</h1>
72
-
</header>
+
78
    <h1>{{ navbar_title }}</h1>
+
79
</header>
73
80
{% endblock header %}
74
81
{% block main %}
+
82
{% block nav %}
+
83
<input id="nav-drawer-toggle" type="checkbox">
+
84
<nav>
+
85
    <label for="nav-drawer-toggle">🡠</label>
+
86
    <h2>{% translate "Table of contents" %}</h2>
+
87
    {% for header, slug in article.headings %}
+
88
    <a class="nav-link" href="#{{ slug }}">{{ header }}</a>
+
89
    {% endfor %}
+
90
    <hr class="half">
+
91
    <a class="nav-link" href="{% url "blog-index" %}">{% translate "Blog index" %}</a>
+
92
    <a class="nav-link" href="{% url "about-index" %}">{% translate "Main page" %}</a>
+
93
</nav>
+
94
{% endblock nav %}
+
95
+
96
{% block main %}
75
97
<section class="article">
76
98
    <!--<article style="font-family:serif;">-->
77
99
    {#{{ article.text|safe }}#}
78
100
    {% include "/tmp/blog-file.djhtml" %}
79
101
80
102
    <!--</article>-->
81
103
</section>
82
104
83
105
{% if comment_response %}
84
106
<div class="snackbar">
85
107
    {{ comment_response }}
86
108
</div>
87
109
{% endif %}
88
110
89
111
<section class="reagoj">
90
112
    <h2>{% translate "Comments" %}</h2>
91
113
    <form method="POST" action="#reagoj">
92
114
        {% csrf_token %}
93
115
        <input type="hidden" name="reaction_to" value="">
94
116
        <input type="hidden" name="post" value="{{ article.post.id }}">
95
117
        <input type="text" id="name-root" name="name" maxlength="64" required>
96
118
        <label for="name-root">{% translate "Your name" %}</label><br>
97
119
        <textarea placeholder="{% translate "Your comment" %}" rows="2" cols="30" name="text" id="text-{{ comment.id }}" maxlength="10000" required></textarea><br>
98
120
        <input type="submit" value="{% translate "Submit" %}">
99
121
    </form>
100
122
    <hr>
101
123
    {% for root_comment in root_comments %}
102
124
        {% include "blog/comment.djhtml" with comment=root_comment %}
103
125
    {% endfor %}
104
126
</section>
105
127
106
128
{% comment %}
107
129
<h5 class="white-text">{% trans "This article in other languages" %}</h5>
108
130
109
131
{% get_language_info for 'nl' as LANG %}
110
132
<a {% if dutch_link %} href="{{dutch_link}}" {% endif %}
111
133
   class="btn fill
112
134
   {% if not dutch_link %}disabled{% endif %}">
113
135
    🇧🇪 {{ LANG.name_translated}} 🇳🇱
114
136
</a>
115
137
{% get_current_language as lang %}
116
138
{% get_language_info for 'fr' as LANG %}
117
139
<a {% if french_link %} href="{{french_link}}" {% endif %}
118
140
   class="btn fill
119
141
   {% if not french_link %}disabled{% endif %}">
120
142
    🇧🇪 {{ LANG.name_translated}} 🇫🇷
121
143
</a>
122
144
{% get_language_info for 'en' as LANG %}
123
145
<a {% if english_link %} href="{{english_link}}" {% endif %}
124
146
   class="btn fill
125
147
   {% if not english_link %}disabled{% endif %}">
126
148
    🇬🇧 {{ LANG.name_translated}} 🇺🇸
127
149
</a>
128
150
{% get_language_info for 'de' as LANG %}
129
151
<a {% if german_link %} href="{{german_link}}" {% endif %}
130
152
   class="btn fill
131
153
   {% if not german_link %}disabled{% endif %}">
132
154
    🇧🇪 {{ LANG.name_translated}} 🇩🇪
133
155
</a>
134
156
{% get_language_info for 'es' as LANG %}
135
157
<a {% if spanish_link %} href="{{spanish_link}}" {% endif %}
136
158
   class="btn
137
159
   {% if not spanish_link %}disabled{% endif %}">
138
160
    🇪🇸 {{ LANG.name_translated}} 🇲🇽
139
161
</a>
140
162
{% endcomment %}
141
163
142
164
{% comment %}
143
165
<a href="{% url 'blog-post' post_slug %}" class="btn {{accent_color}} accent-4 black-text tooltipped" data-position="bottom" data-delay="50" data-tooltip="{% trans "Multilingual link. Links to the version in the viewer's preferred language." %}">🏳️‍🌈 {% trans "All available languages" %}</a>
144
166
    {# TODO: Change to rainbow flag when possible #}
145
167
{% endcomment %}
146
168
    </div>
147
169
148
170
</div>
149
171
{% endblock main %}
150
172

views.py

1 addition and 1 deletion.

View changes Hide changes
1
1
import requests
2
2
3
3
4
4
from django.utils.translation import ugettext as _
5
5
from django.shortcuts import get_object_or_404, render # This allows to render the template with the view here. It's pretty cool and important.
6
6
from django.http import HttpResponseRedirect, HttpResponse
7
7
from django.urls import reverse
8
8
from django.template import loader # This allows to actually load the template.
9
9
from .models import *
10
10
from .forms import CommentForm
11
11
from django.core.exceptions import ObjectDoesNotExist
12
12
from django.utils import translation
13
13
14
14
GERMAN = "de"
15
15
SPANISH = "es"
16
16
FRENCH = "fr"
17
17
DUTCH = "nl"
18
18
ENGLISH = "en"
19
19
20
20
def index(request):
21
21
    template = "blog/index.djhtml"
22
22
    posts = Post.objects.exclude(visible=False)
23
23
24
24
25
25
    context = {
26
26
            'posts': posts,
27
27
            'navbar_title': _("Notepad from a student"),
28
28
            'navbar_backArrow': True,
29
29
            'stylesheet_name': "blog",
30
30
            }
31
31
    return render(request, template, context)
32
32
33
33
def post(request, language_code, post_slug):
34
34
    context = dict()
35
35
    if request.method == "POST":  # Handling a reply if one is sent
36
36
        form = CommentForm(request.POST)
37
37
38
38
        form.post = Post.objects.get(id=request.POST['post'])
39
39
        if form.is_valid():
40
40
            new_comment = form.save(commit=False)
41
41
            if request.POST['reaction_to'] != "":
42
42
                new_comment.reaction_to = Comment.objects.get(id=request.POST['reaction_to'])
43
43
            new_comment.save()
44
44
            context["comment_response"] = _("Comment succesfully submitted!")
45
45
        else:
46
46
            print("ERROR")
47
47
            print(form.errors)
48
48
            context["contact_response"] = _("An error occured while trying to submit your comment. Please try again later.")
49
49
50
50
    template = "blog/post.djhtml"
51
51
    article = Article.objects.get(slug=post_slug, language_code=language_code)
52
52
    root_comments = Comment.objects.filter(post=article.post, reaction_to=None).order_by('-date')
53
53
    context = context | {
54
54
            'article': article,
55
55
            'root_comments': root_comments,
56
56
            'title': article.post.title(),
57
57
            'navbar_title': article.post.title(),
58
58
            'navbar_backArrow': True,
59
-
            'stylesheet_name': "blog"}
+
59
            'stylesheet_name': "blog"}
60
60
61
61
    return render(request, template, context)
62
62
63
63
def rss(request):
64
64
    template = "blog/feed.rss"
65
65
    context = {
66
66
        'items': FeedItem.objects.all(),
67
67
        }
68
68
    return render(request, template, context, content_type="application/rss+xml")
69
69
70
70
71
71
def archive(request):
72
72
    template = "blog/monthly_archive.djhtml"
73
73
    language = translation.get_language()
74
74
75
75
    file_2017 = org_to_html("blog/weekly/2017.org")
76
76
    file_2018 = org_to_html("blog/weekly/2018.org")
77
77
    file_2019 = org_to_html("blog/weekly/2019.org")
78
78
79
79
80
80
81
81
    context = {
82
82
        't2017': file_2017,
83
83
        't2018': file_2018,
84
84
        't2019': file_2019,
85
85
            'materialDesign_color': "brown",
86
86
            'materialDesign_accentColor': "blue",
87
87
            'navbar_title': _("Weekly-archief"),
88
88
            'navbar_backArrow': True,
89
89
            'footer_links': footer_links,
90
90
            'footer_description': footer_description,
91
91
            'stylesheet_name': "blog",
92
92
            }
93
93
    return render(request, template, context)
94
94